diff options
| author | Eric Christopher <echristo@apple.com> | 2011-01-18 01:37:20 +0000 |
|---|---|---|
| committer | Eric Christopher <echristo@apple.com> | 2011-01-18 01:37:20 +0000 |
| commit | 542f8a52214374684dc8b1f6f3239a34942ac360 (patch) | |
| tree | 2ec0f4056db77b7404a92c3b666df1136a624ea0 /llvm/lib | |
| parent | ea4e983d703b1598a3a1947f725d4139991d968c (diff) | |
| download | bcm5719-llvm-542f8a52214374684dc8b1f6f3239a34942ac360.tar.gz bcm5719-llvm-542f8a52214374684dc8b1f6f3239a34942ac360.zip | |
The stub routine that we're calling uses test and so clobbers
the flags.
llvm-svn: 123712
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrCompiler.td | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86InstrCompiler.td b/llvm/lib/Target/X86/X86InstrCompiler.td index da5e05a5d7e..4f60de0faf4 100644 --- a/llvm/lib/Target/X86/X86InstrCompiler.td +++ b/llvm/lib/Target/X86/X86InstrCompiler.td @@ -283,7 +283,7 @@ def TLS_addr64 : I<0, Pseudo, (outs), (ins i64mem:$sym), // For i386, the address of the thunk is passed on the stack, on return the // address of the variable is in %eax. %ecx is trashed during the function // call. All other registers are preserved. -let Defs = [EAX, ECX], +let Defs = [EAX, ECX, EFLAGS], Uses = [ESP], usesCustomInserter = 1 in def TLSCall_32 : I<0, Pseudo, (outs), (ins i32mem:$sym), @@ -293,7 +293,7 @@ def TLSCall_32 : I<0, Pseudo, (outs), (ins i32mem:$sym), // For x86_64, the address of the thunk is passed in %rdi, on return // the address of the variable is in %rax. All other registers are preserved. -let Defs = [RAX], +let Defs = [RAX, EFLAGS], Uses = [RSP, RDI], usesCustomInserter = 1 in def TLSCall_64 : I<0, Pseudo, (outs), (ins i64mem:$sym), |

