aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2017-04-11 14:57:41 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2017-04-11 14:57:41 +0000
commit9b523c934a3bf65645254b811de3333fe18ef40c (patch)
tree44a7142776ddcde47a9abaa0389174b3ddbe96e5 /gcc
parentf29876bba06c24d6fe543941ad6f683c61910555 (diff)
downloadgcc-9b523c934a3bf65645254b811de3333fe18ef40c.zip
gcc-9b523c934a3bf65645254b811de3333fe18ef40c.tar.gz
gcc-9b523c934a3bf65645254b811de3333fe18ef40c.tar.bz2
[arm] PR 80389 - if architecture and cpu mismatch, don't print an architecture name as a CPU name
In this PR we incorrectly print the architecture name in a .cpu directive in the assembly file when the -mcpu and -march options conflict (don't target the same base architecture). In this case the .arch overrides the .cpu directive and we should emit a .arch option. PR target/80389 * config/arm/arm.c (arm_configure_build_target): When -mcpu and -arch conflict, set target->arch_name instead of target->cpu_name. From-SVN: r246843
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/arm/arm.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 272f603..8a72943 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2017-04-11 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/80389
+ * config/arm/arm.c (arm_configure_build_target): When -mcpu and -arch
+ conflict, set target->arch_name instead of target->cpu_name.
+
2017-04-11 Richard Biener <rguenther@suse.de>
PR tree-optimization/80374
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index a9b61a3..a2d80cf 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -3098,15 +3098,15 @@ arm_configure_build_target (struct arm_build_target *target,
arm_selected_tune = arm_selected_cpu;
arm_selected_cpu = arm_selected_arch;
+ target->arch_name = arm_selected_arch->name;
}
else
{
/* Architecture and CPU are essentially the same.
Prefer the CPU setting. */
arm_selected_arch = NULL;
+ target->core_name = arm_selected_cpu->name;
}
-
- target->core_name = arm_selected_cpu->name;
}
else
{