aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPrathamesh Kulkarni <prathamesh.kulkarni@linaro.org>2018-01-11 12:13:42 +0000
committerPrathamesh Kulkarni <prathamesh3492@gcc.gnu.org>2018-01-11 12:13:42 +0000
commitc184e58c4d1aec200954f00b067e5adecd787f2f (patch)
treea28b8d88b7eb2a0cba2ea6e531b238bfc1617447 /gcc
parentbf6f2cc7be78a36b1648cdc9619b8fe98475825d (diff)
downloadgcc-c184e58c4d1aec200954f00b067e5adecd787f2f.zip
gcc-c184e58c4d1aec200954f00b067e5adecd787f2f.tar.gz
gcc-c184e58c4d1aec200954f00b067e5adecd787f2f.tar.bz2
re PR target/83514 (ABRT in arm_declare_function_name passing a null pointer to std::string)
2018-01-11 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> PR target/83514 * config/arm/arm.c (arm_declare_function_name): Set arch_to_print if targ_options->x_arm_arch_string is non NULL. From-SVN: r256529
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/arm/arm.c9
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 48e2def..7ff6903 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2018-01-11 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
+
+ PR target/83514
+ * config/arm/arm.c (arm_declare_function_name): Set arch_to_print if
+ targ_options->x_arm_arch_string is non NULL.
+
2018-01-11 Tamar Christina <tamar.christina@arm.com>
* config/aarch64/aarch64.h
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 196aa6d..978c44a 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -30953,8 +30953,13 @@ arm_declare_function_name (FILE *stream, const char *name, tree decl)
gcc_assert (targ_options);
/* Only update the assembler .arch string if it is distinct from the last
- such string we printed. */
- std::string arch_to_print = targ_options->x_arm_arch_string;
+ such string we printed. arch_to_print is set conditionally in case
+ targ_options->x_arm_arch_string is NULL which can be the case
+ when cc1 is invoked directly without passing -march option. */
+ std::string arch_to_print;
+ if (targ_options->x_arm_arch_string)
+ arch_to_print = targ_options->x_arm_arch_string;
+
if (arch_to_print != arm_last_printed_arch_string)
{
std::string arch_name