summaryrefslogtreecommitdiff
path: root/toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch
diff options
context:
space:
mode:
authorkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-04-09 17:00:03 +0000
committerkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-04-09 17:00:03 +0000
commit7a2d11b187a45cc268a9ea526b71c6443a9994e7 (patch)
treeda95232174812432180204a57a2de1c3ab591df6 /toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch
parent8007d3bd974173e845876a7d07c74551674c2b48 (diff)
[toolchain/gcc/4.4]: upgrade to gcc 4.4.7
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31230 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch')
-rw-r--r--toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch b/toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch
new file mode 100644
index 0000000000..78106619c5
--- /dev/null
+++ b/toolchain/gcc/patches/4.4.7/933-avr32_bug_7435.patch
@@ -0,0 +1,32 @@
+--- a/gcc/config/avr32/avr32.c
++++ b/gcc/config/avr32/avr32.c
+@@ -243,14 +243,14 @@ void
+ avr32_override_options (void)
+ {
+ const struct part_type_s *part;
+- const struct arch_type_s *arch;
++ const struct arch_type_s *arch, *part_arch;
+
+ /*Add backward compability*/
+ if (strcmp ("uc", avr32_arch_name)== 0)
+ {
+ fprintf (stderr, "Warning: Deprecated arch `%s' specified. "
+ "Please use '-march=ucr1' instead. "
+- "Converting to arch 'ucr1'\n",
++ "Using arch 'ucr1'\n",
+ avr32_arch_name);
+ avr32_arch_name="ucr1";
+ }
+@@ -298,6 +298,12 @@ avr32_override_options (void)
+ if (!arch->name)
+ avr32_arch = &avr32_arch_types[avr32_part->arch_type];
+
++ /* When architecture implied by -mpart and one passed in -march are
++ * conflicting, issue an error message */
++ part_arch = &avr32_arch_types[avr32_part->arch_type];
++ if (strcmp("none",avr32_part_name) && strcmp("none", avr32_arch_name) && strcmp(avr32_arch_name,part_arch->name))
++ error ("Conflicting architectures implied by -mpart and -march\n");
++
+ /* If optimization level is two or greater, then align start of loops to a
+ word boundary since this will allow folding the first insn of the loop.
+ Do this only for targets supporting branch prediction. */