diff options
author | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | 2001-07-16 16:53:43 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2001-07-16 16:53:43 +0000 |
commit | 92a0e6c6c8eaff9d238717c8c64dec84a6517a16 (patch) | |
tree | 4eeef7f3c093a84ef307975e57d5bd73760af34e /libffi/src | |
parent | 94fc7deae27a373460b7b2c6c1995f0de21c3bec (diff) | |
download | gcc-92a0e6c6c8eaff9d238717c8c64dec84a6517a16.zip gcc-92a0e6c6c8eaff9d238717c8c64dec84a6517a16.tar.gz gcc-92a0e6c6c8eaff9d238717c8c64dec84a6517a16.tar.bz2 |
re PR bootstrap/3563 (Error building libffi)
* src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
Fixes PR bootstrap/3563.
From-SVN: r44045
Diffstat (limited to 'libffi/src')
-rw-r--r-- | libffi/src/alpha/ffi.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/libffi/src/alpha/ffi.c b/libffi/src/alpha/ffi.c index a0becb3..2ed3673 100644 --- a/libffi/src/alpha/ffi.c +++ b/libffi/src/alpha/ffi.c @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------- - ffi.c - Copyright (c) 1998 Cygnus Solutions + ffi.c - Copyright (c) 1998, 2001 Cygnus Solutions Alpha Foreign Function Interface @@ -166,8 +166,13 @@ ffi_prep_closure (ffi_closure* closure, closure->fun = fun; closure->user_data = user_data; - /* Flush the Icache. */ - asm volatile ("imb" : : : "memory"); + /* Flush the Icache. + + Tru64 UNIX as doesn't understand the imb mnemonic, so use call_pal + instead, since both Compaq as and gas can handle it. + + 0x86 is PAL_imb in Tru64 UNIX <alpha/pal.h>. */ + asm volatile ("call_pal 0x86" : : : "memory"); return FFI_OK; } |