Home
last modified time | relevance | path

Searched refs:funcref (Results 1 – 25 of 33) sorted by relevance

12

/llvm-project-15.0.7/llvm/test/CodeGen/WebAssembly/
H A Dfuncref-tableget.ll7 define %funcref @get_funcref_from_table(i32 %i) {
14 %ref = load %funcref, ptr addrspace(1) %p
15 ret %funcref %ref
25 %ref = load %funcref, ptr addrspace(1) %p
26 ret %funcref %ref
39 %ref = load %funcref, ptr addrspace(1) %p
40 ret %funcref %ref
54 %ref = load %funcref, ptr addrspace(1) %p
55 ret %funcref %ref
71 %ref = load %funcref, ptr addrspace(1) %p
[all …]
H A Dfuncref-tableset.ll3 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
7 define void @set_funcref_table(%funcref %g, i32 %i) {
9 ; CHECK-NEXT: .functype set_funcref_table (funcref, i32) -> ()
17 store %funcref %g, ptr addrspace(1) %p
21 define void @set_funcref_table_const(%funcref %g) {
29 store %funcref %g, ptr addrspace(1) %p
33 define void @set_funcref_table_with_offset(%funcref %g, i32 %i) {
44 store %funcref %g, ptr addrspace(1) %p
59 store %funcref %g, ptr addrspace(1) %p
77 store %funcref %g, ptr addrspace(1) %p
[all …]
H A Dref-null.ll5 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
8 declare %funcref @llvm.wasm.ref.null.func() nounwind
10 declare i32 @llvm.wasm.ref.is_null.func(%funcref) nounwind
22 define %funcref @get_null_func() {
24 ; CHECK: .functype get_null_func () -> (funcref)
28 %null = call %funcref @llvm.wasm.ref.null.func()
29 ret %funcref %null
49 define i32 @ref_is_null_func(%funcref %fref) {
51 ; CHECK: .functype ref_is_null_func (funcref) -> (i32)
59 %null = call %funcref @llvm.wasm.ref.null.func()
[all …]
H A Dfuncref-globalget.ll3 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
5 @funcref_global = local_unnamed_addr addrspace(1) global %funcref undef
7 define %funcref @return_funcref_global() {
9 %ref = load %funcref, ptr addrspace(1) @funcref_global
10 ret %funcref %ref
14 ; CHECK-NEXT: .functype return_funcref_global () -> (funcref)
H A Dtable-types.ll4 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
21 ; CHECK: .tabletype fref_table, funcref
24 @fref_table = local_unnamed_addr addrspace(1) global [0 x %funcref] undef
27 ; CHECK: .tabletype .Lprivate_fref_table, funcref
29 @private_fref_table = private local_unnamed_addr addrspace(1) global [0 x %funcref] undef
31 ; CHECK: .tabletype extern_fref_table, funcref
34 @extern_fref_table = external addrspace(1) global [0 x %funcref]
H A Dfuncref-table_call.ll3 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
5 @funcref_table = local_unnamed_addr addrspace(1) global [0 x %funcref] undef
7 ; CHECK: .tabletype __funcref_call_table, funcref, 1
22 %p = getelementptr [0 x %funcref], ptr addrspace (1) @funcref_table, i32 0, i32 %i
23 %ref = load %funcref, ptr addrspace(1) %p
28 ; CHECK: .tabletype funcref_table, funcref
H A Dfuncref-globalset.ll3 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
5 @funcref_global = local_unnamed_addr addrspace(1) global %funcref undef
7 define void @set_funcref_global(%funcref %g) {
9 store %funcref %g, ptr addrspace(1) @funcref_global
14 ; CHECK-NEXT: functype set_funcref_global (funcref) -> ()
H A Dfuncref-call.ll3 %funcref = type ptr addrspace(20) ;; addrspace 20 is nonintegral
5 ; CHECK: .tabletype __funcref_call_table, funcref, 1
7 define void @call_funcref(%funcref %ref) {
9 ; CHECK-NEXT: .functype call_funcref (funcref) -> ()
H A Dreg-copy.mir63 ; CHECK-NEXT: %0:funcref = COPY_FUNCREF %1:funcref
66 %0:funcref = COPY %1:funcref
H A Dreg-argument.mir54 ; CHECK-NEXT: %1:funcref = ARGUMENT_funcref 0
57 %1:funcref = ARGUMENT_funcref 0, implicit $arguments
/llvm-project-15.0.7/llvm/test/MC/WebAssembly/
H A Dreference-types.s26 # CHECK-NEXT: .functype ref_sig_test_funcref (funcref) -> (funcref)
28 .functype ref_sig_test_funcref (funcref) -> (funcref)
40 # CHECK: funcref.select # encoding: [0x1b]
47 funcref.select
57 # CHECK: block funcref
60 .functype ref_block_test () -> (externref, funcref)
61 block funcref
H A Dfuncref-from-table.s4 .tabletype __indirect_function_table, funcref
9 .functype obtain_funcref_from_table_index(i32) -> (funcref)
H A Dobjdump.s12 .local i32, i64, funcref
24 # CHECK-NEXT: .local i32, i64, funcref
H A Dtables.s14 # CHECK-NEXT: .tabletype bar, funcref
16 .tabletype bar, funcref
19 .tabletype table1, funcref, 42
21 .tabletype table2, funcref, 42, 100
H A Dcall-indirect-relocs.s12 .tabletype empty_fref_table, funcref
25 # CHECK: .tabletype empty_fref_table, funcref
H A Dtype-checker-errors.s149 # CHECK: :[[@LINE+1]]:3: error: popped funcref, expected externref
197 # CHECK: :[[@LINE+1]]:3: error: popped funcref, expected i32
205 # CHECK: [[@LINE+1]]:3: error: popped funcref, expected externref
505 # CHECK: :[[@LINE+1]]:3: error: popped funcref, expected i32
/llvm-project-15.0.7/lld/test/wasm/
H A Dduplicate-table-imports.s5 .tabletype t1, funcref
11 .tabletype t2, funcref
16 # Imported as an externref instead of funcref, so should not be de-duped.
H A Dmulti-table.s9 .tabletype table_a, funcref
13 .tabletype table_b, funcref
/llvm-project-15.0.7/llvm/lib/Target/WebAssembly/
H A DWebAssemblyInstrTable.td65 defm "" : TABLE<FUNCREF, "funcref">, Requires<[HasReferenceTypes]>;
68 def : Pat<(WebAssemblyTableSet mcsym:$table, i32:$idx, funcref:$r),
69 (TABLE_SET_FUNCREF mcsym:$table, i32:$idx, funcref:$r)>,
H A DWebAssemblyRegisterInfo.td46 def FUNCREF_0 : WebAssemblyReg<"%funcref.0">;
68 def FUNCREF : WebAssemblyRegClass<[funcref], 0, (add FUNCREF_0)>;
H A DWebAssemblyInstrRef.td38 defm "" : REF_I<FUNCREF, funcref, "func">;
H A DWebAssemblyFastISel.cpp135 case MVT::funcref: in getLegalType()
708 case MVT::funcref: in fastLowerArguments()
814 case MVT::funcref: in selectCall()
951 case MVT::funcref: in selectSelect()
1364 case MVT::funcref: in selectRet()
/llvm-project-15.0.7/llvm/lib/Target/WebAssembly/Utils/
H A DWebAssemblyTypeUtilities.cpp70 .Case("funcref", MVT::funcref) in parseMVT()
142 case MVT::funcref: in toValType()
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DValueTypes.td224 def funcref : ValueType<0, 181>; // WebAssembly's funcref type
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DValueTypes.cpp174 case MVT::funcref: return "funcref"; in getEVTString()
210 case MVT::funcref: in getTypeForEVT()

12