diff options
author | Stuart Hastings <stuart@apple.com> | 2006-04-28 20:42:39 +0000 |
---|---|---|
committer | Stuart Hastings <stuart@apple.com> | 2006-04-28 20:42:39 +0000 |
commit | 6ccdc6695d4ec46cd21d4b7e92355f00e090ac9d (patch) | |
tree | f24a50bc27d50b7b10c6fe1e00d4cd871f4b4ce5 /gcc | |
parent | 6e717ec99f8f877dc45ea93c005420e7810a4ee8 (diff) |
2006-04-27 Hui-May Chang <hm.chang@apple.com>
Radar 4314956
Revert 2006-04-26 patch.
Import from mainline:
2005-08-31 Richard Henderson <rth@redhat.com>
* config/i386/i386.c (ix86_function_ok_for_sibcall): Fix test for
fp return matching.
* g++.dg/sibcall-opt.C: Remove.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/apple/200605-release@113357 138bc75d-0d04-0410-961f-82ee72b054a4
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); -} |