diff options
author | Dan Gohman <dan433584@gmail.com> | 2019-01-14 18:28:10 +0000 |
---|---|---|
committer | Dan Gohman <dan433584@gmail.com> | 2019-01-14 18:28:10 +0000 |
commit | 5a6ef118f66512bd7b137f5a9cf7409627477642 (patch) | |
tree | 4d6aa9ba2ea86a735285893cf0eae7802fe859a5 | |
parent | c6a5263b387d46d6fe58dade2d3325de951b094a (diff) |
[WebAssembly] Remove old builtins
This removes the old grow_memory and mem.grow-style builtins, leaving just
the memory.grow-style builtins.
Differential Revision: https://reviews.llvm.org/D56645
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@351089 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/clang/Basic/BuiltinsWebAssembly.def | 8 | ||||
-rw-r--r-- | lib/CodeGen/CGBuiltin.cpp | 25 | ||||
-rw-r--r-- | test/CodeGen/builtins-wasm.c | 24 |
3 files changed, 0 insertions, 57 deletions
diff --git a/include/clang/Basic/BuiltinsWebAssembly.def b/include/clang/Basic/BuiltinsWebAssembly.def index 7b201dbf0e..55931edc5c 100644 --- a/include/clang/Basic/BuiltinsWebAssembly.def +++ b/include/clang/Basic/BuiltinsWebAssembly.def @@ -26,14 +26,6 @@ BUILTIN(__builtin_wasm_memory_size, "zIi", "n") BUILTIN(__builtin_wasm_memory_grow, "zIiz", "n") -// These are the old names. -BUILTIN(__builtin_wasm_mem_size, "zIi", "n") -BUILTIN(__builtin_wasm_mem_grow, "zIiz", "n") - -// These are the old old names. They also lack the immediate field. -BUILTIN(__builtin_wasm_current_memory, "z", "n") -BUILTIN(__builtin_wasm_grow_memory, "zz", "n") - // Floating point min/max BUILTIN(__builtin_wasm_min_f32, "fff", "nc") BUILTIN(__builtin_wasm_max_f32, "fff", "nc") diff --git a/lib/CodeGen/CGBuiltin.cpp b/lib/CodeGen/CGBuiltin.cpp index b1799c0491..4c17602314 100644 --- a/lib/CodeGen/CGBuiltin.cpp +++ b/lib/CodeGen/CGBuiltin.cpp @@ -13087,31 +13087,6 @@ Value *CodeGenFunction::EmitWebAssemblyBuiltinExpr(unsigned BuiltinID, Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_memory_grow, ResultType); return Builder.CreateCall(Callee, Args); } - case WebAssembly::BI__builtin_wasm_mem_size: { - llvm::Type *ResultType = ConvertType(E->getType()); - Value *I = EmitScalarExpr(E->getArg(0)); - Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_mem_size, ResultType); - return Builder.CreateCall(Callee, I); - } - case WebAssembly::BI__builtin_wasm_mem_grow: { - llvm::Type *ResultType = ConvertType(E->getType()); - Value *Args[] = { - EmitScalarExpr(E->getArg(0)), - EmitScalarExpr(E->getArg(1)) - }; - Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_mem_grow, ResultType); - return Builder.CreateCall(Callee, Args); - } - case WebAssembly::BI__builtin_wasm_current_memory: { - llvm::Type *ResultType = ConvertType(E->getType()); - Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_current_memory, ResultType); - return Builder.CreateCall(Callee); - } - case WebAssembly::BI__builtin_wasm_grow_memory: { - Value *X = EmitScalarExpr(E->getArg(0)); - Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_grow_memory, X->getType()); - return Builder.CreateCall(Callee, X); - } case WebAssembly::BI__builtin_wasm_throw: { Value *Tag = EmitScalarExpr(E->getArg(0)); Value *Obj = EmitScalarExpr(E->getArg(1)); diff --git a/test/CodeGen/builtins-wasm.c b/test/CodeGen/builtins-wasm.c index 3c2288b252..4f14e901ed 100644 --- a/test/CodeGen/builtins-wasm.c +++ b/test/CodeGen/builtins-wasm.c @@ -26,30 +26,6 @@ __SIZE_TYPE__ memory_grow(__SIZE_TYPE__ delta) { // WEBASSEMBLY64: call i64 @llvm.wasm.memory.grow.i64(i32 0, i64 %{{.*}}) } -__SIZE_TYPE__ mem_size(void) { - return __builtin_wasm_mem_size(0); - // WEBASSEMBLY32: call {{i.*}} @llvm.wasm.mem.size.i32(i32 0) - // WEBASSEMBLY64: call {{i.*}} @llvm.wasm.mem.size.i64(i32 0) -} - -__SIZE_TYPE__ mem_grow(__SIZE_TYPE__ delta) { - return __builtin_wasm_mem_grow(0, delta); - // WEBASSEMBLY32: call i32 @llvm.wasm.mem.grow.i32(i32 0, i32 %{{.*}}) - // WEBASSEMBLY64: call i64 @llvm.wasm.mem.grow.i64(i32 0, i64 %{{.*}}) -} - -__SIZE_TYPE__ current_memory(void) { - return __builtin_wasm_current_memory(); - // WEBASSEMBLY32: call {{i.*}} @llvm.wasm.current.memory.i32() - // WEBASSEMBLY64: call {{i.*}} @llvm.wasm.current.memory.i64() -} - -__SIZE_TYPE__ grow_memory(__SIZE_TYPE__ delta) { - return __builtin_wasm_grow_memory(delta); - // WEBASSEMBLY32: call i32 @llvm.wasm.grow.memory.i32(i32 %{{.*}}) - // WEBASSEMBLY64: call i64 @llvm.wasm.grow.memory.i64(i64 %{{.*}}) -} - void throw(unsigned int tag, void *obj) { return __builtin_wasm_throw(tag, obj); // WEBASSEMBLY32: call void @llvm.wasm.throw(i32 %{{.*}}, i8* %{{.*}}) |