1; RUN: llc -mtriple=hexagon < %s | FileCheck %s
2
3; Test that %c works with immediates
4; CHECK-LABEL: test_inlineasm_c_output_template0
5; CHECK: //TEST 42
6define dso_local i32 @test_inlineasm_c_output_template0() {
7  tail call void asm sideeffect "//TEST ${0:c}", "i"(i32 42)
8  ret i32 42
9}
10
11; Test that %c works with global address
12; CHECK-LABEL: test_inlineasm_c_output_template1:
13; CHECK: TEST {{_?}}baz
14@baz = internal global i32 0, align 4
15define dso_local i32 @test_inlineasm_c_output_template1() {
16  tail call void asm sideeffect "//TEST ${0:c}", "i"(i32* nonnull @baz)
17  ret i32 43
18}
19
20; Test that %n works with immediates
21; CHECK-LABEL: test_inlineasm_c_output_template2
22; CHECK: //TEST -42
23define dso_local i32 @test_inlineasm_c_output_template2() {
24  tail call void asm sideeffect "//TEST ${0:n}", "i"(i32 42)
25  ret i32 42
26}
27