[llvm-branch-commits] [llvm-branch] r124409 - /llvm/branches/Apple/sill/lib/Target/X86/X86InstrCompiler.td

Daniel Dunbar daniel at zuster.org
Thu Jan 27 12:08:30 PST 2011


Author: ddunbar
Date: Thu Jan 27 14:08:30 2011
New Revision: 124409

URL: http://llvm.org/viewvc/llvm-project?rev=124409&view=rev
Log:
Merge r123712:
--
Author: Eric Christopher <echristo at apple.com>
Date:   Tue Jan 18 01:37:20 2011 +0000

    The stub routine that we're calling uses test and so clobbers
    the flags.

Modified:
    llvm/branches/Apple/sill/lib/Target/X86/X86InstrCompiler.td

Modified: llvm/branches/Apple/sill/lib/Target/X86/X86InstrCompiler.td
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/sill/lib/Target/X86/X86InstrCompiler.td?rev=124409&r1=124408&r2=124409&view=diff
==============================================================================
--- llvm/branches/Apple/sill/lib/Target/X86/X86InstrCompiler.td (original)
+++ llvm/branches/Apple/sill/lib/Target/X86/X86InstrCompiler.td Thu Jan 27 14:08:30 2011
@@ -271,7 +271,7 @@
 // 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),
@@ -281,7 +281,7 @@
 
 // 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 = [RDI],
     usesCustomInserter = 1 in
 def TLSCall_64 : I<0, Pseudo, (outs), (ins i64mem:$sym),





More information about the llvm-branch-commits mailing list