mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-15 07:34:33 +00:00
Add reg clobber list for direct calls
Represent empty use/def list as a null pointer git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5101 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8797caac84
commit
1445895e19
@ -24,7 +24,7 @@
|
||||
|
||||
// Implicit register usage info: O_ is for one register, T_ is for two registers
|
||||
// NoIR means the instruction does not use implicit registers, in this form.
|
||||
IMPREGSLIST(NoIR , 0)
|
||||
#define NoIR 0
|
||||
IMPREGSLIST(O_AL , X86::AL , 0)
|
||||
IMPREGSLIST(O_AH , X86::AH , 0)
|
||||
IMPREGSLIST(O_CL , X86::CL , 0)
|
||||
@ -65,7 +65,7 @@ I(JNE , "jne", 0x85, M_BRANCH_FLAG, X86II::RawFrm | X86II::TB | X86II:
|
||||
NoIR) // jne foo
|
||||
I(JE , "je", 0x84, M_BRANCH_FLAG, X86II::RawFrm | X86II::TB | X86II::Void, NoIR,
|
||||
NoIR) // je foo
|
||||
I(CALLpcrel32 , "call", 0xE8, M_BRANCH_FLAG, X86II::Void, NoIR, NoIR) // call pc+42
|
||||
I(CALLpcrel32 , "call", 0xE8, M_BRANCH_FLAG, X86II::Void, NoIR, C_CLOBBER) // call pc+42
|
||||
I(CALLr32 , "call", 0xFF, M_BRANCH_FLAG, X86II::Void | X86II::MRMS2r | X86II::Arg32,
|
||||
NoIR, C_CLOBBER) // call [r32]
|
||||
I(CALLm32 , "call", 0xFF, M_BRANCH_FLAG, X86II::Void | X86II::MRMS2m | X86II::Arg32,
|
||||
@ -198,3 +198,5 @@ I(MOVZXr32r16 , "movzx", 0xB7, 0, X86II::MRMSrcReg | X86II::TB, NoIR
|
||||
|
||||
// At this point, I is dead, so undefine the macro
|
||||
#undef I
|
||||
#undef NoIR
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user