From 89f404095309d9ff8a54e2d1c75baba21b845de1 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 22 Jun 2010 08:43:28 -0700 Subject: gcc-4.5: Fix the bswapsi libgcc infinite loop at -Os Signed-off-by: Khem Raj --- recipes/gcc/gcc-4.5.inc | 3 ++- recipes/gcc/gcc-4.5/arm-bswapsi2.patch | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 recipes/gcc/gcc-4.5/arm-bswapsi2.patch (limited to 'recipes/gcc') diff --git a/recipes/gcc/gcc-4.5.inc b/recipes/gcc/gcc-4.5.inc index cb41e7e97c..181db33574 100644 --- a/recipes/gcc/gcc-4.5.inc +++ b/recipes/gcc/gcc-4.5.inc @@ -8,7 +8,7 @@ DEPENDS = "mpfr gmp libmpc libelf" NATIVEDEPS = "mpfr-native gmp-native libmpc-native" -INC_PR = "r3" +INC_PR = "r4" SRCREV = "160764" PV = "4.5" @@ -29,6 +29,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH} \ file://cache-amnesia.patch \ file://gcc-flags-for-build.patch \ file://libstdc++-emit-__cxa_end_cleanup-in-text.patch \ + file://arm-bswapsi2.patch \ " # Language Overrides diff --git a/recipes/gcc/gcc-4.5/arm-bswapsi2.patch b/recipes/gcc/gcc-4.5/arm-bswapsi2.patch new file mode 100644 index 0000000000..7ac61a6d63 --- /dev/null +++ b/recipes/gcc/gcc-4.5/arm-bswapsi2.patch @@ -0,0 +1,13 @@ +Index: gcc-4.5/gcc/config/arm/arm.md +=================================================================== +--- gcc-4.5.orig/gcc/config/arm/arm.md 2010-06-17 09:13:07.000000000 -0700 ++++ gcc-4.5/gcc/config/arm/arm.md 2010-06-22 08:08:45.397212002 -0700 +@@ -11267,7 +11267,7 @@ + (define_expand "bswapsi2" + [(set (match_operand:SI 0 "s_register_operand" "=r") + (bswap:SI (match_operand:SI 1 "s_register_operand" "r")))] +-"TARGET_EITHER" ++"TARGET_EITHER && (arm_arch6 && !optimize_size)" + " + if (!arm_arch6) + { -- cgit 1.2.3-korg