[gcc r11-8879] arm: ensure the arch_name is always set for the build target
Richard Earnshaw
rearnsha@gcc.gnu.org
Wed Aug 18 15:23:08 GMT 2021
https://gcc.gnu.org/g:95c56f26a9e43cfe38d23f3e52e83c500ac1e652
commit r11-8879-g95c56f26a9e43cfe38d23f3e52e83c500ac1e652
Author: Richard Earnshaw <rearnsha@arm.com>
Date: Mon Jul 26 17:07:14 2021 +0100
arm: ensure the arch_name is always set for the build target
This should never happen now if GCC is invoked by the driver, but in
the unusual case of calling cc1 (or its ilk) directly from the command
line the build target's arch_name string can remain NULL. This can
complicate later processing meaning that we need to check for this
case explicitly in some circumstances. Nothing should rely on this
behaviour, so it's simpler to always set the arch_name when
configuring the build target and be done with it.
gcc:
* config/arm/arm.c (arm_configure_build_target): Ensure the target's
arch_name is always set.
(cherry picked from commit 62e66c6a6cc52dc0e014141d369cff52757cd7ae)
Diff:
---
gcc/config/arm/arm.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 783c5e51051..daafeb34683 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -3430,6 +3430,8 @@ arm_configure_build_target (struct arm_build_target *target,
const cpu_tune *tune_data = &all_tunes[arm_selected_tune - all_cores];
/* Finish initializing the target structure. */
+ if (!target->arch_name)
+ target->arch_name = arm_selected_arch->common.name;
target->arch_pp_name = arm_selected_arch->arch;
target->base_arch = arm_selected_arch->base_arch;
target->profile = arm_selected_arch->profile;
More information about the Gcc-cvs
mailing list