Home
last modified time | relevance | path

Searched refs:externref (Results 1 – 25 of 40) sorted by relevance

12

/llvm-project-15.0.7/llvm/test/CodeGen/WebAssembly/
H A Dexternref-tableget.ll7 define %externref @get_externref_from_table(i32 %i) {
14 %ref = load %externref, ptr addrspace(1) %p
15 ret %externref %ref
25 %ref = load %externref, ptr addrspace(1) %p
26 ret %externref %ref
39 %ref = load %externref, ptr addrspace(1) %p
40 ret %externref %ref
54 %ref = load %externref, ptr addrspace(1) %p
55 ret %externref %ref
71 %ref = load %externref, ptr addrspace(1) %p
[all …]
H A Dexternref-tableset.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
7 define void @set_externref_table(%externref %g, i32 %i) {
9 ; CHECK-NEXT: .functype set_externref_table (externref, i32) -> ()
17 store %externref %g, ptr addrspace(1) %p
21 define void @set_externref_table_const(%externref %g) {
29 store %externref %g, ptr addrspace(1) %p
44 store %externref %g, ptr addrspace(1) %p
59 store %externref %g, ptr addrspace(1) %p
77 store %externref %g, ptr addrspace(1) %p
92 store %externref %g, ptr addrspace(1) %p
[all …]
H A Dtable-fill.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
5 @externref_table = local_unnamed_addr addrspace(1) global [0 x %externref] undef
7 declare void @llvm.wasm.table.fill.externref(ptr addrspace(1), i32, %externref, i32) nounwind reado…
9 define void @table_fill(i32 %start, i32 %len, %externref %val) {
11 ; CHECK-NEXT: .functype table_fill (i32, i32, externref) -> ()
17 %tableptr = getelementptr [0 x %externref], ptr addrspace(1) @externref_table, i32 0, i32 0
18 …call void @llvm.wasm.table.fill.externref(ptr addrspace(1) %tableptr, i32 %start, %externref %val,…
H A Dtable-grow.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
5 @externref_table = local_unnamed_addr addrspace(1) global [0 x %externref] undef
7 declare i32 @llvm.wasm.table.grow.externref(ptr addrspace(1), %externref, i32) nounwind readonly
8 declare %externref @llvm.wasm.ref.null.extern() nounwind readonly
17 %null = call %externref @llvm.wasm.ref.null.extern()
18 %tableptr = getelementptr [0 x %externref], ptr addrspace(1) @externref_table, i32 0, i32 0
19 …%newsz = call i32 @llvm.wasm.table.grow.externref(ptr addrspace(1) %tableptr, %externref %null, i3…
H A Dref-null.ll4 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
7 declare %externref @llvm.wasm.ref.null.extern() nounwind
9 declare i32 @llvm.wasm.ref.is_null.extern(%externref) nounwind
12 define %externref @get_null_extern() {
14 ; CHECK: .functype get_null_extern () -> (externref)
18 %null = call %externref @llvm.wasm.ref.null.extern()
19 ret %externref %null
32 define i32 @ref_is_null_extern(%externref %eref) {
34 ; CHECK: .functype ref_is_null_extern (externref) -> (i32)
42 %null = call %externref @llvm.wasm.ref.null.extern()
[all …]
H A Dexternref-inttoptr.ll3 %externref = type ptr addrspace(10)
5 define %externref @int_to_externref(i32 %i) {
6 %ref = inttoptr i32 %i to %externref
7 ret %externref %ref
12 ; CHECK-NEXT: .functype int_to_externref (i32) -> (externref)
13 ; CHECK-NEXT: .local externref
H A Dexternref-globalget.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
5 @externref_global = local_unnamed_addr addrspace(1) global %externref undef
7 define %externref @return_externref_global() {
9 %ref = load %externref, ptr addrspace(1) @externref_global
10 ret %externref %ref
14 ; CHECK-NEXT: functype return_externref_global () -> (externref)
H A Dexternref-globalset.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
5 @externref_global = local_unnamed_addr addrspace(1) global %externref undef
7 define void @set_externref_global(%externref %g) {
8 ;; this generates a global.set of @externref.global
9 store %externref %g, ptr addrspace(1) @externref_global
14 ; CHECK-NEXT: functype set_externref_global (externref) -> ()
H A Dtable-types.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
6 ; CHECK: .tabletype eref_table, externref
9 @eref_table = local_unnamed_addr addrspace(1) global [0 x %externref] undef
12 ; CHECK: .tabletype .Lprivate_eref_table, externref
14 @private_eref_table = private local_unnamed_addr addrspace(1) global [0 x %externref] undef
16 ; CHECK: .tabletype extern_eref_table, externref
19 @extern_eref_table = external addrspace(1) global [0 x %externref]
H A Dexternref-ptrtoint.ll3 %externref = type ptr addrspace(10)
5 define i32 @externref_to_int(%externref %ref) {
6 %i = ptrtoint %externref %ref to i32
11 ; CHECK-NEXT: .functype externref_to_int (externref) -> (i32)
H A Dtable-copy.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
5 @externref_table1 = local_unnamed_addr addrspace(1) global [0 x %externref] undef
6 @externref_table2 = local_unnamed_addr addrspace(1) global [0 x %externref] undef
18 %tableptr1 = getelementptr [0 x %externref], ptr addrspace(1) @externref_table1, i32 0, i32 0
19 %tableptr2 = getelementptr [0 x %externref], ptr addrspace(1) @externref_table2, i32 0, i32 0
37 %tableptr1 = getelementptr [0 x %externref], ptr addrspace(1) @externref_table1, i32 0, i32 0
H A Dexternref-unsized-load.ll3 %externref = type ptr addrspace(10)
5 define void @load_extern(%externref %ref) {
6 %e = load %extern, %externref %ref
H A Dexternref-unsized-store.ll3 %externref = type ptr addrspace(10)
5 define void @store_extern(%externref %ref) {
6 store %extern undef, %externref %ref
H A Dreg-copy.mir74 ; CHECK-NEXT: %0:externref = COPY_EXTERNREF %1:externref
77 %0:externref = COPY %1:externref
H A Dtable-size.ll3 %externref = type ptr addrspace(10) ;; addrspace 10 is nonintegral
5 @externref_table = local_unnamed_addr addrspace(1) global [0 x %externref] undef
14 %tableptr = getelementptr [0 x %externref], ptr addrspace(1) @externref_table, i32 0, i32 0
H A Dreg-argument.mir65 ; CHECK-NEXT: %1:externref = ARGUMENT_externref 0
68 %1:externref = ARGUMENT_externref 0, implicit $arguments
/llvm-project-15.0.7/llvm/test/MC/WebAssembly/
H A Dreference-types.s33 # CHECK-NEXT: .functype ref_sig_test_externref (externref) -> (externref)
35 .functype ref_sig_test_externref (externref) -> (externref)
41 # CHECK: externref.select # encoding: [0x1b]
52 externref.select
58 # CHECK: block externref
60 .functype ref_block_test () -> (externref, funcref)
62 block externref
H A Dexternref.s3 # Tests use of externref type, including storing it in a global
5 .globaltype my_global, externref
9 .functype read_externref () -> (externref)
15 .functype write_externref (externref) -> ()
H A Dtypechecking-else.s5 .tabletype objects,externref
11 .functype handle_value (i32) -> (externref)
15 if externref
H A Dtables.s7 # CHECK: .tabletype foo, externref
9 .tabletype foo, externref
47 # CHECK-NEXT: .functype table_get (i32) -> (externref)
54 .functype table_get (i32) -> (externref)
62 # CHECK-NEXT: .functype table_set (i32, externref) -> ()
70 .functype table_set (i32, externref) -> ()
H A Dtype-checker-errors.s106 .tabletype valid_table, externref
135 # CHECK: :[[@LINE+1]]:3: error: empty stack while popping externref
140 .functype table_set_empty_stack_while_popping_2 (externref) -> ()
149 # CHECK: :[[@LINE+1]]:3: error: popped funcref, expected externref
182 # CHECK: :[[@LINE+1]]:3: error: empty stack while popping externref
187 .functype table_fill_empty_stack_while_popping_3 (i32, externref) -> ()
205 # CHECK: [[@LINE+1]]:3: error: popped funcref, expected externref
/llvm-project-15.0.7/lld/test/wasm/
H A Dexternref.s5 # Tests use of externref type, including storing it in a global
7 .globaltype my_global, externref
11 .functype read_externref () -> (externref)
17 .functype write_externref (externref) -> ()
H A Dduplicate-table-imports.s16 # Imported as an externref instead of funcref, so should not be de-duped.
17 .tabletype t3, externref
/llvm-project-15.0.7/llvm/lib/Target/WebAssembly/
H A DWebAssemblyRegisterInfo.td47 def EXTERNREF_0 : WebAssemblyReg<"%externref.0">;
69 def EXTERNREF : WebAssemblyRegClass<[externref], 0, (add EXTERNREF_0)>;
/llvm-project-15.0.7/llvm/lib/Target/WebAssembly/Utils/
H A DWebAssemblyTypeUtilities.cpp71 .Case("externref", MVT::externref) in parseMVT()
144 case MVT::externref: in toValType()

12