Просмотр исходного кода

Add unit tagging to SymbolicConstantId (#6262)

David Blaikie 6 месяцев назад
Родитель
Сommit
b02c6a8db4
2 измененных файлов с 468 добавлено и 467 удалено
  1. 467 467
      toolchain/check/testdata/basics/raw_sem_ir/one_file.carbon
  2. 1 0
      toolchain/sem_ir/constant.h

+ 467 - 467
toolchain/check/testdata/basics/raw_sem_ir/one_file.carbon

@@ -373,9 +373,9 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst60000047)}
 // CHECK:STDOUT:     'type(inst(SpecificFunctionType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     'type(symbolic_constant000000FD)':
+// CHECK:STDOUT:     'type(symbolic_constant600000FD)':
 // CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000024)}
-// CHECK:STDOUT:     'type(symbolic_constant00000100)':
+// CHECK:STDOUT:     'type(symbolic_constant60000100)':
 // CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000024)}
 // CHECK:STDOUT:     'type(inst(BoundMethodType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(BoundMethodType))}
@@ -450,10 +450,10 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst60000051:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000050)}
 // CHECK:STDOUT:     inst60000052:    {kind: SymbolicBindingType, arg0: entity_name60000004, arg1: inst60000048, type: type(TypeType)}
 // CHECK:STDOUT:     inst60000053:    {kind: PatternType, arg0: inst60000052, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000054:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant00000013)}
-// CHECK:STDOUT:     inst60000055:    {kind: OutParamPattern, arg0: inst60000054, arg1: call_param1, type: type(symbolic_constant00000013)}
-// CHECK:STDOUT:     inst60000056:    {kind: BindingPattern, arg0: entity_name60000008, type: type(symbolic_constant00000013)}
-// CHECK:STDOUT:     inst60000057:    {kind: ValueParamPattern, arg0: inst60000056, arg1: call_param0, type: type(symbolic_constant00000013)}
+// CHECK:STDOUT:     inst60000054:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant60000013)}
+// CHECK:STDOUT:     inst60000055:    {kind: OutParamPattern, arg0: inst60000054, arg1: call_param1, type: type(symbolic_constant60000013)}
+// CHECK:STDOUT:     inst60000056:    {kind: BindingPattern, arg0: entity_name60000008, type: type(symbolic_constant60000013)}
+// CHECK:STDOUT:     inst60000057:    {kind: ValueParamPattern, arg0: inst60000056, arg1: call_param0, type: type(symbolic_constant60000013)}
 // CHECK:STDOUT:     inst60000058:    {kind: ImportRefLoaded, arg0: import_ir_inst0000000B, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst60000059:    {kind: BindSymbolicName, arg0: entity_name60000004, arg1: inst<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst6000005A:    {kind: SymbolicBindingType, arg0: entity_name60000004, arg1: inst60000059, type: type(TypeType)}
