diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog.apple-ppc | 5 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 13 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog.apple-ppc | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/sibcall-opt.C | 19 |
4 files changed, 13 insertions, 29 deletions
diff --git a/gcc/ChangeLog.apple-ppc b/gcc/ChangeLog.apple-ppc index e2821ca479c..36cd241c59d 100644 --- a/gcc/ChangeLog.apple-ppc +++ b/gcc/ChangeLog.apple-ppc @@ -1,3 +1,8 @@ +2006-04-27 Hui-May Chang <hm.chang@apple.com> + + Radar 4314956 + Revert 2006-04-26 patch. + 2006-04-27 Mike Stump <mrs@apple.com> Radar 4529992 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 21572963b2a..7cf00a31731 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1844,7 +1844,7 @@ const struct attribute_spec ix86_attribute_table[] = static bool ix86_function_ok_for_sibcall (tree decl, tree exp) { - /* APPLE LOCAL begin mainline 2006-04-16 4205103, 4314956 */ + /* APPLE LOCAL begin mainline 2005-09-20 4205103 */ tree func; rtx a, b; @@ -1876,16 +1876,9 @@ ix86_function_ok_for_sibcall (tree decl, tree exp) a = ix86_function_value (TREE_TYPE (exp), func, false); b = ix86_function_value (TREE_TYPE (DECL_RESULT (cfun->decl)), cfun->decl, false); - if (STACK_REG_P (a) || STACK_REG_P (b)) - { - if (!rtx_equal_p (a, b)) - return false; - } - else if (VOID_TYPE_P (TREE_TYPE (DECL_RESULT (cfun->decl)))) - ; - else if (! rtx_equal_p (a, b)) + if (! rtx_equal_p (a, b)) return false; - /* APPLE LOCAL end mainline 2006-04-16 4205103, 4314956 */ + /* APPLE LOCAL end mainline 2005-09-20 4205103 */ /* If this call is indirect, we'll need to be able to use a call-clobbered register for the address of the target function. Make sure that all diff --git a/gcc/testsuite/ChangeLog.apple-ppc b/gcc/testsuite/ChangeLog.apple-ppc index e841b80729a..67dcdc681d2 100644 --- a/gcc/testsuite/ChangeLog.apple-ppc +++ b/gcc/testsuite/ChangeLog.apple-ppc @@ -1,3 +1,8 @@ +2006-04-27 Hui-May Chang <hm.chang@apple.com> + + Radar 4314956 + * g++.dg/sibcall-opt.C: Remove. + 2006-04-27 Mike Stump <mrs@apple.com> Radar 4529992 diff --git a/gcc/testsuite/g++.dg/sibcall-opt.C b/gcc/testsuite/g++.dg/sibcall-opt.C deleted file mode 100644 index a2ec43563dd..00000000000 --- a/gcc/testsuite/g++.dg/sibcall-opt.C +++ /dev/null @@ -1,19 +0,0 @@ -/* APPLE LOCAL file mainline 2006-04-19 4314956 */ -/* { dg-do compile { target i?86*-*-* } }*/ -/* { dg-options "-O3" } */ -/* { dg-final { scan-assembler "\tjmp\t.*memset*" } } */ -typedef __SIZE_TYPE__ size_t; -extern "C" void memset(void *, int, size_t); -class SIMDProcessor { -public: - virtual void Memset(void *, const int, const int) = 0; -}; - -class SIMDGeneric : public SIMDProcessor { -public: - virtual void Memset(void *, const int, const int); -}; - -void SIMDGeneric::Memset(void *dst, const int val, const int count) { - memset(dst, val, count); -} |