Update SemIR yaml and text for multi-file. (#3217)

Building on #3214 and #3215, updates sem_ir yaml to be:

```
- filename: name
  sem_ir: [ ... ]
```

Also, changes the textual format from `package { ... }` to `file
<filename> { ... }`. My thought on packages there is:

```
file "foo.carbon" {
  package MyPackage

  ...
}
```

The reason for putting the file first is that it's easier if we put what
we're grouping on first, whereas the package is an "annotation" on the
file.
This commit is contained in:
Jon Ross-Perkins
2023-09-13 17:08:18 +00:00
committed by GitHub
parent 0b340a2ed2
commit 9ae41b2965
153 changed files with 625 additions and 393 deletions
+1 -1
View File
@@ -12,7 +12,7 @@ fn Main() {
Echo({});
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "empty_struct.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Echo
// CHECK:STDOUT: %.loc11 = fn_decl @Main
// CHECK:STDOUT: }
+1 -1
View File
@@ -12,7 +12,7 @@ fn Main() {
Echo(());
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "empty_tuple.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Echo
// CHECK:STDOUT: %.loc11 = fn_decl @Main
// CHECK:STDOUT: }
@@ -55,7 +55,7 @@ fn Main() {
Run2(0);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "fail_param_count.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Run0
// CHECK:STDOUT: %.loc8 = fn_decl @Run1
// CHECK:STDOUT: %.loc9 = fn_decl @Run2
@@ -16,7 +16,7 @@ fn Main() {
Run(1.0);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "fail_param_type.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Run
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
@@ -13,7 +13,7 @@ fn Run() {
var x: i32 = Foo();
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "fail_return_type_mismatch.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Run
// CHECK:STDOUT: }
+1 -1
View File
@@ -12,7 +12,7 @@ fn Main() {
var b: i32 = Echo(1);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "i32.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Echo
// CHECK:STDOUT: %.loc11 = fn_decl @Main
// CHECK:STDOUT: }
@@ -11,7 +11,7 @@ fn Main() {
Foo(1 + 2 + 3, 4 + 5, 6);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "more_param_ir.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
+1 -1
View File
@@ -10,7 +10,7 @@ fn Main() {
Foo(1);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_one.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
@@ -11,7 +11,7 @@ fn Main() {
Foo(1,);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_one_comma.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
+1 -1
View File
@@ -10,7 +10,7 @@ fn Main() {
Foo(1, 2);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_two.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
@@ -11,7 +11,7 @@ fn Main() {
Foo(1, 2,);
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_two_comma.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
+1 -1
View File
@@ -10,7 +10,7 @@ fn Main() {
Foo();
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_zero.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc9 = fn_decl @Main
// CHECK:STDOUT: }
@@ -11,7 +11,7 @@ fn Main() {
var b: () = MakeImplicitEmptyTuple();
}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "return_implicit.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @MakeImplicitEmptyTuple
// CHECK:STDOUT: %.loc10 = fn_decl @Main
// CHECK:STDOUT: }
@@ -8,7 +8,7 @@ fn F();
fn G() { F(); }
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "simple.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @F
// CHECK:STDOUT: %.loc9 = fn_decl @G
// CHECK:STDOUT: }
@@ -12,7 +12,7 @@
// CHECK:STDERR: ^
fn Bar(a: i32, a: i32) {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "fail_param_name_conflict.carbon" {
// CHECK:STDOUT: %.loc13 = fn_decl @Bar
// CHECK:STDOUT: }
// CHECK:STDOUT:
+1 -1
View File
@@ -8,7 +8,7 @@ fn Foo() {}
fn Bar() {}
fn Baz() {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "order.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc8 = fn_decl @Bar
// CHECK:STDOUT: %.loc9 = fn_decl @Baz
@@ -6,7 +6,7 @@
fn Foo(a: i32) {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_one.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: }
// CHECK:STDOUT:
@@ -6,7 +6,7 @@
fn Foo(a: i32,) {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_one_comma.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: }
// CHECK:STDOUT:
@@ -6,7 +6,7 @@
fn Foo(a: i32, b: i32) {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_two.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: }
// CHECK:STDOUT:
@@ -6,7 +6,7 @@
fn Foo(a: i32, b: i32,) {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_two_comma.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: }
// CHECK:STDOUT:
@@ -6,7 +6,7 @@
fn Foo() {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "params_zero.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: }
// CHECK:STDOUT:
@@ -7,7 +7,7 @@
fn Foo(a: i32) {}
fn Bar(a: i32) {}
// CHECK:STDOUT: package {
// CHECK:STDOUT: file "same_param_name.carbon" {
// CHECK:STDOUT: %.loc7 = fn_decl @Foo
// CHECK:STDOUT: %.loc8 = fn_decl @Bar
// CHECK:STDOUT: }