[X86] Fix a typo error.
authorWang, Pengfei <pengfei.wang@intel.com>
Wed, 24 Jun 2020 15:37:06 +0000 (23:37 +0800)
committerWang, Pengfei <pengfei.wang@intel.com>
Thu, 25 Jun 2020 02:06:27 +0000 (10:06 +0800)
Summary: This will result opcode MULX32Hrm been emitted to MULX32Hrr.

Reviewed by: craig.topper

Differential Revision: https://reviews.llvm.org/D82472

llvm/lib/Target/X86/X86MCInstLower.cpp
llvm/test/CodeGen/X86/bug80500.ll

index 60f29ae..9ce2a46 100644 (file)
@@ -518,7 +518,7 @@ void X86MCInstLower::Lower(const MachineInstr *MI, MCInst &OutMI) const {
     switch (OutMI.getOpcode()) {
     default: llvm_unreachable("Invalid opcode");
     case X86::MULX32Hrr: NewOpc = X86::MULX32rr; break;
-    case X86::MULX32Hrm: NewOpc = X86::MULX32rr; break;
+    case X86::MULX32Hrm: NewOpc = X86::MULX32rm; break;
     case X86::MULX64Hrr: NewOpc = X86::MULX64rr; break;
     case X86::MULX64Hrm: NewOpc = X86::MULX64rm; break;
     }
index 9883d8e..9489336 100644 (file)
@@ -8,7 +8,7 @@ define i32 @load_fold_udiv1(i32* %p) {
 ; CHECK:       # %bb.0:
 ; CHECK-NEXT:    movl {{[0-9]+}}(%esp), %eax
 ; CHECK-NEXT:    movl $-2004318071, %edx # imm = 0x88888889
-; CHECK-NEXT:    mulxl %eax, %eax, %eax
+; CHECK-NEXT:    mulxl (%eax), %eax, %eax
 ; CHECK-NEXT:    shrl $3, %eax
 ; CHECK-NEXT:    retl
   %v = load i32, i32* %p, align 4