aboutsummaryrefslogtreecommitdiff
path: root/test/MC/X86/x86-64.s
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-11-06 21:23:40 +0000
committerChris Lattner <sabre@nondot.org>2010-11-06 21:23:40 +0000
commit8c24b0c6996a8f03ff32766f0695dcf19577af59 (patch)
treed41544121b341d8b97a966ad106303ad36562558 /test/MC/X86/x86-64.s
parent235705b9ca08b66532528930adf9d9c23fd7b42b (diff)
rework the rotate-by-1 instructions to be defined like the
shift-by-1 instructions, where the asmstring doesn't contain the implicit 1. It turns out that a bunch of these rotate instructions were completely broken because they used 1 instead of $1. This fixes assembly mismatches on "rclb $1, %bl" and friends, where we used to generate the 3 byte form, we now generate the proper 2-byte form. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118355 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/X86/x86-64.s')
-rw-r--r--test/MC/X86/x86-64.s13
1 files changed, 8 insertions, 5 deletions
diff --git a/test/MC/X86/x86-64.s b/test/MC/X86/x86-64.s
index 87b38cf717..3df90217d8 100644
--- a/test/MC/X86/x86-64.s
+++ b/test/MC/X86/x86-64.s
@@ -284,16 +284,19 @@ fnstsw %eax
fnstsw %al
// rdar://8431880
-// CHECK: rclb $1, %bl
-// CHECK: rcll $1, 3735928559(%ebx,%ecx,8)
-// CHECK: rcrl $1, %ecx
-// CHECK: rcrl $1, 305419896
-
+// CHECK: rclb %bl
+// CHECK: rcll 3735928559(%ebx,%ecx,8)
+// CHECK: rcrl %ecx
+// CHECK: rcrl 305419896
rcl %bl
rcll 0xdeadbeef(%ebx,%ecx,8)
rcr %ecx
rcrl 0x12345678
+rclb %bl // CHECK: rclb %bl # encoding: [0xd0,0xd3]
+rclb $1, %bl // CHECK: rclb %bl # encoding: [0xd0,0xd3]
+rclb $2, %bl // CHECK: rclb $2, %bl # encoding: [0xc0,0xd3,0x02]
+
// rdar://8418316
// CHECK: shldw $1, %bx, %bx
// CHECK: shldw $1, %bx, %bx