diff options
| author | Dan Gohman <gohman@apple.com> | 2008-05-29 21:50:34 +0000 |
|---|---|---|
| committer | Dan Gohman <gohman@apple.com> | 2008-05-29 21:50:34 +0000 |
| commit | 96af4ddb629c28201c2b8f6365d72809a0d36195 (patch) | |
| tree | 7a0a48680bb12326eba502549bb14912408abf19 /llvm/test/CodeGen/X86/fold-call.ll | |
| parent | 33e396d0414d190665734a327400fa1c3005288c (diff) | |
| download | bcm5719-llvm-96af4ddb629c28201c2b8f6365d72809a0d36195.tar.gz bcm5719-llvm-96af4ddb629c28201c2b8f6365d72809a0d36195.zip | |
Add patterns for CALL32m and CALL64m. They aren't matched in most
cases due to an isel deficiency already noted in
lib/Target/X86/README.txt, but they can be matched in this fold-call.ll
testcase, for example.
This is interesting mainly because it exposes a tricky tblgen bug;
tblgen was incorrectly computing the starting index for variable_ops
in the case of a complex pattern.
llvm-svn: 51706
Diffstat (limited to 'llvm/test/CodeGen/X86/fold-call.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/fold-call.ll | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/fold-call.ll b/llvm/test/CodeGen/X86/fold-call.ll new file mode 100644 index 00000000000..53991717c67 --- /dev/null +++ b/llvm/test/CodeGen/X86/fold-call.ll @@ -0,0 +1,10 @@ +; RUN: llvm-as < %s | llc -march=x86 | not grep mov +; RUN: llvm-as < %s | llc -march=x86-64 | not grep mov + +declare void @bar() + +define void @foo(i32 %i0, i32 %i1, i32 %i2, i32 %i3, i32 %i4, i32 %i5, void()* %arg) nounwind { + call void @bar() + call void %arg() + ret void +} |

