From 84e2e37098ecd0a1085501dade4348e33fe5a695 Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Fri, 19 May 2006 01:20:22 +0000 Subject: [PATCH] ffi.c (ffi_prep_args_pa32): Load floating point arguments from stack slot. * pa/ffi.c (ffi_prep_args_pa32): Load floating point arguments from stack slot. From-SVN: r113901 --- libffi/ChangeLog | 5 +++++ libffi/src/pa/ffi.c | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/libffi/ChangeLog b/libffi/ChangeLog index f9319335b74..a2730d4b30c 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +2006-05-18 John David Anglin + + * pa/ffi.c (ffi_prep_args_pa32): Load floating point arguments from + stack slot. + 2006-04-22 Andreas Tobler * README: Remove notice about 'Crazy Comments'. diff --git a/libffi/src/pa/ffi.c b/libffi/src/pa/ffi.c index 92cc7f29a1f..56f85dbdbe0 100644 --- a/libffi/src/pa/ffi.c +++ b/libffi/src/pa/ffi.c @@ -194,10 +194,10 @@ void ffi_prep_args_pa32(UINT32 *stack, extended_cif *ecif, unsigned bytes) switch (slot - FIRST_ARG_SLOT) { /* First 4 args go in fr4L - fr7L. */ - case 0: fldw(*p_argv, fr4); break; - case 1: fldw(*p_argv, fr5); break; - case 2: fldw(*p_argv, fr6); break; - case 3: fldw(*p_argv, fr7); break; + case 0: fldw(stack - slot, fr4); break; + case 1: fldw(stack - slot, fr5); break; + case 2: fldw(stack - slot, fr6); break; + case 3: fldw(stack - slot, fr7); break; } break; @@ -209,8 +209,8 @@ void ffi_prep_args_pa32(UINT32 *stack, extended_cif *ecif, unsigned bytes) switch (slot - FIRST_ARG_SLOT) { /* First 2 args go in fr5, fr7. */ - case 1: fldd(*p_argv, fr5); break; - case 3: fldd(*p_argv, fr7); break; + case 1: fldd(stack - slot, fr5); break; + case 3: fldd(stack - slot, fr7); break; } break;