diff options
author | Maxim Ostapenko <m.ostapenko@samsung.com> | 2017-08-17 11:58:13 +0000 |
---|---|---|
committer | Maxim Ostapenko <chefmax@gcc.gnu.org> | 2017-08-17 14:58:13 +0300 |
commit | b8d8d3ff49a530e6a2ea99d546f41497f3f96654 (patch) | |
tree | adc7cbecb52dd5c585043f773c049faec58568a2 /gcc | |
parent | ab4b719a48a68503edf03b9aca745c242f55c9d7 (diff) | |
download | gcc-b8d8d3ff49a530e6a2ea99d546f41497f3f96654.zip gcc-b8d8d3ff49a530e6a2ea99d546f41497f3f96654.tar.gz gcc-b8d8d3ff49a530e6a2ea99d546f41497f3f96654.tar.bz2 |
re PR target/81861 (ASan pr64820.c testcase segfaults with LTO and -fstack-protector-strong)
2017-08-17 Maxim Ostapenko <m.ostapenko@samsung.com>
PR target/81861
* config/i386/i386.c (ix86_option_override_internal): Save target
specific options after ix86_stack_protector_guard_reg was changed.
From-SVN: r251145
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 12 |
2 files changed, 12 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d4db491..088f312 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-08-17 Maxim Ostapenko <m.ostapenko@samsung.com> + + PR target/81861 + * config/i386/i386.c (ix86_option_override_internal): Save target + specific options after ix86_stack_protector_guard_reg was changed. + 2017-08-17 Richard Biener <rguenther@suse.de> PR tree-optimization/81827 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 1d88e4f..3720d275 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -6651,12 +6651,6 @@ ix86_option_override_internal (bool main_args_p, gcc_assert ((opts->x_target_flags & MASK_LONG_DOUBLE_64) == 0 || (opts->x_target_flags & MASK_LONG_DOUBLE_128) == 0); - /* Save the initial options in case the user does function specific - options. */ - if (main_args_p) - target_option_default_node = target_option_current_node - = build_target_option_node (opts); - /* Handle stack protector */ if (!opts_set->x_ix86_stack_protector_guard) opts->x_ix86_stack_protector_guard @@ -6740,6 +6734,12 @@ ix86_option_override_internal (bool main_args_p, free (str); } + /* Save the initial options in case the user does function specific + options. */ + if (main_args_p) + target_option_default_node = target_option_current_node + = build_target_option_node (opts); + return true; } |