[llvm-commits] Request for Review - avoid register pressure with read/modify/write instructions
Evan Cheng
evan.cheng at apple.com
Wed Mar 28 18:21:27 PDT 2012
The store fusing case should be handled by the tablegen generated code. This is a special case because generated code can't handle load / op / store fusion when the operation produces a flag.
Evan
On Mar 28, 2012, at 6:15 PM, Joerg Sonnenberger wrote:
> On Wed, Mar 28, 2012 at 11:12:49AM -0700, Joel Jones wrote:
>> This is a code change to add support for changing instruction sequences of the form:
>>
>> load
>> inc/dec of 8/16/32/64 bits
>> store
>>
>> into the appropriate X86 inc/dec through memory instruction:
>>
>> inc[qlwb] / dec[qlwb]
>
> At the moment you reject the transformation if anything else uses the
> load. Wouldn't it still make sense to fuse the inc/dec with the store,
> if the operand is not volatile? Or does that violate the memory model?
>
> Joerg
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list