mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-27 14:34:58 +00:00
Add support for movntil/movntiq mnemonics. Reported on llvmdev.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133759 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
00805fae5b
commit
a390a1aa48
@ -1991,11 +1991,11 @@ def : Pat<(alignednontemporalstore (v2i64 VR128:$src), addr:$dst),
|
||||
|
||||
// There is no AVX form for instructions below this point
|
||||
def MOVNTImr : I<0xC3, MRMDestMem, (outs), (ins i32mem:$dst, GR32:$src),
|
||||
"movnti\t{$src, $dst|$dst, $src}",
|
||||
"movnti{l}\t{$src, $dst|$dst, $src}",
|
||||
[(nontemporalstore (i32 GR32:$src), addr:$dst)]>,
|
||||
TB, Requires<[HasSSE2]>;
|
||||
def MOVNTI_64mr : RI<0xC3, MRMDestMem, (outs), (ins i64mem:$dst, GR64:$src),
|
||||
"movnti\t{$src, $dst|$dst, $src}",
|
||||
"movnti{q}\t{$src, $dst|$dst, $src}",
|
||||
[(nontemporalstore (i64 GR64:$src), addr:$dst)]>,
|
||||
TB, Requires<[HasSSE2]>;
|
||||
}
|
||||
|
@ -503,7 +503,7 @@
|
||||
// CHECK: ud2
|
||||
ud2
|
||||
|
||||
// CHECK: movnti %ecx, 3735928559(%ebx,%ecx,8)
|
||||
// CHECK: movntil %ecx, 3735928559(%ebx,%ecx,8)
|
||||
movnti %ecx,0xdeadbeef(%ebx,%ecx,8)
|
||||
|
||||
// CHECK: clflush 3735928559(%ebx,%ecx,8)
|
||||
@ -4505,23 +4505,23 @@
|
||||
// CHECK: encoding: [0xdf,0xea]
|
||||
fucomip %st(2),%st
|
||||
|
||||
// CHECK: movnti %ecx, 3735928559(%ebx,%ecx,8)
|
||||
// CHECK: movntil %ecx, 3735928559(%ebx,%ecx,8)
|
||||
// CHECK: encoding: [0x0f,0xc3,0x8c,0xcb,0xef,0xbe,0xad,0xde]
|
||||
movnti %ecx,0xdeadbeef(%ebx,%ecx,8)
|
||||
|
||||
// CHECK: movnti %ecx, 69
|
||||
// CHECK: movntil %ecx, 69
|
||||
// CHECK: encoding: [0x0f,0xc3,0x0d,0x45,0x00,0x00,0x00]
|
||||
movnti %ecx,0x45
|
||||
|
||||
// CHECK: movnti %ecx, 32493
|
||||
// CHECK: movntil %ecx, 32493
|
||||
// CHECK: encoding: [0x0f,0xc3,0x0d,0xed,0x7e,0x00,0x00]
|
||||
movnti %ecx,0x7eed
|
||||
|
||||
// CHECK: movnti %ecx, 3133065982
|
||||
// CHECK: movntil %ecx, 3133065982
|
||||
// CHECK: encoding: [0x0f,0xc3,0x0d,0xfe,0xca,0xbe,0xba]
|
||||
movnti %ecx,0xbabecafe
|
||||
|
||||
// CHECK: movnti %ecx, 305419896
|
||||
// CHECK: movntil %ecx, 305419896
|
||||
// CHECK: encoding: [0x0f,0xc3,0x0d,0x78,0x56,0x34,0x12]
|
||||
movnti %ecx,0x12345678
|
||||
|
||||
@ -14177,19 +14177,19 @@
|
||||
// CHECK: fucompi %st(2)
|
||||
fucomip %st(2),%st
|
||||
|
||||
// CHECK: movnti %ecx, 3735928559(%ebx,%ecx,8)
|
||||
// CHECK: movntil %ecx, 3735928559(%ebx,%ecx,8)
|
||||
movnti %ecx,0xdeadbeef(%ebx,%ecx,8)
|
||||
|
||||
// CHECK: movnti %ecx, 69
|
||||
movnti %ecx,0x45
|
||||
// CHECK: movntil %ecx, 69
|
||||
movntil %ecx,0x45
|
||||
|
||||
// CHECK: movnti %ecx, 32493
|
||||
// CHECK: movntil %ecx, 32493
|
||||
movnti %ecx,0x7eed
|
||||
|
||||
// CHECK: movnti %ecx, 3133065982
|
||||
// CHECK: movntil %ecx, 3133065982
|
||||
movnti %ecx,0xbabecafe
|
||||
|
||||
// CHECK: movnti %ecx, 305419896
|
||||
// CHECK: movntil %ecx, 305419896
|
||||
movnti %ecx,0x12345678
|
||||
|
||||
// CHECK: clflush 3735928559(%ebx,%ecx,8)
|
||||
|
@ -1136,3 +1136,15 @@ xsetbv // CHECK: xsetbv # encoding: [0x0f,0x01,0xd1]
|
||||
// CHECK: movd %rdi, %xmm0
|
||||
// CHECK: encoding: [0x66,0x48,0x0f,0x6e,0xc7]
|
||||
movd %rdi,%xmm0
|
||||
|
||||
// CHECK: movntil %eax, (%rdi)
|
||||
// CHECK: encoding: [0x0f,0xc3,0x07]
|
||||
// CHECK: movntil
|
||||
movntil %eax, (%rdi)
|
||||
movnti %eax, (%rdi)
|
||||
|
||||
// CHECK: movntiq %rax, (%rdi)
|
||||
// CHECK: encoding: [0x48,0x0f,0xc3,0x07]
|
||||
// CHECK: movntiq
|
||||
movntiq %rax, (%rdi)
|
||||
movnti %rax, (%rdi)
|
||||
|
Loading…
x
Reference in New Issue
Block a user