Add separators between files in LLVM IR dumps (#7463)

Each file dump now starts with a `; ---` comment and ends with a blank
line. This makes it easier to visually scan the dump for a file of
interest. The comment format is somewhat arbitrary; I chose `---` to
align with the `--- filename.carbon` separator in SemIR dumps, but
without the filename, because that appears on each of the next two lines
already.
This commit is contained in:
Geoff Romer
2026-07-07 16:31:24 +00:00
committed by GitHub
parent e1cf833c45
commit ae3c4266d4
240 changed files with 778 additions and 0 deletions
@@ -18,6 +18,7 @@ fn Main() {
var _: {} = Echo({});
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'empty_struct.carbon'
// CHECK:STDOUT: source_filename = "empty_struct.carbon"
// CHECK:STDOUT:
@@ -57,3 +58,4 @@ fn Main() {
// CHECK:STDOUT: !9 = !DILocation(line: 18, column: 3, scope: !8)
// CHECK:STDOUT: !10 = !DILocation(line: 18, column: 15, scope: !8)
// CHECK:STDOUT: !11 = !DILocation(line: 17, column: 1, scope: !8)
// CHECK:STDOUT:
@@ -18,6 +18,7 @@ fn Main() {
var _: () = Echo(());
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'empty_tuple.carbon'
// CHECK:STDOUT: source_filename = "empty_tuple.carbon"
// CHECK:STDOUT:
@@ -57,3 +58,4 @@ fn Main() {
// CHECK:STDOUT: !9 = !DILocation(line: 18, column: 3, scope: !8)
// CHECK:STDOUT: !10 = !DILocation(line: 18, column: 15, scope: !8)
// CHECK:STDOUT: !11 = !DILocation(line: 17, column: 1, scope: !8)
// CHECK:STDOUT:
+12
View File
@@ -65,6 +65,7 @@ fn G() {
let unused x: i32 = F();
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'ref_form_param.carbon'
// CHECK:STDOUT: source_filename = "ref_form_param.carbon"
// CHECK:STDOUT:
@@ -113,6 +114,8 @@ fn G() {
// CHECK:STDOUT: !14 = !{!15}
// CHECK:STDOUT: !15 = !DILocalVariable(arg: 1, scope: !10, type: !13)
// CHECK:STDOUT: !16 = !DILocation(line: 6, column: 3, scope: !10)
// CHECK:STDOUT:
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'var_form_param.carbon'
// CHECK:STDOUT: source_filename = "var_form_param.carbon"
// CHECK:STDOUT:
@@ -161,6 +164,8 @@ fn G() {
// CHECK:STDOUT: !14 = !{!15}
// CHECK:STDOUT: !15 = !DILocalVariable(arg: 1, scope: !10, type: !13)
// CHECK:STDOUT: !16 = !DILocation(line: 3, column: 6, scope: !10)
// CHECK:STDOUT:
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'val_form_param.carbon'
// CHECK:STDOUT: source_filename = "val_form_param.carbon"
// CHECK:STDOUT:
@@ -187,6 +192,8 @@ fn G() {
// CHECK:STDOUT: !6 = !{null}
// CHECK:STDOUT: !7 = !DILocation(line: 6, column: 3, scope: !4)
// CHECK:STDOUT: !8 = !DILocation(line: 5, column: 1, scope: !4)
// CHECK:STDOUT:
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'ref_return_form.carbon'
// CHECK:STDOUT: source_filename = "ref_return_form.carbon"
// CHECK:STDOUT:
@@ -213,6 +220,8 @@ fn G() {
// CHECK:STDOUT: !6 = !{null}
// CHECK:STDOUT: !7 = !DILocation(line: 6, column: 27, scope: !4)
// CHECK:STDOUT: !8 = !DILocation(line: 5, column: 1, scope: !4)
// CHECK:STDOUT:
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'var_return_form.carbon'
// CHECK:STDOUT: source_filename = "var_return_form.carbon"
// CHECK:STDOUT:
@@ -261,6 +270,8 @@ fn G() {
// CHECK:STDOUT: !14 = !{!15}
// CHECK:STDOUT: !15 = !DILocalVariable(arg: 1, scope: !10, type: !13)
// CHECK:STDOUT: !16 = !DILocation(line: 6, column: 14, scope: !10)
// CHECK:STDOUT:
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'val_return_form.carbon'
// CHECK:STDOUT: source_filename = "val_return_form.carbon"
// CHECK:STDOUT:
@@ -287,3 +298,4 @@ fn G() {
// CHECK:STDOUT: !6 = !{null}
// CHECK:STDOUT: !7 = !DILocation(line: 6, column: 23, scope: !4)
// CHECK:STDOUT: !8 = !DILocation(line: 5, column: 1, scope: !4)
// CHECK:STDOUT:
+2
View File
@@ -18,6 +18,7 @@ fn Main() {
var _: i32 = Echo(1);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'i32.carbon'
// CHECK:STDOUT: source_filename = "i32.carbon"
// CHECK:STDOUT:
@@ -76,3 +77,4 @@ fn Main() {
// CHECK:STDOUT: !20 = !{!21}
// CHECK:STDOUT: !21 = !DILocalVariable(arg: 1, scope: !17, type: !7)
// CHECK:STDOUT: !22 = !DILocation(line: 18, column: 3, scope: !17)
// CHECK:STDOUT:
@@ -19,6 +19,7 @@ fn Main() {
var _: () = Bar(Foo());
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'implicit_empty_tuple_as_arg.carbon'
// CHECK:STDOUT: source_filename = "implicit_empty_tuple_as_arg.carbon"
// CHECK:STDOUT:
@@ -73,3 +74,4 @@ fn Main() {
// CHECK:STDOUT: !12 = !DILocation(line: 19, column: 19, scope: !10)
// CHECK:STDOUT: !13 = !DILocation(line: 19, column: 15, scope: !10)
// CHECK:STDOUT: !14 = !DILocation(line: 18, column: 1, scope: !10)
// CHECK:STDOUT:
@@ -16,6 +16,7 @@ fn Main() {
Foo(1);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'params_one.carbon'
// CHECK:STDOUT: source_filename = "params_one.carbon"
// CHECK:STDOUT:
@@ -53,3 +54,4 @@ fn Main() {
// CHECK:STDOUT: !13 = !{null}
// CHECK:STDOUT: !14 = !DILocation(line: 16, column: 3, scope: !11)
// CHECK:STDOUT: !15 = !DILocation(line: 15, column: 1, scope: !11)
// CHECK:STDOUT:
@@ -17,6 +17,7 @@ fn Main() {
Foo(1,);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'params_one_comma.carbon'
// CHECK:STDOUT: source_filename = "params_one_comma.carbon"
// CHECK:STDOUT:
@@ -56,3 +57,4 @@ fn Main() {
// CHECK:STDOUT: !14 = !DILocation(line: 16, column: 3, scope: !11)
// CHECK:STDOUT: !15 = !DILocation(line: 17, column: 3, scope: !11)
// CHECK:STDOUT: !16 = !DILocation(line: 15, column: 1, scope: !11)
// CHECK:STDOUT:
@@ -16,6 +16,7 @@ fn Main() {
Foo(1, 2);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'params_two.carbon'
// CHECK:STDOUT: source_filename = "params_two.carbon"
// CHECK:STDOUT:
@@ -54,3 +55,4 @@ fn Main() {
// CHECK:STDOUT: !14 = !{null}
// CHECK:STDOUT: !15 = !DILocation(line: 16, column: 3, scope: !12)
// CHECK:STDOUT: !16 = !DILocation(line: 15, column: 1, scope: !12)
// CHECK:STDOUT:
@@ -17,6 +17,7 @@ fn Main() {
Foo(1, 2,);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'params_two_comma.carbon'
// CHECK:STDOUT: source_filename = "params_two_comma.carbon"
// CHECK:STDOUT:
@@ -57,3 +58,4 @@ fn Main() {
// CHECK:STDOUT: !15 = !DILocation(line: 16, column: 3, scope: !12)
// CHECK:STDOUT: !16 = !DILocation(line: 17, column: 3, scope: !12)
// CHECK:STDOUT: !17 = !DILocation(line: 15, column: 1, scope: !12)
// CHECK:STDOUT:
@@ -16,6 +16,7 @@ fn Main() {
Foo();
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'params_zero.carbon'
// CHECK:STDOUT: source_filename = "params_zero.carbon"
// CHECK:STDOUT:
@@ -48,3 +49,4 @@ fn Main() {
// CHECK:STDOUT: !8 = distinct !DISubprogram(name: "Main", linkageName: "_CMain.Main", scope: null, file: !1, line: 15, type: !5, spFlags: DISPFlagDefinition, unit: !0)
// CHECK:STDOUT: !9 = !DILocation(line: 16, column: 3, scope: !8)
// CHECK:STDOUT: !10 = !DILocation(line: 15, column: 1, scope: !8)
// CHECK:STDOUT:
@@ -17,6 +17,7 @@ fn Main() {
DoNothing(ref a);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'ref_param.carbon'
// CHECK:STDOUT: source_filename = "ref_param.carbon"
// CHECK:STDOUT:
@@ -73,3 +74,4 @@ fn Main() {
// CHECK:STDOUT: !18 = !{!19}
// CHECK:STDOUT: !19 = !DILocalVariable(arg: 1, scope: !17, type: !7)
// CHECK:STDOUT: !20 = !DILocation(line: 16, column: 3, scope: !17)
// CHECK:STDOUT:
@@ -19,6 +19,7 @@ fn Main() {
Echo(ref a) = 1;
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'ref_return.carbon'
// CHECK:STDOUT: source_filename = "ref_return.carbon"
// CHECK:STDOUT:
@@ -79,3 +80,4 @@ fn Main() {
// CHECK:STDOUT: !21 = !{!22}
// CHECK:STDOUT: !22 = !DILocalVariable(arg: 1, scope: !18, type: !8)
// CHECK:STDOUT: !23 = !DILocation(line: 18, column: 3, scope: !18)
// CHECK:STDOUT:
@@ -18,6 +18,7 @@ fn Main() {
var _: () = MakeImplicitEmptyTuple();
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'return_implicit.carbon'
// CHECK:STDOUT: source_filename = "return_implicit.carbon"
// CHECK:STDOUT:
@@ -57,3 +58,4 @@ fn Main() {
// CHECK:STDOUT: !9 = !DILocation(line: 18, column: 3, scope: !8)
// CHECK:STDOUT: !10 = !DILocation(line: 18, column: 15, scope: !8)
// CHECK:STDOUT: !11 = !DILocation(line: 17, column: 1, scope: !8)
// CHECK:STDOUT:
@@ -16,6 +16,7 @@ fn Main() {
F({}, {.a = 1}, {.a = 2, .b = 3});
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'struct_param.carbon'
// CHECK:STDOUT: source_filename = "struct_param.carbon"
// CHECK:STDOUT:
@@ -56,3 +57,4 @@ fn Main() {
// CHECK:STDOUT: !14 = !{null}
// CHECK:STDOUT: !15 = !DILocation(line: 16, column: 3, scope: !12)
// CHECK:STDOUT: !16 = !DILocation(line: 15, column: 1, scope: !12)
// CHECK:STDOUT:
@@ -16,6 +16,7 @@ fn Main() {
F((), (1,), (2, 3));
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'tuple_param.carbon'
// CHECK:STDOUT: source_filename = "tuple_param.carbon"
// CHECK:STDOUT:
@@ -56,3 +57,4 @@ fn Main() {
// CHECK:STDOUT: !14 = !{null}
// CHECK:STDOUT: !15 = !DILocation(line: 16, column: 3, scope: !12)
// CHECK:STDOUT: !16 = !DILocation(line: 15, column: 1, scope: !12)
// CHECK:STDOUT:
@@ -18,6 +18,7 @@ fn Main() {
F((), (1,), (2, 3));
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'tuple_param_with_return_slot.carbon'
// CHECK:STDOUT: source_filename = "tuple_param_with_return_slot.carbon"
// CHECK:STDOUT:
@@ -105,3 +106,4 @@ fn Main() {
// CHECK:STDOUT: !31 = !{!32}
// CHECK:STDOUT: !32 = !DILocalVariable(arg: 1, scope: !28, type: !7)
// CHECK:STDOUT: !33 = !DILocation(line: 18, column: 3, scope: !28)
// CHECK:STDOUT:
@@ -17,6 +17,7 @@ fn Main() {
DoNothing(a);
}
// CHECK:STDOUT: ; ---
// CHECK:STDOUT: ; ModuleID = 'var_param.carbon'
// CHECK:STDOUT: source_filename = "var_param.carbon"
// CHECK:STDOUT:
@@ -75,3 +76,4 @@ fn Main() {
// CHECK:STDOUT: !19 = !{!20}
// CHECK:STDOUT: !20 = !DILocalVariable(arg: 1, scope: !18, type: !7)
// CHECK:STDOUT: !21 = !DILocation(line: 16, column: 3, scope: !18)
// CHECK:STDOUT: