This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix powerpc -mtune=cell -m64 and insn patterns (PR target/39226)


Jakub,

We all are in agreement.  Your patch is fine for mainline and 4.4 branch.

Thanks, David

       PR target/39226
       * config/rs6000/rs6000.md (andsi3_internal5_nomc,
       anddi3_internal2_nomc, anddi3_internal3_nomc): Removed.
       (booldi3_internal3): Use boolean_or_operator instead of
       boolean_operator.

       * gcc.dg/pr39226.c: New test.

On Tue, Mar 31, 2009 at 7:59 PM, Andrew Pinski <pinskia@gmail.com> wrote:
> On Sun, Mar 29, 2009 at 9:26 PM, Ben Elliston <bje@au1.ibm.com> wrote:
>> On Tue, 2009-03-03 at 09:24 -0500, David Edelsohn wrote:
>>
>>> I would like to hear Andrew and Ben's feedback about this change.
>>
>> Sorry for the delay in responding .. this thread drifted to the bottom
>> of my inbox. :-( ?Jakub's argument seems reasonable to me. ?Andrew?
>
> I had also removed anddi3_internal2_nomc and anddi3_internal3_nomc to
> fix a bug on the PS3 toolchain too. ?So this is the same patch which I
> would have submitted.
>
> The short testcase which was found to cause a bug in the PS3 toolchain was:
> int g(void);
> int h(void);
> unsigned long long f(unsigned long long a, unsigned long long b)
> {
> ?unsigned int c = -2;
> ?if (a & c)
> ?return g();
> ?else return h();
> }
>
> It would ICE during reload as it would try to rematerize the constant
> and we had constants disable in the TOC (as an option). ?GCC could
> generate 0x00000000FFFFFFE in two instructions but that is a different
> issue and would avoid the ICE I had found.
>
> I agree this is the correct fix and the way forward.
>
> Thanks,
> Andrew Pinski
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]