mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-26 22:26:16 +00:00
gcc lower SSE prefetch into generic prefetch intrinsic. Need to add support
later. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27591 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
135c6a9d83
commit
df3c33c57e
@ -139,9 +139,6 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
|
|||||||
|
|
||||||
// Cacheability support ops
|
// Cacheability support ops
|
||||||
let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
|
let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
|
||||||
def int_x86_sse_prefetch : GCCBuiltin<"__builtin_ia32_prefetch">,
|
|
||||||
Intrinsic<[llvm_void_ty, llvm_ptr_ty,
|
|
||||||
llvm_int_ty], [IntrWriteMem]>;
|
|
||||||
def int_x86_sse_movnt_ps : GCCBuiltin<"__builtin_ia32_movntps">,
|
def int_x86_sse_movnt_ps : GCCBuiltin<"__builtin_ia32_movntps">,
|
||||||
Intrinsic<[llvm_void_ty, llvm_ptr_ty,
|
Intrinsic<[llvm_void_ty, llvm_ptr_ty,
|
||||||
llvm_v4f32_ty], [IntrWriteMem]>;
|
llvm_v4f32_ty], [IntrWriteMem]>;
|
||||||
|
@ -1517,17 +1517,13 @@ def MASKMOVDQU : PDI<0xF7, RawFrm, (ops VR128:$src, VR128:$mask),
|
|||||||
|
|
||||||
// Prefetching loads
|
// Prefetching loads
|
||||||
def PREFETCHT0 : PSI<0x18, MRM1m, (ops i8mem:$src),
|
def PREFETCHT0 : PSI<0x18, MRM1m, (ops i8mem:$src),
|
||||||
"prefetcht0 $src",
|
"prefetcht0 $src", []>;
|
||||||
[(int_x86_sse_prefetch addr:$src, 1)]>;
|
|
||||||
def PREFETCHT1 : PSI<0x18, MRM2m, (ops i8mem:$src),
|
def PREFETCHT1 : PSI<0x18, MRM2m, (ops i8mem:$src),
|
||||||
"prefetcht1 $src",
|
"prefetcht1 $src", []>;
|
||||||
[(int_x86_sse_prefetch addr:$src, 2)]>;
|
|
||||||
def PREFETCHT2 : PSI<0x18, MRM3m, (ops i8mem:$src),
|
def PREFETCHT2 : PSI<0x18, MRM3m, (ops i8mem:$src),
|
||||||
"prefetcht2 $src",
|
"prefetcht2 $src", []>;
|
||||||
[(int_x86_sse_prefetch addr:$src, 3)]>;
|
|
||||||
def PREFETCHTNTA : PSI<0x18, MRM0m, (ops i8mem:$src),
|
def PREFETCHTNTA : PSI<0x18, MRM0m, (ops i8mem:$src),
|
||||||
"prefetchtnta $src",
|
"prefetchtnta $src", []>;
|
||||||
[(int_x86_sse_prefetch addr:$src, 0)]>;
|
|
||||||
|
|
||||||
// Non-temporal stores
|
// Non-temporal stores
|
||||||
def MOVNTPSmr : PSI<0x2B, MRMDestMem, (ops i128mem:$dst, VR128:$src),
|
def MOVNTPSmr : PSI<0x2B, MRMDestMem, (ops i128mem:$dst, VR128:$src),
|
||||||
|
Loading…
Reference in New Issue
Block a user