This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Re-fix PR target/47755 on powerpc VSX
- From: David Edelsohn <dje dot gcc at gmail dot com>
- To: Michael Meissner <meissner at linux dot vnet dot ibm dot com>, gcc-patches at gcc dot gnu dot org
- Date: Tue, 8 Mar 2011 19:12:27 -0500
- Subject: Re: [PATCH] Re-fix PR target/47755 on powerpc VSX
- References: <20110308235610.GA19622@hungry-tiger.westford.ibm.com>
On Tue, Mar 8, 2011 at 6:56 PM, Michael Meissner
<meissner@linux.vnet.ibm.com> wrote:
> PR 47755 fixed some bugs on VSX with V2DI constants, but the patch itself had
> problems. ?In particular, the easy_altivec_constant support assumed the largest
> int size was SImode. ?This would cause the compiler to generate VSPLTI{W,S,B}
> to load up a constant instead of loading it up from memory.
>
> This patch only allows (vector long long) { 0, 0 } and
> (vector long long) { -1, -1 } as easy V2DI constants. ?There are some other
> constants that could be generated using the Altivec instructions in the future.
>
> I bootstrapped this patch and had no regressions with make check. ?Is it ok to
> install?
>
> [gcc]
> 2011-03-08 ?Michael Meissner ?<meissner@linux.vnet.ibm.com>
>
> ? ? ? ?PR target/47755
> ? ? ? ?* config/rs6000/rs6000.c (easy_altivec_constant): Correctly handle
> ? ? ? ?V2DI/V2DF constants. ?Only all 0's or all 1's are easy.
> ? ? ? ?(output_vec_const_move): Ditto.
>
> [gcc/testsuite]
> 2011-03-08 ?Michael Meissner ?<meissner@linux.vnet.ibm.com>
>
> ? ? ? ?PR target/47755
> ? ? ? ?* gcc.target/powerpc/pr47755-2.c: New file.
Should the CONST_INT test be wrapped in #ifdef HOST_BITS_PER_WIDE_INT?
Okay.
Thanks, David