diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2009-12-14 02:42:18 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2009-12-14 02:42:18 +0000 |
commit | f93a40eaa321c7c6cd47790dd30ddb774d33d8ed (patch) | |
tree | c4ad092727a97a5881fd2ba115edb99e6caaeb65 /libffi/src | |
parent | f610bc0aa11be30f054855052b92d66b75f9ce47 (diff) | |
download | gcc-f93a40eaa321c7c6cd47790dd30ddb774d33d8ed.zip gcc-f93a40eaa321c7c6cd47790dd30ddb774d33d8ed.tar.gz gcc-f93a40eaa321c7c6cd47790dd30ddb774d33d8ed.tar.bz2 |
ffi.c (ffi_closure_inner_pa32): Handle FFI_TYPE_LONGDOUBLE type on HP-UX.
* src/pa/ffi.c (ffi_closure_inner_pa32): Handle FFI_TYPE_LONGDOUBLE
type on HP-UX.
From-SVN: r155205
Diffstat (limited to 'libffi/src')
-rw-r--r-- | libffi/src/pa/ffi.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libffi/src/pa/ffi.c b/libffi/src/pa/ffi.c index c7a1435..6d7606f 100644 --- a/libffi/src/pa/ffi.c +++ b/libffi/src/pa/ffi.c @@ -492,6 +492,13 @@ ffi_status ffi_closure_inner_pa32(ffi_closure *closure, UINT32 *stack) avalue[i] = (void *)(stack - slot); break; +#ifdef PA_HPUX + case FFI_TYPE_LONGDOUBLE: + /* Long doubles are treated like a big structure. */ + avalue[i] = (void *) *(stack - slot); + break; +#endif + case FFI_TYPE_STRUCT: /* Structs smaller or equal than 4 bytes are passed in one register. Structs smaller or equal 8 bytes are passed in two |