summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2017-10-12 20:08:31 +0000
committerCraig Topper <craig.topper@intel.com>2017-10-12 20:08:31 +0000
commit060cb437215c1fbcfa3cd0c8d3643ec041336bce (patch)
tree60fce5a3701843c59168cac2b790306a761ff849 /llvm
parent3e8cc2bda689c0d94524e7a7dbc41b09cbf18acb (diff)
downloadbcm5719-llvm-060cb437215c1fbcfa3cd0c8d3643ec041336bce.tar.gz
bcm5719-llvm-060cb437215c1fbcfa3cd0c8d3643ec041336bce.zip
[X86] Add CLWB intrinsic. llvm part
llvm-svn: 315613
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/IR/IntrinsicsX86.td5
-rw-r--r--llvm/lib/Target/X86/X86InstrInfo.td4
2 files changed, 6 insertions, 3 deletions
diff --git a/llvm/include/llvm/IR/IntrinsicsX86.td b/llvm/include/llvm/IR/IntrinsicsX86.td
index eae8564fdf9..e31db99cede 100644
--- a/llvm/include/llvm/IR/IntrinsicsX86.td
+++ b/llvm/include/llvm/IR/IntrinsicsX86.td
@@ -3473,10 +3473,13 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
}
//===----------------------------------------------------------------------===//
-// CLFLUSHOPT
+// CLFLUSHOPT and CLWB
let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
def int_x86_clflushopt : GCCBuiltin<"__builtin_ia32_clflushopt">,
Intrinsic<[], [llvm_ptr_ty], []>;
+
+ def int_x86_clwb : GCCBuiltin<"__builtin_ia32_clwb">,
+ Intrinsic<[], [llvm_ptr_ty], []>;
}
//===----------------------------------------------------------------------===//
diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td
index 96eb5f4538f..d5e2caa8f28 100644
--- a/llvm/lib/Target/X86/X86InstrInfo.td
+++ b/llvm/lib/Target/X86/X86InstrInfo.td
@@ -2698,9 +2698,9 @@ let Predicates = [HasCLFLUSHOPT] in
def CLFLUSHOPT : I<0xAE, MRM7m, (outs), (ins i8mem:$src),
"clflushopt\t$src", [(int_x86_clflushopt addr:$src)]>, PD;
-// TODO: Add an instrincis for this.
let Predicates = [HasCLWB] in
-def CLWB : I<0xAE, MRM6m, (outs), (ins i8mem:$src), "clwb\t$src", []>, PD;
+def CLWB : I<0xAE, MRM6m, (outs), (ins i8mem:$src), "clwb\t$src",
+ [(int_x86_clwb addr:$src)]>, PD;
//===----------------------------------------------------------------------===//
OpenPOWER on IntegriCloud