summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
index 4fd63e58c83..55c963b7b40 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
@@ -959,7 +959,13 @@ WebAssemblyTargetLowering::LowerINTRINSIC_WO_CHAIN(SDValue Op,
switch (IntNo) {
default:
return {}; // Don't custom lower most intrinsics.
-
+ case Intrinsic::wasm_anytrue:
+ case Intrinsic::wasm_alltrue: {
+ unsigned OpCode = IntNo == Intrinsic::wasm_anytrue
+ ? WebAssemblyISD::ANYTRUE
+ : WebAssemblyISD::ALLTRUE;
+ return DAG.getNode(OpCode, DL, Op.getValueType(), Op.getOperand(1));
+ }
case Intrinsic::wasm_lsda:
// TODO For now, just return 0 not to crash
return DAG.getConstant(0, DL, Op.getValueType());
OpenPOWER on IntegriCloud