mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 12:31:04 +01:00
Make SemIR::TypeType be an empty FacetType instruction (#7813)
The type `type` is now a `FacetType` inst with no constraints. This brings the model implemented in the toolchain into better alignment with the language design. The `SemIR::TypeType` struct remains as a scope for holding the `TypeInstId`, `ConstantId`, and `TypeId` constants, but is not an `InstKind` anymore. The `TypeType` inst looks a lot like singletons, but there are many `FacetType` insts so it doesn't quite fit that model. So we put it alongside singletons with a fixed inst id but refer to it as a more general "builtin" inst that is not a singleton. `Namespace::PackageInstId` is similar, and we group it with `TypeType` conceptually as another builtin instruction with a fixed id. No conversion is needed anymore to use a `type` as a facet, since types also have a `FacetType` type. This simplifies and removes a number of helpers and branches throughout the code. The `TypeType` inst is now part of the constant store, so we end up printing it in the constants block in every test. But it's also named `type` rather than `%type` to preserve the majority of existing formatting behaviour, though this does look different from other constants. Assisted-by: Opus 5 was used to generate a first draft and validate the refactoring. Though nearly everything non-trivial the tool wrote has been modified or rewritten.
This commit is contained in:
+23
-22
@@ -309,6 +309,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: --- arithmetic_operators.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %Destroy.type: type = facet_type <@Destroy> [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.429: type = pattern_type %Destroy.type [concrete]
|
||||
// CHECK:STDOUT: %Result.patt: %pattern_type.429 = symbolic_binding_pattern Result, 0 [symbolic]
|
||||
@@ -318,7 +319,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %Other: type = symbolic_binding Other, 0 [symbolic]
|
||||
// CHECK:STDOUT: %AddWith.type.7e9: type = facet_type <@AddWith.1, @AddWith.1(%Other)> [symbolic]
|
||||
// CHECK:STDOUT: %pattern_type.98f: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.9a5: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %Self.96a: %AddWith.type.7e9 = symbolic_binding Self, 1 [symbolic]
|
||||
// CHECK:STDOUT: %AddWith.assoc_type.588: type = assoc_entity_type @AddWith.1, @AddWith.1(%Other) [symbolic]
|
||||
// CHECK:STDOUT: %AddWith.WithSelf.Op.type.28e: type = fn_type @AddWith.WithSelf.Op, @AddWith.WithSelf(%Other, %Self.96a) [symbolic]
|
||||
@@ -1048,7 +1049,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: %facet_value.20a: %facet_type.546 = facet_value %Int64, (%custom_witness.e7a31c.3, %custom_witness.e66) [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.5db: type = pattern_type %facet_type.546 [concrete]
|
||||
// CHECK:STDOUT: %T.patt.ed0: %pattern_type.5db = symbolic_binding_pattern T, 2 [symbolic]
|
||||
// CHECK:STDOUT: %U.patt.d47: %pattern_type.98f = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U.patt.3a0: %pattern_type.9a5 = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U.67d: type = symbolic_binding U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %AddAssignWith.type.2c8890.1: type = facet_type <@AddAssignWith.1, @AddAssignWith.1(%Other)> [symbolic]
|
||||
// CHECK:STDOUT: %Self.792732.1: %AddAssignWith.type.2c8890.1 = symbolic_binding Self, 1 [symbolic]
|
||||
@@ -4061,7 +4062,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @AddAssignWith.loc225(constants.%U.67d, constants.%T.792) {
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc225_19.1 => constants.%U.67d
|
||||
// CHECK:STDOUT: %AddAssignWith.type.loc225_50.1 => constants.%AddAssignWith.type.2c8890.2
|
||||
// CHECK:STDOUT: %pattern_type.loc225_28 => constants.%pattern_type.82d
|
||||
@@ -4077,7 +4078,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @SubAssignWith.loc231(constants.%U.67d, constants.%T.f6c) {
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc231_19.1 => constants.%U.67d
|
||||
// CHECK:STDOUT: %SubAssignWith.type.loc231_50.1 => constants.%SubAssignWith.type.7e53cf.2
|
||||
// CHECK:STDOUT: %pattern_type.loc231_28 => constants.%pattern_type.260
|
||||
@@ -4093,7 +4094,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @MulAssignWith.loc237(constants.%U.67d, constants.%T.64d) {
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc237_19.1 => constants.%U.67d
|
||||
// CHECK:STDOUT: %MulAssignWith.type.loc237_50.1 => constants.%MulAssignWith.type.3a0e4d.2
|
||||
// CHECK:STDOUT: %pattern_type.loc237_28 => constants.%pattern_type.8c2
|
||||
@@ -4109,7 +4110,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @DivAssignWith.loc243(constants.%U.67d, constants.%T.c33) {
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc243_19.1 => constants.%U.67d
|
||||
// CHECK:STDOUT: %DivAssignWith.type.loc243_50.1 => constants.%DivAssignWith.type.7e58ca.2
|
||||
// CHECK:STDOUT: %pattern_type.loc243_28 => constants.%pattern_type.f74
|
||||
@@ -4125,7 +4126,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @ModAssignWith.loc249(constants.%U.67d, constants.%T.bca) {
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc249_19.1 => constants.%U.67d
|
||||
// CHECK:STDOUT: %ModAssignWith.type.loc249_50.1 => constants.%ModAssignWith.type.778d68.2
|
||||
// CHECK:STDOUT: %pattern_type.loc249_28 => constants.%pattern_type.fb8
|
||||
@@ -4141,7 +4142,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @AddAssignWith.loc225(constants.%i16, constants.%AddAssignWith.facet.e34) {
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc225_19.1 => constants.%i16
|
||||
// CHECK:STDOUT: %AddAssignWith.type.loc225_50.1 => constants.%AddAssignWith.type.2a0
|
||||
// CHECK:STDOUT: %pattern_type.loc225_28 => constants.%pattern_type.b256
|
||||
@@ -4169,7 +4170,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @SubAssignWith.loc231(constants.%i16, constants.%SubAssignWith.facet.a52) {
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc231_19.1 => constants.%i16
|
||||
// CHECK:STDOUT: %SubAssignWith.type.loc231_50.1 => constants.%SubAssignWith.type.e8b
|
||||
// CHECK:STDOUT: %pattern_type.loc231_28 => constants.%pattern_type.c22
|
||||
@@ -4197,7 +4198,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @MulAssignWith.loc237(constants.%i16, constants.%MulAssignWith.facet.201) {
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc237_19.1 => constants.%i16
|
||||
// CHECK:STDOUT: %MulAssignWith.type.loc237_50.1 => constants.%MulAssignWith.type.7d4
|
||||
// CHECK:STDOUT: %pattern_type.loc237_28 => constants.%pattern_type.a24
|
||||
@@ -4225,7 +4226,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @DivAssignWith.loc243(constants.%i16, constants.%DivAssignWith.facet.a72) {
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc243_19.1 => constants.%i16
|
||||
// CHECK:STDOUT: %DivAssignWith.type.loc243_50.1 => constants.%DivAssignWith.type.081
|
||||
// CHECK:STDOUT: %pattern_type.loc243_28 => constants.%pattern_type.c970
|
||||
@@ -4253,7 +4254,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @ModAssignWith.loc249(constants.%i16, constants.%ModAssignWith.facet.4a2) {
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc249_19.1 => constants.%i16
|
||||
// CHECK:STDOUT: %ModAssignWith.type.loc249_50.1 => constants.%ModAssignWith.type.1ea
|
||||
// CHECK:STDOUT: %pattern_type.loc249_28 => constants.%pattern_type.6ef
|
||||
@@ -4281,7 +4282,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @AddAssignWith.loc225(constants.%Int32, constants.%AddAssignWith.facet.348) {
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc225_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %AddAssignWith.type.loc225_50.1 => constants.%AddAssignWith.type.23a
|
||||
// CHECK:STDOUT: %pattern_type.loc225_28 => constants.%pattern_type.5ad
|
||||
@@ -4309,7 +4310,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @SubAssignWith.loc231(constants.%Int32, constants.%SubAssignWith.facet.e0e) {
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc231_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %SubAssignWith.type.loc231_50.1 => constants.%SubAssignWith.type.4fc
|
||||
// CHECK:STDOUT: %pattern_type.loc231_28 => constants.%pattern_type.190
|
||||
@@ -4337,7 +4338,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @MulAssignWith.loc237(constants.%Int32, constants.%MulAssignWith.facet.13c) {
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc237_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %MulAssignWith.type.loc237_50.1 => constants.%MulAssignWith.type.5fb
|
||||
// CHECK:STDOUT: %pattern_type.loc237_28 => constants.%pattern_type.f3b
|
||||
@@ -4365,7 +4366,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @DivAssignWith.loc243(constants.%Int32, constants.%DivAssignWith.facet.e59) {
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc243_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %DivAssignWith.type.loc243_50.1 => constants.%DivAssignWith.type.3ea
|
||||
// CHECK:STDOUT: %pattern_type.loc243_28 => constants.%pattern_type.8f3
|
||||
@@ -4393,7 +4394,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @ModAssignWith.loc249(constants.%Int32, constants.%ModAssignWith.facet.dac) {
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc249_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %ModAssignWith.type.loc249_50.1 => constants.%ModAssignWith.type.567
|
||||
// CHECK:STDOUT: %pattern_type.loc249_28 => constants.%pattern_type.9ff
|
||||
@@ -4421,7 +4422,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @AddAssignWith.loc225(constants.%Int32, constants.%AddAssignWith.facet.144) {
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc225_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc225_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %AddAssignWith.type.loc225_50.1 => constants.%AddAssignWith.type.23a
|
||||
// CHECK:STDOUT: %pattern_type.loc225_28 => constants.%pattern_type.5ad
|
||||
@@ -4449,7 +4450,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @SubAssignWith.loc231(constants.%Int32, constants.%SubAssignWith.facet.a7e) {
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc231_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc231_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %SubAssignWith.type.loc231_50.1 => constants.%SubAssignWith.type.4fc
|
||||
// CHECK:STDOUT: %pattern_type.loc231_28 => constants.%pattern_type.190
|
||||
@@ -4477,7 +4478,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @MulAssignWith.loc237(constants.%Int32, constants.%MulAssignWith.facet.b35) {
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc237_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc237_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %MulAssignWith.type.loc237_50.1 => constants.%MulAssignWith.type.5fb
|
||||
// CHECK:STDOUT: %pattern_type.loc237_28 => constants.%pattern_type.f3b
|
||||
@@ -4505,7 +4506,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @DivAssignWith.loc243(constants.%Int32, constants.%DivAssignWith.facet.b1e) {
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc243_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc243_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %DivAssignWith.type.loc243_50.1 => constants.%DivAssignWith.type.3ea
|
||||
// CHECK:STDOUT: %pattern_type.loc243_28 => constants.%pattern_type.8f3
|
||||
@@ -4533,7 +4534,7 @@ fn TestUnaryOperators(a: Cpp.Int16, b: Cpp.Int32) {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: specific @ModAssignWith.loc249(constants.%Int32, constants.%ModAssignWith.facet.342) {
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.d47
|
||||
// CHECK:STDOUT: %U.patt.loc249_19.2 => constants.%U.patt.3a0
|
||||
// CHECK:STDOUT: %U.loc249_19.1 => constants.%Int32
|
||||
// CHECK:STDOUT: %ModAssignWith.type.loc249_50.1 => constants.%ModAssignWith.type.567
|
||||
// CHECK:STDOUT: %pattern_type.loc249_28 => constants.%pattern_type.9ff
|
||||
|
||||
@@ -117,6 +117,7 @@ fn TestDerefFail(not_ptr: Cpp.NotAPtr) {
|
||||
// CHECK:STDOUT: --- const_deref.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %ConstDeref: type = class_type @ConstDeref [concrete]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [concrete]
|
||||
// CHECK:STDOUT: %Int.type: type = generic_class_type @Int [concrete]
|
||||
@@ -186,6 +187,7 @@ fn TestDerefFail(not_ptr: Cpp.NotAPtr) {
|
||||
// CHECK:STDOUT: --- mutable_deref.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %MutableDeref: type = class_type @MutableDeref [concrete]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [concrete]
|
||||
// CHECK:STDOUT: %Int.type: type = generic_class_type @Int [concrete]
|
||||
|
||||
@@ -360,8 +360,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
|
||||
// CHECK:STDOUT: --- returns_bool.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %pattern_type.98f: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.98f = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.9a5: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.9a5 = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %Other: type = symbolic_binding Other, 0 [symbolic]
|
||||
// CHECK:STDOUT: %EqWith.type.98ea86.1: type = facet_type <@EqWith.1, @EqWith.1(%Other)> [symbolic]
|
||||
@@ -530,8 +531,9 @@ fn Test(only_neq: Cpp.OnlyNeq,
|
||||
// CHECK:STDOUT: --- cross_type_equality.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %pattern_type.98f: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.98f = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.9a5: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.9a5 = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %Other: type = symbolic_binding Other, 0 [symbolic]
|
||||
// CHECK:STDOUT: %EqWith.type.98ea86.1: type = facet_type <@EqWith.1, @EqWith.1(%Other)> [symbolic]
|
||||
|
||||
@@ -1022,6 +1022,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_unary_operators.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.bbc: type = pattern_type %C [concrete]
|
||||
@@ -1166,6 +1167,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_binary_operators.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %BinaryC: type = class_type @BinaryC [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.b2b: type = pattern_type %BinaryC [concrete]
|
||||
@@ -1975,6 +1977,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- multiple_calls.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %BinaryC: type = class_type @BinaryC [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.b2b: type = pattern_type %BinaryC [concrete]
|
||||
@@ -2143,6 +2146,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- fail_todo_rewrite_spaceship.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.bbc: type = pattern_type %C [concrete]
|
||||
@@ -2313,6 +2317,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- fail_todo_rewrite_equal.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %EqualC: type = class_type @EqualC [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.4e7: type = pattern_type %EqualC [concrete]
|
||||
@@ -2446,6 +2451,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_single_namespace.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.7cb: type = pattern_type %C [concrete]
|
||||
@@ -2573,6 +2579,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_multiple_namespaces.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %C1: type = class_type @C1 [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.da8: type = pattern_type %C1 [concrete]
|
||||
@@ -2762,6 +2769,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- fail_todo_import_operands_in_namespace_operator_in_global.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.73b: type = pattern_type %C [concrete]
|
||||
@@ -2868,6 +2876,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_inner_class.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %O: type = class_type @O [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
@@ -2993,6 +3002,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_inner_class_in_namespace.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %O: type = class_type @O [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
@@ -3127,6 +3137,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_member_add_with.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %MemberClass: type = class_type @MemberClass [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.809: type = pattern_type %MemberClass [concrete]
|
||||
@@ -3255,6 +3266,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- indirect_template_instantiation.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %TemplateB: type = class_type @TemplateB [concrete]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [concrete]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(%int_32) [concrete]
|
||||
@@ -3286,6 +3298,7 @@ fn F() {
|
||||
// CHECK:STDOUT: --- import_overloading.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
|
||||
// CHECK:STDOUT: %C: type = class_type @C [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.bbc: type = pattern_type %C [concrete]
|
||||
|
||||
@@ -392,8 +392,9 @@ fn Test(missing_less: Cpp.MissingLess,
|
||||
// CHECK:STDOUT: --- returns_bool.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %pattern_type.98f: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.98f = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.9a5: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.9a5 = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %Other: type = symbolic_binding Other, 0 [symbolic]
|
||||
// CHECK:STDOUT: %OrderedWith.type.32ae87.1: type = facet_type <@OrderedWith.1, @OrderedWith.1(%Other)> [symbolic]
|
||||
@@ -634,8 +635,9 @@ fn Test(missing_less: Cpp.MissingLess,
|
||||
// CHECK:STDOUT: --- cross_type_ordering.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %pattern_type.98f: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.98f = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.9a5: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.9a5 = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %Other: type = symbolic_binding Other, 0 [symbolic]
|
||||
// CHECK:STDOUT: %OrderedWith.type.32ae87.1: type = facet_type <@OrderedWith.1, @OrderedWith.1(%Other)> [symbolic]
|
||||
|
||||
@@ -229,8 +229,9 @@ fn Test(returns_strong_ordering: Cpp.ReturnsStrongOrdering) {
|
||||
// CHECK:STDOUT: --- fail_todo_spaceship_rewrites.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %pattern_type.98f: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.98f = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: type: type = facet_type <type> [concrete]
|
||||
// CHECK:STDOUT: %pattern_type.9a5: type = pattern_type type [concrete]
|
||||
// CHECK:STDOUT: %U.patt: %pattern_type.9a5 = symbolic_binding_pattern U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %U: type = symbolic_binding U, 0 [symbolic]
|
||||
// CHECK:STDOUT: %Other: type = symbolic_binding Other, 0 [symbolic]
|
||||
// CHECK:STDOUT: %EqWith.type.98ea86.1: type = facet_type <@EqWith.1, @EqWith.1(%Other)> [symbolic]
|
||||
|
||||
Reference in New Issue
Block a user