[llvm-commits] [llvm] r92167 - /llvm/trunk/lib/Target/X86/X86InstrInfo.td

Eli Friedman eli.friedman at gmail.com
Sat Dec 26 12:08:31 PST 2009


Author: efriedma
Date: Sat Dec 26 14:08:30 2009
New Revision: 92167

URL: http://llvm.org/viewvc/llvm-project?rev=92167&view=rev
Log:
PR5886: Make sure IMUL32m is marked as setting EFLAGS, so scheduling doesn't
do illegal stuff around it.  No testcase because the issue is very fragile.


Modified:
    llvm/trunk/lib/Target/X86/X86InstrInfo.td

Modified: llvm/trunk/lib/Target/X86/X86InstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrInfo.td?rev=92167&r1=92166&r2=92167&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrInfo.td (original)
+++ llvm/trunk/lib/Target/X86/X86InstrInfo.td Sat Dec 26 14:08:30 2009
@@ -1128,7 +1128,7 @@
 let Defs = [AX,DX,EFLAGS], Uses = [AX] in
 def IMUL16m : I<0xF7, MRM5m, (outs), (ins i16mem:$src),
                 "imul{w}\t$src", []>, OpSize; // AX,DX = AX*[mem16]
-let Defs = [EAX,EDX], Uses = [EAX] in
+let Defs = [EAX,EDX,EFLAGS], Uses = [EAX] in
 def IMUL32m : I<0xF7, MRM5m, (outs), (ins i32mem:$src),
                 "imul{l}\t$src", []>;  // EAX,EDX = EAX*[mem32]
 }





More information about the llvm-commits mailing list