diff options
author | Peter Bergner <bergner@vnet.ibm.com> | 2017-10-02 11:56:58 -0500 |
---|---|---|
committer | Peter Bergner <bergner@gcc.gnu.org> | 2017-10-02 11:56:58 -0500 |
commit | 20a7e14aadb19439b36115bbf8e75ffc70f23501 (patch) | |
tree | dd2bea9e60bf8fc8b8067a3efaf92795038abce7 /gcc/config/rs6000/rs6000-protos.h | |
parent | 476dec785da43401e5a34d80d2ed5ec61d3a9dd6 (diff) | |
download | gcc-20a7e14aadb19439b36115bbf8e75ffc70f23501.tar.gz |
re PR target/80210 (ICE in in extract_insn, at recog.c:2311 on ppc64 for with __builtin_pow)
gcc/
PR target/80210
* config/rs6000/rs6000.c (rs6000_option_override_internal): Rewrite
function to not use the have_cpu variable. Do not set cpu_index,
rs6000_cpu_index or rs6000_tune_index if we end up using TARGET_DEFAULT
or the default cpu.
(rs6000_valid_attribute_p): Remove duplicate initializations of
old_optimize and func_optimize.
(rs6000_pragma_target_parse): Call rs6000_activate_target_options ().
(rs6000_activate_target_options): Make global.
* config/rs6000/rs6000-protos.h (rs6000_activate_target_options): Add
prototype.
gcc/testsuite/
PR target/80210
* gcc.target/powerpc/pr80210-2.c: New test.
From-SVN: r253358
Diffstat (limited to 'gcc/config/rs6000/rs6000-protos.h')
-rw-r--r-- | gcc/config/rs6000/rs6000-protos.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/config/rs6000/rs6000-protos.h b/gcc/config/rs6000/rs6000-protos.h index 781349b850e..c6be5b1ef59 100644 --- a/gcc/config/rs6000/rs6000-protos.h +++ b/gcc/config/rs6000/rs6000-protos.h @@ -230,6 +230,7 @@ extern void rs6000_cpu_cpp_builtins (struct cpp_reader *); #ifdef TREE_CODE extern bool rs6000_pragma_target_parse (tree, tree); #endif +extern void rs6000_activate_target_options (tree new_tree); extern void rs6000_target_modify_macros (bool, HOST_WIDE_INT, HOST_WIDE_INT); extern void (*rs6000_target_modify_macros_ptr) (bool, HOST_WIDE_INT, HOST_WIDE_INT); |