diff options
author | Craig Topper <craig.topper@gmail.com> | 2013-01-06 20:39:29 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2013-01-06 20:39:29 +0000 |
commit | f564a9389da68266f44314fe38ab399fd2211134 (patch) | |
tree | a45d4cbded5f756f85763884ebf09a8bf11449b7 /test/MC/X86/x86-64.s | |
parent | 700843ec2c4cb4aa442377809c6ebb3ae3030c61 (diff) | |
download | external_llvm-f564a9389da68266f44314fe38ab399fd2211134.zip external_llvm-f564a9389da68266f44314fe38ab399fd2211134.tar.gz external_llvm-f564a9389da68266f44314fe38ab399fd2211134.tar.bz2 |
Fix suffix handling for parsing and printing of cvtsi2ss, cvtsi2sd, cvtss2si, cvttss2si, cvtsd2si, and cvttsd2si to match gas behavior.
cvtsi2* should parse with an 'l' or 'q' suffix or no suffix at all. No suffix should be treated the same as 'l' suffix. Printing should always print a suffix. Previously we didn't parse or print an 'l' suffix.
cvtt*2si/cvt*2si should parse with an 'l' or 'q' suffix or not suffix at all. No suffix should use the destination register size to choose encoding. Printing should not print a suffix.
Original 'l' suffix issue with cvtsi2* pointed out by Michael Kuperstein.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171668 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/X86/x86-64.s')
-rw-r--r-- | test/MC/X86/x86-64.s | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/test/MC/X86/x86-64.s b/test/MC/X86/x86-64.s index 03cb62e..c5f1d15 100644 --- a/test/MC/X86/x86-64.s +++ b/test/MC/X86/x86-64.s @@ -507,15 +507,15 @@ fsave 32493 // rdar://8456382 - cvtsd2si support. cvtsd2si %xmm1, %rax -// CHECK: cvtsd2siq %xmm1, %rax +// CHECK: cvtsd2si %xmm1, %rax // CHECK: encoding: [0xf2,0x48,0x0f,0x2d,0xc1] cvtsd2si %xmm1, %eax -// CHECK: cvtsd2sil %xmm1, %eax +// CHECK: cvtsd2si %xmm1, %eax // CHECK: encoding: [0xf2,0x0f,0x2d,0xc1] -cvtsd2siq %xmm0, %rax // CHECK: cvtsd2siq %xmm0, %rax -cvtsd2sil %xmm0, %eax // CHECK: cvtsd2sil %xmm0, %eax -cvtsd2si %xmm0, %rax // CHECK: cvtsd2siq %xmm0, %rax +cvtsd2siq %xmm0, %rax // CHECK: cvtsd2si %xmm0, %rax +cvtsd2sil %xmm0, %eax // CHECK: cvtsd2si %xmm0, %eax +cvtsd2si %xmm0, %rax // CHECK: cvtsd2si %xmm0, %rax cvttpd2dq %xmm1, %xmm0 // CHECK: cvttpd2dq %xmm1, %xmm0 |