Don't let x86 asm printer use the no operand movsd alias. It should use the normal...
authorCraig Topper <craig.topper@gmail.com>
Tue, 23 Jul 2013 01:50:47 +0000 (01:50 +0000)
committerCraig Topper <craig.topper@gmail.com>
Tue, 23 Jul 2013 01:50:47 +0000 (01:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186924 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrInfo.td
test/MC/Disassembler/X86/simple-tests.txt
test/MC/X86/x86-32.s
test/MC/X86/x86-64.s

index 9e5b6ff31d779ba3ab4023506c297285a7ac6048..38196c69984d45d1182d77f502901f8e8dee3f3a 100644 (file)
@@ -2128,7 +2128,7 @@ def : InstAlias<"movq $src, $dst",
 
 // movsd with no operands (as opposed to the SSE scalar move of a double) is an
 // alias for movsl. (as in rep; movsd)
-def : InstAlias<"movsd", (MOVSD)>;
+def : InstAlias<"movsd", (MOVSD), 0>;
 
 // movsx aliases
 def : InstAlias<"movsx $src, $dst", (MOVSX16rr8 GR16:$dst, GR8:$src), 0>;
index d51f0a1c9266a393eaec94159562f6d6685a8f72..940b1f7b8f808fd0f3574580ad750e6f65b62765 100644 (file)
 
 # rdar://13493622 lldb doesn't print the x86 rep/repne prefix when disassembling
 # CHECK: repne
-# CHECK-NEXT: movsd
+# CHECK-NEXT: movsl
 0xf2 0xa5
 # CHECK: repne
 # CHECK-NEXT: movsq
index 57a00378d319cd477b0a4af7103c8770935fec84..99136bd19cdf7c75846ca69bd3b94a119b57266b 100644 (file)
@@ -894,9 +894,9 @@ pshufw $90, %mm4, %mm0
        movsw   %ds:(%esi), %es:(%edi)
        movsw   (%esi), %es:(%edi)
 
-// CHECK: movsd # encoding: [0xa5]
-// CHECK: movsd
-// CHECK: movsd
+// CHECK: movsl # encoding: [0xa5]
+// CHECK: movsl
+// CHECK: movsl
        movsl
        movsl   %ds:(%esi), %es:(%edi)
        movsl   (%esi), %es:(%edi)
index c4b716a74f07cdb06a4f5f9b800a415d9af106f6..baa076fc2f60b19f0bffa69ce4649363fbbc6ea4 100644 (file)
 // rdar://8470918
 smovb // CHECK: movsb
 smovw // CHECK: movsw
-smovl // CHECK: movsd
+smovl // CHECK: movsl
 smovq // CHECK: movsq
 
 // rdar://8456361
 // CHECK: rep
-// CHECK: movsd
+// CHECK: movsl
         rep movsd
 
 // CHECK: rep
@@ -627,7 +627,7 @@ movsq
 // CHECK:   encoding: [0x48,0xa5]
 
 movsl
-// CHECK: movsd
+// CHECK: movsl
 // CHECK:   encoding: [0xa5]
 
 stosq
@@ -845,7 +845,7 @@ lock/incl 1(%rsp)
 rep movsl
 // CHECK: rep
 // CHECK: encoding: [0xf3]
-// CHECK: movsd
+// CHECK: movsl
 // CHECK: encoding: [0xa5]
 
 
@@ -1083,14 +1083,14 @@ xsetbv // CHECK: xsetbv # encoding: [0x0f,0x01,0xd1]
        movsw   %ds:(%rsi), %es:(%rdi)
        movsw   (%rsi), %es:(%rdi)
 
-// CHECK: movsd # encoding: [0xa5]
-// CHECK: movsd
-// CHECK: movsd
+// CHECK: movsl # encoding: [0xa5]
+// CHECK: movsl
+// CHECK: movsl
        movsl
        movsl   %ds:(%rsi), %es:(%rdi)
        movsl   (%rsi), %es:(%rdi)
 // rdar://10883092
-// CHECK: movsd
+// CHECK: movsl
        movsl   (%rsi), (%rdi)
 
 // CHECK: movsq # encoding: [0x48,0xa5]