1; RUN: llc < %s -asm-verbose=false | FileCheck %s 2 3; Test basic inline assembly. 4 5target datalayout = "e-p:32:32-i64:64-n32:64-S128" 6target triple = "wasm32-unknown-unknown" 7 8; CHECK-LABEL: foo: 9; CHECK-NEXT: .param i32{{$}} 10; CHECK-NEXT: .result i32{{$}} 11; CHECK-NEXT: #APP{{$}} 12; CHECK-NEXT: # $0 = aaa($0){{$}} 13; CHECK-NEXT: #NO_APP{{$}} 14; CHECK-NEXT: return $0{{$}} 15define i32 @foo(i32 %r) { 16entry: 17 %0 = tail call i32 asm sideeffect "# $0 = aaa($1)", "=r,r"(i32 %r) #0, !srcloc !0 18 ret i32 %0 19} 20 21; CHECK-LABEL: bar: 22; CHECK-NEXT: .param i32, i32{{$}} 23; CHECK-NEXT: #APP{{$}} 24; CHECK-NEXT: # $1 = bbb($0){{$}} 25; CHECK-NEXT: #NO_APP{{$}} 26; CHECK-NEXT: return{{$}} 27define void @bar(i32* %r, i32* %s) { 28entry: 29 tail call void asm sideeffect "# $0 = bbb($1)", "=*m,*m"(i32* %s, i32* %r) #0, !srcloc !1 30 ret void 31} 32 33; CHECK-LABEL: imm: 34; CHECK-NEXT: .result i32{{$}} 35; CHECK-NEXT: .local i32{{$}} 36; CHECK-NEXT: #APP{{$}} 37; CHECK-NEXT: # $0 = ccc(42){{$}} 38; CHECK-NEXT: #NO_APP{{$}} 39; CHECK-NEXT: return $0{{$}} 40define i32 @imm() { 41entry: 42 %0 = tail call i32 asm sideeffect "# $0 = ccc($1)", "=r,i"(i32 42) #0, !srcloc !2 43 ret i32 %0 44} 45 46attributes #0 = { nounwind } 47 48!0 = !{i32 47} 49!1 = !{i32 145} 50!2 = !{i32 231} 51