diff options
author | Richard Earnshaw <rearnsha@arm.com> | 2017-04-11 14:57:41 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2017-04-11 14:57:41 +0000 |
commit | 9b523c934a3bf65645254b811de3333fe18ef40c (patch) | |
tree | 44a7142776ddcde47a9abaa0389174b3ddbe96e5 /gcc | |
parent | f29876bba06c24d6fe543941ad6f683c61910555 (diff) | |
download | gcc-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/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 4 |
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 { |