summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/WebAssembly/call-pic.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/WebAssembly/call-pic.ll')
-rw-r--r--llvm/test/CodeGen/WebAssembly/call-pic.ll15
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{{$}}
OpenPOWER on IntegriCloud