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: PR rtl-optimization/50696: [x32] Unnecessary lea


On Thu, Oct 13, 2011 at 11:51 PM, Paolo Bonzini <bonzini@gnu.org> wrote:
> On 10/13/2011 10:07 PM, H.J. Lu wrote:
>>
>> On Thu, Oct 13, 2011 at 11:15 AM, Richard Kenner
>> <kenner@vlsi1.ultra.nyu.edu> ?wrote:
>>>>
>>>> The answer to H.J.'s "Why do we do it for MEM then?" is simply
>>>> "because no one ever thought about not doing it"
>>>
>>> No, that's false. ?The same expand_compound_operation /
>>> make_compound_operation
>>> pair is present in the MEM case as in the SET case. ?It's just that
>>> there's some bug here that's noticable in not making proper MEMs that
>>> doesn't show up in the SET case because of the way the insns are
>>> structured.
>>>
>>
>> When we have (and (OP) M) where
>>
>> (and (OP) M) == (and (OP) ((1<< ?ceil_log2 (M)) - 1) ))
>>
>> (and (OP) M) is zero_extract bits 0 to ceil_log2 (M).
>>
>> Does it look OK?
>
> Yes, it does. ?How did you test it?
>

There is a testcase at

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50696

It passes with my patch.

-- 
H.J.


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