On 06/27/2012 10:45 AM, Richard Guenther wrote:
> On Wed, Jun 27, 2012 at 5:02 AM, Richard Henderson wrote:
>> sometimes not (increased code size):
>>
>> -: 41 bd 01 00 00 00 mov$0x1,%r13d
>> -: 4d 89 ecmov%r13,%r12
>> +: 41 bc 01 00 00 00 mov
On 06/27/2012 01:45 AM, Richard Guenther wrote:
>> > Of course, this fires for normal integer code as well.
>> > Some cases it's a clear win:
>> >
>> > -: 41 be 1f 00 00 00 mov$0x1f,%r14d
>> > ...
>> > -: 4c 89 f1mov%r14,%rcx
>> > +: b9 1f 00 00 00
On Wed, Jun 27, 2012 at 5:02 AM, Richard Henderson wrote:
> The problem I'd like to solve is stuff like
>
> pxor %xmm4, %xmm4
> ...
> movdqa %xmm4, %xmm2
> pcmpgtd %xmm0, %xmm2
>
> In that there's no point performing the copy from xmm4
> rather than just emitting a new pxo
The problem I'd like to solve is stuff like
pxor%xmm4, %xmm4
...
movdqa %xmm4, %xmm2
pcmpgtd %xmm0, %xmm2
In that there's no point performing the copy from xmm4
rather than just emitting a new pxor insn.
The Real Problem, as I see it, is that at the point (g)cse
runs