diff options
author | Matthew Fortune <matthew.fortune@imgtec.com> | 2017-03-30 22:47:38 +0000 |
---|---|---|
committer | Matthew Fortune <mpf@gcc.gnu.org> | 2017-03-30 22:47:38 +0000 |
commit | 6c18efd4e20b8af2e625334c6d58e12decebf62b (patch) | |
tree | f18e5b038b84c241e157d6f01e7684fc760d1bdd /gcc | |
parent | c8e0f43f7469600ab63ef67d4d24316614717e87 (diff) | |
download | gcc-6c18efd4e20b8af2e625334c6d58e12decebf62b.zip gcc-6c18efd4e20b8af2e625334c6d58e12decebf62b.tar.gz gcc-6c18efd4e20b8af2e625334c6d58e12decebf62b.tar.bz2 |
Fix ICE when expanding MSA constant vectors with replicated values
gcc/
* config/mips/mips.c (mips_expand_vector_init): Create
a const_vector to initialise a vector register instead of
using a const_int.
From-SVN: r246601
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/mips/mips.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 18effd7..6eb56f5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-03-30 Matthew Fortune <matthew.fortune@imgtec.com> + + * config/mips/mips.c (mips_expand_vector_init): Create a const_vector + to initialise a vector register instead + of using a const_int. + 2017-03-30 Jakub Jelinek <jakub@redhat.com> PR translation/80189 diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index d1deb52..dadfcc4 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -21757,11 +21757,12 @@ mips_expand_vector_init (rtx target, rtx vals) case V8HImode: case V4SImode: case V2DImode: - emit_move_insn (target, same); + temp = gen_rtx_CONST_VECTOR (vmode, XVEC (vals, 0)); + emit_move_insn (target, temp); return; default: - break; + gcc_unreachable (); } } temp = gen_reg_rtx (imode); |