diff options
author | Chris Lattner <sabre@nondot.org> | 2010-11-06 21:23:40 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-11-06 21:23:40 +0000 |
commit | 8c24b0c6996a8f03ff32766f0695dcf19577af59 (patch) | |
tree | d41544121b341d8b97a966ad106303ad36562558 /test/MC/X86/x86-64.s | |
parent | 235705b9ca08b66532528930adf9d9c23fd7b42b (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.s | 13 |
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 |