[LLVM][IR] Use splat syntax when printing ConstantExpr based splats. (#116856)
[llvm-project.git] / clang / test / CodeGen / X86 / inline-asm-gcc-regs.c
blob17adbdc20a406c508bc58f30ce3f195020aa5cfd
1 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm -O2 %s -o - | FileCheck %s
3 // CHECK-LABEL: @test_r15
4 // CHECK: call void asm sideeffect "", "{r15},~{dirflag},~{fpsr},~{flags}"(i32 undef)
5 void test_r15() {
6 register int a asm ("r15");
7 asm ("" :: "r" (a));
10 // CHECK-LABEL: @test_r16
11 // CHECK: call void asm sideeffect "", "{r16},~{dirflag},~{fpsr},~{flags}"(i32 undef)
12 void test_r16() {
13 register int a asm ("r16");
14 asm ("" :: "r" (a));
17 // CHECK-LABEL: @test_r17
18 // CHECK: call void asm sideeffect "", "{r17},~{dirflag},~{fpsr},~{flags}"(i32 undef)
19 void test_r17() {
20 register int a asm ("r17");
21 asm ("" :: "r" (a));
24 // CHECK-LABEL: @test_r18
25 // CHECK: call void asm sideeffect "", "{r18},~{dirflag},~{fpsr},~{flags}"(i32 undef)
26 void test_r18() {
27 register int a asm ("r18");
28 asm ("" :: "r" (a));
31 // CHECK-LABEL: @test_r19
32 // CHECK: call void asm sideeffect "", "{r19},~{dirflag},~{fpsr},~{flags}"(i32 undef)
33 void test_r19() {
34 register int a asm ("r19");
35 asm ("" :: "r" (a));
38 // CHECK-LABEL: @test_r20
39 // CHECK: call void asm sideeffect "", "{r20},~{dirflag},~{fpsr},~{flags}"(i32 undef)
40 void test_r20() {
41 register int a asm ("r20");
42 asm ("" :: "r" (a));
45 // CHECK-LABEL: @test_r21
46 // CHECK: call void asm sideeffect "", "{r21},~{dirflag},~{fpsr},~{flags}"(i32 undef)
47 void test_r21() {
48 register int a asm ("r21");
49 asm ("" :: "r" (a));
52 // CHECK-LABEL: @test_r22
53 // CHECK: call void asm sideeffect "", "{r22},~{dirflag},~{fpsr},~{flags}"(i32 undef)
54 void test_r22() {
55 register int a asm ("r22");
56 asm ("" :: "r" (a));
59 // CHECK-LABEL: @test_r23
60 // CHECK: call void asm sideeffect "", "{r23},~{dirflag},~{fpsr},~{flags}"(i32 undef)
61 void test_r23() {
62 register int a asm ("r23");
63 asm ("" :: "r" (a));
66 // CHECK-LABEL: @test_r24
67 // CHECK: call void asm sideeffect "", "{r24},~{dirflag},~{fpsr},~{flags}"(i32 undef)
68 void test_r24() {
69 register int a asm ("r24");
70 asm ("" :: "r" (a));
73 // CHECK-LABEL: @test_r25
74 // CHECK: call void asm sideeffect "", "{r25},~{dirflag},~{fpsr},~{flags}"(i32 undef)
75 void test_r25() {
76 register int a asm ("r25");
77 asm ("" :: "r" (a));
80 // CHECK-LABEL: @test_r26
81 // CHECK: call void asm sideeffect "", "{r26},~{dirflag},~{fpsr},~{flags}"(i32 undef)
82 void test_r26() {
83 register int a asm ("r26");
84 asm ("" :: "r" (a));
87 // CHECK-LABEL: @test_r27
88 // CHECK: call void asm sideeffect "", "{r27},~{dirflag},~{fpsr},~{flags}"(i32 undef)
89 void test_r27() {
90 register int a asm ("r27");
91 asm ("" :: "r" (a));
94 // CHECK-LABEL: @test_r28
95 // CHECK: call void asm sideeffect "", "{r28},~{dirflag},~{fpsr},~{flags}"(i32 undef)
96 void test_r28() {
97 register int a asm ("r28");
98 asm ("" :: "r" (a));
101 // CHECK-LABEL: @test_r29
102 // CHECK: call void asm sideeffect "", "{r29},~{dirflag},~{fpsr},~{flags}"(i32 undef)
103 void test_r29() {
104 register int a asm ("r29");
105 asm ("" :: "r" (a));
108 // CHECK-LABEL: @test_r30
109 // CHECK: call void asm sideeffect "", "{r30},~{dirflag},~{fpsr},~{flags}"(i32 undef)
110 void test_r30() {
111 register int a asm ("r30");
112 asm ("" :: "r" (a));
115 // CHECK-LABEL: @test_r31
116 // CHECK: call void asm sideeffect "", "{r31},~{dirflag},~{fpsr},~{flags}"(i32 undef)
117 void test_r31() {
118 register int a asm ("r31");
119 asm ("" :: "r" (a));