re PR rtl-optimization/82973 (ICE in output_constant_pool_2, at varasm.c:3896 on...
authorJakub Jelinek <jakub@gcc.gnu.org>
Thu, 21 Dec 2017 09:11:58 +0000 (10:11 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 21 Dec 2017 09:11:58 +0000 (10:11 +0100)
commit63987ca445d31c4489f09881e3ff007294896ea2
tree665893af419d9b78dd93543f5724412f63319d47
parentc0cc00c4f0e806d28ef6ed25671c75626817176e
re PR rtl-optimization/82973 (ICE in output_constant_pool_2, at varasm.c:3896 on aarch64)

PR rtl-optimization/82973
* emit-rtl.h (valid_for_const_vec_duplicate_p): Rename to ...
(valid_for_const_vector_p): ... this.
* emit-rtl.c (valid_for_const_vec_duplicate_p): Rename to ...
(valid_for_const_vector_p): ... this.  Adjust function comment.
(gen_vec_duplicate): Adjust caller.
* optabs.c (expand_vector_broadcast): Likewise.
* simplify-rtx.c (simplify_const_unary_operation): Don't optimize into
CONST_VECTOR if some element isn't simplified valid_for_const_vector_p
constant.
(simplify_const_binary_operation): Likewise.  Use CONST_FIXED_P macro
instead of GET_CODE == CONST_FIXED.
(simplify_subreg): Use CONST_FIXED_P macro instead of
GET_CODE == CONST_FIXED.

* gfortran.dg/pr82973.f90: New test.

From-SVN: r255939
gcc/testsuite/gfortran.dg/pr82973.f90 [new file with mode: 0644]