From a9521411a53d58f2bf88199242200ceb0d4dae3a Mon Sep 17 00:00:00 2001 From: Anthony Green Date: Sat, 9 Feb 2013 06:54:40 -0500 Subject: [PATCH] sparc v8 and testsuite fixes --- src/sparc/v8.S | 4 ++++ testsuite/libffi.call/ffitest.h | 3 +++ testsuite/libffi.call/many2.c | 5 ++++- testsuite/libffi.call/negint.c | 1 - 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/sparc/v8.S b/src/sparc/v8.S index ba3cdac9..6bf7ac05 100644 --- a/src/sparc/v8.S +++ b/src/sparc/v8.S @@ -242,6 +242,10 @@ ffi_closure_v8: be,a done1 ldd [%fp-8], %i0 + cmp %o0, FFI_TYPE_UINT64 + be,a done1 + ldd [%fp-8], %i0 + ld [%fp-8], %i0 done1: jmp %i7+8 diff --git a/testsuite/libffi.call/ffitest.h b/testsuite/libffi.call/ffitest.h index 830fcc73..136a7a6b 100644 --- a/testsuite/libffi.call/ffitest.h +++ b/testsuite/libffi.call/ffitest.h @@ -127,3 +127,6 @@ #define PRId64 "I64d" #endif +#ifndef PRIuPTR +#define PRIuPTR "u" +#endif diff --git a/testsuite/libffi.call/many2.c b/testsuite/libffi.call/many2.c index 10771592..98eac601 100644 --- a/testsuite/libffi.call/many2.c +++ b/testsuite/libffi.call/many2.c @@ -12,7 +12,10 @@ typedef unsigned char u8; -__attribute__((noinline)) uint8_t +#ifdef __GNUC__ +__attribute__((noinline)) +#endif +uint8_t foo (uint8_t a, uint8_t b, uint8_t c, uint8_t d, uint8_t e, uint8_t f, uint8_t g) { diff --git a/testsuite/libffi.call/negint.c b/testsuite/libffi.call/negint.c index 31681130..6e2f26fc 100644 --- a/testsuite/libffi.call/negint.c +++ b/testsuite/libffi.call/negint.c @@ -5,7 +5,6 @@ Originator: From the original ffitest.c */ /* { dg-do run } */ -/* { dg-options -O2 } */ #include "ffitest.h"