diff options
Diffstat (limited to 'llvm/test/CodeGen/WebAssembly/call-pic.ll')
| -rw-r--r-- | llvm/test/CodeGen/WebAssembly/call-pic.ll | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/WebAssembly/call-pic.ll b/llvm/test/CodeGen/WebAssembly/call-pic.ll index b50f96d6d72..b319ea4924f 100644 --- a/llvm/test/CodeGen/WebAssembly/call-pic.ll +++ b/llvm/test/CodeGen/WebAssembly/call-pic.ll @@ -8,6 +8,11 @@ declare i32 @bar() declare hidden i32 @hidden_function() @indirect_func = global i32 ()* @foo +@alias_func = hidden alias i32 (), i32 ()* @local_function + +define i32 @local_function() { + ret i32 1 +} define void @call_indirect_func() { ; CHECK-LABEL: call_indirect_func: @@ -31,6 +36,16 @@ define void @call_direct() { ret void } +define void @call_alias_func() { +; CHECK-LABEL: call_alias_func: +; CHECK: .functype call_alias_func () -> () +; CHECK-NEXT: i32.call $push0=, alias_func +; CHECK-NEXT: drop $pop0{{$}} +; CHECK-NEXT: return{{$}} + %call = call i32 @alias_func() + ret void +} + define i8* @get_function_address() { ; CHECK-LABEL: get_function_address: ; CHECK: global.get $push[[L0:[0-9]+]]=, bar@GOT{{$}} |

