summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-07-19 07:21:07 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-07-19 07:21:07 +0000
commit9aefb8ee4c0c7ceb1676f15b196482fbe754a5b2 (patch)
tree7ba2e997639a9d886da98032e4efc1ea931b91a6
parent2e9f58517d47458908d2ba0fa6cb432d9ecbf4b0 (diff)
downloadbcm5719-llvm-9aefb8ee4c0c7ceb1676f15b196482fbe754a5b2.tar.gz
bcm5719-llvm-9aefb8ee4c0c7ceb1676f15b196482fbe754a5b2.zip
X86-64: Mark WINCALL and more tail call instructions as code gen only.
llvm-svn: 108685
-rw-r--r--llvm/lib/Target/X86/X86Instr64bit.td5
-rw-r--r--llvm/test/MC/AsmParser/X86/x86_instructions.s2
2 files changed, 4 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86Instr64bit.td b/llvm/lib/Target/X86/X86Instr64bit.td
index 9baba5d0722..0b4cd98ef09 100644
--- a/llvm/lib/Target/X86/X86Instr64bit.td
+++ b/llvm/lib/Target/X86/X86Instr64bit.td
@@ -158,7 +158,7 @@ let isCall = 1 in
// FIXME: We need to teach codegen about single list of call-clobbered
// registers.
-let isCall = 1 in
+let isCall = 1, isCodeGenOnly = 1 in
// All calls clobber the non-callee saved registers. RSP is marked as
// a use to prevent stack-pointer assignments that appear immediately
// before calls from potentially appearing dead. Uses for argument
@@ -182,7 +182,8 @@ let isCall = 1 in
}
-let isCall = 1, isTerminator = 1, isReturn = 1, isBarrier = 1 in
+let isCall = 1, isTerminator = 1, isReturn = 1, isBarrier = 1,
+ isCodeGenOnly = 1 in
let Defs = [RAX, RCX, RDX, RSI, RDI, R8, R9, R10, R11,
FP0, FP1, FP2, FP3, FP4, FP5, FP6, ST0, ST1,
MM0, MM1, MM2, MM3, MM4, MM5, MM6, MM7,
diff --git a/llvm/test/MC/AsmParser/X86/x86_instructions.s b/llvm/test/MC/AsmParser/X86/x86_instructions.s
index 4bc8a4bb3a8..92fb1b24311 100644
--- a/llvm/test/MC/AsmParser/X86/x86_instructions.s
+++ b/llvm/test/MC/AsmParser/X86/x86_instructions.s
@@ -56,7 +56,7 @@
subl %eax, %ebx
// FIXME: Check that this matches the correct instruction.
-// CHECK: call *%rax
+// CHECK: callq *%rax
call *%rax
// FIXME: Check that this matches the correct instruction.
OpenPOWER on IntegriCloud