BUILTIN(__builtin_wasm_page_size, "z", "nc")
BUILTIN(__builtin_wasm_memory_size, "z", "nc")
+BUILTIN(__builtin_wasm_resize_memory, "vz", "n")
#undef BUILTIN
Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_memory_size, ResultType);
return Builder.CreateCall(Callee);
}
+ case WebAssembly::BI__builtin_wasm_resize_memory: {
+ Value *X = EmitScalarExpr(E->getArg(0));
+ Value *Callee = CGM.getIntrinsic(Intrinsic::wasm_resize_memory, X->getType());
+ return Builder.CreateCall(Callee, X);
+ }
default:
return nullptr;
// WEBASSEMBLY32: call {{i.*}} @llvm.wasm.memory.size.i32()
// WEBASSEMBLY64: call {{i.*}} @llvm.wasm.memory.size.i64()
}
+
+void f2(long delta) {
+ __builtin_wasm_resize_memory(delta);
+// WEBASSEMBLY32: call void @llvm.wasm.resize.memory.i32(i32 %{{.*}})
+// WEBASSEMBLY64: call void @llvm.wasm.resize.memory.i64(i64 %{{.*}})
+}