target triple = "wasm32-unknown-unknown" | |
@indirect_bar = internal local_unnamed_addr global i64 ()* @bar, align 4 | |
@indirect_foo = internal local_unnamed_addr global i32 ()* @foo, align 4 | |
declare i32 @foo() local_unnamed_addr | |
define i64 @bar() { | |
entry: | |
ret i64 1 | |
} | |
define void @call_bar_indirect() local_unnamed_addr #1 { | |
entry: | |
%0 = load i64 ()*, i64 ()** @indirect_bar, align 4 | |
%1 = load i32 ()*, i32 ()** @indirect_foo, align 4 | |
%call0 = tail call i64 %0() #2 | |
%call1 = tail call i32 %1() #2 | |
ret void | |
} |