diff options
-rw-r--r-- | meta/conf/distro/include/tcmode-default.inc | 4 | ||||
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.6.inc | 3 | ||||
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.6/gcc-arm-set-cost.patch | 34 |
3 files changed, 36 insertions, 5 deletions
diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc index 997400c37..5bb253e9c 100644 --- a/meta/conf/distro/include/tcmode-default.inc +++ b/meta/conf/distro/include/tcmode-default.inc @@ -23,10 +23,6 @@ EGLIBCVERSION ?= "2.13" UCLIBCVERSION ?= "0.9.32" LINUXLIBCVERSION ?= "3.1" -# Temporary workaround for gcc 4.6.0 ICE with beagleboard -# gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719 -TARGET_CC_ARCH_arm_pn-mesa-xlib := "${@'${TARGET_CC_ARCH}'.replace('armv7-a','armv5')}" - PREFERRED_VERSION_gcc ?= "${GCCVERSION}" PREFERRED_VERSION_gcc-cross ?= "${GCCVERSION}" PREFERRED_VERSION_gcc-cross-initial ?= "${GCCVERSION}" diff --git a/meta/recipes-devtools/gcc/gcc-4.6.inc b/meta/recipes-devtools/gcc/gcc-4.6.inc index 7cd08500d..18e05363f 100644 --- a/meta/recipes-devtools/gcc/gcc-4.6.inc +++ b/meta/recipes-devtools/gcc/gcc-4.6.inc @@ -1,6 +1,6 @@ require gcc-common.inc -PR = "r18" +PR = "r19" # Third digit in PV should be incremented after a minor release # happens from this branch on gcc e.g. currently its 4.6.0 @@ -72,6 +72,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH};proto=http \ file://pr46934.patch \ file://pr32219.patch \ file://pr47551.patch \ + file://gcc-arm-set-cost.patch \ " SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch " diff --git a/meta/recipes-devtools/gcc/gcc-4.6/gcc-arm-set-cost.patch b/meta/recipes-devtools/gcc/gcc-4.6/gcc-arm-set-cost.patch new file mode 100644 index 000000000..04dabaf60 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.6/gcc-arm-set-cost.patch @@ -0,0 +1,34 @@ +2011-08-18 Richard Sandiford <richard.sandiford@linaro.org> + + gcc/ + Backport from mainline: + + 2011-08-18 Richard Sandiford <richard.sandiford@linaro.org> + + * config/arm/arm.c (arm_rtx_costs_1): Don't modify the costs of SET. + (arm_size_rtx_costs): Likewise. + +=== modified file 'gcc/config/arm/arm.c' +--- old/gcc/config/arm/arm.c 2011-08-12 08:08:31 +0000 ++++ new/gcc/config/arm/arm.c 2011-08-18 13:53:37 +0000 +@@ -7464,6 +7464,9 @@ + *total = COSTS_N_INSNS (4); + return true; + ++ case SET: ++ return false; ++ + default: + *total = COSTS_N_INSNS (4); + return false; +@@ -7811,6 +7814,9 @@ + *total = COSTS_N_INSNS (1) + 1; + return true; + ++ case SET: ++ return false; ++ + default: + if (mode != VOIDmode) + *total = COSTS_N_INSNS (ARM_NUM_REGS (mode)); + |