summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86InstrInfo.def
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-12-13 14:13:27 +0000
committerChris Lattner <sabre@nondot.org>2002-12-13 14:13:27 +0000
commitc4eb1ed23ca176f1cfeebcbe54114081438c8357 (patch)
tree33826189d5ba775e7b9dbb8ae08b2847643f93df /llvm/lib/Target/X86/X86InstrInfo.def
parentca8eb8af18b7475ba3885d042acdc86c89af0ee7 (diff)
downloadbcm5719-llvm-c4eb1ed23ca176f1cfeebcbe54114081438c8357.tar.gz
bcm5719-llvm-c4eb1ed23ca176f1cfeebcbe54114081438c8357.zip
Implement indirect function calls
llvm-svn: 5024
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrInfo.def')
-rw-r--r--llvm/lib/Target/X86/X86InstrInfo.def4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.def b/llvm/lib/Target/X86/X86InstrInfo.def
index 2b0432b27fd..cdf848d87bd 100644
--- a/llvm/lib/Target/X86/X86InstrInfo.def
+++ b/llvm/lib/Target/X86/X86InstrInfo.def
@@ -66,6 +66,10 @@ I(JNE , "jne", 0x85, M_BRANCH_FLAG, X86II::RawFrm | X86II::TB | X86II:
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(CALLr32 , "call", 0xFF, M_BRANCH_FLAG, X86II::Void | X86II::MRMS2r | X86II::Arg32,
+ NoIR, NoIR) // call [r32]
+I(CALLm32 , "call", 0xFF, M_BRANCH_FLAG, X86II::Void | X86II::MRMS2m | X86II::Arg32,
+ NoIR, NoIR) // call [m32]
// Misc instructions
I(LEAVE , "leave", 0xC9, 0, X86II::RawFrm, O_EBP, O_EBP) // leave
OpenPOWER on IntegriCloud