Skip to content

Commit 124588d

Browse files
committed
further expand test
1 parent f559891 commit 124588d

File tree

1 file changed

+30
-1
lines changed
  • clang/test/DebugInfo/KeyInstructions

1 file changed

+30
-1
lines changed

clang/test/DebugInfo/KeyInstructions/complex.c

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// RUN: | FileCheck %s --implicit-check-not atomGroup --implicit-check-not atomRank
33

44
// RUN: %clang_cc1 -gkey-instructions -x c %s -debug-info-kind=line-tables-only -emit-llvm -o - \
5-
// RUN: | FileCheck %s --implicit-check-not atomGroup --implicit-check-not atomRank
5+
// RUN: | FileCheck %s --implicit-check-not atomGroup --implicit-check-not atomRank --check-prefixes=CHECK,CHECK-C
66

77
_Complex float ci;
88
float f;
@@ -51,6 +51,26 @@ void test() {
5151
// CHECK: %add = fadd float %0, %1, !dbg [[G7R2:!.*]]
5252
// CHECK: store float %add, ptr getelementptr inbounds nuw ({ float, float }, ptr @ci, i32 0, i32 1){{.*}}, !dbg [[G7R1:!.*]]
5353
__imag ci = __imag ci + __imag ci;
54+
55+
#ifndef __cplusplus
56+
// CHECK-C: %2 = load float, ptr @f, align 4
57+
// CHECK-C: %add.r24 = fadd float %2, %ci.real22, !dbg [[G9R2:!.*]]
58+
// CHECK-C: store float %add.r24, ptr @f, align 4, !dbg [[G9R1:!.*]]
59+
f += ci;
60+
61+
// CHECK-C: %3 = load float, ptr @f, align 4
62+
// CHECK-C: %sub.r27 = fsub float %3, %ci.real25, !dbg [[G11R2:!.*]]
63+
// CHECK-C: store float %sub.r27, ptr @f, align 4, !dbg [[G11R1:!.*]]
64+
f -= ci;
65+
66+
// CHECK-C: %coerce32.real = load float, ptr %coerce32.realp, align 4, !dbg [[G13R2:!.*]]
67+
// CHECK-C: store float %coerce32.real, ptr @f, align 4, !dbg [[G13R1:!.*]]
68+
f /= ci;
69+
70+
// CHECK-C: %mul.rl = fmul float %5, %ci.real33, !dbg [[G15R2:!.*]]
71+
// CHECK-C: store float %mul.rl, ptr @f, align 4, !dbg [[G15R1:!.*]]
72+
f *= ci;
73+
#endif
5474
}
5575

5676
// CHECK: [[G1R2]] = !DILocation({{.*}}, atomGroup: 1, atomRank: 2)
@@ -67,3 +87,12 @@ void test() {
6787
// CHECK: [[G6R1]] = !DILocation({{.*}}, atomGroup: 6, atomRank: 1)
6888
// CHECK: [[G7R2]] = !DILocation({{.*}}, atomGroup: 7, atomRank: 2)
6989
// CHECK: [[G7R1]] = !DILocation({{.*}}, atomGroup: 7, atomRank: 1)
90+
// FIXME: These inc by 2 atom groups each time?
91+
// CHECK-C: [[G9R2]] = !DILocation({{.*}}, atomGroup: 9, atomRank: 2)
92+
// CHECK-C: [[G9R1]] = !DILocation({{.*}}, atomGroup: 9, atomRank: 1)
93+
// CHECK-C: [[G11R2]] = !DILocation({{.*}}, atomGroup: 11, atomRank: 2)
94+
// CHECK-C: [[G11R1]] = !DILocation({{.*}}, atomGroup: 11, atomRank: 1)
95+
// CHECK-C: [[G13R2]] = !DILocation({{.*}}, atomGroup: 13, atomRank: 2)
96+
// CHECK-C: [[G13R1]] = !DILocation({{.*}}, atomGroup: 13, atomRank: 1)
97+
// CHECK-C: [[G15R2]] = !DILocation({{.*}}, atomGroup: 15, atomRank: 2)
98+
// CHECK-C: [[G15R1]] = !DILocation({{.*}}, atomGroup: 15, atomRank: 1)

0 commit comments

Comments
 (0)