diff options
author | Evan Cheng <evan.cheng@apple.com> | 2006-03-25 06:03:26 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2006-03-25 06:03:26 +0000 |
commit | ecac9cb9590d5f6f5db3d8ca3228924ff06a45b1 (patch) | |
tree | 3a15dcf398821877cee8cf2fbb26433869e11d6b | |
parent | cc4f047dca3ad9f83dbc1d657d0596a21213263e (diff) |
Added SSE cachebility ops
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27103 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/X86InstrSSE.td | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/Target/X86/X86InstrSSE.td b/lib/Target/X86/X86InstrSSE.td index fd97877118..bdd43fbc39 100644 --- a/lib/Target/X86/X86InstrSSE.td +++ b/lib/Target/X86/X86InstrSSE.td @@ -891,6 +891,36 @@ def PSUBDrm : PDI<0xFA, MRMSrcMem, (ops VR128:$dst, VR128:$src1, f128mem:$src2), // Miscellaneous Instructions //===----------------------------------------------------------------------===// +// Prefetching loads +def PREFETCHT0 : I<0x18, MRM1m, (ops i8mem:$src), + "prefetcht0 $src", []>, TB, + Requires<[HasSSE1]>; +def PREFETCHT1 : I<0x18, MRM2m, (ops i8mem:$src), + "prefetcht0 $src", []>, TB, + Requires<[HasSSE1]>; +def PREFETCHT2 : I<0x18, MRM3m, (ops i8mem:$src), + "prefetcht0 $src", []>, TB, + Requires<[HasSSE1]>; +def PREFETCHTNTA : I<0x18, MRM0m, (ops i8mem:$src), + "prefetcht0 $src", []>, TB, + Requires<[HasSSE1]>; + +// Non-temporal stores +def MOVNTQ : I<0xE7, MRMDestMem, (ops i64mem:$dst, VR64:$src), + "movntq {$src, $dst|$dst, $src}", []>, TB, + Requires<[HasSSE1]>; +def MOVNTPS : I<0x2B, MRMDestMem, (ops i128mem:$dst, VR128:$src), + "movntps {$src, $dst|$dst, $src}", []>, TB, + Requires<[HasSSE1]>; +def MASKMOVQ : I<0xF7, MRMDestMem, (ops i64mem:$dst, VR64:$src), + "maskmovq {$src, $dst|$dst, $src}", []>, TB, + Requires<[HasSSE1]>; + +// Store fence +def SFENCE : I<0xAE, MRM7m, (ops), + "sfence", []>, TB, Requires<[HasSSE1]>; + +// Load MXCSR register def LDMXCSR : I<0xAE, MRM2m, (ops i32mem:$src), "ldmxcsr {$src|$src}", []>, TB, Requires<[HasSSE1]>; |