This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] V2DI zero constant in GPR (PR target/56948)
- From: Michael Meissner <meissner at linux dot vnet dot ibm dot com>
- To: David Edelsohn <dje dot gcc at gmail dot com>
- Cc: Michael Meissner <meissner at linux dot vnet dot ibm dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 15 Apr 2013 19:28:41 -0400
- Subject: Re: [PATCH] V2DI zero constant in GPR (PR target/56948)
- References: <CAGWvnymjxjOqzdQONVotfYZ30L0uxYV0PnOT=pDwwGR+F-47Kw at mail dot gmail dot com>
On Sat, Apr 13, 2013 at 03:48:13PM -0400, David Edelsohn wrote:
> V2DI mode is allowed in GPRs and the pattern predicate allows easy
> vector constants but the pattern in vsx.md does not provide an
> alternative for that case, which can lead to an ICE where the insn
> does not satisfy its constraints. The following patch adds an
> alternative for this case.
>
> I also noticed that the VSX movti_64bit pattern does not handle
> loading constants into a GPR.
>
> And both the movti_64bit and movti_32bit patterns use j->wa instead of
> O->wa. The "j" constraint will work because it will accept any mode,
> but I think that an "O" constraint is more accurate for a scalar mode
> like TImode.
>
> Because the failure depends on the details of register allocation, I
> do not have a short testcase.
>
> Comments?
This looks right. Too bad we probably can't combine j/O constraints, due to
them being used in asm.
--
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460, USA
email: meissner@linux.vnet.ibm.com, phone: +1 (978) 899-4797