diff options
author | Thomas Lively <tlively@google.com> | 2019-02-13 22:11:16 +0000 |
---|---|---|
committer | Thomas Lively <tlively@google.com> | 2019-02-13 22:11:16 +0000 |
commit | 5077597e0d5b86d9f9c27286d8b28f8b3645a74c (patch) | |
tree | 70aefdc5e3d27d97c573b6622144292ae3395a8d /include/llvm | |
parent | 2d7289e2fa5a69fab523607bfa3b3e2ef2abc072 (diff) | |
download | llvm-5077597e0d5b86d9f9c27286d8b28f8b3645a74c.tar.gz |
[WebAssembly] Bulk memory intrinsics and builtins
Summary:
implements llvm intrinsics and clang intrinsics for
memory.init and data.drop.
Reviewers: aheejin
Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D57736
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@353983 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r-- | include/llvm/IR/IntrinsicsWebAssembly.td | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/llvm/IR/IntrinsicsWebAssembly.td b/include/llvm/IR/IntrinsicsWebAssembly.td index 874465e4a02..bfeb7063ced 100644 --- a/include/llvm/IR/IntrinsicsWebAssembly.td +++ b/include/llvm/IR/IntrinsicsWebAssembly.td @@ -110,4 +110,18 @@ def int_wasm_alltrue : [llvm_anyvector_ty], [IntrNoMem, IntrSpeculatable]>; +//===----------------------------------------------------------------------===// +// Bulk memory intrinsics +//===----------------------------------------------------------------------===// + +def int_wasm_memory_init : + Intrinsic<[], + [llvm_i32_ty, llvm_i32_ty, llvm_ptr_ty, llvm_i32_ty, llvm_i32_ty], + [IntrWriteMem, IntrInaccessibleMemOrArgMemOnly, WriteOnly<2>, + IntrHasSideEffects]>; +def int_wasm_data_drop : + Intrinsic<[], + [llvm_i32_ty], + [IntrNoDuplicate, IntrHasSideEffects]>; + } // TargetPrefix = "wasm" |