// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm -O2 %s -o - | FileCheck %s
// CHECK-LABEL: @test_r15
// CHECK: call void asm sideeffect "", "{r15},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r15() {
register int a asm ("r15");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r16
// CHECK: call void asm sideeffect "", "{r16},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r16() {
register int a asm ("r16");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r17
// CHECK: call void asm sideeffect "", "{r17},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r17() {
register int a asm ("r17");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r18
// CHECK: call void asm sideeffect "", "{r18},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r18() {
register int a asm ("r18");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r19
// CHECK: call void asm sideeffect "", "{r19},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r19() {
register int a asm ("r19");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r20
// CHECK: call void asm sideeffect "", "{r20},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r20() {
register int a asm ("r20");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r21
// CHECK: call void asm sideeffect "", "{r21},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r21() {
register int a asm ("r21");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r22
// CHECK: call void asm sideeffect "", "{r22},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r22() {
register int a asm ("r22");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r23
// CHECK: call void asm sideeffect "", "{r23},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r23() {
register int a asm ("r23");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r24
// CHECK: call void asm sideeffect "", "{r24},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r24() {
register int a asm ("r24");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r25
// CHECK: call void asm sideeffect "", "{r25},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r25() {
register int a asm ("r25");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r26
// CHECK: call void asm sideeffect "", "{r26},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r26() {
register int a asm ("r26");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r27
// CHECK: call void asm sideeffect "", "{r27},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r27() {
register int a asm ("r27");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r28
// CHECK: call void asm sideeffect "", "{r28},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r28() {
register int a asm ("r28");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r29
// CHECK: call void asm sideeffect "", "{r29},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r29() {
register int a asm ("r29");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r30
// CHECK: call void asm sideeffect "", "{r30},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r30() {
register int a asm ("r30");
asm ("" :: "r" (a));
}
// CHECK-LABEL: @test_r31
// CHECK: call void asm sideeffect "", "{r31},~{dirflag},~{fpsr},~{flags}"(i32 undef)
void test_r31() {
register int a asm ("r31");
asm ("" :: "r" (a));
}