@@ -476,17 +476,17 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst6000006B:    {kind: SymbolicBindingType, arg0: entity_name60000001, arg1: inst6000006A, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000006C:    {kind: ConstType, arg0: inst6000006B, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000006D:    {kind: ImplWitness, arg0: inst60000068, arg1: specific60000003, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     inst6000006E:    {kind: FunctionDecl, arg0: function60000002, arg1: inst_block_empty, type: type(symbolic_constant00000026)}
+// CHECK:STDOUT:     inst6000006E:    {kind: FunctionDecl, arg0: function60000002, arg1: inst_block_empty, type: type(symbolic_constant60000026)}
 // CHECK:STDOUT:     inst6000006F:    {kind: FunctionType, arg0: function60000002, arg1: specific60000002, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000070:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant00000026)}
+// CHECK:STDOUT:     inst60000070:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant60000026)}
 // CHECK:STDOUT:     inst60000071:    {kind: PatternType, arg0: inst60000061, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000072:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant0000002B)}
-// CHECK:STDOUT:     inst60000073:    {kind: OutParamPattern, arg0: inst60000072, arg1: call_param1, type: type(symbolic_constant0000002B)}
-// CHECK:STDOUT:     inst60000074:    {kind: BindingPattern, arg0: entity_name60000011, type: type(symbolic_constant0000002B)}
-// CHECK:STDOUT:     inst60000075:    {kind: ValueParamPattern, arg0: inst60000074, arg1: call_param0, type: type(symbolic_constant0000002B)}
+// CHECK:STDOUT:     inst60000072:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant6000002B)}
+// CHECK:STDOUT:     inst60000073:    {kind: OutParamPattern, arg0: inst60000072, arg1: call_param1, type: type(symbolic_constant6000002B)}
+// CHECK:STDOUT:     inst60000074:    {kind: BindingPattern, arg0: entity_name60000011, type: type(symbolic_constant6000002B)}
+// CHECK:STDOUT:     inst60000075:    {kind: ValueParamPattern, arg0: inst60000074, arg1: call_param0, type: type(symbolic_constant6000002B)}
 // CHECK:STDOUT:     inst60000076:    {kind: ImportRefLoaded, arg0: import_ir_inst00000020, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst60000077:    {kind: FunctionType, arg0: function60000002, arg1: specific60000003, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000078:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant0000002D)}
+// CHECK:STDOUT:     inst60000078:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant6000002D)}
 // CHECK:STDOUT:     inst60000079:    {kind: BindSymbolicName, arg0: entity_name60000001, arg1: inst<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst6000007A:    {kind: SymbolicBindingType, arg0: entity_name60000001, arg1: inst60000079, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000007B:    {kind: ConstType, arg0: inst6000007A, type: type(TypeType)}
@@ -495,13 +495,13 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst6000007E:    {kind: RequireCompleteType, arg0: inst60000060, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst6000007F:    {kind: LookupImplWitness, arg0: inst6000005F, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000080:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst6000005F, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000081:    {kind: ImplWitnessAccess, arg0: inst6000007F, arg1: element0, type: type(symbolic_constant0000003C)}
+// CHECK:STDOUT:     inst60000081:    {kind: ImplWitnessAccess, arg0: inst6000007F, arg1: element0, type: type(symbolic_constant6000003C)}
 // CHECK:STDOUT:     inst60000082:    {kind: SpecificImplFunction, arg0: inst60000081, arg1: specific60000005, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst60000083:    {kind: RequireCompleteType, arg0: inst6000007B, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000084:    {kind: RequireCompleteType, arg0: inst6000007A, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000085:    {kind: LookupImplWitness, arg0: inst60000079, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000086:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst60000079, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000087:    {kind: ImplWitnessAccess, arg0: inst60000085, arg1: element0, type: type(symbolic_constant00000045)}
+// CHECK:STDOUT:     inst60000087:    {kind: ImplWitnessAccess, arg0: inst60000085, arg1: element0, type: type(symbolic_constant60000045)}
 // CHECK:STDOUT:     inst60000088:    {kind: SpecificImplFunction, arg0: inst60000087, arg1: specific60000006, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst60000089:    {kind: PatternType, arg0: inst60000060, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000008A:    {kind: ImportRefUnloaded, arg0: import_ir_inst0000002D, arg1: entity_name<none>}
@@ -532,16 +532,16 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst600000A3:    {kind: BindSymbolicName, arg0: entity_name60000001, arg1: inst<none>, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000A4:    {kind: PointerType, arg0: inst600000A3, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000A5:    {kind: ImplWitness, arg0: inst600000A1, arg1: specific60000008, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     inst600000A6:    {kind: FunctionDecl, arg0: function60000003, arg1: inst_block_empty, type: type(symbolic_constant00000051)}
+// CHECK:STDOUT:     inst600000A6:    {kind: FunctionDecl, arg0: function60000003, arg1: inst_block_empty, type: type(symbolic_constant60000051)}
 // CHECK:STDOUT:     inst600000A7:    {kind: FunctionType, arg0: function60000003, arg1: specific60000007, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000A8:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant00000051)}
-// CHECK:STDOUT:     inst600000A9:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant00000055)}
-// CHECK:STDOUT:     inst600000AA:    {kind: OutParamPattern, arg0: inst600000A9, arg1: call_param1, type: type(symbolic_constant00000055)}
-// CHECK:STDOUT:     inst600000AB:    {kind: BindingPattern, arg0: entity_name60000018, type: type(symbolic_constant00000055)}
-// CHECK:STDOUT:     inst600000AC:    {kind: ValueParamPattern, arg0: inst600000AB, arg1: call_param0, type: type(symbolic_constant00000055)}
+// CHECK:STDOUT:     inst600000A8:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant60000051)}
+// CHECK:STDOUT:     inst600000A9:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant60000055)}
+// CHECK:STDOUT:     inst600000AA:    {kind: OutParamPattern, arg0: inst600000A9, arg1: call_param1, type: type(symbolic_constant60000055)}
+// CHECK:STDOUT:     inst600000AB:    {kind: BindingPattern, arg0: entity_name60000018, type: type(symbolic_constant60000055)}
+// CHECK:STDOUT:     inst600000AC:    {kind: ValueParamPattern, arg0: inst600000AB, arg1: call_param0, type: type(symbolic_constant60000055)}
 // CHECK:STDOUT:     inst600000AD:    {kind: ImportRefLoaded, arg0: import_ir_inst0000004D, arg1: entity_name<none>, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000AE:    {kind: FunctionType, arg0: function60000003, arg1: specific60000008, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000AF:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant00000058)}
+// CHECK:STDOUT:     inst600000AF:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant60000058)}
 // CHECK:STDOUT:     inst600000B0:    {kind: RequireCompleteType, arg0: inst600000A4, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000B1:    {kind: BindSymbolicName, arg0: entity_name60000001, arg1: inst<none>, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000B2:    {kind: PointerType, arg0: inst600000B1, type: type(TypeType)}
@@ -574,18 +574,18 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst600000CD:    {kind: SymbolicBindingType, arg0: entity_name6000001A, arg1: inst600000CB, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000CE:    {kind: TupleType, arg0: inst_block6000003E, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000CF:    {kind: ImplWitness, arg0: inst600000C8, arg1: specific6000000B, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     inst600000D0:    {kind: FunctionDecl, arg0: function60000004, arg1: inst_block_empty, type: type(symbolic_constant00000072)}
+// CHECK:STDOUT:     inst600000D0:    {kind: FunctionDecl, arg0: function60000004, arg1: inst_block_empty, type: type(symbolic_constant60000072)}
 // CHECK:STDOUT:     inst600000D1:    {kind: FunctionType, arg0: function60000004, arg1: specific6000000A, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000D2:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant00000072)}
+// CHECK:STDOUT:     inst600000D2:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant60000072)}
 // CHECK:STDOUT:     inst600000D3:    {kind: PatternType, arg0: inst600000C0, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000D4:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant00000077)}
-// CHECK:STDOUT:     inst600000D5:    {kind: OutParamPattern, arg0: inst600000D4, arg1: call_param1, type: type(symbolic_constant00000077)}
-// CHECK:STDOUT:     inst600000D6:    {kind: BindingPattern, arg0: entity_name60000024, type: type(symbolic_constant00000077)}
-// CHECK:STDOUT:     inst600000D7:    {kind: ValueParamPattern, arg0: inst600000D6, arg1: call_param0, type: type(symbolic_constant00000077)}
+// CHECK:STDOUT:     inst600000D4:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant60000077)}
+// CHECK:STDOUT:     inst600000D5:    {kind: OutParamPattern, arg0: inst600000D4, arg1: call_param1, type: type(symbolic_constant60000077)}
+// CHECK:STDOUT:     inst600000D6:    {kind: BindingPattern, arg0: entity_name60000024, type: type(symbolic_constant60000077)}
+// CHECK:STDOUT:     inst600000D7:    {kind: ValueParamPattern, arg0: inst600000D6, arg1: call_param0, type: type(symbolic_constant60000077)}
 // CHECK:STDOUT:     inst600000D8:    {kind: ImportRefLoaded, arg0: import_ir_inst00000071, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst600000D9:    {kind: ImportRefLoaded, arg0: import_ir_inst00000072, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst600000DA:    {kind: FunctionType, arg0: function60000004, arg1: specific6000000B, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000DB:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant00000079)}
+// CHECK:STDOUT:     inst600000DB:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant60000079)}
 // CHECK:STDOUT:     inst600000DC:    {kind: BindSymbolicName, arg0: entity_name60000001, arg1: inst<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst600000DD:    {kind: SymbolicBindingType, arg0: entity_name60000001, arg1: inst600000DC, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000DE:    {kind: BindSymbolicName, arg0: entity_name6000001A, arg1: inst<none>, type: type(inst60000047)}
@@ -596,18 +596,18 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst600000E3:    {kind: RequireCompleteType, arg0: inst600000BF, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000E4:    {kind: LookupImplWitness, arg0: inst600000BE, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000E5:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst600000BE, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000E6:    {kind: ImplWitnessAccess, arg0: inst600000E4, arg1: element0, type: type(symbolic_constant00000091)}
+// CHECK:STDOUT:     inst600000E6:    {kind: ImplWitnessAccess, arg0: inst600000E4, arg1: element0, type: type(symbolic_constant60000091)}
 // CHECK:STDOUT:     inst600000E7:    {kind: SpecificImplFunction, arg0: inst600000E6, arg1: specific6000000D, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst600000E8:    {kind: RequireCompleteType, arg0: inst600000E0, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000E9:    {kind: RequireCompleteType, arg0: inst600000DD, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000EA:    {kind: LookupImplWitness, arg0: inst600000DC, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000EB:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst600000DC, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000EC:    {kind: ImplWitnessAccess, arg0: inst600000EA, arg1: element0, type: type(symbolic_constant0000009A)}
+// CHECK:STDOUT:     inst600000EC:    {kind: ImplWitnessAccess, arg0: inst600000EA, arg1: element0, type: type(symbolic_constant6000009A)}
 // CHECK:STDOUT:     inst600000ED:    {kind: SpecificImplFunction, arg0: inst600000EC, arg1: specific6000000E, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst600000EE:    {kind: RequireCompleteType, arg0: inst600000DF, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000EF:    {kind: LookupImplWitness, arg0: inst600000DE, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst600000F0:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst600000DE, type: type(TypeType)}
-// CHECK:STDOUT:     inst600000F1:    {kind: ImplWitnessAccess, arg0: inst600000EF, arg1: element0, type: type(symbolic_constant0000009F)}
+// CHECK:STDOUT:     inst600000F1:    {kind: ImplWitnessAccess, arg0: inst600000EF, arg1: element0, type: type(symbolic_constant6000009F)}
 // CHECK:STDOUT:     inst600000F2:    {kind: SpecificImplFunction, arg0: inst600000F1, arg1: specific6000000F, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst600000F3:    {kind: PatternType, arg0: inst600000BF, type: type(TypeType)}
 // CHECK:STDOUT:     inst600000F4:    {kind: ImportRefUnloaded, arg0: import_ir_inst00000086, arg1: entity_name<none>}
@@ -634,19 +634,19 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst60000109:    {kind: SymbolicBindingType, arg0: entity_name60000029, arg1: inst60000106, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000010A:    {kind: TupleType, arg0: inst_block60000054, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000010B:    {kind: ImplWitness, arg0: inst60000102, arg1: specific60000011, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     inst6000010C:    {kind: FunctionDecl, arg0: function60000005, arg1: inst_block_empty, type: type(symbolic_constant000000BA)}
+// CHECK:STDOUT:     inst6000010C:    {kind: FunctionDecl, arg0: function60000005, arg1: inst_block_empty, type: type(symbolic_constant600000BA)}
 // CHECK:STDOUT:     inst6000010D:    {kind: FunctionType, arg0: function60000005, arg1: specific60000010, type: type(TypeType)}
-// CHECK:STDOUT:     inst6000010E:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant000000BA)}
+// CHECK:STDOUT:     inst6000010E:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant600000BA)}
 // CHECK:STDOUT:     inst6000010F:    {kind: PatternType, arg0: inst600000F8, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000110:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant000000BF)}
-// CHECK:STDOUT:     inst60000111:    {kind: OutParamPattern, arg0: inst60000110, arg1: call_param1, type: type(symbolic_constant000000BF)}
-// CHECK:STDOUT:     inst60000112:    {kind: BindingPattern, arg0: entity_name60000037, type: type(symbolic_constant000000BF)}
-// CHECK:STDOUT:     inst60000113:    {kind: ValueParamPattern, arg0: inst60000112, arg1: call_param0, type: type(symbolic_constant000000BF)}
+// CHECK:STDOUT:     inst60000110:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant600000BF)}
+// CHECK:STDOUT:     inst60000111:    {kind: OutParamPattern, arg0: inst60000110, arg1: call_param1, type: type(symbolic_constant600000BF)}
+// CHECK:STDOUT:     inst60000112:    {kind: BindingPattern, arg0: entity_name60000037, type: type(symbolic_constant600000BF)}
+// CHECK:STDOUT:     inst60000113:    {kind: ValueParamPattern, arg0: inst60000112, arg1: call_param0, type: type(symbolic_constant600000BF)}
 // CHECK:STDOUT:     inst60000114:    {kind: ImportRefLoaded, arg0: import_ir_inst0000009F, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst60000115:    {kind: ImportRefLoaded, arg0: import_ir_inst000000A0, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst60000116:    {kind: ImportRefLoaded, arg0: import_ir_inst000000A1, arg1: entity_name<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst60000117:    {kind: FunctionType, arg0: function60000005, arg1: specific60000011, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000118:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant000000C1)}
+// CHECK:STDOUT:     inst60000118:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant600000C1)}
 // CHECK:STDOUT:     inst60000119:    {kind: BindSymbolicName, arg0: entity_name60000001, arg1: inst<none>, type: type(inst60000047)}
 // CHECK:STDOUT:     inst6000011A:    {kind: SymbolicBindingType, arg0: entity_name60000001, arg1: inst60000119, type: type(TypeType)}
 // CHECK:STDOUT:     inst6000011B:    {kind: BindSymbolicName, arg0: entity_name6000001A, arg1: inst<none>, type: type(inst60000047)}
@@ -659,34 +659,34 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     inst60000122:    {kind: RequireCompleteType, arg0: inst600000F7, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000123:    {kind: LookupImplWitness, arg0: inst600000F6, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000124:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst600000F6, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000125:    {kind: ImplWitnessAccess, arg0: inst60000123, arg1: element0, type: type(symbolic_constant000000E2)}
+// CHECK:STDOUT:     inst60000125:    {kind: ImplWitnessAccess, arg0: inst60000123, arg1: element0, type: type(symbolic_constant600000E2)}
 // CHECK:STDOUT:     inst60000126:    {kind: SpecificImplFunction, arg0: inst60000125, arg1: specific60000013, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst60000127:    {kind: RequireCompleteType, arg0: inst6000011F, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000128:    {kind: RequireCompleteType, arg0: inst6000011A, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000129:    {kind: LookupImplWitness, arg0: inst60000119, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst6000012A:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst60000119, type: type(TypeType)}
-// CHECK:STDOUT:     inst6000012B:    {kind: ImplWitnessAccess, arg0: inst60000129, arg1: element0, type: type(symbolic_constant000000EB)}
+// CHECK:STDOUT:     inst6000012B:    {kind: ImplWitnessAccess, arg0: inst60000129, arg1: element0, type: type(symbolic_constant600000EB)}
 // CHECK:STDOUT:     inst6000012C:    {kind: SpecificImplFunction, arg0: inst6000012B, arg1: specific60000014, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst6000012D:    {kind: RequireCompleteType, arg0: inst6000011C, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst6000012E:    {kind: LookupImplWitness, arg0: inst6000011B, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst6000012F:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst6000011B, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000130:    {kind: ImplWitnessAccess, arg0: inst6000012E, arg1: element0, type: type(symbolic_constant000000F0)}
+// CHECK:STDOUT:     inst60000130:    {kind: ImplWitnessAccess, arg0: inst6000012E, arg1: element0, type: type(symbolic_constant600000F0)}
 // CHECK:STDOUT:     inst60000131:    {kind: SpecificImplFunction, arg0: inst60000130, arg1: specific60000015, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst60000132:    {kind: RequireCompleteType, arg0: inst6000011E, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000133:    {kind: LookupImplWitness, arg0: inst6000011D, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000134:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst6000011D, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000135:    {kind: ImplWitnessAccess, arg0: inst60000133, arg1: element0, type: type(symbolic_constant000000F5)}
+// CHECK:STDOUT:     inst60000135:    {kind: ImplWitnessAccess, arg0: inst60000133, arg1: element0, type: type(symbolic_constant600000F5)}
 // CHECK:STDOUT:     inst60000136:    {kind: SpecificImplFunction, arg0: inst60000135, arg1: specific60000016, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst60000137:    {kind: PatternType, arg0: inst600000F7, type: type(TypeType)}
 // CHECK:STDOUT:     inst60000138:    {kind: LookupImplWitness, arg0: inst6000001B, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst60000139:    {kind: LookupImplWitness, arg0: inst6000001C, arg1: specific_interface60000000, type: type(inst(WitnessType))}
 // CHECK:STDOUT:     inst6000013A:    {kind: FacetValue, arg0: inst6000001B, arg1: inst_block60000067, type: type(inst60000047)}
 // CHECK:STDOUT:     inst6000013B:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst6000013A, type: type(TypeType)}
-// CHECK:STDOUT:     inst6000013C:    {kind: ImplWitnessAccess, arg0: inst60000138, arg1: element0, type: type(symbolic_constant00000100)}
-// CHECK:STDOUT:     inst6000013D:    {kind: ImplWitnessAccess, arg0: inst60000138, arg1: element0, type: type(symbolic_constant000000FD)}
+// CHECK:STDOUT:     inst6000013C:    {kind: ImplWitnessAccess, arg0: inst60000138, arg1: element0, type: type(symbolic_constant60000100)}
+// CHECK:STDOUT:     inst6000013D:    {kind: ImplWitnessAccess, arg0: inst60000138, arg1: element0, type: type(symbolic_constant600000FD)}
 // CHECK:STDOUT:     inst6000013E:    {kind: FacetValue, arg0: inst6000001C, arg1: inst_block60000068, type: type(inst60000047)}
 // CHECK:STDOUT:     inst6000013F:    {kind: FunctionTypeWithSelfType, arg0: inst60000050, arg1: inst6000013E, type: type(TypeType)}
-// CHECK:STDOUT:     inst60000140:    {kind: ImplWitnessAccess, arg0: inst60000139, arg1: element0, type: type(symbolic_constant00000100)}
+// CHECK:STDOUT:     inst60000140:    {kind: ImplWitnessAccess, arg0: inst60000139, arg1: element0, type: type(symbolic_constant60000100)}
 // CHECK:STDOUT:     inst60000141:    {kind: BoundMethod, arg0: inst6000003F, arg1: inst6000013C, type: type(inst(BoundMethodType))}
 // CHECK:STDOUT:     inst60000142:    {kind: SpecificImplFunction, arg0: inst6000013C, arg1: specific60000017, type: type(inst(SpecificFunctionType))}
 // CHECK:STDOUT:     inst60000143:    {kind: SpecificImplFunction, arg0: inst6000013D, arg1: specific60000017, type: type(inst(SpecificFunctionType))}
@@ -743,15 +743,15 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       inst60000039:    symbolic_constant0000000D
 // CHECK:STDOUT:       inst6000003A:    symbolic_constant0000000C
 // CHECK:STDOUT:       inst6000003B:    symbolic_constant0000000D
-// CHECK:STDOUT:       inst6000003C:    symbolic_constant0000000F
+// CHECK:STDOUT:       inst6000003C:    symbolic_constant6000000F
 // CHECK:STDOUT:       inst6000003D:    symbolic_constant0000000E
-// CHECK:STDOUT:       inst6000003E:    symbolic_constant0000000F
+// CHECK:STDOUT:       inst6000003E:    symbolic_constant6000000F
 // CHECK:STDOUT:       inst60000042:    symbolic_constant0000000D
-// CHECK:STDOUT:       inst60000044:    symbolic_constant0000000F
+// CHECK:STDOUT:       inst60000044:    symbolic_constant6000000F
 // CHECK:STDOUT:       inst60000045:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst60000046:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst60000047:    concrete_constant(inst60000047)
-// CHECK:STDOUT:       inst60000048:    symbolic_constant00000010
+// CHECK:STDOUT:       inst60000048:    symbolic_constant60000010
 // CHECK:STDOUT:       inst60000049:    constant<none>
 // CHECK:STDOUT:       inst6000004A:    concrete_constant(inst6000004E)
 // CHECK:STDOUT:       inst6000004B:    constant<none>
@@ -761,62 +761,62 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       inst6000004F:    concrete_constant(inst60000051)
 // CHECK:STDOUT:       inst60000050:    concrete_constant(inst60000050)
 // CHECK:STDOUT:       inst60000051:    concrete_constant(inst60000051)
-// CHECK:STDOUT:       inst60000052:    symbolic_constant00000011
-// CHECK:STDOUT:       inst60000053:    symbolic_constant00000012
+// CHECK:STDOUT:       inst60000052:    symbolic_constant60000011
+// CHECK:STDOUT:       inst60000053:    symbolic_constant60000012
 // CHECK:STDOUT:       inst60000054:    concrete_constant(inst60000054)
 // CHECK:STDOUT:       inst60000055:    concrete_constant(inst60000055)
 // CHECK:STDOUT:       inst60000056:    concrete_constant(inst60000056)
 // CHECK:STDOUT:       inst60000057:    concrete_constant(inst60000057)
-// CHECK:STDOUT:       inst60000058:    symbolic_constant00000010
-// CHECK:STDOUT:       inst60000059:    symbolic_constant00000016
-// CHECK:STDOUT:       inst6000005A:    symbolic_constant00000017
-// CHECK:STDOUT:       inst6000005B:    symbolic_constant00000018
-// CHECK:STDOUT:       inst6000005C:    symbolic_constant000000FB
+// CHECK:STDOUT:       inst60000058:    symbolic_constant60000010
+// CHECK:STDOUT:       inst60000059:    symbolic_constant60000016
+// CHECK:STDOUT:       inst6000005A:    symbolic_constant60000017
+// CHECK:STDOUT:       inst6000005B:    symbolic_constant60000018
+// CHECK:STDOUT:       inst6000005C:    symbolic_constant600000FB
 // CHECK:STDOUT:       inst6000005D:    constant<none>
 // CHECK:STDOUT:       inst6000005E:    concrete_constant(inst6000005E)
-// CHECK:STDOUT:       inst6000005F:    symbolic_constant00000019
-// CHECK:STDOUT:       inst60000060:    symbolic_constant0000001A
-// CHECK:STDOUT:       inst60000061:    symbolic_constant0000001B
+// CHECK:STDOUT:       inst6000005F:    symbolic_constant60000019
+// CHECK:STDOUT:       inst60000060:    symbolic_constant6000001A
+// CHECK:STDOUT:       inst60000061:    symbolic_constant6000001B
 // CHECK:STDOUT:       inst60000062:    concrete_constant(inst60000062)
 // CHECK:STDOUT:       inst60000063:    concrete_constant(inst60000063)
-// CHECK:STDOUT:       inst60000064:    symbolic_constant0000001D
-// CHECK:STDOUT:       inst60000065:    symbolic_constant0000001C
+// CHECK:STDOUT:       inst60000064:    symbolic_constant6000001D
+// CHECK:STDOUT:       inst60000065:    symbolic_constant6000001C
 // CHECK:STDOUT:       inst60000066:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst60000067:    constant<none>
 // CHECK:STDOUT:       inst60000068:    concrete_constant(inst60000068)
-// CHECK:STDOUT:       inst60000069:    symbolic_constant00000020
-// CHECK:STDOUT:       inst6000006A:    symbolic_constant00000022
-// CHECK:STDOUT:       inst6000006B:    symbolic_constant00000023
-// CHECK:STDOUT:       inst6000006C:    symbolic_constant00000024
-// CHECK:STDOUT:       inst6000006D:    symbolic_constant00000025
-// CHECK:STDOUT:       inst6000006E:    symbolic_constant00000028
-// CHECK:STDOUT:       inst6000006F:    symbolic_constant00000026
-// CHECK:STDOUT:       inst60000070:    symbolic_constant00000027
-// CHECK:STDOUT:       inst60000071:    symbolic_constant0000002A
+// CHECK:STDOUT:       inst60000069:    symbolic_constant60000020
+// CHECK:STDOUT:       inst6000006A:    symbolic_constant60000022
+// CHECK:STDOUT:       inst6000006B:    symbolic_constant60000023
+// CHECK:STDOUT:       inst6000006C:    symbolic_constant60000024
+// CHECK:STDOUT:       inst6000006D:    symbolic_constant60000025
+// CHECK:STDOUT:       inst6000006E:    symbolic_constant60000028
+// CHECK:STDOUT:       inst6000006F:    symbolic_constant60000026
+// CHECK:STDOUT:       inst60000070:    symbolic_constant60000027
+// CHECK:STDOUT:       inst60000071:    symbolic_constant6000002A
 // CHECK:STDOUT:       inst60000072:    concrete_constant(inst60000072)
 // CHECK:STDOUT:       inst60000073:    concrete_constant(inst60000073)
 // CHECK:STDOUT:       inst60000074:    concrete_constant(inst60000074)
 // CHECK:STDOUT:       inst60000075:    concrete_constant(inst60000075)
-// CHECK:STDOUT:       inst60000076:    symbolic_constant0000001D
-// CHECK:STDOUT:       inst60000077:    symbolic_constant0000002D
-// CHECK:STDOUT:       inst60000078:    symbolic_constant0000002E
-// CHECK:STDOUT:       inst60000079:    symbolic_constant00000032
-// CHECK:STDOUT:       inst6000007A:    symbolic_constant00000033
-// CHECK:STDOUT:       inst6000007B:    symbolic_constant00000034
-// CHECK:STDOUT:       inst6000007C:    symbolic_constant00000035
-// CHECK:STDOUT:       inst6000007D:    symbolic_constant00000036
-// CHECK:STDOUT:       inst6000007E:    symbolic_constant00000038
-// CHECK:STDOUT:       inst6000007F:    symbolic_constant0000003A
-// CHECK:STDOUT:       inst60000080:    symbolic_constant0000003C
-// CHECK:STDOUT:       inst60000081:    symbolic_constant0000003E
-// CHECK:STDOUT:       inst60000082:    symbolic_constant00000040
-// CHECK:STDOUT:       inst60000083:    symbolic_constant00000042
-// CHECK:STDOUT:       inst60000084:    symbolic_constant00000043
-// CHECK:STDOUT:       inst60000085:    symbolic_constant00000044
-// CHECK:STDOUT:       inst60000086:    symbolic_constant00000045
-// CHECK:STDOUT:       inst60000087:    symbolic_constant00000046
-// CHECK:STDOUT:       inst60000088:    symbolic_constant00000047
-// CHECK:STDOUT:       inst60000089:    symbolic_constant00000048
+// CHECK:STDOUT:       inst60000076:    symbolic_constant6000001D
+// CHECK:STDOUT:       inst60000077:    symbolic_constant6000002D
+// CHECK:STDOUT:       inst60000078:    symbolic_constant6000002E
+// CHECK:STDOUT:       inst60000079:    symbolic_constant60000032
+// CHECK:STDOUT:       inst6000007A:    symbolic_constant60000033
+// CHECK:STDOUT:       inst6000007B:    symbolic_constant60000034
+// CHECK:STDOUT:       inst6000007C:    symbolic_constant60000035
+// CHECK:STDOUT:       inst6000007D:    symbolic_constant60000036
+// CHECK:STDOUT:       inst6000007E:    symbolic_constant60000038
+// CHECK:STDOUT:       inst6000007F:    symbolic_constant6000003A
+// CHECK:STDOUT:       inst60000080:    symbolic_constant6000003C
+// CHECK:STDOUT:       inst60000081:    symbolic_constant6000003E
+// CHECK:STDOUT:       inst60000082:    symbolic_constant60000040
+// CHECK:STDOUT:       inst60000083:    symbolic_constant60000042
+// CHECK:STDOUT:       inst60000084:    symbolic_constant60000043
+// CHECK:STDOUT:       inst60000085:    symbolic_constant60000044
+// CHECK:STDOUT:       inst60000086:    symbolic_constant60000045
+// CHECK:STDOUT:       inst60000087:    symbolic_constant60000046
+// CHECK:STDOUT:       inst60000088:    symbolic_constant60000047
+// CHECK:STDOUT:       inst60000089:    symbolic_constant60000048
 // CHECK:STDOUT:       inst6000008A:    constant<none>
 // CHECK:STDOUT:       inst6000008B:    concrete_constant(inst6000008B)
 // CHECK:STDOUT:       inst6000008C:    concrete_constant(inst(BoolType))
@@ -833,32 +833,32 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       inst60000097:    concrete_constant(inst60000097)
 // CHECK:STDOUT:       inst60000098:    concrete_constant(inst(IntLiteralType))
 // CHECK:STDOUT:       inst60000099:    concrete_constant(inst60000047)
-// CHECK:STDOUT:       inst6000009A:    symbolic_constant000000F9
+// CHECK:STDOUT:       inst6000009A:    symbolic_constant600000F9
 // CHECK:STDOUT:       inst6000009B:    concrete_constant(inst6000009B)
 // CHECK:STDOUT:       inst6000009C:    concrete_constant(inst6000009C)
-// CHECK:STDOUT:       inst6000009D:    symbolic_constant0000004A
-// CHECK:STDOUT:       inst6000009E:    symbolic_constant00000049
+// CHECK:STDOUT:       inst6000009D:    symbolic_constant6000004A
+// CHECK:STDOUT:       inst6000009E:    symbolic_constant60000049
 // CHECK:STDOUT:       inst6000009F:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst600000A0:    constant<none>
 // CHECK:STDOUT:       inst600000A1:    concrete_constant(inst600000A1)
-// CHECK:STDOUT:       inst600000A2:    symbolic_constant0000004C
-// CHECK:STDOUT:       inst600000A3:    symbolic_constant0000004E
-// CHECK:STDOUT:       inst600000A4:    symbolic_constant0000004F
-// CHECK:STDOUT:       inst600000A5:    symbolic_constant00000050
-// CHECK:STDOUT:       inst600000A6:    symbolic_constant00000053
-// CHECK:STDOUT:       inst600000A7:    symbolic_constant00000051
-// CHECK:STDOUT:       inst600000A8:    symbolic_constant00000052
+// CHECK:STDOUT:       inst600000A2:    symbolic_constant6000004C
+// CHECK:STDOUT:       inst600000A3:    symbolic_constant6000004E
+// CHECK:STDOUT:       inst600000A4:    symbolic_constant6000004F
+// CHECK:STDOUT:       inst600000A5:    symbolic_constant60000050
+// CHECK:STDOUT:       inst600000A6:    symbolic_constant60000053
+// CHECK:STDOUT:       inst600000A7:    symbolic_constant60000051
+// CHECK:STDOUT:       inst600000A8:    symbolic_constant60000052
 // CHECK:STDOUT:       inst600000A9:    concrete_constant(inst600000A9)
 // CHECK:STDOUT:       inst600000AA:    concrete_constant(inst600000AA)
 // CHECK:STDOUT:       inst600000AB:    concrete_constant(inst600000AB)
 // CHECK:STDOUT:       inst600000AC:    concrete_constant(inst600000AC)
-// CHECK:STDOUT:       inst600000AD:    symbolic_constant0000004A
-// CHECK:STDOUT:       inst600000AE:    symbolic_constant00000058
-// CHECK:STDOUT:       inst600000AF:    symbolic_constant00000059
-// CHECK:STDOUT:       inst600000B0:    symbolic_constant0000005A
-// CHECK:STDOUT:       inst600000B1:    symbolic_constant0000005D
-// CHECK:STDOUT:       inst600000B2:    symbolic_constant0000005E
-// CHECK:STDOUT:       inst600000B3:    symbolic_constant0000005F
+// CHECK:STDOUT:       inst600000AD:    symbolic_constant6000004A
+// CHECK:STDOUT:       inst600000AE:    symbolic_constant60000058
+// CHECK:STDOUT:       inst600000AF:    symbolic_constant60000059
+// CHECK:STDOUT:       inst600000B0:    symbolic_constant6000005A
+// CHECK:STDOUT:       inst600000B1:    symbolic_constant6000005D
+// CHECK:STDOUT:       inst600000B2:    symbolic_constant6000005E
+// CHECK:STDOUT:       inst600000B3:    symbolic_constant6000005F
 // CHECK:STDOUT:       inst600000B4:    constant<none>
 // CHECK:STDOUT:       inst600000B5:    concrete_constant(inst600000B5)
 // CHECK:STDOUT:       inst600000B6:    concrete_constant(inst(TypeType))
@@ -869,141 +869,141 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       inst600000BB:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst600000BC:    constant<none>
 // CHECK:STDOUT:       inst600000BD:    concrete_constant(inst600000BD)
-// CHECK:STDOUT:       inst600000BE:    symbolic_constant00000060
-// CHECK:STDOUT:       inst600000BF:    symbolic_constant00000061
-// CHECK:STDOUT:       inst600000C0:    symbolic_constant00000062
+// CHECK:STDOUT:       inst600000BE:    symbolic_constant60000060
+// CHECK:STDOUT:       inst600000BF:    symbolic_constant60000061
+// CHECK:STDOUT:       inst600000C0:    symbolic_constant60000062
 // CHECK:STDOUT:       inst600000C1:    concrete_constant(inst600000C1)
 // CHECK:STDOUT:       inst600000C2:    concrete_constant(inst600000C2)
-// CHECK:STDOUT:       inst600000C3:    symbolic_constant00000064
-// CHECK:STDOUT:       inst600000C4:    symbolic_constant00000065
-// CHECK:STDOUT:       inst600000C5:    symbolic_constant00000063
+// CHECK:STDOUT:       inst600000C3:    symbolic_constant60000064
+// CHECK:STDOUT:       inst600000C4:    symbolic_constant60000065
+// CHECK:STDOUT:       inst600000C5:    symbolic_constant60000063
 // CHECK:STDOUT:       inst600000C6:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst600000C7:    constant<none>
 // CHECK:STDOUT:       inst600000C8:    concrete_constant(inst600000C8)
-// CHECK:STDOUT:       inst600000C9:    symbolic_constant0000006A
-// CHECK:STDOUT:       inst600000CA:    symbolic_constant0000006C
-// CHECK:STDOUT:       inst600000CB:    symbolic_constant0000006D
-// CHECK:STDOUT:       inst600000CC:    symbolic_constant0000006E
-// CHECK:STDOUT:       inst600000CD:    symbolic_constant0000006F
-// CHECK:STDOUT:       inst600000CE:    symbolic_constant00000070
-// CHECK:STDOUT:       inst600000CF:    symbolic_constant00000071
-// CHECK:STDOUT:       inst600000D0:    symbolic_constant00000074
-// CHECK:STDOUT:       inst600000D1:    symbolic_constant00000072
-// CHECK:STDOUT:       inst600000D2:    symbolic_constant00000073
-// CHECK:STDOUT:       inst600000D3:    symbolic_constant00000076
+// CHECK:STDOUT:       inst600000C9:    symbolic_constant6000006A
+// CHECK:STDOUT:       inst600000CA:    symbolic_constant6000006C
+// CHECK:STDOUT:       inst600000CB:    symbolic_constant6000006D
+// CHECK:STDOUT:       inst600000CC:    symbolic_constant6000006E
+// CHECK:STDOUT:       inst600000CD:    symbolic_constant6000006F
+// CHECK:STDOUT:       inst600000CE:    symbolic_constant60000070
+// CHECK:STDOUT:       inst600000CF:    symbolic_constant60000071
+// CHECK:STDOUT:       inst600000D0:    symbolic_constant60000074
+// CHECK:STDOUT:       inst600000D1:    symbolic_constant60000072
+// CHECK:STDOUT:       inst600000D2:    symbolic_constant60000073
+// CHECK:STDOUT:       inst600000D3:    symbolic_constant60000076
 // CHECK:STDOUT:       inst600000D4:    concrete_constant(inst600000D4)
 // CHECK:STDOUT:       inst600000D5:    concrete_constant(inst600000D5)
 // CHECK:STDOUT:       inst600000D6:    concrete_constant(inst600000D6)
 // CHECK:STDOUT:       inst600000D7:    concrete_constant(inst600000D7)
-// CHECK:STDOUT:       inst600000D8:    symbolic_constant00000064
-// CHECK:STDOUT:       inst600000D9:    symbolic_constant00000065
-// CHECK:STDOUT:       inst600000DA:    symbolic_constant00000079
-// CHECK:STDOUT:       inst600000DB:    symbolic_constant0000007A
-// CHECK:STDOUT:       inst600000DC:    symbolic_constant00000080
-// CHECK:STDOUT:       inst600000DD:    symbolic_constant00000081
-// CHECK:STDOUT:       inst600000DE:    symbolic_constant00000082
-// CHECK:STDOUT:       inst600000DF:    symbolic_constant00000083
-// CHECK:STDOUT:       inst600000E0:    symbolic_constant00000084
-// CHECK:STDOUT:       inst600000E1:    symbolic_constant00000085
-// CHECK:STDOUT:       inst600000E2:    symbolic_constant00000086
-// CHECK:STDOUT:       inst600000E3:    symbolic_constant0000008D
-// CHECK:STDOUT:       inst600000E4:    symbolic_constant0000008F
-// CHECK:STDOUT:       inst600000E5:    symbolic_constant00000091
-// CHECK:STDOUT:       inst600000E6:    symbolic_constant00000093
-// CHECK:STDOUT:       inst600000E7:    symbolic_constant00000095
-// CHECK:STDOUT:       inst600000E8:    symbolic_constant00000097
-// CHECK:STDOUT:       inst600000E9:    symbolic_constant00000098
-// CHECK:STDOUT:       inst600000EA:    symbolic_constant00000099
-// CHECK:STDOUT:       inst600000EB:    symbolic_constant0000009A
-// CHECK:STDOUT:       inst600000EC:    symbolic_constant0000009B
-// CHECK:STDOUT:       inst600000ED:    symbolic_constant0000009C
-// CHECK:STDOUT:       inst600000EE:    symbolic_constant0000009D
-// CHECK:STDOUT:       inst600000EF:    symbolic_constant0000009E
-// CHECK:STDOUT:       inst600000F0:    symbolic_constant0000009F
-// CHECK:STDOUT:       inst600000F1:    symbolic_constant000000A0
-// CHECK:STDOUT:       inst600000F2:    symbolic_constant000000A1
-// CHECK:STDOUT:       inst600000F3:    symbolic_constant000000A2
+// CHECK:STDOUT:       inst600000D8:    symbolic_constant60000064
+// CHECK:STDOUT:       inst600000D9:    symbolic_constant60000065
+// CHECK:STDOUT:       inst600000DA:    symbolic_constant60000079
+// CHECK:STDOUT:       inst600000DB:    symbolic_constant6000007A
+// CHECK:STDOUT:       inst600000DC:    symbolic_constant60000080
+// CHECK:STDOUT:       inst600000DD:    symbolic_constant60000081
+// CHECK:STDOUT:       inst600000DE:    symbolic_constant60000082
+// CHECK:STDOUT:       inst600000DF:    symbolic_constant60000083
+// CHECK:STDOUT:       inst600000E0:    symbolic_constant60000084
+// CHECK:STDOUT:       inst600000E1:    symbolic_constant60000085
+// CHECK:STDOUT:       inst600000E2:    symbolic_constant60000086
+// CHECK:STDOUT:       inst600000E3:    symbolic_constant6000008D
+// CHECK:STDOUT:       inst600000E4:    symbolic_constant6000008F
+// CHECK:STDOUT:       inst600000E5:    symbolic_constant60000091
+// CHECK:STDOUT:       inst600000E6:    symbolic_constant60000093
+// CHECK:STDOUT:       inst600000E7:    symbolic_constant60000095
+// CHECK:STDOUT:       inst600000E8:    symbolic_constant60000097
+// CHECK:STDOUT:       inst600000E9:    symbolic_constant60000098
+// CHECK:STDOUT:       inst600000EA:    symbolic_constant60000099
+// CHECK:STDOUT:       inst600000EB:    symbolic_constant6000009A
+// CHECK:STDOUT:       inst600000EC:    symbolic_constant6000009B
+// CHECK:STDOUT:       inst600000ED:    symbolic_constant6000009C
+// CHECK:STDOUT:       inst600000EE:    symbolic_constant6000009D
+// CHECK:STDOUT:       inst600000EF:    symbolic_constant6000009E
+// CHECK:STDOUT:       inst600000F0:    symbolic_constant6000009F
+// CHECK:STDOUT:       inst600000F1:    symbolic_constant600000A0
+// CHECK:STDOUT:       inst600000F2:    symbolic_constant600000A1
+// CHECK:STDOUT:       inst600000F3:    symbolic_constant600000A2
 // CHECK:STDOUT:       inst600000F4:    constant<none>
 // CHECK:STDOUT:       inst600000F5:    concrete_constant(inst600000F5)
-// CHECK:STDOUT:       inst600000F6:    symbolic_constant000000A3
-// CHECK:STDOUT:       inst600000F7:    symbolic_constant000000A4
-// CHECK:STDOUT:       inst600000F8:    symbolic_constant000000A5
+// CHECK:STDOUT:       inst600000F6:    symbolic_constant600000A3
+// CHECK:STDOUT:       inst600000F7:    symbolic_constant600000A4
+// CHECK:STDOUT:       inst600000F8:    symbolic_constant600000A5
 // CHECK:STDOUT:       inst600000F9:    concrete_constant(inst600000F9)
 // CHECK:STDOUT:       inst600000FA:    concrete_constant(inst600000FA)
 // CHECK:STDOUT:       inst600000FB:    concrete_constant(inst600000FB)
-// CHECK:STDOUT:       inst600000FC:    symbolic_constant000000A7
-// CHECK:STDOUT:       inst600000FD:    symbolic_constant000000A8
-// CHECK:STDOUT:       inst600000FE:    symbolic_constant000000A9
-// CHECK:STDOUT:       inst600000FF:    symbolic_constant000000A6
+// CHECK:STDOUT:       inst600000FC:    symbolic_constant600000A7
+// CHECK:STDOUT:       inst600000FD:    symbolic_constant600000A8
+// CHECK:STDOUT:       inst600000FE:    symbolic_constant600000A9
+// CHECK:STDOUT:       inst600000FF:    symbolic_constant600000A6
 // CHECK:STDOUT:       inst60000100:    concrete_constant(inst60000047)
 // CHECK:STDOUT:       inst60000101:    constant<none>
 // CHECK:STDOUT:       inst60000102:    concrete_constant(inst60000102)
-// CHECK:STDOUT:       inst60000103:    symbolic_constant000000B0
-// CHECK:STDOUT:       inst60000104:    symbolic_constant000000B2
-// CHECK:STDOUT:       inst60000105:    symbolic_constant000000B3
-// CHECK:STDOUT:       inst60000106:    symbolic_constant000000B4
-// CHECK:STDOUT:       inst60000107:    symbolic_constant000000B5
-// CHECK:STDOUT:       inst60000108:    symbolic_constant000000B6
-// CHECK:STDOUT:       inst60000109:    symbolic_constant000000B7
-// CHECK:STDOUT:       inst6000010A:    symbolic_constant000000B8
-// CHECK:STDOUT:       inst6000010B:    symbolic_constant000000B9
-// CHECK:STDOUT:       inst6000010C:    symbolic_constant000000BC
-// CHECK:STDOUT:       inst6000010D:    symbolic_constant000000BA
-// CHECK:STDOUT:       inst6000010E:    symbolic_constant000000BB
-// CHECK:STDOUT:       inst6000010F:    symbolic_constant000000BE
+// CHECK:STDOUT:       inst60000103:    symbolic_constant600000B0
+// CHECK:STDOUT:       inst60000104:    symbolic_constant600000B2
+// CHECK:STDOUT:       inst60000105:    symbolic_constant600000B3
+// CHECK:STDOUT:       inst60000106:    symbolic_constant600000B4
+// CHECK:STDOUT:       inst60000107:    symbolic_constant600000B5
+// CHECK:STDOUT:       inst60000108:    symbolic_constant600000B6
+// CHECK:STDOUT:       inst60000109:    symbolic_constant600000B7
+// CHECK:STDOUT:       inst6000010A:    symbolic_constant600000B8
+// CHECK:STDOUT:       inst6000010B:    symbolic_constant600000B9
+// CHECK:STDOUT:       inst6000010C:    symbolic_constant600000BC
+// CHECK:STDOUT:       inst6000010D:    symbolic_constant600000BA
+// CHECK:STDOUT:       inst6000010E:    symbolic_constant600000BB
+// CHECK:STDOUT:       inst6000010F:    symbolic_constant600000BE
 // CHECK:STDOUT:       inst60000110:    concrete_constant(inst60000110)
 // CHECK:STDOUT:       inst60000111:    concrete_constant(inst60000111)
 // CHECK:STDOUT:       inst60000112:    concrete_constant(inst60000112)
 // CHECK:STDOUT:       inst60000113:    concrete_constant(inst60000113)
-// CHECK:STDOUT:       inst60000114:    symbolic_constant000000A7
-// CHECK:STDOUT:       inst60000115:    symbolic_constant000000A8
-// CHECK:STDOUT:       inst60000116:    symbolic_constant000000A9
-// CHECK:STDOUT:       inst60000117:    symbolic_constant000000C1
-// CHECK:STDOUT:       inst60000118:    symbolic_constant000000C2
-// CHECK:STDOUT:       inst60000119:    symbolic_constant000000CA
-// CHECK:STDOUT:       inst6000011A:    symbolic_constant000000CB
-// CHECK:STDOUT:       inst6000011B:    symbolic_constant000000CC
-// CHECK:STDOUT:       inst6000011C:    symbolic_constant000000CD
-// CHECK:STDOUT:       inst6000011D:    symbolic_constant000000CE
-// CHECK:STDOUT:       inst6000011E:    symbolic_constant000000CF
-// CHECK:STDOUT:       inst6000011F:    symbolic_constant000000D0
-// CHECK:STDOUT:       inst60000120:    symbolic_constant000000D1
-// CHECK:STDOUT:       inst60000121:    symbolic_constant000000D2
-// CHECK:STDOUT:       inst60000122:    symbolic_constant000000DE
-// CHECK:STDOUT:       inst60000123:    symbolic_constant000000E0
-// CHECK:STDOUT:       inst60000124:    symbolic_constant000000E2
-// CHECK:STDOUT:       inst60000125:    symbolic_constant000000E4
-// CHECK:STDOUT:       inst60000126:    symbolic_constant000000E6
-// CHECK:STDOUT:       inst60000127:    symbolic_constant000000E8
-// CHECK:STDOUT:       inst60000128:    symbolic_constant000000E9
-// CHECK:STDOUT:       inst60000129:    symbolic_constant000000EA
-// CHECK:STDOUT:       inst6000012A:    symbolic_constant000000EB
-// CHECK:STDOUT:       inst6000012B:    symbolic_constant000000EC
-// CHECK:STDOUT:       inst6000012C:    symbolic_constant000000ED
-// CHECK:STDOUT:       inst6000012D:    symbolic_constant000000EE
-// CHECK:STDOUT:       inst6000012E:    symbolic_constant000000EF
-// CHECK:STDOUT:       inst6000012F:    symbolic_constant000000F0
-// CHECK:STDOUT:       inst60000130:    symbolic_constant000000F1
-// CHECK:STDOUT:       inst60000131:    symbolic_constant000000F2
-// CHECK:STDOUT:       inst60000132:    symbolic_constant000000F3
-// CHECK:STDOUT:       inst60000133:    symbolic_constant000000F4
-// CHECK:STDOUT:       inst60000134:    symbolic_constant000000F5
-// CHECK:STDOUT:       inst60000135:    symbolic_constant000000F6
-// CHECK:STDOUT:       inst60000136:    symbolic_constant000000F7
-// CHECK:STDOUT:       inst60000137:    symbolic_constant000000F8
-// CHECK:STDOUT:       inst60000138:    symbolic_constant000000FA
-// CHECK:STDOUT:       inst60000139:    symbolic_constant000000FB
-// CHECK:STDOUT:       inst6000013A:    symbolic_constant000000FC
-// CHECK:STDOUT:       inst6000013B:    symbolic_constant000000FD
-// CHECK:STDOUT:       inst6000013C:    symbolic_constant00000101
-// CHECK:STDOUT:       inst6000013D:    symbolic_constant000000FE
-// CHECK:STDOUT:       inst6000013E:    symbolic_constant000000FF
-// CHECK:STDOUT:       inst6000013F:    symbolic_constant00000100
-// CHECK:STDOUT:       inst60000140:    symbolic_constant00000101
-// CHECK:STDOUT:       inst60000142:    symbolic_constant00000103
-// CHECK:STDOUT:       inst60000143:    symbolic_constant00000102
-// CHECK:STDOUT:       inst60000144:    symbolic_constant00000103
-// CHECK:STDOUT:       inst60000146:    symbolic_constant0000000F
+// CHECK:STDOUT:       inst60000114:    symbolic_constant600000A7
+// CHECK:STDOUT:       inst60000115:    symbolic_constant600000A8
+// CHECK:STDOUT:       inst60000116:    symbolic_constant600000A9
+// CHECK:STDOUT:       inst60000117:    symbolic_constant600000C1
+// CHECK:STDOUT:       inst60000118:    symbolic_constant600000C2
+// CHECK:STDOUT:       inst60000119:    symbolic_constant600000CA
+// CHECK:STDOUT:       inst6000011A:    symbolic_constant600000CB
+// CHECK:STDOUT:       inst6000011B:    symbolic_constant600000CC
+// CHECK:STDOUT:       inst6000011C:    symbolic_constant600000CD
+// CHECK:STDOUT:       inst6000011D:    symbolic_constant600000CE
+// CHECK:STDOUT:       inst6000011E:    symbolic_constant600000CF
+// CHECK:STDOUT:       inst6000011F:    symbolic_constant600000D0
+// CHECK:STDOUT:       inst60000120:    symbolic_constant600000D1
+// CHECK:STDOUT:       inst60000121:    symbolic_constant600000D2
+// CHECK:STDOUT:       inst60000122:    symbolic_constant600000DE
+// CHECK:STDOUT:       inst60000123:    symbolic_constant600000E0
+// CHECK:STDOUT:       inst60000124:    symbolic_constant600000E2
+// CHECK:STDOUT:       inst60000125:    symbolic_constant600000E4
+// CHECK:STDOUT:       inst60000126:    symbolic_constant600000E6
+// CHECK:STDOUT:       inst60000127:    symbolic_constant600000E8
+// CHECK:STDOUT:       inst60000128:    symbolic_constant600000E9
+// CHECK:STDOUT:       inst60000129:    symbolic_constant600000EA
+// CHECK:STDOUT:       inst6000012A:    symbolic_constant600000EB
+// CHECK:STDOUT:       inst6000012B:    symbolic_constant600000EC
+// CHECK:STDOUT:       inst6000012C:    symbolic_constant600000ED
+// CHECK:STDOUT:       inst6000012D:    symbolic_constant600000EE
+// CHECK:STDOUT:       inst6000012E:    symbolic_constant600000EF
+// CHECK:STDOUT:       inst6000012F:    symbolic_constant600000F0
+// CHECK:STDOUT:       inst60000130:    symbolic_constant600000F1
+// CHECK:STDOUT:       inst60000131:    symbolic_constant600000F2
+// CHECK:STDOUT:       inst60000132:    symbolic_constant600000F3
+// CHECK:STDOUT:       inst60000133:    symbolic_constant600000F4
+// CHECK:STDOUT:       inst60000134:    symbolic_constant600000F5
+// CHECK:STDOUT:       inst60000135:    symbolic_constant600000F6
+// CHECK:STDOUT:       inst60000136:    symbolic_constant600000F7
+// CHECK:STDOUT:       inst60000137:    symbolic_constant600000F8
+// CHECK:STDOUT:       inst60000138:    symbolic_constant600000FA
+// CHECK:STDOUT:       inst60000139:    symbolic_constant600000FB
+// CHECK:STDOUT:       inst6000013A:    symbolic_constant600000FC
+// CHECK:STDOUT:       inst6000013B:    symbolic_constant600000FD
+// CHECK:STDOUT:       inst6000013C:    symbolic_constant60000101
+// CHECK:STDOUT:       inst6000013D:    symbolic_constant600000FE
+// CHECK:STDOUT:       inst6000013E:    symbolic_constant600000FF
+// CHECK:STDOUT:       inst6000013F:    symbolic_constant60000100
+// CHECK:STDOUT:       inst60000140:    symbolic_constant60000101
+// CHECK:STDOUT:       inst60000142:    symbolic_constant60000103
+// CHECK:STDOUT:       inst60000143:    symbolic_constant60000102
+// CHECK:STDOUT:       inst60000144:    symbolic_constant60000103
+// CHECK:STDOUT:       inst60000146:    symbolic_constant6000000F
 // CHECK:STDOUT:       inst6000014A:    concrete_constant(inst6000014B)
 // CHECK:STDOUT:       inst6000014B:    concrete_constant(inst6000014B)
 // CHECK:STDOUT:       inst6000014C:    concrete_constant(inst6000014B)
@@ -1023,251 +1023,251 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       symbolic_constant0000000C: {inst: inst6000003A, generic: generic<none>, index: generic_inst<none>, kind: checked}
 // CHECK:STDOUT:       symbolic_constant0000000D: {inst: inst6000003A, generic: generic60000000, index: generic_inst_in_def0, kind: checked}
 // CHECK:STDOUT:       symbolic_constant0000000E: {inst: inst6000003D, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000000F: {inst: inst6000003D, generic: generic60000000, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000010: {inst: inst60000048, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000011: {inst: inst60000052, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000012: {inst: inst60000053, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000013: {inst: inst60000053, generic: generic60000001, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000014: {inst: inst60000048, generic: generic60000001, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000015: {inst: inst60000052, generic: generic60000001, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000016: {inst: inst60000048, generic: generic60000001, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000017: {inst: inst60000052, generic: generic60000001, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000018: {inst: inst60000053, generic: generic60000001, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000019: {inst: inst6000005F, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000001A: {inst: inst60000060, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000001B: {inst: inst60000061, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000001C: {inst: inst60000061, generic: generic60000002, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000001D: {inst: inst6000005F, generic: generic60000002, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000001E: {inst: inst6000005F, generic: generic60000002, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000001F: {inst: inst60000060, generic: generic60000002, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000020: {inst: inst60000069, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000021: {inst: inst60000069, generic: generic60000002, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000022: {inst: inst6000005F, generic: generic60000002, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000023: {inst: inst60000060, generic: generic60000002, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000024: {inst: inst60000061, generic: generic60000002, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000025: {inst: inst60000069, generic: generic60000002, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000026: {inst: inst6000006F, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000027: {inst: inst60000070, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000028: {inst: inst60000070, generic: generic60000002, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000029: {inst: inst6000006F, generic: generic60000002, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000002A: {inst: inst60000071, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000002B: {inst: inst60000071, generic: generic60000003, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000002C: {inst: inst60000070, generic: generic60000002, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000002D: {inst: inst6000006F, generic: generic60000002, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000002E: {inst: inst60000070, generic: generic60000002, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000002F: {inst: inst6000005F, generic: generic60000003, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000030: {inst: inst60000060, generic: generic60000003, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000031: {inst: inst60000061, generic: generic60000003, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000032: {inst: inst6000005F, generic: generic60000003, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000033: {inst: inst60000060, generic: generic60000003, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000034: {inst: inst60000061, generic: generic60000003, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000035: {inst: inst60000071, generic: generic60000003, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000036: {inst: inst6000007D, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000037: {inst: inst6000007D, generic: generic60000003, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000038: {inst: inst6000007E, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000039: {inst: inst6000007E, generic: generic60000003, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000003A: {inst: inst6000007F, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000003B: {inst: inst6000007F, generic: generic60000003, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000003C: {inst: inst60000080, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000003D: {inst: inst60000080, generic: generic60000003, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000003E: {inst: inst60000081, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000003F: {inst: inst60000081, generic: generic60000003, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000040: {inst: inst60000082, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000041: {inst: inst60000082, generic: generic60000003, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000042: {inst: inst6000007D, generic: generic60000003, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000043: {inst: inst6000007E, generic: generic60000003, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000044: {inst: inst6000007F, generic: generic60000003, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000045: {inst: inst60000080, generic: generic60000003, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000046: {inst: inst60000081, generic: generic60000003, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000047: {inst: inst60000082, generic: generic60000003, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000048: {inst: inst60000089, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000049: {inst: inst6000001B, generic: generic60000004, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000004A: {inst: inst60000015, generic: generic60000004, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000004B: {inst: inst60000015, generic: generic60000004, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000004C: {inst: inst600000A2, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000004D: {inst: inst600000A2, generic: generic60000004, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000004E: {inst: inst60000015, generic: generic60000004, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000004F: {inst: inst6000001B, generic: generic60000004, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000050: {inst: inst600000A2, generic: generic60000004, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000051: {inst: inst600000A7, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000052: {inst: inst600000A8, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000053: {inst: inst600000A8, generic: generic60000004, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000054: {inst: inst600000A7, generic: generic60000004, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000055: {inst: inst6000001E, generic: generic60000005, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000056: {inst: inst600000A8, generic: generic60000004, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000057: {inst: inst6000003D, generic: generic60000004, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000058: {inst: inst600000A7, generic: generic60000004, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000059: {inst: inst600000A8, generic: generic60000004, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000005A: {inst: inst6000003D, generic: generic60000004, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000005B: {inst: inst60000015, generic: generic60000005, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000005C: {inst: inst6000001B, generic: generic60000005, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000005D: {inst: inst60000015, generic: generic60000005, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000005E: {inst: inst6000001B, generic: generic60000005, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000005F: {inst: inst6000001E, generic: generic60000005, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000060: {inst: inst600000BE, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000061: {inst: inst600000BF, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000062: {inst: inst600000C0, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000063: {inst: inst600000C0, generic: generic60000006, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000064: {inst: inst6000005F, generic: generic60000006, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000065: {inst: inst600000BE, generic: generic60000006, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000066: {inst: inst6000005F, generic: generic60000006, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000067: {inst: inst600000BE, generic: generic60000006, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000068: {inst: inst60000060, generic: generic60000006, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000069: {inst: inst600000BF, generic: generic60000006, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000006A: {inst: inst600000C9, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000006B: {inst: inst600000C9, generic: generic60000006, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000006C: {inst: inst6000005F, generic: generic60000006, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000006D: {inst: inst600000BE, generic: generic60000006, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000006E: {inst: inst60000060, generic: generic60000006, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000006F: {inst: inst600000BF, generic: generic60000006, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000070: {inst: inst600000C0, generic: generic60000006, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000071: {inst: inst600000C9, generic: generic60000006, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000072: {inst: inst600000D1, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000073: {inst: inst600000D2, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000074: {inst: inst600000D2, generic: generic60000006, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000075: {inst: inst600000D1, generic: generic60000006, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000076: {inst: inst600000D3, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000077: {inst: inst600000D3, generic: generic60000007, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000078: {inst: inst600000D2, generic: generic60000006, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000079: {inst: inst600000D1, generic: generic60000006, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000007A: {inst: inst600000D2, generic: generic60000006, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000007B: {inst: inst6000005F, generic: generic60000007, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000007C: {inst: inst60000060, generic: generic60000007, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000007D: {inst: inst600000BE, generic: generic60000007, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000007E: {inst: inst600000BF, generic: generic60000007, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000007F: {inst: inst600000C0, generic: generic60000007, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000080: {inst: inst6000005F, generic: generic60000007, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000081: {inst: inst60000060, generic: generic60000007, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000082: {inst: inst600000BE, generic: generic60000007, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000083: {inst: inst600000BF, generic: generic60000007, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000084: {inst: inst600000C0, generic: generic60000007, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000085: {inst: inst600000D3, generic: generic60000007, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000086: {inst: inst600000E2, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000087: {inst: inst600000E2, generic: generic60000007, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000088: {inst: inst6000007E, generic: generic60000007, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000089: {inst: inst6000007F, generic: generic60000007, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000008A: {inst: inst60000080, generic: generic60000007, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000008B: {inst: inst60000081, generic: generic60000007, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000008C: {inst: inst60000082, generic: generic60000007, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000008D: {inst: inst600000E3, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000008E: {inst: inst600000E3, generic: generic60000007, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000008F: {inst: inst600000E4, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000090: {inst: inst600000E4, generic: generic60000007, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000091: {inst: inst600000E5, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000092: {inst: inst600000E5, generic: generic60000007, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000093: {inst: inst600000E6, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000094: {inst: inst600000E6, generic: generic60000007, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000095: {inst: inst600000E7, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000096: {inst: inst600000E7, generic: generic60000007, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000097: {inst: inst600000E2, generic: generic60000007, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000098: {inst: inst6000007E, generic: generic60000007, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000099: {inst: inst6000007F, generic: generic60000007, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000009A: {inst: inst60000080, generic: generic60000007, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000009B: {inst: inst60000081, generic: generic60000007, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000009C: {inst: inst60000082, generic: generic60000007, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000009D: {inst: inst600000E3, generic: generic60000007, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000009E: {inst: inst600000E4, generic: generic60000007, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant0000009F: {inst: inst600000E5, generic: generic60000007, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A0: {inst: inst600000E6, generic: generic60000007, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A1: {inst: inst600000E7, generic: generic60000007, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A2: {inst: inst600000F3, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A3: {inst: inst600000F6, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A4: {inst: inst600000F7, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A5: {inst: inst600000F8, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A6: {inst: inst600000F8, generic: generic60000008, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A7: {inst: inst6000005F, generic: generic60000008, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A8: {inst: inst600000BE, generic: generic60000008, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000A9: {inst: inst600000F6, generic: generic60000008, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000AA: {inst: inst6000005F, generic: generic60000008, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000AB: {inst: inst600000BE, generic: generic60000008, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000AC: {inst: inst600000F6, generic: generic60000008, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000AD: {inst: inst60000060, generic: generic60000008, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000AE: {inst: inst600000BF, generic: generic60000008, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000AF: {inst: inst600000F7, generic: generic60000008, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B0: {inst: inst60000103, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B1: {inst: inst60000103, generic: generic60000008, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B2: {inst: inst6000005F, generic: generic60000008, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B3: {inst: inst600000BE, generic: generic60000008, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B4: {inst: inst600000F6, generic: generic60000008, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B5: {inst: inst60000060, generic: generic60000008, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B6: {inst: inst600000BF, generic: generic60000008, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B7: {inst: inst600000F7, generic: generic60000008, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B8: {inst: inst600000F8, generic: generic60000008, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000B9: {inst: inst60000103, generic: generic60000008, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000BA: {inst: inst6000010D, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000BB: {inst: inst6000010E, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000BC: {inst: inst6000010E, generic: generic60000008, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000BD: {inst: inst6000010D, generic: generic60000008, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000BE: {inst: inst6000010F, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000BF: {inst: inst6000010F, generic: generic60000009, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C0: {inst: inst6000010E, generic: generic60000008, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C1: {inst: inst6000010D, generic: generic60000008, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C2: {inst: inst6000010E, generic: generic60000008, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C3: {inst: inst6000005F, generic: generic60000009, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C4: {inst: inst60000060, generic: generic60000009, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C5: {inst: inst600000BE, generic: generic60000009, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C6: {inst: inst600000BF, generic: generic60000009, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C7: {inst: inst600000F6, generic: generic60000009, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C8: {inst: inst600000F7, generic: generic60000009, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000C9: {inst: inst600000F8, generic: generic60000009, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000CA: {inst: inst6000005F, generic: generic60000009, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000CB: {inst: inst60000060, generic: generic60000009, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000CC: {inst: inst600000BE, generic: generic60000009, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000CD: {inst: inst600000BF, generic: generic60000009, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000CE: {inst: inst600000F6, generic: generic60000009, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000CF: {inst: inst600000F7, generic: generic60000009, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D0: {inst: inst600000F8, generic: generic60000009, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D1: {inst: inst6000010F, generic: generic60000009, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D2: {inst: inst60000121, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D3: {inst: inst60000121, generic: generic60000009, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D4: {inst: inst6000007E, generic: generic60000009, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D5: {inst: inst6000007F, generic: generic60000009, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D6: {inst: inst60000080, generic: generic60000009, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D7: {inst: inst60000081, generic: generic60000009, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D8: {inst: inst60000082, generic: generic60000009, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000D9: {inst: inst600000E3, generic: generic60000009, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000DA: {inst: inst600000E4, generic: generic60000009, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000DB: {inst: inst600000E5, generic: generic60000009, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000DC: {inst: inst600000E6, generic: generic60000009, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000DD: {inst: inst600000E7, generic: generic60000009, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000DE: {inst: inst60000122, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000DF: {inst: inst60000122, generic: generic60000009, index: generic_inst_in_def11, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E0: {inst: inst60000123, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E1: {inst: inst60000123, generic: generic60000009, index: generic_inst_in_def12, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E2: {inst: inst60000124, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E3: {inst: inst60000124, generic: generic60000009, index: generic_inst_in_def13, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E4: {inst: inst60000125, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E5: {inst: inst60000125, generic: generic60000009, index: generic_inst_in_def14, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E6: {inst: inst60000126, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E7: {inst: inst60000126, generic: generic60000009, index: generic_inst_in_def15, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E8: {inst: inst60000121, generic: generic60000009, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000E9: {inst: inst6000007E, generic: generic60000009, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000EA: {inst: inst6000007F, generic: generic60000009, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000EB: {inst: inst60000080, generic: generic60000009, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000EC: {inst: inst60000081, generic: generic60000009, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000ED: {inst: inst60000082, generic: generic60000009, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000EE: {inst: inst600000E3, generic: generic60000009, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000EF: {inst: inst600000E4, generic: generic60000009, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F0: {inst: inst600000E5, generic: generic60000009, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F1: {inst: inst600000E6, generic: generic60000009, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F2: {inst: inst600000E7, generic: generic60000009, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F3: {inst: inst60000122, generic: generic60000009, index: generic_inst_in_def11, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F4: {inst: inst60000123, generic: generic60000009, index: generic_inst_in_def12, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F5: {inst: inst60000124, generic: generic60000009, index: generic_inst_in_def13, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F6: {inst: inst60000125, generic: generic60000009, index: generic_inst_in_def14, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F7: {inst: inst60000126, generic: generic60000009, index: generic_inst_in_def15, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F8: {inst: inst60000137, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000F9: {inst: inst600000A2, generic: generic60000004, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000FA: {inst: inst60000138, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000FB: {inst: inst60000138, generic: generic60000000, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000FC: {inst: inst6000013A, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000FD: {inst: inst6000013B, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000FE: {inst: inst6000013D, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant000000FF: {inst: inst6000013A, generic: generic60000000, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000100: {inst: inst6000013B, generic: generic60000000, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000101: {inst: inst6000013D, generic: generic60000000, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000102: {inst: inst60000143, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant00000103: {inst: inst60000143, generic: generic60000000, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000000F: {inst: inst6000003D, generic: generic60000000, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000010: {inst: inst60000048, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000011: {inst: inst60000052, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000012: {inst: inst60000053, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000013: {inst: inst60000053, generic: generic60000001, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000014: {inst: inst60000048, generic: generic60000001, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000015: {inst: inst60000052, generic: generic60000001, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000016: {inst: inst60000048, generic: generic60000001, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000017: {inst: inst60000052, generic: generic60000001, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000018: {inst: inst60000053, generic: generic60000001, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000019: {inst: inst6000005F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000001A: {inst: inst60000060, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000001B: {inst: inst60000061, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000001C: {inst: inst60000061, generic: generic60000002, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000001D: {inst: inst6000005F, generic: generic60000002, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000001E: {inst: inst6000005F, generic: generic60000002, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000001F: {inst: inst60000060, generic: generic60000002, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000020: {inst: inst60000069, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000021: {inst: inst60000069, generic: generic60000002, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000022: {inst: inst6000005F, generic: generic60000002, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000023: {inst: inst60000060, generic: generic60000002, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000024: {inst: inst60000061, generic: generic60000002, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000025: {inst: inst60000069, generic: generic60000002, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000026: {inst: inst6000006F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000027: {inst: inst60000070, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000028: {inst: inst60000070, generic: generic60000002, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000029: {inst: inst6000006F, generic: generic60000002, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000002A: {inst: inst60000071, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000002B: {inst: inst60000071, generic: generic60000003, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000002C: {inst: inst60000070, generic: generic60000002, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000002D: {inst: inst6000006F, generic: generic60000002, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000002E: {inst: inst60000070, generic: generic60000002, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000002F: {inst: inst6000005F, generic: generic60000003, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000030: {inst: inst60000060, generic: generic60000003, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000031: {inst: inst60000061, generic: generic60000003, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000032: {inst: inst6000005F, generic: generic60000003, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000033: {inst: inst60000060, generic: generic60000003, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000034: {inst: inst60000061, generic: generic60000003, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000035: {inst: inst60000071, generic: generic60000003, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000036: {inst: inst6000007D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000037: {inst: inst6000007D, generic: generic60000003, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000038: {inst: inst6000007E, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000039: {inst: inst6000007E, generic: generic60000003, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000003A: {inst: inst6000007F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000003B: {inst: inst6000007F, generic: generic60000003, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000003C: {inst: inst60000080, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000003D: {inst: inst60000080, generic: generic60000003, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000003E: {inst: inst60000081, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000003F: {inst: inst60000081, generic: generic60000003, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000040: {inst: inst60000082, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000041: {inst: inst60000082, generic: generic60000003, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000042: {inst: inst6000007D, generic: generic60000003, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000043: {inst: inst6000007E, generic: generic60000003, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000044: {inst: inst6000007F, generic: generic60000003, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000045: {inst: inst60000080, generic: generic60000003, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000046: {inst: inst60000081, generic: generic60000003, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000047: {inst: inst60000082, generic: generic60000003, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000048: {inst: inst60000089, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000049: {inst: inst6000001B, generic: generic60000004, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000004A: {inst: inst60000015, generic: generic60000004, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000004B: {inst: inst60000015, generic: generic60000004, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000004C: {inst: inst600000A2, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000004D: {inst: inst600000A2, generic: generic60000004, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000004E: {inst: inst60000015, generic: generic60000004, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000004F: {inst: inst6000001B, generic: generic60000004, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000050: {inst: inst600000A2, generic: generic60000004, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000051: {inst: inst600000A7, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000052: {inst: inst600000A8, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000053: {inst: inst600000A8, generic: generic60000004, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000054: {inst: inst600000A7, generic: generic60000004, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000055: {inst: inst6000001E, generic: generic60000005, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000056: {inst: inst600000A8, generic: generic60000004, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000057: {inst: inst6000003D, generic: generic60000004, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000058: {inst: inst600000A7, generic: generic60000004, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000059: {inst: inst600000A8, generic: generic60000004, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000005A: {inst: inst6000003D, generic: generic60000004, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000005B: {inst: inst60000015, generic: generic60000005, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000005C: {inst: inst6000001B, generic: generic60000005, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000005D: {inst: inst60000015, generic: generic60000005, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000005E: {inst: inst6000001B, generic: generic60000005, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000005F: {inst: inst6000001E, generic: generic60000005, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000060: {inst: inst600000BE, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000061: {inst: inst600000BF, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000062: {inst: inst600000C0, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000063: {inst: inst600000C0, generic: generic60000006, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000064: {inst: inst6000005F, generic: generic60000006, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000065: {inst: inst600000BE, generic: generic60000006, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000066: {inst: inst6000005F, generic: generic60000006, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000067: {inst: inst600000BE, generic: generic60000006, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000068: {inst: inst60000060, generic: generic60000006, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000069: {inst: inst600000BF, generic: generic60000006, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000006A: {inst: inst600000C9, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000006B: {inst: inst600000C9, generic: generic60000006, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000006C: {inst: inst6000005F, generic: generic60000006, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000006D: {inst: inst600000BE, generic: generic60000006, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000006E: {inst: inst60000060, generic: generic60000006, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000006F: {inst: inst600000BF, generic: generic60000006, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000070: {inst: inst600000C0, generic: generic60000006, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000071: {inst: inst600000C9, generic: generic60000006, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000072: {inst: inst600000D1, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000073: {inst: inst600000D2, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000074: {inst: inst600000D2, generic: generic60000006, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000075: {inst: inst600000D1, generic: generic60000006, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000076: {inst: inst600000D3, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000077: {inst: inst600000D3, generic: generic60000007, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000078: {inst: inst600000D2, generic: generic60000006, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000079: {inst: inst600000D1, generic: generic60000006, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000007A: {inst: inst600000D2, generic: generic60000006, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000007B: {inst: inst6000005F, generic: generic60000007, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000007C: {inst: inst60000060, generic: generic60000007, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000007D: {inst: inst600000BE, generic: generic60000007, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000007E: {inst: inst600000BF, generic: generic60000007, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000007F: {inst: inst600000C0, generic: generic60000007, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000080: {inst: inst6000005F, generic: generic60000007, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000081: {inst: inst60000060, generic: generic60000007, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000082: {inst: inst600000BE, generic: generic60000007, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000083: {inst: inst600000BF, generic: generic60000007, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000084: {inst: inst600000C0, generic: generic60000007, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000085: {inst: inst600000D3, generic: generic60000007, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000086: {inst: inst600000E2, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000087: {inst: inst600000E2, generic: generic60000007, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000088: {inst: inst6000007E, generic: generic60000007, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000089: {inst: inst6000007F, generic: generic60000007, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000008A: {inst: inst60000080, generic: generic60000007, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000008B: {inst: inst60000081, generic: generic60000007, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000008C: {inst: inst60000082, generic: generic60000007, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000008D: {inst: inst600000E3, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000008E: {inst: inst600000E3, generic: generic60000007, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000008F: {inst: inst600000E4, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000090: {inst: inst600000E4, generic: generic60000007, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000091: {inst: inst600000E5, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000092: {inst: inst600000E5, generic: generic60000007, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000093: {inst: inst600000E6, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000094: {inst: inst600000E6, generic: generic60000007, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000095: {inst: inst600000E7, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000096: {inst: inst600000E7, generic: generic60000007, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000097: {inst: inst600000E2, generic: generic60000007, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000098: {inst: inst6000007E, generic: generic60000007, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000099: {inst: inst6000007F, generic: generic60000007, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000009A: {inst: inst60000080, generic: generic60000007, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000009B: {inst: inst60000081, generic: generic60000007, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000009C: {inst: inst60000082, generic: generic60000007, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000009D: {inst: inst600000E3, generic: generic60000007, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000009E: {inst: inst600000E4, generic: generic60000007, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6000009F: {inst: inst600000E5, generic: generic60000007, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A0: {inst: inst600000E6, generic: generic60000007, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A1: {inst: inst600000E7, generic: generic60000007, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A2: {inst: inst600000F3, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A3: {inst: inst600000F6, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A4: {inst: inst600000F7, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A5: {inst: inst600000F8, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A6: {inst: inst600000F8, generic: generic60000008, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A7: {inst: inst6000005F, generic: generic60000008, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A8: {inst: inst600000BE, generic: generic60000008, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000A9: {inst: inst600000F6, generic: generic60000008, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000AA: {inst: inst6000005F, generic: generic60000008, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000AB: {inst: inst600000BE, generic: generic60000008, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000AC: {inst: inst600000F6, generic: generic60000008, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000AD: {inst: inst60000060, generic: generic60000008, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000AE: {inst: inst600000BF, generic: generic60000008, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000AF: {inst: inst600000F7, generic: generic60000008, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B0: {inst: inst60000103, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B1: {inst: inst60000103, generic: generic60000008, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B2: {inst: inst6000005F, generic: generic60000008, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B3: {inst: inst600000BE, generic: generic60000008, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B4: {inst: inst600000F6, generic: generic60000008, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B5: {inst: inst60000060, generic: generic60000008, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B6: {inst: inst600000BF, generic: generic60000008, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B7: {inst: inst600000F7, generic: generic60000008, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B8: {inst: inst600000F8, generic: generic60000008, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000B9: {inst: inst60000103, generic: generic60000008, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000BA: {inst: inst6000010D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000BB: {inst: inst6000010E, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000BC: {inst: inst6000010E, generic: generic60000008, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000BD: {inst: inst6000010D, generic: generic60000008, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000BE: {inst: inst6000010F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000BF: {inst: inst6000010F, generic: generic60000009, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C0: {inst: inst6000010E, generic: generic60000008, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C1: {inst: inst6000010D, generic: generic60000008, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C2: {inst: inst6000010E, generic: generic60000008, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C3: {inst: inst6000005F, generic: generic60000009, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C4: {inst: inst60000060, generic: generic60000009, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C5: {inst: inst600000BE, generic: generic60000009, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C6: {inst: inst600000BF, generic: generic60000009, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C7: {inst: inst600000F6, generic: generic60000009, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C8: {inst: inst600000F7, generic: generic60000009, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000C9: {inst: inst600000F8, generic: generic60000009, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000CA: {inst: inst6000005F, generic: generic60000009, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000CB: {inst: inst60000060, generic: generic60000009, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000CC: {inst: inst600000BE, generic: generic60000009, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000CD: {inst: inst600000BF, generic: generic60000009, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000CE: {inst: inst600000F6, generic: generic60000009, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000CF: {inst: inst600000F7, generic: generic60000009, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D0: {inst: inst600000F8, generic: generic60000009, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D1: {inst: inst6000010F, generic: generic60000009, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D2: {inst: inst60000121, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D3: {inst: inst60000121, generic: generic60000009, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D4: {inst: inst6000007E, generic: generic60000009, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D5: {inst: inst6000007F, generic: generic60000009, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D6: {inst: inst60000080, generic: generic60000009, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D7: {inst: inst60000081, generic: generic60000009, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D8: {inst: inst60000082, generic: generic60000009, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000D9: {inst: inst600000E3, generic: generic60000009, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000DA: {inst: inst600000E4, generic: generic60000009, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000DB: {inst: inst600000E5, generic: generic60000009, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000DC: {inst: inst600000E6, generic: generic60000009, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000DD: {inst: inst600000E7, generic: generic60000009, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000DE: {inst: inst60000122, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000DF: {inst: inst60000122, generic: generic60000009, index: generic_inst_in_def11, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E0: {inst: inst60000123, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E1: {inst: inst60000123, generic: generic60000009, index: generic_inst_in_def12, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E2: {inst: inst60000124, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E3: {inst: inst60000124, generic: generic60000009, index: generic_inst_in_def13, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E4: {inst: inst60000125, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E5: {inst: inst60000125, generic: generic60000009, index: generic_inst_in_def14, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E6: {inst: inst60000126, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E7: {inst: inst60000126, generic: generic60000009, index: generic_inst_in_def15, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E8: {inst: inst60000121, generic: generic60000009, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000E9: {inst: inst6000007E, generic: generic60000009, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000EA: {inst: inst6000007F, generic: generic60000009, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000EB: {inst: inst60000080, generic: generic60000009, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000EC: {inst: inst60000081, generic: generic60000009, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000ED: {inst: inst60000082, generic: generic60000009, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000EE: {inst: inst600000E3, generic: generic60000009, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000EF: {inst: inst600000E4, generic: generic60000009, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F0: {inst: inst600000E5, generic: generic60000009, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F1: {inst: inst600000E6, generic: generic60000009, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F2: {inst: inst600000E7, generic: generic60000009, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F3: {inst: inst60000122, generic: generic60000009, index: generic_inst_in_def11, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F4: {inst: inst60000123, generic: generic60000009, index: generic_inst_in_def12, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F5: {inst: inst60000124, generic: generic60000009, index: generic_inst_in_def13, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F6: {inst: inst60000125, generic: generic60000009, index: generic_inst_in_def14, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F7: {inst: inst60000126, generic: generic60000009, index: generic_inst_in_def15, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F8: {inst: inst60000137, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000F9: {inst: inst600000A2, generic: generic60000004, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000FA: {inst: inst60000138, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000FB: {inst: inst60000138, generic: generic60000000, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000FC: {inst: inst6000013A, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000FD: {inst: inst6000013B, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000FE: {inst: inst6000013D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant600000FF: {inst: inst6000013A, generic: generic60000000, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000100: {inst: inst6000013B, generic: generic60000000, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000101: {inst: inst6000013D, generic: generic60000000, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000102: {inst: inst60000143, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60000103: {inst: inst60000143, generic: generic60000000, index: generic_inst_in_def6, kind: checked}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:

+ 1 - 0
toolchain/sem_ir/constant.h

@@ -121,6 +121,7 @@ class ConstantValueStore {
   explicit ConstantValueStore(ConstantId default_value, const InstStore* insts)
       : default_(default_value),
         values_((CARBON_CHECK(insts), insts->GetIdTag())),
+        symbolic_constants_(insts->GetIdTag()),
         insts_(insts) {}
 
   // Returns the constant value of the requested instruction, which is default_