mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[WebAssembly] Rename memory_size intrinsic to current_memory
This follows the recent renaming in the wasm spec. llvm-svn: 268255
This commit is contained in:
parent
b1d0774f3f
commit
f0cc027b2e
@ -14,9 +14,9 @@
|
||||
|
||||
let TargetPrefix = "wasm" in { // All intrinsics start with "llvm.wasm.".
|
||||
|
||||
// Note that memory_size is not IntrNoMem because it must be sequenced with
|
||||
// Note that current_memory is not IntrNoMem because it must be sequenced with
|
||||
// respect to grow_memory calls.
|
||||
def int_wasm_memory_size : Intrinsic<[llvm_anyint_ty], [], [IntrReadMem]>;
|
||||
def int_wasm_current_memory : Intrinsic<[llvm_anyint_ty], [], [IntrReadMem]>;
|
||||
def int_wasm_grow_memory : Intrinsic<[], [llvm_anyint_ty], []>;
|
||||
|
||||
}
|
||||
|
@ -670,15 +670,15 @@ def : Pat<(truncstorei32 I64:$val, (WebAssemblywrapper texternalsym:$off)),
|
||||
|
||||
let Defs = [ARGUMENTS] in {
|
||||
|
||||
// Memory size.
|
||||
def MEMORY_SIZE_I32 : I<(outs I32:$dst), (ins),
|
||||
[(set I32:$dst, (int_wasm_memory_size))],
|
||||
"memory_size\t$dst">,
|
||||
Requires<[HasAddr32]>;
|
||||
def MEMORY_SIZE_I64 : I<(outs I64:$dst), (ins),
|
||||
[(set I64:$dst, (int_wasm_memory_size))],
|
||||
"memory_size\t$dst">,
|
||||
Requires<[HasAddr64]>;
|
||||
// Current memory size.
|
||||
def CURRENT_MEMORY_I32 : I<(outs I32:$dst), (ins),
|
||||
[(set I32:$dst, (int_wasm_current_memory))],
|
||||
"current_memory\t$dst">,
|
||||
Requires<[HasAddr32]>;
|
||||
def CURRENT_MEMORY_I64 : I<(outs I64:$dst), (ins),
|
||||
[(set I64:$dst, (int_wasm_current_memory))],
|
||||
"current_memory\t$dst">,
|
||||
Requires<[HasAddr64]>;
|
||||
|
||||
// Grow memory.
|
||||
def GROW_MEMORY_I32 : I<(outs), (ins I32:$delta),
|
||||
|
@ -5,15 +5,15 @@
|
||||
target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
|
||||
target triple = "wasm32-unknown-unknown"
|
||||
|
||||
declare i32 @llvm.wasm.memory.size.i32() nounwind readonly
|
||||
declare i32 @llvm.wasm.current.memory.i32() nounwind readonly
|
||||
declare void @llvm.wasm.grow.memory.i32(i32) nounwind
|
||||
|
||||
; CHECK-LABEL: memory_size:
|
||||
; CHECK-LABEL: current_memory:
|
||||
; CHECK-NEXT: .result i32{{$}}
|
||||
; CHECK-NEXT: memory_size $push0={{$}}
|
||||
; CHECK-NEXT: current_memory $push0={{$}}
|
||||
; CHECK-NEXT: return $pop0{{$}}
|
||||
define i32 @memory_size() {
|
||||
%a = call i32 @llvm.wasm.memory.size.i32()
|
||||
define i32 @current_memory() {
|
||||
%a = call i32 @llvm.wasm.current.memory.i32()
|
||||
ret i32 %a
|
||||
}
|
||||
|
||||
|
@ -5,15 +5,15 @@
|
||||
target datalayout = "e-m:e-p:64:64-i64:64-n32:64-S128"
|
||||
target triple = "wasm64-unknown-unknown"
|
||||
|
||||
declare i64 @llvm.wasm.memory.size.i64() nounwind readonly
|
||||
declare i64 @llvm.wasm.current.memory.i64() nounwind readonly
|
||||
declare void @llvm.wasm.grow.memory.i64(i64) nounwind
|
||||
|
||||
; CHECK-LABEL: memory_size:
|
||||
; CHECK-LABEL: current_memory:
|
||||
; CHECK-NEXT: .result i64{{$}}
|
||||
; CHECK-NEXT: memory_size $push0={{$}}
|
||||
; CHECK-NEXT: current_memory $push0={{$}}
|
||||
; CHECK-NEXT: return $pop0{{$}}
|
||||
define i64 @memory_size() {
|
||||
%a = call i64 @llvm.wasm.memory.size.i64()
|
||||
define i64 @current_memory() {
|
||||
%a = call i64 @llvm.wasm.current.memory.i64()
|
||||
ret i64 %a
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user