* config/ia64/ia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 Mar 2015 10:41:00 +0000 (10:41 +0000)
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 Mar 2015 10:41:00 +0000 (10:41 +0000)
to create a register in testing mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@221139 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/ia64/ia64.c

index 5e11a0f..3db71ec 100644 (file)
@@ -1,3 +1,8 @@
+2015-03-03  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/ia64/ia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG
+       to create a register in testing mode.
+
 2015-03-03  Martin Liska  <mliska@suse.cz>
            Jan Hubicka   <hubicka@ucw.cz>
 
index 6ef22d9..5132d2f 100644 (file)
@@ -11570,7 +11570,10 @@ expand_vec_perm_interleave_2 (struct expand_vec_perm_d *d)
       gcc_assert (e < nelt);
       dfinal.perm[i] = e;
     }
-  dfinal.op0 = gen_reg_rtx (dfinal.vmode);
+  if (d->testing_p)
+    dfinal.op0 = gen_raw_REG (dfinal.vmode, LAST_VIRTUAL_REGISTER + 1);
+  else
+    dfinal.op0 = gen_reg_rtx (dfinal.vmode);
   dfinal.op1 = dfinal.op0;
   dfinal.one_operand_p = true;
   dremap.target = dfinal.op0;