public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [IA-64] Fix gcc.dg/torture/vshuf-v8qi.c
@ 2015-03-03  8:59 Eric Botcazou
  2015-03-03  9:46 ` Richard Biener
  0 siblings, 1 reply; 2+ messages in thread
From: Eric Botcazou @ 2015-03-03  8:59 UTC (permalink / raw)
  To: gcc-patches

[-- Attachment #1: Type: text/plain, Size: 530 bytes --]

Hi,

the test fails at -O2 because of the assertion recently added to gen_reg_rtx 
that crtl->emit.regno_pointer_align_length is non-zero.  Now the function 
expand_vec_perm_interleave_2 can be invoked at the GIMPLE level in "testing" 
mode and crtl->emit is not initialized by that time.

Tested on ia64-linux-gnu, OK for mainline and 4.9 branch?


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.


-- 
Eric Botcazou

[-- Attachment #2: p.diff --]
[-- Type: text/x-patch, Size: 586 bytes --]

Index: config/ia64/ia64.c
===================================================================
--- config/ia64/ia64.c	(revision 221132)
+++ config/ia64/ia64.c	(working copy)
@@ -11570,7 +11570,10 @@ expand_vec_perm_interleave_2 (struct exp
       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;

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [IA-64] Fix gcc.dg/torture/vshuf-v8qi.c
  2015-03-03  8:59 [IA-64] Fix gcc.dg/torture/vshuf-v8qi.c Eric Botcazou
@ 2015-03-03  9:46 ` Richard Biener
  0 siblings, 0 replies; 2+ messages in thread
From: Richard Biener @ 2015-03-03  9:46 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: GCC Patches

On Tue, Mar 3, 2015 at 9:56 AM, Eric Botcazou <ebotcazou@adacore.com> wrote:
> Hi,
>
> the test fails at -O2 because of the assertion recently added to gen_reg_rtx
> that crtl->emit.regno_pointer_align_length is non-zero.  Now the function
> expand_vec_perm_interleave_2 can be invoked at the GIMPLE level in "testing"
> mode and crtl->emit is not initialized by that time.
>
> Tested on ia64-linux-gnu, OK for mainline and 4.9 branch?

Ok.

Thanks,
Richard.

>
> 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.
>
>
> --
> Eric Botcazou

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-03-03  9:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-03  8:59 [IA-64] Fix gcc.dg/torture/vshuf-v8qi.c Eric Botcazou
2015-03-03  9:46 ` Richard Biener

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).