1; RUN: llc < %s -asm-verbose=false | FileCheck %s
2
3; Test that basic functions assemble as expected.
4
5target datalayout = "e-p:32:32-i64:64-n32:64-S128"
6target triple = "wasm32-unknown-unknown"
7
8; CHECK-LABEL: f0:
9; CHECK: return{{$}}
10; CHECK: .size f0,
11define void @f0() {
12  ret void
13}
14
15; CHECK-LABEL: f1:
16; CHECK-NEXT: .result i32{{$}}
17; CHECK-NEXT: .local i32{{$}}
18; CHECK-NEXT: i32.const 0{{$}}
19; CHECK-NEXT: set_local 0, pop{{$}}
20; CHECK-NEXT: return (get_local 0){{$}}
21; CHECK: .size f1,
22define i32 @f1() {
23  ret i32 0
24}
25
26; CHECK-LABEL: f2:
27; CHECK-NEXT: .param i32{{$}}
28; CHECK-NEXT: .param f32{{$}}
29; CHECK-NEXT: .result i32{{$}}
30; CHECK-NEXT: .local i32{{$}}
31; CHECK-NEXT: i32.const 0{{$}}
32; CHECK-NEXT: set_local 2, pop{{$}}
33; CHECK-NEXT: return (get_local 2){{$}}
34; CHECK: .size f2,
35define i32 @f2(i32 %p1, float %p2) {
36  ret i32 0
37}
38
39; CHECK-LABEL: f3:
40; CHECK-NEXT: .param i32{{$}}
41; CHECK-NEXT: .param f32{{$}}
42; CHECK-NOT: .local
43; CHECK-NEXT: return{{$}}
44; CHECK: .size f3,
45define void @f3(i32 %p1, float %p2) {
46  ret void
47}
48