[llvm-commits] CVS: llvm/lib/Target/X86/X86InstrInfo.td
Chris Lattner
sabre at nondot.org
Thu Oct 12 13:33:10 PDT 2006
On Thu, 12 Oct 2006, Evan Cheng wrote:
> In 64-bit, stack ptr is RSP. But I suppose that is ok since ESP / RSP
> overlaps?
Good point, yep it should be ok.
-Chris
> Evan
> On Oct 12, 2006, at 10:43 AM, Chris Lattner wrote:
>
>>
>>
>> Changes in directory llvm/lib/Target/X86:
>>
>> X86InstrInfo.td updated: 1.289 -> 1.290
>> ---
>> Log message:
>>
>> Mark ADJCALLSTACKUP/DOWN as clobbering ESP so that virtregmap will notice
>> that it can't assume ESP is unmodified across the instrs.
>>
>>
>> ---
>> Diffs of the changes: (+6 -2)
>>
>> X86InstrInfo.td | 8 ++++++--
>> 1 files changed, 6 insertions(+), 2 deletions(-)
>>
>>
>> Index: llvm/lib/Target/X86/X86InstrInfo.td
>> diff -u llvm/lib/Target/X86/X86InstrInfo.td:1.289 llvm/lib/Target/
>> X86/X86InstrInfo.td:1.290
>> --- llvm/lib/Target/X86/X86InstrInfo.td:1.289 Wed Oct 11 16:03:53
>> 2006
>> +++ llvm/lib/Target/X86/X86InstrInfo.td Thu Oct 12 12:42:56 2006
>> @@ -346,11 +346,15 @@
>> // Instruction list...
>> //
>>
>> +// ADJCALLSTACKDOWN/UP implicitly use/def ESP because they may be
>> expanded into
>> +// a stack adjustment and the codegen must know that they may modify the
>> stack
>> +// pointer before prolog-epilog rewriting occurs.
>> def ADJCALLSTACKDOWN : I<0, Pseudo, (ops i32imm:$amt),
>> "#ADJCALLSTACKDOWN",
>> - [(X86callseq_start imm:$amt)]>;
>> + [(X86callseq_start imm:$amt)]>, Imp<[ESP],
>> [ESP]>;
>> def ADJCALLSTACKUP : I<0, Pseudo, (ops i32imm:$amt1, i32imm:$amt2),
>> "#ADJCALLSTACKUP",
>> - [(X86callseq_end imm:$amt1, imm:$amt2)]>;
>> + [(X86callseq_end imm:$amt1, imm:$amt2)]>,
>> + Imp<[ESP],[ESP]>;
>> def IMPLICIT_USE : I<0, Pseudo, (ops variable_ops), "#IMPLICIT_USE",
>> []>;
>> def IMPLICIT_DEF : I<0, Pseudo, (ops variable_ops), "#IMPLICIT_DEF",
>> []>;
>> def IMPLICIT_DEF_GR8 : I<0, Pseudo, (ops GR8:$dst),
>>
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>
-Chris
--
http://nondot.org/sabre/
http://llvm.org/
More information about the llvm-commits
mailing list