1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00

Fix an mmx movd encoding.

llvm-svn: 104552
This commit is contained in:
Dan Gohman 2010-05-24 20:51:08 +00:00
parent a911679139
commit 824858ebb0
2 changed files with 36 additions and 4 deletions

View File

@ -130,7 +130,7 @@ let neverHasSideEffects = 1 in
def MMX_MOVD64from64rr : MMXRI<0x7E, MRMDestReg, def MMX_MOVD64from64rr : MMXRI<0x7E, MRMDestReg,
(outs GR64:$dst), (ins VR64:$src), (outs GR64:$dst), (ins VR64:$src),
"movd\t{$src, $dst|$dst, $src}", []>; "movd\t{$src, $dst|$dst, $src}", []>;
def MMX_MOVD64rrv164 : MMXI<0x6E, MRMSrcReg, (outs VR64:$dst), (ins GR64:$src), def MMX_MOVD64rrv164 : MMXRI<0x6E, MRMSrcReg, (outs VR64:$dst), (ins GR64:$src),
"movd\t{$src, $dst|$dst, $src}", "movd\t{$src, $dst|$dst, $src}",
[(set VR64:$dst, [(set VR64:$dst,
(v1i64 (scalar_to_vector GR64:$src)))]>; (v1i64 (scalar_to_vector GR64:$src)))]>;

View File

@ -71,3 +71,35 @@
// CHECK: crc32q 4(%rbx), %rax // CHECK: crc32q 4(%rbx), %rax
// CHECK: encoding: [0xf2,0x48,0x0f,0x38,0xf1,0x43,0x04] // CHECK: encoding: [0xf2,0x48,0x0f,0x38,0xf1,0x43,0x04]
crc32q 4(%rbx), %rax crc32q 4(%rbx), %rax
// CHECK: movd %r8, %mm1
// CHECK: encoding: [0x49,0x0f,0x6e,0xc8]
movd %r8, %mm1
// CHECK: movd %r8d, %mm1
// CHECK: encoding: [0x41,0x0f,0x6e,0xc8]
movd %r8d, %mm1
// CHECK: movd %rdx, %mm1
// CHECK: encoding: [0x48,0x0f,0x6e,0xca]
movd %rdx, %mm1
// CHECK: movd %edx, %mm1
// CHECK: encoding: [0x0f,0x6e,0xca]
movd %edx, %mm1
// CHECK: movd %mm1, %r8
// CHECK: encoding: [0x49,0x0f,0x7e,0xc8]
movd %mm1, %r8
// CHECK: movd %mm1, %r8d
// CHECK: encoding: [0x41,0x0f,0x7e,0xc8]
movd %mm1, %r8d
// CHECK: movd %mm1, %rdx
// CHECK: encoding: [0x48,0x0f,0x7e,0xca]
movd %mm1, %rdx
// CHECK: movd %mm1, %edx
// CHECK: encoding: [0x0f,0x7e,0xca]
movd %mm1, %edx