Selaa lähdekoodia

Change InstId dumping to hex numbers that include the tag (#6175)

This change makes dumping and debugging work again with InstIds that are
now tagged with the CheckIRId. The textual representation of an InstId
is changed from `irN.instM` back to `instM` but the `M` is now a hex
value with the tag as part of it, which is the same number that is
physically in the `InstId::index` field. This prevents any cases where
we would potentially print incorrect values for large InstIds.

We teach the `dump` command in lldb to parse hex values for InstId so
that we can paste these numbers back into the debugger.
Dana Jansens 6 kuukautta sitten
vanhempi
sitoutus
93b79f159e
84 muutettua tiedostoa jossa 2511 lisäystä ja 2470 poistoa
  1. 33 35
      scripts/lldbinit.py
  2. 11 0
      toolchain/base/index_base.h
  3. 79 45
      toolchain/base/value_store.h
  4. 6 6
      toolchain/check/testdata/alias/export_name.carbon
  5. 3 3
      toolchain/check/testdata/alias/import.carbon
  6. 1 1
      toolchain/check/testdata/alias/import_access.carbon
  7. 1 1
      toolchain/check/testdata/alias/import_order.carbon
  8. 3 3
      toolchain/check/testdata/basics/include_in_dumps.carbon
  9. 4 4
      toolchain/check/testdata/basics/raw_sem_ir/builtins.carbon
  10. 179 179
      toolchain/check/testdata/basics/raw_sem_ir/cpp_interop.carbon
  11. 67 67
      toolchain/check/testdata/basics/raw_sem_ir/multifile.carbon
  12. 67 67
      toolchain/check/testdata/basics/raw_sem_ir/multifile_with_textual_ir.carbon
  13. 1530 1530
      toolchain/check/testdata/basics/raw_sem_ir/one_file.carbon
  14. 123 123
      toolchain/check/testdata/basics/raw_sem_ir/one_file_with_textual_ir.carbon
  15. 1 1
      toolchain/check/testdata/basics/verbose.carbon
  16. 3 3
      toolchain/check/testdata/class/cross_package_import.carbon
  17. 3 3
      toolchain/check/testdata/class/export_name.carbon
  18. 2 2
      toolchain/check/testdata/class/extern.carbon
  19. 1 1
      toolchain/check/testdata/class/fail_abstract_in_struct.carbon
  20. 1 1
      toolchain/check/testdata/class/fail_abstract_in_tuple.carbon
  21. 5 5
      toolchain/check/testdata/class/generic/adapt.carbon
  22. 5 5
      toolchain/check/testdata/class/generic/base_is_generic.carbon
  23. 4 4
      toolchain/check/testdata/class/generic/import.carbon
  24. 2 2
      toolchain/check/testdata/class/implicit_import.carbon
  25. 4 4
      toolchain/check/testdata/class/import.carbon
  26. 2 2
      toolchain/check/testdata/class/import_access.carbon
  27. 2 2
      toolchain/check/testdata/class/import_base.carbon
  28. 8 8
      toolchain/check/testdata/class/import_indirect.carbon
  29. 1 1
      toolchain/check/testdata/class/import_member_cycle.carbon
  30. 1 1
      toolchain/check/testdata/class/import_struct_cyle.carbon
  31. 19 19
      toolchain/check/testdata/class/indirect_import_member.carbon
  32. 2 2
      toolchain/check/testdata/class/syntactic_merge.carbon
  33. 5 5
      toolchain/check/testdata/class/virtual_modifiers.carbon
  34. 1 1
      toolchain/check/testdata/const/import.carbon
  35. 3 3
      toolchain/check/testdata/for/actual.carbon
  36. 2 2
      toolchain/check/testdata/for/basic.carbon
  37. 8 8
      toolchain/check/testdata/for/pattern.carbon
  38. 6 6
      toolchain/check/testdata/function/builtin/call_from_operator.carbon
  39. 1 1
      toolchain/check/testdata/function/declaration/fail_import_incomplete_return.carbon
  40. 2 2
      toolchain/check/testdata/function/definition/syntactic_merge.carbon
  41. 1 1
      toolchain/check/testdata/function/generic/fail_deduce_imported_function.carbon
  42. 2 2
      toolchain/check/testdata/if_expr/fail_not_in_function.carbon
  43. 4 4
      toolchain/check/testdata/impl/compound.carbon
  44. 4 4
      toolchain/check/testdata/impl/import_builtin_call.carbon
  45. 10 10
      toolchain/check/testdata/impl/import_compound.carbon
  46. 3 3
      toolchain/check/testdata/impl/import_extend_impl.carbon
  47. 4 4
      toolchain/check/testdata/impl/import_generic.carbon
  48. 28 28
      toolchain/check/testdata/impl/import_interface_assoc_const.carbon
  49. 2 2
      toolchain/check/testdata/impl/import_self.carbon
  50. 6 6
      toolchain/check/testdata/impl/import_thunk.carbon
  51. 3 3
      toolchain/check/testdata/impl/import_use_generic.carbon
  52. 19 19
      toolchain/check/testdata/impl/interface_args.carbon
  53. 46 46
      toolchain/check/testdata/impl/lookup/import.carbon
  54. 16 16
      toolchain/check/testdata/impl/lookup/specific_args.carbon
  55. 7 7
      toolchain/check/testdata/impl/lookup/transitive.carbon
  56. 3 3
      toolchain/check/testdata/impl/no_definition_in_impl_file.carbon
  57. 2 2
      toolchain/check/testdata/interface/export_name.carbon
  58. 2 2
      toolchain/check/testdata/interface/generic_import.carbon
  59. 3 3
      toolchain/check/testdata/interface/import.carbon
  60. 2 2
      toolchain/check/testdata/interface/import_access.carbon
  61. 1 1
      toolchain/check/testdata/interface/import_interface_decl.carbon
  62. 2 2
      toolchain/check/testdata/interface/syntactic_merge.carbon
  63. 2 2
      toolchain/check/testdata/let/compile_time_bindings.carbon
  64. 1 1
      toolchain/check/testdata/let/fail_missing_value.carbon
  65. 3 3
      toolchain/check/testdata/namespace/merging_with_indirections.carbon
  66. 8 8
      toolchain/check/testdata/operators/builtin/fail_and_or_not_in_function.carbon
  67. 3 3
      toolchain/check/testdata/operators/overloaded/index.carbon
  68. 23 23
      toolchain/check/testdata/packages/cross_package_export.carbon
  69. 10 10
      toolchain/check/testdata/packages/export_import.carbon
  70. 18 18
      toolchain/check/testdata/packages/export_mixed.carbon
  71. 40 40
      toolchain/check/testdata/packages/export_name.carbon
  72. 1 1
      toolchain/check/testdata/packages/fail_export_name_member.carbon
  73. 7 7
      toolchain/check/testdata/packages/implicit_imports_entities.carbon
  74. 1 1
      toolchain/check/testdata/pointer/import.carbon
  75. 2 2
      toolchain/check/testdata/return/import_convert_function.carbon
  76. 1 1
      toolchain/check/testdata/struct/import.carbon
  77. 1 1
      toolchain/check/testdata/tuple/import.carbon
  78. 4 4
      toolchain/driver/testdata/stdin.carbon
  79. 3 0
      toolchain/sem_ir/file.cpp
  80. 2 4
      toolchain/sem_ir/formatter.cpp
  81. 1 6
      toolchain/sem_ir/ids.cpp
  82. 3 0
      toolchain/sem_ir/inst.h
  83. 4 5
      toolchain/sem_ir/yaml_test.cpp
  84. 2 2
      toolchain/testing/file_test.cpp

+ 33 - 35
scripts/lldbinit.py

@@ -44,7 +44,7 @@ def cmd_dump(debugger: Any, command: Any, result: Any, dict: Any) -> None:
 Dumps the value of an associated ID, using the C++ Dump() functions.
 
 Usage:
-  dump <CONTEXT> [<EXPR>|-- <EXPR>|<TYPE><ID>|<TYPE> <ID>]
+  dump <CONTEXT> [<EXPR>|-- <EXPR>|<TYPE><ID>]
 
 Args:
   CONTEXT is the dump context, such a SemIR::Context reference, a SemIR::File,
@@ -55,7 +55,8 @@ Args:
        the `Label` string in `IdBase` classes to find possible TYPE names,
        though only Id types that have a matching `Make...Id()` function are
        supported.
-  ID is an integer number, such as `42`.
+  ID is an integer number, such as `42`. This can be in hex (without the typical
+       0x prefix), such as `6000A`.
 
 Example usage:
   # Dumps the `inst_id` local variable, with a `context` local variable.
@@ -74,26 +75,30 @@ Example usage:
 
     context = args[0]
 
-    # The set of "Make" functions in dump.cpp.
+    DECIMAL = 10
+    HEX = 16
+
+    # The set of "Make" functions in dump.cpp, and whether the ids are printed
+    # in decimal or hex.
     id_types = {
-        "class": "SemIR::MakeClassId",
-        "constant": "SemIR::MakeConstantId",
-        "symbolic_constant": "SemIR::MakeSymbolicConstantId",
-        "entity_name": "SemIR::MakeEntityNameId",
-        "facet_type": "SemIR::MakeFacetTypeId",
-        "function": "SemIR::MakeFunctionId",
-        "generic": "SemIR::MakeGenericId",
-        "impl": "SemIR::MakeImplId",
-        "inst_block": "SemIR::MakeInstBlockId",
-        "inst": "SemIR::MakeInstId",
-        "interface": "SemIR::MakeInterfaceId",
-        "name": "SemIR::MakeNameId",
-        "name_scope": "SemIR::MakeNameScopeId",
-        "identified_facet_type": "SemIR::MakeIdentifiedFacetTypeId",
-        "specific": "SemIR::MakeSpecificId",
-        "specific_interface": "SemIR::MakeSpecificInterfaceId",
-        "struct_type_fields": "SemIR::MakeStructTypeFieldsId",
-        "type": "SemIR::MakeTypeId",
+        "class": ("SemIR::MakeClassId", DECIMAL),
+        "constant": ("SemIR::MakeConstantId", DECIMAL),
+        "symbolic_constant": ("SemIR::MakeSymbolicConstantId", DECIMAL),
+        "entity_name": ("SemIR::MakeEntityNameId", DECIMAL),
+        "facet_type": ("SemIR::MakeFacetTypeId", DECIMAL),
+        "function": ("SemIR::MakeFunctionId", DECIMAL),
+        "generic": ("SemIR::MakeGenericId", DECIMAL),
+        "impl": ("SemIR::MakeImplId", DECIMAL),
+        "inst_block": ("SemIR::MakeInstBlockId", DECIMAL),
+        "inst": ("SemIR::MakeInstId", HEX),
+        "interface": ("SemIR::MakeInterfaceId", DECIMAL),
+        "name": ("SemIR::MakeNameId", DECIMAL),
+        "name_scope": ("SemIR::MakeNameScopeId", DECIMAL),
+        "identified_facet_type": ("SemIR::MakeIdentifiedFacetTypeId", DECIMAL),
+        "specific": ("SemIR::MakeSpecificId", DECIMAL),
+        "specific_interface": ("SemIR::MakeSpecificInterfaceId", DECIMAL),
+        "struct_type_fields": ("SemIR::MakeStructTypeFieldsId", DECIMAL),
+        "type": ("SemIR::MakeTypeId", DECIMAL),
     }
 
     def print_dump(context: str, expr: str) -> None:
@@ -110,27 +115,20 @@ Example usage:
 
     # Try to find a type + id from the input args. If not, the id will be passed
     # through directly to C++, as it can be a variable name.
-    id_type = None
+    found_id_type = False
 
     # Look for <type><id> as a single argument.
-    if m := re.fullmatch("([a-z_]+)(\\d+)", args[1]):
+    if m := re.fullmatch("([a-z_]+)([0-9A-Fa-f]+)", args[1]):
         if m[1] in id_types:
             if len(args) != 2:
                 print_usage()
                 return
-            id_type = m[1]
-            print_dump(context, f"{id_types[id_type]}({m[2]})")
-
-    # Look for <type> <id> as two arguments.
-    if not id_type:
-        if args[1] in id_types:
-            if len(args) != 3:
-                print_usage()
-                return
-            id_type = args[1]
-            print_dump(context, f"{id_types[id_type]}({args[2]})")
+            (make_id_fn, base) = id_types[m[1]]
+            id = int(m[2], base)
+            print_dump(context, f"{make_id_fn}({id})")
+            found_id_type = True
 
-    if not id_type:
+    if not found_id_type:
         # Use `--` to escape a variable name like `inst22`.
         if args[1] == "--":
             expr = " ".join(args[2:])

+ 11 - 0
toolchain/base/index_base.h

@@ -12,6 +12,7 @@
 
 #include "common/ostream.h"
 #include "llvm/ADT/iterator.h"
+#include "llvm/Support/Format.h"
 
 namespace Carbon {
 
@@ -64,6 +65,16 @@ struct IdBase : public AnyIdBase, public Printable<IdT> {
     }
   }
 
+  // TODO: Make Print() do the hex thing for all IDs and remove this function.
+  auto PrintHex(llvm::raw_ostream& out) const -> void {
+    out << IdT::Label;
+    if (has_value()) {
+      out << llvm::format_hex_no_prefix(index, 8, /*Upper=*/true);
+    } else {
+      out << "<none>";
+    }
+  }
+
   // Support simple equality comparison for ID types.
   friend constexpr auto operator==(IdBase<IdT> lhs, IdBase<IdT> rhs) -> bool {
     return lhs.index == rhs.index;

+ 79 - 45
toolchain/base/value_store.h

@@ -33,37 +33,71 @@ class ValueStoreNotPrintable {};
 }  // namespace Internal
 
 struct IdTag {
-  IdTag()
-      : id_tag_(0),
-        initial_reserved_ids_(std::numeric_limits<int32_t>::max()) {}
+  IdTag() = default;
+
   explicit IdTag(int32_t id_index, int32_t initial_reserved_ids)
-      : initial_reserved_ids_(initial_reserved_ids) {
-    // Shift down by 1 to get out of the high bit to avoid using any negative
-    // ids, since they have special uses.
-    // Shift down by another 1 to free up the second highest bit for a marker to
-    // indicate whether the index is tagged (& needs to be untagged) or not.
-    // Add one to the index so it's not zero-based, to make it a bit less likely
-    // this doesn't collide with anything else (though with the
-    // second-highest-bit-tagging this might not be needed).
-    id_tag_ = llvm::reverseBits((((id_index + 1) << 1) | 1) << 1);
-  }
-  auto GetCheckIRId() const -> int32_t {
-    return (llvm::reverseBits(id_tag_) >> 2) - 1;
-  }
+      :  // Shift down by 1 to get out of the high bit to avoid using any
+         // negative ids, since they have special uses. Shift down by another 1
+         // to free up the second highest bit for a marker to indicate whether
+         // the index is tagged (& needs to be untagged) or not. Add one to the
+         // index so it's not zero-based, to make it a bit less likely this
+         // doesn't collide with anything else (though with the
+         // second-highest-bit-tagging this might not be needed).
+        id_tag_(llvm::reverseBits((((id_index + 1) << 1) | 1) << 1)),
+        initial_reserved_ids_(initial_reserved_ids) {}
+
   auto Apply(int32_t index) const -> int32_t {
     if (index < initial_reserved_ids_) {
       return index;
     }
-    // assert that id_tag_ doesn't have the second highest bit set
+    // TODO: Assert that id_tag_ doesn't have the second highest bit set.
     return index ^ id_tag_;
   }
+
+  auto Remove(int32_t tagged_index) const -> int32_t {
+    if (!HasTag(tagged_index)) {
+      CARBON_DCHECK(tagged_index < initial_reserved_ids_,
+                    "This untagged index is outside the initial reserved ids "
+                    "and should have been tagged.");
+      return tagged_index;
+    }
+    auto index = tagged_index ^ id_tag_;
+    CARBON_DCHECK(index >= initial_reserved_ids_,
+                  "When removing tagging bits, found an index that "
+                  "shouldn't've been tagged in the first place.");
+    return index;
+  }
+
+  // Gets the value unique to this IdTag instance that is added to indices in
+  // Apply, and removed in Remove.
+  auto GetContainerTag() const -> int32_t {
+    return (llvm::reverseBits(id_tag_) >> 2) - 1;
+  }
+
+  // Returns whether `tagged_index` has an IdTag applied to it, from this IdTag
+  // instance or any other one.
+  static auto HasTag(int32_t tagged_index) -> bool {
+    return (llvm::reverseBits(2) & tagged_index) != 0;
+  }
+
+  template <class TagT>
+  struct TagAndIndex {
+    int32_t tag;
+    int32_t index;
+  };
+
+  template <typename TagT>
   static auto DecomposeWithBestEffort(int32_t tagged_index)
-      -> std::pair<int32_t, int32_t> {
+      -> TagAndIndex<TagT> {
     if (tagged_index < 0) {
-      return {-1, tagged_index};
+      // TODO: This should return TagT::None, but we need a fallback TagT other
+      // than `int32_t`.
+      return {TagT{-1}, tagged_index};
     }
-    if ((llvm::reverseBits(2) & tagged_index) == 0) {
-      return {-1, tagged_index};
+    if (!HasTag(tagged_index)) {
+      // TODO: This should return TagT::None, but we need a fallback TagT other
+      // than `int32_t`.
+      return {TagT{-1}, tagged_index};
     }
     int length = 0;
     int location = 0;
@@ -83,28 +117,20 @@ struct IdTag {
       }
     }
     if (length < 8) {
-      return {-1, tagged_index};
+      // TODO: This should return TagT::None, but we need a fallback TagT other
+      // than `int32_t`.
+      return {TagT{-1}, tagged_index};
     }
     auto index_mask = llvm::maskTrailingOnes<uint32_t>(location);
-    auto ir_id = (llvm::reverseBits(tagged_index & ~index_mask) >> 2) - 1;
+    auto tag = (llvm::reverseBits(tagged_index & ~index_mask) >> 2) - 1;
     auto index = tagged_index & index_mask;
-    return {ir_id, index};
-  }
-  auto Remove(int32_t tagged_index) const -> int32_t {
-    if ((llvm::reverseBits(2) & tagged_index) == 0) {
-      CARBON_DCHECK(tagged_index < initial_reserved_ids_,
-                    "This untagged index is outside the initial reserved ids "
-                    "and should have been tagged.");
-      return tagged_index;
-    }
-    auto index = tagged_index ^ id_tag_;
-    CARBON_DCHECK(index >= initial_reserved_ids_,
-                  "When removing tagging bits, found an index that "
-                  "shouldn't've been tagged in the first place.");
-    return index;
+    return {.tag = TagT{static_cast<int32_t>(tag)},
+            .index = static_cast<int32_t>(index)};
   }
-  int32_t id_tag_;
-  int32_t initial_reserved_ids_;
+
+ private:
+  int32_t id_tag_ = 0;
+  int32_t initial_reserved_ids_ = std::numeric_limits<int32_t>::max();
 };
 
 // A simple wrapper for accumulating values, providing IDs to later retrieve the
@@ -175,12 +201,14 @@ class ValueStore
 
   // Returns a mutable value for an ID.
   auto Get(IdType id) -> RefType {
+    CARBON_DCHECK(id.index >= 0, "{0}", id);
     auto [chunk_index, pos] = IdToChunkIndices(id);
     return chunks_[chunk_index].Get(pos);
   }
 
   // Returns the value for an ID.
   auto Get(IdType id) const -> ConstRefType {
+    CARBON_DCHECK(id.index >= 0, "{0}", id);
     auto [chunk_index, pos] = IdToChunkIndices(id);
     return chunks_[chunk_index].Get(pos);
   }
@@ -276,16 +304,22 @@ class ValueStore
   auto GetRawIndex(IdT id) const -> int32_t {
     auto index = tag_.Remove(id.index);
     CARBON_DCHECK(index >= 0, "{0}", index);
-    // Attempt to decompose id.index to include extra detail in the check here
 #ifndef NDEBUG
     if (index >= size_) {
-      auto [ir_id, decomposed_index] = IdTag::DecomposeWithBestEffort(id.index);
+      // Attempt to decompose id.index to include extra detail in the check
+      // here.
+      //
+      // TODO: Teach ValueStore the type of the tag id with a template, then we
+      // can print it with proper formatting instead of just as an integer.
+      auto [id_tag, id_untagged_index] =
+          IdTag::DecomposeWithBestEffort<int32_t>(id.index);
       CARBON_DCHECK(
           index < size_,
-          "Untagged index was outside of container range. Possibly tagged "
-          "index {0}. Best-effort decomposition: CheckIRId: {1}, index: {2}. "
-          "The IdTag for this container is: {3}",
-          id.index, ir_id, decomposed_index, tag_.GetCheckIRId());
+          "Untagged index was outside of container range. Tagged index {0}. "
+          "Best-effort decomposition: Tag: {1}, Index: {2}. "
+          "Container size: {3}. "
+          "Expected Tag for this container: {4}.",
+          id.index, id_tag, id_untagged_index, size_, tag_.GetContainerTag());
     }
 #endif
     return index;

+ 6 - 6
toolchain/check/testdata/alias/export_name.carbon

@@ -123,7 +123,7 @@ var d: D* = &c;
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//base, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -160,7 +160,7 @@ var d: D* = &c;
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//base, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -197,8 +197,8 @@ var d: D* = &c;
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -307,8 +307,8 @@ var d: D* = &c;
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//export_orig, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_orig, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//export_orig, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.357]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_orig, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]

+ 3 - 3
toolchain/check/testdata/alias/import.carbon

@@ -119,7 +119,7 @@ var c: () = a_alias_alias;
 // CHECK:STDOUT:   %Main.c_alias: type = import_ref Main//class1, c_alias, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.a = import_ref Main//class1, a, unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//class1, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//class1, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//class1, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -165,8 +165,8 @@ var c: () = a_alias_alias;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.c_alias_alias: type = import_ref Main//class2, c_alias_alias, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.b = import_ref Main//class2, b, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//class2, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//class2, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//class2, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//class2, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/alias/import_access.carbon

@@ -96,7 +96,7 @@ var inst: Test.A = {};
 // CHECK:STDOUT:   %Test.C = import_ref Test//def, C, unloaded
 // CHECK:STDOUT:   %Test.A: type = import_ref Test//def, A, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Test.import_ref.8f2: <witness> = import_ref Test//def, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Test.import_ref.2c4 = import_ref Test//def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Test.import_ref.2c4 = import_ref Test//def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/alias/import_order.carbon

@@ -98,7 +98,7 @@ var a_val: a = {.v = b_val.v};
 // CHECK:STDOUT:   %Main.c: type = import_ref Main//a, c, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.d: type = import_ref Main//a, d, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.146: <witness> = import_ref Main//a, loc4_22, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f99: %C.elem = import_ref Main//a, loc4_16, loaded [concrete = %.2fc]
 // CHECK:STDOUT:   %.2fc: %C.elem = field_decl v, element0 [concrete]
 // CHECK:STDOUT: }

+ 3 - 3
toolchain/check/testdata/basics/include_in_dumps.carbon

@@ -209,12 +209,12 @@ fn F(c: C) { c.(I.Op)(); }
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//included_with_range, loc16_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//included_with_range, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//included_with_range, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//included_with_range, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//included_with_range, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.9cd: %I.assoc_type = import_ref Main//included_with_range, loc8_22, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.Op = import_ref Main//included_with_range, Op, unloaded
 // CHECK:STDOUT:   %Main.import_ref.7d9: %I.Op.type = import_ref Main//included_with_range, loc8_22, loaded [concrete = constants.%I.Op]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//included_with_range, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//included_with_range, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.3a9: <witness> = import_ref Main//included_with_range, loc13_15, loaded [concrete = constants.%I.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.29a: type = import_ref Main//included_with_range, loc13_8, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.301: type = import_ref Main//included_with_range, loc13_13, loaded [concrete = constants.%I.type]

+ 4 - 4
toolchain/check/testdata/basics/raw_sem_ir/builtins.carbon

@@ -20,7 +20,7 @@
 // CHECK:STDOUT:   import_ir_insts: {}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {}}
 // CHECK:STDOUT:   entity_names:    {}
 // CHECK:STDOUT:   functions:       {}
 // CHECK:STDOUT:   classes:         {}
@@ -50,7 +50,7 @@
 // CHECK:STDOUT:     'inst(SpecificFunctionType)': {kind: SpecificFunctionType, type: type(TypeType)}
 // CHECK:STDOUT:     'inst(VtableType)': {kind: VtableType, type: type(TypeType)}
 // CHECK:STDOUT:     'inst(WitnessType)': {kind: WitnessType, type: type(TypeType)}
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
 // CHECK:STDOUT:       'inst(TypeType)':  concrete_constant(inst(TypeType))
@@ -67,7 +67,7 @@
 // CHECK:STDOUT:       'inst(SpecificFunctionType)': concrete_constant(inst(SpecificFunctionType))
 // CHECK:STDOUT:       'inst(VtableType)': concrete_constant(inst(VtableType))
 // CHECK:STDOUT:       'inst(WitnessType)': concrete_constant(inst(WitnessType))
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
@@ -75,5 +75,5 @@
 // CHECK:STDOUT:     imports:         {}
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:
-// CHECK:STDOUT:       0:               inst14
+// CHECK:STDOUT:       0:               inst0000000E
 // CHECK:STDOUT: ...

+ 179 - 179
toolchain/check/testdata/basics/raw_sem_ir/cpp_interop.carbon

@@ -38,16 +38,16 @@ fn G(x: Cpp.X) {
 // CHECK:STDOUT:   import_ir_insts:
 // CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir(Cpp), clang_source_loc_id: clang_source_loc0}
 // CHECK:STDOUT:   clang_decls:
-// CHECK:STDOUT:     clang_decl_id0:  {key: "<translation unit>", inst_id: ir0.inst16}
-// CHECK:STDOUT:     clang_decl_id1:  {key: "struct X {}", inst_id: ir0.inst18}
-// CHECK:STDOUT:     clang_decl_id2:  {key: {decl: "void f(X x = {})", num_params: 0}, inst_id: ir0.inst41}
-// CHECK:STDOUT:     clang_decl_id3:  {key: {decl: "extern void f__carbon_thunk()", num_params: 0}, inst_id: ir0.inst44}
-// CHECK:STDOUT:     clang_decl_id4:  {key: {decl: "void f(X x = {})", num_params: 1}, inst_id: ir0.inst55}
-// CHECK:STDOUT:     clang_decl_id5:  {key: {decl: "extern void f__carbon_thunk(X * _Nonnull x)", num_params: 1}, inst_id: ir0.inst64}
+// CHECK:STDOUT:     clang_decl_id0:  {key: "<translation unit>", inst_id: inst60000010}
+// CHECK:STDOUT:     clang_decl_id1:  {key: "struct X {}", inst_id: inst60000012}
+// CHECK:STDOUT:     clang_decl_id2:  {key: {decl: "void f(X x = {})", num_params: 0}, inst_id: inst60000029}
+// CHECK:STDOUT:     clang_decl_id3:  {key: {decl: "extern void f__carbon_thunk()", num_params: 0}, inst_id: inst6000002C}
+// CHECK:STDOUT:     clang_decl_id4:  {key: {decl: "void f(X x = {})", num_params: 1}, inst_id: inst60000037}
+// CHECK:STDOUT:     clang_decl_id5:  {key: {decl: "extern void f__carbon_thunk(X * _Nonnull x)", num_params: 1}, inst_id: inst60000040}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: ir0.inst16, name1: ir0.inst27}}
-// CHECK:STDOUT:     name_scope1:     {inst: ir0.inst16, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name3: ir0.inst18, name4: ir0.inst38}}
-// CHECK:STDOUT:     name_scope2:     {inst: ir0.inst18, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: inst60000010, name1: inst6000001B}}
+// CHECK:STDOUT:     name_scope1:     {inst: inst60000010, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name3: inst60000012, name4: inst60000026}}
+// CHECK:STDOUT:     name_scope2:     {inst: inst60000012, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
 // CHECK:STDOUT:   entity_names:
 // CHECK:STDOUT:     entity_name0:    {name: name2, parent_scope: name_scope<none>, index: -1, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:     entity_name1:    {name: name2, parent_scope: name_scope<none>, index: -1, is_template: 0, clang_decl_id: clang_decl_id<none>}
@@ -59,7 +59,7 @@ fn G(x: Cpp.X) {
 // CHECK:STDOUT:     function3:       {name: name4, parent_scope: name_scope1, call_params_id: inst_block13}
 // CHECK:STDOUT:     function4:       {name: name6, parent_scope: name_scope1, call_params_id: inst_block18}
 // CHECK:STDOUT:   classes:
-// CHECK:STDOUT:     class0:          {name: name3, parent_scope: name_scope1, self_type_id: type(ir0.inst19), inheritance_kind: Base, is_dynamic: 0, scope_id: name_scope2, body_block_id: inst_block10, adapt_id: inst<none>, base_id: inst<none>, complete_type_witness_id: ir0.inst33, vtable_decl_id: inst<none>}}
+// CHECK:STDOUT:     class0:          {name: name3, parent_scope: name_scope1, self_type_id: type(inst60000013), inheritance_kind: Base, is_dynamic: 0, scope_id: name_scope2, body_block_id: inst_block10, adapt_id: inst<none>, base_id: inst<none>, complete_type_witness_id: inst60000021, vtable_decl_id: inst<none>}}
 // CHECK:STDOUT:   generics:        {}
 // CHECK:STDOUT:   specifics:       {}
 // CHECK:STDOUT:   struct_type_fields:
@@ -71,30 +71,30 @@ fn G(x: Cpp.X) {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir0.inst28)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
-// CHECK:STDOUT:     'type(ir0.inst29)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
+// CHECK:STDOUT:     'type(inst6000001C)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
+// CHECK:STDOUT:     'type(inst6000001D)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
 // CHECK:STDOUT:     'type(inst(WitnessType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     'type(ir0.inst32)':
-// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(ir0.inst35)}
-// CHECK:STDOUT:     'type(ir0.inst35)':
-// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(ir0.inst35)}
-// CHECK:STDOUT:     'type(ir0.inst19)':
-// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(ir0.inst35)}
-// CHECK:STDOUT:     'type(ir0.inst37)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
-// CHECK:STDOUT:     'type(ir0.inst42)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
-// CHECK:STDOUT:     'type(ir0.inst45)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
-// CHECK:STDOUT:     'type(ir0.inst56)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
-// CHECK:STDOUT:     'type(ir0.inst65)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst29)}
-// CHECK:STDOUT:     'type(ir0.inst58)':
-// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(ir0.inst58)}
+// CHECK:STDOUT:     'type(inst60000020)':
+// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(inst60000023)}
+// CHECK:STDOUT:     'type(inst60000023)':
+// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst60000023)}
+// CHECK:STDOUT:     'type(inst60000013)':
+// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(inst60000023)}
+// CHECK:STDOUT:     'type(inst60000025)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
+// CHECK:STDOUT:     'type(inst6000002A)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
+// CHECK:STDOUT:     'type(inst6000002D)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
+// CHECK:STDOUT:     'type(inst60000038)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
+// CHECK:STDOUT:     'type(inst60000041)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000001D)}
+// CHECK:STDOUT:     'type(inst6000003A)':
+// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst6000003A)}
 // CHECK:STDOUT:   insts:
 // CHECK:STDOUT:     'inst(TypeType)':  {kind: TypeType, type: type(TypeType)}
 // CHECK:STDOUT:     'inst(AutoType)':  {kind: AutoType, type: type(TypeType)}
@@ -110,63 +110,63 @@ fn G(x: Cpp.X) {
 // CHECK:STDOUT:     'inst(SpecificFunctionType)': {kind: SpecificFunctionType, type: type(TypeType)}
 // CHECK:STDOUT:     'inst(VtableType)': {kind: VtableType, type: type(TypeType)}
 // CHECK:STDOUT:     'inst(WitnessType)': {kind: WitnessType, type: type(TypeType)}
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst15:      {kind: ImportCppDecl}
-// CHECK:STDOUT:     ir0.inst16:      {kind: Namespace, arg0: name_scope1, arg1: ir0.inst15, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst17:      {kind: NameRef, arg0: name0, arg1: ir0.inst16, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst18:      {kind: ClassDecl, arg0: class0, arg1: inst_block<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst19:      {kind: ClassType, arg0: class0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst20:      {kind: NameRef, arg0: name3, arg1: ir0.inst18, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst21:      {kind: BindName, arg0: entity_name0, arg1: ir0.inst25, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst22:      {kind: PatternType, arg0: ir0.inst19, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst23:      {kind: BindingPattern, arg0: entity_name0, type: type(ir0.inst22)}
-// CHECK:STDOUT:     ir0.inst24:      {kind: ValueParamPattern, arg0: ir0.inst23, arg1: call_param0, type: type(ir0.inst22)}
-// CHECK:STDOUT:     ir0.inst25:      {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst26:      {kind: SpliceBlock, arg0: inst_block4, arg1: ir0.inst20, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst27:      {kind: FunctionDecl, arg0: function0, arg1: inst_block8, type: type(ir0.inst28)}
-// CHECK:STDOUT:     ir0.inst28:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst29:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst30:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst28)}
-// CHECK:STDOUT:     ir0.inst31:      {kind: CustomLayoutType, arg0: struct_type_fields0, arg1: custom_layout1, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst32:      {kind: CustomLayoutType, arg0: struct_type_fields0, arg1: custom_layout1, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst33:      {kind: CompleteTypeWitness, arg0: ir0.inst31, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst34:      {kind: CompleteTypeWitness, arg0: ir0.inst32, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst35:      {kind: PointerType, arg0: ir0.inst32, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst36:      {kind: NameRef, arg0: name0, arg1: ir0.inst16, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst37:      {kind: CppOverloadSetType, arg0: cpp_overload_set0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst38:      {kind: CppOverloadSetValue, arg0: cpp_overload_set0, type: type(ir0.inst37)}
-// CHECK:STDOUT:     ir0.inst39:      {kind: CppOverloadSetValue, arg0: cpp_overload_set0, type: type(ir0.inst37)}
-// CHECK:STDOUT:     ir0.inst40:      {kind: NameRef, arg0: name4, arg1: ir0.inst38, type: type(ir0.inst37)}
-// CHECK:STDOUT:     ir0.inst41:      {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(ir0.inst42)}
-// CHECK:STDOUT:     ir0.inst42:      {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst43:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst42)}
-// CHECK:STDOUT:     ir0.inst44:      {kind: FunctionDecl, arg0: function2, arg1: inst_block_empty, type: type(ir0.inst45)}
-// CHECK:STDOUT:     ir0.inst45:      {kind: FunctionType, arg0: function2, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst46:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst45)}
-// CHECK:STDOUT:     ir0.inst47:      {kind: Call, arg0: ir0.inst44, arg1: inst_block_empty, type: type(ir0.inst29)}
-// CHECK:STDOUT:     ir0.inst48:      {kind: NameRef, arg0: name0, arg1: ir0.inst16, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst49:      {kind: NameRef, arg0: name4, arg1: ir0.inst38, type: type(ir0.inst37)}
-// CHECK:STDOUT:     ir0.inst50:      {kind: NameRef, arg0: name2, arg1: ir0.inst21, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst51:      {kind: BindName, arg0: entity_name1, arg1: ir0.inst54, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst52:      {kind: BindingPattern, arg0: entity_name1, type: type(ir0.inst22)}
-// CHECK:STDOUT:     ir0.inst53:      {kind: ValueParamPattern, arg0: ir0.inst52, arg1: call_param0, type: type(ir0.inst22)}
-// CHECK:STDOUT:     ir0.inst54:      {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst55:      {kind: FunctionDecl, arg0: function3, arg1: inst_block15, type: type(ir0.inst56)}
-// CHECK:STDOUT:     ir0.inst56:      {kind: FunctionType, arg0: function3, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst57:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst56)}
-// CHECK:STDOUT:     ir0.inst58:      {kind: PointerType, arg0: ir0.inst19, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst59:      {kind: BindName, arg0: entity_name2, arg1: ir0.inst63, type: type(ir0.inst58)}
-// CHECK:STDOUT:     ir0.inst60:      {kind: PatternType, arg0: ir0.inst58, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst61:      {kind: BindingPattern, arg0: entity_name2, type: type(ir0.inst60)}
-// CHECK:STDOUT:     ir0.inst62:      {kind: ValueParamPattern, arg0: ir0.inst61, arg1: call_param0, type: type(ir0.inst60)}
-// CHECK:STDOUT:     ir0.inst63:      {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(ir0.inst58)}
-// CHECK:STDOUT:     ir0.inst64:      {kind: FunctionDecl, arg0: function4, arg1: inst_block20, type: type(ir0.inst65)}
-// CHECK:STDOUT:     ir0.inst65:      {kind: FunctionType, arg0: function4, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst66:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst65)}
-// CHECK:STDOUT:     ir0.inst67:      {kind: ValueAsRef, arg0: ir0.inst50, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst68:      {kind: AddrOf, arg0: ir0.inst67, type: type(ir0.inst58)}
-// CHECK:STDOUT:     ir0.inst69:      {kind: Call, arg0: ir0.inst64, arg1: inst_block22, type: type(ir0.inst29)}
-// CHECK:STDOUT:     ir0.inst70:      {kind: Return}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst6000000F:    {kind: ImportCppDecl}
+// CHECK:STDOUT:     inst60000010:    {kind: Namespace, arg0: name_scope1, arg1: inst6000000F, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst60000011:    {kind: NameRef, arg0: name0, arg1: inst60000010, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst60000012:    {kind: ClassDecl, arg0: class0, arg1: inst_block<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000013:    {kind: ClassType, arg0: class0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000014:    {kind: NameRef, arg0: name3, arg1: inst60000012, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000015:    {kind: BindName, arg0: entity_name0, arg1: inst60000019, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000016:    {kind: PatternType, arg0: inst60000013, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000017:    {kind: BindingPattern, arg0: entity_name0, type: type(inst60000016)}
+// CHECK:STDOUT:     inst60000018:    {kind: ValueParamPattern, arg0: inst60000017, arg1: call_param0, type: type(inst60000016)}
+// CHECK:STDOUT:     inst60000019:    {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(inst60000013)}
+// CHECK:STDOUT:     inst6000001A:    {kind: SpliceBlock, arg0: inst_block4, arg1: inst60000014, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001B:    {kind: FunctionDecl, arg0: function0, arg1: inst_block8, type: type(inst6000001C)}
+// CHECK:STDOUT:     inst6000001C:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001D:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001E:    {kind: StructValue, arg0: inst_block_empty, type: type(inst6000001C)}
+// CHECK:STDOUT:     inst6000001F:    {kind: CustomLayoutType, arg0: struct_type_fields0, arg1: custom_layout1, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000020:    {kind: CustomLayoutType, arg0: struct_type_fields0, arg1: custom_layout1, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000021:    {kind: CompleteTypeWitness, arg0: inst6000001F, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000022:    {kind: CompleteTypeWitness, arg0: inst60000020, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000023:    {kind: PointerType, arg0: inst60000020, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000024:    {kind: NameRef, arg0: name0, arg1: inst60000010, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst60000025:    {kind: CppOverloadSetType, arg0: cpp_overload_set0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000026:    {kind: CppOverloadSetValue, arg0: cpp_overload_set0, type: type(inst60000025)}
+// CHECK:STDOUT:     inst60000027:    {kind: CppOverloadSetValue, arg0: cpp_overload_set0, type: type(inst60000025)}
+// CHECK:STDOUT:     inst60000028:    {kind: NameRef, arg0: name4, arg1: inst60000026, type: type(inst60000025)}
+// CHECK:STDOUT:     inst60000029:    {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(inst6000002A)}
+// CHECK:STDOUT:     inst6000002A:    {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002B:    {kind: StructValue, arg0: inst_block_empty, type: type(inst6000002A)}
+// CHECK:STDOUT:     inst6000002C:    {kind: FunctionDecl, arg0: function2, arg1: inst_block_empty, type: type(inst6000002D)}
+// CHECK:STDOUT:     inst6000002D:    {kind: FunctionType, arg0: function2, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002E:    {kind: StructValue, arg0: inst_block_empty, type: type(inst6000002D)}
+// CHECK:STDOUT:     inst6000002F:    {kind: Call, arg0: inst6000002C, arg1: inst_block_empty, type: type(inst6000001D)}
+// CHECK:STDOUT:     inst60000030:    {kind: NameRef, arg0: name0, arg1: inst60000010, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst60000031:    {kind: NameRef, arg0: name4, arg1: inst60000026, type: type(inst60000025)}
+// CHECK:STDOUT:     inst60000032:    {kind: NameRef, arg0: name2, arg1: inst60000015, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000033:    {kind: BindName, arg0: entity_name1, arg1: inst60000036, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000034:    {kind: BindingPattern, arg0: entity_name1, type: type(inst60000016)}
+// CHECK:STDOUT:     inst60000035:    {kind: ValueParamPattern, arg0: inst60000034, arg1: call_param0, type: type(inst60000016)}
+// CHECK:STDOUT:     inst60000036:    {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000037:    {kind: FunctionDecl, arg0: function3, arg1: inst_block15, type: type(inst60000038)}
+// CHECK:STDOUT:     inst60000038:    {kind: FunctionType, arg0: function3, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000039:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000038)}
+// CHECK:STDOUT:     inst6000003A:    {kind: PointerType, arg0: inst60000013, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000003B:    {kind: BindName, arg0: entity_name2, arg1: inst6000003F, type: type(inst6000003A)}
+// CHECK:STDOUT:     inst6000003C:    {kind: PatternType, arg0: inst6000003A, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000003D:    {kind: BindingPattern, arg0: entity_name2, type: type(inst6000003C)}
+// CHECK:STDOUT:     inst6000003E:    {kind: ValueParamPattern, arg0: inst6000003D, arg1: call_param0, type: type(inst6000003C)}
+// CHECK:STDOUT:     inst6000003F:    {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(inst6000003A)}
+// CHECK:STDOUT:     inst60000040:    {kind: FunctionDecl, arg0: function4, arg1: inst_block20, type: type(inst60000041)}
+// CHECK:STDOUT:     inst60000041:    {kind: FunctionType, arg0: function4, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000042:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000041)}
+// CHECK:STDOUT:     inst60000043:    {kind: ValueAsRef, arg0: inst60000032, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000044:    {kind: AddrOf, arg0: inst60000043, type: type(inst6000003A)}
+// CHECK:STDOUT:     inst60000045:    {kind: Call, arg0: inst60000040, arg1: inst_block22, type: type(inst6000001D)}
+// CHECK:STDOUT:     inst60000046:    {kind: Return}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
 // CHECK:STDOUT:       'inst(TypeType)':  concrete_constant(inst(TypeType))
@@ -183,120 +183,120 @@ fn G(x: Cpp.X) {
 // CHECK:STDOUT:       'inst(SpecificFunctionType)': concrete_constant(inst(SpecificFunctionType))
 // CHECK:STDOUT:       'inst(VtableType)': concrete_constant(inst(VtableType))
 // CHECK:STDOUT:       'inst(WitnessType)': concrete_constant(inst(WitnessType))
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir0.inst16:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst17:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst18:      concrete_constant(ir0.inst19)
-// CHECK:STDOUT:       ir0.inst19:      concrete_constant(ir0.inst19)
-// CHECK:STDOUT:       ir0.inst20:      concrete_constant(ir0.inst19)
-// CHECK:STDOUT:       ir0.inst22:      concrete_constant(ir0.inst22)
-// CHECK:STDOUT:       ir0.inst23:      concrete_constant(ir0.inst23)
-// CHECK:STDOUT:       ir0.inst24:      concrete_constant(ir0.inst24)
-// CHECK:STDOUT:       ir0.inst26:      concrete_constant(ir0.inst19)
-// CHECK:STDOUT:       ir0.inst27:      concrete_constant(ir0.inst30)
-// CHECK:STDOUT:       ir0.inst28:      concrete_constant(ir0.inst28)
-// CHECK:STDOUT:       ir0.inst29:      concrete_constant(ir0.inst29)
-// CHECK:STDOUT:       ir0.inst30:      concrete_constant(ir0.inst30)
-// CHECK:STDOUT:       ir0.inst31:      concrete_constant(ir0.inst32)
-// CHECK:STDOUT:       ir0.inst32:      concrete_constant(ir0.inst32)
-// CHECK:STDOUT:       ir0.inst33:      concrete_constant(ir0.inst34)
-// CHECK:STDOUT:       ir0.inst34:      concrete_constant(ir0.inst34)
-// CHECK:STDOUT:       ir0.inst35:      concrete_constant(ir0.inst35)
-// CHECK:STDOUT:       ir0.inst36:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst37:      concrete_constant(ir0.inst37)
-// CHECK:STDOUT:       ir0.inst38:      concrete_constant(ir0.inst39)
-// CHECK:STDOUT:       ir0.inst39:      concrete_constant(ir0.inst39)
-// CHECK:STDOUT:       ir0.inst40:      concrete_constant(ir0.inst39)
-// CHECK:STDOUT:       ir0.inst41:      concrete_constant(ir0.inst43)
-// CHECK:STDOUT:       ir0.inst42:      concrete_constant(ir0.inst42)
-// CHECK:STDOUT:       ir0.inst43:      concrete_constant(ir0.inst43)
-// CHECK:STDOUT:       ir0.inst44:      concrete_constant(ir0.inst46)
-// CHECK:STDOUT:       ir0.inst45:      concrete_constant(ir0.inst45)
-// CHECK:STDOUT:       ir0.inst46:      concrete_constant(ir0.inst46)
-// CHECK:STDOUT:       ir0.inst48:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst49:      concrete_constant(ir0.inst39)
-// CHECK:STDOUT:       ir0.inst52:      concrete_constant(ir0.inst52)
-// CHECK:STDOUT:       ir0.inst53:      concrete_constant(ir0.inst53)
-// CHECK:STDOUT:       ir0.inst55:      concrete_constant(ir0.inst57)
-// CHECK:STDOUT:       ir0.inst56:      concrete_constant(ir0.inst56)
-// CHECK:STDOUT:       ir0.inst57:      concrete_constant(ir0.inst57)
-// CHECK:STDOUT:       ir0.inst58:      concrete_constant(ir0.inst58)
-// CHECK:STDOUT:       ir0.inst60:      concrete_constant(ir0.inst60)
-// CHECK:STDOUT:       ir0.inst61:      concrete_constant(ir0.inst61)
-// CHECK:STDOUT:       ir0.inst62:      concrete_constant(ir0.inst62)
-// CHECK:STDOUT:       ir0.inst64:      concrete_constant(ir0.inst66)
-// CHECK:STDOUT:       ir0.inst65:      concrete_constant(ir0.inst65)
-// CHECK:STDOUT:       ir0.inst66:      concrete_constant(ir0.inst66)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst60000010:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000011:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000012:    concrete_constant(inst60000013)
+// CHECK:STDOUT:       inst60000013:    concrete_constant(inst60000013)
+// CHECK:STDOUT:       inst60000014:    concrete_constant(inst60000013)
+// CHECK:STDOUT:       inst60000016:    concrete_constant(inst60000016)
+// CHECK:STDOUT:       inst60000017:    concrete_constant(inst60000017)
+// CHECK:STDOUT:       inst60000018:    concrete_constant(inst60000018)
+// CHECK:STDOUT:       inst6000001A:    concrete_constant(inst60000013)
+// CHECK:STDOUT:       inst6000001B:    concrete_constant(inst6000001E)
+// CHECK:STDOUT:       inst6000001C:    concrete_constant(inst6000001C)
+// CHECK:STDOUT:       inst6000001D:    concrete_constant(inst6000001D)
+// CHECK:STDOUT:       inst6000001E:    concrete_constant(inst6000001E)
+// CHECK:STDOUT:       inst6000001F:    concrete_constant(inst60000020)
+// CHECK:STDOUT:       inst60000020:    concrete_constant(inst60000020)
+// CHECK:STDOUT:       inst60000021:    concrete_constant(inst60000022)
+// CHECK:STDOUT:       inst60000022:    concrete_constant(inst60000022)
+// CHECK:STDOUT:       inst60000023:    concrete_constant(inst60000023)
+// CHECK:STDOUT:       inst60000024:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000025:    concrete_constant(inst60000025)
+// CHECK:STDOUT:       inst60000026:    concrete_constant(inst60000027)
+// CHECK:STDOUT:       inst60000027:    concrete_constant(inst60000027)
+// CHECK:STDOUT:       inst60000028:    concrete_constant(inst60000027)
+// CHECK:STDOUT:       inst60000029:    concrete_constant(inst6000002B)
+// CHECK:STDOUT:       inst6000002A:    concrete_constant(inst6000002A)
+// CHECK:STDOUT:       inst6000002B:    concrete_constant(inst6000002B)
+// CHECK:STDOUT:       inst6000002C:    concrete_constant(inst6000002E)
+// CHECK:STDOUT:       inst6000002D:    concrete_constant(inst6000002D)
+// CHECK:STDOUT:       inst6000002E:    concrete_constant(inst6000002E)
+// CHECK:STDOUT:       inst60000030:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000031:    concrete_constant(inst60000027)
+// CHECK:STDOUT:       inst60000034:    concrete_constant(inst60000034)
+// CHECK:STDOUT:       inst60000035:    concrete_constant(inst60000035)
+// CHECK:STDOUT:       inst60000037:    concrete_constant(inst60000039)
+// CHECK:STDOUT:       inst60000038:    concrete_constant(inst60000038)
+// CHECK:STDOUT:       inst60000039:    concrete_constant(inst60000039)
+// CHECK:STDOUT:       inst6000003A:    concrete_constant(inst6000003A)
+// CHECK:STDOUT:       inst6000003C:    concrete_constant(inst6000003C)
+// CHECK:STDOUT:       inst6000003D:    concrete_constant(inst6000003D)
+// CHECK:STDOUT:       inst6000003E:    concrete_constant(inst6000003E)
+// CHECK:STDOUT:       inst60000040:    concrete_constant(inst60000042)
+// CHECK:STDOUT:       inst60000041:    concrete_constant(inst60000041)
+// CHECK:STDOUT:       inst60000042:    concrete_constant(inst60000042)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir0.inst27
+// CHECK:STDOUT:       0:               inst6000001B
 // CHECK:STDOUT:     imports:
-// CHECK:STDOUT:       0:               ir0.inst16
-// CHECK:STDOUT:       1:               ir0.inst18
-// CHECK:STDOUT:       2:               ir0.inst38
-// CHECK:STDOUT:       3:               ir0.inst41
-// CHECK:STDOUT:       4:               ir0.inst44
-// CHECK:STDOUT:       5:               ir0.inst55
-// CHECK:STDOUT:       6:               ir0.inst64
+// CHECK:STDOUT:       0:               inst60000010
+// CHECK:STDOUT:       1:               inst60000012
+// CHECK:STDOUT:       2:               inst60000026
+// CHECK:STDOUT:       3:               inst60000029
+// CHECK:STDOUT:       4:               inst6000002C
+// CHECK:STDOUT:       5:               inst60000037
+// CHECK:STDOUT:       6:               inst60000040
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:
-// CHECK:STDOUT:       0:               ir0.inst17
-// CHECK:STDOUT:       1:               ir0.inst20
+// CHECK:STDOUT:       0:               inst60000011
+// CHECK:STDOUT:       1:               inst60000014
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir0.inst24
+// CHECK:STDOUT:       0:               inst60000018
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               ir0.inst25
+// CHECK:STDOUT:       0:               inst60000019
 // CHECK:STDOUT:     inst_block7:
-// CHECK:STDOUT:       0:               ir0.inst23
-// CHECK:STDOUT:       1:               ir0.inst24
+// CHECK:STDOUT:       0:               inst60000017
+// CHECK:STDOUT:       1:               inst60000018
 // CHECK:STDOUT:     inst_block8:
-// CHECK:STDOUT:       0:               ir0.inst25
-// CHECK:STDOUT:       1:               ir0.inst26
-// CHECK:STDOUT:       2:               ir0.inst21
+// CHECK:STDOUT:       0:               inst60000019
+// CHECK:STDOUT:       1:               inst6000001A
+// CHECK:STDOUT:       2:               inst60000015
 // CHECK:STDOUT:     inst_block9:
-// CHECK:STDOUT:       0:               ir0.inst36
-// CHECK:STDOUT:       1:               ir0.inst40
-// CHECK:STDOUT:       2:               ir0.inst47
-// CHECK:STDOUT:       3:               ir0.inst48
-// CHECK:STDOUT:       4:               ir0.inst49
-// CHECK:STDOUT:       5:               ir0.inst50
-// CHECK:STDOUT:       6:               ir0.inst67
-// CHECK:STDOUT:       7:               ir0.inst68
-// CHECK:STDOUT:       8:               ir0.inst69
-// CHECK:STDOUT:       9:               ir0.inst70
+// CHECK:STDOUT:       0:               inst60000024
+// CHECK:STDOUT:       1:               inst60000028
+// CHECK:STDOUT:       2:               inst6000002F
+// CHECK:STDOUT:       3:               inst60000030
+// CHECK:STDOUT:       4:               inst60000031
+// CHECK:STDOUT:       5:               inst60000032
+// CHECK:STDOUT:       6:               inst60000043
+// CHECK:STDOUT:       7:               inst60000044
+// CHECK:STDOUT:       8:               inst60000045
+// CHECK:STDOUT:       9:               inst60000046
 // CHECK:STDOUT:     inst_block10:
-// CHECK:STDOUT:       0:               ir0.inst31
-// CHECK:STDOUT:       1:               ir0.inst33
+// CHECK:STDOUT:       0:               inst6000001F
+// CHECK:STDOUT:       1:               inst60000021
 // CHECK:STDOUT:     inst_block11:    {}
 // CHECK:STDOUT:     inst_block12:
-// CHECK:STDOUT:       0:               ir0.inst53
+// CHECK:STDOUT:       0:               inst60000035
 // CHECK:STDOUT:     inst_block13:
-// CHECK:STDOUT:       0:               ir0.inst54
+// CHECK:STDOUT:       0:               inst60000036
 // CHECK:STDOUT:     inst_block14:
-// CHECK:STDOUT:       0:               ir0.inst52
-// CHECK:STDOUT:       1:               ir0.inst53
+// CHECK:STDOUT:       0:               inst60000034
+// CHECK:STDOUT:       1:               inst60000035
 // CHECK:STDOUT:     inst_block15:
-// CHECK:STDOUT:       0:               ir0.inst54
-// CHECK:STDOUT:       1:               ir0.inst51
+// CHECK:STDOUT:       0:               inst60000036
+// CHECK:STDOUT:       1:               inst60000033
 // CHECK:STDOUT:     inst_block16:    {}
 // CHECK:STDOUT:     inst_block17:
-// CHECK:STDOUT:       0:               ir0.inst62
+// CHECK:STDOUT:       0:               inst6000003E
 // CHECK:STDOUT:     inst_block18:
-// CHECK:STDOUT:       0:               ir0.inst63
+// CHECK:STDOUT:       0:               inst6000003F
 // CHECK:STDOUT:     inst_block19:
-// CHECK:STDOUT:       0:               ir0.inst61
-// CHECK:STDOUT:       1:               ir0.inst62
+// CHECK:STDOUT:       0:               inst6000003D
+// CHECK:STDOUT:       1:               inst6000003E
 // CHECK:STDOUT:     inst_block20:
-// CHECK:STDOUT:       0:               ir0.inst63
-// CHECK:STDOUT:       1:               ir0.inst59
+// CHECK:STDOUT:       0:               inst6000003F
+// CHECK:STDOUT:       1:               inst6000003B
 // CHECK:STDOUT:     inst_block21:
-// CHECK:STDOUT:       0:               ir0.inst50
+// CHECK:STDOUT:       0:               inst60000032
 // CHECK:STDOUT:     inst_block22:
-// CHECK:STDOUT:       0:               ir0.inst68
+// CHECK:STDOUT:       0:               inst60000044
 // CHECK:STDOUT:     inst_block23:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir0.inst15
-// CHECK:STDOUT:       2:               ir0.inst27
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst6000000F
+// CHECK:STDOUT:       2:               inst6000001B
 // CHECK:STDOUT: ...

+ 67 - 67
toolchain/check/testdata/basics/raw_sem_ir/multifile.carbon

@@ -36,7 +36,7 @@ fn B() {
 // CHECK:STDOUT:   import_ir_insts: {}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: ir0.inst15}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: inst6000000F}}
 // CHECK:STDOUT:   entity_names:    {}
 // CHECK:STDOUT:   functions:
 // CHECK:STDOUT:     function0:       {name: name0, parent_scope: name_scope0, call_params_id: inst_block_empty, body: [inst_block5]}
@@ -52,37 +52,37 @@ fn B() {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir0.inst16)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst17)}
-// CHECK:STDOUT:     'type(ir0.inst17)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst17)}
+// CHECK:STDOUT:     'type(inst60000010)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000011)}
+// CHECK:STDOUT:     'type(inst60000011)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000011)}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst15:      {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(ir0.inst16)}
-// CHECK:STDOUT:     ir0.inst16:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst17:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst18:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst16)}
-// CHECK:STDOUT:     ir0.inst19:      {kind: Return}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst6000000F:    {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(inst60000010)}
+// CHECK:STDOUT:     inst60000010:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000011:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000012:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000010)}
+// CHECK:STDOUT:     inst60000013:    {kind: Return}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir0.inst15:      concrete_constant(ir0.inst18)
-// CHECK:STDOUT:       ir0.inst16:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst17:      concrete_constant(ir0.inst17)
-// CHECK:STDOUT:       ir0.inst18:      concrete_constant(ir0.inst18)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst6000000F:    concrete_constant(inst60000012)
+// CHECK:STDOUT:       inst60000010:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000011:    concrete_constant(inst60000011)
+// CHECK:STDOUT:       inst60000012:    concrete_constant(inst60000012)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir0.inst15
+// CHECK:STDOUT:       0:               inst6000000F
 // CHECK:STDOUT:     imports:         {}
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:     {}
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir0.inst19
+// CHECK:STDOUT:       0:               inst60000013
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir0.inst15
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst6000000F
 // CHECK:STDOUT: ...
 // CHECK:STDOUT: ---
 // CHECK:STDOUT: filename:        b.carbon
@@ -90,14 +90,14 @@ fn B() {
 // CHECK:STDOUT:   import_irs:
 // CHECK:STDOUT:     'import_ir(ApiForImpl)': {decl_id: inst<none>, is_export: false}
 // CHECK:STDOUT:     'import_ir(Cpp)':  {decl_id: inst<none>, is_export: false}
-// CHECK:STDOUT:     import_ir2:      {decl_id: ir1.inst15, is_export: false}
+// CHECK:STDOUT:     import_ir2:      {decl_id: inst5000000F, is_export: false}
 // CHECK:STDOUT:   import_ir_insts:
-// CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir2, inst_id: ir0.inst15}
-// CHECK:STDOUT:     import_ir_inst1: {ir_id: import_ir2, inst_id: ir0.inst15}
+// CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir2, inst_id: inst6000000F}
+// CHECK:STDOUT:     import_ir_inst1: {ir_id: import_ir2, inst_id: inst6000000F}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name1: ir1.inst16, name0: ir1.inst17}}
-// CHECK:STDOUT:     name_scope1:     {inst: ir1.inst16, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name1: ir1.inst22}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name1: inst50000010, name0: inst50000011}}
+// CHECK:STDOUT:     name_scope1:     {inst: inst50000010, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name1: inst50000016}}
 // CHECK:STDOUT:   entity_names:
 // CHECK:STDOUT:     entity_name0:    {name: name1, parent_scope: name_scope1, index: -1, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:   functions:
@@ -115,58 +115,58 @@ fn B() {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir1.inst18)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir1.inst19)}
-// CHECK:STDOUT:     'type(ir1.inst19)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir1.inst19)}
+// CHECK:STDOUT:     'type(inst50000012)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst50000013)}
+// CHECK:STDOUT:     'type(inst50000013)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst50000013)}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir1.inst15:      {kind: ImportDecl, arg0: name1}
-// CHECK:STDOUT:     ir1.inst16:      {kind: Namespace, arg0: name_scope1, arg1: ir1.inst15, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir1.inst17:      {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(ir1.inst18)}
-// CHECK:STDOUT:     ir1.inst18:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir1.inst19:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir1.inst20:      {kind: StructValue, arg0: inst_block_empty, type: type(ir1.inst18)}
-// CHECK:STDOUT:     ir1.inst21:      {kind: NameRef, arg0: name1, arg1: ir1.inst16, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir1.inst22:      {kind: ImportRefLoaded, arg0: import_ir_inst0, arg1: entity_name0, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst23:      {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst24:      {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir1.inst25:      {kind: StructValue, arg0: inst_block_empty, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst26:      {kind: NameRef, arg0: name1, arg1: ir1.inst22, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst27:      {kind: Call, arg0: ir1.inst26, arg1: inst_block_empty, type: type(ir1.inst19)}
-// CHECK:STDOUT:     ir1.inst28:      {kind: Return}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst5000000F:    {kind: ImportDecl, arg0: name1}
+// CHECK:STDOUT:     inst50000010:    {kind: Namespace, arg0: name_scope1, arg1: inst5000000F, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst50000011:    {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(inst50000012)}
+// CHECK:STDOUT:     inst50000012:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst50000013:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst50000014:    {kind: StructValue, arg0: inst_block_empty, type: type(inst50000012)}
+// CHECK:STDOUT:     inst50000015:    {kind: NameRef, arg0: name1, arg1: inst50000010, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst50000016:    {kind: ImportRefLoaded, arg0: import_ir_inst0, arg1: entity_name0, type: type(inst50000018)}
+// CHECK:STDOUT:     inst50000017:    {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(inst50000018)}
+// CHECK:STDOUT:     inst50000018:    {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst50000019:    {kind: StructValue, arg0: inst_block_empty, type: type(inst50000018)}
+// CHECK:STDOUT:     inst5000001A:    {kind: NameRef, arg0: name1, arg1: inst50000016, type: type(inst50000018)}
+// CHECK:STDOUT:     inst5000001B:    {kind: Call, arg0: inst5000001A, arg1: inst_block_empty, type: type(inst50000013)}
+// CHECK:STDOUT:     inst5000001C:    {kind: Return}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir1.inst16:      concrete_constant(ir1.inst16)
-// CHECK:STDOUT:       ir1.inst17:      concrete_constant(ir1.inst20)
-// CHECK:STDOUT:       ir1.inst18:      concrete_constant(ir1.inst18)
-// CHECK:STDOUT:       ir1.inst19:      concrete_constant(ir1.inst19)
-// CHECK:STDOUT:       ir1.inst20:      concrete_constant(ir1.inst20)
-// CHECK:STDOUT:       ir1.inst21:      concrete_constant(ir1.inst16)
-// CHECK:STDOUT:       ir1.inst22:      concrete_constant(ir1.inst25)
-// CHECK:STDOUT:       ir1.inst23:      concrete_constant(ir1.inst25)
-// CHECK:STDOUT:       ir1.inst24:      concrete_constant(ir1.inst24)
-// CHECK:STDOUT:       ir1.inst25:      concrete_constant(ir1.inst25)
-// CHECK:STDOUT:       ir1.inst26:      concrete_constant(ir1.inst25)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst50000010:    concrete_constant(inst50000010)
+// CHECK:STDOUT:       inst50000011:    concrete_constant(inst50000014)
+// CHECK:STDOUT:       inst50000012:    concrete_constant(inst50000012)
+// CHECK:STDOUT:       inst50000013:    concrete_constant(inst50000013)
+// CHECK:STDOUT:       inst50000014:    concrete_constant(inst50000014)
+// CHECK:STDOUT:       inst50000015:    concrete_constant(inst50000010)
+// CHECK:STDOUT:       inst50000016:    concrete_constant(inst50000019)
+// CHECK:STDOUT:       inst50000017:    concrete_constant(inst50000019)
+// CHECK:STDOUT:       inst50000018:    concrete_constant(inst50000018)
+// CHECK:STDOUT:       inst50000019:    concrete_constant(inst50000019)
+// CHECK:STDOUT:       inst5000001A:    concrete_constant(inst50000019)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir1.inst17
+// CHECK:STDOUT:       0:               inst50000011
 // CHECK:STDOUT:     imports:
-// CHECK:STDOUT:       0:               ir1.inst16
-// CHECK:STDOUT:       1:               ir1.inst22
-// CHECK:STDOUT:       2:               ir1.inst23
+// CHECK:STDOUT:       0:               inst50000010
+// CHECK:STDOUT:       1:               inst50000016
+// CHECK:STDOUT:       2:               inst50000017
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:     {}
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir1.inst21
-// CHECK:STDOUT:       1:               ir1.inst26
-// CHECK:STDOUT:       2:               ir1.inst27
-// CHECK:STDOUT:       3:               ir1.inst28
+// CHECK:STDOUT:       0:               inst50000015
+// CHECK:STDOUT:       1:               inst5000001A
+// CHECK:STDOUT:       2:               inst5000001B
+// CHECK:STDOUT:       3:               inst5000001C
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir1.inst15
-// CHECK:STDOUT:       2:               ir1.inst17
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst5000000F
+// CHECK:STDOUT:       2:               inst50000011
 // CHECK:STDOUT: ...

+ 67 - 67
toolchain/check/testdata/basics/raw_sem_ir/multifile_with_textual_ir.carbon

@@ -36,7 +36,7 @@ fn B() {
 // CHECK:STDOUT:   import_ir_insts: {}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: ir0.inst15}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: inst6000000F}}
 // CHECK:STDOUT:   entity_names:    {}
 // CHECK:STDOUT:   functions:
 // CHECK:STDOUT:     function0:       {name: name0, parent_scope: name_scope0, call_params_id: inst_block_empty, body: [inst_block5]}
@@ -52,37 +52,37 @@ fn B() {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir0.inst16)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst17)}
-// CHECK:STDOUT:     'type(ir0.inst17)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst17)}
+// CHECK:STDOUT:     'type(inst60000010)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000011)}
+// CHECK:STDOUT:     'type(inst60000011)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000011)}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst15:      {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(ir0.inst16)}
-// CHECK:STDOUT:     ir0.inst16:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst17:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst18:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst16)}
-// CHECK:STDOUT:     ir0.inst19:      {kind: Return}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst6000000F:    {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(inst60000010)}
+// CHECK:STDOUT:     inst60000010:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000011:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000012:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000010)}
+// CHECK:STDOUT:     inst60000013:    {kind: Return}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir0.inst15:      concrete_constant(ir0.inst18)
-// CHECK:STDOUT:       ir0.inst16:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst17:      concrete_constant(ir0.inst17)
-// CHECK:STDOUT:       ir0.inst18:      concrete_constant(ir0.inst18)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst6000000F:    concrete_constant(inst60000012)
+// CHECK:STDOUT:       inst60000010:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000011:    concrete_constant(inst60000011)
+// CHECK:STDOUT:       inst60000012:    concrete_constant(inst60000012)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir0.inst15
+// CHECK:STDOUT:       0:               inst6000000F
 // CHECK:STDOUT:     imports:         {}
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:     {}
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir0.inst19
+// CHECK:STDOUT:       0:               inst60000013
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir0.inst15
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst6000000F
 // CHECK:STDOUT: ...
 // CHECK:STDOUT: --- a.carbon
 // CHECK:STDOUT:
@@ -109,14 +109,14 @@ fn B() {
 // CHECK:STDOUT:   import_irs:
 // CHECK:STDOUT:     'import_ir(ApiForImpl)': {decl_id: inst<none>, is_export: false}
 // CHECK:STDOUT:     'import_ir(Cpp)':  {decl_id: inst<none>, is_export: false}
-// CHECK:STDOUT:     import_ir2:      {decl_id: ir1.inst15, is_export: false}
+// CHECK:STDOUT:     import_ir2:      {decl_id: inst5000000F, is_export: false}
 // CHECK:STDOUT:   import_ir_insts:
-// CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir2, inst_id: ir0.inst15}
-// CHECK:STDOUT:     import_ir_inst1: {ir_id: import_ir2, inst_id: ir0.inst15}
+// CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir2, inst_id: inst6000000F}
+// CHECK:STDOUT:     import_ir_inst1: {ir_id: import_ir2, inst_id: inst6000000F}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name1: ir1.inst16, name0: ir1.inst17}}
-// CHECK:STDOUT:     name_scope1:     {inst: ir1.inst16, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name1: ir1.inst22}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name1: inst50000010, name0: inst50000011}}
+// CHECK:STDOUT:     name_scope1:     {inst: inst50000010, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name1: inst50000016}}
 // CHECK:STDOUT:   entity_names:
 // CHECK:STDOUT:     entity_name0:    {name: name1, parent_scope: name_scope1, index: -1, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:   functions:
@@ -134,60 +134,60 @@ fn B() {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir1.inst18)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir1.inst19)}
-// CHECK:STDOUT:     'type(ir1.inst19)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir1.inst19)}
+// CHECK:STDOUT:     'type(inst50000012)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst50000013)}
+// CHECK:STDOUT:     'type(inst50000013)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst50000013)}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir1.inst15:      {kind: ImportDecl, arg0: name1}
-// CHECK:STDOUT:     ir1.inst16:      {kind: Namespace, arg0: name_scope1, arg1: ir1.inst15, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir1.inst17:      {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(ir1.inst18)}
-// CHECK:STDOUT:     ir1.inst18:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir1.inst19:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir1.inst20:      {kind: StructValue, arg0: inst_block_empty, type: type(ir1.inst18)}
-// CHECK:STDOUT:     ir1.inst21:      {kind: NameRef, arg0: name1, arg1: ir1.inst16, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir1.inst22:      {kind: ImportRefLoaded, arg0: import_ir_inst0, arg1: entity_name0, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst23:      {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst24:      {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir1.inst25:      {kind: StructValue, arg0: inst_block_empty, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst26:      {kind: NameRef, arg0: name1, arg1: ir1.inst22, type: type(ir1.inst24)}
-// CHECK:STDOUT:     ir1.inst27:      {kind: Call, arg0: ir1.inst26, arg1: inst_block_empty, type: type(ir1.inst19)}
-// CHECK:STDOUT:     ir1.inst28:      {kind: Return}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst5000000F:    {kind: ImportDecl, arg0: name1}
+// CHECK:STDOUT:     inst50000010:    {kind: Namespace, arg0: name_scope1, arg1: inst5000000F, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst50000011:    {kind: FunctionDecl, arg0: function0, arg1: inst_block_empty, type: type(inst50000012)}
+// CHECK:STDOUT:     inst50000012:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst50000013:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst50000014:    {kind: StructValue, arg0: inst_block_empty, type: type(inst50000012)}
+// CHECK:STDOUT:     inst50000015:    {kind: NameRef, arg0: name1, arg1: inst50000010, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst50000016:    {kind: ImportRefLoaded, arg0: import_ir_inst0, arg1: entity_name0, type: type(inst50000018)}
+// CHECK:STDOUT:     inst50000017:    {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(inst50000018)}
+// CHECK:STDOUT:     inst50000018:    {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst50000019:    {kind: StructValue, arg0: inst_block_empty, type: type(inst50000018)}
+// CHECK:STDOUT:     inst5000001A:    {kind: NameRef, arg0: name1, arg1: inst50000016, type: type(inst50000018)}
+// CHECK:STDOUT:     inst5000001B:    {kind: Call, arg0: inst5000001A, arg1: inst_block_empty, type: type(inst50000013)}
+// CHECK:STDOUT:     inst5000001C:    {kind: Return}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir1.inst16:      concrete_constant(ir1.inst16)
-// CHECK:STDOUT:       ir1.inst17:      concrete_constant(ir1.inst20)
-// CHECK:STDOUT:       ir1.inst18:      concrete_constant(ir1.inst18)
-// CHECK:STDOUT:       ir1.inst19:      concrete_constant(ir1.inst19)
-// CHECK:STDOUT:       ir1.inst20:      concrete_constant(ir1.inst20)
-// CHECK:STDOUT:       ir1.inst21:      concrete_constant(ir1.inst16)
-// CHECK:STDOUT:       ir1.inst22:      concrete_constant(ir1.inst25)
-// CHECK:STDOUT:       ir1.inst23:      concrete_constant(ir1.inst25)
-// CHECK:STDOUT:       ir1.inst24:      concrete_constant(ir1.inst24)
-// CHECK:STDOUT:       ir1.inst25:      concrete_constant(ir1.inst25)
-// CHECK:STDOUT:       ir1.inst26:      concrete_constant(ir1.inst25)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst50000010:    concrete_constant(inst50000010)
+// CHECK:STDOUT:       inst50000011:    concrete_constant(inst50000014)
+// CHECK:STDOUT:       inst50000012:    concrete_constant(inst50000012)
+// CHECK:STDOUT:       inst50000013:    concrete_constant(inst50000013)
+// CHECK:STDOUT:       inst50000014:    concrete_constant(inst50000014)
+// CHECK:STDOUT:       inst50000015:    concrete_constant(inst50000010)
+// CHECK:STDOUT:       inst50000016:    concrete_constant(inst50000019)
+// CHECK:STDOUT:       inst50000017:    concrete_constant(inst50000019)
+// CHECK:STDOUT:       inst50000018:    concrete_constant(inst50000018)
+// CHECK:STDOUT:       inst50000019:    concrete_constant(inst50000019)
+// CHECK:STDOUT:       inst5000001A:    concrete_constant(inst50000019)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir1.inst17
+// CHECK:STDOUT:       0:               inst50000011
 // CHECK:STDOUT:     imports:
-// CHECK:STDOUT:       0:               ir1.inst16
-// CHECK:STDOUT:       1:               ir1.inst22
-// CHECK:STDOUT:       2:               ir1.inst23
+// CHECK:STDOUT:       0:               inst50000010
+// CHECK:STDOUT:       1:               inst50000016
+// CHECK:STDOUT:       2:               inst50000017
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:     {}
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir1.inst21
-// CHECK:STDOUT:       1:               ir1.inst26
-// CHECK:STDOUT:       2:               ir1.inst27
-// CHECK:STDOUT:       3:               ir1.inst28
+// CHECK:STDOUT:       0:               inst50000015
+// CHECK:STDOUT:       1:               inst5000001A
+// CHECK:STDOUT:       2:               inst5000001B
+// CHECK:STDOUT:       3:               inst5000001C
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir1.inst15
-// CHECK:STDOUT:       2:               ir1.inst17
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst5000000F
+// CHECK:STDOUT:       2:               inst50000011
 // CHECK:STDOUT: ...
 // CHECK:STDOUT: --- b.carbon
 // CHECK:STDOUT:

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

@@ -23,214 +23,214 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:   import_irs:
 // CHECK:STDOUT:     'import_ir(ApiForImpl)': {decl_id: inst<none>, is_export: false}
 // CHECK:STDOUT:     'import_ir(Cpp)':  {decl_id: inst<none>, is_export: false}
-// CHECK:STDOUT:     import_ir2:      {decl_id: ir0.inst15, is_export: false}
-// CHECK:STDOUT:     import_ir3:      {decl_id: ir0.inst15, is_export: false}
-// CHECK:STDOUT:     import_ir4:      {decl_id: ir0.inst15, is_export: false}
-// CHECK:STDOUT:     import_ir5:      {decl_id: ir0.inst15, is_export: false}
+// CHECK:STDOUT:     import_ir2:      {decl_id: inst6000000F, is_export: false}
+// CHECK:STDOUT:     import_ir3:      {decl_id: inst6000000F, is_export: false}
+// CHECK:STDOUT:     import_ir4:      {decl_id: inst6000000F, is_export: false}
+// CHECK:STDOUT:     import_ir5:      {decl_id: inst6000000F, is_export: false}
 // CHECK:STDOUT:   import_ir_insts:
-// CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir4, inst_id: ir3.inst15}
-// CHECK:STDOUT:     import_ir_inst1: {ir_id: import_ir4, inst_id: ir3.inst15}
-// CHECK:STDOUT:     import_ir_inst2: {ir_id: import_ir4, inst_id: ir3.inst17}
-// CHECK:STDOUT:     import_ir_inst3: {ir_id: import_ir4, inst_id: ir3.inst45}
-// CHECK:STDOUT:     import_ir_inst4: {ir_id: import_ir4, inst_id: ir3.inst40}
-// CHECK:STDOUT:     import_ir_inst5: {ir_id: import_ir4, inst_id: ir3.inst40}
-// CHECK:STDOUT:     import_ir_inst6: {ir_id: import_ir4, inst_id: ir3.inst40}
-// CHECK:STDOUT:     import_ir_inst7: {ir_id: import_ir4, inst_id: ir3.inst34}
-// CHECK:STDOUT:     import_ir_inst8: {ir_id: import_ir4, inst_id: ir3.inst35}
-// CHECK:STDOUT:     import_ir_inst9: {ir_id: import_ir4, inst_id: ir3.inst28}
-// CHECK:STDOUT:     import_ir_inst10: {ir_id: import_ir4, inst_id: ir3.inst30}
-// CHECK:STDOUT:     import_ir_inst11: {ir_id: import_ir4, inst_id: ir3.inst17}
-// CHECK:STDOUT:     import_ir_inst12: {ir_id: import_ir4, inst_id: ir3.inst21}
-// CHECK:STDOUT:     import_ir_inst13: {ir_id: import_ir4, inst_id: ir3.inst24}
-// CHECK:STDOUT:     import_ir_inst14: {ir_id: import_ir4, inst_id: ir3.inst29}
-// CHECK:STDOUT:     import_ir_inst15: {ir_id: import_ir4, inst_id: ir3.inst97}
-// CHECK:STDOUT:     import_ir_inst16: {ir_id: import_ir4, inst_id: ir3.inst95}
-// CHECK:STDOUT:     import_ir_inst17: {ir_id: import_ir4, inst_id: ir3.inst84}
-// CHECK:STDOUT:     import_ir_inst18: {ir_id: import_ir4, inst_id: ir3.inst80}
-// CHECK:STDOUT:     import_ir_inst19: {ir_id: import_ir4, inst_id: ir3.inst90}
-// CHECK:STDOUT:     import_ir_inst20: {ir_id: import_ir4, inst_id: ir3.inst93}
-// CHECK:STDOUT:     import_ir_inst21: {ir_id: import_ir4, inst_id: ir3.inst116}
-// CHECK:STDOUT:     import_ir_inst22: {ir_id: import_ir4, inst_id: ir3.inst96}
-// CHECK:STDOUT:     import_ir_inst23: {ir_id: import_ir4, inst_id: ir3.inst82}
-// CHECK:STDOUT:     import_ir_inst24: {ir_id: import_ir4, inst_id: ir3.inst88}
-// CHECK:STDOUT:     import_ir_inst25: {ir_id: import_ir4, inst_id: ir3.inst92}
-// CHECK:STDOUT:     import_ir_inst26: {ir_id: import_ir4, inst_id: ir3.inst99}
-// CHECK:STDOUT:     import_ir_inst27: {ir_id: import_ir4, inst_id: ir3.inst116}
-// CHECK:STDOUT:     import_ir_inst28: {ir_id: import_ir4, inst_id: ir3.inst111}
-// CHECK:STDOUT:     import_ir_inst29: {ir_id: import_ir4, inst_id: ir3.inst112}
-// CHECK:STDOUT:     import_ir_inst30: {ir_id: import_ir4, inst_id: ir3.inst107}
-// CHECK:STDOUT:     import_ir_inst31: {ir_id: import_ir4, inst_id: ir3.inst109}
-// CHECK:STDOUT:     import_ir_inst32: {ir_id: import_ir4, inst_id: ir3.inst80}
-// CHECK:STDOUT:     import_ir_inst33: {ir_id: import_ir4, inst_id: ir3.inst119}
-// CHECK:STDOUT:     import_ir_inst34: {ir_id: import_ir4, inst_id: ir3.inst120}
-// CHECK:STDOUT:     import_ir_inst35: {ir_id: import_ir4, inst_id: ir3.inst102}
-// CHECK:STDOUT:     import_ir_inst36: {ir_id: import_ir4, inst_id: ir3.inst103}
-// CHECK:STDOUT:     import_ir_inst37: {ir_id: import_ir4, inst_id: ir3.inst104}
-// CHECK:STDOUT:     import_ir_inst38: {ir_id: import_ir4, inst_id: ir3.inst108}
-// CHECK:STDOUT:     import_ir_inst39: {ir_id: import_ir4, inst_id: ir3.inst124}
-// CHECK:STDOUT:     import_ir_inst40: {ir_id: import_ir4, inst_id: ir3.inst132}
-// CHECK:STDOUT:     import_ir_inst41: {ir_id: import_ir4, inst_id: ir3.inst139}
-// CHECK:STDOUT:     import_ir_inst42: {ir_id: import_ir4, inst_id: ir3.inst143}
-// CHECK:STDOUT:     import_ir_inst43: {ir_id: import_ir4, inst_id: ir3.inst144}
-// CHECK:STDOUT:     import_ir_inst44: {ir_id: import_ir4, inst_id: ir3.inst149}
-// CHECK:STDOUT:     import_ir_inst45: {ir_id: import_ir4, inst_id: ir3.inst170}
-// CHECK:STDOUT:     import_ir_inst46: {ir_id: import_ir4, inst_id: ir3.inst168}
-// CHECK:STDOUT:     import_ir_inst47: {ir_id: import_ir4, inst_id: ir3.inst166}
-// CHECK:STDOUT:     import_ir_inst48: {ir_id: import_ir4, inst_id: ir3.inst167}
-// CHECK:STDOUT:     import_ir_inst49: {ir_id: import_ir4, inst_id: ir3.inst194}
-// CHECK:STDOUT:     import_ir_inst50: {ir_id: import_ir4, inst_id: ir3.inst192}
-// CHECK:STDOUT:     import_ir_inst51: {ir_id: import_ir4, inst_id: ir3.inst190}
-// CHECK:STDOUT:     import_ir_inst52: {ir_id: import_ir4, inst_id: ir3.inst191}
-// CHECK:STDOUT:     import_ir_inst53: {ir_id: import_ir4, inst_id: ir3.inst218}
-// CHECK:STDOUT:     import_ir_inst54: {ir_id: import_ir4, inst_id: ir3.inst216}
-// CHECK:STDOUT:     import_ir_inst55: {ir_id: import_ir4, inst_id: ir3.inst214}
-// CHECK:STDOUT:     import_ir_inst56: {ir_id: import_ir4, inst_id: ir3.inst215}
-// CHECK:STDOUT:     import_ir_inst57: {ir_id: import_ir4, inst_id: ir3.inst242}
-// CHECK:STDOUT:     import_ir_inst58: {ir_id: import_ir4, inst_id: ir3.inst240}
-// CHECK:STDOUT:     import_ir_inst59: {ir_id: import_ir4, inst_id: ir3.inst238}
-// CHECK:STDOUT:     import_ir_inst60: {ir_id: import_ir4, inst_id: ir3.inst239}
-// CHECK:STDOUT:     import_ir_inst61: {ir_id: import_ir4, inst_id: ir3.inst271}
-// CHECK:STDOUT:     import_ir_inst62: {ir_id: import_ir4, inst_id: ir3.inst269}
-// CHECK:STDOUT:     import_ir_inst63: {ir_id: import_ir4, inst_id: ir3.inst263}
-// CHECK:STDOUT:     import_ir_inst64: {ir_id: import_ir4, inst_id: ir3.inst260}
-// CHECK:STDOUT:     import_ir_inst65: {ir_id: import_ir4, inst_id: ir3.inst265}
-// CHECK:STDOUT:     import_ir_inst66: {ir_id: import_ir4, inst_id: ir3.inst268}
-// CHECK:STDOUT:     import_ir_inst67: {ir_id: import_ir4, inst_id: ir3.inst288}
-// CHECK:STDOUT:     import_ir_inst68: {ir_id: import_ir4, inst_id: ir3.inst270}
-// CHECK:STDOUT:     import_ir_inst69: {ir_id: import_ir4, inst_id: ir3.inst262}
-// CHECK:STDOUT:     import_ir_inst70: {ir_id: import_ir4, inst_id: ir3.inst267}
-// CHECK:STDOUT:     import_ir_inst71: {ir_id: import_ir4, inst_id: ir3.inst273}
-// CHECK:STDOUT:     import_ir_inst72: {ir_id: import_ir4, inst_id: ir3.inst288}
-// CHECK:STDOUT:     import_ir_inst73: {ir_id: import_ir4, inst_id: ir3.inst283}
-// CHECK:STDOUT:     import_ir_inst74: {ir_id: import_ir4, inst_id: ir3.inst284}
-// CHECK:STDOUT:     import_ir_inst75: {ir_id: import_ir4, inst_id: ir3.inst279}
-// CHECK:STDOUT:     import_ir_inst76: {ir_id: import_ir4, inst_id: ir3.inst281}
-// CHECK:STDOUT:     import_ir_inst77: {ir_id: import_ir4, inst_id: ir3.inst260}
-// CHECK:STDOUT:     import_ir_inst78: {ir_id: import_ir4, inst_id: ir3.inst291}
-// CHECK:STDOUT:     import_ir_inst79: {ir_id: import_ir4, inst_id: ir3.inst292}
-// CHECK:STDOUT:     import_ir_inst80: {ir_id: import_ir4, inst_id: ir3.inst295}
-// CHECK:STDOUT:     import_ir_inst81: {ir_id: import_ir4, inst_id: ir3.inst275}
-// CHECK:STDOUT:     import_ir_inst82: {ir_id: import_ir4, inst_id: ir3.inst276}
-// CHECK:STDOUT:     import_ir_inst83: {ir_id: import_ir4, inst_id: ir3.inst280}
-// CHECK:STDOUT:     import_ir_inst84: {ir_id: import_ir4, inst_id: ir3.inst301}
-// CHECK:STDOUT:     import_ir_inst85: {ir_id: import_ir4, inst_id: ir3.inst299}
+// CHECK:STDOUT:     import_ir_inst0: {ir_id: import_ir4, inst_id: inst4800000F}
+// CHECK:STDOUT:     import_ir_inst1: {ir_id: import_ir4, inst_id: inst4800000F}
+// CHECK:STDOUT:     import_ir_inst2: {ir_id: import_ir4, inst_id: inst48000011}
+// CHECK:STDOUT:     import_ir_inst3: {ir_id: import_ir4, inst_id: inst4800002D}
+// CHECK:STDOUT:     import_ir_inst4: {ir_id: import_ir4, inst_id: inst48000028}
+// CHECK:STDOUT:     import_ir_inst5: {ir_id: import_ir4, inst_id: inst48000028}
+// CHECK:STDOUT:     import_ir_inst6: {ir_id: import_ir4, inst_id: inst48000028}
+// CHECK:STDOUT:     import_ir_inst7: {ir_id: import_ir4, inst_id: inst48000022}
+// CHECK:STDOUT:     import_ir_inst8: {ir_id: import_ir4, inst_id: inst48000023}
+// CHECK:STDOUT:     import_ir_inst9: {ir_id: import_ir4, inst_id: inst4800001C}
+// CHECK:STDOUT:     import_ir_inst10: {ir_id: import_ir4, inst_id: inst4800001E}
+// CHECK:STDOUT:     import_ir_inst11: {ir_id: import_ir4, inst_id: inst48000011}
+// CHECK:STDOUT:     import_ir_inst12: {ir_id: import_ir4, inst_id: inst48000015}
+// CHECK:STDOUT:     import_ir_inst13: {ir_id: import_ir4, inst_id: inst48000018}
+// CHECK:STDOUT:     import_ir_inst14: {ir_id: import_ir4, inst_id: inst4800001D}
+// CHECK:STDOUT:     import_ir_inst15: {ir_id: import_ir4, inst_id: inst48000061}
+// CHECK:STDOUT:     import_ir_inst16: {ir_id: import_ir4, inst_id: inst4800005F}
+// CHECK:STDOUT:     import_ir_inst17: {ir_id: import_ir4, inst_id: inst48000054}
+// CHECK:STDOUT:     import_ir_inst18: {ir_id: import_ir4, inst_id: inst48000050}
+// CHECK:STDOUT:     import_ir_inst19: {ir_id: import_ir4, inst_id: inst4800005A}
+// CHECK:STDOUT:     import_ir_inst20: {ir_id: import_ir4, inst_id: inst4800005D}
+// CHECK:STDOUT:     import_ir_inst21: {ir_id: import_ir4, inst_id: inst48000074}
+// CHECK:STDOUT:     import_ir_inst22: {ir_id: import_ir4, inst_id: inst48000060}
+// CHECK:STDOUT:     import_ir_inst23: {ir_id: import_ir4, inst_id: inst48000052}
+// CHECK:STDOUT:     import_ir_inst24: {ir_id: import_ir4, inst_id: inst48000058}
+// CHECK:STDOUT:     import_ir_inst25: {ir_id: import_ir4, inst_id: inst4800005C}
+// CHECK:STDOUT:     import_ir_inst26: {ir_id: import_ir4, inst_id: inst48000063}
+// CHECK:STDOUT:     import_ir_inst27: {ir_id: import_ir4, inst_id: inst48000074}
+// CHECK:STDOUT:     import_ir_inst28: {ir_id: import_ir4, inst_id: inst4800006F}
+// CHECK:STDOUT:     import_ir_inst29: {ir_id: import_ir4, inst_id: inst48000070}
+// CHECK:STDOUT:     import_ir_inst30: {ir_id: import_ir4, inst_id: inst4800006B}
+// CHECK:STDOUT:     import_ir_inst31: {ir_id: import_ir4, inst_id: inst4800006D}
+// CHECK:STDOUT:     import_ir_inst32: {ir_id: import_ir4, inst_id: inst48000050}
+// CHECK:STDOUT:     import_ir_inst33: {ir_id: import_ir4, inst_id: inst48000077}
+// CHECK:STDOUT:     import_ir_inst34: {ir_id: import_ir4, inst_id: inst48000078}
+// CHECK:STDOUT:     import_ir_inst35: {ir_id: import_ir4, inst_id: inst48000066}
+// CHECK:STDOUT:     import_ir_inst36: {ir_id: import_ir4, inst_id: inst48000067}
+// CHECK:STDOUT:     import_ir_inst37: {ir_id: import_ir4, inst_id: inst48000068}
+// CHECK:STDOUT:     import_ir_inst38: {ir_id: import_ir4, inst_id: inst4800006C}
+// CHECK:STDOUT:     import_ir_inst39: {ir_id: import_ir4, inst_id: inst4800007C}
+// CHECK:STDOUT:     import_ir_inst40: {ir_id: import_ir4, inst_id: inst48000084}
+// CHECK:STDOUT:     import_ir_inst41: {ir_id: import_ir4, inst_id: inst4800008B}
+// CHECK:STDOUT:     import_ir_inst42: {ir_id: import_ir4, inst_id: inst4800008F}
+// CHECK:STDOUT:     import_ir_inst43: {ir_id: import_ir4, inst_id: inst48000090}
+// CHECK:STDOUT:     import_ir_inst44: {ir_id: import_ir4, inst_id: inst48000095}
+// CHECK:STDOUT:     import_ir_inst45: {ir_id: import_ir4, inst_id: inst480000AA}
+// CHECK:STDOUT:     import_ir_inst46: {ir_id: import_ir4, inst_id: inst480000A8}
+// CHECK:STDOUT:     import_ir_inst47: {ir_id: import_ir4, inst_id: inst480000A6}
+// CHECK:STDOUT:     import_ir_inst48: {ir_id: import_ir4, inst_id: inst480000A7}
+// CHECK:STDOUT:     import_ir_inst49: {ir_id: import_ir4, inst_id: inst480000C2}
+// CHECK:STDOUT:     import_ir_inst50: {ir_id: import_ir4, inst_id: inst480000C0}
+// CHECK:STDOUT:     import_ir_inst51: {ir_id: import_ir4, inst_id: inst480000BE}
+// CHECK:STDOUT:     import_ir_inst52: {ir_id: import_ir4, inst_id: inst480000BF}
+// CHECK:STDOUT:     import_ir_inst53: {ir_id: import_ir4, inst_id: inst480000DA}
+// CHECK:STDOUT:     import_ir_inst54: {ir_id: import_ir4, inst_id: inst480000D8}
+// CHECK:STDOUT:     import_ir_inst55: {ir_id: import_ir4, inst_id: inst480000D6}
+// CHECK:STDOUT:     import_ir_inst56: {ir_id: import_ir4, inst_id: inst480000D7}
+// CHECK:STDOUT:     import_ir_inst57: {ir_id: import_ir4, inst_id: inst480000F2}
+// CHECK:STDOUT:     import_ir_inst58: {ir_id: import_ir4, inst_id: inst480000F0}
+// CHECK:STDOUT:     import_ir_inst59: {ir_id: import_ir4, inst_id: inst480000EE}
+// CHECK:STDOUT:     import_ir_inst60: {ir_id: import_ir4, inst_id: inst480000EF}
+// CHECK:STDOUT:     import_ir_inst61: {ir_id: import_ir4, inst_id: inst4800010F}
+// CHECK:STDOUT:     import_ir_inst62: {ir_id: import_ir4, inst_id: inst4800010D}
+// CHECK:STDOUT:     import_ir_inst63: {ir_id: import_ir4, inst_id: inst48000107}
+// CHECK:STDOUT:     import_ir_inst64: {ir_id: import_ir4, inst_id: inst48000104}
+// CHECK:STDOUT:     import_ir_inst65: {ir_id: import_ir4, inst_id: inst48000109}
+// CHECK:STDOUT:     import_ir_inst66: {ir_id: import_ir4, inst_id: inst4800010C}
+// CHECK:STDOUT:     import_ir_inst67: {ir_id: import_ir4, inst_id: inst48000120}
+// CHECK:STDOUT:     import_ir_inst68: {ir_id: import_ir4, inst_id: inst4800010E}
+// CHECK:STDOUT:     import_ir_inst69: {ir_id: import_ir4, inst_id: inst48000106}
+// CHECK:STDOUT:     import_ir_inst70: {ir_id: import_ir4, inst_id: inst4800010B}
+// CHECK:STDOUT:     import_ir_inst71: {ir_id: import_ir4, inst_id: inst48000111}
+// CHECK:STDOUT:     import_ir_inst72: {ir_id: import_ir4, inst_id: inst48000120}
+// CHECK:STDOUT:     import_ir_inst73: {ir_id: import_ir4, inst_id: inst4800011B}
+// CHECK:STDOUT:     import_ir_inst74: {ir_id: import_ir4, inst_id: inst4800011C}
+// CHECK:STDOUT:     import_ir_inst75: {ir_id: import_ir4, inst_id: inst48000117}
+// CHECK:STDOUT:     import_ir_inst76: {ir_id: import_ir4, inst_id: inst48000119}
+// CHECK:STDOUT:     import_ir_inst77: {ir_id: import_ir4, inst_id: inst48000104}
+// CHECK:STDOUT:     import_ir_inst78: {ir_id: import_ir4, inst_id: inst48000123}
+// CHECK:STDOUT:     import_ir_inst79: {ir_id: import_ir4, inst_id: inst48000124}
+// CHECK:STDOUT:     import_ir_inst80: {ir_id: import_ir4, inst_id: inst48000127}
+// CHECK:STDOUT:     import_ir_inst81: {ir_id: import_ir4, inst_id: inst48000113}
+// CHECK:STDOUT:     import_ir_inst82: {ir_id: import_ir4, inst_id: inst48000114}
+// CHECK:STDOUT:     import_ir_inst83: {ir_id: import_ir4, inst_id: inst48000118}
+// CHECK:STDOUT:     import_ir_inst84: {ir_id: import_ir4, inst_id: inst4800012D}
+// CHECK:STDOUT:     import_ir_inst85: {ir_id: import_ir4, inst_id: inst4800012B}
 // CHECK:STDOUT:     import_ir_inst86: {ir_id: import_ir4, inst_id: inst(TypeType)}
-// CHECK:STDOUT:     import_ir_inst87: {ir_id: import_ir4, inst_id: ir3.inst298}
-// CHECK:STDOUT:     import_ir_inst88: {ir_id: import_ir4, inst_id: ir3.inst322}
-// CHECK:STDOUT:     import_ir_inst89: {ir_id: import_ir4, inst_id: ir3.inst320}
-// CHECK:STDOUT:     import_ir_inst90: {ir_id: import_ir4, inst_id: ir3.inst318}
-// CHECK:STDOUT:     import_ir_inst91: {ir_id: import_ir4, inst_id: ir3.inst319}
-// CHECK:STDOUT:     import_ir_inst92: {ir_id: import_ir4, inst_id: ir3.inst370}
-// CHECK:STDOUT:     import_ir_inst93: {ir_id: import_ir4, inst_id: ir3.inst368}
-// CHECK:STDOUT:     import_ir_inst94: {ir_id: import_ir4, inst_id: ir3.inst349}
-// CHECK:STDOUT:     import_ir_inst95: {ir_id: import_ir4, inst_id: ir3.inst343}
-// CHECK:STDOUT:     import_ir_inst96: {ir_id: import_ir4, inst_id: ir3.inst341}
-// CHECK:STDOUT:     import_ir_inst97: {ir_id: import_ir4, inst_id: ir3.inst346}
-// CHECK:STDOUT:     import_ir_inst98: {ir_id: import_ir4, inst_id: ir3.inst363}
-// CHECK:STDOUT:     import_ir_inst99: {ir_id: import_ir4, inst_id: ir3.inst365}
-// CHECK:STDOUT:     import_ir_inst100: {ir_id: import_ir4, inst_id: ir3.inst392}
-// CHECK:STDOUT:     import_ir_inst101: {ir_id: import_ir4, inst_id: ir3.inst369}
-// CHECK:STDOUT:     import_ir_inst102: {ir_id: import_ir4, inst_id: ir3.inst342}
-// CHECK:STDOUT:     import_ir_inst103: {ir_id: import_ir4, inst_id: ir3.inst348}
-// CHECK:STDOUT:     import_ir_inst104: {ir_id: import_ir4, inst_id: ir3.inst356}
-// CHECK:STDOUT:     import_ir_inst105: {ir_id: import_ir4, inst_id: ir3.inst360}
-// CHECK:STDOUT:     import_ir_inst106: {ir_id: import_ir4, inst_id: ir3.inst364}
-// CHECK:STDOUT:     import_ir_inst107: {ir_id: import_ir4, inst_id: ir3.inst372}
-// CHECK:STDOUT:     import_ir_inst108: {ir_id: import_ir4, inst_id: ir3.inst392}
-// CHECK:STDOUT:     import_ir_inst109: {ir_id: import_ir4, inst_id: ir3.inst387}
-// CHECK:STDOUT:     import_ir_inst110: {ir_id: import_ir4, inst_id: ir3.inst388}
-// CHECK:STDOUT:     import_ir_inst111: {ir_id: import_ir4, inst_id: ir3.inst383}
-// CHECK:STDOUT:     import_ir_inst112: {ir_id: import_ir4, inst_id: ir3.inst385}
-// CHECK:STDOUT:     import_ir_inst113: {ir_id: import_ir4, inst_id: ir3.inst341}
-// CHECK:STDOUT:     import_ir_inst114: {ir_id: import_ir4, inst_id: ir3.inst346}
-// CHECK:STDOUT:     import_ir_inst115: {ir_id: import_ir4, inst_id: ir3.inst395}
-// CHECK:STDOUT:     import_ir_inst116: {ir_id: import_ir4, inst_id: ir3.inst396}
-// CHECK:STDOUT:     import_ir_inst117: {ir_id: import_ir4, inst_id: ir3.inst376}
-// CHECK:STDOUT:     import_ir_inst118: {ir_id: import_ir4, inst_id: ir3.inst377}
-// CHECK:STDOUT:     import_ir_inst119: {ir_id: import_ir4, inst_id: ir3.inst378}
-// CHECK:STDOUT:     import_ir_inst120: {ir_id: import_ir4, inst_id: ir3.inst379}
-// CHECK:STDOUT:     import_ir_inst121: {ir_id: import_ir4, inst_id: ir3.inst380}
-// CHECK:STDOUT:     import_ir_inst122: {ir_id: import_ir4, inst_id: ir3.inst384}
-// CHECK:STDOUT:     import_ir_inst123: {ir_id: import_ir4, inst_id: ir3.inst401}
-// CHECK:STDOUT:     import_ir_inst124: {ir_id: import_ir4, inst_id: ir3.inst409}
-// CHECK:STDOUT:     import_ir_inst125: {ir_id: import_ir4, inst_id: ir3.inst413}
-// CHECK:STDOUT:     import_ir_inst126: {ir_id: import_ir4, inst_id: ir3.inst415}
-// CHECK:STDOUT:     import_ir_inst127: {ir_id: import_ir4, inst_id: ir3.inst416}
-// CHECK:STDOUT:     import_ir_inst128: {ir_id: import_ir4, inst_id: ir3.inst419}
-// CHECK:STDOUT:     import_ir_inst129: {ir_id: import_ir4, inst_id: ir3.inst431}
-// CHECK:STDOUT:     import_ir_inst130: {ir_id: import_ir4, inst_id: ir3.inst436}
-// CHECK:STDOUT:     import_ir_inst131: {ir_id: import_ir4, inst_id: ir3.inst440}
-// CHECK:STDOUT:     import_ir_inst132: {ir_id: import_ir4, inst_id: ir3.inst441}
-// CHECK:STDOUT:     import_ir_inst133: {ir_id: import_ir4, inst_id: ir3.inst446}
-// CHECK:STDOUT:     import_ir_inst134: {ir_id: import_ir4, inst_id: ir3.inst503}
-// CHECK:STDOUT:     import_ir_inst135: {ir_id: import_ir4, inst_id: ir3.inst501}
-// CHECK:STDOUT:     import_ir_inst136: {ir_id: import_ir4, inst_id: ir3.inst477}
-// CHECK:STDOUT:     import_ir_inst137: {ir_id: import_ir4, inst_id: ir3.inst471}
-// CHECK:STDOUT:     import_ir_inst138: {ir_id: import_ir4, inst_id: ir3.inst466}
-// CHECK:STDOUT:     import_ir_inst139: {ir_id: import_ir4, inst_id: ir3.inst464}
-// CHECK:STDOUT:     import_ir_inst140: {ir_id: import_ir4, inst_id: ir3.inst469}
-// CHECK:STDOUT:     import_ir_inst141: {ir_id: import_ir4, inst_id: ir3.inst474}
-// CHECK:STDOUT:     import_ir_inst142: {ir_id: import_ir4, inst_id: ir3.inst495}
-// CHECK:STDOUT:     import_ir_inst143: {ir_id: import_ir4, inst_id: ir3.inst497}
-// CHECK:STDOUT:     import_ir_inst144: {ir_id: import_ir4, inst_id: ir3.inst528}
-// CHECK:STDOUT:     import_ir_inst145: {ir_id: import_ir4, inst_id: ir3.inst502}
-// CHECK:STDOUT:     import_ir_inst146: {ir_id: import_ir4, inst_id: ir3.inst465}
-// CHECK:STDOUT:     import_ir_inst147: {ir_id: import_ir4, inst_id: ir3.inst470}
-// CHECK:STDOUT:     import_ir_inst148: {ir_id: import_ir4, inst_id: ir3.inst476}
-// CHECK:STDOUT:     import_ir_inst149: {ir_id: import_ir4, inst_id: ir3.inst485}
-// CHECK:STDOUT:     import_ir_inst150: {ir_id: import_ir4, inst_id: ir3.inst488}
-// CHECK:STDOUT:     import_ir_inst151: {ir_id: import_ir4, inst_id: ir3.inst492}
-// CHECK:STDOUT:     import_ir_inst152: {ir_id: import_ir4, inst_id: ir3.inst496}
-// CHECK:STDOUT:     import_ir_inst153: {ir_id: import_ir4, inst_id: ir3.inst505}
-// CHECK:STDOUT:     import_ir_inst154: {ir_id: import_ir4, inst_id: ir3.inst528}
-// CHECK:STDOUT:     import_ir_inst155: {ir_id: import_ir4, inst_id: ir3.inst523}
-// CHECK:STDOUT:     import_ir_inst156: {ir_id: import_ir4, inst_id: ir3.inst524}
-// CHECK:STDOUT:     import_ir_inst157: {ir_id: import_ir4, inst_id: ir3.inst519}
-// CHECK:STDOUT:     import_ir_inst158: {ir_id: import_ir4, inst_id: ir3.inst521}
-// CHECK:STDOUT:     import_ir_inst159: {ir_id: import_ir4, inst_id: ir3.inst464}
-// CHECK:STDOUT:     import_ir_inst160: {ir_id: import_ir4, inst_id: ir3.inst469}
-// CHECK:STDOUT:     import_ir_inst161: {ir_id: import_ir4, inst_id: ir3.inst474}
-// CHECK:STDOUT:     import_ir_inst162: {ir_id: import_ir4, inst_id: ir3.inst531}
-// CHECK:STDOUT:     import_ir_inst163: {ir_id: import_ir4, inst_id: ir3.inst532}
-// CHECK:STDOUT:     import_ir_inst164: {ir_id: import_ir4, inst_id: ir3.inst510}
-// CHECK:STDOUT:     import_ir_inst165: {ir_id: import_ir4, inst_id: ir3.inst511}
-// CHECK:STDOUT:     import_ir_inst166: {ir_id: import_ir4, inst_id: ir3.inst512}
-// CHECK:STDOUT:     import_ir_inst167: {ir_id: import_ir4, inst_id: ir3.inst513}
-// CHECK:STDOUT:     import_ir_inst168: {ir_id: import_ir4, inst_id: ir3.inst514}
-// CHECK:STDOUT:     import_ir_inst169: {ir_id: import_ir4, inst_id: ir3.inst515}
-// CHECK:STDOUT:     import_ir_inst170: {ir_id: import_ir4, inst_id: ir3.inst516}
-// CHECK:STDOUT:     import_ir_inst171: {ir_id: import_ir4, inst_id: ir3.inst520}
-// CHECK:STDOUT:     import_ir_inst172: {ir_id: import_ir4, inst_id: ir3.inst537}
-// CHECK:STDOUT:     import_ir_inst173: {ir_id: import_ir4, inst_id: ir3.inst544}
-// CHECK:STDOUT:     import_ir_inst174: {ir_id: import_ir4, inst_id: ir3.inst548}
-// CHECK:STDOUT:     import_ir_inst175: {ir_id: import_ir4, inst_id: ir3.inst550}
-// CHECK:STDOUT:     import_ir_inst176: {ir_id: import_ir4, inst_id: ir3.inst551}
-// CHECK:STDOUT:     import_ir_inst177: {ir_id: import_ir4, inst_id: ir3.inst554}
-// CHECK:STDOUT:     import_ir_inst178: {ir_id: import_ir4, inst_id: ir3.inst564}
-// CHECK:STDOUT:     import_ir_inst179: {ir_id: import_ir4, inst_id: ir3.inst568}
-// CHECK:STDOUT:     import_ir_inst180: {ir_id: import_ir4, inst_id: ir3.inst570}
-// CHECK:STDOUT:     import_ir_inst181: {ir_id: import_ir4, inst_id: ir3.inst571}
-// CHECK:STDOUT:     import_ir_inst182: {ir_id: import_ir4, inst_id: ir3.inst574}
-// CHECK:STDOUT:     import_ir_inst183: {ir_id: import_ir4, inst_id: ir3.inst586}
-// CHECK:STDOUT:     import_ir_inst184: {ir_id: import_ir4, inst_id: ir3.inst591}
-// CHECK:STDOUT:     import_ir_inst185: {ir_id: import_ir4, inst_id: ir3.inst595}
-// CHECK:STDOUT:     import_ir_inst186: {ir_id: import_ir4, inst_id: ir3.inst596}
-// CHECK:STDOUT:     import_ir_inst187: {ir_id: import_ir4, inst_id: ir3.inst601}
+// CHECK:STDOUT:     import_ir_inst87: {ir_id: import_ir4, inst_id: inst4800012A}
+// CHECK:STDOUT:     import_ir_inst88: {ir_id: import_ir4, inst_id: inst48000142}
+// CHECK:STDOUT:     import_ir_inst89: {ir_id: import_ir4, inst_id: inst48000140}
+// CHECK:STDOUT:     import_ir_inst90: {ir_id: import_ir4, inst_id: inst4800013E}
+// CHECK:STDOUT:     import_ir_inst91: {ir_id: import_ir4, inst_id: inst4800013F}
+// CHECK:STDOUT:     import_ir_inst92: {ir_id: import_ir4, inst_id: inst48000172}
+// CHECK:STDOUT:     import_ir_inst93: {ir_id: import_ir4, inst_id: inst48000170}
+// CHECK:STDOUT:     import_ir_inst94: {ir_id: import_ir4, inst_id: inst4800015D}
+// CHECK:STDOUT:     import_ir_inst95: {ir_id: import_ir4, inst_id: inst48000157}
+// CHECK:STDOUT:     import_ir_inst96: {ir_id: import_ir4, inst_id: inst48000155}
+// CHECK:STDOUT:     import_ir_inst97: {ir_id: import_ir4, inst_id: inst4800015A}
+// CHECK:STDOUT:     import_ir_inst98: {ir_id: import_ir4, inst_id: inst4800016B}
+// CHECK:STDOUT:     import_ir_inst99: {ir_id: import_ir4, inst_id: inst4800016D}
+// CHECK:STDOUT:     import_ir_inst100: {ir_id: import_ir4, inst_id: inst48000188}
+// CHECK:STDOUT:     import_ir_inst101: {ir_id: import_ir4, inst_id: inst48000171}
+// CHECK:STDOUT:     import_ir_inst102: {ir_id: import_ir4, inst_id: inst48000156}
+// CHECK:STDOUT:     import_ir_inst103: {ir_id: import_ir4, inst_id: inst4800015C}
+// CHECK:STDOUT:     import_ir_inst104: {ir_id: import_ir4, inst_id: inst48000164}
+// CHECK:STDOUT:     import_ir_inst105: {ir_id: import_ir4, inst_id: inst48000168}
+// CHECK:STDOUT:     import_ir_inst106: {ir_id: import_ir4, inst_id: inst4800016C}
+// CHECK:STDOUT:     import_ir_inst107: {ir_id: import_ir4, inst_id: inst48000174}
+// CHECK:STDOUT:     import_ir_inst108: {ir_id: import_ir4, inst_id: inst48000188}
+// CHECK:STDOUT:     import_ir_inst109: {ir_id: import_ir4, inst_id: inst48000183}
+// CHECK:STDOUT:     import_ir_inst110: {ir_id: import_ir4, inst_id: inst48000184}
+// CHECK:STDOUT:     import_ir_inst111: {ir_id: import_ir4, inst_id: inst4800017F}
+// CHECK:STDOUT:     import_ir_inst112: {ir_id: import_ir4, inst_id: inst48000181}
+// CHECK:STDOUT:     import_ir_inst113: {ir_id: import_ir4, inst_id: inst48000155}
+// CHECK:STDOUT:     import_ir_inst114: {ir_id: import_ir4, inst_id: inst4800015A}
+// CHECK:STDOUT:     import_ir_inst115: {ir_id: import_ir4, inst_id: inst4800018B}
+// CHECK:STDOUT:     import_ir_inst116: {ir_id: import_ir4, inst_id: inst4800018C}
+// CHECK:STDOUT:     import_ir_inst117: {ir_id: import_ir4, inst_id: inst48000178}
+// CHECK:STDOUT:     import_ir_inst118: {ir_id: import_ir4, inst_id: inst48000179}
+// CHECK:STDOUT:     import_ir_inst119: {ir_id: import_ir4, inst_id: inst4800017A}
+// CHECK:STDOUT:     import_ir_inst120: {ir_id: import_ir4, inst_id: inst4800017B}
+// CHECK:STDOUT:     import_ir_inst121: {ir_id: import_ir4, inst_id: inst4800017C}
+// CHECK:STDOUT:     import_ir_inst122: {ir_id: import_ir4, inst_id: inst48000180}
+// CHECK:STDOUT:     import_ir_inst123: {ir_id: import_ir4, inst_id: inst48000191}
+// CHECK:STDOUT:     import_ir_inst124: {ir_id: import_ir4, inst_id: inst48000199}
+// CHECK:STDOUT:     import_ir_inst125: {ir_id: import_ir4, inst_id: inst4800019D}
+// CHECK:STDOUT:     import_ir_inst126: {ir_id: import_ir4, inst_id: inst4800019F}
+// CHECK:STDOUT:     import_ir_inst127: {ir_id: import_ir4, inst_id: inst480001A0}
+// CHECK:STDOUT:     import_ir_inst128: {ir_id: import_ir4, inst_id: inst480001A3}
+// CHECK:STDOUT:     import_ir_inst129: {ir_id: import_ir4, inst_id: inst480001AF}
+// CHECK:STDOUT:     import_ir_inst130: {ir_id: import_ir4, inst_id: inst480001B4}
+// CHECK:STDOUT:     import_ir_inst131: {ir_id: import_ir4, inst_id: inst480001B8}
+// CHECK:STDOUT:     import_ir_inst132: {ir_id: import_ir4, inst_id: inst480001B9}
+// CHECK:STDOUT:     import_ir_inst133: {ir_id: import_ir4, inst_id: inst480001BE}
+// CHECK:STDOUT:     import_ir_inst134: {ir_id: import_ir4, inst_id: inst480001F7}
+// CHECK:STDOUT:     import_ir_inst135: {ir_id: import_ir4, inst_id: inst480001F5}
+// CHECK:STDOUT:     import_ir_inst136: {ir_id: import_ir4, inst_id: inst480001DD}
+// CHECK:STDOUT:     import_ir_inst137: {ir_id: import_ir4, inst_id: inst480001D7}
+// CHECK:STDOUT:     import_ir_inst138: {ir_id: import_ir4, inst_id: inst480001D2}
+// CHECK:STDOUT:     import_ir_inst139: {ir_id: import_ir4, inst_id: inst480001D0}
+// CHECK:STDOUT:     import_ir_inst140: {ir_id: import_ir4, inst_id: inst480001D5}
+// CHECK:STDOUT:     import_ir_inst141: {ir_id: import_ir4, inst_id: inst480001DA}
+// CHECK:STDOUT:     import_ir_inst142: {ir_id: import_ir4, inst_id: inst480001EF}
+// CHECK:STDOUT:     import_ir_inst143: {ir_id: import_ir4, inst_id: inst480001F1}
+// CHECK:STDOUT:     import_ir_inst144: {ir_id: import_ir4, inst_id: inst48000210}
+// CHECK:STDOUT:     import_ir_inst145: {ir_id: import_ir4, inst_id: inst480001F6}
+// CHECK:STDOUT:     import_ir_inst146: {ir_id: import_ir4, inst_id: inst480001D1}
+// CHECK:STDOUT:     import_ir_inst147: {ir_id: import_ir4, inst_id: inst480001D6}
+// CHECK:STDOUT:     import_ir_inst148: {ir_id: import_ir4, inst_id: inst480001DC}
+// CHECK:STDOUT:     import_ir_inst149: {ir_id: import_ir4, inst_id: inst480001E5}
+// CHECK:STDOUT:     import_ir_inst150: {ir_id: import_ir4, inst_id: inst480001E8}
+// CHECK:STDOUT:     import_ir_inst151: {ir_id: import_ir4, inst_id: inst480001EC}
+// CHECK:STDOUT:     import_ir_inst152: {ir_id: import_ir4, inst_id: inst480001F0}
+// CHECK:STDOUT:     import_ir_inst153: {ir_id: import_ir4, inst_id: inst480001F9}
+// CHECK:STDOUT:     import_ir_inst154: {ir_id: import_ir4, inst_id: inst48000210}
+// CHECK:STDOUT:     import_ir_inst155: {ir_id: import_ir4, inst_id: inst4800020B}
+// CHECK:STDOUT:     import_ir_inst156: {ir_id: import_ir4, inst_id: inst4800020C}
+// CHECK:STDOUT:     import_ir_inst157: {ir_id: import_ir4, inst_id: inst48000207}
+// CHECK:STDOUT:     import_ir_inst158: {ir_id: import_ir4, inst_id: inst48000209}
+// CHECK:STDOUT:     import_ir_inst159: {ir_id: import_ir4, inst_id: inst480001D0}
+// CHECK:STDOUT:     import_ir_inst160: {ir_id: import_ir4, inst_id: inst480001D5}
+// CHECK:STDOUT:     import_ir_inst161: {ir_id: import_ir4, inst_id: inst480001DA}
+// CHECK:STDOUT:     import_ir_inst162: {ir_id: import_ir4, inst_id: inst48000213}
+// CHECK:STDOUT:     import_ir_inst163: {ir_id: import_ir4, inst_id: inst48000214}
+// CHECK:STDOUT:     import_ir_inst164: {ir_id: import_ir4, inst_id: inst480001FE}
+// CHECK:STDOUT:     import_ir_inst165: {ir_id: import_ir4, inst_id: inst480001FF}
+// CHECK:STDOUT:     import_ir_inst166: {ir_id: import_ir4, inst_id: inst48000200}
+// CHECK:STDOUT:     import_ir_inst167: {ir_id: import_ir4, inst_id: inst48000201}
+// CHECK:STDOUT:     import_ir_inst168: {ir_id: import_ir4, inst_id: inst48000202}
+// CHECK:STDOUT:     import_ir_inst169: {ir_id: import_ir4, inst_id: inst48000203}
+// CHECK:STDOUT:     import_ir_inst170: {ir_id: import_ir4, inst_id: inst48000204}
+// CHECK:STDOUT:     import_ir_inst171: {ir_id: import_ir4, inst_id: inst48000208}
+// CHECK:STDOUT:     import_ir_inst172: {ir_id: import_ir4, inst_id: inst48000219}
+// CHECK:STDOUT:     import_ir_inst173: {ir_id: import_ir4, inst_id: inst48000220}
+// CHECK:STDOUT:     import_ir_inst174: {ir_id: import_ir4, inst_id: inst48000224}
+// CHECK:STDOUT:     import_ir_inst175: {ir_id: import_ir4, inst_id: inst48000226}
+// CHECK:STDOUT:     import_ir_inst176: {ir_id: import_ir4, inst_id: inst48000227}
+// CHECK:STDOUT:     import_ir_inst177: {ir_id: import_ir4, inst_id: inst4800022A}
+// CHECK:STDOUT:     import_ir_inst178: {ir_id: import_ir4, inst_id: inst48000234}
+// CHECK:STDOUT:     import_ir_inst179: {ir_id: import_ir4, inst_id: inst48000238}
+// CHECK:STDOUT:     import_ir_inst180: {ir_id: import_ir4, inst_id: inst4800023A}
+// CHECK:STDOUT:     import_ir_inst181: {ir_id: import_ir4, inst_id: inst4800023B}
+// CHECK:STDOUT:     import_ir_inst182: {ir_id: import_ir4, inst_id: inst4800023E}
+// CHECK:STDOUT:     import_ir_inst183: {ir_id: import_ir4, inst_id: inst4800024A}
+// CHECK:STDOUT:     import_ir_inst184: {ir_id: import_ir4, inst_id: inst4800024F}
+// CHECK:STDOUT:     import_ir_inst185: {ir_id: import_ir4, inst_id: inst48000253}
+// CHECK:STDOUT:     import_ir_inst186: {ir_id: import_ir4, inst_id: inst48000254}
+// CHECK:STDOUT:     import_ir_inst187: {ir_id: import_ir4, inst_id: inst48000259}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name(Core): ir0.inst16, name0: ir0.inst53}}
-// CHECK:STDOUT:     name_scope1:     {inst: ir0.inst16, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name3: ir0.inst69}}
-// CHECK:STDOUT:     name_scope2:     {inst: ir0.inst70, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {name(SelfType): ir0.inst73, name4: ir0.inst74}}
-// CHECK:STDOUT:     name_scope3:     {inst: ir0.inst94, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope4:     {inst: ir0.inst139, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope5:     {inst: ir0.inst143, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope6:     {inst: ir0.inst147, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope7:     {inst: ir0.inst151, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope8:     {inst: ir0.inst155, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope9:     {inst: ir0.inst181, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope10:    {inst: ir0.inst185, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope11:    {inst: ir0.inst189, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
-// CHECK:STDOUT:     name_scope12:    {inst: ir0.inst245, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name(Core): inst60000010, name0: inst60000035}}
+// CHECK:STDOUT:     name_scope1:     {inst: inst60000010, parent_scope: name_scope0, has_error: false, extended_scopes: [], names: {name3: inst60000045}}
+// CHECK:STDOUT:     name_scope2:     {inst: inst60000046, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {name(SelfType): inst60000049, name4: inst6000004A}}
+// CHECK:STDOUT:     name_scope3:     {inst: inst6000005E, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope4:     {inst: inst6000008B, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope5:     {inst: inst6000008F, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope6:     {inst: inst60000093, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope7:     {inst: inst60000097, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope8:     {inst: inst6000009B, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope9:     {inst: inst600000B5, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope10:    {inst: inst600000B9, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope11:    {inst: inst600000BD, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope12:    {inst: inst600000F5, parent_scope: name_scope1, has_error: false, extended_scopes: [], names: {}}
 // CHECK:STDOUT:   entity_names:
 // CHECK:STDOUT:     entity_name0:    {name: name(PeriodSelf), parent_scope: name_scope<none>, index: -1, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:     entity_name1:    {name: name1, parent_scope: name_scope<none>, index: 0, is_template: 0, clang_decl_id: clang_decl_id<none>}
@@ -295,24 +295,24 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:     entity_name60:   {name: name6, parent_scope: name_scope<none>, index: 2, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:     entity_name61:   {name: name6, parent_scope: name_scope<none>, index: 2, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:   functions:
-// CHECK:STDOUT:     function0:       {name: name0, parent_scope: name_scope0, call_params_id: inst_block13, return_slot_pattern: ir0.inst48, body: [inst_block20]}
-// CHECK:STDOUT:     function1:       {name: name4, parent_scope: name_scope2, return_slot_pattern: ir0.inst85}
-// CHECK:STDOUT:     function2:       {name: name4, parent_scope: name_scope3, return_slot_pattern: ir0.inst115}
-// CHECK:STDOUT:     function3:       {name: name4, parent_scope: name_scope8, return_slot_pattern: ir0.inst170}
-// CHECK:STDOUT:     function4:       {name: name4, parent_scope: name_scope11, return_slot_pattern: ir0.inst213}
-// CHECK:STDOUT:     function5:       {name: name4, parent_scope: name_scope12, return_slot_pattern: ir0.inst273}
+// CHECK:STDOUT:     function0:       {name: name0, parent_scope: name_scope0, call_params_id: inst_block13, return_slot_pattern: inst60000030, body: [inst_block20]}
+// CHECK:STDOUT:     function1:       {name: name4, parent_scope: name_scope2, return_slot_pattern: inst60000055}
+// CHECK:STDOUT:     function2:       {name: name4, parent_scope: name_scope3, return_slot_pattern: inst60000073}
+// CHECK:STDOUT:     function3:       {name: name4, parent_scope: name_scope8, return_slot_pattern: inst600000AA}
+// CHECK:STDOUT:     function4:       {name: name4, parent_scope: name_scope11, return_slot_pattern: inst600000D5}
+// CHECK:STDOUT:     function5:       {name: name4, parent_scope: name_scope12, return_slot_pattern: inst60000111}
 // CHECK:STDOUT:   classes:         {}
 // CHECK:STDOUT:   generics:
-// CHECK:STDOUT:     generic0:        {decl: ir0.inst53, bindings: inst_block16}
-// CHECK:STDOUT:     generic1:        {decl: ir0.inst79, bindings: inst_block24}
-// CHECK:STDOUT:     generic2:        {decl: ir0.inst94, bindings: inst_block29}
-// CHECK:STDOUT:     generic3:        {decl: ir0.inst110, bindings: inst_block36}
-// CHECK:STDOUT:     generic4:        {decl: ir0.inst155, bindings: inst_block46}
-// CHECK:STDOUT:     generic5:        {decl: ir0.inst166, bindings: inst_block52}
-// CHECK:STDOUT:     generic6:        {decl: ir0.inst189, bindings: inst_block59}
-// CHECK:STDOUT:     generic7:        {decl: ir0.inst208, bindings: inst_block67}
-// CHECK:STDOUT:     generic8:        {decl: ir0.inst245, bindings: inst_block81}
-// CHECK:STDOUT:     generic9:        {decl: ir0.inst268, bindings: inst_block89}
+// CHECK:STDOUT:     generic0:        {decl: inst60000035, bindings: inst_block16}
+// CHECK:STDOUT:     generic1:        {decl: inst6000004F, bindings: inst_block24}
+// CHECK:STDOUT:     generic2:        {decl: inst6000005E, bindings: inst_block29}
+// CHECK:STDOUT:     generic3:        {decl: inst6000006E, bindings: inst_block36}
+// CHECK:STDOUT:     generic4:        {decl: inst6000009B, bindings: inst_block46}
+// CHECK:STDOUT:     generic5:        {decl: inst600000A6, bindings: inst_block52}
+// CHECK:STDOUT:     generic6:        {decl: inst600000BD, bindings: inst_block59}
+// CHECK:STDOUT:     generic7:        {decl: inst600000D0, bindings: inst_block67}
+// CHECK:STDOUT:     generic8:        {decl: inst600000F5, bindings: inst_block81}
+// CHECK:STDOUT:     generic9:        {decl: inst6000010C, bindings: inst_block89}
 // CHECK:STDOUT:   specifics:
 // CHECK:STDOUT:     specific0:       {generic: generic0, args: inst_block17}
 // CHECK:STDOUT:     specific1:       {generic: generic1, args: inst_block26}
@@ -348,14 +348,14 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir0.inst36)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst36)}
-// CHECK:STDOUT:     'type(ir0.inst38)':
-// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(ir0.inst40)}
-// CHECK:STDOUT:     'type(ir0.inst40)':
-// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(ir0.inst40)}
-// CHECK:STDOUT:     'type(ir0.inst54)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst36)}
+// CHECK:STDOUT:     'type(inst60000024)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000024)}
+// CHECK:STDOUT:     'type(inst60000026)':
+// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(inst60000028)}
+// CHECK:STDOUT:     'type(inst60000028)':
+// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst60000028)}
+// CHECK:STDOUT:     'type(inst60000036)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000024)}
 // CHECK:STDOUT:     'type(symbolic_constant3)':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(symbolic_constant3)}
 // CHECK:STDOUT:     'type(symbolic_constant7)':
@@ -368,1430 +368,1430 @@ fn Foo[T:! type](p: T*) -> (T*, ()) {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(symbolic_constant4)}
 // CHECK:STDOUT:     'type(symbolic_constant8)':
 // CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(symbolic_constant11)}
-// CHECK:STDOUT:     'type(ir0.inst71)':
-// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(ir0.inst71)}
+// CHECK:STDOUT:     'type(inst60000047)':
+// 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_constant253)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst36)}
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000024)}
 // CHECK:STDOUT:     'type(symbolic_constant256)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst36)}
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst60000024)}
 // CHECK:STDOUT:     'type(inst(BoundMethodType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(BoundMethodType))}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst15:      {kind: ImportDecl, arg0: name(Core)}
-// CHECK:STDOUT:     ir0.inst16:      {kind: Namespace, arg0: name_scope1, arg1: ir0.inst15, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst17:      {kind: FacetType, arg0: facet_type0, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst18:      {kind: BindSymbolicName, arg0: entity_name0, arg1: inst<none>, type: type(ir0.inst17)}
-// CHECK:STDOUT:     ir0.inst19:      {kind: BindSymbolicName, arg0: entity_name0, arg1: inst<none>, type: type(ir0.inst17)}
-// CHECK:STDOUT:     ir0.inst20:      {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst21:      {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst22:      {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst23:      {kind: PatternType, arg0: inst(TypeType), type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst24:      {kind: SymbolicBindingPattern, arg0: entity_name1, type: type(ir0.inst23)}
-// CHECK:STDOUT:     ir0.inst25:      {kind: NameRef, arg0: name1, arg1: ir0.inst20, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst26:      {kind: PointerType, arg0: ir0.inst25, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst27:      {kind: PointerType, arg0: ir0.inst21, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst28:      {kind: PointerType, arg0: ir0.inst22, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst29:      {kind: BindName, arg0: entity_name2, arg1: ir0.inst49, type: type(symbolic_constant4)}
-// CHECK:STDOUT:     ir0.inst30:      {kind: PatternType, arg0: ir0.inst27, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst31:      {kind: BindingPattern, arg0: entity_name2, type: type(symbolic_constant6)}
-// CHECK:STDOUT:     ir0.inst32:      {kind: PatternType, arg0: ir0.inst28, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst33:      {kind: ValueParamPattern, arg0: ir0.inst31, arg1: call_param0, type: type(symbolic_constant6)}
-// CHECK:STDOUT:     ir0.inst34:      {kind: NameRef, arg0: name1, arg1: ir0.inst20, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst35:      {kind: PointerType, arg0: ir0.inst34, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst36:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst37:      {kind: TupleLiteral, arg0: inst_block_empty, type: type(ir0.inst36)}
-// CHECK:STDOUT:     ir0.inst38:      {kind: TupleType, arg0: inst_block9, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst39:      {kind: TupleLiteral, arg0: inst_block8, type: type(ir0.inst38)}
-// CHECK:STDOUT:     ir0.inst40:      {kind: PointerType, arg0: ir0.inst38, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst41:      {kind: Converted, arg0: ir0.inst37, arg1: ir0.inst36, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst42:      {kind: TupleType, arg0: inst_block11, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst43:      {kind: Converted, arg0: ir0.inst39, arg1: ir0.inst42, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst44:      {kind: TupleType, arg0: inst_block12, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst45:      {kind: PatternType, arg0: ir0.inst42, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst46:      {kind: ReturnSlotPattern, arg0: ir0.inst43, type: type(symbolic_constant10)}
-// CHECK:STDOUT:     ir0.inst47:      {kind: PatternType, arg0: ir0.inst44, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst48:      {kind: OutParamPattern, arg0: ir0.inst46, arg1: call_param1, type: type(symbolic_constant10)}
-// CHECK:STDOUT:     ir0.inst49:      {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(symbolic_constant4)}
-// CHECK:STDOUT:     ir0.inst50:      {kind: SpliceBlock, arg0: inst_block6, arg1: ir0.inst26, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst51:      {kind: OutParam, arg0: call_param1, arg1: name(ReturnSlot), type: type(symbolic_constant8)}
-// CHECK:STDOUT:     ir0.inst52:      {kind: ReturnSlot, arg0: ir0.inst42, arg1: ir0.inst51, type: type(symbolic_constant8)}
-// CHECK:STDOUT:     ir0.inst53:      {kind: FunctionDecl, arg0: function0, arg1: inst_block15, type: type(ir0.inst54)}
-// CHECK:STDOUT:     ir0.inst54:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst55:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst54)}
-// CHECK:STDOUT:     ir0.inst56:      {kind: PointerType, arg0: ir0.inst42, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst57:      {kind: RequireCompleteType, arg0: ir0.inst42, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst58:      {kind: RequireCompleteType, arg0: ir0.inst42, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst59:      {kind: RequireCompleteType, arg0: ir0.inst44, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst60:      {kind: RequireCompleteType, arg0: ir0.inst27, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst61:      {kind: RequireCompleteType, arg0: ir0.inst27, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst62:      {kind: RequireCompleteType, arg0: ir0.inst28, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst63:      {kind: NameRef, arg0: name2, arg1: ir0.inst29, type: type(symbolic_constant4)}
-// CHECK:STDOUT:     ir0.inst64:      {kind: TupleLiteral, arg0: inst_block_empty, type: type(ir0.inst36)}
-// CHECK:STDOUT:     ir0.inst65:      {kind: TupleLiteral, arg0: inst_block21, type: type(symbolic_constant8)}
-// CHECK:STDOUT:     ir0.inst66:      {kind: RequireCompleteType, arg0: ir0.inst42, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst67:      {kind: TupleAccess, arg0: ir0.inst52, arg1: element0, type: type(symbolic_constant4)}
-// CHECK:STDOUT:     ir0.inst68:      {kind: RequireCompleteType, arg0: ir0.inst27, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst69:      {kind: ImportRefLoaded, arg0: import_ir_inst0, arg1: entity_name3, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst70:      {kind: InterfaceDecl, arg0: interface0, arg1: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst71:      {kind: FacetType, arg0: facet_type1, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst72:      {kind: BindSymbolicName, arg0: entity_name4, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst73:      {kind: ImportRefUnloaded, arg0: import_ir_inst2, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst74:      {kind: ImportRefLoaded, arg0: import_ir_inst3, arg1: entity_name<none>, type: type(ir0.inst76)}
-// CHECK:STDOUT:     ir0.inst75:      {kind: ImportRefUnloaded, arg0: import_ir_inst4, arg1: entity_name5}
-// CHECK:STDOUT:     ir0.inst76:      {kind: AssociatedEntityType, arg0: interface0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst77:      {kind: ImportRefLoaded, arg0: import_ir_inst5, arg1: entity_name<none>, type: type(ir0.inst80)}
-// CHECK:STDOUT:     ir0.inst78:      {kind: AssociatedEntity, arg0: element0, arg1: ir0.inst77, type: type(ir0.inst76)}
-// CHECK:STDOUT:     ir0.inst79:      {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(ir0.inst80)}
-// CHECK:STDOUT:     ir0.inst80:      {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst81:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst80)}
-// CHECK:STDOUT:     ir0.inst82:      {kind: SymbolicBindingType, arg0: entity_name4, arg1: ir0.inst72, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst83:      {kind: PatternType, arg0: ir0.inst82, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst84:      {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant19)}
-// CHECK:STDOUT:     ir0.inst85:      {kind: OutParamPattern, arg0: ir0.inst84, arg1: call_param1, type: type(symbolic_constant19)}
-// CHECK:STDOUT:     ir0.inst86:      {kind: BindingPattern, arg0: entity_name8, type: type(symbolic_constant19)}
-// CHECK:STDOUT:     ir0.inst87:      {kind: ValueParamPattern, arg0: ir0.inst86, arg1: call_param0, type: type(symbolic_constant19)}
-// CHECK:STDOUT:     ir0.inst88:      {kind: ImportRefLoaded, arg0: import_ir_inst11, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst89:      {kind: BindSymbolicName, arg0: entity_name4, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst90:      {kind: SymbolicBindingType, arg0: entity_name4, arg1: ir0.inst89, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst91:      {kind: PatternType, arg0: ir0.inst90, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst92:      {kind: LookupImplWitness, arg0: ir0.inst27, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst93:      {kind: ImportRefUnloaded, arg0: import_ir_inst15, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst94:      {kind: ImplDecl, arg0: impl0, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst95:      {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst96:      {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst95, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst97:      {kind: ConstType, arg0: ir0.inst96, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst98:      {kind: PatternType, arg0: ir0.inst71, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst99:      {kind: SymbolicBindingPattern, arg0: entity_name13, type: type(ir0.inst98)}
-// CHECK:STDOUT:     ir0.inst100:     {kind: ImportRefLoaded, arg0: import_ir_inst18, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst101:     {kind: ImportRefLoaded, arg0: import_ir_inst19, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst102:     {kind: ImportRefLoaded, arg0: import_ir_inst20, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst103:     {kind: ImportRefUnloaded, arg0: import_ir_inst21, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst104:     {kind: ImplWitnessTable, arg0: inst_block30, arg1: impl0}
-// CHECK:STDOUT:     ir0.inst105:     {kind: ImplWitness, arg0: ir0.inst104, arg1: specific2, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst106:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst107:     {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst106, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst108:     {kind: ConstType, arg0: ir0.inst107, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst109:     {kind: ImplWitness, arg0: ir0.inst104, arg1: specific3, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst110:     {kind: FunctionDecl, arg0: function2, arg1: inst_block_empty, type: type(symbolic_constant38)}
-// CHECK:STDOUT:     ir0.inst111:     {kind: FunctionType, arg0: function2, arg1: specific2, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst112:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant38)}
-// CHECK:STDOUT:     ir0.inst113:     {kind: PatternType, arg0: ir0.inst97, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst114:     {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant43)}
-// CHECK:STDOUT:     ir0.inst115:     {kind: OutParamPattern, arg0: ir0.inst114, arg1: call_param1, type: type(symbolic_constant43)}
-// CHECK:STDOUT:     ir0.inst116:     {kind: BindingPattern, arg0: entity_name17, type: type(symbolic_constant43)}
-// CHECK:STDOUT:     ir0.inst117:     {kind: ValueParamPattern, arg0: ir0.inst116, arg1: call_param0, type: type(symbolic_constant43)}
-// CHECK:STDOUT:     ir0.inst118:     {kind: ImportRefLoaded, arg0: import_ir_inst32, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst119:     {kind: FunctionType, arg0: function2, arg1: specific3, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst120:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant45)}
-// CHECK:STDOUT:     ir0.inst121:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst122:     {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst121, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst123:     {kind: ConstType, arg0: ir0.inst122, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst124:     {kind: PatternType, arg0: ir0.inst123, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst125:     {kind: RequireCompleteType, arg0: ir0.inst97, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst126:     {kind: RequireCompleteType, arg0: ir0.inst96, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst127:     {kind: LookupImplWitness, arg0: ir0.inst95, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst128:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst95, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst129:     {kind: ImplWitnessAccess, arg0: ir0.inst127, arg1: element0, type: type(symbolic_constant60)}
-// CHECK:STDOUT:     ir0.inst130:     {kind: SpecificImplFunction, arg0: ir0.inst129, arg1: specific5, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst131:     {kind: RequireCompleteType, arg0: ir0.inst123, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst132:     {kind: RequireCompleteType, arg0: ir0.inst122, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst133:     {kind: LookupImplWitness, arg0: ir0.inst121, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst134:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst121, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst135:     {kind: ImplWitnessAccess, arg0: ir0.inst133, arg1: element0, type: type(symbolic_constant69)}
-// CHECK:STDOUT:     ir0.inst136:     {kind: SpecificImplFunction, arg0: ir0.inst135, arg1: specific6, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst137:     {kind: PatternType, arg0: ir0.inst96, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst138:     {kind: ImportRefUnloaded, arg0: import_ir_inst45, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst139:     {kind: ImplDecl, arg0: impl1, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst140:     {kind: ImportRefLoaded, arg0: import_ir_inst47, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst141:     {kind: ImportRefLoaded, arg0: import_ir_inst48, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst142:     {kind: ImportRefUnloaded, arg0: import_ir_inst49, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst143:     {kind: ImplDecl, arg0: impl2, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst144:     {kind: ImportRefLoaded, arg0: import_ir_inst51, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst145:     {kind: ImportRefLoaded, arg0: import_ir_inst52, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst146:     {kind: ImportRefUnloaded, arg0: import_ir_inst53, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst147:     {kind: ImplDecl, arg0: impl3, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst148:     {kind: ImportRefLoaded, arg0: import_ir_inst55, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst149:     {kind: ImportRefLoaded, arg0: import_ir_inst56, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst150:     {kind: ImportRefUnloaded, arg0: import_ir_inst57, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst151:     {kind: ImplDecl, arg0: impl4, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst152:     {kind: ImportRefLoaded, arg0: import_ir_inst59, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst153:     {kind: ImportRefLoaded, arg0: import_ir_inst60, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst154:     {kind: ImportRefLoaded, arg0: import_ir_inst61, arg1: entity_name<none>, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst155:     {kind: ImplDecl, arg0: impl5, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst156:     {kind: SymbolicBindingPattern, arg0: entity_name21, type: type(ir0.inst23)}
-// CHECK:STDOUT:     ir0.inst157:     {kind: ImportRefLoaded, arg0: import_ir_inst64, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst158:     {kind: ImportRefLoaded, arg0: import_ir_inst65, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst159:     {kind: ImportRefLoaded, arg0: import_ir_inst66, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst160:     {kind: ImportRefUnloaded, arg0: import_ir_inst67, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst161:     {kind: ImplWitnessTable, arg0: inst_block47, arg1: impl5}
-// CHECK:STDOUT:     ir0.inst162:     {kind: ImplWitness, arg0: ir0.inst161, arg1: specific7, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst163:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst164:     {kind: PointerType, arg0: ir0.inst163, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst165:     {kind: ImplWitness, arg0: ir0.inst161, arg1: specific8, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst166:     {kind: FunctionDecl, arg0: function3, arg1: inst_block_empty, type: type(symbolic_constant81)}
-// CHECK:STDOUT:     ir0.inst167:     {kind: FunctionType, arg0: function3, arg1: specific7, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst168:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant81)}
-// CHECK:STDOUT:     ir0.inst169:     {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant85)}
-// CHECK:STDOUT:     ir0.inst170:     {kind: OutParamPattern, arg0: ir0.inst169, arg1: call_param1, type: type(symbolic_constant85)}
-// CHECK:STDOUT:     ir0.inst171:     {kind: BindingPattern, arg0: entity_name24, type: type(symbolic_constant85)}
-// CHECK:STDOUT:     ir0.inst172:     {kind: ValueParamPattern, arg0: ir0.inst171, arg1: call_param0, type: type(symbolic_constant85)}
-// CHECK:STDOUT:     ir0.inst173:     {kind: ImportRefLoaded, arg0: import_ir_inst77, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst174:     {kind: FunctionType, arg0: function3, arg1: specific8, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst175:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant88)}
-// CHECK:STDOUT:     ir0.inst176:     {kind: RequireCompleteType, arg0: ir0.inst164, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst177:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst178:     {kind: PointerType, arg0: ir0.inst177, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst179:     {kind: PatternType, arg0: ir0.inst178, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst180:     {kind: ImportRefUnloaded, arg0: import_ir_inst84, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst181:     {kind: ImplDecl, arg0: impl6, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst182:     {kind: ImportRefLoaded, arg0: import_ir_inst86, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst183:     {kind: ImportRefLoaded, arg0: import_ir_inst87, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst184:     {kind: ImportRefUnloaded, arg0: import_ir_inst88, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst185:     {kind: ImplDecl, arg0: impl7, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst186:     {kind: ImportRefLoaded, arg0: import_ir_inst90, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst187:     {kind: ImportRefLoaded, arg0: import_ir_inst91, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst188:     {kind: ImportRefUnloaded, arg0: import_ir_inst92, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst189:     {kind: ImplDecl, arg0: impl8, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst190:     {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst191:     {kind: SymbolicBindingType, arg0: entity_name26, arg1: ir0.inst190, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst192:     {kind: TupleType, arg0: inst_block57, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst193:     {kind: SymbolicBindingPattern, arg0: entity_name28, type: type(ir0.inst98)}
-// CHECK:STDOUT:     ir0.inst194:     {kind: SymbolicBindingPattern, arg0: entity_name29, type: type(ir0.inst98)}
-// CHECK:STDOUT:     ir0.inst195:     {kind: ImportRefLoaded, arg0: import_ir_inst96, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst196:     {kind: ImportRefLoaded, arg0: import_ir_inst97, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst197:     {kind: ImportRefLoaded, arg0: import_ir_inst98, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst198:     {kind: ImportRefLoaded, arg0: import_ir_inst99, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst199:     {kind: ImportRefUnloaded, arg0: import_ir_inst100, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst200:     {kind: ImplWitnessTable, arg0: inst_block60, arg1: impl8}
-// CHECK:STDOUT:     ir0.inst201:     {kind: ImplWitness, arg0: ir0.inst200, arg1: specific10, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst202:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst203:     {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst204:     {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst202, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst205:     {kind: SymbolicBindingType, arg0: entity_name26, arg1: ir0.inst203, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst206:     {kind: TupleType, arg0: inst_block62, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst207:     {kind: ImplWitness, arg0: ir0.inst200, arg1: specific11, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst208:     {kind: FunctionDecl, arg0: function4, arg1: inst_block_empty, type: type(symbolic_constant114)}
-// CHECK:STDOUT:     ir0.inst209:     {kind: FunctionType, arg0: function4, arg1: specific10, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst210:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant114)}
-// CHECK:STDOUT:     ir0.inst211:     {kind: PatternType, arg0: ir0.inst192, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst212:     {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant119)}
-// CHECK:STDOUT:     ir0.inst213:     {kind: OutParamPattern, arg0: ir0.inst212, arg1: call_param1, type: type(symbolic_constant119)}
-// CHECK:STDOUT:     ir0.inst214:     {kind: BindingPattern, arg0: entity_name36, type: type(symbolic_constant119)}
-// CHECK:STDOUT:     ir0.inst215:     {kind: ValueParamPattern, arg0: ir0.inst214, arg1: call_param0, type: type(symbolic_constant119)}
-// CHECK:STDOUT:     ir0.inst216:     {kind: ImportRefLoaded, arg0: import_ir_inst113, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst217:     {kind: ImportRefLoaded, arg0: import_ir_inst114, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst218:     {kind: FunctionType, arg0: function4, arg1: specific11, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst219:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant121)}
-// CHECK:STDOUT:     ir0.inst220:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst221:     {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst220, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst222:     {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst223:     {kind: SymbolicBindingType, arg0: entity_name26, arg1: ir0.inst222, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst224:     {kind: TupleType, arg0: inst_block70, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst225:     {kind: PatternType, arg0: ir0.inst224, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst226:     {kind: RequireCompleteType, arg0: ir0.inst192, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst227:     {kind: RequireCompleteType, arg0: ir0.inst191, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst228:     {kind: LookupImplWitness, arg0: ir0.inst190, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst229:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst190, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst230:     {kind: ImplWitnessAccess, arg0: ir0.inst228, arg1: element0, type: type(symbolic_constant145)}
-// CHECK:STDOUT:     ir0.inst231:     {kind: SpecificImplFunction, arg0: ir0.inst230, arg1: specific13, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst232:     {kind: RequireCompleteType, arg0: ir0.inst224, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst233:     {kind: RequireCompleteType, arg0: ir0.inst221, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst234:     {kind: LookupImplWitness, arg0: ir0.inst220, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst235:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst220, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst236:     {kind: ImplWitnessAccess, arg0: ir0.inst234, arg1: element0, type: type(symbolic_constant154)}
-// CHECK:STDOUT:     ir0.inst237:     {kind: SpecificImplFunction, arg0: ir0.inst236, arg1: specific14, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst238:     {kind: RequireCompleteType, arg0: ir0.inst223, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst239:     {kind: LookupImplWitness, arg0: ir0.inst222, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst240:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst222, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst241:     {kind: ImplWitnessAccess, arg0: ir0.inst239, arg1: element0, type: type(symbolic_constant159)}
-// CHECK:STDOUT:     ir0.inst242:     {kind: SpecificImplFunction, arg0: ir0.inst241, arg1: specific15, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst243:     {kind: PatternType, arg0: ir0.inst191, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst244:     {kind: ImportRefUnloaded, arg0: import_ir_inst134, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst245:     {kind: ImplDecl, arg0: impl9, arg1: inst_block_empty}
-// CHECK:STDOUT:     ir0.inst246:     {kind: BindSymbolicName, arg0: entity_name41, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst247:     {kind: SymbolicBindingType, arg0: entity_name41, arg1: ir0.inst246, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst248:     {kind: TupleType, arg0: inst_block79, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst249:     {kind: SymbolicBindingPattern, arg0: entity_name43, type: type(ir0.inst98)}
-// CHECK:STDOUT:     ir0.inst250:     {kind: SymbolicBindingPattern, arg0: entity_name44, type: type(ir0.inst98)}
-// CHECK:STDOUT:     ir0.inst251:     {kind: SymbolicBindingPattern, arg0: entity_name45, type: type(ir0.inst98)}
-// CHECK:STDOUT:     ir0.inst252:     {kind: ImportRefLoaded, arg0: import_ir_inst139, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst253:     {kind: ImportRefLoaded, arg0: import_ir_inst140, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst254:     {kind: ImportRefLoaded, arg0: import_ir_inst141, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst255:     {kind: ImportRefLoaded, arg0: import_ir_inst142, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst256:     {kind: ImportRefLoaded, arg0: import_ir_inst143, arg1: entity_name<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst257:     {kind: ImportRefUnloaded, arg0: import_ir_inst144, arg1: entity_name<none>}
-// CHECK:STDOUT:     ir0.inst258:     {kind: ImplWitnessTable, arg0: inst_block82, arg1: impl9}
-// CHECK:STDOUT:     ir0.inst259:     {kind: ImplWitness, arg0: ir0.inst258, arg1: specific16, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst260:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst261:     {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst262:     {kind: BindSymbolicName, arg0: entity_name41, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst263:     {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst260, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst264:     {kind: SymbolicBindingType, arg0: entity_name26, arg1: ir0.inst261, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst265:     {kind: SymbolicBindingType, arg0: entity_name41, arg1: ir0.inst262, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst266:     {kind: TupleType, arg0: inst_block84, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst267:     {kind: ImplWitness, arg0: ir0.inst258, arg1: specific17, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst268:     {kind: FunctionDecl, arg0: function5, arg1: inst_block_empty, type: type(symbolic_constant186)}
-// CHECK:STDOUT:     ir0.inst269:     {kind: FunctionType, arg0: function5, arg1: specific16, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst270:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant186)}
-// CHECK:STDOUT:     ir0.inst271:     {kind: PatternType, arg0: ir0.inst248, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst272:     {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant191)}
-// CHECK:STDOUT:     ir0.inst273:     {kind: OutParamPattern, arg0: ir0.inst272, arg1: call_param1, type: type(symbolic_constant191)}
-// CHECK:STDOUT:     ir0.inst274:     {kind: BindingPattern, arg0: entity_name55, type: type(symbolic_constant191)}
-// CHECK:STDOUT:     ir0.inst275:     {kind: ValueParamPattern, arg0: ir0.inst274, arg1: call_param0, type: type(symbolic_constant191)}
-// CHECK:STDOUT:     ir0.inst276:     {kind: ImportRefLoaded, arg0: import_ir_inst159, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst277:     {kind: ImportRefLoaded, arg0: import_ir_inst160, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst278:     {kind: ImportRefLoaded, arg0: import_ir_inst161, arg1: entity_name<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst279:     {kind: FunctionType, arg0: function5, arg1: specific17, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst280:     {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant193)}
-// CHECK:STDOUT:     ir0.inst281:     {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst282:     {kind: SymbolicBindingType, arg0: entity_name1, arg1: ir0.inst281, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst283:     {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst284:     {kind: SymbolicBindingType, arg0: entity_name26, arg1: ir0.inst283, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst285:     {kind: BindSymbolicName, arg0: entity_name41, arg1: inst<none>, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst286:     {kind: SymbolicBindingType, arg0: entity_name41, arg1: ir0.inst285, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst287:     {kind: TupleType, arg0: inst_block92, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst288:     {kind: PatternType, arg0: ir0.inst287, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst289:     {kind: RequireCompleteType, arg0: ir0.inst248, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst290:     {kind: RequireCompleteType, arg0: ir0.inst247, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst291:     {kind: LookupImplWitness, arg0: ir0.inst246, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst292:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst246, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst293:     {kind: ImplWitnessAccess, arg0: ir0.inst291, arg1: element0, type: type(symbolic_constant226)}
-// CHECK:STDOUT:     ir0.inst294:     {kind: SpecificImplFunction, arg0: ir0.inst293, arg1: specific19, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst295:     {kind: RequireCompleteType, arg0: ir0.inst287, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst296:     {kind: RequireCompleteType, arg0: ir0.inst282, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst297:     {kind: LookupImplWitness, arg0: ir0.inst281, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst298:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst281, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst299:     {kind: ImplWitnessAccess, arg0: ir0.inst297, arg1: element0, type: type(symbolic_constant235)}
-// CHECK:STDOUT:     ir0.inst300:     {kind: SpecificImplFunction, arg0: ir0.inst299, arg1: specific20, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst301:     {kind: RequireCompleteType, arg0: ir0.inst284, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst302:     {kind: LookupImplWitness, arg0: ir0.inst283, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst303:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst283, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst304:     {kind: ImplWitnessAccess, arg0: ir0.inst302, arg1: element0, type: type(symbolic_constant240)}
-// CHECK:STDOUT:     ir0.inst305:     {kind: SpecificImplFunction, arg0: ir0.inst304, arg1: specific21, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst306:     {kind: RequireCompleteType, arg0: ir0.inst286, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst307:     {kind: LookupImplWitness, arg0: ir0.inst285, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst308:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst285, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst309:     {kind: ImplWitnessAccess, arg0: ir0.inst307, arg1: element0, type: type(symbolic_constant245)}
-// CHECK:STDOUT:     ir0.inst310:     {kind: SpecificImplFunction, arg0: ir0.inst309, arg1: specific22, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst311:     {kind: PatternType, arg0: ir0.inst247, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst312:     {kind: LookupImplWitness, arg0: ir0.inst27, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst313:     {kind: LookupImplWitness, arg0: ir0.inst28, arg1: specific_interface0, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst314:     {kind: FacetValue, arg0: ir0.inst27, arg1: inst_block103, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst315:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst314, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst316:     {kind: ImplWitnessAccess, arg0: ir0.inst312, arg1: element0, type: type(symbolic_constant256)}
-// CHECK:STDOUT:     ir0.inst317:     {kind: ImplWitnessAccess, arg0: ir0.inst312, arg1: element0, type: type(symbolic_constant253)}
-// CHECK:STDOUT:     ir0.inst318:     {kind: FacetValue, arg0: ir0.inst28, arg1: inst_block104, type: type(ir0.inst71)}
-// CHECK:STDOUT:     ir0.inst319:     {kind: FunctionTypeWithSelfType, arg0: ir0.inst80, arg1: ir0.inst318, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst320:     {kind: ImplWitnessAccess, arg0: ir0.inst313, arg1: element0, type: type(symbolic_constant256)}
-// CHECK:STDOUT:     ir0.inst321:     {kind: BoundMethod, arg0: ir0.inst63, arg1: ir0.inst316, type: type(inst(BoundMethodType))}
-// CHECK:STDOUT:     ir0.inst322:     {kind: SpecificImplFunction, arg0: ir0.inst316, arg1: specific23, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst323:     {kind: SpecificImplFunction, arg0: ir0.inst317, arg1: specific23, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst324:     {kind: SpecificImplFunction, arg0: ir0.inst320, arg1: specific24, type: type(inst(SpecificFunctionType))}
-// CHECK:STDOUT:     ir0.inst325:     {kind: BoundMethod, arg0: ir0.inst63, arg1: ir0.inst322, type: type(inst(BoundMethodType))}
-// CHECK:STDOUT:     ir0.inst326:     {kind: RequireCompleteType, arg0: ir0.inst27, type: type(inst(WitnessType))}
-// CHECK:STDOUT:     ir0.inst327:     {kind: Call, arg0: ir0.inst325, arg1: inst_block108, type: type(symbolic_constant4)}
-// CHECK:STDOUT:     ir0.inst328:     {kind: InitializeFrom, arg0: ir0.inst327, arg1: ir0.inst67, type: type(symbolic_constant4)}
-// CHECK:STDOUT:     ir0.inst329:     {kind: TupleAccess, arg0: ir0.inst52, arg1: element1, type: type(ir0.inst36)}
-// CHECK:STDOUT:     ir0.inst330:     {kind: TupleInit, arg0: inst_block_empty, arg1: ir0.inst329, type: type(ir0.inst36)}
-// CHECK:STDOUT:     ir0.inst331:     {kind: TupleValue, arg0: inst_block_empty, type: type(ir0.inst36)}
-// CHECK:STDOUT:     ir0.inst332:     {kind: Converted, arg0: ir0.inst64, arg1: ir0.inst330, type: type(ir0.inst36)}
-// CHECK:STDOUT:     ir0.inst333:     {kind: TupleInit, arg0: inst_block109, arg1: ir0.inst52, type: type(symbolic_constant8)}
-// CHECK:STDOUT:     ir0.inst334:     {kind: Converted, arg0: ir0.inst65, arg1: ir0.inst333, type: type(symbolic_constant8)}
-// CHECK:STDOUT:     ir0.inst335:     {kind: ReturnExpr, arg0: ir0.inst334, arg1: ir0.inst52}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst6000000F:    {kind: ImportDecl, arg0: name(Core)}
+// CHECK:STDOUT:     inst60000010:    {kind: Namespace, arg0: name_scope1, arg1: inst6000000F, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst60000011:    {kind: FacetType, arg0: facet_type0, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000012:    {kind: BindSymbolicName, arg0: entity_name0, arg1: inst<none>, type: type(inst60000011)}
+// CHECK:STDOUT:     inst60000013:    {kind: BindSymbolicName, arg0: entity_name0, arg1: inst<none>, type: type(inst60000011)}
+// CHECK:STDOUT:     inst60000014:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000015:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000016:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000017:    {kind: PatternType, arg0: inst(TypeType), type: type(TypeType)}
+// CHECK:STDOUT:     inst60000018:    {kind: SymbolicBindingPattern, arg0: entity_name1, type: type(inst60000017)}
+// CHECK:STDOUT:     inst60000019:    {kind: NameRef, arg0: name1, arg1: inst60000014, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001A:    {kind: PointerType, arg0: inst60000019, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001B:    {kind: PointerType, arg0: inst60000015, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001C:    {kind: PointerType, arg0: inst60000016, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001D:    {kind: BindName, arg0: entity_name2, arg1: inst60000031, type: type(symbolic_constant4)}
+// CHECK:STDOUT:     inst6000001E:    {kind: PatternType, arg0: inst6000001B, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001F:    {kind: BindingPattern, arg0: entity_name2, type: type(symbolic_constant6)}
+// CHECK:STDOUT:     inst60000020:    {kind: PatternType, arg0: inst6000001C, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000021:    {kind: ValueParamPattern, arg0: inst6000001F, arg1: call_param0, type: type(symbolic_constant6)}
+// CHECK:STDOUT:     inst60000022:    {kind: NameRef, arg0: name1, arg1: inst60000014, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000023:    {kind: PointerType, arg0: inst60000022, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000024:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000025:    {kind: TupleLiteral, arg0: inst_block_empty, type: type(inst60000024)}
+// CHECK:STDOUT:     inst60000026:    {kind: TupleType, arg0: inst_block9, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000027:    {kind: TupleLiteral, arg0: inst_block8, type: type(inst60000026)}
+// CHECK:STDOUT:     inst60000028:    {kind: PointerType, arg0: inst60000026, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000029:    {kind: Converted, arg0: inst60000025, arg1: inst60000024, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002A:    {kind: TupleType, arg0: inst_block11, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002B:    {kind: Converted, arg0: inst60000027, arg1: inst6000002A, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002C:    {kind: TupleType, arg0: inst_block12, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002D:    {kind: PatternType, arg0: inst6000002A, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000002E:    {kind: ReturnSlotPattern, arg0: inst6000002B, type: type(symbolic_constant10)}
+// CHECK:STDOUT:     inst6000002F:    {kind: PatternType, arg0: inst6000002C, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000030:    {kind: OutParamPattern, arg0: inst6000002E, arg1: call_param1, type: type(symbolic_constant10)}
+// CHECK:STDOUT:     inst60000031:    {kind: ValueParam, arg0: call_param0, arg1: name2, type: type(symbolic_constant4)}
+// CHECK:STDOUT:     inst60000032:    {kind: SpliceBlock, arg0: inst_block6, arg1: inst6000001A, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000033:    {kind: OutParam, arg0: call_param1, arg1: name(ReturnSlot), type: type(symbolic_constant8)}
+// CHECK:STDOUT:     inst60000034:    {kind: ReturnSlot, arg0: inst6000002A, arg1: inst60000033, type: type(symbolic_constant8)}
+// CHECK:STDOUT:     inst60000035:    {kind: FunctionDecl, arg0: function0, arg1: inst_block15, type: type(inst60000036)}
+// CHECK:STDOUT:     inst60000036:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000037:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000036)}
+// CHECK:STDOUT:     inst60000038:    {kind: PointerType, arg0: inst6000002A, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000039:    {kind: RequireCompleteType, arg0: inst6000002A, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000003A:    {kind: RequireCompleteType, arg0: inst6000002A, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000003B:    {kind: RequireCompleteType, arg0: inst6000002C, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000003C:    {kind: RequireCompleteType, arg0: inst6000001B, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000003D:    {kind: RequireCompleteType, arg0: inst6000001B, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000003E:    {kind: RequireCompleteType, arg0: inst6000001C, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000003F:    {kind: NameRef, arg0: name2, arg1: inst6000001D, type: type(symbolic_constant4)}
+// CHECK:STDOUT:     inst60000040:    {kind: TupleLiteral, arg0: inst_block_empty, type: type(inst60000024)}
+// CHECK:STDOUT:     inst60000041:    {kind: TupleLiteral, arg0: inst_block21, type: type(symbolic_constant8)}
+// CHECK:STDOUT:     inst60000042:    {kind: RequireCompleteType, arg0: inst6000002A, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000043:    {kind: TupleAccess, arg0: inst60000034, arg1: element0, type: type(symbolic_constant4)}
+// CHECK:STDOUT:     inst60000044:    {kind: RequireCompleteType, arg0: inst6000001B, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000045:    {kind: ImportRefLoaded, arg0: import_ir_inst0, arg1: entity_name3, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000046:    {kind: InterfaceDecl, arg0: interface0, arg1: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000047:    {kind: FacetType, arg0: facet_type1, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000048:    {kind: BindSymbolicName, arg0: entity_name4, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000049:    {kind: ImportRefUnloaded, arg0: import_ir_inst2, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst6000004A:    {kind: ImportRefLoaded, arg0: import_ir_inst3, arg1: entity_name<none>, type: type(inst6000004C)}
+// CHECK:STDOUT:     inst6000004B:    {kind: ImportRefUnloaded, arg0: import_ir_inst4, arg1: entity_name5}
+// CHECK:STDOUT:     inst6000004C:    {kind: AssociatedEntityType, arg0: interface0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000004D:    {kind: ImportRefLoaded, arg0: import_ir_inst5, arg1: entity_name<none>, type: type(inst60000050)}
+// CHECK:STDOUT:     inst6000004E:    {kind: AssociatedEntity, arg0: element0, arg1: inst6000004D, type: type(inst6000004C)}
+// CHECK:STDOUT:     inst6000004F:    {kind: FunctionDecl, arg0: function1, arg1: inst_block_empty, type: type(inst60000050)}
+// CHECK:STDOUT:     inst60000050:    {kind: FunctionType, arg0: function1, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000051:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000050)}
+// CHECK:STDOUT:     inst60000052:    {kind: SymbolicBindingType, arg0: entity_name4, 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_constant19)}
+// CHECK:STDOUT:     inst60000055:    {kind: OutParamPattern, arg0: inst60000054, arg1: call_param1, type: type(symbolic_constant19)}
+// CHECK:STDOUT:     inst60000056:    {kind: BindingPattern, arg0: entity_name8, type: type(symbolic_constant19)}
+// CHECK:STDOUT:     inst60000057:    {kind: ValueParamPattern, arg0: inst60000056, arg1: call_param0, type: type(symbolic_constant19)}
+// CHECK:STDOUT:     inst60000058:    {kind: ImportRefLoaded, arg0: import_ir_inst11, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000059:    {kind: BindSymbolicName, arg0: entity_name4, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst6000005A:    {kind: SymbolicBindingType, arg0: entity_name4, arg1: inst60000059, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000005B:    {kind: PatternType, arg0: inst6000005A, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000005C:    {kind: LookupImplWitness, arg0: inst6000001B, arg1: specific_interface0, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000005D:    {kind: ImportRefUnloaded, arg0: import_ir_inst15, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst6000005E:    {kind: ImplDecl, arg0: impl0, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst6000005F:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000060:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst6000005F, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000061:    {kind: ConstType, arg0: inst60000060, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000062:    {kind: PatternType, arg0: inst60000047, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000063:    {kind: SymbolicBindingPattern, arg0: entity_name13, type: type(inst60000062)}
+// CHECK:STDOUT:     inst60000064:    {kind: ImportRefLoaded, arg0: import_ir_inst18, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000065:    {kind: ImportRefLoaded, arg0: import_ir_inst19, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000066:    {kind: ImportRefLoaded, arg0: import_ir_inst20, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000067:    {kind: ImportRefUnloaded, arg0: import_ir_inst21, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst60000068:    {kind: ImplWitnessTable, arg0: inst_block30, arg1: impl0}
+// CHECK:STDOUT:     inst60000069:    {kind: ImplWitness, arg0: inst60000068, arg1: specific2, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000006A:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst6000006B:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst6000006A, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000006C:    {kind: ConstType, arg0: inst6000006B, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000006D:    {kind: ImplWitness, arg0: inst60000068, arg1: specific3, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000006E:    {kind: FunctionDecl, arg0: function2, arg1: inst_block_empty, type: type(symbolic_constant38)}
+// CHECK:STDOUT:     inst6000006F:    {kind: FunctionType, arg0: function2, arg1: specific2, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000070:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant38)}
+// CHECK:STDOUT:     inst60000071:    {kind: PatternType, arg0: inst60000061, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000072:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant43)}
+// CHECK:STDOUT:     inst60000073:    {kind: OutParamPattern, arg0: inst60000072, arg1: call_param1, type: type(symbolic_constant43)}
+// CHECK:STDOUT:     inst60000074:    {kind: BindingPattern, arg0: entity_name17, type: type(symbolic_constant43)}
+// CHECK:STDOUT:     inst60000075:    {kind: ValueParamPattern, arg0: inst60000074, arg1: call_param0, type: type(symbolic_constant43)}
+// CHECK:STDOUT:     inst60000076:    {kind: ImportRefLoaded, arg0: import_ir_inst32, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000077:    {kind: FunctionType, arg0: function2, arg1: specific3, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000078:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant45)}
+// CHECK:STDOUT:     inst60000079:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst6000007A:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst60000079, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000007B:    {kind: ConstType, arg0: inst6000007A, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000007C:    {kind: PatternType, arg0: inst6000007B, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000007D:    {kind: RequireCompleteType, arg0: inst60000061, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000007E:    {kind: RequireCompleteType, arg0: inst60000060, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000007F:    {kind: LookupImplWitness, arg0: inst6000005F, arg1: specific_interface0, 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_constant60)}
+// CHECK:STDOUT:     inst60000082:    {kind: SpecificImplFunction, arg0: inst60000081, arg1: specific5, 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_interface0, 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_constant69)}
+// CHECK:STDOUT:     inst60000088:    {kind: SpecificImplFunction, arg0: inst60000087, arg1: specific6, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst60000089:    {kind: PatternType, arg0: inst60000060, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000008A:    {kind: ImportRefUnloaded, arg0: import_ir_inst45, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst6000008B:    {kind: ImplDecl, arg0: impl1, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst6000008C:    {kind: ImportRefLoaded, arg0: import_ir_inst47, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000008D:    {kind: ImportRefLoaded, arg0: import_ir_inst48, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000008E:    {kind: ImportRefUnloaded, arg0: import_ir_inst49, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst6000008F:    {kind: ImplDecl, arg0: impl2, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst60000090:    {kind: ImportRefLoaded, arg0: import_ir_inst51, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000091:    {kind: ImportRefLoaded, arg0: import_ir_inst52, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000092:    {kind: ImportRefUnloaded, arg0: import_ir_inst53, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst60000093:    {kind: ImplDecl, arg0: impl3, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst60000094:    {kind: ImportRefLoaded, arg0: import_ir_inst55, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000095:    {kind: ImportRefLoaded, arg0: import_ir_inst56, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000096:    {kind: ImportRefUnloaded, arg0: import_ir_inst57, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst60000097:    {kind: ImplDecl, arg0: impl4, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst60000098:    {kind: ImportRefLoaded, arg0: import_ir_inst59, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000099:    {kind: ImportRefLoaded, arg0: import_ir_inst60, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000009A:    {kind: ImportRefLoaded, arg0: import_ir_inst61, arg1: entity_name<none>, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000009B:    {kind: ImplDecl, arg0: impl5, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst6000009C:    {kind: SymbolicBindingPattern, arg0: entity_name21, type: type(inst60000017)}
+// CHECK:STDOUT:     inst6000009D:    {kind: ImportRefLoaded, arg0: import_ir_inst64, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000009E:    {kind: ImportRefLoaded, arg0: import_ir_inst65, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000009F:    {kind: ImportRefLoaded, arg0: import_ir_inst66, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000A0:    {kind: ImportRefUnloaded, arg0: import_ir_inst67, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst600000A1:    {kind: ImplWitnessTable, arg0: inst_block47, arg1: impl5}
+// CHECK:STDOUT:     inst600000A2:    {kind: ImplWitness, arg0: inst600000A1, arg1: specific7, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000A3:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000A4:    {kind: PointerType, arg0: inst600000A3, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000A5:    {kind: ImplWitness, arg0: inst600000A1, arg1: specific8, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000A6:    {kind: FunctionDecl, arg0: function3, arg1: inst_block_empty, type: type(symbolic_constant81)}
+// CHECK:STDOUT:     inst600000A7:    {kind: FunctionType, arg0: function3, arg1: specific7, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000A8:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant81)}
+// CHECK:STDOUT:     inst600000A9:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant85)}
+// CHECK:STDOUT:     inst600000AA:    {kind: OutParamPattern, arg0: inst600000A9, arg1: call_param1, type: type(symbolic_constant85)}
+// CHECK:STDOUT:     inst600000AB:    {kind: BindingPattern, arg0: entity_name24, type: type(symbolic_constant85)}
+// CHECK:STDOUT:     inst600000AC:    {kind: ValueParamPattern, arg0: inst600000AB, arg1: call_param0, type: type(symbolic_constant85)}
+// CHECK:STDOUT:     inst600000AD:    {kind: ImportRefLoaded, arg0: import_ir_inst77, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000AE:    {kind: FunctionType, arg0: function3, arg1: specific8, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000AF:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant88)}
+// CHECK:STDOUT:     inst600000B0:    {kind: RequireCompleteType, arg0: inst600000A4, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000B1:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000B2:    {kind: PointerType, arg0: inst600000B1, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000B3:    {kind: PatternType, arg0: inst600000B2, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000B4:    {kind: ImportRefUnloaded, arg0: import_ir_inst84, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst600000B5:    {kind: ImplDecl, arg0: impl6, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst600000B6:    {kind: ImportRefLoaded, arg0: import_ir_inst86, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000B7:    {kind: ImportRefLoaded, arg0: import_ir_inst87, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000B8:    {kind: ImportRefUnloaded, arg0: import_ir_inst88, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst600000B9:    {kind: ImplDecl, arg0: impl7, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst600000BA:    {kind: ImportRefLoaded, arg0: import_ir_inst90, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000BB:    {kind: ImportRefLoaded, arg0: import_ir_inst91, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000BC:    {kind: ImportRefUnloaded, arg0: import_ir_inst92, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst600000BD:    {kind: ImplDecl, arg0: impl8, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst600000BE:    {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000BF:    {kind: SymbolicBindingType, arg0: entity_name26, arg1: inst600000BE, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000C0:    {kind: TupleType, arg0: inst_block57, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000C1:    {kind: SymbolicBindingPattern, arg0: entity_name28, type: type(inst60000062)}
+// CHECK:STDOUT:     inst600000C2:    {kind: SymbolicBindingPattern, arg0: entity_name29, type: type(inst60000062)}
+// CHECK:STDOUT:     inst600000C3:    {kind: ImportRefLoaded, arg0: import_ir_inst96, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000C4:    {kind: ImportRefLoaded, arg0: import_ir_inst97, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000C5:    {kind: ImportRefLoaded, arg0: import_ir_inst98, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000C6:    {kind: ImportRefLoaded, arg0: import_ir_inst99, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000C7:    {kind: ImportRefUnloaded, arg0: import_ir_inst100, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst600000C8:    {kind: ImplWitnessTable, arg0: inst_block60, arg1: impl8}
+// CHECK:STDOUT:     inst600000C9:    {kind: ImplWitness, arg0: inst600000C8, arg1: specific10, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000CA:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000CB:    {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000CC:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst600000CA, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000CD:    {kind: SymbolicBindingType, arg0: entity_name26, arg1: inst600000CB, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000CE:    {kind: TupleType, arg0: inst_block62, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000CF:    {kind: ImplWitness, arg0: inst600000C8, arg1: specific11, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000D0:    {kind: FunctionDecl, arg0: function4, arg1: inst_block_empty, type: type(symbolic_constant114)}
+// CHECK:STDOUT:     inst600000D1:    {kind: FunctionType, arg0: function4, arg1: specific10, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000D2:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant114)}
+// CHECK:STDOUT:     inst600000D3:    {kind: PatternType, arg0: inst600000C0, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000D4:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant119)}
+// CHECK:STDOUT:     inst600000D5:    {kind: OutParamPattern, arg0: inst600000D4, arg1: call_param1, type: type(symbolic_constant119)}
+// CHECK:STDOUT:     inst600000D6:    {kind: BindingPattern, arg0: entity_name36, type: type(symbolic_constant119)}
+// CHECK:STDOUT:     inst600000D7:    {kind: ValueParamPattern, arg0: inst600000D6, arg1: call_param0, type: type(symbolic_constant119)}
+// CHECK:STDOUT:     inst600000D8:    {kind: ImportRefLoaded, arg0: import_ir_inst113, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000D9:    {kind: ImportRefLoaded, arg0: import_ir_inst114, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000DA:    {kind: FunctionType, arg0: function4, arg1: specific11, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000DB:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant121)}
+// CHECK:STDOUT:     inst600000DC:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000DD:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst600000DC, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000DE:    {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000DF:    {kind: SymbolicBindingType, arg0: entity_name26, arg1: inst600000DE, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000E0:    {kind: TupleType, arg0: inst_block70, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000E1:    {kind: PatternType, arg0: inst600000E0, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000E2:    {kind: RequireCompleteType, arg0: inst600000C0, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000E3:    {kind: RequireCompleteType, arg0: inst600000BF, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000E4:    {kind: LookupImplWitness, arg0: inst600000BE, arg1: specific_interface0, 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_constant145)}
+// CHECK:STDOUT:     inst600000E7:    {kind: SpecificImplFunction, arg0: inst600000E6, arg1: specific13, 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_interface0, 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_constant154)}
+// CHECK:STDOUT:     inst600000ED:    {kind: SpecificImplFunction, arg0: inst600000EC, arg1: specific14, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst600000EE:    {kind: RequireCompleteType, arg0: inst600000DF, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst600000EF:    {kind: LookupImplWitness, arg0: inst600000DE, arg1: specific_interface0, 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_constant159)}
+// CHECK:STDOUT:     inst600000F2:    {kind: SpecificImplFunction, arg0: inst600000F1, arg1: specific15, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst600000F3:    {kind: PatternType, arg0: inst600000BF, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000F4:    {kind: ImportRefUnloaded, arg0: import_ir_inst134, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst600000F5:    {kind: ImplDecl, arg0: impl9, arg1: inst_block_empty}
+// CHECK:STDOUT:     inst600000F6:    {kind: BindSymbolicName, arg0: entity_name41, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000F7:    {kind: SymbolicBindingType, arg0: entity_name41, arg1: inst600000F6, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000F8:    {kind: TupleType, arg0: inst_block79, type: type(TypeType)}
+// CHECK:STDOUT:     inst600000F9:    {kind: SymbolicBindingPattern, arg0: entity_name43, type: type(inst60000062)}
+// CHECK:STDOUT:     inst600000FA:    {kind: SymbolicBindingPattern, arg0: entity_name44, type: type(inst60000062)}
+// CHECK:STDOUT:     inst600000FB:    {kind: SymbolicBindingPattern, arg0: entity_name45, type: type(inst60000062)}
+// CHECK:STDOUT:     inst600000FC:    {kind: ImportRefLoaded, arg0: import_ir_inst139, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000FD:    {kind: ImportRefLoaded, arg0: import_ir_inst140, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000FE:    {kind: ImportRefLoaded, arg0: import_ir_inst141, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst600000FF:    {kind: ImportRefLoaded, arg0: import_ir_inst142, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000100:    {kind: ImportRefLoaded, arg0: import_ir_inst143, arg1: entity_name<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000101:    {kind: ImportRefUnloaded, arg0: import_ir_inst144, arg1: entity_name<none>}
+// CHECK:STDOUT:     inst60000102:    {kind: ImplWitnessTable, arg0: inst_block82, arg1: impl9}
+// CHECK:STDOUT:     inst60000103:    {kind: ImplWitness, arg0: inst60000102, arg1: specific16, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000104:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000105:    {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000106:    {kind: BindSymbolicName, arg0: entity_name41, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000107:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst60000104, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000108:    {kind: SymbolicBindingType, arg0: entity_name26, arg1: inst60000105, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000109:    {kind: SymbolicBindingType, arg0: entity_name41, arg1: inst60000106, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000010A:    {kind: TupleType, arg0: inst_block84, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000010B:    {kind: ImplWitness, arg0: inst60000102, arg1: specific17, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000010C:    {kind: FunctionDecl, arg0: function5, arg1: inst_block_empty, type: type(symbolic_constant186)}
+// CHECK:STDOUT:     inst6000010D:    {kind: FunctionType, arg0: function5, arg1: specific16, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000010E:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant186)}
+// CHECK:STDOUT:     inst6000010F:    {kind: PatternType, arg0: inst600000F8, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000110:    {kind: ReturnSlotPattern, arg0: inst<none>, type: type(symbolic_constant191)}
+// CHECK:STDOUT:     inst60000111:    {kind: OutParamPattern, arg0: inst60000110, arg1: call_param1, type: type(symbolic_constant191)}
+// CHECK:STDOUT:     inst60000112:    {kind: BindingPattern, arg0: entity_name55, type: type(symbolic_constant191)}
+// CHECK:STDOUT:     inst60000113:    {kind: ValueParamPattern, arg0: inst60000112, arg1: call_param0, type: type(symbolic_constant191)}
+// CHECK:STDOUT:     inst60000114:    {kind: ImportRefLoaded, arg0: import_ir_inst159, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000115:    {kind: ImportRefLoaded, arg0: import_ir_inst160, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000116:    {kind: ImportRefLoaded, arg0: import_ir_inst161, arg1: entity_name<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst60000117:    {kind: FunctionType, arg0: function5, arg1: specific17, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000118:    {kind: StructValue, arg0: inst_block_empty, type: type(symbolic_constant193)}
+// CHECK:STDOUT:     inst60000119:    {kind: BindSymbolicName, arg0: entity_name1, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst6000011A:    {kind: SymbolicBindingType, arg0: entity_name1, arg1: inst60000119, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000011B:    {kind: BindSymbolicName, arg0: entity_name26, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst6000011C:    {kind: SymbolicBindingType, arg0: entity_name26, arg1: inst6000011B, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000011D:    {kind: BindSymbolicName, arg0: entity_name41, arg1: inst<none>, type: type(inst60000047)}
+// CHECK:STDOUT:     inst6000011E:    {kind: SymbolicBindingType, arg0: entity_name41, arg1: inst6000011D, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000011F:    {kind: TupleType, arg0: inst_block92, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000120:    {kind: PatternType, arg0: inst6000011F, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000121:    {kind: RequireCompleteType, arg0: inst600000F8, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000122:    {kind: RequireCompleteType, arg0: inst600000F7, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000123:    {kind: LookupImplWitness, arg0: inst600000F6, arg1: specific_interface0, 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_constant226)}
+// CHECK:STDOUT:     inst60000126:    {kind: SpecificImplFunction, arg0: inst60000125, arg1: specific19, 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_interface0, 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_constant235)}
+// CHECK:STDOUT:     inst6000012C:    {kind: SpecificImplFunction, arg0: inst6000012B, arg1: specific20, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst6000012D:    {kind: RequireCompleteType, arg0: inst6000011C, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000012E:    {kind: LookupImplWitness, arg0: inst6000011B, arg1: specific_interface0, 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_constant240)}
+// CHECK:STDOUT:     inst60000131:    {kind: SpecificImplFunction, arg0: inst60000130, arg1: specific21, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst60000132:    {kind: RequireCompleteType, arg0: inst6000011E, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000133:    {kind: LookupImplWitness, arg0: inst6000011D, arg1: specific_interface0, 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_constant245)}
+// CHECK:STDOUT:     inst60000136:    {kind: SpecificImplFunction, arg0: inst60000135, arg1: specific22, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst60000137:    {kind: PatternType, arg0: inst600000F7, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000138:    {kind: LookupImplWitness, arg0: inst6000001B, arg1: specific_interface0, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000139:    {kind: LookupImplWitness, arg0: inst6000001C, arg1: specific_interface0, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst6000013A:    {kind: FacetValue, arg0: inst6000001B, arg1: inst_block103, 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_constant256)}
+// CHECK:STDOUT:     inst6000013D:    {kind: ImplWitnessAccess, arg0: inst60000138, arg1: element0, type: type(symbolic_constant253)}
+// CHECK:STDOUT:     inst6000013E:    {kind: FacetValue, arg0: inst6000001C, arg1: inst_block104, 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_constant256)}
+// CHECK:STDOUT:     inst60000141:    {kind: BoundMethod, arg0: inst6000003F, arg1: inst6000013C, type: type(inst(BoundMethodType))}
+// CHECK:STDOUT:     inst60000142:    {kind: SpecificImplFunction, arg0: inst6000013C, arg1: specific23, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst60000143:    {kind: SpecificImplFunction, arg0: inst6000013D, arg1: specific23, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst60000144:    {kind: SpecificImplFunction, arg0: inst60000140, arg1: specific24, type: type(inst(SpecificFunctionType))}
+// CHECK:STDOUT:     inst60000145:    {kind: BoundMethod, arg0: inst6000003F, arg1: inst60000142, type: type(inst(BoundMethodType))}
+// CHECK:STDOUT:     inst60000146:    {kind: RequireCompleteType, arg0: inst6000001B, type: type(inst(WitnessType))}
+// CHECK:STDOUT:     inst60000147:    {kind: Call, arg0: inst60000145, arg1: inst_block108, type: type(symbolic_constant4)}
+// CHECK:STDOUT:     inst60000148:    {kind: InitializeFrom, arg0: inst60000147, arg1: inst60000043, type: type(symbolic_constant4)}
+// CHECK:STDOUT:     inst60000149:    {kind: TupleAccess, arg0: inst60000034, arg1: element1, type: type(inst60000024)}
+// CHECK:STDOUT:     inst6000014A:    {kind: TupleInit, arg0: inst_block_empty, arg1: inst60000149, type: type(inst60000024)}
+// CHECK:STDOUT:     inst6000014B:    {kind: TupleValue, arg0: inst_block_empty, type: type(inst60000024)}
+// CHECK:STDOUT:     inst6000014C:    {kind: Converted, arg0: inst60000040, arg1: inst6000014A, type: type(inst60000024)}
+// CHECK:STDOUT:     inst6000014D:    {kind: TupleInit, arg0: inst_block109, arg1: inst60000034, type: type(symbolic_constant8)}
+// CHECK:STDOUT:     inst6000014E:    {kind: Converted, arg0: inst60000041, arg1: inst6000014D, type: type(symbolic_constant8)}
+// CHECK:STDOUT:     inst6000014F:    {kind: ReturnExpr, arg0: inst6000014E, arg1: inst60000034}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir0.inst16:      concrete_constant(ir0.inst16)
-// CHECK:STDOUT:       ir0.inst17:      concrete_constant(ir0.inst17)
-// CHECK:STDOUT:       ir0.inst18:      symbolic_constant0
-// CHECK:STDOUT:       ir0.inst19:      symbolic_constant0
-// CHECK:STDOUT:       ir0.inst20:      symbolic_constant2
-// CHECK:STDOUT:       ir0.inst21:      symbolic_constant1
-// CHECK:STDOUT:       ir0.inst22:      symbolic_constant2
-// CHECK:STDOUT:       ir0.inst23:      concrete_constant(ir0.inst23)
-// CHECK:STDOUT:       ir0.inst24:      concrete_constant(ir0.inst24)
-// CHECK:STDOUT:       ir0.inst25:      symbolic_constant2
-// CHECK:STDOUT:       ir0.inst26:      symbolic_constant4
-// CHECK:STDOUT:       ir0.inst27:      symbolic_constant3
-// CHECK:STDOUT:       ir0.inst28:      symbolic_constant4
-// CHECK:STDOUT:       ir0.inst30:      symbolic_constant5
-// CHECK:STDOUT:       ir0.inst31:      concrete_constant(ir0.inst31)
-// CHECK:STDOUT:       ir0.inst32:      symbolic_constant6
-// CHECK:STDOUT:       ir0.inst33:      concrete_constant(ir0.inst33)
-// CHECK:STDOUT:       ir0.inst34:      symbolic_constant2
-// CHECK:STDOUT:       ir0.inst35:      symbolic_constant4
-// CHECK:STDOUT:       ir0.inst36:      concrete_constant(ir0.inst36)
-// CHECK:STDOUT:       ir0.inst38:      concrete_constant(ir0.inst38)
-// CHECK:STDOUT:       ir0.inst40:      concrete_constant(ir0.inst40)
-// CHECK:STDOUT:       ir0.inst41:      concrete_constant(ir0.inst36)
-// CHECK:STDOUT:       ir0.inst42:      symbolic_constant7
-// CHECK:STDOUT:       ir0.inst43:      symbolic_constant8
-// CHECK:STDOUT:       ir0.inst44:      symbolic_constant8
-// CHECK:STDOUT:       ir0.inst45:      symbolic_constant9
-// CHECK:STDOUT:       ir0.inst46:      concrete_constant(ir0.inst46)
-// CHECK:STDOUT:       ir0.inst47:      symbolic_constant10
-// CHECK:STDOUT:       ir0.inst48:      concrete_constant(ir0.inst48)
-// CHECK:STDOUT:       ir0.inst50:      symbolic_constant4
-// CHECK:STDOUT:       ir0.inst53:      concrete_constant(ir0.inst55)
-// CHECK:STDOUT:       ir0.inst54:      concrete_constant(ir0.inst54)
-// CHECK:STDOUT:       ir0.inst55:      concrete_constant(ir0.inst55)
-// CHECK:STDOUT:       ir0.inst56:      symbolic_constant11
-// CHECK:STDOUT:       ir0.inst57:      symbolic_constant13
-// CHECK:STDOUT:       ir0.inst58:      symbolic_constant12
-// CHECK:STDOUT:       ir0.inst59:      symbolic_constant13
-// CHECK:STDOUT:       ir0.inst60:      symbolic_constant15
-// CHECK:STDOUT:       ir0.inst61:      symbolic_constant14
-// CHECK:STDOUT:       ir0.inst62:      symbolic_constant15
-// CHECK:STDOUT:       ir0.inst66:      symbolic_constant13
-// CHECK:STDOUT:       ir0.inst68:      symbolic_constant15
-// CHECK:STDOUT:       ir0.inst69:      concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst70:      concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst71:      concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst72:      symbolic_constant16
-// CHECK:STDOUT:       ir0.inst73:      constant<none>
-// CHECK:STDOUT:       ir0.inst74:      concrete_constant(ir0.inst78)
-// CHECK:STDOUT:       ir0.inst75:      constant<none>
-// CHECK:STDOUT:       ir0.inst76:      concrete_constant(ir0.inst76)
-// CHECK:STDOUT:       ir0.inst77:      concrete_constant(ir0.inst81)
-// CHECK:STDOUT:       ir0.inst78:      concrete_constant(ir0.inst78)
-// CHECK:STDOUT:       ir0.inst79:      concrete_constant(ir0.inst81)
-// CHECK:STDOUT:       ir0.inst80:      concrete_constant(ir0.inst80)
-// CHECK:STDOUT:       ir0.inst81:      concrete_constant(ir0.inst81)
-// CHECK:STDOUT:       ir0.inst82:      symbolic_constant17
-// CHECK:STDOUT:       ir0.inst83:      symbolic_constant18
-// CHECK:STDOUT:       ir0.inst84:      concrete_constant(ir0.inst84)
-// CHECK:STDOUT:       ir0.inst85:      concrete_constant(ir0.inst85)
-// CHECK:STDOUT:       ir0.inst86:      concrete_constant(ir0.inst86)
-// CHECK:STDOUT:       ir0.inst87:      concrete_constant(ir0.inst87)
-// CHECK:STDOUT:       ir0.inst88:      symbolic_constant16
-// CHECK:STDOUT:       ir0.inst89:      symbolic_constant22
-// CHECK:STDOUT:       ir0.inst90:      symbolic_constant23
-// CHECK:STDOUT:       ir0.inst91:      symbolic_constant24
-// CHECK:STDOUT:       ir0.inst92:      symbolic_constant251
-// CHECK:STDOUT:       ir0.inst93:      constant<none>
-// CHECK:STDOUT:       ir0.inst94:      concrete_constant(ir0.inst94)
-// CHECK:STDOUT:       ir0.inst95:      symbolic_constant25
-// CHECK:STDOUT:       ir0.inst96:      symbolic_constant26
-// CHECK:STDOUT:       ir0.inst97:      symbolic_constant27
-// CHECK:STDOUT:       ir0.inst98:      concrete_constant(ir0.inst98)
-// CHECK:STDOUT:       ir0.inst99:      concrete_constant(ir0.inst99)
-// CHECK:STDOUT:       ir0.inst100:     symbolic_constant29
-// CHECK:STDOUT:       ir0.inst101:     symbolic_constant28
-// CHECK:STDOUT:       ir0.inst102:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst103:     constant<none>
-// CHECK:STDOUT:       ir0.inst104:     concrete_constant(ir0.inst104)
-// CHECK:STDOUT:       ir0.inst105:     symbolic_constant32
-// CHECK:STDOUT:       ir0.inst106:     symbolic_constant34
-// CHECK:STDOUT:       ir0.inst107:     symbolic_constant35
-// CHECK:STDOUT:       ir0.inst108:     symbolic_constant36
-// CHECK:STDOUT:       ir0.inst109:     symbolic_constant37
-// CHECK:STDOUT:       ir0.inst110:     symbolic_constant40
-// CHECK:STDOUT:       ir0.inst111:     symbolic_constant38
-// CHECK:STDOUT:       ir0.inst112:     symbolic_constant39
-// CHECK:STDOUT:       ir0.inst113:     symbolic_constant42
-// CHECK:STDOUT:       ir0.inst114:     concrete_constant(ir0.inst114)
-// CHECK:STDOUT:       ir0.inst115:     concrete_constant(ir0.inst115)
-// CHECK:STDOUT:       ir0.inst116:     concrete_constant(ir0.inst116)
-// CHECK:STDOUT:       ir0.inst117:     concrete_constant(ir0.inst117)
-// CHECK:STDOUT:       ir0.inst118:     symbolic_constant29
-// CHECK:STDOUT:       ir0.inst119:     symbolic_constant45
-// CHECK:STDOUT:       ir0.inst120:     symbolic_constant46
-// CHECK:STDOUT:       ir0.inst121:     symbolic_constant50
-// CHECK:STDOUT:       ir0.inst122:     symbolic_constant51
-// CHECK:STDOUT:       ir0.inst123:     symbolic_constant52
-// CHECK:STDOUT:       ir0.inst124:     symbolic_constant53
-// CHECK:STDOUT:       ir0.inst125:     symbolic_constant54
-// CHECK:STDOUT:       ir0.inst126:     symbolic_constant56
-// CHECK:STDOUT:       ir0.inst127:     symbolic_constant58
-// CHECK:STDOUT:       ir0.inst128:     symbolic_constant60
-// CHECK:STDOUT:       ir0.inst129:     symbolic_constant62
-// CHECK:STDOUT:       ir0.inst130:     symbolic_constant64
-// CHECK:STDOUT:       ir0.inst131:     symbolic_constant66
-// CHECK:STDOUT:       ir0.inst132:     symbolic_constant67
-// CHECK:STDOUT:       ir0.inst133:     symbolic_constant68
-// CHECK:STDOUT:       ir0.inst134:     symbolic_constant69
-// CHECK:STDOUT:       ir0.inst135:     symbolic_constant70
-// CHECK:STDOUT:       ir0.inst136:     symbolic_constant71
-// CHECK:STDOUT:       ir0.inst137:     symbolic_constant72
-// CHECK:STDOUT:       ir0.inst138:     constant<none>
-// CHECK:STDOUT:       ir0.inst139:     concrete_constant(ir0.inst139)
-// CHECK:STDOUT:       ir0.inst140:     concrete_constant(inst(BoolType))
-// CHECK:STDOUT:       ir0.inst141:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst142:     constant<none>
-// CHECK:STDOUT:       ir0.inst143:     concrete_constant(ir0.inst143)
-// CHECK:STDOUT:       ir0.inst144:     concrete_constant(inst(CharLiteralType))
-// CHECK:STDOUT:       ir0.inst145:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst146:     constant<none>
-// CHECK:STDOUT:       ir0.inst147:     concrete_constant(ir0.inst147)
-// CHECK:STDOUT:       ir0.inst148:     concrete_constant(inst(FloatLiteralType))
-// CHECK:STDOUT:       ir0.inst149:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst150:     constant<none>
-// CHECK:STDOUT:       ir0.inst151:     concrete_constant(ir0.inst151)
-// CHECK:STDOUT:       ir0.inst152:     concrete_constant(inst(IntLiteralType))
-// CHECK:STDOUT:       ir0.inst153:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst154:     symbolic_constant249
-// CHECK:STDOUT:       ir0.inst155:     concrete_constant(ir0.inst155)
-// CHECK:STDOUT:       ir0.inst156:     concrete_constant(ir0.inst156)
-// CHECK:STDOUT:       ir0.inst157:     symbolic_constant74
-// CHECK:STDOUT:       ir0.inst158:     symbolic_constant73
-// CHECK:STDOUT:       ir0.inst159:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst160:     constant<none>
-// CHECK:STDOUT:       ir0.inst161:     concrete_constant(ir0.inst161)
-// CHECK:STDOUT:       ir0.inst162:     symbolic_constant76
-// CHECK:STDOUT:       ir0.inst163:     symbolic_constant78
-// CHECK:STDOUT:       ir0.inst164:     symbolic_constant79
-// CHECK:STDOUT:       ir0.inst165:     symbolic_constant80
-// CHECK:STDOUT:       ir0.inst166:     symbolic_constant83
-// CHECK:STDOUT:       ir0.inst167:     symbolic_constant81
-// CHECK:STDOUT:       ir0.inst168:     symbolic_constant82
-// CHECK:STDOUT:       ir0.inst169:     concrete_constant(ir0.inst169)
-// CHECK:STDOUT:       ir0.inst170:     concrete_constant(ir0.inst170)
-// CHECK:STDOUT:       ir0.inst171:     concrete_constant(ir0.inst171)
-// CHECK:STDOUT:       ir0.inst172:     concrete_constant(ir0.inst172)
-// CHECK:STDOUT:       ir0.inst173:     symbolic_constant74
-// CHECK:STDOUT:       ir0.inst174:     symbolic_constant88
-// CHECK:STDOUT:       ir0.inst175:     symbolic_constant89
-// CHECK:STDOUT:       ir0.inst176:     symbolic_constant90
-// CHECK:STDOUT:       ir0.inst177:     symbolic_constant93
-// CHECK:STDOUT:       ir0.inst178:     symbolic_constant94
-// CHECK:STDOUT:       ir0.inst179:     symbolic_constant95
-// CHECK:STDOUT:       ir0.inst180:     constant<none>
-// CHECK:STDOUT:       ir0.inst181:     concrete_constant(ir0.inst181)
-// CHECK:STDOUT:       ir0.inst182:     concrete_constant(inst(TypeType))
-// CHECK:STDOUT:       ir0.inst183:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst184:     constant<none>
-// CHECK:STDOUT:       ir0.inst185:     concrete_constant(ir0.inst185)
-// CHECK:STDOUT:       ir0.inst186:     concrete_constant(ir0.inst36)
-// CHECK:STDOUT:       ir0.inst187:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst188:     constant<none>
-// CHECK:STDOUT:       ir0.inst189:     concrete_constant(ir0.inst189)
-// CHECK:STDOUT:       ir0.inst190:     symbolic_constant96
-// CHECK:STDOUT:       ir0.inst191:     symbolic_constant97
-// CHECK:STDOUT:       ir0.inst192:     symbolic_constant98
-// CHECK:STDOUT:       ir0.inst193:     concrete_constant(ir0.inst193)
-// CHECK:STDOUT:       ir0.inst194:     concrete_constant(ir0.inst194)
-// CHECK:STDOUT:       ir0.inst195:     symbolic_constant100
-// CHECK:STDOUT:       ir0.inst196:     symbolic_constant101
-// CHECK:STDOUT:       ir0.inst197:     symbolic_constant99
-// CHECK:STDOUT:       ir0.inst198:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst199:     constant<none>
-// CHECK:STDOUT:       ir0.inst200:     concrete_constant(ir0.inst200)
-// CHECK:STDOUT:       ir0.inst201:     symbolic_constant106
-// CHECK:STDOUT:       ir0.inst202:     symbolic_constant108
-// CHECK:STDOUT:       ir0.inst203:     symbolic_constant109
-// CHECK:STDOUT:       ir0.inst204:     symbolic_constant110
-// CHECK:STDOUT:       ir0.inst205:     symbolic_constant111
-// CHECK:STDOUT:       ir0.inst206:     symbolic_constant112
-// CHECK:STDOUT:       ir0.inst207:     symbolic_constant113
-// CHECK:STDOUT:       ir0.inst208:     symbolic_constant116
-// CHECK:STDOUT:       ir0.inst209:     symbolic_constant114
-// CHECK:STDOUT:       ir0.inst210:     symbolic_constant115
-// CHECK:STDOUT:       ir0.inst211:     symbolic_constant118
-// CHECK:STDOUT:       ir0.inst212:     concrete_constant(ir0.inst212)
-// CHECK:STDOUT:       ir0.inst213:     concrete_constant(ir0.inst213)
-// CHECK:STDOUT:       ir0.inst214:     concrete_constant(ir0.inst214)
-// CHECK:STDOUT:       ir0.inst215:     concrete_constant(ir0.inst215)
-// CHECK:STDOUT:       ir0.inst216:     symbolic_constant100
-// CHECK:STDOUT:       ir0.inst217:     symbolic_constant101
-// CHECK:STDOUT:       ir0.inst218:     symbolic_constant121
-// CHECK:STDOUT:       ir0.inst219:     symbolic_constant122
-// CHECK:STDOUT:       ir0.inst220:     symbolic_constant128
-// CHECK:STDOUT:       ir0.inst221:     symbolic_constant129
-// CHECK:STDOUT:       ir0.inst222:     symbolic_constant130
-// CHECK:STDOUT:       ir0.inst223:     symbolic_constant131
-// CHECK:STDOUT:       ir0.inst224:     symbolic_constant132
-// CHECK:STDOUT:       ir0.inst225:     symbolic_constant133
-// CHECK:STDOUT:       ir0.inst226:     symbolic_constant134
-// CHECK:STDOUT:       ir0.inst227:     symbolic_constant141
-// CHECK:STDOUT:       ir0.inst228:     symbolic_constant143
-// CHECK:STDOUT:       ir0.inst229:     symbolic_constant145
-// CHECK:STDOUT:       ir0.inst230:     symbolic_constant147
-// CHECK:STDOUT:       ir0.inst231:     symbolic_constant149
-// CHECK:STDOUT:       ir0.inst232:     symbolic_constant151
-// CHECK:STDOUT:       ir0.inst233:     symbolic_constant152
-// CHECK:STDOUT:       ir0.inst234:     symbolic_constant153
-// CHECK:STDOUT:       ir0.inst235:     symbolic_constant154
-// CHECK:STDOUT:       ir0.inst236:     symbolic_constant155
-// CHECK:STDOUT:       ir0.inst237:     symbolic_constant156
-// CHECK:STDOUT:       ir0.inst238:     symbolic_constant157
-// CHECK:STDOUT:       ir0.inst239:     symbolic_constant158
-// CHECK:STDOUT:       ir0.inst240:     symbolic_constant159
-// CHECK:STDOUT:       ir0.inst241:     symbolic_constant160
-// CHECK:STDOUT:       ir0.inst242:     symbolic_constant161
-// CHECK:STDOUT:       ir0.inst243:     symbolic_constant162
-// CHECK:STDOUT:       ir0.inst244:     constant<none>
-// CHECK:STDOUT:       ir0.inst245:     concrete_constant(ir0.inst245)
-// CHECK:STDOUT:       ir0.inst246:     symbolic_constant163
-// CHECK:STDOUT:       ir0.inst247:     symbolic_constant164
-// CHECK:STDOUT:       ir0.inst248:     symbolic_constant165
-// CHECK:STDOUT:       ir0.inst249:     concrete_constant(ir0.inst249)
-// CHECK:STDOUT:       ir0.inst250:     concrete_constant(ir0.inst250)
-// CHECK:STDOUT:       ir0.inst251:     concrete_constant(ir0.inst251)
-// CHECK:STDOUT:       ir0.inst252:     symbolic_constant167
-// CHECK:STDOUT:       ir0.inst253:     symbolic_constant168
-// CHECK:STDOUT:       ir0.inst254:     symbolic_constant169
-// CHECK:STDOUT:       ir0.inst255:     symbolic_constant166
-// CHECK:STDOUT:       ir0.inst256:     concrete_constant(ir0.inst71)
-// CHECK:STDOUT:       ir0.inst257:     constant<none>
-// CHECK:STDOUT:       ir0.inst258:     concrete_constant(ir0.inst258)
-// CHECK:STDOUT:       ir0.inst259:     symbolic_constant176
-// CHECK:STDOUT:       ir0.inst260:     symbolic_constant178
-// CHECK:STDOUT:       ir0.inst261:     symbolic_constant179
-// CHECK:STDOUT:       ir0.inst262:     symbolic_constant180
-// CHECK:STDOUT:       ir0.inst263:     symbolic_constant181
-// CHECK:STDOUT:       ir0.inst264:     symbolic_constant182
-// CHECK:STDOUT:       ir0.inst265:     symbolic_constant183
-// CHECK:STDOUT:       ir0.inst266:     symbolic_constant184
-// CHECK:STDOUT:       ir0.inst267:     symbolic_constant185
-// CHECK:STDOUT:       ir0.inst268:     symbolic_constant188
-// CHECK:STDOUT:       ir0.inst269:     symbolic_constant186
-// CHECK:STDOUT:       ir0.inst270:     symbolic_constant187
-// CHECK:STDOUT:       ir0.inst271:     symbolic_constant190
-// CHECK:STDOUT:       ir0.inst272:     concrete_constant(ir0.inst272)
-// CHECK:STDOUT:       ir0.inst273:     concrete_constant(ir0.inst273)
-// CHECK:STDOUT:       ir0.inst274:     concrete_constant(ir0.inst274)
-// CHECK:STDOUT:       ir0.inst275:     concrete_constant(ir0.inst275)
-// CHECK:STDOUT:       ir0.inst276:     symbolic_constant167
-// CHECK:STDOUT:       ir0.inst277:     symbolic_constant168
-// CHECK:STDOUT:       ir0.inst278:     symbolic_constant169
-// CHECK:STDOUT:       ir0.inst279:     symbolic_constant193
-// CHECK:STDOUT:       ir0.inst280:     symbolic_constant194
-// CHECK:STDOUT:       ir0.inst281:     symbolic_constant202
-// CHECK:STDOUT:       ir0.inst282:     symbolic_constant203
-// CHECK:STDOUT:       ir0.inst283:     symbolic_constant204
-// CHECK:STDOUT:       ir0.inst284:     symbolic_constant205
-// CHECK:STDOUT:       ir0.inst285:     symbolic_constant206
-// CHECK:STDOUT:       ir0.inst286:     symbolic_constant207
-// CHECK:STDOUT:       ir0.inst287:     symbolic_constant208
-// CHECK:STDOUT:       ir0.inst288:     symbolic_constant209
-// CHECK:STDOUT:       ir0.inst289:     symbolic_constant210
-// CHECK:STDOUT:       ir0.inst290:     symbolic_constant222
-// CHECK:STDOUT:       ir0.inst291:     symbolic_constant224
-// CHECK:STDOUT:       ir0.inst292:     symbolic_constant226
-// CHECK:STDOUT:       ir0.inst293:     symbolic_constant228
-// CHECK:STDOUT:       ir0.inst294:     symbolic_constant230
-// CHECK:STDOUT:       ir0.inst295:     symbolic_constant232
-// CHECK:STDOUT:       ir0.inst296:     symbolic_constant233
-// CHECK:STDOUT:       ir0.inst297:     symbolic_constant234
-// CHECK:STDOUT:       ir0.inst298:     symbolic_constant235
-// CHECK:STDOUT:       ir0.inst299:     symbolic_constant236
-// CHECK:STDOUT:       ir0.inst300:     symbolic_constant237
-// CHECK:STDOUT:       ir0.inst301:     symbolic_constant238
-// CHECK:STDOUT:       ir0.inst302:     symbolic_constant239
-// CHECK:STDOUT:       ir0.inst303:     symbolic_constant240
-// CHECK:STDOUT:       ir0.inst304:     symbolic_constant241
-// CHECK:STDOUT:       ir0.inst305:     symbolic_constant242
-// CHECK:STDOUT:       ir0.inst306:     symbolic_constant243
-// CHECK:STDOUT:       ir0.inst307:     symbolic_constant244
-// CHECK:STDOUT:       ir0.inst308:     symbolic_constant245
-// CHECK:STDOUT:       ir0.inst309:     symbolic_constant246
-// CHECK:STDOUT:       ir0.inst310:     symbolic_constant247
-// CHECK:STDOUT:       ir0.inst311:     symbolic_constant248
-// CHECK:STDOUT:       ir0.inst312:     symbolic_constant250
-// CHECK:STDOUT:       ir0.inst313:     symbolic_constant251
-// CHECK:STDOUT:       ir0.inst314:     symbolic_constant252
-// CHECK:STDOUT:       ir0.inst315:     symbolic_constant253
-// CHECK:STDOUT:       ir0.inst316:     symbolic_constant257
-// CHECK:STDOUT:       ir0.inst317:     symbolic_constant254
-// CHECK:STDOUT:       ir0.inst318:     symbolic_constant255
-// CHECK:STDOUT:       ir0.inst319:     symbolic_constant256
-// CHECK:STDOUT:       ir0.inst320:     symbolic_constant257
-// CHECK:STDOUT:       ir0.inst322:     symbolic_constant259
-// CHECK:STDOUT:       ir0.inst323:     symbolic_constant258
-// CHECK:STDOUT:       ir0.inst324:     symbolic_constant259
-// CHECK:STDOUT:       ir0.inst326:     symbolic_constant15
-// CHECK:STDOUT:       ir0.inst330:     concrete_constant(ir0.inst331)
-// CHECK:STDOUT:       ir0.inst331:     concrete_constant(ir0.inst331)
-// CHECK:STDOUT:       ir0.inst332:     concrete_constant(ir0.inst331)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst60000010:    concrete_constant(inst60000010)
+// CHECK:STDOUT:       inst60000011:    concrete_constant(inst60000011)
+// CHECK:STDOUT:       inst60000012:    symbolic_constant0
+// CHECK:STDOUT:       inst60000013:    symbolic_constant0
+// CHECK:STDOUT:       inst60000014:    symbolic_constant2
+// CHECK:STDOUT:       inst60000015:    symbolic_constant1
+// CHECK:STDOUT:       inst60000016:    symbolic_constant2
+// CHECK:STDOUT:       inst60000017:    concrete_constant(inst60000017)
+// CHECK:STDOUT:       inst60000018:    concrete_constant(inst60000018)
+// CHECK:STDOUT:       inst60000019:    symbolic_constant2
+// CHECK:STDOUT:       inst6000001A:    symbolic_constant4
+// CHECK:STDOUT:       inst6000001B:    symbolic_constant3
+// CHECK:STDOUT:       inst6000001C:    symbolic_constant4
+// CHECK:STDOUT:       inst6000001E:    symbolic_constant5
+// CHECK:STDOUT:       inst6000001F:    concrete_constant(inst6000001F)
+// CHECK:STDOUT:       inst60000020:    symbolic_constant6
+// CHECK:STDOUT:       inst60000021:    concrete_constant(inst60000021)
+// CHECK:STDOUT:       inst60000022:    symbolic_constant2
+// CHECK:STDOUT:       inst60000023:    symbolic_constant4
+// CHECK:STDOUT:       inst60000024:    concrete_constant(inst60000024)
+// CHECK:STDOUT:       inst60000026:    concrete_constant(inst60000026)
+// CHECK:STDOUT:       inst60000028:    concrete_constant(inst60000028)
+// CHECK:STDOUT:       inst60000029:    concrete_constant(inst60000024)
+// CHECK:STDOUT:       inst6000002A:    symbolic_constant7
+// CHECK:STDOUT:       inst6000002B:    symbolic_constant8
+// CHECK:STDOUT:       inst6000002C:    symbolic_constant8
+// CHECK:STDOUT:       inst6000002D:    symbolic_constant9
+// CHECK:STDOUT:       inst6000002E:    concrete_constant(inst6000002E)
+// CHECK:STDOUT:       inst6000002F:    symbolic_constant10
+// CHECK:STDOUT:       inst60000030:    concrete_constant(inst60000030)
+// CHECK:STDOUT:       inst60000032:    symbolic_constant4
+// CHECK:STDOUT:       inst60000035:    concrete_constant(inst60000037)
+// CHECK:STDOUT:       inst60000036:    concrete_constant(inst60000036)
+// CHECK:STDOUT:       inst60000037:    concrete_constant(inst60000037)
+// CHECK:STDOUT:       inst60000038:    symbolic_constant11
+// CHECK:STDOUT:       inst60000039:    symbolic_constant13
+// CHECK:STDOUT:       inst6000003A:    symbolic_constant12
+// CHECK:STDOUT:       inst6000003B:    symbolic_constant13
+// CHECK:STDOUT:       inst6000003C:    symbolic_constant15
+// CHECK:STDOUT:       inst6000003D:    symbolic_constant14
+// CHECK:STDOUT:       inst6000003E:    symbolic_constant15
+// CHECK:STDOUT:       inst60000042:    symbolic_constant13
+// CHECK:STDOUT:       inst60000044:    symbolic_constant15
+// CHECK:STDOUT:       inst60000045:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000046:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000047:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000048:    symbolic_constant16
+// CHECK:STDOUT:       inst60000049:    constant<none>
+// CHECK:STDOUT:       inst6000004A:    concrete_constant(inst6000004E)
+// CHECK:STDOUT:       inst6000004B:    constant<none>
+// CHECK:STDOUT:       inst6000004C:    concrete_constant(inst6000004C)
+// CHECK:STDOUT:       inst6000004D:    concrete_constant(inst60000051)
+// CHECK:STDOUT:       inst6000004E:    concrete_constant(inst6000004E)
+// CHECK:STDOUT:       inst6000004F:    concrete_constant(inst60000051)
+// CHECK:STDOUT:       inst60000050:    concrete_constant(inst60000050)
+// CHECK:STDOUT:       inst60000051:    concrete_constant(inst60000051)
+// CHECK:STDOUT:       inst60000052:    symbolic_constant17
+// CHECK:STDOUT:       inst60000053:    symbolic_constant18
+// 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_constant16
+// CHECK:STDOUT:       inst60000059:    symbolic_constant22
+// CHECK:STDOUT:       inst6000005A:    symbolic_constant23
+// CHECK:STDOUT:       inst6000005B:    symbolic_constant24
+// CHECK:STDOUT:       inst6000005C:    symbolic_constant251
+// CHECK:STDOUT:       inst6000005D:    constant<none>
+// CHECK:STDOUT:       inst6000005E:    concrete_constant(inst6000005E)
+// CHECK:STDOUT:       inst6000005F:    symbolic_constant25
+// CHECK:STDOUT:       inst60000060:    symbolic_constant26
+// CHECK:STDOUT:       inst60000061:    symbolic_constant27
+// CHECK:STDOUT:       inst60000062:    concrete_constant(inst60000062)
+// CHECK:STDOUT:       inst60000063:    concrete_constant(inst60000063)
+// CHECK:STDOUT:       inst60000064:    symbolic_constant29
+// CHECK:STDOUT:       inst60000065:    symbolic_constant28
+// CHECK:STDOUT:       inst60000066:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000067:    constant<none>
+// CHECK:STDOUT:       inst60000068:    concrete_constant(inst60000068)
+// CHECK:STDOUT:       inst60000069:    symbolic_constant32
+// CHECK:STDOUT:       inst6000006A:    symbolic_constant34
+// CHECK:STDOUT:       inst6000006B:    symbolic_constant35
+// CHECK:STDOUT:       inst6000006C:    symbolic_constant36
+// CHECK:STDOUT:       inst6000006D:    symbolic_constant37
+// CHECK:STDOUT:       inst6000006E:    symbolic_constant40
+// CHECK:STDOUT:       inst6000006F:    symbolic_constant38
+// CHECK:STDOUT:       inst60000070:    symbolic_constant39
+// CHECK:STDOUT:       inst60000071:    symbolic_constant42
+// 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_constant29
+// CHECK:STDOUT:       inst60000077:    symbolic_constant45
+// CHECK:STDOUT:       inst60000078:    symbolic_constant46
+// CHECK:STDOUT:       inst60000079:    symbolic_constant50
+// CHECK:STDOUT:       inst6000007A:    symbolic_constant51
+// CHECK:STDOUT:       inst6000007B:    symbolic_constant52
+// CHECK:STDOUT:       inst6000007C:    symbolic_constant53
+// CHECK:STDOUT:       inst6000007D:    symbolic_constant54
+// CHECK:STDOUT:       inst6000007E:    symbolic_constant56
+// CHECK:STDOUT:       inst6000007F:    symbolic_constant58
+// CHECK:STDOUT:       inst60000080:    symbolic_constant60
+// CHECK:STDOUT:       inst60000081:    symbolic_constant62
+// CHECK:STDOUT:       inst60000082:    symbolic_constant64
+// CHECK:STDOUT:       inst60000083:    symbolic_constant66
+// CHECK:STDOUT:       inst60000084:    symbolic_constant67
+// CHECK:STDOUT:       inst60000085:    symbolic_constant68
+// CHECK:STDOUT:       inst60000086:    symbolic_constant69
+// CHECK:STDOUT:       inst60000087:    symbolic_constant70
+// CHECK:STDOUT:       inst60000088:    symbolic_constant71
+// CHECK:STDOUT:       inst60000089:    symbolic_constant72
+// CHECK:STDOUT:       inst6000008A:    constant<none>
+// CHECK:STDOUT:       inst6000008B:    concrete_constant(inst6000008B)
+// CHECK:STDOUT:       inst6000008C:    concrete_constant(inst(BoolType))
+// CHECK:STDOUT:       inst6000008D:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst6000008E:    constant<none>
+// CHECK:STDOUT:       inst6000008F:    concrete_constant(inst6000008F)
+// CHECK:STDOUT:       inst60000090:    concrete_constant(inst(CharLiteralType))
+// CHECK:STDOUT:       inst60000091:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000092:    constant<none>
+// CHECK:STDOUT:       inst60000093:    concrete_constant(inst60000093)
+// CHECK:STDOUT:       inst60000094:    concrete_constant(inst(FloatLiteralType))
+// CHECK:STDOUT:       inst60000095:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000096:    constant<none>
+// CHECK:STDOUT:       inst60000097:    concrete_constant(inst60000097)
+// CHECK:STDOUT:       inst60000098:    concrete_constant(inst(IntLiteralType))
+// CHECK:STDOUT:       inst60000099:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst6000009A:    symbolic_constant249
+// CHECK:STDOUT:       inst6000009B:    concrete_constant(inst6000009B)
+// CHECK:STDOUT:       inst6000009C:    concrete_constant(inst6000009C)
+// CHECK:STDOUT:       inst6000009D:    symbolic_constant74
+// CHECK:STDOUT:       inst6000009E:    symbolic_constant73
+// CHECK:STDOUT:       inst6000009F:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst600000A0:    constant<none>
+// CHECK:STDOUT:       inst600000A1:    concrete_constant(inst600000A1)
+// CHECK:STDOUT:       inst600000A2:    symbolic_constant76
+// CHECK:STDOUT:       inst600000A3:    symbolic_constant78
+// CHECK:STDOUT:       inst600000A4:    symbolic_constant79
+// CHECK:STDOUT:       inst600000A5:    symbolic_constant80
+// CHECK:STDOUT:       inst600000A6:    symbolic_constant83
+// CHECK:STDOUT:       inst600000A7:    symbolic_constant81
+// CHECK:STDOUT:       inst600000A8:    symbolic_constant82
+// 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_constant74
+// CHECK:STDOUT:       inst600000AE:    symbolic_constant88
+// CHECK:STDOUT:       inst600000AF:    symbolic_constant89
+// CHECK:STDOUT:       inst600000B0:    symbolic_constant90
+// CHECK:STDOUT:       inst600000B1:    symbolic_constant93
+// CHECK:STDOUT:       inst600000B2:    symbolic_constant94
+// CHECK:STDOUT:       inst600000B3:    symbolic_constant95
+// CHECK:STDOUT:       inst600000B4:    constant<none>
+// CHECK:STDOUT:       inst600000B5:    concrete_constant(inst600000B5)
+// CHECK:STDOUT:       inst600000B6:    concrete_constant(inst(TypeType))
+// CHECK:STDOUT:       inst600000B7:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst600000B8:    constant<none>
+// CHECK:STDOUT:       inst600000B9:    concrete_constant(inst600000B9)
+// CHECK:STDOUT:       inst600000BA:    concrete_constant(inst60000024)
+// CHECK:STDOUT:       inst600000BB:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst600000BC:    constant<none>
+// CHECK:STDOUT:       inst600000BD:    concrete_constant(inst600000BD)
+// CHECK:STDOUT:       inst600000BE:    symbolic_constant96
+// CHECK:STDOUT:       inst600000BF:    symbolic_constant97
+// CHECK:STDOUT:       inst600000C0:    symbolic_constant98
+// CHECK:STDOUT:       inst600000C1:    concrete_constant(inst600000C1)
+// CHECK:STDOUT:       inst600000C2:    concrete_constant(inst600000C2)
+// CHECK:STDOUT:       inst600000C3:    symbolic_constant100
+// CHECK:STDOUT:       inst600000C4:    symbolic_constant101
+// CHECK:STDOUT:       inst600000C5:    symbolic_constant99
+// CHECK:STDOUT:       inst600000C6:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst600000C7:    constant<none>
+// CHECK:STDOUT:       inst600000C8:    concrete_constant(inst600000C8)
+// CHECK:STDOUT:       inst600000C9:    symbolic_constant106
+// CHECK:STDOUT:       inst600000CA:    symbolic_constant108
+// CHECK:STDOUT:       inst600000CB:    symbolic_constant109
+// CHECK:STDOUT:       inst600000CC:    symbolic_constant110
+// CHECK:STDOUT:       inst600000CD:    symbolic_constant111
+// CHECK:STDOUT:       inst600000CE:    symbolic_constant112
+// CHECK:STDOUT:       inst600000CF:    symbolic_constant113
+// CHECK:STDOUT:       inst600000D0:    symbolic_constant116
+// CHECK:STDOUT:       inst600000D1:    symbolic_constant114
+// CHECK:STDOUT:       inst600000D2:    symbolic_constant115
+// CHECK:STDOUT:       inst600000D3:    symbolic_constant118
+// 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_constant100
+// CHECK:STDOUT:       inst600000D9:    symbolic_constant101
+// CHECK:STDOUT:       inst600000DA:    symbolic_constant121
+// CHECK:STDOUT:       inst600000DB:    symbolic_constant122
+// CHECK:STDOUT:       inst600000DC:    symbolic_constant128
+// CHECK:STDOUT:       inst600000DD:    symbolic_constant129
+// CHECK:STDOUT:       inst600000DE:    symbolic_constant130
+// CHECK:STDOUT:       inst600000DF:    symbolic_constant131
+// CHECK:STDOUT:       inst600000E0:    symbolic_constant132
+// CHECK:STDOUT:       inst600000E1:    symbolic_constant133
+// CHECK:STDOUT:       inst600000E2:    symbolic_constant134
+// CHECK:STDOUT:       inst600000E3:    symbolic_constant141
+// CHECK:STDOUT:       inst600000E4:    symbolic_constant143
+// CHECK:STDOUT:       inst600000E5:    symbolic_constant145
+// CHECK:STDOUT:       inst600000E6:    symbolic_constant147
+// CHECK:STDOUT:       inst600000E7:    symbolic_constant149
+// CHECK:STDOUT:       inst600000E8:    symbolic_constant151
+// CHECK:STDOUT:       inst600000E9:    symbolic_constant152
+// CHECK:STDOUT:       inst600000EA:    symbolic_constant153
+// CHECK:STDOUT:       inst600000EB:    symbolic_constant154
+// CHECK:STDOUT:       inst600000EC:    symbolic_constant155
+// CHECK:STDOUT:       inst600000ED:    symbolic_constant156
+// CHECK:STDOUT:       inst600000EE:    symbolic_constant157
+// CHECK:STDOUT:       inst600000EF:    symbolic_constant158
+// CHECK:STDOUT:       inst600000F0:    symbolic_constant159
+// CHECK:STDOUT:       inst600000F1:    symbolic_constant160
+// CHECK:STDOUT:       inst600000F2:    symbolic_constant161
+// CHECK:STDOUT:       inst600000F3:    symbolic_constant162
+// CHECK:STDOUT:       inst600000F4:    constant<none>
+// CHECK:STDOUT:       inst600000F5:    concrete_constant(inst600000F5)
+// CHECK:STDOUT:       inst600000F6:    symbolic_constant163
+// CHECK:STDOUT:       inst600000F7:    symbolic_constant164
+// CHECK:STDOUT:       inst600000F8:    symbolic_constant165
+// CHECK:STDOUT:       inst600000F9:    concrete_constant(inst600000F9)
+// CHECK:STDOUT:       inst600000FA:    concrete_constant(inst600000FA)
+// CHECK:STDOUT:       inst600000FB:    concrete_constant(inst600000FB)
+// CHECK:STDOUT:       inst600000FC:    symbolic_constant167
+// CHECK:STDOUT:       inst600000FD:    symbolic_constant168
+// CHECK:STDOUT:       inst600000FE:    symbolic_constant169
+// CHECK:STDOUT:       inst600000FF:    symbolic_constant166
+// CHECK:STDOUT:       inst60000100:    concrete_constant(inst60000047)
+// CHECK:STDOUT:       inst60000101:    constant<none>
+// CHECK:STDOUT:       inst60000102:    concrete_constant(inst60000102)
+// CHECK:STDOUT:       inst60000103:    symbolic_constant176
+// CHECK:STDOUT:       inst60000104:    symbolic_constant178
+// CHECK:STDOUT:       inst60000105:    symbolic_constant179
+// CHECK:STDOUT:       inst60000106:    symbolic_constant180
+// CHECK:STDOUT:       inst60000107:    symbolic_constant181
+// CHECK:STDOUT:       inst60000108:    symbolic_constant182
+// CHECK:STDOUT:       inst60000109:    symbolic_constant183
+// CHECK:STDOUT:       inst6000010A:    symbolic_constant184
+// CHECK:STDOUT:       inst6000010B:    symbolic_constant185
+// CHECK:STDOUT:       inst6000010C:    symbolic_constant188
+// CHECK:STDOUT:       inst6000010D:    symbolic_constant186
+// CHECK:STDOUT:       inst6000010E:    symbolic_constant187
+// CHECK:STDOUT:       inst6000010F:    symbolic_constant190
+// 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_constant167
+// CHECK:STDOUT:       inst60000115:    symbolic_constant168
+// CHECK:STDOUT:       inst60000116:    symbolic_constant169
+// CHECK:STDOUT:       inst60000117:    symbolic_constant193
+// CHECK:STDOUT:       inst60000118:    symbolic_constant194
+// CHECK:STDOUT:       inst60000119:    symbolic_constant202
+// CHECK:STDOUT:       inst6000011A:    symbolic_constant203
+// CHECK:STDOUT:       inst6000011B:    symbolic_constant204
+// CHECK:STDOUT:       inst6000011C:    symbolic_constant205
+// CHECK:STDOUT:       inst6000011D:    symbolic_constant206
+// CHECK:STDOUT:       inst6000011E:    symbolic_constant207
+// CHECK:STDOUT:       inst6000011F:    symbolic_constant208
+// CHECK:STDOUT:       inst60000120:    symbolic_constant209
+// CHECK:STDOUT:       inst60000121:    symbolic_constant210
+// CHECK:STDOUT:       inst60000122:    symbolic_constant222
+// CHECK:STDOUT:       inst60000123:    symbolic_constant224
+// CHECK:STDOUT:       inst60000124:    symbolic_constant226
+// CHECK:STDOUT:       inst60000125:    symbolic_constant228
+// CHECK:STDOUT:       inst60000126:    symbolic_constant230
+// CHECK:STDOUT:       inst60000127:    symbolic_constant232
+// CHECK:STDOUT:       inst60000128:    symbolic_constant233
+// CHECK:STDOUT:       inst60000129:    symbolic_constant234
+// CHECK:STDOUT:       inst6000012A:    symbolic_constant235
+// CHECK:STDOUT:       inst6000012B:    symbolic_constant236
+// CHECK:STDOUT:       inst6000012C:    symbolic_constant237
+// CHECK:STDOUT:       inst6000012D:    symbolic_constant238
+// CHECK:STDOUT:       inst6000012E:    symbolic_constant239
+// CHECK:STDOUT:       inst6000012F:    symbolic_constant240
+// CHECK:STDOUT:       inst60000130:    symbolic_constant241
+// CHECK:STDOUT:       inst60000131:    symbolic_constant242
+// CHECK:STDOUT:       inst60000132:    symbolic_constant243
+// CHECK:STDOUT:       inst60000133:    symbolic_constant244
+// CHECK:STDOUT:       inst60000134:    symbolic_constant245
+// CHECK:STDOUT:       inst60000135:    symbolic_constant246
+// CHECK:STDOUT:       inst60000136:    symbolic_constant247
+// CHECK:STDOUT:       inst60000137:    symbolic_constant248
+// CHECK:STDOUT:       inst60000138:    symbolic_constant250
+// CHECK:STDOUT:       inst60000139:    symbolic_constant251
+// CHECK:STDOUT:       inst6000013A:    symbolic_constant252
+// CHECK:STDOUT:       inst6000013B:    symbolic_constant253
+// CHECK:STDOUT:       inst6000013C:    symbolic_constant257
+// CHECK:STDOUT:       inst6000013D:    symbolic_constant254
+// CHECK:STDOUT:       inst6000013E:    symbolic_constant255
+// CHECK:STDOUT:       inst6000013F:    symbolic_constant256
+// CHECK:STDOUT:       inst60000140:    symbolic_constant257
+// CHECK:STDOUT:       inst60000142:    symbolic_constant259
+// CHECK:STDOUT:       inst60000143:    symbolic_constant258
+// CHECK:STDOUT:       inst60000144:    symbolic_constant259
+// CHECK:STDOUT:       inst60000146:    symbolic_constant15
+// CHECK:STDOUT:       inst6000014A:    concrete_constant(inst6000014B)
+// CHECK:STDOUT:       inst6000014B:    concrete_constant(inst6000014B)
+// CHECK:STDOUT:       inst6000014C:    concrete_constant(inst6000014B)
 // CHECK:STDOUT:     symbolic_constants:
-// CHECK:STDOUT:       symbolic_constant0: {inst: ir0.inst19, generic: generic<none>, index: generic_inst<none>, kind: self}
-// CHECK:STDOUT:       symbolic_constant1: {inst: ir0.inst21, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant2: {inst: ir0.inst21, generic: generic0, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant3: {inst: ir0.inst27, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant4: {inst: ir0.inst27, generic: generic0, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant5: {inst: ir0.inst30, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant6: {inst: ir0.inst30, generic: generic0, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant7: {inst: ir0.inst42, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant8: {inst: ir0.inst42, generic: generic0, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant9: {inst: ir0.inst45, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant10: {inst: ir0.inst45, generic: generic0, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant11: {inst: ir0.inst56, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant12: {inst: ir0.inst58, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant13: {inst: ir0.inst58, generic: generic0, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant14: {inst: ir0.inst61, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant15: {inst: ir0.inst61, generic: generic0, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant16: {inst: ir0.inst72, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant17: {inst: ir0.inst82, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant18: {inst: ir0.inst83, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant19: {inst: ir0.inst83, generic: generic1, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant20: {inst: ir0.inst72, generic: generic1, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant21: {inst: ir0.inst82, generic: generic1, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant22: {inst: ir0.inst72, generic: generic1, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant23: {inst: ir0.inst82, generic: generic1, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant24: {inst: ir0.inst83, generic: generic1, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant25: {inst: ir0.inst95, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant26: {inst: ir0.inst96, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant27: {inst: ir0.inst97, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant28: {inst: ir0.inst97, generic: generic2, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant29: {inst: ir0.inst95, generic: generic2, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant30: {inst: ir0.inst95, generic: generic2, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant31: {inst: ir0.inst96, generic: generic2, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant32: {inst: ir0.inst105, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant33: {inst: ir0.inst105, generic: generic2, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant34: {inst: ir0.inst95, generic: generic2, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant35: {inst: ir0.inst96, generic: generic2, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant36: {inst: ir0.inst97, generic: generic2, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant37: {inst: ir0.inst105, generic: generic2, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant38: {inst: ir0.inst111, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant39: {inst: ir0.inst112, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant40: {inst: ir0.inst112, generic: generic2, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant41: {inst: ir0.inst111, generic: generic2, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant42: {inst: ir0.inst113, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant43: {inst: ir0.inst113, generic: generic3, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant44: {inst: ir0.inst112, generic: generic2, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant45: {inst: ir0.inst111, generic: generic2, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant46: {inst: ir0.inst112, generic: generic2, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant47: {inst: ir0.inst95, generic: generic3, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant48: {inst: ir0.inst96, generic: generic3, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant49: {inst: ir0.inst97, generic: generic3, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant50: {inst: ir0.inst95, generic: generic3, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant51: {inst: ir0.inst96, generic: generic3, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant52: {inst: ir0.inst97, generic: generic3, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant53: {inst: ir0.inst113, generic: generic3, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant54: {inst: ir0.inst125, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant55: {inst: ir0.inst125, generic: generic3, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant56: {inst: ir0.inst126, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant57: {inst: ir0.inst126, generic: generic3, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant58: {inst: ir0.inst127, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant59: {inst: ir0.inst127, generic: generic3, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant60: {inst: ir0.inst128, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant61: {inst: ir0.inst128, generic: generic3, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant62: {inst: ir0.inst129, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant63: {inst: ir0.inst129, generic: generic3, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant64: {inst: ir0.inst130, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant65: {inst: ir0.inst130, generic: generic3, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant66: {inst: ir0.inst125, generic: generic3, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant67: {inst: ir0.inst126, generic: generic3, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant68: {inst: ir0.inst127, generic: generic3, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant69: {inst: ir0.inst128, generic: generic3, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant70: {inst: ir0.inst129, generic: generic3, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant71: {inst: ir0.inst130, generic: generic3, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant72: {inst: ir0.inst137, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant73: {inst: ir0.inst27, generic: generic4, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant74: {inst: ir0.inst21, generic: generic4, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant75: {inst: ir0.inst21, generic: generic4, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant76: {inst: ir0.inst162, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant77: {inst: ir0.inst162, generic: generic4, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant78: {inst: ir0.inst21, generic: generic4, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant79: {inst: ir0.inst27, generic: generic4, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant80: {inst: ir0.inst162, generic: generic4, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant81: {inst: ir0.inst167, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant82: {inst: ir0.inst168, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant83: {inst: ir0.inst168, generic: generic4, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant84: {inst: ir0.inst167, generic: generic4, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant85: {inst: ir0.inst30, generic: generic5, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant86: {inst: ir0.inst168, generic: generic4, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant87: {inst: ir0.inst61, generic: generic4, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant88: {inst: ir0.inst167, generic: generic4, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant89: {inst: ir0.inst168, generic: generic4, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant90: {inst: ir0.inst61, generic: generic4, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant91: {inst: ir0.inst21, generic: generic5, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant92: {inst: ir0.inst27, generic: generic5, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant93: {inst: ir0.inst21, generic: generic5, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant94: {inst: ir0.inst27, generic: generic5, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant95: {inst: ir0.inst30, generic: generic5, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant96: {inst: ir0.inst190, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant97: {inst: ir0.inst191, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant98: {inst: ir0.inst192, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant99: {inst: ir0.inst192, generic: generic6, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant100: {inst: ir0.inst95, generic: generic6, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant101: {inst: ir0.inst190, generic: generic6, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant102: {inst: ir0.inst95, generic: generic6, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant103: {inst: ir0.inst190, generic: generic6, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant104: {inst: ir0.inst96, generic: generic6, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant105: {inst: ir0.inst191, generic: generic6, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant106: {inst: ir0.inst201, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant107: {inst: ir0.inst201, generic: generic6, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant108: {inst: ir0.inst95, generic: generic6, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant109: {inst: ir0.inst190, generic: generic6, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant110: {inst: ir0.inst96, generic: generic6, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant111: {inst: ir0.inst191, generic: generic6, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant112: {inst: ir0.inst192, generic: generic6, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant113: {inst: ir0.inst201, generic: generic6, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant114: {inst: ir0.inst209, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant115: {inst: ir0.inst210, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant116: {inst: ir0.inst210, generic: generic6, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant117: {inst: ir0.inst209, generic: generic6, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant118: {inst: ir0.inst211, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant119: {inst: ir0.inst211, generic: generic7, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant120: {inst: ir0.inst210, generic: generic6, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant121: {inst: ir0.inst209, generic: generic6, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant122: {inst: ir0.inst210, generic: generic6, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant123: {inst: ir0.inst95, generic: generic7, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant124: {inst: ir0.inst96, generic: generic7, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant125: {inst: ir0.inst190, generic: generic7, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant126: {inst: ir0.inst191, generic: generic7, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant127: {inst: ir0.inst192, generic: generic7, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant128: {inst: ir0.inst95, generic: generic7, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant129: {inst: ir0.inst96, generic: generic7, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant130: {inst: ir0.inst190, generic: generic7, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant131: {inst: ir0.inst191, generic: generic7, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant132: {inst: ir0.inst192, generic: generic7, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant133: {inst: ir0.inst211, generic: generic7, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant134: {inst: ir0.inst226, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant135: {inst: ir0.inst226, generic: generic7, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant136: {inst: ir0.inst126, generic: generic7, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant137: {inst: ir0.inst127, generic: generic7, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant138: {inst: ir0.inst128, generic: generic7, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant139: {inst: ir0.inst129, generic: generic7, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant140: {inst: ir0.inst130, generic: generic7, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant141: {inst: ir0.inst227, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant142: {inst: ir0.inst227, generic: generic7, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant143: {inst: ir0.inst228, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant144: {inst: ir0.inst228, generic: generic7, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant145: {inst: ir0.inst229, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant146: {inst: ir0.inst229, generic: generic7, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant147: {inst: ir0.inst230, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant148: {inst: ir0.inst230, generic: generic7, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant149: {inst: ir0.inst231, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant150: {inst: ir0.inst231, generic: generic7, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant151: {inst: ir0.inst226, generic: generic7, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant152: {inst: ir0.inst126, generic: generic7, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant153: {inst: ir0.inst127, generic: generic7, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant154: {inst: ir0.inst128, generic: generic7, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant155: {inst: ir0.inst129, generic: generic7, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant156: {inst: ir0.inst130, generic: generic7, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant157: {inst: ir0.inst227, generic: generic7, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant158: {inst: ir0.inst228, generic: generic7, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant159: {inst: ir0.inst229, generic: generic7, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant160: {inst: ir0.inst230, generic: generic7, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant161: {inst: ir0.inst231, generic: generic7, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant162: {inst: ir0.inst243, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant163: {inst: ir0.inst246, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant164: {inst: ir0.inst247, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant165: {inst: ir0.inst248, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant166: {inst: ir0.inst248, generic: generic8, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant167: {inst: ir0.inst95, generic: generic8, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant168: {inst: ir0.inst190, generic: generic8, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant169: {inst: ir0.inst246, generic: generic8, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant170: {inst: ir0.inst95, generic: generic8, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant171: {inst: ir0.inst190, generic: generic8, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant172: {inst: ir0.inst246, generic: generic8, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant173: {inst: ir0.inst96, generic: generic8, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant174: {inst: ir0.inst191, generic: generic8, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant175: {inst: ir0.inst247, generic: generic8, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant176: {inst: ir0.inst259, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant177: {inst: ir0.inst259, generic: generic8, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant178: {inst: ir0.inst95, generic: generic8, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant179: {inst: ir0.inst190, generic: generic8, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant180: {inst: ir0.inst246, generic: generic8, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant181: {inst: ir0.inst96, generic: generic8, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant182: {inst: ir0.inst191, generic: generic8, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant183: {inst: ir0.inst247, generic: generic8, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant184: {inst: ir0.inst248, generic: generic8, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant185: {inst: ir0.inst259, generic: generic8, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant186: {inst: ir0.inst269, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant187: {inst: ir0.inst270, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant188: {inst: ir0.inst270, generic: generic8, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant189: {inst: ir0.inst269, generic: generic8, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant190: {inst: ir0.inst271, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant191: {inst: ir0.inst271, generic: generic9, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant192: {inst: ir0.inst270, generic: generic8, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant193: {inst: ir0.inst269, generic: generic8, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant194: {inst: ir0.inst270, generic: generic8, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant195: {inst: ir0.inst95, generic: generic9, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant196: {inst: ir0.inst96, generic: generic9, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant197: {inst: ir0.inst190, generic: generic9, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant198: {inst: ir0.inst191, generic: generic9, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant199: {inst: ir0.inst246, generic: generic9, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant200: {inst: ir0.inst247, generic: generic9, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant201: {inst: ir0.inst248, generic: generic9, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant202: {inst: ir0.inst95, generic: generic9, index: generic_inst_in_decl0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant203: {inst: ir0.inst96, generic: generic9, index: generic_inst_in_decl1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant204: {inst: ir0.inst190, generic: generic9, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant205: {inst: ir0.inst191, generic: generic9, index: generic_inst_in_decl3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant206: {inst: ir0.inst246, generic: generic9, index: generic_inst_in_decl4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant207: {inst: ir0.inst247, generic: generic9, index: generic_inst_in_decl5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant208: {inst: ir0.inst248, generic: generic9, index: generic_inst_in_decl6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant209: {inst: ir0.inst271, generic: generic9, index: generic_inst_in_decl7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant210: {inst: ir0.inst289, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant211: {inst: ir0.inst289, generic: generic9, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant212: {inst: ir0.inst126, generic: generic9, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant213: {inst: ir0.inst127, generic: generic9, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant214: {inst: ir0.inst128, generic: generic9, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant215: {inst: ir0.inst129, generic: generic9, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant216: {inst: ir0.inst130, generic: generic9, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant217: {inst: ir0.inst227, generic: generic9, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant218: {inst: ir0.inst228, generic: generic9, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant219: {inst: ir0.inst229, generic: generic9, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant220: {inst: ir0.inst230, generic: generic9, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant221: {inst: ir0.inst231, generic: generic9, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant222: {inst: ir0.inst290, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant223: {inst: ir0.inst290, generic: generic9, index: generic_inst_in_def11, kind: checked}
-// CHECK:STDOUT:       symbolic_constant224: {inst: ir0.inst291, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant225: {inst: ir0.inst291, generic: generic9, index: generic_inst_in_def12, kind: checked}
-// CHECK:STDOUT:       symbolic_constant226: {inst: ir0.inst292, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant227: {inst: ir0.inst292, generic: generic9, index: generic_inst_in_def13, kind: checked}
-// CHECK:STDOUT:       symbolic_constant228: {inst: ir0.inst293, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant229: {inst: ir0.inst293, generic: generic9, index: generic_inst_in_def14, kind: checked}
-// CHECK:STDOUT:       symbolic_constant230: {inst: ir0.inst294, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant231: {inst: ir0.inst294, generic: generic9, index: generic_inst_in_def15, kind: checked}
-// CHECK:STDOUT:       symbolic_constant232: {inst: ir0.inst289, generic: generic9, index: generic_inst_in_def0, kind: checked}
-// CHECK:STDOUT:       symbolic_constant233: {inst: ir0.inst126, generic: generic9, index: generic_inst_in_def1, kind: checked}
-// CHECK:STDOUT:       symbolic_constant234: {inst: ir0.inst127, generic: generic9, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant235: {inst: ir0.inst128, generic: generic9, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant236: {inst: ir0.inst129, generic: generic9, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant237: {inst: ir0.inst130, generic: generic9, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant238: {inst: ir0.inst227, generic: generic9, index: generic_inst_in_def6, kind: checked}
-// CHECK:STDOUT:       symbolic_constant239: {inst: ir0.inst228, generic: generic9, index: generic_inst_in_def7, kind: checked}
-// CHECK:STDOUT:       symbolic_constant240: {inst: ir0.inst229, generic: generic9, index: generic_inst_in_def8, kind: checked}
-// CHECK:STDOUT:       symbolic_constant241: {inst: ir0.inst230, generic: generic9, index: generic_inst_in_def9, kind: checked}
-// CHECK:STDOUT:       symbolic_constant242: {inst: ir0.inst231, generic: generic9, index: generic_inst_in_def10, kind: checked}
-// CHECK:STDOUT:       symbolic_constant243: {inst: ir0.inst290, generic: generic9, index: generic_inst_in_def11, kind: checked}
-// CHECK:STDOUT:       symbolic_constant244: {inst: ir0.inst291, generic: generic9, index: generic_inst_in_def12, kind: checked}
-// CHECK:STDOUT:       symbolic_constant245: {inst: ir0.inst292, generic: generic9, index: generic_inst_in_def13, kind: checked}
-// CHECK:STDOUT:       symbolic_constant246: {inst: ir0.inst293, generic: generic9, index: generic_inst_in_def14, kind: checked}
-// CHECK:STDOUT:       symbolic_constant247: {inst: ir0.inst294, generic: generic9, index: generic_inst_in_def15, kind: checked}
-// CHECK:STDOUT:       symbolic_constant248: {inst: ir0.inst311, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant249: {inst: ir0.inst162, generic: generic4, index: generic_inst_in_decl2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant250: {inst: ir0.inst312, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant251: {inst: ir0.inst312, generic: generic0, index: generic_inst_in_def2, kind: checked}
-// CHECK:STDOUT:       symbolic_constant252: {inst: ir0.inst314, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant253: {inst: ir0.inst315, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant254: {inst: ir0.inst317, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant255: {inst: ir0.inst314, generic: generic0, index: generic_inst_in_def3, kind: checked}
-// CHECK:STDOUT:       symbolic_constant256: {inst: ir0.inst315, generic: generic0, index: generic_inst_in_def4, kind: checked}
-// CHECK:STDOUT:       symbolic_constant257: {inst: ir0.inst317, generic: generic0, index: generic_inst_in_def5, kind: checked}
-// CHECK:STDOUT:       symbolic_constant258: {inst: ir0.inst323, generic: generic<none>, index: generic_inst<none>, kind: checked}
-// CHECK:STDOUT:       symbolic_constant259: {inst: ir0.inst323, generic: generic0, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant0: {inst: inst60000013, generic: generic<none>, index: generic_inst<none>, kind: self}
+// CHECK:STDOUT:       symbolic_constant1: {inst: inst60000015, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant2: {inst: inst60000015, generic: generic0, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant3: {inst: inst6000001B, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant4: {inst: inst6000001B, generic: generic0, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant5: {inst: inst6000001E, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant6: {inst: inst6000001E, generic: generic0, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant7: {inst: inst6000002A, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant8: {inst: inst6000002A, generic: generic0, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant9: {inst: inst6000002D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant10: {inst: inst6000002D, generic: generic0, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant11: {inst: inst60000038, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant12: {inst: inst6000003A, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant13: {inst: inst6000003A, generic: generic0, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant14: {inst: inst6000003D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant15: {inst: inst6000003D, generic: generic0, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant16: {inst: inst60000048, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant17: {inst: inst60000052, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant18: {inst: inst60000053, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant19: {inst: inst60000053, generic: generic1, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant20: {inst: inst60000048, generic: generic1, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant21: {inst: inst60000052, generic: generic1, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant22: {inst: inst60000048, generic: generic1, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant23: {inst: inst60000052, generic: generic1, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant24: {inst: inst60000053, generic: generic1, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant25: {inst: inst6000005F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant26: {inst: inst60000060, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant27: {inst: inst60000061, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant28: {inst: inst60000061, generic: generic2, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant29: {inst: inst6000005F, generic: generic2, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant30: {inst: inst6000005F, generic: generic2, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant31: {inst: inst60000060, generic: generic2, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant32: {inst: inst60000069, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant33: {inst: inst60000069, generic: generic2, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant34: {inst: inst6000005F, generic: generic2, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant35: {inst: inst60000060, generic: generic2, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant36: {inst: inst60000061, generic: generic2, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant37: {inst: inst60000069, generic: generic2, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant38: {inst: inst6000006F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant39: {inst: inst60000070, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant40: {inst: inst60000070, generic: generic2, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant41: {inst: inst6000006F, generic: generic2, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant42: {inst: inst60000071, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant43: {inst: inst60000071, generic: generic3, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant44: {inst: inst60000070, generic: generic2, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant45: {inst: inst6000006F, generic: generic2, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant46: {inst: inst60000070, generic: generic2, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant47: {inst: inst6000005F, generic: generic3, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant48: {inst: inst60000060, generic: generic3, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant49: {inst: inst60000061, generic: generic3, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant50: {inst: inst6000005F, generic: generic3, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant51: {inst: inst60000060, generic: generic3, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant52: {inst: inst60000061, generic: generic3, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant53: {inst: inst60000071, generic: generic3, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant54: {inst: inst6000007D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant55: {inst: inst6000007D, generic: generic3, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant56: {inst: inst6000007E, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant57: {inst: inst6000007E, generic: generic3, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant58: {inst: inst6000007F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant59: {inst: inst6000007F, generic: generic3, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant60: {inst: inst60000080, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant61: {inst: inst60000080, generic: generic3, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant62: {inst: inst60000081, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant63: {inst: inst60000081, generic: generic3, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant64: {inst: inst60000082, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant65: {inst: inst60000082, generic: generic3, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant66: {inst: inst6000007D, generic: generic3, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant67: {inst: inst6000007E, generic: generic3, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant68: {inst: inst6000007F, generic: generic3, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant69: {inst: inst60000080, generic: generic3, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant70: {inst: inst60000081, generic: generic3, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant71: {inst: inst60000082, generic: generic3, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant72: {inst: inst60000089, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant73: {inst: inst6000001B, generic: generic4, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant74: {inst: inst60000015, generic: generic4, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant75: {inst: inst60000015, generic: generic4, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant76: {inst: inst600000A2, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant77: {inst: inst600000A2, generic: generic4, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant78: {inst: inst60000015, generic: generic4, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant79: {inst: inst6000001B, generic: generic4, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant80: {inst: inst600000A2, generic: generic4, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant81: {inst: inst600000A7, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant82: {inst: inst600000A8, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant83: {inst: inst600000A8, generic: generic4, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant84: {inst: inst600000A7, generic: generic4, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant85: {inst: inst6000001E, generic: generic5, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant86: {inst: inst600000A8, generic: generic4, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant87: {inst: inst6000003D, generic: generic4, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant88: {inst: inst600000A7, generic: generic4, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant89: {inst: inst600000A8, generic: generic4, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant90: {inst: inst6000003D, generic: generic4, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant91: {inst: inst60000015, generic: generic5, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant92: {inst: inst6000001B, generic: generic5, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant93: {inst: inst60000015, generic: generic5, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant94: {inst: inst6000001B, generic: generic5, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant95: {inst: inst6000001E, generic: generic5, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant96: {inst: inst600000BE, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant97: {inst: inst600000BF, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant98: {inst: inst600000C0, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant99: {inst: inst600000C0, generic: generic6, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant100: {inst: inst6000005F, generic: generic6, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant101: {inst: inst600000BE, generic: generic6, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant102: {inst: inst6000005F, generic: generic6, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant103: {inst: inst600000BE, generic: generic6, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant104: {inst: inst60000060, generic: generic6, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant105: {inst: inst600000BF, generic: generic6, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant106: {inst: inst600000C9, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant107: {inst: inst600000C9, generic: generic6, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant108: {inst: inst6000005F, generic: generic6, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant109: {inst: inst600000BE, generic: generic6, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant110: {inst: inst60000060, generic: generic6, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant111: {inst: inst600000BF, generic: generic6, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant112: {inst: inst600000C0, generic: generic6, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant113: {inst: inst600000C9, generic: generic6, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant114: {inst: inst600000D1, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant115: {inst: inst600000D2, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant116: {inst: inst600000D2, generic: generic6, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant117: {inst: inst600000D1, generic: generic6, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant118: {inst: inst600000D3, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant119: {inst: inst600000D3, generic: generic7, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant120: {inst: inst600000D2, generic: generic6, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant121: {inst: inst600000D1, generic: generic6, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant122: {inst: inst600000D2, generic: generic6, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant123: {inst: inst6000005F, generic: generic7, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant124: {inst: inst60000060, generic: generic7, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant125: {inst: inst600000BE, generic: generic7, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant126: {inst: inst600000BF, generic: generic7, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant127: {inst: inst600000C0, generic: generic7, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant128: {inst: inst6000005F, generic: generic7, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant129: {inst: inst60000060, generic: generic7, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant130: {inst: inst600000BE, generic: generic7, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant131: {inst: inst600000BF, generic: generic7, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant132: {inst: inst600000C0, generic: generic7, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant133: {inst: inst600000D3, generic: generic7, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant134: {inst: inst600000E2, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant135: {inst: inst600000E2, generic: generic7, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant136: {inst: inst6000007E, generic: generic7, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant137: {inst: inst6000007F, generic: generic7, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant138: {inst: inst60000080, generic: generic7, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant139: {inst: inst60000081, generic: generic7, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant140: {inst: inst60000082, generic: generic7, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant141: {inst: inst600000E3, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant142: {inst: inst600000E3, generic: generic7, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant143: {inst: inst600000E4, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant144: {inst: inst600000E4, generic: generic7, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant145: {inst: inst600000E5, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant146: {inst: inst600000E5, generic: generic7, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant147: {inst: inst600000E6, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant148: {inst: inst600000E6, generic: generic7, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant149: {inst: inst600000E7, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant150: {inst: inst600000E7, generic: generic7, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant151: {inst: inst600000E2, generic: generic7, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant152: {inst: inst6000007E, generic: generic7, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant153: {inst: inst6000007F, generic: generic7, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant154: {inst: inst60000080, generic: generic7, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant155: {inst: inst60000081, generic: generic7, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant156: {inst: inst60000082, generic: generic7, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant157: {inst: inst600000E3, generic: generic7, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant158: {inst: inst600000E4, generic: generic7, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant159: {inst: inst600000E5, generic: generic7, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant160: {inst: inst600000E6, generic: generic7, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant161: {inst: inst600000E7, generic: generic7, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant162: {inst: inst600000F3, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant163: {inst: inst600000F6, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant164: {inst: inst600000F7, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant165: {inst: inst600000F8, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant166: {inst: inst600000F8, generic: generic8, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant167: {inst: inst6000005F, generic: generic8, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant168: {inst: inst600000BE, generic: generic8, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant169: {inst: inst600000F6, generic: generic8, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant170: {inst: inst6000005F, generic: generic8, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant171: {inst: inst600000BE, generic: generic8, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant172: {inst: inst600000F6, generic: generic8, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant173: {inst: inst60000060, generic: generic8, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant174: {inst: inst600000BF, generic: generic8, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant175: {inst: inst600000F7, generic: generic8, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant176: {inst: inst60000103, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant177: {inst: inst60000103, generic: generic8, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant178: {inst: inst6000005F, generic: generic8, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant179: {inst: inst600000BE, generic: generic8, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant180: {inst: inst600000F6, generic: generic8, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant181: {inst: inst60000060, generic: generic8, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant182: {inst: inst600000BF, generic: generic8, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant183: {inst: inst600000F7, generic: generic8, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant184: {inst: inst600000F8, generic: generic8, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant185: {inst: inst60000103, generic: generic8, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant186: {inst: inst6000010D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant187: {inst: inst6000010E, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant188: {inst: inst6000010E, generic: generic8, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant189: {inst: inst6000010D, generic: generic8, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant190: {inst: inst6000010F, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant191: {inst: inst6000010F, generic: generic9, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant192: {inst: inst6000010E, generic: generic8, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant193: {inst: inst6000010D, generic: generic8, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant194: {inst: inst6000010E, generic: generic8, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant195: {inst: inst6000005F, generic: generic9, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant196: {inst: inst60000060, generic: generic9, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant197: {inst: inst600000BE, generic: generic9, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant198: {inst: inst600000BF, generic: generic9, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant199: {inst: inst600000F6, generic: generic9, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant200: {inst: inst600000F7, generic: generic9, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant201: {inst: inst600000F8, generic: generic9, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant202: {inst: inst6000005F, generic: generic9, index: generic_inst_in_decl0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant203: {inst: inst60000060, generic: generic9, index: generic_inst_in_decl1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant204: {inst: inst600000BE, generic: generic9, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant205: {inst: inst600000BF, generic: generic9, index: generic_inst_in_decl3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant206: {inst: inst600000F6, generic: generic9, index: generic_inst_in_decl4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant207: {inst: inst600000F7, generic: generic9, index: generic_inst_in_decl5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant208: {inst: inst600000F8, generic: generic9, index: generic_inst_in_decl6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant209: {inst: inst6000010F, generic: generic9, index: generic_inst_in_decl7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant210: {inst: inst60000121, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant211: {inst: inst60000121, generic: generic9, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant212: {inst: inst6000007E, generic: generic9, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant213: {inst: inst6000007F, generic: generic9, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant214: {inst: inst60000080, generic: generic9, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant215: {inst: inst60000081, generic: generic9, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant216: {inst: inst60000082, generic: generic9, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant217: {inst: inst600000E3, generic: generic9, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant218: {inst: inst600000E4, generic: generic9, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant219: {inst: inst600000E5, generic: generic9, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant220: {inst: inst600000E6, generic: generic9, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant221: {inst: inst600000E7, generic: generic9, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant222: {inst: inst60000122, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant223: {inst: inst60000122, generic: generic9, index: generic_inst_in_def11, kind: checked}
+// CHECK:STDOUT:       symbolic_constant224: {inst: inst60000123, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant225: {inst: inst60000123, generic: generic9, index: generic_inst_in_def12, kind: checked}
+// CHECK:STDOUT:       symbolic_constant226: {inst: inst60000124, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant227: {inst: inst60000124, generic: generic9, index: generic_inst_in_def13, kind: checked}
+// CHECK:STDOUT:       symbolic_constant228: {inst: inst60000125, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant229: {inst: inst60000125, generic: generic9, index: generic_inst_in_def14, kind: checked}
+// CHECK:STDOUT:       symbolic_constant230: {inst: inst60000126, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant231: {inst: inst60000126, generic: generic9, index: generic_inst_in_def15, kind: checked}
+// CHECK:STDOUT:       symbolic_constant232: {inst: inst60000121, generic: generic9, index: generic_inst_in_def0, kind: checked}
+// CHECK:STDOUT:       symbolic_constant233: {inst: inst6000007E, generic: generic9, index: generic_inst_in_def1, kind: checked}
+// CHECK:STDOUT:       symbolic_constant234: {inst: inst6000007F, generic: generic9, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant235: {inst: inst60000080, generic: generic9, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant236: {inst: inst60000081, generic: generic9, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant237: {inst: inst60000082, generic: generic9, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant238: {inst: inst600000E3, generic: generic9, index: generic_inst_in_def6, kind: checked}
+// CHECK:STDOUT:       symbolic_constant239: {inst: inst600000E4, generic: generic9, index: generic_inst_in_def7, kind: checked}
+// CHECK:STDOUT:       symbolic_constant240: {inst: inst600000E5, generic: generic9, index: generic_inst_in_def8, kind: checked}
+// CHECK:STDOUT:       symbolic_constant241: {inst: inst600000E6, generic: generic9, index: generic_inst_in_def9, kind: checked}
+// CHECK:STDOUT:       symbolic_constant242: {inst: inst600000E7, generic: generic9, index: generic_inst_in_def10, kind: checked}
+// CHECK:STDOUT:       symbolic_constant243: {inst: inst60000122, generic: generic9, index: generic_inst_in_def11, kind: checked}
+// CHECK:STDOUT:       symbolic_constant244: {inst: inst60000123, generic: generic9, index: generic_inst_in_def12, kind: checked}
+// CHECK:STDOUT:       symbolic_constant245: {inst: inst60000124, generic: generic9, index: generic_inst_in_def13, kind: checked}
+// CHECK:STDOUT:       symbolic_constant246: {inst: inst60000125, generic: generic9, index: generic_inst_in_def14, kind: checked}
+// CHECK:STDOUT:       symbolic_constant247: {inst: inst60000126, generic: generic9, index: generic_inst_in_def15, kind: checked}
+// CHECK:STDOUT:       symbolic_constant248: {inst: inst60000137, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant249: {inst: inst600000A2, generic: generic4, index: generic_inst_in_decl2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant250: {inst: inst60000138, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant251: {inst: inst60000138, generic: generic0, index: generic_inst_in_def2, kind: checked}
+// CHECK:STDOUT:       symbolic_constant252: {inst: inst6000013A, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant253: {inst: inst6000013B, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant254: {inst: inst6000013D, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant255: {inst: inst6000013A, generic: generic0, index: generic_inst_in_def3, kind: checked}
+// CHECK:STDOUT:       symbolic_constant256: {inst: inst6000013B, generic: generic0, index: generic_inst_in_def4, kind: checked}
+// CHECK:STDOUT:       symbolic_constant257: {inst: inst6000013D, generic: generic0, index: generic_inst_in_def5, kind: checked}
+// CHECK:STDOUT:       symbolic_constant258: {inst: inst60000143, generic: generic<none>, index: generic_inst<none>, kind: checked}
+// CHECK:STDOUT:       symbolic_constant259: {inst: inst60000143, generic: generic0, index: generic_inst_in_def6, kind: checked}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir0.inst53
+// CHECK:STDOUT:       0:               inst60000035
 // CHECK:STDOUT:     imports:
-// CHECK:STDOUT:       0:               ir0.inst16
-// CHECK:STDOUT:       1:               ir0.inst69
-// CHECK:STDOUT:       2:               ir0.inst70
-// CHECK:STDOUT:       3:               ir0.inst73
-// CHECK:STDOUT:       4:               ir0.inst74
-// CHECK:STDOUT:       5:               ir0.inst75
-// CHECK:STDOUT:       6:               ir0.inst77
-// CHECK:STDOUT:       7:               ir0.inst79
-// CHECK:STDOUT:       8:               ir0.inst84
-// CHECK:STDOUT:       9:               ir0.inst85
-// CHECK:STDOUT:       10:              ir0.inst86
-// CHECK:STDOUT:       11:              ir0.inst87
-// CHECK:STDOUT:       12:              ir0.inst88
-// CHECK:STDOUT:       13:              ir0.inst93
-// CHECK:STDOUT:       14:              ir0.inst94
-// CHECK:STDOUT:       15:              ir0.inst99
-// CHECK:STDOUT:       16:              ir0.inst100
-// CHECK:STDOUT:       17:              ir0.inst101
-// CHECK:STDOUT:       18:              ir0.inst102
-// CHECK:STDOUT:       19:              ir0.inst103
-// CHECK:STDOUT:       20:              ir0.inst104
-// CHECK:STDOUT:       21:              ir0.inst110
-// CHECK:STDOUT:       22:              ir0.inst114
-// CHECK:STDOUT:       23:              ir0.inst115
-// CHECK:STDOUT:       24:              ir0.inst116
-// CHECK:STDOUT:       25:              ir0.inst117
-// CHECK:STDOUT:       26:              ir0.inst118
-// CHECK:STDOUT:       27:              ir0.inst138
-// CHECK:STDOUT:       28:              ir0.inst139
-// CHECK:STDOUT:       29:              ir0.inst140
-// CHECK:STDOUT:       30:              ir0.inst141
-// CHECK:STDOUT:       31:              ir0.inst142
-// CHECK:STDOUT:       32:              ir0.inst143
-// CHECK:STDOUT:       33:              ir0.inst144
-// CHECK:STDOUT:       34:              ir0.inst145
-// CHECK:STDOUT:       35:              ir0.inst146
-// CHECK:STDOUT:       36:              ir0.inst147
-// CHECK:STDOUT:       37:              ir0.inst148
-// CHECK:STDOUT:       38:              ir0.inst149
-// CHECK:STDOUT:       39:              ir0.inst150
-// CHECK:STDOUT:       40:              ir0.inst151
-// CHECK:STDOUT:       41:              ir0.inst152
-// CHECK:STDOUT:       42:              ir0.inst153
-// CHECK:STDOUT:       43:              ir0.inst154
-// CHECK:STDOUT:       44:              ir0.inst155
-// CHECK:STDOUT:       45:              ir0.inst156
-// CHECK:STDOUT:       46:              ir0.inst157
-// CHECK:STDOUT:       47:              ir0.inst158
-// CHECK:STDOUT:       48:              ir0.inst159
-// CHECK:STDOUT:       49:              ir0.inst160
-// CHECK:STDOUT:       50:              ir0.inst161
-// CHECK:STDOUT:       51:              ir0.inst166
-// CHECK:STDOUT:       52:              ir0.inst169
-// CHECK:STDOUT:       53:              ir0.inst170
-// CHECK:STDOUT:       54:              ir0.inst171
-// CHECK:STDOUT:       55:              ir0.inst172
-// CHECK:STDOUT:       56:              ir0.inst173
-// CHECK:STDOUT:       57:              ir0.inst180
-// CHECK:STDOUT:       58:              ir0.inst181
-// CHECK:STDOUT:       59:              ir0.inst182
-// CHECK:STDOUT:       60:              ir0.inst183
-// CHECK:STDOUT:       61:              ir0.inst184
-// CHECK:STDOUT:       62:              ir0.inst185
-// CHECK:STDOUT:       63:              ir0.inst186
-// CHECK:STDOUT:       64:              ir0.inst187
-// CHECK:STDOUT:       65:              ir0.inst188
-// CHECK:STDOUT:       66:              ir0.inst189
-// CHECK:STDOUT:       67:              ir0.inst193
-// CHECK:STDOUT:       68:              ir0.inst194
-// CHECK:STDOUT:       69:              ir0.inst195
-// CHECK:STDOUT:       70:              ir0.inst196
-// CHECK:STDOUT:       71:              ir0.inst197
-// CHECK:STDOUT:       72:              ir0.inst198
-// CHECK:STDOUT:       73:              ir0.inst199
-// CHECK:STDOUT:       74:              ir0.inst200
-// CHECK:STDOUT:       75:              ir0.inst208
-// CHECK:STDOUT:       76:              ir0.inst212
-// CHECK:STDOUT:       77:              ir0.inst213
-// CHECK:STDOUT:       78:              ir0.inst214
-// CHECK:STDOUT:       79:              ir0.inst215
-// CHECK:STDOUT:       80:              ir0.inst216
-// CHECK:STDOUT:       81:              ir0.inst217
-// CHECK:STDOUT:       82:              ir0.inst244
-// CHECK:STDOUT:       83:              ir0.inst245
-// CHECK:STDOUT:       84:              ir0.inst249
-// CHECK:STDOUT:       85:              ir0.inst250
-// CHECK:STDOUT:       86:              ir0.inst251
-// CHECK:STDOUT:       87:              ir0.inst252
-// CHECK:STDOUT:       88:              ir0.inst253
-// CHECK:STDOUT:       89:              ir0.inst254
-// CHECK:STDOUT:       90:              ir0.inst255
-// CHECK:STDOUT:       91:              ir0.inst256
-// CHECK:STDOUT:       92:              ir0.inst257
-// CHECK:STDOUT:       93:              ir0.inst258
-// CHECK:STDOUT:       94:              ir0.inst268
-// CHECK:STDOUT:       95:              ir0.inst272
-// CHECK:STDOUT:       96:              ir0.inst273
-// CHECK:STDOUT:       97:              ir0.inst274
-// CHECK:STDOUT:       98:              ir0.inst275
-// CHECK:STDOUT:       99:              ir0.inst276
-// CHECK:STDOUT:       100:             ir0.inst277
-// CHECK:STDOUT:       101:             ir0.inst278
+// CHECK:STDOUT:       0:               inst60000010
+// CHECK:STDOUT:       1:               inst60000045
+// CHECK:STDOUT:       2:               inst60000046
+// CHECK:STDOUT:       3:               inst60000049
+// CHECK:STDOUT:       4:               inst6000004A
+// CHECK:STDOUT:       5:               inst6000004B
+// CHECK:STDOUT:       6:               inst6000004D
+// CHECK:STDOUT:       7:               inst6000004F
+// CHECK:STDOUT:       8:               inst60000054
+// CHECK:STDOUT:       9:               inst60000055
+// CHECK:STDOUT:       10:              inst60000056
+// CHECK:STDOUT:       11:              inst60000057
+// CHECK:STDOUT:       12:              inst60000058
+// CHECK:STDOUT:       13:              inst6000005D
+// CHECK:STDOUT:       14:              inst6000005E
+// CHECK:STDOUT:       15:              inst60000063
+// CHECK:STDOUT:       16:              inst60000064
+// CHECK:STDOUT:       17:              inst60000065
+// CHECK:STDOUT:       18:              inst60000066
+// CHECK:STDOUT:       19:              inst60000067
+// CHECK:STDOUT:       20:              inst60000068
+// CHECK:STDOUT:       21:              inst6000006E
+// CHECK:STDOUT:       22:              inst60000072
+// CHECK:STDOUT:       23:              inst60000073
+// CHECK:STDOUT:       24:              inst60000074
+// CHECK:STDOUT:       25:              inst60000075
+// CHECK:STDOUT:       26:              inst60000076
+// CHECK:STDOUT:       27:              inst6000008A
+// CHECK:STDOUT:       28:              inst6000008B
+// CHECK:STDOUT:       29:              inst6000008C
+// CHECK:STDOUT:       30:              inst6000008D
+// CHECK:STDOUT:       31:              inst6000008E
+// CHECK:STDOUT:       32:              inst6000008F
+// CHECK:STDOUT:       33:              inst60000090
+// CHECK:STDOUT:       34:              inst60000091
+// CHECK:STDOUT:       35:              inst60000092
+// CHECK:STDOUT:       36:              inst60000093
+// CHECK:STDOUT:       37:              inst60000094
+// CHECK:STDOUT:       38:              inst60000095
+// CHECK:STDOUT:       39:              inst60000096
+// CHECK:STDOUT:       40:              inst60000097
+// CHECK:STDOUT:       41:              inst60000098
+// CHECK:STDOUT:       42:              inst60000099
+// CHECK:STDOUT:       43:              inst6000009A
+// CHECK:STDOUT:       44:              inst6000009B
+// CHECK:STDOUT:       45:              inst6000009C
+// CHECK:STDOUT:       46:              inst6000009D
+// CHECK:STDOUT:       47:              inst6000009E
+// CHECK:STDOUT:       48:              inst6000009F
+// CHECK:STDOUT:       49:              inst600000A0
+// CHECK:STDOUT:       50:              inst600000A1
+// CHECK:STDOUT:       51:              inst600000A6
+// CHECK:STDOUT:       52:              inst600000A9
+// CHECK:STDOUT:       53:              inst600000AA
+// CHECK:STDOUT:       54:              inst600000AB
+// CHECK:STDOUT:       55:              inst600000AC
+// CHECK:STDOUT:       56:              inst600000AD
+// CHECK:STDOUT:       57:              inst600000B4
+// CHECK:STDOUT:       58:              inst600000B5
+// CHECK:STDOUT:       59:              inst600000B6
+// CHECK:STDOUT:       60:              inst600000B7
+// CHECK:STDOUT:       61:              inst600000B8
+// CHECK:STDOUT:       62:              inst600000B9
+// CHECK:STDOUT:       63:              inst600000BA
+// CHECK:STDOUT:       64:              inst600000BB
+// CHECK:STDOUT:       65:              inst600000BC
+// CHECK:STDOUT:       66:              inst600000BD
+// CHECK:STDOUT:       67:              inst600000C1
+// CHECK:STDOUT:       68:              inst600000C2
+// CHECK:STDOUT:       69:              inst600000C3
+// CHECK:STDOUT:       70:              inst600000C4
+// CHECK:STDOUT:       71:              inst600000C5
+// CHECK:STDOUT:       72:              inst600000C6
+// CHECK:STDOUT:       73:              inst600000C7
+// CHECK:STDOUT:       74:              inst600000C8
+// CHECK:STDOUT:       75:              inst600000D0
+// CHECK:STDOUT:       76:              inst600000D4
+// CHECK:STDOUT:       77:              inst600000D5
+// CHECK:STDOUT:       78:              inst600000D6
+// CHECK:STDOUT:       79:              inst600000D7
+// CHECK:STDOUT:       80:              inst600000D8
+// CHECK:STDOUT:       81:              inst600000D9
+// CHECK:STDOUT:       82:              inst600000F4
+// CHECK:STDOUT:       83:              inst600000F5
+// CHECK:STDOUT:       84:              inst600000F9
+// CHECK:STDOUT:       85:              inst600000FA
+// CHECK:STDOUT:       86:              inst600000FB
+// CHECK:STDOUT:       87:              inst600000FC
+// CHECK:STDOUT:       88:              inst600000FD
+// CHECK:STDOUT:       89:              inst600000FE
+// CHECK:STDOUT:       90:              inst600000FF
+// CHECK:STDOUT:       91:              inst60000100
+// CHECK:STDOUT:       92:              inst60000101
+// CHECK:STDOUT:       93:              inst60000102
+// CHECK:STDOUT:       94:              inst6000010C
+// CHECK:STDOUT:       95:              inst60000110
+// CHECK:STDOUT:       96:              inst60000111
+// CHECK:STDOUT:       97:              inst60000112
+// CHECK:STDOUT:       98:              inst60000113
+// CHECK:STDOUT:       99:              inst60000114
+// CHECK:STDOUT:       100:             inst60000115
+// CHECK:STDOUT:       101:             inst60000116
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:
-// CHECK:STDOUT:       0:               ir0.inst18
+// CHECK:STDOUT:       0:               inst60000012
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir0.inst24
+// CHECK:STDOUT:       0:               inst60000018
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               ir0.inst25
-// CHECK:STDOUT:       1:               ir0.inst26
+// CHECK:STDOUT:       0:               inst60000019
+// CHECK:STDOUT:       1:               inst6000001A
 // CHECK:STDOUT:     inst_block7:
-// CHECK:STDOUT:       0:               ir0.inst33
+// CHECK:STDOUT:       0:               inst60000021
 // CHECK:STDOUT:     inst_block8:
-// CHECK:STDOUT:       0:               ir0.inst35
-// CHECK:STDOUT:       1:               ir0.inst37
+// CHECK:STDOUT:       0:               inst60000023
+// CHECK:STDOUT:       1:               inst60000025
 // CHECK:STDOUT:     inst_block9:
 // CHECK:STDOUT:       0:               inst(TypeType)
-// CHECK:STDOUT:       1:               ir0.inst36
+// CHECK:STDOUT:       1:               inst60000024
 // CHECK:STDOUT:     inst_block10:
-// CHECK:STDOUT:       0:               ir0.inst35
-// CHECK:STDOUT:       1:               ir0.inst41
+// CHECK:STDOUT:       0:               inst60000023
+// CHECK:STDOUT:       1:               inst60000029
 // CHECK:STDOUT:     inst_block11:
-// CHECK:STDOUT:       0:               ir0.inst27
-// CHECK:STDOUT:       1:               ir0.inst36
+// CHECK:STDOUT:       0:               inst6000001B
+// CHECK:STDOUT:       1:               inst60000024
 // CHECK:STDOUT:     inst_block12:
-// CHECK:STDOUT:       0:               ir0.inst28
-// CHECK:STDOUT:       1:               ir0.inst36
+// CHECK:STDOUT:       0:               inst6000001C
+// CHECK:STDOUT:       1:               inst60000024
 // CHECK:STDOUT:     inst_block13:
-// CHECK:STDOUT:       0:               ir0.inst49
-// CHECK:STDOUT:       1:               ir0.inst51
+// CHECK:STDOUT:       0:               inst60000031
+// CHECK:STDOUT:       1:               inst60000033
 // CHECK:STDOUT:     inst_block14:
-// CHECK:STDOUT:       0:               ir0.inst24
-// CHECK:STDOUT:       1:               ir0.inst31
-// CHECK:STDOUT:       2:               ir0.inst33
-// CHECK:STDOUT:       3:               ir0.inst46
-// CHECK:STDOUT:       4:               ir0.inst48
+// CHECK:STDOUT:       0:               inst60000018
+// CHECK:STDOUT:       1:               inst6000001F
+// CHECK:STDOUT:       2:               inst60000021
+// CHECK:STDOUT:       3:               inst6000002E
+// CHECK:STDOUT:       4:               inst60000030
 // CHECK:STDOUT:     inst_block15:
-// CHECK:STDOUT:       0:               ir0.inst34
-// CHECK:STDOUT:       1:               ir0.inst35
-// CHECK:STDOUT:       2:               ir0.inst37
-// CHECK:STDOUT:       3:               ir0.inst39
-// CHECK:STDOUT:       4:               ir0.inst41
-// CHECK:STDOUT:       5:               ir0.inst43
-// CHECK:STDOUT:       6:               ir0.inst18
-// CHECK:STDOUT:       7:               ir0.inst20
-// CHECK:STDOUT:       8:               ir0.inst49
-// CHECK:STDOUT:       9:               ir0.inst50
-// CHECK:STDOUT:       10:              ir0.inst29
-// CHECK:STDOUT:       11:              ir0.inst51
-// CHECK:STDOUT:       12:              ir0.inst52
+// CHECK:STDOUT:       0:               inst60000022
+// CHECK:STDOUT:       1:               inst60000023
+// CHECK:STDOUT:       2:               inst60000025
+// CHECK:STDOUT:       3:               inst60000027
+// CHECK:STDOUT:       4:               inst60000029
+// CHECK:STDOUT:       5:               inst6000002B
+// CHECK:STDOUT:       6:               inst60000012
+// CHECK:STDOUT:       7:               inst60000014
+// CHECK:STDOUT:       8:               inst60000031
+// CHECK:STDOUT:       9:               inst60000032
+// CHECK:STDOUT:       10:              inst6000001D
+// CHECK:STDOUT:       11:              inst60000033
+// CHECK:STDOUT:       12:              inst60000034
 // CHECK:STDOUT:     inst_block16:
-// CHECK:STDOUT:       0:               ir0.inst20
+// CHECK:STDOUT:       0:               inst60000014
 // CHECK:STDOUT:     inst_block17:
-// CHECK:STDOUT:       0:               ir0.inst21
+// CHECK:STDOUT:       0:               inst60000015
 // CHECK:STDOUT:     inst_block18:
-// CHECK:STDOUT:       0:               ir0.inst22
-// CHECK:STDOUT:       1:               ir0.inst28
-// CHECK:STDOUT:       2:               ir0.inst32
-// CHECK:STDOUT:       3:               ir0.inst44
-// CHECK:STDOUT:       4:               ir0.inst47
+// CHECK:STDOUT:       0:               inst60000016
+// CHECK:STDOUT:       1:               inst6000001C
+// CHECK:STDOUT:       2:               inst60000020
+// CHECK:STDOUT:       3:               inst6000002C
+// CHECK:STDOUT:       4:               inst6000002F
 // CHECK:STDOUT:     inst_block19:
-// CHECK:STDOUT:       0:               ir0.inst21
-// CHECK:STDOUT:       1:               ir0.inst27
-// CHECK:STDOUT:       2:               ir0.inst30
-// CHECK:STDOUT:       3:               ir0.inst42
-// CHECK:STDOUT:       4:               ir0.inst45
+// CHECK:STDOUT:       0:               inst60000015
+// CHECK:STDOUT:       1:               inst6000001B
+// CHECK:STDOUT:       2:               inst6000001E
+// CHECK:STDOUT:       3:               inst6000002A
+// CHECK:STDOUT:       4:               inst6000002D
 // CHECK:STDOUT:     inst_block20:
-// CHECK:STDOUT:       0:               ir0.inst63
-// CHECK:STDOUT:       1:               ir0.inst64
-// CHECK:STDOUT:       2:               ir0.inst65
-// CHECK:STDOUT:       3:               ir0.inst316
-// CHECK:STDOUT:       4:               ir0.inst321
-// CHECK:STDOUT:       5:               ir0.inst322
-// CHECK:STDOUT:       6:               ir0.inst325
-// CHECK:STDOUT:       7:               ir0.inst327
-// CHECK:STDOUT:       8:               ir0.inst67
-// CHECK:STDOUT:       9:               ir0.inst328
-// CHECK:STDOUT:       10:              ir0.inst329
-// CHECK:STDOUT:       11:              ir0.inst330
-// CHECK:STDOUT:       12:              ir0.inst332
-// CHECK:STDOUT:       13:              ir0.inst333
-// CHECK:STDOUT:       14:              ir0.inst334
-// CHECK:STDOUT:       15:              ir0.inst335
+// CHECK:STDOUT:       0:               inst6000003F
+// CHECK:STDOUT:       1:               inst60000040
+// CHECK:STDOUT:       2:               inst60000041
+// CHECK:STDOUT:       3:               inst6000013C
+// CHECK:STDOUT:       4:               inst60000141
+// CHECK:STDOUT:       5:               inst60000142
+// CHECK:STDOUT:       6:               inst60000145
+// CHECK:STDOUT:       7:               inst60000147
+// CHECK:STDOUT:       8:               inst60000043
+// CHECK:STDOUT:       9:               inst60000148
+// CHECK:STDOUT:       10:              inst60000149
+// CHECK:STDOUT:       11:              inst6000014A
+// CHECK:STDOUT:       12:              inst6000014C
+// CHECK:STDOUT:       13:              inst6000014D
+// CHECK:STDOUT:       14:              inst6000014E
+// CHECK:STDOUT:       15:              inst6000014F
 // CHECK:STDOUT:     inst_block21:
-// CHECK:STDOUT:       0:               ir0.inst63
-// CHECK:STDOUT:       1:               ir0.inst64
+// CHECK:STDOUT:       0:               inst6000003F
+// CHECK:STDOUT:       1:               inst60000040
 // CHECK:STDOUT:     inst_block22:
-// CHECK:STDOUT:       0:               ir0.inst75
+// CHECK:STDOUT:       0:               inst6000004B
 // CHECK:STDOUT:     inst_block23:
-// CHECK:STDOUT:       0:               ir0.inst87
+// CHECK:STDOUT:       0:               inst60000057
 // CHECK:STDOUT:     inst_block24:
-// CHECK:STDOUT:       0:               ir0.inst88
+// CHECK:STDOUT:       0:               inst60000058
 // CHECK:STDOUT:     inst_block25:
-// CHECK:STDOUT:       0:               ir0.inst89
-// CHECK:STDOUT:       1:               ir0.inst90
-// CHECK:STDOUT:       2:               ir0.inst91
+// CHECK:STDOUT:       0:               inst60000059
+// CHECK:STDOUT:       1:               inst6000005A
+// CHECK:STDOUT:       2:               inst6000005B
 // CHECK:STDOUT:     inst_block26:
-// CHECK:STDOUT:       0:               ir0.inst72
+// CHECK:STDOUT:       0:               inst60000048
 // CHECK:STDOUT:     inst_block27:
-// CHECK:STDOUT:       0:               ir0.inst72
-// CHECK:STDOUT:       1:               ir0.inst82
-// CHECK:STDOUT:       2:               ir0.inst83
+// CHECK:STDOUT:       0:               inst60000048
+// CHECK:STDOUT:       1:               inst60000052
+// CHECK:STDOUT:       2:               inst60000053
 // CHECK:STDOUT:     inst_block28:
-// CHECK:STDOUT:       0:               ir0.inst99
+// CHECK:STDOUT:       0:               inst60000063
 // CHECK:STDOUT:     inst_block29:
-// CHECK:STDOUT:       0:               ir0.inst100
+// CHECK:STDOUT:       0:               inst60000064
 // CHECK:STDOUT:     inst_block30:
-// CHECK:STDOUT:       0:               ir0.inst103
+// CHECK:STDOUT:       0:               inst60000067
 // CHECK:STDOUT:     inst_block31:
-// CHECK:STDOUT:       0:               ir0.inst95
+// CHECK:STDOUT:       0:               inst6000005F
 // CHECK:STDOUT:     inst_block32:
-// CHECK:STDOUT:       0:               ir0.inst106
+// CHECK:STDOUT:       0:               inst6000006A
 // CHECK:STDOUT:     inst_block33:
-// CHECK:STDOUT:       0:               ir0.inst106
-// CHECK:STDOUT:       1:               ir0.inst107
-// CHECK:STDOUT:       2:               ir0.inst108
-// CHECK:STDOUT:       3:               ir0.inst109
+// CHECK:STDOUT:       0:               inst6000006A
+// CHECK:STDOUT:       1:               inst6000006B
+// CHECK:STDOUT:       2:               inst6000006C
+// CHECK:STDOUT:       3:               inst6000006D
 // CHECK:STDOUT:     inst_block34:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst96
-// CHECK:STDOUT:       2:               ir0.inst97
-// CHECK:STDOUT:       3:               ir0.inst105
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst60000060
+// CHECK:STDOUT:       2:               inst60000061
+// CHECK:STDOUT:       3:               inst60000069
 // CHECK:STDOUT:     inst_block35:
-// CHECK:STDOUT:       0:               ir0.inst117
+// CHECK:STDOUT:       0:               inst60000075
 // CHECK:STDOUT:     inst_block36:
-// CHECK:STDOUT:       0:               ir0.inst118
+// CHECK:STDOUT:       0:               inst60000076
 // CHECK:STDOUT:     inst_block37:
-// CHECK:STDOUT:       0:               ir0.inst106
+// CHECK:STDOUT:       0:               inst6000006A
 // CHECK:STDOUT:     inst_block38:
-// CHECK:STDOUT:       0:               ir0.inst119
-// CHECK:STDOUT:       1:               ir0.inst120
+// CHECK:STDOUT:       0:               inst60000077
+// CHECK:STDOUT:       1:               inst60000078
 // CHECK:STDOUT:     inst_block39:
-// CHECK:STDOUT:       0:               ir0.inst121
-// CHECK:STDOUT:       1:               ir0.inst122
-// CHECK:STDOUT:       2:               ir0.inst123
-// CHECK:STDOUT:       3:               ir0.inst124
+// CHECK:STDOUT:       0:               inst60000079
+// CHECK:STDOUT:       1:               inst6000007A
+// CHECK:STDOUT:       2:               inst6000007B
+// CHECK:STDOUT:       3:               inst6000007C
 // CHECK:STDOUT:     inst_block40:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst96
-// CHECK:STDOUT:       2:               ir0.inst97
-// CHECK:STDOUT:       3:               ir0.inst113
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst60000060
+// CHECK:STDOUT:       2:               inst60000061
+// CHECK:STDOUT:       3:               inst60000071
 // CHECK:STDOUT:     inst_block41:
-// CHECK:STDOUT:       0:               ir0.inst121
+// CHECK:STDOUT:       0:               inst60000079
 // CHECK:STDOUT:     inst_block42:
-// CHECK:STDOUT:       0:               ir0.inst131
-// CHECK:STDOUT:       1:               ir0.inst132
-// CHECK:STDOUT:       2:               ir0.inst133
-// CHECK:STDOUT:       3:               ir0.inst134
-// CHECK:STDOUT:       4:               ir0.inst135
-// CHECK:STDOUT:       5:               ir0.inst136
+// CHECK:STDOUT:       0:               inst60000083
+// CHECK:STDOUT:       1:               inst60000084
+// CHECK:STDOUT:       2:               inst60000085
+// CHECK:STDOUT:       3:               inst60000086
+// CHECK:STDOUT:       4:               inst60000087
+// CHECK:STDOUT:       5:               inst60000088
 // CHECK:STDOUT:     inst_block43:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst96
-// CHECK:STDOUT:       2:               ir0.inst137
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst60000060
+// CHECK:STDOUT:       2:               inst60000089
 // CHECK:STDOUT:     inst_block44:
-// CHECK:STDOUT:       0:               ir0.inst111
-// CHECK:STDOUT:       1:               ir0.inst112
+// CHECK:STDOUT:       0:               inst6000006F
+// CHECK:STDOUT:       1:               inst60000070
 // CHECK:STDOUT:     inst_block45:
-// CHECK:STDOUT:       0:               ir0.inst156
+// CHECK:STDOUT:       0:               inst6000009C
 // CHECK:STDOUT:     inst_block46:
-// CHECK:STDOUT:       0:               ir0.inst157
+// CHECK:STDOUT:       0:               inst6000009D
 // CHECK:STDOUT:     inst_block47:
-// CHECK:STDOUT:       0:               ir0.inst160
+// CHECK:STDOUT:       0:               inst600000A0
 // CHECK:STDOUT:     inst_block48:
-// CHECK:STDOUT:       0:               ir0.inst163
+// CHECK:STDOUT:       0:               inst600000A3
 // CHECK:STDOUT:     inst_block49:
-// CHECK:STDOUT:       0:               ir0.inst163
-// CHECK:STDOUT:       1:               ir0.inst164
-// CHECK:STDOUT:       2:               ir0.inst165
+// CHECK:STDOUT:       0:               inst600000A3
+// CHECK:STDOUT:       1:               inst600000A4
+// CHECK:STDOUT:       2:               inst600000A5
 // CHECK:STDOUT:     inst_block50:
-// CHECK:STDOUT:       0:               ir0.inst21
-// CHECK:STDOUT:       1:               ir0.inst27
-// CHECK:STDOUT:       2:               ir0.inst162
+// CHECK:STDOUT:       0:               inst60000015
+// CHECK:STDOUT:       1:               inst6000001B
+// CHECK:STDOUT:       2:               inst600000A2
 // CHECK:STDOUT:     inst_block51:
-// CHECK:STDOUT:       0:               ir0.inst172
+// CHECK:STDOUT:       0:               inst600000AC
 // CHECK:STDOUT:     inst_block52:
-// CHECK:STDOUT:       0:               ir0.inst173
+// CHECK:STDOUT:       0:               inst600000AD
 // CHECK:STDOUT:     inst_block53:
-// CHECK:STDOUT:       0:               ir0.inst163
+// CHECK:STDOUT:       0:               inst600000A3
 // CHECK:STDOUT:     inst_block54:
-// CHECK:STDOUT:       0:               ir0.inst174
-// CHECK:STDOUT:       1:               ir0.inst175
-// CHECK:STDOUT:       2:               ir0.inst176
+// CHECK:STDOUT:       0:               inst600000AE
+// CHECK:STDOUT:       1:               inst600000AF
+// CHECK:STDOUT:       2:               inst600000B0
 // CHECK:STDOUT:     inst_block55:
-// CHECK:STDOUT:       0:               ir0.inst177
-// CHECK:STDOUT:       1:               ir0.inst178
-// CHECK:STDOUT:       2:               ir0.inst179
+// CHECK:STDOUT:       0:               inst600000B1
+// CHECK:STDOUT:       1:               inst600000B2
+// CHECK:STDOUT:       2:               inst600000B3
 // CHECK:STDOUT:     inst_block56:
-// CHECK:STDOUT:       0:               ir0.inst21
-// CHECK:STDOUT:       1:               ir0.inst27
-// CHECK:STDOUT:       2:               ir0.inst30
+// CHECK:STDOUT:       0:               inst60000015
+// CHECK:STDOUT:       1:               inst6000001B
+// CHECK:STDOUT:       2:               inst6000001E
 // CHECK:STDOUT:     inst_block57:
-// CHECK:STDOUT:       0:               ir0.inst96
-// CHECK:STDOUT:       1:               ir0.inst191
+// CHECK:STDOUT:       0:               inst60000060
+// CHECK:STDOUT:       1:               inst600000BF
 // CHECK:STDOUT:     inst_block58:
-// CHECK:STDOUT:       0:               ir0.inst194
-// CHECK:STDOUT:       1:               ir0.inst193
+// CHECK:STDOUT:       0:               inst600000C2
+// CHECK:STDOUT:       1:               inst600000C1
 // CHECK:STDOUT:     inst_block59:
-// CHECK:STDOUT:       0:               ir0.inst195
-// CHECK:STDOUT:       1:               ir0.inst196
+// CHECK:STDOUT:       0:               inst600000C3
+// CHECK:STDOUT:       1:               inst600000C4
 // CHECK:STDOUT:     inst_block60:
-// CHECK:STDOUT:       0:               ir0.inst199
+// CHECK:STDOUT:       0:               inst600000C7
 // CHECK:STDOUT:     inst_block61:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst190
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst600000BE
 // CHECK:STDOUT:     inst_block62:
-// CHECK:STDOUT:       0:               ir0.inst204
-// CHECK:STDOUT:       1:               ir0.inst205
+// CHECK:STDOUT:       0:               inst600000CC
+// CHECK:STDOUT:       1:               inst600000CD
 // CHECK:STDOUT:     inst_block63:
-// CHECK:STDOUT:       0:               ir0.inst202
-// CHECK:STDOUT:       1:               ir0.inst203
+// CHECK:STDOUT:       0:               inst600000CA
+// CHECK:STDOUT:       1:               inst600000CB
 // CHECK:STDOUT:     inst_block64:
-// CHECK:STDOUT:       0:               ir0.inst202
-// CHECK:STDOUT:       1:               ir0.inst203
-// CHECK:STDOUT:       2:               ir0.inst204
-// CHECK:STDOUT:       3:               ir0.inst205
-// CHECK:STDOUT:       4:               ir0.inst206
-// CHECK:STDOUT:       5:               ir0.inst207
+// CHECK:STDOUT:       0:               inst600000CA
+// CHECK:STDOUT:       1:               inst600000CB
+// CHECK:STDOUT:       2:               inst600000CC
+// CHECK:STDOUT:       3:               inst600000CD
+// CHECK:STDOUT:       4:               inst600000CE
+// CHECK:STDOUT:       5:               inst600000CF
 // CHECK:STDOUT:     inst_block65:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst190
-// CHECK:STDOUT:       2:               ir0.inst96
-// CHECK:STDOUT:       3:               ir0.inst191
-// CHECK:STDOUT:       4:               ir0.inst192
-// CHECK:STDOUT:       5:               ir0.inst201
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst600000BE
+// CHECK:STDOUT:       2:               inst60000060
+// CHECK:STDOUT:       3:               inst600000BF
+// CHECK:STDOUT:       4:               inst600000C0
+// CHECK:STDOUT:       5:               inst600000C9
 // CHECK:STDOUT:     inst_block66:
-// CHECK:STDOUT:       0:               ir0.inst215
+// CHECK:STDOUT:       0:               inst600000D7
 // CHECK:STDOUT:     inst_block67:
-// CHECK:STDOUT:       0:               ir0.inst216
-// CHECK:STDOUT:       1:               ir0.inst217
+// CHECK:STDOUT:       0:               inst600000D8
+// CHECK:STDOUT:       1:               inst600000D9
 // CHECK:STDOUT:     inst_block68:
-// CHECK:STDOUT:       0:               ir0.inst202
-// CHECK:STDOUT:       1:               ir0.inst203
+// CHECK:STDOUT:       0:               inst600000CA
+// CHECK:STDOUT:       1:               inst600000CB
 // CHECK:STDOUT:     inst_block69:
-// CHECK:STDOUT:       0:               ir0.inst218
-// CHECK:STDOUT:       1:               ir0.inst219
+// CHECK:STDOUT:       0:               inst600000DA
+// CHECK:STDOUT:       1:               inst600000DB
 // CHECK:STDOUT:     inst_block70:
-// CHECK:STDOUT:       0:               ir0.inst221
-// CHECK:STDOUT:       1:               ir0.inst223
+// CHECK:STDOUT:       0:               inst600000DD
+// CHECK:STDOUT:       1:               inst600000DF
 // CHECK:STDOUT:     inst_block71:
-// CHECK:STDOUT:       0:               ir0.inst220
-// CHECK:STDOUT:       1:               ir0.inst221
-// CHECK:STDOUT:       2:               ir0.inst222
-// CHECK:STDOUT:       3:               ir0.inst223
-// CHECK:STDOUT:       4:               ir0.inst224
-// CHECK:STDOUT:       5:               ir0.inst225
+// CHECK:STDOUT:       0:               inst600000DC
+// CHECK:STDOUT:       1:               inst600000DD
+// CHECK:STDOUT:       2:               inst600000DE
+// CHECK:STDOUT:       3:               inst600000DF
+// CHECK:STDOUT:       4:               inst600000E0
+// CHECK:STDOUT:       5:               inst600000E1
 // CHECK:STDOUT:     inst_block72:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst96
-// CHECK:STDOUT:       2:               ir0.inst190
-// CHECK:STDOUT:       3:               ir0.inst191
-// CHECK:STDOUT:       4:               ir0.inst192
-// CHECK:STDOUT:       5:               ir0.inst211
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst60000060
+// CHECK:STDOUT:       2:               inst600000BE
+// CHECK:STDOUT:       3:               inst600000BF
+// CHECK:STDOUT:       4:               inst600000C0
+// CHECK:STDOUT:       5:               inst600000D3
 // CHECK:STDOUT:     inst_block73:
-// CHECK:STDOUT:       0:               ir0.inst190
+// CHECK:STDOUT:       0:               inst600000BE
 // CHECK:STDOUT:     inst_block74:
-// CHECK:STDOUT:       0:               ir0.inst220
+// CHECK:STDOUT:       0:               inst600000DC
 // CHECK:STDOUT:     inst_block75:
-// CHECK:STDOUT:       0:               ir0.inst222
+// CHECK:STDOUT:       0:               inst600000DE
 // CHECK:STDOUT:     inst_block76:
-// CHECK:STDOUT:       0:               ir0.inst232
-// CHECK:STDOUT:       1:               ir0.inst233
-// CHECK:STDOUT:       2:               ir0.inst234
-// CHECK:STDOUT:       3:               ir0.inst235
-// CHECK:STDOUT:       4:               ir0.inst236
-// CHECK:STDOUT:       5:               ir0.inst237
-// CHECK:STDOUT:       6:               ir0.inst238
-// CHECK:STDOUT:       7:               ir0.inst239
-// CHECK:STDOUT:       8:               ir0.inst240
-// CHECK:STDOUT:       9:               ir0.inst241
-// CHECK:STDOUT:       10:              ir0.inst242
+// CHECK:STDOUT:       0:               inst600000E8
+// CHECK:STDOUT:       1:               inst600000E9
+// CHECK:STDOUT:       2:               inst600000EA
+// CHECK:STDOUT:       3:               inst600000EB
+// CHECK:STDOUT:       4:               inst600000EC
+// CHECK:STDOUT:       5:               inst600000ED
+// CHECK:STDOUT:       6:               inst600000EE
+// CHECK:STDOUT:       7:               inst600000EF
+// CHECK:STDOUT:       8:               inst600000F0
+// CHECK:STDOUT:       9:               inst600000F1
+// CHECK:STDOUT:       10:              inst600000F2
 // CHECK:STDOUT:     inst_block77:
-// CHECK:STDOUT:       0:               ir0.inst190
-// CHECK:STDOUT:       1:               ir0.inst191
-// CHECK:STDOUT:       2:               ir0.inst243
+// CHECK:STDOUT:       0:               inst600000BE
+// CHECK:STDOUT:       1:               inst600000BF
+// CHECK:STDOUT:       2:               inst600000F3
 // CHECK:STDOUT:     inst_block78:
-// CHECK:STDOUT:       0:               ir0.inst209
-// CHECK:STDOUT:       1:               ir0.inst210
+// CHECK:STDOUT:       0:               inst600000D1
+// CHECK:STDOUT:       1:               inst600000D2
 // CHECK:STDOUT:     inst_block79:
-// CHECK:STDOUT:       0:               ir0.inst96
-// CHECK:STDOUT:       1:               ir0.inst191
-// CHECK:STDOUT:       2:               ir0.inst247
+// CHECK:STDOUT:       0:               inst60000060
+// CHECK:STDOUT:       1:               inst600000BF
+// CHECK:STDOUT:       2:               inst600000F7
 // CHECK:STDOUT:     inst_block80:
-// CHECK:STDOUT:       0:               ir0.inst251
-// CHECK:STDOUT:       1:               ir0.inst250
-// CHECK:STDOUT:       2:               ir0.inst249
+// CHECK:STDOUT:       0:               inst600000FB
+// CHECK:STDOUT:       1:               inst600000FA
+// CHECK:STDOUT:       2:               inst600000F9
 // CHECK:STDOUT:     inst_block81:
-// CHECK:STDOUT:       0:               ir0.inst252
-// CHECK:STDOUT:       1:               ir0.inst253
-// CHECK:STDOUT:       2:               ir0.inst254
+// CHECK:STDOUT:       0:               inst600000FC
+// CHECK:STDOUT:       1:               inst600000FD
+// CHECK:STDOUT:       2:               inst600000FE
 // CHECK:STDOUT:     inst_block82:
-// CHECK:STDOUT:       0:               ir0.inst257
+// CHECK:STDOUT:       0:               inst60000101
 // CHECK:STDOUT:     inst_block83:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst190
-// CHECK:STDOUT:       2:               ir0.inst246
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst600000BE
+// CHECK:STDOUT:       2:               inst600000F6
 // CHECK:STDOUT:     inst_block84:
-// CHECK:STDOUT:       0:               ir0.inst263
-// CHECK:STDOUT:       1:               ir0.inst264
-// CHECK:STDOUT:       2:               ir0.inst265
+// CHECK:STDOUT:       0:               inst60000107
+// CHECK:STDOUT:       1:               inst60000108
+// CHECK:STDOUT:       2:               inst60000109
 // CHECK:STDOUT:     inst_block85:
-// CHECK:STDOUT:       0:               ir0.inst260
-// CHECK:STDOUT:       1:               ir0.inst261
-// CHECK:STDOUT:       2:               ir0.inst262
+// CHECK:STDOUT:       0:               inst60000104
+// CHECK:STDOUT:       1:               inst60000105
+// CHECK:STDOUT:       2:               inst60000106
 // CHECK:STDOUT:     inst_block86:
-// CHECK:STDOUT:       0:               ir0.inst260
-// CHECK:STDOUT:       1:               ir0.inst261
-// CHECK:STDOUT:       2:               ir0.inst262
-// CHECK:STDOUT:       3:               ir0.inst263
-// CHECK:STDOUT:       4:               ir0.inst264
-// CHECK:STDOUT:       5:               ir0.inst265
-// CHECK:STDOUT:       6:               ir0.inst266
-// CHECK:STDOUT:       7:               ir0.inst267
+// CHECK:STDOUT:       0:               inst60000104
+// CHECK:STDOUT:       1:               inst60000105
+// CHECK:STDOUT:       2:               inst60000106
+// CHECK:STDOUT:       3:               inst60000107
+// CHECK:STDOUT:       4:               inst60000108
+// CHECK:STDOUT:       5:               inst60000109
+// CHECK:STDOUT:       6:               inst6000010A
+// CHECK:STDOUT:       7:               inst6000010B
 // CHECK:STDOUT:     inst_block87:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst190
-// CHECK:STDOUT:       2:               ir0.inst246
-// CHECK:STDOUT:       3:               ir0.inst96
-// CHECK:STDOUT:       4:               ir0.inst191
-// CHECK:STDOUT:       5:               ir0.inst247
-// CHECK:STDOUT:       6:               ir0.inst248
-// CHECK:STDOUT:       7:               ir0.inst259
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst600000BE
+// CHECK:STDOUT:       2:               inst600000F6
+// CHECK:STDOUT:       3:               inst60000060
+// CHECK:STDOUT:       4:               inst600000BF
+// CHECK:STDOUT:       5:               inst600000F7
+// CHECK:STDOUT:       6:               inst600000F8
+// CHECK:STDOUT:       7:               inst60000103
 // CHECK:STDOUT:     inst_block88:
-// CHECK:STDOUT:       0:               ir0.inst275
+// CHECK:STDOUT:       0:               inst60000113
 // CHECK:STDOUT:     inst_block89:
-// CHECK:STDOUT:       0:               ir0.inst276
-// CHECK:STDOUT:       1:               ir0.inst277
-// CHECK:STDOUT:       2:               ir0.inst278
+// CHECK:STDOUT:       0:               inst60000114
+// CHECK:STDOUT:       1:               inst60000115
+// CHECK:STDOUT:       2:               inst60000116
 // CHECK:STDOUT:     inst_block90:
-// CHECK:STDOUT:       0:               ir0.inst260
-// CHECK:STDOUT:       1:               ir0.inst261
-// CHECK:STDOUT:       2:               ir0.inst262
+// CHECK:STDOUT:       0:               inst60000104
+// CHECK:STDOUT:       1:               inst60000105
+// CHECK:STDOUT:       2:               inst60000106
 // CHECK:STDOUT:     inst_block91:
-// CHECK:STDOUT:       0:               ir0.inst279
-// CHECK:STDOUT:       1:               ir0.inst280
+// CHECK:STDOUT:       0:               inst60000117
+// CHECK:STDOUT:       1:               inst60000118
 // CHECK:STDOUT:     inst_block92:
-// CHECK:STDOUT:       0:               ir0.inst282
-// CHECK:STDOUT:       1:               ir0.inst284
-// CHECK:STDOUT:       2:               ir0.inst286
+// CHECK:STDOUT:       0:               inst6000011A
+// CHECK:STDOUT:       1:               inst6000011C
+// CHECK:STDOUT:       2:               inst6000011E
 // CHECK:STDOUT:     inst_block93:
-// CHECK:STDOUT:       0:               ir0.inst281
-// CHECK:STDOUT:       1:               ir0.inst282
-// CHECK:STDOUT:       2:               ir0.inst283
-// CHECK:STDOUT:       3:               ir0.inst284
-// CHECK:STDOUT:       4:               ir0.inst285
-// CHECK:STDOUT:       5:               ir0.inst286
-// CHECK:STDOUT:       6:               ir0.inst287
-// CHECK:STDOUT:       7:               ir0.inst288
+// CHECK:STDOUT:       0:               inst60000119
+// CHECK:STDOUT:       1:               inst6000011A
+// CHECK:STDOUT:       2:               inst6000011B
+// CHECK:STDOUT:       3:               inst6000011C
+// CHECK:STDOUT:       4:               inst6000011D
+// CHECK:STDOUT:       5:               inst6000011E
+// CHECK:STDOUT:       6:               inst6000011F
+// CHECK:STDOUT:       7:               inst60000120
 // CHECK:STDOUT:     inst_block94:
-// CHECK:STDOUT:       0:               ir0.inst95
-// CHECK:STDOUT:       1:               ir0.inst96
-// CHECK:STDOUT:       2:               ir0.inst190
-// CHECK:STDOUT:       3:               ir0.inst191
-// CHECK:STDOUT:       4:               ir0.inst246
-// CHECK:STDOUT:       5:               ir0.inst247
-// CHECK:STDOUT:       6:               ir0.inst248
-// CHECK:STDOUT:       7:               ir0.inst271
+// CHECK:STDOUT:       0:               inst6000005F
+// CHECK:STDOUT:       1:               inst60000060
+// CHECK:STDOUT:       2:               inst600000BE
+// CHECK:STDOUT:       3:               inst600000BF
+// CHECK:STDOUT:       4:               inst600000F6
+// CHECK:STDOUT:       5:               inst600000F7
+// CHECK:STDOUT:       6:               inst600000F8
+// CHECK:STDOUT:       7:               inst6000010F
 // CHECK:STDOUT:     inst_block95:
-// CHECK:STDOUT:       0:               ir0.inst246
+// CHECK:STDOUT:       0:               inst600000F6
 // CHECK:STDOUT:     inst_block96:
-// CHECK:STDOUT:       0:               ir0.inst281
+// CHECK:STDOUT:       0:               inst60000119
 // CHECK:STDOUT:     inst_block97:
-// CHECK:STDOUT:       0:               ir0.inst283
+// CHECK:STDOUT:       0:               inst6000011B
 // CHECK:STDOUT:     inst_block98:
-// CHECK:STDOUT:       0:               ir0.inst285
+// CHECK:STDOUT:       0:               inst6000011D
 // CHECK:STDOUT:     inst_block99:
-// CHECK:STDOUT:       0:               ir0.inst295
-// CHECK:STDOUT:       1:               ir0.inst296
-// CHECK:STDOUT:       2:               ir0.inst297
-// CHECK:STDOUT:       3:               ir0.inst298
-// CHECK:STDOUT:       4:               ir0.inst299
-// CHECK:STDOUT:       5:               ir0.inst300
-// CHECK:STDOUT:       6:               ir0.inst301
-// CHECK:STDOUT:       7:               ir0.inst302
-// CHECK:STDOUT:       8:               ir0.inst303
-// CHECK:STDOUT:       9:               ir0.inst304
-// CHECK:STDOUT:       10:              ir0.inst305
-// CHECK:STDOUT:       11:              ir0.inst306
-// CHECK:STDOUT:       12:              ir0.inst307
-// CHECK:STDOUT:       13:              ir0.inst308
-// CHECK:STDOUT:       14:              ir0.inst309
-// CHECK:STDOUT:       15:              ir0.inst310
+// CHECK:STDOUT:       0:               inst60000127
+// CHECK:STDOUT:       1:               inst60000128
+// CHECK:STDOUT:       2:               inst60000129
+// CHECK:STDOUT:       3:               inst6000012A
+// CHECK:STDOUT:       4:               inst6000012B
+// CHECK:STDOUT:       5:               inst6000012C
+// CHECK:STDOUT:       6:               inst6000012D
+// CHECK:STDOUT:       7:               inst6000012E
+// CHECK:STDOUT:       8:               inst6000012F
+// CHECK:STDOUT:       9:               inst60000130
+// CHECK:STDOUT:       10:              inst60000131
+// CHECK:STDOUT:       11:              inst60000132
+// CHECK:STDOUT:       12:              inst60000133
+// CHECK:STDOUT:       13:              inst60000134
+// CHECK:STDOUT:       14:              inst60000135
+// CHECK:STDOUT:       15:              inst60000136
 // CHECK:STDOUT:     inst_block100:
-// CHECK:STDOUT:       0:               ir0.inst246
-// CHECK:STDOUT:       1:               ir0.inst247
-// CHECK:STDOUT:       2:               ir0.inst311
+// CHECK:STDOUT:       0:               inst600000F6
+// CHECK:STDOUT:       1:               inst600000F7
+// CHECK:STDOUT:       2:               inst60000137
 // CHECK:STDOUT:     inst_block101:
-// CHECK:STDOUT:       0:               ir0.inst269
-// CHECK:STDOUT:       1:               ir0.inst270
+// CHECK:STDOUT:       0:               inst6000010D
+// CHECK:STDOUT:       1:               inst6000010E
 // CHECK:STDOUT:     inst_block102:
-// CHECK:STDOUT:       0:               ir0.inst167
-// CHECK:STDOUT:       1:               ir0.inst168
-// CHECK:STDOUT:       2:               ir0.inst61
+// CHECK:STDOUT:       0:               inst600000A7
+// CHECK:STDOUT:       1:               inst600000A8
+// CHECK:STDOUT:       2:               inst6000003D
 // CHECK:STDOUT:     inst_block103:
-// CHECK:STDOUT:       0:               ir0.inst312
+// CHECK:STDOUT:       0:               inst60000138
 // CHECK:STDOUT:     inst_block104:
-// CHECK:STDOUT:       0:               ir0.inst313
+// CHECK:STDOUT:       0:               inst60000139
 // CHECK:STDOUT:     inst_block105:
-// CHECK:STDOUT:       0:               ir0.inst314
+// CHECK:STDOUT:       0:               inst6000013A
 // CHECK:STDOUT:     inst_block106:
-// CHECK:STDOUT:       0:               ir0.inst314
-// CHECK:STDOUT:       1:               ir0.inst27
-// CHECK:STDOUT:       2:               ir0.inst30
+// CHECK:STDOUT:       0:               inst6000013A
+// CHECK:STDOUT:       1:               inst6000001B
+// CHECK:STDOUT:       2:               inst6000001E
 // CHECK:STDOUT:     inst_block107:
-// CHECK:STDOUT:       0:               ir0.inst318
+// CHECK:STDOUT:       0:               inst6000013E
 // CHECK:STDOUT:     inst_block108:
-// CHECK:STDOUT:       0:               ir0.inst63
+// CHECK:STDOUT:       0:               inst6000003F
 // CHECK:STDOUT:     inst_block109:
-// CHECK:STDOUT:       0:               ir0.inst328
-// CHECK:STDOUT:       1:               ir0.inst332
+// CHECK:STDOUT:       0:               inst60000148
+// CHECK:STDOUT:       1:               inst6000014C
 // CHECK:STDOUT:     inst_block110:
-// CHECK:STDOUT:       0:               ir0.inst59
-// CHECK:STDOUT:       1:               ir0.inst62
-// CHECK:STDOUT:       2:               ir0.inst313
-// CHECK:STDOUT:       3:               ir0.inst318
-// CHECK:STDOUT:       4:               ir0.inst319
-// CHECK:STDOUT:       5:               ir0.inst320
-// CHECK:STDOUT:       6:               ir0.inst324
+// CHECK:STDOUT:       0:               inst6000003B
+// CHECK:STDOUT:       1:               inst6000003E
+// CHECK:STDOUT:       2:               inst60000139
+// CHECK:STDOUT:       3:               inst6000013E
+// CHECK:STDOUT:       4:               inst6000013F
+// CHECK:STDOUT:       5:               inst60000140
+// CHECK:STDOUT:       6:               inst60000144
 // CHECK:STDOUT:     inst_block111:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir0.inst15
-// CHECK:STDOUT:       2:               ir0.inst53
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst6000000F
+// CHECK:STDOUT:       2:               inst60000035
 // CHECK:STDOUT: ...

+ 123 - 123
toolchain/check/testdata/basics/raw_sem_ir/one_file_with_textual_ir.carbon

@@ -26,11 +26,11 @@ fn Foo(n: ()) -> ((), ()) {
 // CHECK:STDOUT:   import_ir_insts: {}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: ir0.inst37}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {name0: inst60000025}}
 // CHECK:STDOUT:   entity_names:
 // CHECK:STDOUT:     entity_name0:    {name: name1, parent_scope: name_scope<none>, index: -1, is_template: 0, clang_decl_id: clang_decl_id<none>}
 // CHECK:STDOUT:   functions:
-// CHECK:STDOUT:     function0:       {name: name0, parent_scope: name_scope0, call_params_id: inst_block9, return_slot_pattern: ir0.inst32, body: [inst_block12]}
+// CHECK:STDOUT:     function0:       {name: name0, parent_scope: name_scope0, call_params_id: inst_block9, return_slot_pattern: inst60000020, body: [inst_block12]}
 // CHECK:STDOUT:   classes:         {}
 // CHECK:STDOUT:   generics:        {}
 // CHECK:STDOUT:   specifics:       {}
@@ -43,150 +43,150 @@ fn Foo(n: ()) -> ((), ()) {
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(Error)}
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     'type(ir0.inst15)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst15)}
-// CHECK:STDOUT:     'type(ir0.inst24)':
-// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(ir0.inst26)}
-// CHECK:STDOUT:     'type(ir0.inst26)':
-// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(ir0.inst26)}
-// CHECK:STDOUT:     'type(ir0.inst38)':
-// CHECK:STDOUT:       value_repr:      {kind: none, type: type(ir0.inst15)}
+// CHECK:STDOUT:     'type(inst6000000F)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000000F)}
+// CHECK:STDOUT:     'type(inst60000018)':
+// CHECK:STDOUT:       value_repr:      {kind: pointer, type: type(inst6000001A)}
+// CHECK:STDOUT:     'type(inst6000001A)':
+// CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst6000001A)}
+// CHECK:STDOUT:     'type(inst60000026)':
+// CHECK:STDOUT:       value_repr:      {kind: none, type: type(inst6000000F)}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
-// CHECK:STDOUT:     ir0.inst15:      {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst16:      {kind: TupleLiteral, arg0: inst_block_empty, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst17:      {kind: Converted, arg0: ir0.inst16, arg1: ir0.inst15, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst18:      {kind: BindName, arg0: entity_name0, arg1: ir0.inst33, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst19:      {kind: PatternType, arg0: ir0.inst15, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst20:      {kind: BindingPattern, arg0: entity_name0, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst21:      {kind: ValueParamPattern, arg0: ir0.inst20, arg1: call_param0, type: type(ir0.inst19)}
-// CHECK:STDOUT:     ir0.inst22:      {kind: TupleLiteral, arg0: inst_block_empty, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst23:      {kind: TupleLiteral, arg0: inst_block_empty, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst24:      {kind: TupleType, arg0: inst_block7, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst25:      {kind: TupleLiteral, arg0: inst_block6, type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst26:      {kind: PointerType, arg0: ir0.inst24, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst27:      {kind: Converted, arg0: ir0.inst22, arg1: ir0.inst15, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst28:      {kind: Converted, arg0: ir0.inst23, arg1: ir0.inst15, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst29:      {kind: Converted, arg0: ir0.inst25, arg1: ir0.inst24, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst30:      {kind: PatternType, arg0: ir0.inst24, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst31:      {kind: ReturnSlotPattern, arg0: ir0.inst29, type: type(ir0.inst30)}
-// CHECK:STDOUT:     ir0.inst32:      {kind: OutParamPattern, arg0: ir0.inst31, arg1: call_param1, type: type(ir0.inst30)}
-// CHECK:STDOUT:     ir0.inst33:      {kind: ValueParam, arg0: call_param0, arg1: name1, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst34:      {kind: SpliceBlock, arg0: inst_block4, arg1: ir0.inst17, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst35:      {kind: OutParam, arg0: call_param1, arg1: name(ReturnSlot), type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst36:      {kind: ReturnSlot, arg0: ir0.inst24, arg1: ir0.inst35, type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst37:      {kind: FunctionDecl, arg0: function0, arg1: inst_block11, type: type(ir0.inst38)}
-// CHECK:STDOUT:     ir0.inst38:      {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
-// CHECK:STDOUT:     ir0.inst39:      {kind: StructValue, arg0: inst_block_empty, type: type(ir0.inst38)}
-// CHECK:STDOUT:     ir0.inst40:      {kind: NameRef, arg0: name1, arg1: ir0.inst18, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst41:      {kind: TupleLiteral, arg0: inst_block_empty, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst42:      {kind: TupleLiteral, arg0: inst_block13, type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst43:      {kind: TupleAccess, arg0: ir0.inst36, arg1: element0, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst44:      {kind: TupleInit, arg0: inst_block14, arg1: ir0.inst43, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst45:      {kind: TupleValue, arg0: inst_block_empty, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst46:      {kind: Converted, arg0: ir0.inst40, arg1: ir0.inst44, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst47:      {kind: TupleAccess, arg0: ir0.inst36, arg1: element1, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst48:      {kind: TupleInit, arg0: inst_block_empty, arg1: ir0.inst47, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst49:      {kind: Converted, arg0: ir0.inst41, arg1: ir0.inst48, type: type(ir0.inst15)}
-// CHECK:STDOUT:     ir0.inst50:      {kind: TupleInit, arg0: inst_block15, arg1: ir0.inst36, type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst51:      {kind: TupleValue, arg0: inst_block16, type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst52:      {kind: Converted, arg0: ir0.inst42, arg1: ir0.inst50, type: type(ir0.inst24)}
-// CHECK:STDOUT:     ir0.inst53:      {kind: ReturnExpr, arg0: ir0.inst52, arg1: ir0.inst36}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst6000000F:    {kind: TupleType, arg0: inst_block_empty, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000010:    {kind: TupleLiteral, arg0: inst_block_empty, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000011:    {kind: Converted, arg0: inst60000010, arg1: inst6000000F, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000012:    {kind: BindName, arg0: entity_name0, arg1: inst60000021, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000013:    {kind: PatternType, arg0: inst6000000F, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000014:    {kind: BindingPattern, arg0: entity_name0, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000015:    {kind: ValueParamPattern, arg0: inst60000014, arg1: call_param0, type: type(inst60000013)}
+// CHECK:STDOUT:     inst60000016:    {kind: TupleLiteral, arg0: inst_block_empty, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000017:    {kind: TupleLiteral, arg0: inst_block_empty, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000018:    {kind: TupleType, arg0: inst_block7, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000019:    {kind: TupleLiteral, arg0: inst_block6, type: type(inst60000018)}
+// CHECK:STDOUT:     inst6000001A:    {kind: PointerType, arg0: inst60000018, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001B:    {kind: Converted, arg0: inst60000016, arg1: inst6000000F, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001C:    {kind: Converted, arg0: inst60000017, arg1: inst6000000F, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001D:    {kind: Converted, arg0: inst60000019, arg1: inst60000018, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001E:    {kind: PatternType, arg0: inst60000018, type: type(TypeType)}
+// CHECK:STDOUT:     inst6000001F:    {kind: ReturnSlotPattern, arg0: inst6000001D, type: type(inst6000001E)}
+// CHECK:STDOUT:     inst60000020:    {kind: OutParamPattern, arg0: inst6000001F, arg1: call_param1, type: type(inst6000001E)}
+// CHECK:STDOUT:     inst60000021:    {kind: ValueParam, arg0: call_param0, arg1: name1, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000022:    {kind: SpliceBlock, arg0: inst_block4, arg1: inst60000011, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000023:    {kind: OutParam, arg0: call_param1, arg1: name(ReturnSlot), type: type(inst60000018)}
+// CHECK:STDOUT:     inst60000024:    {kind: ReturnSlot, arg0: inst60000018, arg1: inst60000023, type: type(inst60000018)}
+// CHECK:STDOUT:     inst60000025:    {kind: FunctionDecl, arg0: function0, arg1: inst_block11, type: type(inst60000026)}
+// CHECK:STDOUT:     inst60000026:    {kind: FunctionType, arg0: function0, arg1: specific<none>, type: type(TypeType)}
+// CHECK:STDOUT:     inst60000027:    {kind: StructValue, arg0: inst_block_empty, type: type(inst60000026)}
+// CHECK:STDOUT:     inst60000028:    {kind: NameRef, arg0: name1, arg1: inst60000012, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000029:    {kind: TupleLiteral, arg0: inst_block_empty, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst6000002A:    {kind: TupleLiteral, arg0: inst_block13, type: type(inst60000018)}
+// CHECK:STDOUT:     inst6000002B:    {kind: TupleAccess, arg0: inst60000024, arg1: element0, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst6000002C:    {kind: TupleInit, arg0: inst_block14, arg1: inst6000002B, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst6000002D:    {kind: TupleValue, arg0: inst_block_empty, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst6000002E:    {kind: Converted, arg0: inst60000028, arg1: inst6000002C, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst6000002F:    {kind: TupleAccess, arg0: inst60000024, arg1: element1, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000030:    {kind: TupleInit, arg0: inst_block_empty, arg1: inst6000002F, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000031:    {kind: Converted, arg0: inst60000029, arg1: inst60000030, type: type(inst6000000F)}
+// CHECK:STDOUT:     inst60000032:    {kind: TupleInit, arg0: inst_block15, arg1: inst60000024, type: type(inst60000018)}
+// CHECK:STDOUT:     inst60000033:    {kind: TupleValue, arg0: inst_block16, type: type(inst60000018)}
+// CHECK:STDOUT:     inst60000034:    {kind: Converted, arg0: inst6000002A, arg1: inst60000032, type: type(inst60000018)}
+// CHECK:STDOUT:     inst60000035:    {kind: ReturnExpr, arg0: inst60000034, arg1: inst60000024}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
-// CHECK:STDOUT:       ir0.inst15:      concrete_constant(ir0.inst15)
-// CHECK:STDOUT:       ir0.inst17:      concrete_constant(ir0.inst15)
-// CHECK:STDOUT:       ir0.inst19:      concrete_constant(ir0.inst19)
-// CHECK:STDOUT:       ir0.inst20:      concrete_constant(ir0.inst20)
-// CHECK:STDOUT:       ir0.inst21:      concrete_constant(ir0.inst21)
-// CHECK:STDOUT:       ir0.inst24:      concrete_constant(ir0.inst24)
-// CHECK:STDOUT:       ir0.inst26:      concrete_constant(ir0.inst26)
-// CHECK:STDOUT:       ir0.inst27:      concrete_constant(ir0.inst15)
-// CHECK:STDOUT:       ir0.inst28:      concrete_constant(ir0.inst15)
-// CHECK:STDOUT:       ir0.inst29:      concrete_constant(ir0.inst24)
-// CHECK:STDOUT:       ir0.inst30:      concrete_constant(ir0.inst30)
-// CHECK:STDOUT:       ir0.inst31:      concrete_constant(ir0.inst31)
-// CHECK:STDOUT:       ir0.inst32:      concrete_constant(ir0.inst32)
-// CHECK:STDOUT:       ir0.inst34:      concrete_constant(ir0.inst15)
-// CHECK:STDOUT:       ir0.inst37:      concrete_constant(ir0.inst39)
-// CHECK:STDOUT:       ir0.inst38:      concrete_constant(ir0.inst38)
-// CHECK:STDOUT:       ir0.inst39:      concrete_constant(ir0.inst39)
-// CHECK:STDOUT:       ir0.inst44:      concrete_constant(ir0.inst45)
-// CHECK:STDOUT:       ir0.inst45:      concrete_constant(ir0.inst45)
-// CHECK:STDOUT:       ir0.inst46:      concrete_constant(ir0.inst45)
-// CHECK:STDOUT:       ir0.inst48:      concrete_constant(ir0.inst45)
-// CHECK:STDOUT:       ir0.inst49:      concrete_constant(ir0.inst45)
-// CHECK:STDOUT:       ir0.inst50:      concrete_constant(ir0.inst51)
-// CHECK:STDOUT:       ir0.inst51:      concrete_constant(ir0.inst51)
-// CHECK:STDOUT:       ir0.inst52:      concrete_constant(ir0.inst51)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
+// CHECK:STDOUT:       inst6000000F:    concrete_constant(inst6000000F)
+// CHECK:STDOUT:       inst60000011:    concrete_constant(inst6000000F)
+// CHECK:STDOUT:       inst60000013:    concrete_constant(inst60000013)
+// CHECK:STDOUT:       inst60000014:    concrete_constant(inst60000014)
+// CHECK:STDOUT:       inst60000015:    concrete_constant(inst60000015)
+// CHECK:STDOUT:       inst60000018:    concrete_constant(inst60000018)
+// CHECK:STDOUT:       inst6000001A:    concrete_constant(inst6000001A)
+// CHECK:STDOUT:       inst6000001B:    concrete_constant(inst6000000F)
+// CHECK:STDOUT:       inst6000001C:    concrete_constant(inst6000000F)
+// CHECK:STDOUT:       inst6000001D:    concrete_constant(inst60000018)
+// CHECK:STDOUT:       inst6000001E:    concrete_constant(inst6000001E)
+// CHECK:STDOUT:       inst6000001F:    concrete_constant(inst6000001F)
+// CHECK:STDOUT:       inst60000020:    concrete_constant(inst60000020)
+// CHECK:STDOUT:       inst60000022:    concrete_constant(inst6000000F)
+// CHECK:STDOUT:       inst60000025:    concrete_constant(inst60000027)
+// CHECK:STDOUT:       inst60000026:    concrete_constant(inst60000026)
+// CHECK:STDOUT:       inst60000027:    concrete_constant(inst60000027)
+// CHECK:STDOUT:       inst6000002C:    concrete_constant(inst6000002D)
+// CHECK:STDOUT:       inst6000002D:    concrete_constant(inst6000002D)
+// CHECK:STDOUT:       inst6000002E:    concrete_constant(inst6000002D)
+// CHECK:STDOUT:       inst60000030:    concrete_constant(inst6000002D)
+// CHECK:STDOUT:       inst60000031:    concrete_constant(inst6000002D)
+// CHECK:STDOUT:       inst60000032:    concrete_constant(inst60000033)
+// CHECK:STDOUT:       inst60000033:    concrete_constant(inst60000033)
+// CHECK:STDOUT:       inst60000034:    concrete_constant(inst60000033)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
 // CHECK:STDOUT:     exports:
-// CHECK:STDOUT:       0:               ir0.inst37
+// CHECK:STDOUT:       0:               inst60000025
 // CHECK:STDOUT:     imports:         {}
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:
-// CHECK:STDOUT:       0:               ir0.inst16
-// CHECK:STDOUT:       1:               ir0.inst17
+// CHECK:STDOUT:       0:               inst60000010
+// CHECK:STDOUT:       1:               inst60000011
 // CHECK:STDOUT:     inst_block5:
-// CHECK:STDOUT:       0:               ir0.inst21
+// CHECK:STDOUT:       0:               inst60000015
 // CHECK:STDOUT:     inst_block6:
-// CHECK:STDOUT:       0:               ir0.inst22
-// CHECK:STDOUT:       1:               ir0.inst23
+// CHECK:STDOUT:       0:               inst60000016
+// CHECK:STDOUT:       1:               inst60000017
 // CHECK:STDOUT:     inst_block7:
-// CHECK:STDOUT:       0:               ir0.inst15
-// CHECK:STDOUT:       1:               ir0.inst15
+// CHECK:STDOUT:       0:               inst6000000F
+// CHECK:STDOUT:       1:               inst6000000F
 // CHECK:STDOUT:     inst_block8:
-// CHECK:STDOUT:       0:               ir0.inst27
-// CHECK:STDOUT:       1:               ir0.inst28
+// CHECK:STDOUT:       0:               inst6000001B
+// CHECK:STDOUT:       1:               inst6000001C
 // CHECK:STDOUT:     inst_block9:
-// CHECK:STDOUT:       0:               ir0.inst33
-// CHECK:STDOUT:       1:               ir0.inst35
+// CHECK:STDOUT:       0:               inst60000021
+// CHECK:STDOUT:       1:               inst60000023
 // CHECK:STDOUT:     inst_block10:
-// CHECK:STDOUT:       0:               ir0.inst20
-// CHECK:STDOUT:       1:               ir0.inst21
-// CHECK:STDOUT:       2:               ir0.inst31
-// CHECK:STDOUT:       3:               ir0.inst32
+// CHECK:STDOUT:       0:               inst60000014
+// CHECK:STDOUT:       1:               inst60000015
+// CHECK:STDOUT:       2:               inst6000001F
+// CHECK:STDOUT:       3:               inst60000020
 // CHECK:STDOUT:     inst_block11:
-// CHECK:STDOUT:       0:               ir0.inst22
-// CHECK:STDOUT:       1:               ir0.inst23
-// CHECK:STDOUT:       2:               ir0.inst25
-// CHECK:STDOUT:       3:               ir0.inst27
-// CHECK:STDOUT:       4:               ir0.inst28
-// CHECK:STDOUT:       5:               ir0.inst29
-// CHECK:STDOUT:       6:               ir0.inst33
-// CHECK:STDOUT:       7:               ir0.inst34
-// CHECK:STDOUT:       8:               ir0.inst18
-// CHECK:STDOUT:       9:               ir0.inst35
-// CHECK:STDOUT:       10:              ir0.inst36
+// CHECK:STDOUT:       0:               inst60000016
+// CHECK:STDOUT:       1:               inst60000017
+// CHECK:STDOUT:       2:               inst60000019
+// CHECK:STDOUT:       3:               inst6000001B
+// CHECK:STDOUT:       4:               inst6000001C
+// CHECK:STDOUT:       5:               inst6000001D
+// CHECK:STDOUT:       6:               inst60000021
+// CHECK:STDOUT:       7:               inst60000022
+// CHECK:STDOUT:       8:               inst60000012
+// CHECK:STDOUT:       9:               inst60000023
+// CHECK:STDOUT:       10:              inst60000024
 // CHECK:STDOUT:     inst_block12:
-// CHECK:STDOUT:       0:               ir0.inst40
-// CHECK:STDOUT:       1:               ir0.inst41
-// CHECK:STDOUT:       2:               ir0.inst42
-// CHECK:STDOUT:       3:               ir0.inst43
-// CHECK:STDOUT:       4:               ir0.inst44
-// CHECK:STDOUT:       5:               ir0.inst46
-// CHECK:STDOUT:       6:               ir0.inst47
-// CHECK:STDOUT:       7:               ir0.inst48
-// CHECK:STDOUT:       8:               ir0.inst49
-// CHECK:STDOUT:       9:               ir0.inst50
-// CHECK:STDOUT:       10:              ir0.inst52
-// CHECK:STDOUT:       11:              ir0.inst53
+// CHECK:STDOUT:       0:               inst60000028
+// CHECK:STDOUT:       1:               inst60000029
+// CHECK:STDOUT:       2:               inst6000002A
+// CHECK:STDOUT:       3:               inst6000002B
+// CHECK:STDOUT:       4:               inst6000002C
+// CHECK:STDOUT:       5:               inst6000002E
+// CHECK:STDOUT:       6:               inst6000002F
+// CHECK:STDOUT:       7:               inst60000030
+// CHECK:STDOUT:       8:               inst60000031
+// CHECK:STDOUT:       9:               inst60000032
+// CHECK:STDOUT:       10:              inst60000034
+// CHECK:STDOUT:       11:              inst60000035
 // CHECK:STDOUT:     inst_block13:
-// CHECK:STDOUT:       0:               ir0.inst40
-// CHECK:STDOUT:       1:               ir0.inst41
+// CHECK:STDOUT:       0:               inst60000028
+// CHECK:STDOUT:       1:               inst60000029
 // CHECK:STDOUT:     inst_block14:    {}
 // CHECK:STDOUT:     inst_block15:
-// CHECK:STDOUT:       0:               ir0.inst46
-// CHECK:STDOUT:       1:               ir0.inst49
+// CHECK:STDOUT:       0:               inst6000002E
+// CHECK:STDOUT:       1:               inst60000031
 // CHECK:STDOUT:     inst_block16:
-// CHECK:STDOUT:       0:               ir0.inst45
-// CHECK:STDOUT:       1:               ir0.inst45
+// CHECK:STDOUT:       0:               inst6000002D
+// CHECK:STDOUT:       1:               inst6000002D
 // CHECK:STDOUT:     inst_block17:
-// CHECK:STDOUT:       0:               inst14
-// CHECK:STDOUT:       1:               ir0.inst37
+// CHECK:STDOUT:       0:               inst0000000E
+// CHECK:STDOUT:       1:               inst60000025
 // CHECK:STDOUT: ...
 // CHECK:STDOUT: --- one_file_with_textual_ir.carbon
 // CHECK:STDOUT:

+ 1 - 1
toolchain/check/testdata/basics/verbose.carbon

@@ -14,7 +14,7 @@
 // SET-CHECK-SUBSET
 // CHECK:STDERR: Node Push 0: FunctionIntroducer -> <none>
 // CHECK:STDERR: AddPlaceholderInst: {kind: FunctionDecl, arg0: function<none>, arg1: inst_block_empty}
-// CHECK:STDERR: ReplaceInst: ir{{[0-9]+}}.inst{{[0-9]+}} -> {kind: FunctionDecl, arg0: function{{[0-9]+}}, arg1: inst_block_empty, type: type(ir{{[0-9]+}}.inst{{[0-9]+}})}
+// CHECK:STDERR: ReplaceInst: inst{{[0-9A-F]+}} -> {kind: FunctionDecl, arg0: function{{[0-9]+}}, arg1: inst_block_empty, type: type(inst{{[0-9A-F]+}})}
 // CHECK:STDERR: inst_block_stack_ Push 1
 // CHECK:STDERR: AddInst: {kind: Return}
 // CHECK:STDERR: inst_block_stack_ Pop 1: inst_block{{[0-9]+}}

+ 3 - 3
toolchain/check/testdata/class/cross_package_import.carbon

@@ -209,7 +209,7 @@ var c: Other.C = {};
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//other_define, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.8f2: <witness> = import_ref Other//other_define, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//other_define, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//other_define, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -318,7 +318,7 @@ var c: Other.C = {};
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//other_define, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.8f2: <witness> = import_ref Other//other_define, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//other_define, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//other_define, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -379,7 +379,7 @@ var c: Other.C = {};
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//other_define, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.8f2: <witness> = import_ref Other//other_define, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//other_define, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//other_define, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 3 - 3
toolchain/check/testdata/class/export_name.carbon

@@ -76,7 +76,7 @@ var c: C = {};
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//base, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -106,8 +106,8 @@ var c: C = {};
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 2 - 2
toolchain/check/testdata/class/extern.carbon

@@ -610,7 +610,7 @@ extern class C;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//def, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -638,7 +638,7 @@ extern class C;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//def, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/class/fail_abstract_in_struct.carbon

@@ -400,7 +400,7 @@ var v5: {.m: Abstract};
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.Abstract: type = import_ref Main//lib, Abstract, loaded [concrete = constants.%Abstract]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//lib, loc3_26, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.ee1 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ee1 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/class/fail_abstract_in_tuple.carbon

@@ -536,7 +536,7 @@ fn Var5() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//lib, loc3_26, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.ee1 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ee1 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 5 - 5
toolchain/check/testdata/class/generic/adapt.carbon

@@ -334,10 +334,10 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.5ab: type = import_ref Main//adapt_specific_type, loc4_9, loaded [symbolic = @C.%T (constants.%T.8b3)]
 // CHECK:STDOUT:   %Main.import_ref.b5f: <witness> = import_ref Main//adapt_specific_type, loc6_1, loaded [symbolic = @C.%complete_type (constants.%complete_type.433)]
-// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//adapt_specific_type, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//adapt_specific_type, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.262: @C.%C.elem (%C.elem.66c) = import_ref Main//adapt_specific_type, loc5_8, loaded [concrete = %.22b]
 // CHECK:STDOUT:   %Main.import_ref.709: <witness> = import_ref Main//adapt_specific_type, loc10_1, loaded [concrete = constants.%complete_type.c07]
-// CHECK:STDOUT:   %Main.import_ref.feb = import_ref Main//adapt_specific_type, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.feb = import_ref Main//adapt_specific_type, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %.22b: @C.%C.elem (%C.elem.66c) = field_decl x, element0 [concrete]
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
@@ -714,10 +714,10 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.5ab: type = import_ref Main//extend_adapt_specific_type_library, loc7_9, loaded [symbolic = @C.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.b5f: <witness> = import_ref Main//extend_adapt_specific_type_library, loc9_1, loaded [symbolic = @C.%complete_type (constants.%complete_type.433)]
-// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//extend_adapt_specific_type_library, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//extend_adapt_specific_type_library, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.262: @C.%C.elem (%C.elem.66c) = import_ref Main//extend_adapt_specific_type_library, loc8_8, loaded [concrete = %.22b]
 // CHECK:STDOUT:   %Main.import_ref.709: <witness> = import_ref Main//extend_adapt_specific_type_library, loc13_1, loaded [concrete = constants.%complete_type.c07]
-// CHECK:STDOUT:   %Main.import_ref.feb = import_ref Main//extend_adapt_specific_type_library, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.feb = import_ref Main//extend_adapt_specific_type_library, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.19d12e.2: type = import_ref Main//extend_adapt_specific_type_library, loc12_21, loaded [concrete = constants.%C.239]
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %.22b: @C.%C.elem (%C.elem.66c) = field_decl x, element0 [concrete]
@@ -984,7 +984,7 @@ fn ImportedConvertLocal(a: Adapter(C)) -> i32 {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.5ab: type = import_ref Main//adapt_generic_type, loc4_15, loaded [symbolic = @Adapter.%T (constants.%T.8b3)]
 // CHECK:STDOUT:   %Main.import_ref.fb3: <witness> = import_ref Main//adapt_generic_type, loc6_1, loaded [symbolic = @Adapter.%complete_type (constants.%complete_type.f87)]
-// CHECK:STDOUT:   %Main.import_ref.9a3 = import_ref Main//adapt_generic_type, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.9a3 = import_ref Main//adapt_generic_type, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.d0f6: @Int.as.Copy.impl.%Int.as.Copy.impl.Op.type (%Int.as.Copy.impl.Op.type.afd) = import_ref Core//prelude/parts/int, loc{{\d+_\d+}}, loaded [symbolic = @Int.as.Copy.impl.%Int.as.Copy.impl.Op (constants.%Int.as.Copy.impl.Op.6cd)]

+ 5 - 5
toolchain/check/testdata/class/generic/base_is_generic.carbon

@@ -320,14 +320,14 @@ fn H() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.e8d: <witness> = import_ref Main//extend_generic_base, loc10_1, loaded [concrete = constants.%complete_type.09d]
-// CHECK:STDOUT:   %Main.import_ref.446 = import_ref Main//extend_generic_base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.446 = import_ref Main//extend_generic_base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.a92: %Param.elem = import_ref Main//extend_generic_base, loc9_8, loaded [concrete = %.be7]
 // CHECK:STDOUT:   %Main.import_ref.5ab: type = import_ref Main//extend_generic_base, loc4_17, loaded [symbolic = @Base.%T (constants.%T.8b3)]
 // CHECK:STDOUT:   %Main.import_ref.b5f: <witness> = import_ref Main//extend_generic_base, loc6_1, loaded [symbolic = @Base.%complete_type (constants.%complete_type.433)]
-// CHECK:STDOUT:   %Main.import_ref.8e0 = import_ref Main//extend_generic_base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e0 = import_ref Main//extend_generic_base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.7f7: @Base.%Base.elem (%Base.elem.9af) = import_ref Main//extend_generic_base, loc5_8, loaded [concrete = %.e66]
 // CHECK:STDOUT:   %Main.import_ref.bd0: <witness> = import_ref Main//extend_generic_base, loc14_1, loaded [concrete = constants.%complete_type.b07]
-// CHECK:STDOUT:   %Main.import_ref.f6c = import_ref Main//extend_generic_base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f6c = import_ref Main//extend_generic_base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.d24 = import_ref Main//extend_generic_base, loc13_27, unloaded
 // CHECK:STDOUT:   %Main.import_ref.77a301.2: type = import_ref Main//extend_generic_base, loc13_26, loaded [concrete = constants.%Base.7a8]
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
@@ -830,11 +830,11 @@ fn H() {
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//extend_generic_symbolic_base, loc4_14, loaded [symbolic = @X.%U (constants.%U)]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//extend_generic_symbolic_base, loc6_1, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.e8e = import_ref Main//extend_generic_symbolic_base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.e8e = import_ref Main//extend_generic_symbolic_base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.b8a: @X.%X.G.type (%X.G.type.56f312.1) = import_ref Main//extend_generic_symbolic_base, loc5_15, loaded [symbolic = @X.%X.G (constants.%X.G.b504c4.1)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//extend_generic_symbolic_base, loc8_9, loaded [symbolic = @C.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.93f: <witness> = import_ref Main//extend_generic_symbolic_base, loc10_1, loaded [symbolic = @C.%complete_type (constants.%complete_type.768)]
-// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//extend_generic_symbolic_base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//extend_generic_symbolic_base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.65d = import_ref Main//extend_generic_symbolic_base, loc9_20, unloaded
 // CHECK:STDOUT:   %Main.import_ref.561eb2.2: type = import_ref Main//extend_generic_symbolic_base, loc9_19, loaded [symbolic = @C.%X (constants.%X.75b6d8.2)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.3: type = import_ref Main//extend_generic_symbolic_base, loc4_14, loaded [symbolic = @X.%U (constants.%U)]

+ 4 - 4
toolchain/check/testdata/class/generic/import.carbon

@@ -318,12 +318,12 @@ class Class(U:! type) {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.9fd: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.2ec) = import_ref Main//foo, inst{{\d+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.f13)]
+// CHECK:STDOUT:   %Main.import_ref.9fd: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.2ec) = import_ref Main//foo, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.f13)]
 // CHECK:STDOUT:   %ImplicitAs.impl_witness_table.0a0 = impl_witness_table (%Main.import_ref.9fd), @Core.IntLiteral.as.ImplicitAs.impl [concrete]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//foo, loc4_13, loaded [symbolic = @Class.%T.1 (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.eb1: <witness> = import_ref Main//foo, loc9_1, loaded [concrete = constants.%complete_type.a68]
-// CHECK:STDOUT:   %Main.import_ref.3c0 = import_ref Main//foo, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3c0 = import_ref Main//foo, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.051 = import_ref Main//foo, loc7_8, unloaded
 // CHECK:STDOUT:   %Main.import_ref.570 = import_ref Main//foo, loc8_17, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.3: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
@@ -515,7 +515,7 @@ class Class(U:! type) {
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T.8b3)]
 // CHECK:STDOUT:   %Main.import_ref.eb1: <witness> = import_ref Main//foo, loc9_1, loaded [concrete = constants.%complete_type.54b]
-// CHECK:STDOUT:   %Main.import_ref.3c0 = import_ref Main//foo, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3c0 = import_ref Main//foo, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e76: @CompleteClass.%CompleteClass.elem (%CompleteClass.elem.28a) = import_ref Main//foo, loc7_8, loaded [concrete = %.364]
 // CHECK:STDOUT:   %Main.import_ref.a52: @CompleteClass.%CompleteClass.F.type (%CompleteClass.F.type.14f) = import_ref Main//foo, loc8_17, loaded [symbolic = @CompleteClass.%CompleteClass.F (constants.%CompleteClass.F.874)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T.8b3)]
@@ -735,7 +735,7 @@ class Class(U:! type) {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.eb1: <witness> = import_ref Main//foo, loc9_1, loaded [concrete = constants.%complete_type.a68]
-// CHECK:STDOUT:   %Main.import_ref.3c0 = import_ref Main//foo, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3c0 = import_ref Main//foo, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.051 = import_ref Main//foo, loc7_8, unloaded
 // CHECK:STDOUT:   %Main.import_ref.570 = import_ref Main//foo, loc8_17, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//foo, loc6_21, loaded [symbolic = @CompleteClass.%T (constants.%T)]

+ 2 - 2
toolchain/check/testdata/class/implicit_import.carbon

@@ -161,7 +161,7 @@ class B {}
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//redecl_after_def, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//redecl_after_def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//redecl_after_def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -215,7 +215,7 @@ class B {}
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//redef_after_def, C, loaded [concrete = constants.%C.f794a0.1]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//redef_after_def, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//redef_after_def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//redef_after_def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 4 - 4
toolchain/check/testdata/class/import.carbon

@@ -265,20 +265,20 @@ fn Run() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//a, loc5_1, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.fd7 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.fd7 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.709: <witness> = import_ref Main//a, loc9_1, loaded [concrete = constants.%complete_type.c07]
-// CHECK:STDOUT:   %Main.import_ref.845 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.845 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4d2: %Field.elem = import_ref Main//a, loc8_8, loaded [concrete = %.d33]
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT:   %Core.import_ref.657: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.893) = import_ref Core//prelude/parts/int, loc{{\d+_\d+}}, loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.411)]
 // CHECK:STDOUT:   %ImplicitAs.impl_witness_table.e48 = impl_witness_table (%Core.import_ref.657), @Core.IntLiteral.as.ImplicitAs.impl [concrete]
 // CHECK:STDOUT:   %.d33: %Field.elem = field_decl x, element0 [concrete]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//a, loc16_1, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.39e731.1 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.39e731.1 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.760: %ForwardDeclared.F.type = import_ref Main//a, loc14_21, loaded [concrete = constants.%ForwardDeclared.F]
 // CHECK:STDOUT:   %Main.import_ref.26e: %ForwardDeclared.G.type = import_ref Main//a, loc15_27, loaded [concrete = constants.%ForwardDeclared.G]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.3: <witness> = import_ref Main//a, loc16_1, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.39e731.2 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.39e731.2 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.42a = import_ref Main//a, loc14_21, unloaded
 // CHECK:STDOUT:   %Main.import_ref.67a = import_ref Main//a, loc15_27, unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]

+ 2 - 2
toolchain/check/testdata/class/import_access.carbon

@@ -215,7 +215,7 @@ private class Redecl {}
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Test.Def: type = import_ref Test//def, Def, loaded [concrete = constants.%Def]
 // CHECK:STDOUT:   %Test.import_ref.8f2: <witness> = import_ref Test//def, loc4_20, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Test.import_ref.4ce = import_ref Test//def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Test.import_ref.4ce = import_ref Test//def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -329,7 +329,7 @@ private class Redecl {}
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Test.ForwardWithDef: type = import_ref Test//forward_with_def, ForwardWithDef, loaded [concrete = constants.%ForwardWithDef]
 // CHECK:STDOUT:   %Test.import_ref.8f2: <witness> = import_ref Test//forward_with_def, loc6_23, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Test.import_ref.414 = import_ref Test//forward_with_def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Test.import_ref.414 = import_ref Test//forward_with_def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 2 - 2
toolchain/check/testdata/class/import_base.carbon

@@ -199,13 +199,13 @@ fn Run() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.239: <witness> = import_ref Main//a, loc10_1, loaded [concrete = constants.%complete_type.90f]
-// CHECK:STDOUT:   %Main.import_ref.1f3 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.1f3 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e8f: %Base.F.type = import_ref Main//a, loc5_21, loaded [concrete = constants.%Base.F]
 // CHECK:STDOUT:   %Main.import_ref.8bf = import_ref Main//a, loc6_26, unloaded
 // CHECK:STDOUT:   %Main.import_ref.e67: %Base.elem = import_ref Main//a, loc8_8, loaded [concrete = %.720]
 // CHECK:STDOUT:   %Main.import_ref.2e4 = import_ref Main//a, loc9_13, unloaded
 // CHECK:STDOUT:   %Main.import_ref.c5f: <witness> = import_ref Main//a, loc14_1, loaded [concrete = constants.%complete_type.15c]
-// CHECK:STDOUT:   %Main.import_ref.9a9 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.9a9 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.7e5 = import_ref Main//a, loc13_20, unloaded
 // CHECK:STDOUT:   %Main.import_ref.a21640.2: type = import_ref Main//a, loc13_16, loaded [concrete = constants.%Base]
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]

+ 8 - 8
toolchain/check/testdata/class/import_indirect.carbon

@@ -170,7 +170,7 @@ var ptr: E* = &val;
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//a, loc4_10, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]
@@ -265,7 +265,7 @@ var ptr: E* = &val;
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//a, loc4_10, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]
@@ -363,7 +363,7 @@ var ptr: E* = &val;
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//a, loc4_10, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]
@@ -461,7 +461,7 @@ var ptr: E* = &val;
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//a, loc4_10, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]
@@ -560,8 +560,8 @@ var ptr: E* = &val;
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//b, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//b, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//b, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.357]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//b, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]
@@ -662,8 +662,8 @@ var ptr: E* = &val;
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//b, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//b, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//b, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.357]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//b, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/parts/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.import_ref.0e4: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.31f) = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.8a8)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.53c = impl_witness_table (%Core.import_ref.0e4), @ptr.as.Copy.impl [concrete]

+ 1 - 1
toolchain/check/testdata/class/import_member_cycle.carbon

@@ -97,7 +97,7 @@ fn Run() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.72d: <witness> = import_ref Main//a, loc6_1, loaded [concrete = constants.%complete_type.e4b]
-// CHECK:STDOUT:   %Main.import_ref.3a6 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3a6 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4e0 = import_ref Main//a, loc5_8, unloaded
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }

+ 1 - 1
toolchain/check/testdata/class/import_struct_cyle.carbon

@@ -125,7 +125,7 @@ fn Run() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.b93: <witness> = import_ref Main//a, loc11_1, loaded [concrete = constants.%complete_type.e1c]
-// CHECK:STDOUT:   %Main.import_ref.3a6 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3a6 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.455: %Cycle.elem = import_ref Main//a, loc10_8, loaded [concrete = %.354]
 // CHECK:STDOUT:   %a.patt: %pattern_type.afd = binding_pattern a [concrete]
 // CHECK:STDOUT:   %a.var_patt: %pattern_type.afd = var_pattern %a.patt [concrete]

+ 19 - 19
toolchain/check/testdata/class/indirect_import_member.carbon

@@ -160,7 +160,7 @@ var x: () = D.C.F();
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//a, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//a, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.2cf = import_ref Main//a, loc5_10, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -204,9 +204,9 @@ var x: () = D.C.F();
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//c, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//c, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//c, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.230 = import_ref Main//c, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.230 = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -266,7 +266,7 @@ var x: () = D.C.F();
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//a, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//a, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.943: %C.F.type = import_ref Main//a, loc5_10, loaded [concrete = constants.%C.F]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -321,9 +321,9 @@ var x: () = D.C.F();
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//c, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//c, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//c, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.5d3: %C.F.type = import_ref Main//c, inst{{\d+}} [indirect], loaded [concrete = constants.%C.F]
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.5d3: %C.F.type = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%C.F]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -377,9 +377,9 @@ var x: () = D.C.F();
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//c, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//c, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//c, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.5d3: %C.F.type = import_ref Main//c, inst{{\d+}} [indirect], loaded [concrete = constants.%C.F]
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.5d3: %C.F.type = import_ref Main//c, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%C.F]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -435,11 +435,11 @@ var x: () = D.C.F();
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.D: type = import_ref Main//e, D, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//e, loc8_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//e, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//e, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.bf1: type = import_ref Main//e, loc7_9, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.8f3: <witness> = import_ref Main//e, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//e, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.c85: %C.F.type = import_ref Main//e, inst{{\d+}} [indirect], loaded [concrete = constants.%C.F]
+// CHECK:STDOUT:   %Main.import_ref.8f3: <witness> = import_ref Main//e, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//e, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.c85: %C.F.type = import_ref Main//e, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%C.F]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -504,11 +504,11 @@ var x: () = D.C.F();
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.D: type = import_ref Main//e, D, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//e, loc8_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//e, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//e, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.bf1: type = import_ref Main//e, loc7_9, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.8f3: <witness> = import_ref Main//e, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//e, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.c85: %C.F.type = import_ref Main//e, inst{{\d+}} [indirect], loaded [concrete = constants.%C.F]
+// CHECK:STDOUT:   %Main.import_ref.8f3: <witness> = import_ref Main//e, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//e, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.c85: %C.F.type = import_ref Main//e, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%C.F]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 2 - 2
toolchain/check/testdata/class/syntactic_merge.carbon

@@ -603,7 +603,7 @@ fn Base.F[addr self: Base*]() {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//two_file, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.D: type = import_ref Main//two_file, D, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//two_file, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//two_file, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//two_file, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f97b44.1: %C = import_ref Main//two_file, loc7_11, loaded [symbolic = @Foo.%a.1 (constants.%a)]
 // CHECK:STDOUT:   %Main.import_ref.f97b44.2: %C = import_ref Main//two_file, loc8_11, loaded [symbolic = @Bar.%a.1 (constants.%a)]
 // CHECK:STDOUT: }
@@ -994,7 +994,7 @@ fn Base.F[addr self: Base*]() {
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//alias_two_file, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//alias_two_file, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f97: %C = import_ref Main//alias_two_file, loc6_11, loaded [symbolic = @Foo.%a.1 (constants.%a)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 5 - 5
toolchain/check/testdata/class/virtual_modifiers.carbon

@@ -664,7 +664,7 @@ class T2(G2:! type) {
 // CHECK:STDOUT:   %Modifiers.Base: type = import_ref Modifiers//default, Base, loaded [concrete = constants.%Base]
 // CHECK:STDOUT:   %Modifiers.import_ref.97a: ref %ptr.454 = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%Base.vtable_decl]
 // CHECK:STDOUT:   %Modifiers.import_ref.05e: <witness> = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%complete_type.513]
-// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Modifiers.import_ref.2cc = import_ref Modifiers//default, loc5_29, unloaded
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }
@@ -790,7 +790,7 @@ class T2(G2:! type) {
 // CHECK:STDOUT:   %Modifiers.Base: type = import_ref Modifiers//default, Base, loaded [concrete = constants.%Base]
 // CHECK:STDOUT:   %Modifiers.import_ref.97a: ref %ptr.454 = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%Base.vtable_decl]
 // CHECK:STDOUT:   %Modifiers.import_ref.05e: <witness> = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%complete_type.513]
-// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Modifiers.import_ref.2cc = import_ref Modifiers//default, loc5_29, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -891,7 +891,7 @@ class T2(G2:! type) {
 // CHECK:STDOUT:   %Modifiers.Base: type = import_ref Modifiers//default, Base, loaded [concrete = constants.%Base]
 // CHECK:STDOUT:   %Modifiers.import_ref.97a: ref %ptr.454 = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%Base.vtable_decl]
 // CHECK:STDOUT:   %Modifiers.import_ref.05e: <witness> = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%complete_type.513]
-// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Modifiers.import_ref.2cc = import_ref Modifiers//default, loc5_29, unloaded
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }
@@ -3085,7 +3085,7 @@ class T2(G2:! type) {
 // CHECK:STDOUT:   %Modifiers.Base: type = import_ref Modifiers//default, Base, loaded [concrete = constants.%Base]
 // CHECK:STDOUT:   %Modifiers.import_ref.3e3fbe.2 = import_ref Modifiers//default, loc6_1, unloaded
 // CHECK:STDOUT:   %Modifiers.import_ref.05e: <witness> = import_ref Modifiers//default, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Modifiers.import_ref.1f3 = import_ref Modifiers//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Modifiers.import_ref.2cc = import_ref Modifiers//default, loc5_29, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -4881,7 +4881,7 @@ class T2(G2:! type) {
 // CHECK:STDOUT:   %Main.import_ref.0e5: ref %ptr.454 = import_ref Main//generic_lib, loc6_1, loaded [concrete = constants.%Base.vtable_decl]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//generic_lib, loc4_17, loaded [symbolic = @Base.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.05e: <witness> = import_ref Main//generic_lib, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.8e0 = import_ref Main//generic_lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e0 = import_ref Main//generic_lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e54 = import_ref Main//generic_lib, loc5_30, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//generic_lib, loc4_17, loaded [symbolic = @Base.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.78a: <specific function> = import_ref Main//generic_lib, loc6_1, loaded [symbolic = constants.%Base.F.specific_fn.892]

+ 1 - 1
toolchain/check/testdata/const/import.carbon

@@ -58,7 +58,7 @@ var a_ptr: const C* = a_ptr_ref;
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//implicit, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.a_ref: ref %const.668 = import_ref Main//implicit, a_ref, loaded [concrete = %a_ref.var]
 // CHECK:STDOUT:   %Main.a_ptr_ref: ref %ptr.801 = import_ref Main//implicit, a_ptr_ref, loaded [concrete = %a_ptr_ref.var]
-// CHECK:STDOUT:   %Main.import_ref.790: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.222) = import_ref Main//implicit, inst{{\d+}} [indirect], loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.3ef)]
+// CHECK:STDOUT:   %Main.import_ref.790: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.222) = import_ref Main//implicit, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.3ef)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.573 = impl_witness_table (%Main.import_ref.790), @ptr.as.Copy.impl [concrete]
 // CHECK:STDOUT:   %a_ref.patt: %pattern_type.6af = binding_pattern a_ref [concrete]
 // CHECK:STDOUT:   %a_ref.var_patt: %pattern_type.6af = var_pattern %a_ref.patt [concrete]

+ 3 - 3
toolchain/check/testdata/for/actual.carbon

@@ -225,8 +225,8 @@ fn Read() {
 // CHECK:STDOUT:   %ElementType: %Copy.type = assoc_const_decl @ElementType [concrete] {}
 // CHECK:STDOUT:   %Core.import_ref.d0f6: @Int.as.Copy.impl.%Int.as.Copy.impl.Op.type (%Int.as.Copy.impl.Op.type.afd) = import_ref Core//prelude/types/int, loc{{\d+_\d+}}, loaded [symbolic = @Int.as.Copy.impl.%Int.as.Copy.impl.Op (constants.%Int.as.Copy.impl.Op.6cd)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.1ed = impl_witness_table (%Core.import_ref.d0f6), @Int.as.Copy.impl [concrete]
-// CHECK:STDOUT:   %Core.import_ref.725b: @Optional.%Optional.None.type (%Optional.None.type.3df) = import_ref Core//prelude/iterate, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.None (constants.%Optional.None.321)]
-// CHECK:STDOUT:   %Core.import_ref.9103: @Optional.%Optional.Some.type (%Optional.Some.type.48a) = import_ref Core//prelude/iterate, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.Some (constants.%Optional.Some.a29)]
+// CHECK:STDOUT:   %Core.import_ref.725b: @Optional.%Optional.None.type (%Optional.None.type.3df) = import_ref Core//prelude/iterate, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.None (constants.%Optional.None.321)]
+// CHECK:STDOUT:   %Core.import_ref.9103: @Optional.%Optional.Some.type (%Optional.Some.type.48a) = import_ref Core//prelude/iterate, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.Some (constants.%Optional.Some.a29)]
 // CHECK:STDOUT:   %Core.Optional: %Optional.type = import_ref Core//prelude/types/optional, Optional, loaded [concrete = constants.%Optional.generic]
 // CHECK:STDOUT:   %Core.Copy: type = import_ref Core//prelude/copy, Copy, loaded [concrete = constants.%Copy.type]
 // CHECK:STDOUT:   %Core.OrderedWith: %OrderedWith.type.270 = import_ref Core//prelude/operators/comparison, OrderedWith, loaded [concrete = constants.%OrderedWith.generic]
@@ -899,7 +899,7 @@ fn Read() {
 // CHECK:STDOUT:   %Core.IntLiteral: %IntLiteral.type = import_ref Core//prelude/types/int_literal, IntLiteral, loaded [concrete = constants.%IntLiteral]
 // CHECK:STDOUT:   %Main.import_ref.f1e294.1: Core.IntLiteral = import_ref Main//lib, loc4_16, loaded [symbolic = @IntRange.%N (constants.%N)]
 // CHECK:STDOUT:   %Main.import_ref.30f: <witness> = import_ref Main//lib, loc24_1, loaded [symbolic = @IntRange.%complete_type (constants.%complete_type.c76)]
-// CHECK:STDOUT:   %Main.import_ref.d13 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.d13 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.d98 = import_ref Main//lib, loc5_57, unloaded
 // CHECK:STDOUT:   %Main.import_ref.e58 = import_ref Main//lib, loc22_20, unloaded
 // CHECK:STDOUT:   %Main.import_ref.261 = import_ref Main//lib, loc23_18, unloaded

+ 2 - 2
toolchain/check/testdata/for/basic.carbon

@@ -114,8 +114,8 @@ fn Run() {
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Core.import_ref.1a3: %empty_tuple.type.as.Copy.impl.Op.type = import_ref Core//prelude/parts/copy, loc{{\d+_\d+}}, loaded [concrete = constants.%empty_tuple.type.as.Copy.impl.Op]
 // CHECK:STDOUT:   %Copy.impl_witness_table.955 = impl_witness_table (%Core.import_ref.1a3), @empty_tuple.type.as.Copy.impl [concrete]
-// CHECK:STDOUT:   %Core.import_ref.b87: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.b77) = import_ref Core//prelude/parts/iterate, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.110)]
-// CHECK:STDOUT:   %Core.import_ref.d08: @Optional.%Optional.Get.type (%Optional.Get.type.81f) = import_ref Core//prelude/parts/iterate, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.546)]
+// CHECK:STDOUT:   %Core.import_ref.b87: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.b77) = import_ref Core//prelude/parts/iterate, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.110)]
+// CHECK:STDOUT:   %Core.import_ref.d08: @Optional.%Optional.Get.type (%Optional.Get.type.81f) = import_ref Core//prelude/parts/iterate, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.546)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @Run() {

+ 8 - 8
toolchain/check/testdata/for/pattern.carbon

@@ -198,8 +198,8 @@ fn Run() {
 // CHECK:STDOUT:   %Main.import_ref.85e: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor.type (%EmptyRange.as.Iterate.impl.NewCursor.type.22a) = import_ref Main//empty_range, loc8_38, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor (constants.%EmptyRange.as.Iterate.impl.NewCursor.28c)]
 // CHECK:STDOUT:   %Main.import_ref.782: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next.type (%EmptyRange.as.Iterate.impl.Next.type.e5a) = import_ref Main//empty_range, loc11_58, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next (constants.%EmptyRange.as.Iterate.impl.Next.185)]
 // CHECK:STDOUT:   %Iterate.impl_witness_table = impl_witness_table (%Main.import_ref.4d9, %Main.import_ref.999, %Main.import_ref.85e, %Main.import_ref.782), @EmptyRange.as.Iterate.impl [concrete]
-// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
-// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
+// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
+// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @Run() {
@@ -380,8 +380,8 @@ fn Run() {
 // CHECK:STDOUT:   %Main.import_ref.85e: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor.type (%EmptyRange.as.Iterate.impl.NewCursor.type.22a) = import_ref Main//empty_range, loc8_38, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor (constants.%EmptyRange.as.Iterate.impl.NewCursor.28c)]
 // CHECK:STDOUT:   %Main.import_ref.782: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next.type (%EmptyRange.as.Iterate.impl.Next.type.e5a) = import_ref Main//empty_range, loc11_58, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next (constants.%EmptyRange.as.Iterate.impl.Next.185)]
 // CHECK:STDOUT:   %Iterate.impl_witness_table = impl_witness_table (%Main.import_ref.4d9, %Main.import_ref.999, %Main.import_ref.85e, %Main.import_ref.782), @EmptyRange.as.Iterate.impl [concrete]
-// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
-// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
+// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
+// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @Run() {
@@ -574,8 +574,8 @@ fn Run() {
 // CHECK:STDOUT:   %Main.import_ref.85e: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor.type (%EmptyRange.as.Iterate.impl.NewCursor.type.22a) = import_ref Main//empty_range, loc8_38, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor (constants.%EmptyRange.as.Iterate.impl.NewCursor.28c)]
 // CHECK:STDOUT:   %Main.import_ref.782: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next.type (%EmptyRange.as.Iterate.impl.Next.type.e5a) = import_ref Main//empty_range, loc11_58, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next (constants.%EmptyRange.as.Iterate.impl.Next.185)]
 // CHECK:STDOUT:   %Iterate.impl_witness_table = impl_witness_table (%Main.import_ref.4d9, %Main.import_ref.999, %Main.import_ref.85e, %Main.import_ref.782), @EmptyRange.as.Iterate.impl [concrete]
-// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
-// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
+// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
+// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @Run() {
@@ -792,8 +792,8 @@ fn Run() {
 // CHECK:STDOUT:   %Main.import_ref.85e: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor.type (%EmptyRange.as.Iterate.impl.NewCursor.type.22a) = import_ref Main//empty_range, loc8_38, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.NewCursor (constants.%EmptyRange.as.Iterate.impl.NewCursor.28c)]
 // CHECK:STDOUT:   %Main.import_ref.782: @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next.type (%EmptyRange.as.Iterate.impl.Next.type.e5a) = import_ref Main//empty_range, loc11_58, loaded [symbolic = @EmptyRange.as.Iterate.impl.%EmptyRange.as.Iterate.impl.Next (constants.%EmptyRange.as.Iterate.impl.Next.185)]
 // CHECK:STDOUT:   %Iterate.impl_witness_table = impl_witness_table (%Main.import_ref.4d9, %Main.import_ref.999, %Main.import_ref.85e, %Main.import_ref.782), @EmptyRange.as.Iterate.impl [concrete]
-// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
-// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{\d+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
+// CHECK:STDOUT:   %Main.import_ref.cfa: @Optional.%Optional.HasValue.type (%Optional.HasValue.type.5d5) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.HasValue (constants.%Optional.HasValue.d64)]
+// CHECK:STDOUT:   %Main.import_ref.01a: @Optional.%Optional.Get.type (%Optional.Get.type.91e) = import_ref Main//empty_range, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Optional.%Optional.Get (constants.%Optional.Get.4d9)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @Run() {

+ 6 - 6
toolchain/check/testdata/function/builtin/call_from_operator.carbon

@@ -766,11 +766,11 @@ var arr: array(i32, (1 as i32) + (2 as i32)) = (3, 4, (3 as i32) + (4 as i32));
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//default, Int, loaded [concrete = constants.%Int]
 // CHECK:STDOUT:   %Core.As: %As.type.90f = import_ref Core//default, As, loaded [concrete = constants.%As.generic]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.1: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @As.%T (constants.%T)]
-// CHECK:STDOUT:   %Core.import_ref.be8 = import_ref Core//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.be8 = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.import_ref.5e1: @As.%As.assoc_type (%As.assoc_type.760) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @As.%assoc0 (constants.%assoc0.97d)]
 // CHECK:STDOUT:   %Core.Convert.313 = import_ref Core//default, Convert, unloaded
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.2: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @As.%T (constants.%T)]
-// CHECK:STDOUT:   %Core.import_ref.a74: @As.%As.type (%As.type.8d8) = import_ref Core//default, inst{{\d+}} [no loc], loaded [symbolic = @As.%Self (constants.%Self.4b9)]
+// CHECK:STDOUT:   %Core.import_ref.a74: @As.%As.type (%As.type.8d8) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @As.%Self (constants.%Self.4b9)]
 // CHECK:STDOUT:   %Core.import_ref.708: @As.%As.Convert.type (%As.Convert.type.843) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @As.%As.Convert (constants.%As.Convert.95f)]
 // CHECK:STDOUT:   %Core.import_ref.4e8 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT:   %Core.import_ref.931: <witness> = import_ref Core//default, loc{{\d+_\d+}}, loaded [concrete = constants.%As.impl_witness]
@@ -780,11 +780,11 @@ var arr: array(i32, (1 as i32) + (2 as i32)) = (3, 4, (3 as i32) + (4 as i32));
 // CHECK:STDOUT:   %As.impl_witness_table = impl_witness_table (%Core.import_ref.a36), @Core.IntLiteral.as.As.impl [concrete]
 // CHECK:STDOUT:   %Core.AddWith: %AddWith.type.e05 = import_ref Core//default, AddWith, loaded [concrete = constants.%AddWith.generic]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.3: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @AddWith.%T (constants.%T)]
-// CHECK:STDOUT:   %Core.import_ref.a58 = import_ref Core//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.a58 = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.import_ref.35d: @AddWith.%AddWith.assoc_type (%AddWith.assoc_type.c10) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @AddWith.%assoc0 (constants.%assoc0.899)]
 // CHECK:STDOUT:   %Core.Op = import_ref Core//default, Op, unloaded
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.4: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @AddWith.%T (constants.%T)]
-// CHECK:STDOUT:   %Core.import_ref.b29: @AddWith.%AddWith.type (%AddWith.type.5d0) = import_ref Core//default, inst{{\d+}} [no loc], loaded [symbolic = @AddWith.%Self (constants.%Self.25f)]
+// CHECK:STDOUT:   %Core.import_ref.b29: @AddWith.%AddWith.type (%AddWith.type.5d0) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @AddWith.%Self (constants.%Self.25f)]
 // CHECK:STDOUT:   %Core.import_ref.1b9: @AddWith.%AddWith.Op.type (%AddWith.Op.type.22d) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @AddWith.%AddWith.Op (constants.%AddWith.Op.965)]
 // CHECK:STDOUT:   %Core.import_ref.7e6 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT:   %Core.import_ref.8af: <witness> = import_ref Core//default, loc{{\d+_\d+}}, loaded [concrete = constants.%AddWith.impl_witness]
@@ -794,11 +794,11 @@ var arr: array(i32, (1 as i32) + (2 as i32)) = (3, 4, (3 as i32) + (4 as i32));
 // CHECK:STDOUT:   %AddWith.impl_witness_table = impl_witness_table (%Core.import_ref.980), @i32.builtin.as.AddWith.impl [concrete]
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//default, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.5: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%T (constants.%T)]
-// CHECK:STDOUT:   %Core.import_ref.e2c = import_ref Core//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.e2c = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.import_ref.492: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type.ca0) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%assoc0 (constants.%assoc0.dc0)]
 // CHECK:STDOUT:   %Core.Convert.e69 = import_ref Core//default, Convert, unloaded
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.6: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%T (constants.%T)]
-// CHECK:STDOUT:   %Core.import_ref.b95: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.edb) = import_ref Core//default, inst{{\d+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.152)]
+// CHECK:STDOUT:   %Core.import_ref.b95: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.edb) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.152)]
 // CHECK:STDOUT:   %Core.import_ref.1c752f.1: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type.275) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert.42e)]
 // CHECK:STDOUT:   %Core.import_ref.207 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT:   %Core.import_ref.8a9: <witness> = import_ref Core//default, loc{{\d+_\d+}}, loaded [concrete = constants.%ImplicitAs.impl_witness.c15]

+ 1 - 1
toolchain/check/testdata/function/declaration/fail_import_incomplete_return.carbon

@@ -233,7 +233,7 @@ fn CallFAndGIncomplete() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//incomplete_return, loc37_10, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//incomplete_return, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//incomplete_return, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 2 - 2
toolchain/check/testdata/function/definition/syntactic_merge.carbon

@@ -528,7 +528,7 @@ fn Foo(a: const (const C)) {}
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//two_file, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.D: type = import_ref Main//two_file, D, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//two_file, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//two_file, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//two_file, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -869,7 +869,7 @@ fn Foo(a: const (const C)) {}
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//alias_two_file, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//alias_two_file, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/function/generic/fail_deduce_imported_function.carbon

@@ -148,7 +148,7 @@ fn B() {
 // CHECK:STDOUT:     import Lib//default
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Lib.Z: type = import_ref Lib//default, Z, loaded [concrete = constants.%Z.type]
-// CHECK:STDOUT:   %Lib.import_ref.362 = import_ref Lib//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Lib.import_ref.362 = import_ref Lib//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Lib.A: %A.type.fad = import_ref Lib//default, A, loaded [concrete = constants.%A.7a0]
 // CHECK:STDOUT:   %Lib.import_ref.c90: %Z.type = import_ref Lib//default, loc4_6, loaded [symbolic = @A.1.%T (constants.%T)]
 // CHECK:STDOUT: }

+ 2 - 2
toolchain/check/testdata/if_expr/fail_not_in_function.carbon

@@ -130,7 +130,7 @@ fn F() {
 // CHECK:STDOUT:   %true: bool = bool_literal true [concrete]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
-// CHECK:STDOUT: generic class @C(<unexpected>.ir4.inst20.loc4_14: type) {
+// CHECK:STDOUT: generic class @C(<unexpected>.inst68000014.loc4_14: type) {
 // CHECK:STDOUT:   %T: type = bind_symbolic_name T, 0 [symbolic = %T (constants.%T)]
 // CHECK:STDOUT:
 // CHECK:STDOUT: !definition:
@@ -145,7 +145,7 @@ fn F() {
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: class @B {
-// CHECK:STDOUT:   %C.ref: %C.type = name_ref C, <unexpected>.ir4.inst25.loc4_24 [concrete = constants.%C.generic]
+// CHECK:STDOUT:   %C.ref: %C.type = name_ref C, <unexpected>.inst68000019.loc4_24 [concrete = constants.%C.generic]
 // CHECK:STDOUT:   %true: bool = bool_literal true [concrete = constants.%true]
 // CHECK:STDOUT:   if %true br !if.expr.then else br !if.expr.else
 // CHECK:STDOUT:   complete_type_witness = invalid

+ 4 - 4
toolchain/check/testdata/impl/compound.carbon

@@ -346,11 +346,11 @@ fn InstanceCallFail() {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//default, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.1: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
-// CHECK:STDOUT:   %Core.import_ref.e2c = import_ref Core//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.e2c = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.import_ref.492: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type.ca0) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%assoc0 (constants.%assoc0.dc0)]
 // CHECK:STDOUT:   %Core.Convert = import_ref Core//default, Convert, unloaded
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.2: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
-// CHECK:STDOUT:   %Core.import_ref.b95: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.edb) = import_ref Core//default, inst{{\d+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.152)]
+// CHECK:STDOUT:   %Core.import_ref.b95: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.edb) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.152)]
 // CHECK:STDOUT:   %Core.import_ref.1c7: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type.275) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert.42e)]
 // CHECK:STDOUT:   %Core.import_ref.207 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT: }
@@ -528,11 +528,11 @@ fn InstanceCallFail() {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//default, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.1: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
-// CHECK:STDOUT:   %Core.import_ref.e2c = import_ref Core//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.e2c = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.import_ref.492: @ImplicitAs.%ImplicitAs.assoc_type (%ImplicitAs.assoc_type.ca0) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%assoc0 (constants.%assoc0.dc0)]
 // CHECK:STDOUT:   %Core.Convert = import_ref Core//default, Convert, unloaded
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.2: type = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%Dest (constants.%Dest)]
-// CHECK:STDOUT:   %Core.import_ref.b95: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.edb) = import_ref Core//default, inst{{\d+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.152)]
+// CHECK:STDOUT:   %Core.import_ref.b95: @ImplicitAs.%ImplicitAs.type (%ImplicitAs.type.edb) = import_ref Core//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @ImplicitAs.%Self (constants.%Self.152)]
 // CHECK:STDOUT:   %Core.import_ref.1c7: @ImplicitAs.%ImplicitAs.Convert.type (%ImplicitAs.Convert.type.275) = import_ref Core//default, loc{{\d+_\d+}}, loaded [symbolic = @ImplicitAs.%ImplicitAs.Convert (constants.%ImplicitAs.Convert.42e)]
 // CHECK:STDOUT:   %Core.import_ref.207 = import_ref Core//default, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT: }

+ 4 - 4
toolchain/check/testdata/impl/import_builtin_call.carbon

@@ -473,12 +473,12 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
 // CHECK:STDOUT:   %Main.Double: %Double.type = import_ref Main//generic_impl, Double, loaded [concrete = constants.%Double]
 // CHECK:STDOUT:   %Main.import_ref.f1e294.1: Core.IntLiteral = import_ref Main//generic_impl, loc11_13, loaded [symbolic = @MyInt.%N (constants.%N)]
 // CHECK:STDOUT:   %Main.import_ref.9e9: <witness> = import_ref Main//generic_impl, loc13_1, loaded [symbolic = @MyInt.%complete_type (constants.%complete_type.a87)]
-// CHECK:STDOUT:   %Main.import_ref.697 = import_ref Main//generic_impl, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %Main.import_ref.282 = import_ref Main//generic_impl, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.697 = import_ref Main//generic_impl, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.282 = import_ref Main//generic_impl, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f99: %Add.assoc_type = import_ref Main//generic_impl, loc5_41, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.Op = import_ref Main//generic_impl, Op, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5a3: %Add.Op.type = import_ref Main//generic_impl, loc5_41, loaded [concrete = constants.%Add.Op]
-// CHECK:STDOUT:   %Main.import_ref.942: %Add.type = import_ref Main//generic_impl, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.942: %Add.type = import_ref Main//generic_impl, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.e81: <witness> = import_ref Main//generic_impl, loc15_48, loaded [symbolic = @MyInt.as.Add.impl.%Add.impl_witness (constants.%Add.impl_witness.be2)]
 // CHECK:STDOUT:   %Main.import_ref.f1e294.2: Core.IntLiteral = import_ref Main//generic_impl, loc15_14, loaded [symbolic = @MyInt.as.Add.impl.%N (constants.%N)]
 // CHECK:STDOUT:   %Main.import_ref.719: type = import_ref Main//generic_impl, loc15_39, loaded [symbolic = @MyInt.as.Add.impl.%MyInt (constants.%MyInt.09f)]
@@ -1076,7 +1076,7 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
 // CHECK:STDOUT:   %Main.MakeFromClass: %MakeFromClass.type = import_ref Main//convert_symbolic, MakeFromClass, loaded [concrete = constants.%MakeFromClass]
 // CHECK:STDOUT:   %Main.import_ref.85e: %i32.builtin = import_ref Main//convert_symbolic, loc9_9, loaded [symbolic = @Make.%N (constants.%N.987)]
 // CHECK:STDOUT:   %Main.import_ref.b03: <witness> = import_ref Main//convert_symbolic, loc14_1, loaded [concrete = constants.%complete_type.f8a]
-// CHECK:STDOUT:   %Main.import_ref.d11 = import_ref Main//convert_symbolic, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.d11 = import_ref Main//convert_symbolic, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f7 = import_ref Main//convert_symbolic, loc13_45, unloaded
 // CHECK:STDOUT:   %Main.import_ref.77d: %OtherInt = import_ref Main//convert_symbolic, loc18_18, loaded [symbolic = @MakeFromClass.%N (constants.%N.335)]
 // CHECK:STDOUT: }

+ 10 - 10
toolchain/check/testdata/impl/import_compound.carbon

@@ -283,11 +283,11 @@ fn InstanceCallImportFail() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.cd2 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cd2 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e3c: %NonInstance.assoc_type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.F = import_ref Main//lib, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.474: %NonInstance.F.type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%NonInstance.F]
-// CHECK:STDOUT:   %Main.import_ref.164: %NonInstance.type = import_ref Main//lib, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.164: %NonInstance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.890: <witness> = import_ref Main//lib, loc7_30, loaded [concrete = constants.%NonInstance.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.c9a: type = import_ref Main//lib, loc7_13, loaded [concrete = constants.%struct_type.i]
 // CHECK:STDOUT:   %Main.import_ref.ef5: type = import_ref Main//lib, loc7_18, loaded [concrete = constants.%NonInstance.type]
@@ -367,11 +367,11 @@ fn InstanceCallImportFail() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.cd2 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cd2 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e3c: %NonInstance.assoc_type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%assoc0.8ce]
 // CHECK:STDOUT:   %Main.F = import_ref Main//lib, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.474: %NonInstance.F.type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%NonInstance.F]
-// CHECK:STDOUT:   %Main.import_ref.164: %NonInstance.type = import_ref Main//lib, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.98b]
+// CHECK:STDOUT:   %Main.import_ref.164: %NonInstance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.98b]
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -447,11 +447,11 @@ fn InstanceCallImportFail() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.cd2 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cd2 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e3c: %NonInstance.assoc_type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%assoc0.8ce]
 // CHECK:STDOUT:   %Main.F = import_ref Main//lib, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.474: %NonInstance.F.type = import_ref Main//lib, loc4_9, loaded [concrete = constants.%NonInstance.F]
-// CHECK:STDOUT:   %Main.import_ref.164: %NonInstance.type = import_ref Main//lib, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.98b]
+// CHECK:STDOUT:   %Main.import_ref.164: %NonInstance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.98b]
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -538,11 +538,11 @@ fn InstanceCallImportFail() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.d00 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.d00 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.124: %Instance.assoc_type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.G = import_ref Main//lib, G, unloaded
 // CHECK:STDOUT:   %Main.import_ref.b4d: %Instance.G.type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%Instance.G]
-// CHECK:STDOUT:   %Main.import_ref.334: %Instance.type = import_ref Main//lib, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.334: %Instance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.4df: <witness> = import_ref Main//lib, loc15_27, loaded [concrete = constants.%Instance.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.c9a: type = import_ref Main//lib, loc15_13, loaded [concrete = constants.%struct_type.i]
 // CHECK:STDOUT:   %Main.import_ref.b49: type = import_ref Main//lib, loc15_18, loaded [concrete = constants.%Instance.type]
@@ -667,11 +667,11 @@ fn InstanceCallImportFail() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.d00 = import_ref Main//lib, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.d00 = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.124: %Instance.assoc_type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.G = import_ref Main//lib, G, unloaded
 // CHECK:STDOUT:   %Main.import_ref.b4d: %Instance.G.type = import_ref Main//lib, loc12_21, loaded [concrete = constants.%Instance.G]
-// CHECK:STDOUT:   %Main.import_ref.334: %Instance.type = import_ref Main//lib, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.334: %Instance.type = import_ref Main//lib, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.8a7 = import_ref Main//lib, loc15_27, unloaded
 // CHECK:STDOUT:   %Main.import_ref.c9a: type = import_ref Main//lib, loc15_13, loaded [concrete = constants.%struct_type.i]
 // CHECK:STDOUT:   %Main.import_ref.b49: type = import_ref Main//lib, loc15_18, loaded [concrete = constants.%Instance.type]

+ 3 - 3
toolchain/check/testdata/impl/import_extend_impl.carbon

@@ -139,9 +139,9 @@ fn G(c: C) {
 // CHECK:STDOUT:   %Main.I = import_ref Main//extend_impl_library, I, unloaded
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//extend_impl_library, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//extend_impl_library, loc12_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//extend_impl_library, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//extend_impl_library, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.3019d1.1: type = import_ref Main//extend_impl_library, loc9_18, loaded [concrete = constants.%I.type]
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//extend_impl_library, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//extend_impl_library, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c44: %I.assoc_type = import_ref Main//extend_impl_library, loc5_9, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.F = import_ref Main//extend_impl_library, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.e03: %I.F.type = import_ref Main//extend_impl_library, loc5_9, loaded [concrete = constants.%I.F]
@@ -150,7 +150,7 @@ fn G(c: C) {
 // CHECK:STDOUT:   %Main.import_ref.3019d1.2: type = import_ref Main//extend_impl_library, loc9_18, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.import_ref.863: %C.as.I.impl.F.type = import_ref Main//extend_impl_library, loc10_12, loaded [concrete = constants.%C.as.I.impl.F]
 // CHECK:STDOUT:   %I.impl_witness_table = impl_witness_table (%Main.import_ref.863), @C.as.I.impl [concrete]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//extend_impl_library, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//extend_impl_library, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 4 - 4
toolchain/check/testdata/impl/import_generic.carbon

@@ -283,10 +283,10 @@ impl forall [T:! type] D as J(T*) {}
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//import_generic, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.I: %I.type.dac = import_ref Main//import_generic, I, loaded [concrete = constants.%I.generic]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//import_generic, loc5_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//import_generic, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e9d = import_ref Main//import_generic, loc8_33, unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//import_generic, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//import_generic, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//import_generic, loc8_14, loaded [symbolic = @C.as.I.impl.c17be4.1.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.29aca8.1: type = import_ref Main//import_generic, loc8_24, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.11c: type = import_ref Main//import_generic, loc8_32, loaded [symbolic = @C.as.I.impl.c17be4.1.%I.type (constants.%I.type.b13)]
@@ -636,9 +636,9 @@ impl forall [T:! type] D as J(T*) {}
 // CHECK:STDOUT:   %Main.D: type = import_ref Main//import_generic_decl, D, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %Main.J: %J.type.2b8 = import_ref Main//import_generic_decl, J, loaded [concrete = constants.%J.generic]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//import_generic_decl, loc5_13, loaded [symbolic = @J.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.379 = import_ref Main//import_generic_decl, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.379 = import_ref Main//import_generic_decl, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//import_generic_decl, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//import_generic_decl, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//import_generic_decl, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//import_generic_decl, loc11_14, loaded [symbolic = @D.as.J.impl.bff622.1.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.aa9f8a.1: type = import_ref Main//import_generic_decl, loc11_24, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %Main.import_ref.f33: type = import_ref Main//import_generic_decl, loc11_32, loaded [symbolic = @D.as.J.impl.bff622.1.%J.type (constants.%J.type.8a0)]

+ 28 - 28
toolchain/check/testdata/impl/import_interface_assoc_const.carbon

@@ -330,12 +330,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -418,12 +418,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -523,12 +523,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -622,12 +622,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -735,7 +735,7 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I = import_ref Main//interface, I, unloaded
 // CHECK:STDOUT:   %Main.I3: type = import_ref Main//interface, I3, loaded [concrete = constants.%I3.type]
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.5be = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.5be = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f5f: %I3.assoc_type = import_ref Main//interface, loc6_9, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.import_ref.680: %I3.assoc_type = import_ref Main//interface, loc7_9, loaded [concrete = constants.%assoc1]
 // CHECK:STDOUT:   %Main.import_ref.181: %I3.assoc_type = import_ref Main//interface, loc8_9, loaded [concrete = constants.%assoc2]
@@ -744,13 +744,13 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.T3 = import_ref Main//interface, T3, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5fb: type = import_ref Main//interface, loc6_9, loaded [concrete = %T1]
 // CHECK:STDOUT:   %T1: type = assoc_const_decl @T1 [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.903fbc.1: %I3.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.903fbc.1: %I3.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.e26: type = import_ref Main//interface, loc7_9, loaded [concrete = %T2]
 // CHECK:STDOUT:   %T2: type = assoc_const_decl @T2 [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.903fbc.2: %I3.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.903fbc.2: %I3.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.e32: type = import_ref Main//interface, loc8_9, loaded [concrete = %T3]
 // CHECK:STDOUT:   %T3: type = assoc_const_decl @T3 [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.903fbc.3: %I3.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.903fbc.3: %I3.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -901,12 +901,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -996,12 +996,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T = import_ref Main//interface, T, unloaded
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1089,12 +1089,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T = import_ref Main//interface, T, unloaded
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1181,12 +1181,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T = import_ref Main//interface, T, unloaded
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1273,12 +1273,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T = import_ref Main//interface, T, unloaded
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1367,12 +1367,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//interface, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType = import_ref Main//interface, NonType, unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.4fb: %I.assoc_type = import_ref Main//interface, loc3_20, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.T: type = import_ref Main//interface, T, loaded [concrete = %T]
 // CHECK:STDOUT:   %Main.import_ref.652: type = import_ref Main//interface, loc3_20, loaded [concrete = %T]
 // CHECK:STDOUT:   %T: type = assoc_const_decl @T [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1467,12 +1467,12 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:   %Main.I = import_ref Main//interface, I, unloaded
 // CHECK:STDOUT:   %Main.I3 = import_ref Main//interface, I3, unloaded
 // CHECK:STDOUT:   %Main.NonType: type = import_ref Main//interface, NonType, loaded [concrete = constants.%NonType.type]
-// CHECK:STDOUT:   %Main.import_ref.275 = import_ref Main//interface, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.275 = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.9fa: %NonType.assoc_type = import_ref Main//interface, loc12_8, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.Y: %struct_type.a.225 = import_ref Main//interface, Y, loaded [concrete = %Y]
 // CHECK:STDOUT:   %Main.import_ref.f3d: %struct_type.a.225 = import_ref Main//interface, loc12_8, loaded [concrete = %Y]
 // CHECK:STDOUT:   %Y: %struct_type.a.225 = assoc_const_decl @Y [concrete] {}
-// CHECK:STDOUT:   %Main.import_ref.d48: %NonType.type = import_ref Main//interface, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.d48: %NonType.type = import_ref Main//interface, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1599,11 +1599,11 @@ impl CD as IF where .F = 0 {
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.IF: type = import_ref Main//interface_with_function, IF, loaded [concrete = constants.%IF.type]
-// CHECK:STDOUT:   %Main.import_ref.b93 = import_ref Main//interface_with_function, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.b93 = import_ref Main//interface_with_function, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f22: %IF.assoc_type = import_ref Main//interface_with_function, loc3_22, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.F: %IF.F.type = import_ref Main//interface_with_function, F, loaded [concrete = constants.%IF.F]
 // CHECK:STDOUT:   %Main.import_ref.4b7: %IF.F.type = import_ref Main//interface_with_function, loc3_22, loaded [concrete = constants.%IF.F]
-// CHECK:STDOUT:   %Main.import_ref.96e: %IF.type = import_ref Main//interface_with_function, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.96e: %IF.type = import_ref Main//interface_with_function, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 2 - 2
toolchain/check/testdata/impl/import_self.carbon

@@ -144,10 +144,10 @@ fn F(x: (), y: ()) -> () {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.282 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.282 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f99: %Add.assoc_type = import_ref Main//a, loc5_41, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.Op: %Add.Op.type = import_ref Main//a, Op, loaded [concrete = constants.%Add.Op]
-// CHECK:STDOUT:   %Main.import_ref.942: %Add.type = import_ref Main//a, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.942: %Add.type = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.5a3: %Add.Op.type = import_ref Main//a, loc5_41, loaded [concrete = constants.%Add.Op]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 6 - 6
toolchain/check/testdata/impl/import_thunk.carbon

@@ -154,10 +154,10 @@ fn G() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.507 = import_ref Main//a, loc5_14, unloaded
 // CHECK:STDOUT:   %Main.F: %I.F.type = import_ref Main//a, F, loaded [concrete = constants.%I.F]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//a, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.7ee]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.7ee]
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT:   %Core.import_ref.f99: %Destroy.assoc_type = import_ref Core//prelude/parts/destroy, loc{{\d+_\d+}}, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Core.import_ref.725: %Destroy.Op.type = import_ref Core//prelude/parts/destroy, loc{{\d+_\d+}}, loaded [concrete = constants.%Destroy.Op]
@@ -439,12 +439,12 @@ fn G() {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.eb1c17.1: %empty_tuple.type = import_ref Main//b, loc5_9, loaded [symbolic = @C.%X (constants.%X)]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//b, loc5_18, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.572 = import_ref Main//b, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.572 = import_ref Main//b, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c44: %I.assoc_type = import_ref Main//a, loc5_14, loaded [concrete = constants.%assoc0.3f3]
 // CHECK:STDOUT:   %Main.F.8b9 = import_ref Main//a, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.e03: %I.F.type = import_ref Main//a, loc5_14, loaded [concrete = constants.%I.F]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//a, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.7ee]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.7ee]
 // CHECK:STDOUT:   %Main.import_ref.8e1: <witness> = import_ref Main//b, loc7_32, loaded [symbolic = @C.as.I.impl.%I.impl_witness (constants.%I.impl_witness.3ec)]
 // CHECK:STDOUT:   %Main.import_ref.eb1c17.2: %empty_tuple.type = import_ref Main//b, loc7_14, loaded [symbolic = @C.as.I.impl.%Y (constants.%Y)]
 // CHECK:STDOUT:   %Main.import_ref.dbf: type = import_ref Main//b, loc7_25, loaded [symbolic = @C.as.I.impl.%C (constants.%C.13320f.2)]
@@ -454,7 +454,7 @@ fn G() {
 // CHECK:STDOUT:   %Main.import_ref.eb1c17.3: %empty_tuple.type = import_ref Main//b, loc7_14, loaded [symbolic = @C.as.I.impl.%Y (constants.%Y)]
 // CHECK:STDOUT:   %Main.import_ref.eb1c17.4: %empty_tuple.type = import_ref Main//b, loc7_14, loaded [symbolic = @C.as.I.impl.%Y (constants.%Y)]
 // CHECK:STDOUT:   %Main.F.162: @C.as.I.impl.%C.as.I.impl.F.type.1 (%C.as.I.impl.F.type.a1f290.1) = import_ref Main//b, F, loaded [symbolic = @C.as.I.impl.%C.as.I.impl.F.1 (constants.%C.as.I.impl.F.e1c928.1)]
-// CHECK:STDOUT:   %Main.import_ref.a3f: @DestroyT.binding.as_type.as.Destroy.impl.%DestroyT.binding.as_type.as.Destroy.impl.Op.type (%DestroyT.binding.as_type.as.Destroy.impl.Op.type.47d) = import_ref Main//b, inst{{\d+}} [indirect], loaded [symbolic = @DestroyT.binding.as_type.as.Destroy.impl.%DestroyT.binding.as_type.as.Destroy.impl.Op (constants.%DestroyT.binding.as_type.as.Destroy.impl.Op.10b)]
+// CHECK:STDOUT:   %Main.import_ref.a3f: @DestroyT.binding.as_type.as.Destroy.impl.%DestroyT.binding.as_type.as.Destroy.impl.Op.type (%DestroyT.binding.as_type.as.Destroy.impl.Op.type.47d) = import_ref Main//b, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @DestroyT.binding.as_type.as.Destroy.impl.%DestroyT.binding.as_type.as.Destroy.impl.Op (constants.%DestroyT.binding.as_type.as.Destroy.impl.Op.10b)]
 // CHECK:STDOUT:   %Destroy.impl_witness_table = impl_witness_table (%Main.import_ref.a3f), @DestroyT.binding.as_type.as.Destroy.impl [concrete]
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }

+ 3 - 3
toolchain/check/testdata/impl/import_use_generic.carbon

@@ -218,12 +218,12 @@ fn H() -> C({}).(I.F)() {}
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//import_generic, I, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//import_generic, loc4_9, loaded [symbolic = @C.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//import_generic, loc4_20, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//import_generic, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//import_generic, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c44: %I.assoc_type = import_ref Main//import_generic, loc7_9, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %Main.F = import_ref Main//import_generic, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.e03: %I.F.type = import_ref Main//import_generic, loc7_9, loaded [concrete = constants.%I.F]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//import_generic, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//import_generic, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %Main.import_ref.dc1: <witness> = import_ref Main//import_generic, loc10_34, loaded [symbolic = @C.as.I.impl.%I.impl_witness (constants.%I.impl_witness.7f9)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//import_generic, loc10_14, loaded [symbolic = @C.as.I.impl.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.499: type = import_ref Main//import_generic, loc10_27, loaded [symbolic = @C.as.I.impl.%C (constants.%C.f2e)]

+ 19 - 19
toolchain/check/testdata/impl/interface_args.carbon

@@ -469,19 +469,19 @@ fn InstanceC(a: A) -> C {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//action, loc9_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.489 = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.489 = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c55: @Action.%Action.assoc_type (%Action.assoc_type.32e) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%assoc0 (constants.%assoc0.f18741.2)]
 // CHECK:STDOUT:   %Main.Op = import_ref Main//action, Op, unloaded
 // CHECK:STDOUT:   %Main.import_ref.c2f: <witness> = import_ref Main//action, loc12_21, loaded [concrete = constants.%Action.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//action, loc8_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.984: type = import_ref Main//action, loc12_6, loaded [concrete = constants.%A]
 // CHECK:STDOUT:   %Main.import_ref.99f: type = import_ref Main//action, loc12_19, loaded [concrete = constants.%Action.type.74f]
 // CHECK:STDOUT:   %Main.import_ref.8c4 = import_ref Main//action, loc13_23, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.5ae: @Action.%Action.type (%Action.type.aff) = import_ref Main//action, inst{{\d+}} [no loc], loaded [symbolic = @Action.%Self (constants.%Self.2f4)]
+// CHECK:STDOUT:   %Main.import_ref.5ae: @Action.%Action.type (%Action.type.aff) = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Action.%Self (constants.%Self.2f4)]
 // CHECK:STDOUT:   %Main.import_ref.0e3753.1 = import_ref Main//action, loc5_22, unloaded
 // CHECK:STDOUT:   %Main.import_ref.1f6: @Action.%Action.Op.type (%Action.Op.type.036) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%Action.Op (constants.%Action.Op.6ed)]
 // CHECK:STDOUT:   %Main.import_ref.0e3753.2 = import_ref Main//action, loc5_22, unloaded
@@ -649,23 +649,23 @@ fn InstanceC(a: A) -> C {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//action, loc9_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.489 = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.489 = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c55: @Action.%Action.assoc_type (%Action.assoc_type.32e) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%assoc0 (constants.%assoc0.f18)]
 // CHECK:STDOUT:   %Main.Op = import_ref Main//action, Op, unloaded
 // CHECK:STDOUT:   %Main.import_ref.7bf = import_ref Main//action, loc12_21, unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//action, loc8_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.984: type = import_ref Main//action, loc12_6, loaded [concrete = constants.%A]
 // CHECK:STDOUT:   %Main.import_ref.99f: type = import_ref Main//action, loc12_19, loaded [concrete = constants.%Action.type.74f]
 // CHECK:STDOUT:   %Main.import_ref.8c4 = import_ref Main//action, loc13_23, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//action, loc4_18, loaded [symbolic = @Action.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.5ae: @Action.%Action.type (%Action.type.aff) = import_ref Main//action, inst{{\d+}} [no loc], loaded [symbolic = @Action.%Self (constants.%Self.2f4)]
+// CHECK:STDOUT:   %Main.import_ref.5ae: @Action.%Action.type (%Action.type.aff) = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Action.%Self (constants.%Self.2f4)]
 // CHECK:STDOUT:   %Main.import_ref.1f6: @Action.%Action.Op.type (%Action.Op.type.036) = import_ref Main//action, loc5_22, loaded [symbolic = @Action.%Action.Op (constants.%Action.Op.6ed)]
 // CHECK:STDOUT:   %Main.import_ref.0e3753.1 = import_ref Main//action, loc5_22, unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.3: <witness> = import_ref Main//action, loc10_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//action, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//action, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.0e3753.2 = import_ref Main//action, loc5_22, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -1099,25 +1099,25 @@ fn InstanceC(a: A) -> C {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//factory, loc12_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//factory, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.119 = import_ref Main//factory, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.119 = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.46c: @Factory.%Factory.assoc_type (%Factory.assoc_type.207) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%assoc0 (constants.%assoc0.46d25f.2)]
 // CHECK:STDOUT:   %Main.import_ref.2e4: @Factory.%Factory.assoc_type (%Factory.assoc_type.207) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%assoc1 (constants.%assoc1.16541d.2)]
 // CHECK:STDOUT:   %Main.Make = import_ref Main//factory, Make, unloaded
 // CHECK:STDOUT:   %Main.Method = import_ref Main//factory, Method, unloaded
 // CHECK:STDOUT:   %Main.import_ref.a6e: <witness> = import_ref Main//factory, loc14_22, loaded [concrete = constants.%Factory.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//factory, loc11_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//factory, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.984: type = import_ref Main//factory, loc14_6, loaded [concrete = constants.%A]
 // CHECK:STDOUT:   %Main.import_ref.e91: type = import_ref Main//factory, loc14_20, loaded [concrete = constants.%Factory.type.3cb]
 // CHECK:STDOUT:   %Main.import_ref.22f = import_ref Main//factory, loc15_17, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5a9 = import_ref Main//factory, loc16_31, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.85368a.1: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{\d+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
+// CHECK:STDOUT:   %Main.import_ref.85368a.1: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
 // CHECK:STDOUT:   %Main.import_ref.21018a.1 = import_ref Main//factory, loc6_17, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.3: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.85368a.2: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{\d+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
+// CHECK:STDOUT:   %Main.import_ref.85368a.2: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
 // CHECK:STDOUT:   %Main.import_ref.46fc3c.1 = import_ref Main//factory, loc8_31, unloaded
 // CHECK:STDOUT:   %Main.import_ref.1aa: @Factory.%Factory.Make.type (%Factory.Make.type.598) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%Factory.Make (constants.%Factory.Make.737)]
 // CHECK:STDOUT:   %Main.import_ref.5be: @Factory.%Factory.Method.type (%Factory.Method.type.7ee) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%Factory.Method (constants.%Factory.Method.a71)]
@@ -1354,25 +1354,25 @@ fn InstanceC(a: A) -> C {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//factory, loc12_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//factory, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.54a = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.119 = import_ref Main//factory, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.119 = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.46c: @Factory.%Factory.assoc_type (%Factory.assoc_type.207) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%assoc0 (constants.%assoc0.46d)]
 // CHECK:STDOUT:   %Main.import_ref.2e4: @Factory.%Factory.assoc_type (%Factory.assoc_type.207) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%assoc1 (constants.%assoc1.165)]
 // CHECK:STDOUT:   %Main.Make = import_ref Main//factory, Make, unloaded
 // CHECK:STDOUT:   %Main.Method = import_ref Main//factory, Method, unloaded
 // CHECK:STDOUT:   %Main.import_ref.42c = import_ref Main//factory, loc14_22, unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//factory, loc11_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//factory, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.da3 = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.984: type = import_ref Main//factory, loc14_6, loaded [concrete = constants.%A]
 // CHECK:STDOUT:   %Main.import_ref.e91: type = import_ref Main//factory, loc14_20, loaded [concrete = constants.%Factory.type.3cb]
 // CHECK:STDOUT:   %Main.import_ref.22f = import_ref Main//factory, loc15_17, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5a9 = import_ref Main//factory, loc16_31, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.85368a.1: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{\d+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
+// CHECK:STDOUT:   %Main.import_ref.85368a.1: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
 // CHECK:STDOUT:   %Main.import_ref.1aa: @Factory.%Factory.Make.type (%Factory.Make.type.598) = import_ref Main//factory, loc6_17, loaded [symbolic = @Factory.%Factory.Make (constants.%Factory.Make.737)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.3: type = import_ref Main//factory, loc4_19, loaded [symbolic = @Factory.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.85368a.2: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{\d+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
+// CHECK:STDOUT:   %Main.import_ref.85368a.2: @Factory.%Factory.type (%Factory.type.82b) = import_ref Main//factory, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @Factory.%Self (constants.%Self.f7c)]
 // CHECK:STDOUT:   %Main.import_ref.5be: @Factory.%Factory.Method.type (%Factory.Method.type.7ee) = import_ref Main//factory, loc8_31, loaded [symbolic = @Factory.%Factory.Method (constants.%Factory.Method.a71)]
 // CHECK:STDOUT:   %Main.import_ref.21018a.1 = import_ref Main//factory, loc6_17, unloaded
 // CHECK:STDOUT:   %Main.import_ref.46fc3c.1 = import_ref Main//factory, loc8_31, unloaded

+ 46 - 46
toolchain/check/testdata/impl/lookup/import.carbon

@@ -387,12 +387,12 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %PackageA.C: type = import_ref PackageA//default, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.HasF: type = import_ref PackageA//default, HasF, loaded [concrete = constants.%HasF.type]
-// CHECK:STDOUT:   %PackageA.import_ref.848 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.848 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.c63 = import_ref PackageA//default, loc5_21, unloaded
 // CHECK:STDOUT:   %PackageA.F: %HasF.F.type = import_ref PackageA//default, F, loaded [concrete = constants.%HasF.F]
-// CHECK:STDOUT:   %PackageA.import_ref.0b6: %HasF.type = import_ref PackageA//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.d86]
+// CHECK:STDOUT:   %PackageA.import_ref.0b6: %HasF.type = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.d86]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -615,13 +615,13 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %PackageA.C: type = import_ref PackageA//default, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.HasF: type = import_ref PackageA//default, HasF, loaded [concrete = constants.%HasF.type]
-// CHECK:STDOUT:   %PackageA.import_ref.848 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.848 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.b36: %HasF.assoc_type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %PackageA.F = import_ref PackageA//default, F, unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.ab2: %HasF.F.type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%HasF.F]
-// CHECK:STDOUT:   %PackageA.import_ref.0b6: %HasF.type = import_ref PackageA//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %PackageA.import_ref.0b6: %HasF.type = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %PackageA.import_ref.a12: <witness> = import_ref PackageA//default, loc11_16, loaded [concrete = constants.%HasF.impl_witness]
 // CHECK:STDOUT:   %PackageA.import_ref.29a: type = import_ref PackageA//default, loc11_6, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageA.import_ref.e8c: type = import_ref PackageA//default, loc11_11, loaded [concrete = constants.%HasF.type]
@@ -738,16 +738,16 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %PackageB.D: type = import_ref PackageB//default, D, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %PackageB.import_ref.8f2: <witness> = import_ref PackageB//default, loc10_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageB.import_ref.cab = import_ref PackageB//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageB.import_ref.cab = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.HasF: type = import_ref PackageA//default, HasF, loaded [concrete = constants.%HasF.type]
-// CHECK:STDOUT:   %PackageA.import_ref.848 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.848 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.b36: %HasF.assoc_type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %PackageA.F = import_ref PackageA//default, F, unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.ab2: %HasF.F.type = import_ref PackageA//default, loc5_21, loaded [concrete = constants.%HasF.F]
-// CHECK:STDOUT:   %PackageA.import_ref.0b6: %HasF.type = import_ref PackageA//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %PackageA.import_ref.0b6: %HasF.type = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %PackageA.import_ref.54d = import_ref PackageA//default, loc11_16, unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageA.import_ref.29a: type = import_ref PackageA//default, loc11_6, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageA.import_ref.e8c: type = import_ref PackageA//default, loc11_11, loaded [concrete = constants.%HasF.type]
 // CHECK:STDOUT:   %PackageB.import_ref.5e6: <witness> = import_ref PackageB//default, loc18_25, loaded [concrete = constants.%HasF.impl_witness]
@@ -880,19 +880,19 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %PackageA.C: type = import_ref PackageA//default, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageA.import_ref.8f2: <witness> = import_ref PackageA//default, loc8_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageA.import_ref.2c4 = import_ref PackageA//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageB.HasG: type = import_ref PackageB//default, HasG, loaded [concrete = constants.%HasG.type]
-// CHECK:STDOUT:   %PackageB.import_ref.c0d = import_ref PackageB//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageB.import_ref.c0d = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.6c2: %HasG.assoc_type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %PackageB.G = import_ref PackageB//default, G, unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.70a: %HasG.G.type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%HasG.G]
-// CHECK:STDOUT:   %PackageB.import_ref.4b1: %HasG.type = import_ref PackageB//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %PackageB.import_ref.4b1: %HasG.type = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %PackageB.import_ref.f06: <witness> = import_ref PackageB//default, loc13_25, loaded [concrete = constants.%HasG.impl_witness]
 // CHECK:STDOUT:   %PackageB.import_ref.dfb: type = import_ref PackageB//default, loc13_14, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageB.import_ref.cee586.1: type = import_ref PackageB//default, loc13_20, loaded [concrete = constants.%HasG.type]
 // CHECK:STDOUT:   %PackageB.import_ref.25f = import_ref PackageB//default, loc23_16, unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.8f2: <witness> = import_ref PackageB//default, loc10_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageB.import_ref.cab = import_ref PackageB//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageB.import_ref.cab = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.aa9: type = import_ref PackageB//default, loc23_6, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %PackageB.import_ref.cee586.2: type = import_ref PackageB//default, loc23_11, loaded [concrete = constants.%HasG.type]
 // CHECK:STDOUT:   %PackageB.import_ref.872: %C.as.HasG.impl.G.type = import_ref PackageB//default, loc14_22, loaded [concrete = constants.%C.as.HasG.impl.G]
@@ -1019,16 +1019,16 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %PackageB.D: type = import_ref PackageB//default, D, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %PackageB.import_ref.8f2: <witness> = import_ref PackageB//default, loc10_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageB.import_ref.cab = import_ref PackageB//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageB.import_ref.cab = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageB.HasG: type = import_ref PackageB//default, HasG, loaded [concrete = constants.%HasG.type]
-// CHECK:STDOUT:   %PackageB.import_ref.c0d = import_ref PackageB//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageB.import_ref.c0d = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.6c2: %HasG.assoc_type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %PackageB.G = import_ref PackageB//default, G, unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.70a: %HasG.G.type = import_ref PackageB//default, loc7_21, loaded [concrete = constants.%HasG.G]
-// CHECK:STDOUT:   %PackageB.import_ref.4b1: %HasG.type = import_ref PackageB//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %PackageB.import_ref.4b1: %HasG.type = import_ref PackageB//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %PackageB.import_ref.f94 = import_ref PackageB//default, loc13_25, unloaded
-// CHECK:STDOUT:   %PackageB.import_ref.8db: <witness> = import_ref PackageB//default, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %PackageB.import_ref.6a9 = import_ref PackageB//default, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %PackageB.import_ref.8db: <witness> = import_ref PackageB//default, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %PackageB.import_ref.6a9 = import_ref PackageB//default, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT:   %PackageB.import_ref.dfb: type = import_ref PackageB//default, loc13_14, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %PackageB.import_ref.cee586.1: type = import_ref PackageB//default, loc13_20, loaded [concrete = constants.%HasG.type]
 // CHECK:STDOUT:   %PackageB.import_ref.179: <witness> = import_ref PackageB//default, loc23_16, loaded [concrete = constants.%HasG.impl_witness]
@@ -1254,11 +1254,11 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:     import PackageAssociatedInterface//default
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %PackageAssociatedInterface.Z: type = import_ref PackageAssociatedInterface//default, Z, loaded [concrete = constants.%Z.type]
-// CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.362 = import_ref PackageAssociatedInterface//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.362 = import_ref PackageAssociatedInterface//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.609: %Z.assoc_type = import_ref PackageAssociatedInterface//default, loc5_21, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %PackageAssociatedInterface.H = import_ref PackageAssociatedInterface//default, H, unloaded
 // CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.250: %Z.H.type = import_ref PackageAssociatedInterface//default, loc5_21, loaded [concrete = constants.%Z.H]
-// CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.863: %Z.type = import_ref PackageAssociatedInterface//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.863: %Z.type = import_ref PackageAssociatedInterface//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.915: <witness> = import_ref PackageAssociatedInterface//default, loc8_14, loaded [concrete = constants.%Z.impl_witness]
 // CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.e5c: type = import_ref PackageAssociatedInterface//default, loc8_7, loaded [concrete = constants.%empty_tuple.type]
 // CHECK:STDOUT:   %PackageAssociatedInterface.import_ref.df1: type = import_ref PackageAssociatedInterface//default, loc8_12, loaded [concrete = constants.%Z.type]
@@ -1500,12 +1500,12 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   %PackageHasParam.import_ref.5ab: type = import_ref PackageHasParam//default, loc4_16, loaded [symbolic = @AnyParam.%T (constants.%T)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.34c: @AnyParam.%T (%T) = import_ref PackageHasParam//default, loc4_26, loaded [symbolic = @AnyParam.%X (constants.%X)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.8f2: <witness> = import_ref PackageHasParam//default, loc4_34, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
 // CHECK:STDOUT:   %PackageHasParam.K: %Y.K.type = import_ref PackageHasParam//default, K, loaded [concrete = constants.%Y.K]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.2f4]
+// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.2f4]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }
@@ -1737,16 +1737,16 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   %PackageHasParam.import_ref.5ab: type = import_ref PackageHasParam//default, loc4_16, loaded [symbolic = @AnyParam.%T (constants.%T)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.34c: @AnyParam.%T (%T) = import_ref PackageHasParam//default, loc4_26, loaded [symbolic = @AnyParam.%X (constants.%X)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.8f2: <witness> = import_ref PackageHasParam//default, loc4_34, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageGenericInterface.GenericInterface: %GenericInterface.type.0da = import_ref PackageGenericInterface//default, GenericInterface, loaded [concrete = constants.%GenericInterface.generic]
 // CHECK:STDOUT:   %PackageGenericInterface.import_ref.5ab: type = import_ref PackageGenericInterface//default, loc6_28, loaded [symbolic = @GenericInterface.%U (constants.%U)]
-// CHECK:STDOUT:   %PackageGenericInterface.import_ref.b37 = import_ref PackageGenericInterface//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageGenericInterface.import_ref.b37 = import_ref PackageGenericInterface//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
 // CHECK:STDOUT:   %PackageHasParam.K = import_ref PackageHasParam//default, K, unloaded
 // CHECK:STDOUT:   %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.2f4]
+// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.2f4]
 // CHECK:STDOUT:   %PackageGenericInterface.import_ref.ba6: <witness> = import_ref PackageGenericInterface//default, loc8_70, loaded [concrete = constants.%Y.impl_witness]
 // CHECK:STDOUT:   %PackageGenericInterface.import_ref.321: type = import_ref PackageGenericInterface//default, loc8_47, loaded [concrete = constants.%AnyParam.861]
 // CHECK:STDOUT:   %PackageGenericInterface.import_ref.ca6: type = import_ref PackageGenericInterface//default, loc8_67, loaded [concrete = constants.%Y.type]
@@ -1945,12 +1945,12 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   %PackageHasParam.import_ref.5ab: type = import_ref PackageHasParam//default, loc4_16, loaded [symbolic = @AnyParam.%T (constants.%T)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.34c: @AnyParam.%T (%T) = import_ref PackageHasParam//default, loc4_26, loaded [symbolic = @AnyParam.%X (constants.%X)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.8f2: <witness> = import_ref PackageHasParam//default, loc4_34, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
 // CHECK:STDOUT:   %PackageHasParam.K: %Y.K.type = import_ref PackageHasParam//default, K, loaded [concrete = constants.%Y.K]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.2f4]
+// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.2f4]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
 // CHECK:STDOUT:   %Core.Destroy: type = import_ref Core//prelude/parts/destroy, Destroy, loaded [concrete = constants.%Destroy.type]
 // CHECK:STDOUT: }
@@ -2178,17 +2178,17 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   %PackageHasParam.import_ref.5ab: type = import_ref PackageHasParam//default, loc4_16, loaded [symbolic = @AnyParam.%T (constants.%T)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.34c: @AnyParam.%T (%T) = import_ref PackageHasParam//default, loc4_26, loaded [symbolic = @AnyParam.%X (constants.%X)]
 // CHECK:STDOUT:   %PackageHasParam.import_ref.8f2: <witness> = import_ref PackageHasParam//default, loc4_34, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.601 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageGenericClass.GenericClass: %GenericClass.type = import_ref PackageGenericClass//default, GenericClass, loaded [concrete = constants.%GenericClass.generic]
 // CHECK:STDOUT:   %PackageGenericClass.import_ref.5ab: type = import_ref PackageGenericClass//default, loc6_20, loaded [symbolic = @GenericClass.%U (constants.%U)]
 // CHECK:STDOUT:   %PackageGenericClass.import_ref.8f2: <witness> = import_ref PackageGenericClass//default, loc6_31, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %PackageGenericClass.import_ref.065 = import_ref PackageGenericClass//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageGenericClass.import_ref.065 = import_ref PackageGenericClass//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.Y: type = import_ref PackageHasParam//default, Y, loaded [concrete = constants.%Y.type]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %PackageHasParam.import_ref.0f3 = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %PackageHasParam.import_ref.f69: %Y.assoc_type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%assoc0.494]
 // CHECK:STDOUT:   %PackageHasParam.K = import_ref PackageHasParam//default, K, unloaded
 // CHECK:STDOUT:   %PackageHasParam.import_ref.ce2: %Y.K.type = import_ref PackageHasParam//default, loc7_22, loaded [concrete = constants.%Y.K]
-// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.2f4]
+// CHECK:STDOUT:   %PackageHasParam.import_ref.28c: %Y.type = import_ref PackageHasParam//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.2f4]
 // CHECK:STDOUT:   %PackageGenericClass.import_ref.812: <witness> = import_ref PackageGenericClass//default, loc8_66, loaded [concrete = constants.%Y.impl_witness]
 // CHECK:STDOUT:   %PackageGenericClass.import_ref.a0e: type = import_ref PackageGenericClass//default, loc8_43, loaded [concrete = constants.%AnyParam.d71]
 // CHECK:STDOUT:   %PackageGenericClass.import_ref.ca6: type = import_ref PackageGenericClass//default, loc8_63, loaded [concrete = constants.%Y.type]
@@ -2621,22 +2621,22 @@ fn Test(c: HasExtraInterfaces.C(type)) {
 // CHECK:STDOUT:   %HasExtraInterfaces.C: %C.type = import_ref HasExtraInterfaces//default, C, loaded [concrete = constants.%C.generic]
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.5ab: type = import_ref HasExtraInterfaces//default, loc13_9, loaded [symbolic = @C.%T (constants.%T)]
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.8f2: <witness> = import_ref HasExtraInterfaces//default, loc13_20, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.4c0 = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.4c0 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %HasExtraInterfaces.I: type = import_ref HasExtraInterfaces//default, I, loaded [concrete = constants.%I.type]
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.8e7 = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.8e7 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.be9: %I.assoc_type = import_ref HasExtraInterfaces//default, loc14_33, loaded [concrete = constants.%assoc0]
 // CHECK:STDOUT:   %HasExtraInterfaces.F = import_ref HasExtraInterfaces//default, F, unloaded
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.d54: %I.F.type = import_ref HasExtraInterfaces//default, loc14_33, loaded [concrete = constants.%I.F]
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.59a: %I.type = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.caa]
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.59a: %I.type = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.caa]
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.80c = import_ref HasExtraInterfaces//default, loc16_79, unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.23a = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.a8e = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.8be = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.04c = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.29b = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.330 = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.636 = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.d01 = import_ref HasExtraInterfaces//default, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.23a = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.a8e = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.8be = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.04c = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.29b = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.330 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.636 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %HasExtraInterfaces.import_ref.d01 = import_ref HasExtraInterfaces//default, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.ef7: type = import_ref HasExtraInterfaces//default, loc16_72, loaded [concrete = constants.%C.c07]
 // CHECK:STDOUT:   %HasExtraInterfaces.import_ref.301: type = import_ref HasExtraInterfaces//default, loc16_77, loaded [concrete = constants.%I.type]
 // CHECK:STDOUT: }

+ 16 - 16
toolchain/check/testdata/impl/lookup/specific_args.carbon

@@ -220,13 +220,13 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
 // CHECK:STDOUT:   %Main.C = import_ref Main//types, C, unloaded
 // CHECK:STDOUT:   %Main.X: type = import_ref Main//types, X, loaded [concrete = constants.%X]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.2bb = import_ref Main//types, loc4_43, unloaded
 // CHECK:STDOUT:   %Main.F: @I.%I.F.type (%I.F.type.2ae) = import_ref Main//types, F, loaded [symbolic = @I.%I.F (constants.%I.F.bb2)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{\d+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
+// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
 // CHECK:STDOUT:   %Main.import_ref.479 = import_ref Main//types, loc4_43, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -387,16 +387,16 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
 // CHECK:STDOUT:   %Main.X: type = import_ref Main//types, X, loaded [concrete = constants.%X]
 // CHECK:STDOUT:   %Main.InInterfaceArgs: type = import_ref Main//impl_in_interface_args, InInterfaceArgs, loaded [concrete = constants.%InInterfaceArgs]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.474: @I.%I.assoc_type (%I.assoc_type.1e5) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%assoc0 (constants.%assoc0.688)]
 // CHECK:STDOUT:   %Main.F = import_ref Main//types, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{\d+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
+// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
 // CHECK:STDOUT:   %Main.import_ref.e54: @I.%I.F.type (%I.F.type.2ae) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%I.F (constants.%I.F.bb2)]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//impl_in_interface_args, loc5_24, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.bf8 = import_ref Main//impl_in_interface_args, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.bf8 = import_ref Main//impl_in_interface_args, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.479 = import_ref Main//types, loc4_43, unloaded
 // CHECK:STDOUT:   %Main.import_ref.7c8: <witness> = import_ref Main//impl_in_interface_args, loc7_30, loaded [concrete = constants.%I.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.956: type = import_ref Main//impl_in_interface_args, loc7_6, loaded [concrete = constants.%X]
@@ -552,16 +552,16 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
 // CHECK:STDOUT:   %Main.X: type = import_ref Main//types, X, loaded [concrete = constants.%X]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//types, loc5_9, loaded [symbolic = @C.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//types, loc5_20, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.2bb = import_ref Main//types, loc4_43, unloaded
 // CHECK:STDOUT:   %Main.F: @I.%I.F.type (%I.F.type.2ae) = import_ref Main//types, F, loaded [symbolic = @I.%I.F (constants.%I.F.bb2)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.3: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{\d+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
+// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
 // CHECK:STDOUT:   %Main.import_ref.479 = import_ref Main//types, loc4_43, unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -750,18 +750,18 @@ fn H(c: C(InClassArgs)) { c.(I(X).F)(); }
 // CHECK:STDOUT:   %Main.InClassArgs: type = import_ref Main//impl_in_class_args, InClassArgs, loaded [concrete = constants.%InClassArgs]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//types, loc5_9, loaded [symbolic = @C.%T (constants.%T)]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//types, loc5_20, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.4c0 = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//impl_in_class_args, loc5_20, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.683 = import_ref Main//impl_in_class_args, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.683 = import_ref Main//impl_in_class_args, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eee = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.474: @I.%I.assoc_type (%I.assoc_type.1e5) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%assoc0 (constants.%assoc0.688)]
 // CHECK:STDOUT:   %Main.F = import_ref Main//types, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.3: type = import_ref Main//types, loc4_13, loaded [symbolic = @I.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{\d+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
+// CHECK:STDOUT:   %Main.import_ref.b2e: @I.%I.type (%I.type.b13) = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @I.%Self (constants.%Self.dae)]
 // CHECK:STDOUT:   %Main.import_ref.e54: @I.%I.F.type (%I.F.type.2ae) = import_ref Main//types, loc4_43, loaded [symbolic = @I.%I.F (constants.%I.F.bb2)]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.3: <witness> = import_ref Main//types, loc7_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.acf = import_ref Main//types, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.479 = import_ref Main//types, loc4_43, unloaded
 // CHECK:STDOUT:   %Main.import_ref.56c: <witness> = import_ref Main//impl_in_class_args, loc7_29, loaded [concrete = constants.%I.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.d6e: type = import_ref Main//impl_in_class_args, loc7_19, loaded [concrete = constants.%C.23b]

+ 7 - 7
toolchain/check/testdata/impl/lookup/transitive.carbon

@@ -137,10 +137,10 @@ fn Call() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//i, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.507 = import_ref Main//i, loc4_33, unloaded
 // CHECK:STDOUT:   %Main.F: %I.F.type = import_ref Main//i, F, loaded [concrete = constants.%I.F]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//i, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -233,7 +233,7 @@ fn Call() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//c, loc6_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//c, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//c, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -304,13 +304,13 @@ fn Call() {
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//get, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//get, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//i, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8db: <witness> = import_ref Main//get, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.357]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//get, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.8e7 = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c44: %I.assoc_type = import_ref Main//i, loc4_33, loaded [concrete = constants.%assoc0.3f3]
 // CHECK:STDOUT:   %Main.F = import_ref Main//i, F, unloaded
 // CHECK:STDOUT:   %Main.import_ref.e03: %I.F.type = import_ref Main//i, loc4_33, loaded [concrete = constants.%I.F]
-// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//i, inst{{\d+}} [no loc], loaded [symbolic = constants.%Self.7ee]
+// CHECK:STDOUT:   %Main.import_ref.de2: %I.type = import_ref Main//i, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = constants.%Self.7ee]
 // CHECK:STDOUT:   %Main.import_ref.f2d: <witness> = import_ref Main//c, loc7_13, loaded [concrete = constants.%I.impl_witness]
 // CHECK:STDOUT:   %Main.import_ref.29a: type = import_ref Main//c, loc7_6, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.f50: type = import_ref Main//c, loc7_11, loaded [concrete = constants.%I.type]

+ 3 - 3
toolchain/check/testdata/impl/no_definition_in_impl_file.carbon

@@ -146,7 +146,7 @@ impl () as D;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.A: type = import_ref Main//decl_in_api_definition_in_impl, A, loaded [concrete = constants.%A.type]
-// CHECK:STDOUT:   %Main.import_ref.9ac = import_ref Main//decl_in_api_definition_in_impl, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.9ac = import_ref Main//decl_in_api_definition_in_impl, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e5c: type = import_ref Main//decl_in_api_definition_in_impl, loc10_7, loaded [concrete = constants.%empty_tuple.type]
 // CHECK:STDOUT:   %Main.import_ref.831: type = import_ref Main//decl_in_api_definition_in_impl, loc10_12, loaded [concrete = constants.%A.type]
 // CHECK:STDOUT: }
@@ -246,7 +246,7 @@ impl () as D;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.B = import_ref Main//decl_only_in_api, B, unloaded
-// CHECK:STDOUT:   %Main.import_ref.5bd = import_ref Main//decl_only_in_api, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.5bd = import_ref Main//decl_only_in_api, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e5c: type = import_ref Main//decl_only_in_api, loc10_7, loaded [concrete = constants.%empty_tuple.type]
 // CHECK:STDOUT:   %Main.import_ref.171: type = import_ref Main//decl_only_in_api, loc10_12, loaded [concrete = constants.%B.type]
 // CHECK:STDOUT: }
@@ -309,7 +309,7 @@ impl () as D;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//decl_in_api_decl_in_impl, C, loaded [concrete = constants.%C.type]
-// CHECK:STDOUT:   %Main.import_ref.11f = import_ref Main//decl_in_api_decl_in_impl, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.11f = import_ref Main//decl_in_api_decl_in_impl, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e5c: type = import_ref Main//decl_in_api_decl_in_impl, loc10_7, loaded [concrete = constants.%empty_tuple.type]
 // CHECK:STDOUT:   %Main.import_ref.653: type = import_ref Main//decl_in_api_decl_in_impl, loc10_12, loaded [concrete = constants.%C.type]
 // CHECK:STDOUT: }

+ 2 - 2
toolchain/check/testdata/interface/export_name.carbon

@@ -72,7 +72,7 @@ fn UseEmpty(i: I) {}
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//base, I, loaded [concrete = constants.%I.type]
-// CHECK:STDOUT:   %Main.import_ref = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -100,7 +100,7 @@ fn UseEmpty(i: I) {}
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.I: type = import_ref Main//export, I, loaded [concrete = constants.%I.type]
-// CHECK:STDOUT:   %Main.import_ref = import_ref Main//export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 2 - 2
toolchain/check/testdata/interface/generic_import.carbon

@@ -123,11 +123,11 @@ impl C as AddWith(C) {
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.AddWith: %AddWith.type.b35 = import_ref Main//a, AddWith, loaded [concrete = constants.%AddWith.generic]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.1: type = import_ref Main//a, loc4_19, loaded [symbolic = @AddWith.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.a58 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.a58 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.c77 = import_ref Main//a, loc5_9, unloaded
 // CHECK:STDOUT:   %Main.F: @AddWith.%AddWith.F.type (%AddWith.F.type.fbc) = import_ref Main//a, F, loaded [symbolic = @AddWith.%AddWith.F (constants.%AddWith.F.be3)]
 // CHECK:STDOUT:   %Main.import_ref.5ab3ec.2: type = import_ref Main//a, loc4_19, loaded [symbolic = @AddWith.%T (constants.%T)]
-// CHECK:STDOUT:   %Main.import_ref.7fc: @AddWith.%AddWith.type (%AddWith.type.483) = import_ref Main//a, inst{{\d+}} [no loc], loaded [symbolic = @AddWith.%Self (constants.%Self.cc4)]
+// CHECK:STDOUT:   %Main.import_ref.7fc: @AddWith.%AddWith.type (%AddWith.type.483) = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @AddWith.%Self (constants.%Self.cc4)]
 // CHECK:STDOUT:   %Main.import_ref.0c5 = import_ref Main//a, loc5_9, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 3 - 3
toolchain/check/testdata/interface/import.carbon

@@ -220,13 +220,13 @@ var f: ForwardDeclared* = &f_ref.f;
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Main.import_ref.96f = import_ref Main//a, inst{{\d+}} [no loc], unloaded
-// CHECK:STDOUT:   %Main.import_ref.834 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.96f = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.834 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.3d5: %Basic.assoc_type = import_ref Main//a, loc8_8, loaded [concrete = constants.%assoc0.fee]
 // CHECK:STDOUT:   %Main.import_ref.760: %Basic.assoc_type = import_ref Main//a, loc9_9, loaded [concrete = constants.%assoc1.4ea]
 // CHECK:STDOUT:   %Main.T.44f = import_ref Main//a, T, unloaded
 // CHECK:STDOUT:   %Main.F.eea = import_ref Main//a, F, unloaded
-// CHECK:STDOUT:   %Main.import_ref.013 = import_ref Main//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.013 = import_ref Main//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.ad1: %ForwardDeclared.assoc_type = import_ref Main//a, loc16_8, loaded [concrete = constants.%assoc0.d40]
 // CHECK:STDOUT:   %Main.import_ref.339: %ForwardDeclared.assoc_type = import_ref Main//a, loc17_9, loaded [concrete = constants.%assoc1.e3d]
 // CHECK:STDOUT:   %Main.T.6ee = import_ref Main//a, T, unloaded

+ 2 - 2
toolchain/check/testdata/interface/import_access.carbon

@@ -214,7 +214,7 @@ private interface Redecl {}
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Test.Def: type = import_ref Test//def, Def, loaded [concrete = constants.%Def.type]
-// CHECK:STDOUT:   %Test.import_ref = import_ref Test//def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Test.import_ref = import_ref Test//def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -322,7 +322,7 @@ private interface Redecl {}
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Test.ForwardWithDef: type = import_ref Test//forward_with_def, ForwardWithDef, loaded [concrete = constants.%ForwardWithDef.type]
-// CHECK:STDOUT:   %Test.import_ref = import_ref Test//forward_with_def, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Test.import_ref = import_ref Test//forward_with_def, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/interface/import_interface_decl.carbon

@@ -102,7 +102,7 @@ impl library "[[@TEST_NAME]]";
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.B = import_ref Main//b, B, unloaded
-// CHECK:STDOUT:   %Main.import_ref.5bd = import_ref Main//b, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.5bd = import_ref Main//b, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.e5c: type = import_ref Main//b, loc7_7, loaded [concrete = constants.%empty_tuple.type]
 // CHECK:STDOUT:   %Main.import_ref.171: type = import_ref Main//b, loc7_12, loaded [concrete = constants.%B.type]
 // CHECK:STDOUT: }

+ 2 - 2
toolchain/check/testdata/interface/syntactic_merge.carbon

@@ -632,7 +632,7 @@ interface Foo(a:! const (const C)) {}
 // CHECK:STDOUT:   %Main.Foo: %Foo.type.5380b8.1 = import_ref Main//two_file, Foo, loaded [concrete = constants.%Foo.generic.ec3175.1]
 // CHECK:STDOUT:   %Main.Bar: %Bar.type.982aac.1 = import_ref Main//two_file, Bar, loaded [concrete = constants.%Bar.generic.4bda5e.1]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//two_file, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//two_file, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//two_file, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f97b44.1: %C = import_ref Main//two_file, loc7_15, loaded [symbolic = @Foo.1.%a (constants.%a)]
 // CHECK:STDOUT:   %Main.import_ref.f97b44.2: %C = import_ref Main//two_file, loc8_15, loaded [symbolic = @Bar.1.%a (constants.%a)]
 // CHECK:STDOUT: }
@@ -1060,7 +1060,7 @@ interface Foo(a:! const (const C)) {}
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//alias_two_file, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.Foo: %Foo.type.5380b8.1 = import_ref Main//alias_two_file, Foo, loaded [concrete = constants.%Foo.generic.ec3175.1]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//alias_two_file, loc4_10, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//alias_two_file, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.f97: %C = import_ref Main//alias_two_file, loc6_15, loaded [symbolic = @Foo.1.%a (constants.%a)]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 2 - 2
toolchain/check/testdata/let/compile_time_bindings.carbon

@@ -640,12 +640,12 @@ impl i32 as Empty {
 // CHECK:STDOUT: !members:
 // CHECK:STDOUT:   .Self = constants.%C
 // CHECK:STDOUT:   .F = %C.F.decl
-// CHECK:STDOUT:   .x = <unexpected>.ir3.inst35.loc14_7
+// CHECK:STDOUT:   .x = <unexpected>.inst48000023.loc14_7
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @C.F() -> %empty_tuple.type {
 // CHECK:STDOUT: !entry:
-// CHECK:STDOUT:   %x.ref: %empty_tuple.type = name_ref x, <unexpected>.ir3.inst35.loc14_7
+// CHECK:STDOUT:   %x.ref: %empty_tuple.type = name_ref x, <unexpected>.inst48000023.loc14_7
 // CHECK:STDOUT:   %.loc5_25: init %empty_tuple.type = tuple_init () to %return [concrete = constants.%empty_tuple]
 // CHECK:STDOUT:   %.loc5_26: init %empty_tuple.type = converted %x.ref, %.loc5_25 [concrete = constants.%empty_tuple]
 // CHECK:STDOUT:   return %.loc5_26 to %return

+ 1 - 1
toolchain/check/testdata/let/fail_missing_value.carbon

@@ -50,7 +50,7 @@ fn F() {
 // CHECK:STDOUT: file {
 // CHECK:STDOUT:   package: <namespace> = namespace [concrete] {
 // CHECK:STDOUT:     .Core = imports.%Core
-// CHECK:STDOUT:     .n = <unexpected>.ir0.inst44.loc19_5
+// CHECK:STDOUT:     .n = <unexpected>.inst6000002C.loc19_5
 // CHECK:STDOUT:     .F = %F.decl
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Core.import = import Core

+ 3 - 3
toolchain/check/testdata/namespace/merging_with_indirections.carbon

@@ -105,7 +105,7 @@ fn Run() {
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.import_ref.8f2: <witness> = import_ref Other//a, loc5_14, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.ca8 = import_ref Other//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.ca8 = import_ref Other//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -189,8 +189,8 @@ fn Run() {
 // CHECK:STDOUT:     import Other//a
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.F: %F.type = import_ref Other//b, F, loaded [concrete = constants.%F]
-// CHECK:STDOUT:   %Other.import_ref.8db: <witness> = import_ref Other//b, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %Other.import_ref.bbd = import_ref Other//b, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.8db: <witness> = import_ref Other//b, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.357]
+// CHECK:STDOUT:   %Other.import_ref.bbd = import_ref Other//b, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT:   %Other.NS1: <namespace> = import_ref Other//b, NS1, loaded
 // CHECK:STDOUT:   %NS1.b9a: <namespace> = namespace %Other.NS1, [concrete] {
 // CHECK:STDOUT:     .A = %Other.A

+ 8 - 8
toolchain/check/testdata/operators/builtin/fail_and_or_not_in_function.carbon

@@ -96,7 +96,7 @@ fn F() {
 // CHECK:STDOUT:   %f64: type = class_type @Float, @Float(%int_64) [concrete]
 // CHECK:STDOUT:   %Copy.type: type = facet_type <@Copy> [concrete]
 // CHECK:STDOUT:   %Copy.Op.type: type = fn_type @Copy.Op [concrete]
-// CHECK:STDOUT:   %Copy.impl_witness.de9: <witness> = impl_witness <unexpected>.ir0.inst341 [concrete]
+// CHECK:STDOUT:   %Copy.impl_witness.de9: <witness> = impl_witness <unexpected>.inst60000155 [concrete]
 // CHECK:STDOUT:   %Copy.facet: %Copy.type = facet_value type, (%Copy.impl_witness.de9) [concrete]
 // CHECK:STDOUT:   %.98f: type = fn_type_with_self_type %Copy.Op.type, %Copy.facet [concrete]
 // CHECK:STDOUT:   %type.as.Copy.impl.Op.type: type = fn_type @type.as.Copy.impl.Op [concrete]
@@ -105,7 +105,7 @@ fn F() {
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @F(%b.param: bool) -> type {
 // CHECK:STDOUT: !entry:
-// CHECK:STDOUT:   %b.ref: bool = name_ref b, <unexpected>.ir0.inst27.loc5_6
+// CHECK:STDOUT:   %b.ref: bool = name_ref b, <unexpected>.inst6000001B.loc5_6
 // CHECK:STDOUT:   if %b.ref br !if.expr.then else br !if.expr.else
 // CHECK:STDOUT:
 // CHECK:STDOUT: !if.expr.then:
@@ -123,7 +123,7 @@ fn F() {
 // CHECK:STDOUT:   %impl.elem0: %.98f = impl_witness_access constants.%Copy.impl_witness.de9, element0 [concrete = constants.%type.as.Copy.impl.Op]
 // CHECK:STDOUT:   %bound_method: <bound method> = bound_method %.loc6, %impl.elem0
 // CHECK:STDOUT:   %type.as.Copy.impl.Op.call: init type = call %bound_method(%.loc6)
-// CHECK:STDOUT:   return %type.as.Copy.impl.Op.call to <unexpected>.ir0.inst36.loc5_15
+// CHECK:STDOUT:   return %type.as.Copy.impl.Op.call to <unexpected>.inst60000024.loc5_15
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: --- fail_and_val.carbon
@@ -140,7 +140,7 @@ fn F() {
 // CHECK:STDOUT:   %f64: type = class_type @Float, @Float(%int_64) [concrete]
 // CHECK:STDOUT:   %Copy.type: type = facet_type <@Copy> [concrete]
 // CHECK:STDOUT:   %Copy.Op.type: type = fn_type @Copy.Op [concrete]
-// CHECK:STDOUT:   %Copy.impl_witness.de9: <witness> = impl_witness <unexpected>.ir2.inst341 [concrete]
+// CHECK:STDOUT:   %Copy.impl_witness.de9: <witness> = impl_witness <unexpected>.inst70000155 [concrete]
 // CHECK:STDOUT:   %Copy.facet: %Copy.type = facet_value type, (%Copy.impl_witness.de9) [concrete]
 // CHECK:STDOUT:   %.98f: type = fn_type_with_self_type %Copy.Op.type, %Copy.facet [concrete]
 // CHECK:STDOUT:   %type.as.Copy.impl.Op.type: type = fn_type @type.as.Copy.impl.Op [concrete]
@@ -149,7 +149,7 @@ fn F() {
 // CHECK:STDOUT:
 // CHECK:STDOUT: fn @F(%b.param: bool) -> type {
 // CHECK:STDOUT: !entry:
-// CHECK:STDOUT:   %b.ref: bool = name_ref b, <unexpected>.ir2.inst27.loc5_6
+// CHECK:STDOUT:   %b.ref: bool = name_ref b, <unexpected>.inst7000001B.loc5_6
 // CHECK:STDOUT:   if %b.ref br !if.expr.then else br !if.expr.else
 // CHECK:STDOUT:
 // CHECK:STDOUT: !if.expr.then:
@@ -167,7 +167,7 @@ fn F() {
 // CHECK:STDOUT:   %impl.elem0: %.98f = impl_witness_access constants.%Copy.impl_witness.de9, element0 [concrete = constants.%type.as.Copy.impl.Op]
 // CHECK:STDOUT:   %bound_method: <bound method> = bound_method %.loc6, %impl.elem0
 // CHECK:STDOUT:   %type.as.Copy.impl.Op.call: init type = call %bound_method(%.loc6)
-// CHECK:STDOUT:   return %type.as.Copy.impl.Op.call to <unexpected>.ir2.inst36.loc5_15
+// CHECK:STDOUT:   return %type.as.Copy.impl.Op.call to <unexpected>.inst70000024.loc5_15
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: --- fail_or_val.carbon
@@ -189,7 +189,7 @@ fn F() {
 // CHECK:STDOUT:   %false: bool = bool_literal false [concrete]
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
-// CHECK:STDOUT: generic class @C(<unexpected>.ir4.inst30.loc4_14: bool) {
+// CHECK:STDOUT: generic class @C(<unexpected>.inst6800001E.loc4_14: bool) {
 // CHECK:STDOUT:   %B: bool = bind_symbolic_name B, 0 [symbolic = %B (constants.%B.7dd)]
 // CHECK:STDOUT:
 // CHECK:STDOUT: !definition:
@@ -204,7 +204,7 @@ fn F() {
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: class @B {
-// CHECK:STDOUT:   %C.ref: %C.type = name_ref C, <unexpected>.ir4.inst36.loc4_24 [concrete = constants.%C.generic]
+// CHECK:STDOUT:   %C.ref: %C.type = name_ref C, <unexpected>.inst68000024.loc4_24 [concrete = constants.%C.generic]
 // CHECK:STDOUT:   %true.loc12_20: bool = bool_literal true [concrete = constants.%true]
 // CHECK:STDOUT:   %.loc12: bool = not %true.loc12_20 [concrete = constants.%false]
 // CHECK:STDOUT:   %true.loc12_25: bool = bool_literal true [concrete = constants.%true]

+ 3 - 3
toolchain/check/testdata/operators/overloaded/index.carbon

@@ -113,7 +113,7 @@ fn F() { ()[()]; }
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Core.IndexWith: type = import_ref Core//core_wrong_index_with, IndexWith, loaded [concrete = constants.%IndexWith]
 // CHECK:STDOUT:   %Core.import_ref.8f2: <witness> = import_ref Core//core_wrong_index_with, loc{{\d+_\d+}}, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Core.import_ref.4c7 = import_ref Core//core_wrong_index_with, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.4c7 = import_ref Core//core_wrong_index_with, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -318,12 +318,12 @@ fn F() { ()[()]; }
 // CHECK:STDOUT:   %Core.IndexWith: %IndexWith.type.504 = import_ref Core//core_wrong_arg_count, IndexWith, loaded [concrete = constants.%IndexWith.generic]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.1: type = import_ref Core//core_wrong_arg_count, loc{{\d+_\d+}}, loaded [symbolic = @IndexWith.%SubscriptType (constants.%SubscriptType)]
 // CHECK:STDOUT:   %Core.import_ref.9483a2.1: type = import_ref Core//core_wrong_arg_count, loc{{\d+_\d+}}, loaded [symbolic = @IndexWith.%ElementType (constants.%ElementType)]
-// CHECK:STDOUT:   %Core.import_ref.e1e = import_ref Core//core_wrong_arg_count, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Core.import_ref.e1e = import_ref Core//core_wrong_arg_count, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.import_ref.680 = import_ref Core//core_wrong_arg_count, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT:   %Core.At: @IndexWith.%IndexWith.At.type (%IndexWith.At.type.8ac) = import_ref Core//core_wrong_arg_count, At, loaded [symbolic = @IndexWith.%IndexWith.At (constants.%IndexWith.At.7c9)]
 // CHECK:STDOUT:   %Core.import_ref.5ab3ec.2: type = import_ref Core//core_wrong_arg_count, loc{{\d+_\d+}}, loaded [symbolic = @IndexWith.%SubscriptType (constants.%SubscriptType)]
 // CHECK:STDOUT:   %Core.import_ref.9483a2.2: type = import_ref Core//core_wrong_arg_count, loc{{\d+_\d+}}, loaded [symbolic = @IndexWith.%ElementType (constants.%ElementType)]
-// CHECK:STDOUT:   %Core.import_ref.e58: @IndexWith.%IndexWith.type (%IndexWith.type.433) = import_ref Core//core_wrong_arg_count, inst{{\d+}} [no loc], loaded [symbolic = @IndexWith.%Self (constants.%Self.0d0)]
+// CHECK:STDOUT:   %Core.import_ref.e58: @IndexWith.%IndexWith.type (%IndexWith.type.433) = import_ref Core//core_wrong_arg_count, inst{{[0-9A-F]+}} [no loc], loaded [symbolic = @IndexWith.%Self (constants.%Self.0d0)]
 // CHECK:STDOUT:   %Core.import_ref.88c = import_ref Core//core_wrong_arg_count, loc{{\d+_\d+}}, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 23 - 23
toolchain/check/testdata/packages/cross_package_export.carbon

@@ -295,7 +295,7 @@ alias C = Other.C;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.56d: <witness> = import_ref Other//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Other.import_ref.276 = import_ref Other//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -327,7 +327,7 @@ alias C = Other.C;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.56d: <witness> = import_ref Other//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Other.import_ref.276 = import_ref Other//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -358,9 +358,9 @@ alias C = Other.C;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//export_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -400,7 +400,7 @@ alias C = Other.C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.56d: <witness> = import_ref Other//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Other.import_ref.276 = import_ref Other//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -465,7 +465,7 @@ alias C = Other.C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.56d: <witness> = import_ref Other//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Other.import_ref.276 = import_ref Other//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -530,7 +530,7 @@ alias C = Other.C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Other.import_ref.56d: <witness> = import_ref Other//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2c4 = import_ref Other//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Other.import_ref.276 = import_ref Other//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -592,9 +592,9 @@ alias C = Other.C;
 // CHECK:STDOUT:     import Other//export_name
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//export_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -656,9 +656,9 @@ alias C = Other.C;
 // CHECK:STDOUT:     import Other//export_name_copy
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//export_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -719,9 +719,9 @@ alias C = Other.C;
 // CHECK:STDOUT:     import Other//export_name_indirect
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//export_name_indirect, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Other.import_ref.328: <witness> = import_ref Other//export_name_indirect, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.db8 = import_ref Other//export_name_indirect, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Other.import_ref.3ef = import_ref Other//export_name_indirect, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.328: <witness> = import_ref Other//export_name_indirect, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Other.import_ref.db8 = import_ref Other//export_name_indirect, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.3ef = import_ref Other//export_name_indirect, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -788,9 +788,9 @@ alias C = Other.C;
 // CHECK:STDOUT:     import Other//base
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//export_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -911,9 +911,9 @@ alias C = Other.C;
 // CHECK:STDOUT:     import Other//conflict
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.C: type = import_ref Other//export_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.ad3: <witness> = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Other.import_ref.6a9 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Other.import_ref.f67 = import_ref Other//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 10 - 10
toolchain/check/testdata/packages/export_import.carbon

@@ -306,7 +306,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -364,7 +364,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export_export, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -421,7 +421,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -477,7 +477,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -533,7 +533,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -589,7 +589,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -645,7 +645,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -701,7 +701,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -769,7 +769,7 @@ export Poison;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -826,7 +826,7 @@ export Poison;
 // CHECK:STDOUT:   %Main.c = import_ref Main//use_non_export_then_base, c, unloaded
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 18 - 18
toolchain/check/testdata/packages/export_mixed.carbon

@@ -193,7 +193,7 @@ var d: D = {.y = ()};
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.D = import_ref Main//base, D, unloaded
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -227,7 +227,7 @@ var d: D = {.y = ()};
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//base, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.D = import_ref Main//base, D, unloaded
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -276,9 +276,9 @@ var d: D = {.y = ()};
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export_import_then_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -332,9 +332,9 @@ var d: D = {.y = ()};
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -388,9 +388,9 @@ var d: D = {.y = ()};
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export_import_then_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -479,9 +479,9 @@ var d: D = {.y = ()};
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export_import_then_name, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -542,11 +542,11 @@ var d: D = {.y = ()};
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//export_import_then_name, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.D: type = import_ref Main//base, D, loaded [concrete = constants.%D]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9be]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export_import_then_name, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab: <witness> = import_ref Main//base, loc10_1, loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.cab = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.950 = import_ref Main//base, loc9_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 40 - 40
toolchain/check/testdata/packages/export_name.carbon

@@ -275,10 +275,10 @@ private export C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//base, NSC, loaded [concrete = constants.%NSC]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab: <witness> = import_ref Main//base, loc11_1, loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.31c = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.31c = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.be6 = import_ref Main//base, loc10_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -346,12 +346,12 @@ private export C;
 // CHECK:STDOUT:     .NSC = file.%NSC
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//export, NSC, loaded [concrete = constants.%NSC]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.63c: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.f0b = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.ebc = import_ref Main//export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9be]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.63c: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
+// CHECK:STDOUT:   %Main.import_ref.f0b = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ebc = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -412,12 +412,12 @@ private export C;
 // CHECK:STDOUT:     .NSC = %Main.NSC
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//export, NSC, loaded [concrete = constants.%NSC]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.63c: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.f0b = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.ebc = import_ref Main//export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9be]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.63c: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
+// CHECK:STDOUT:   %Main.import_ref.f0b = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ebc = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -510,12 +510,12 @@ private export C;
 // CHECK:STDOUT:     .NSC = %Main.NSC
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//export_export, NSC, loaded [concrete = constants.%NSC]
-// CHECK:STDOUT:   %Main.import_ref.328: <witness> = import_ref Main//export_export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.3ef = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.c12: <witness> = import_ref Main//export_export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.1cb = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.b18 = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.328: <witness> = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9be]
+// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3ef = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.c12: <witness> = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
+// CHECK:STDOUT:   %Main.import_ref.1cb = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.b18 = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -609,12 +609,12 @@ private export C;
 // CHECK:STDOUT:     .NSC = %Main.NSC
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//export_export, NSC, loaded [concrete = constants.%NSC]
-// CHECK:STDOUT:   %Main.import_ref.328: <witness> = import_ref Main//export_export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.3ef = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.c12: <witness> = import_ref Main//export_export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.1cb = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.b18 = import_ref Main//export_export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.328: <witness> = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9be]
+// CHECK:STDOUT:   %Main.import_ref.db8 = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.3ef = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.c12: <witness> = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
+// CHECK:STDOUT:   %Main.import_ref.1cb = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.b18 = import_ref Main//export_export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -740,7 +740,7 @@ private export C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC = import_ref Main//base, NSC, unloaded
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -787,10 +787,10 @@ private export C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//base, NSC, loaded [concrete = constants.%NSC]
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT:   %Main.import_ref.5ab: <witness> = import_ref Main//base, loc11_1, loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.31c = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.31c = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.be6 = import_ref Main//base, loc10_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -884,12 +884,12 @@ private export C;
 // CHECK:STDOUT:     .NSC = %Main.NSC
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC: type = import_ref Main//export, NSC, loaded [concrete = constants.%NSC]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9be]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.63c: <witness> = import_ref Main//export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
-// CHECK:STDOUT:   %Main.import_ref.f0b = import_ref Main//export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.ebc = import_ref Main//export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9be]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.63c: <witness> = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type.9f4]
+// CHECK:STDOUT:   %Main.import_ref.f0b = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ebc = import_ref Main//export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -990,7 +990,7 @@ private export C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC = import_ref Main//base, NSC, unloaded
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
@@ -1026,9 +1026,9 @@ private export C;
 // CHECK:STDOUT:
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//repeat_export, C, loaded [concrete = constants.%C]
-// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//repeat_export, inst{{\d+}} [indirect], loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//repeat_export, inst{{\d+}} [indirect], unloaded
-// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//repeat_export, inst{{\d+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.ad3: <witness> = import_ref Main//repeat_export, inst{{[0-9A-F]+}} [indirect], loaded [concrete = constants.%complete_type]
+// CHECK:STDOUT:   %Main.import_ref.6a9 = import_ref Main//repeat_export, inst{{[0-9A-F]+}} [indirect], unloaded
+// CHECK:STDOUT:   %Main.import_ref.f67 = import_ref Main//repeat_export, inst{{[0-9A-F]+}} [indirect], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -1084,7 +1084,7 @@ private export C;
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.NSC = import_ref Main//base, NSC, unloaded
 // CHECK:STDOUT:   %Main.import_ref.56d: <witness> = import_ref Main//base, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2c4 = import_ref Main//base, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.276 = import_ref Main//base, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 1 - 1
toolchain/check/testdata/packages/fail_export_name_member.carbon

@@ -79,7 +79,7 @@ export C.n;
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Foo.C: type = import_ref Foo//a, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Foo.import_ref.9fc: <witness> = import_ref Foo//a, loc6_1, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Foo.import_ref.2c4 = import_ref Foo//a, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Foo.import_ref.2c4 = import_ref Foo//a, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Foo.import_ref.4cb = import_ref Foo//a, loc5_8, unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:

+ 7 - 7
toolchain/check/testdata/packages/implicit_imports_entities.carbon

@@ -340,9 +340,9 @@ import Other library "o1";
 // CHECK:STDOUT:   %Main.C1: type = import_ref Main//mix_current_package, C1, loaded [concrete = constants.%C1]
 // CHECK:STDOUT:   %Main.C2: type = import_ref Main//c2, C2, loaded [concrete = constants.%C2]
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.1: <witness> = import_ref Main//c1, loc4_11, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.eb7 = import_ref Main//c1, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eb7 = import_ref Main//c1, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Main.import_ref.8f24d3.2: <witness> = import_ref Main//c2, loc4_11, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.5b0 = import_ref Main//c2, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.5b0 = import_ref Main//c2, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -423,7 +423,7 @@ import Other library "o1";
 // CHECK:STDOUT: imports {
 // CHECK:STDOUT:   %Main.C1: type = import_ref Main//dup_c1, C1, loaded [concrete = constants.%C1]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//c1, loc4_11, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.eb7 = import_ref Main//c1, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.eb7 = import_ref Main//c1, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -492,7 +492,7 @@ import Other library "o1";
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Main.C: type = import_ref Main//use_ns, C, loaded [concrete = constants.%C]
 // CHECK:STDOUT:   %Main.import_ref.8f2: <witness> = import_ref Main//ns, loc5_13, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Main.import_ref.2dd = import_ref Main//ns, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Main.import_ref.2dd = import_ref Main//ns, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -567,10 +567,10 @@ import Other library "o1";
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.O1: type = import_ref Other//o1, O1, loaded [concrete = constants.%O1]
 // CHECK:STDOUT:   %Other.import_ref.8f24d3.1: <witness> = import_ref Other//o1, loc4_11, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.481 = import_ref Other//o1, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.481 = import_ref Other//o1, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Other.O2: type = import_ref Other//o2, O2, loaded [concrete = constants.%O2]
 // CHECK:STDOUT:   %Other.import_ref.8f24d3.2: <witness> = import_ref Other//o2, loc4_11, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.2eb = import_ref Other//o2, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.2eb = import_ref Other//o2, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {
@@ -663,7 +663,7 @@ import Other library "o1";
 // CHECK:STDOUT:   }
 // CHECK:STDOUT:   %Other.O1: type = import_ref Other//o1, O1, loaded [concrete = constants.%O1]
 // CHECK:STDOUT:   %Other.import_ref.8f2: <witness> = import_ref Other//o1, loc4_11, loaded [concrete = constants.%complete_type]
-// CHECK:STDOUT:   %Other.import_ref.481 = import_ref Other//o1, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %Other.import_ref.481 = import_ref Other//o1, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT: }
 // CHECK:STDOUT:
 // CHECK:STDOUT: file {

+ 1 - 1
toolchain/check/testdata/pointer/import.carbon

@@ -167,7 +167,7 @@ var a: i32* = a_ref;
 // CHECK:STDOUT:     import Core//prelude
 // CHECK:STDOUT:     import Core//prelude/...
 // CHECK:STDOUT:   }
-// CHECK:STDOUT:   %Implicit.import_ref.790: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.222) = import_ref Implicit//default, inst{{\d+}} [indirect], loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.3ef)]
+// CHECK:STDOUT:   %Implicit.import_ref.790: @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op.type (%ptr.as.Copy.impl.Op.type.222) = import_ref Implicit//default, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @ptr.as.Copy.impl.%ptr.as.Copy.impl.Op (constants.%ptr.as.Copy.impl.Op.3ef)]
 // CHECK:STDOUT:   %Copy.impl_witness_table.573 = impl_witness_table (%Implicit.import_ref.790), @ptr.as.Copy.impl [concrete]
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %a_ref.patt: %pattern_type.f6a = binding_pattern a_ref [concrete]

+ 2 - 2
toolchain/check/testdata/return/import_convert_function.carbon

@@ -881,13 +881,13 @@ fn F0(n: i32) -> P.D {
 // CHECK:STDOUT:   %Core.Int: %Int.type = import_ref Core//prelude/parts/int, Int, loaded [concrete = constants.%Int.generic]
 // CHECK:STDOUT:   %P.D: type = import_ref P//library, D, loaded [concrete = constants.%D]
 // CHECK:STDOUT:   %P.import_ref.a7d: <witness> = import_ref P//library, loc5_35, loaded [concrete = constants.%complete_type.ea0]
-// CHECK:STDOUT:   %P.import_ref.cab = import_ref P//library, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %P.import_ref.cab = import_ref P//library, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %P.import_ref.a525 = import_ref P//library, loc5_16, unloaded
 // CHECK:STDOUT:   %P.import_ref.b4a = import_ref P//library, loc5_28, unloaded
 // CHECK:STDOUT:   %P.C: %C.type = import_ref P//library, C, loaded [concrete = constants.%C.generic]
 // CHECK:STDOUT:   %P.import_ref.1b7: %i32 = import_ref P//library, loc4_9, loaded [symbolic = @C.%N (constants.%N.51e)]
 // CHECK:STDOUT:   %P.import_ref.8f2: <witness> = import_ref P//library, loc4_19, loaded [concrete = constants.%complete_type.357]
-// CHECK:STDOUT:   %P.import_ref.f65 = import_ref P//library, inst{{\d+}} [no loc], unloaded
+// CHECK:STDOUT:   %P.import_ref.f65 = import_ref P//library, inst{{[0-9A-F]+}} [no loc], unloaded
 // CHECK:STDOUT:   %Core.ImplicitAs: %ImplicitAs.type.cc7 = import_ref Core//prelude/parts/as, ImplicitAs, loaded [concrete = constants.%ImplicitAs.generic]
 // CHECK:STDOUT:   %Core.import_ref.ee7: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.340) = import_ref Core//prelude/parts/int, loc{{\d+_\d+}}, loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.1c0)]
 // CHECK:STDOUT:   %ImplicitAs.impl_witness_table.9e9 = impl_witness_table (%Core.import_ref.ee7), @Core.IntLiteral.as.ImplicitAs.impl [concrete]

+ 1 - 1
toolchain/check/testdata/struct/import.carbon

@@ -147,7 +147,7 @@ fn F() -> {.x: i32} {
 // CHECK:STDOUT:   %Implicit.b_ref: ref %struct_type.a.d.9db = import_ref Implicit//default, b_ref, loaded [concrete = %b_ref.var]
 // CHECK:STDOUT:   %Implicit.C: %C.type = import_ref Implicit//default, C, loaded [concrete = constants.%C.generic]
 // CHECK:STDOUT:   %Implicit.F: %F.type = import_ref Implicit//default, F, loaded [concrete = constants.%F]
-// CHECK:STDOUT:   %Implicit.import_ref.9fd: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.2ec) = import_ref Implicit//default, inst{{\d+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.f13)]
+// CHECK:STDOUT:   %Implicit.import_ref.9fd: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.2ec) = import_ref Implicit//default, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.f13)]
 // CHECK:STDOUT:   %ImplicitAs.impl_witness_table.0a0 = impl_witness_table (%Implicit.import_ref.9fd), @Core.IntLiteral.as.ImplicitAs.impl [concrete]
 // CHECK:STDOUT:   %a_ref.patt: %pattern_type.b54 = binding_pattern a_ref [concrete]
 // CHECK:STDOUT:   %a_ref.var_patt: %pattern_type.b54 = var_pattern %a_ref.patt [concrete]

+ 1 - 1
toolchain/check/testdata/tuple/import.carbon

@@ -155,7 +155,7 @@ fn F() -> (i32,) {
 // CHECK:STDOUT:   %Implicit.b_ref: ref %tuple.type.cfa = import_ref Implicit//default, b_ref, loaded [concrete = %b_ref.var]
 // CHECK:STDOUT:   %Implicit.C: %C.type = import_ref Implicit//default, C, loaded [concrete = constants.%C.generic]
 // CHECK:STDOUT:   %Implicit.F: %F.type = import_ref Implicit//default, F, loaded [concrete = constants.%F]
-// CHECK:STDOUT:   %Implicit.import_ref.9fd: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.2ec) = import_ref Implicit//default, inst{{\d+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.f13)]
+// CHECK:STDOUT:   %Implicit.import_ref.9fd: @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert.type (%Core.IntLiteral.as.ImplicitAs.impl.Convert.type.2ec) = import_ref Implicit//default, inst{{[0-9A-F]+}} [indirect], loaded [symbolic = @Core.IntLiteral.as.ImplicitAs.impl.%Core.IntLiteral.as.ImplicitAs.impl.Convert (constants.%Core.IntLiteral.as.ImplicitAs.impl.Convert.f13)]
 // CHECK:STDOUT:   %ImplicitAs.impl_witness_table.0a0 = impl_witness_table (%Implicit.import_ref.9fd), @Core.IntLiteral.as.ImplicitAs.impl [concrete]
 // CHECK:STDOUT:   %a_ref.patt: %pattern_type.2e8 = binding_pattern a_ref [concrete]
 // CHECK:STDOUT:   %a_ref.var_patt: %pattern_type.2e8 = var_pattern %a_ref.patt [concrete]

+ 4 - 4
toolchain/driver/testdata/stdin.carbon

@@ -32,7 +32,7 @@
 // CHECK:STDOUT:   import_ir_insts: {}
 // CHECK:STDOUT:   clang_decls:     {}
 // CHECK:STDOUT:   name_scopes:
-// CHECK:STDOUT:     name_scope0:     {inst: inst14, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {}}
+// CHECK:STDOUT:     name_scope0:     {inst: inst0000000E, parent_scope: name_scope<none>, has_error: false, extended_scopes: [], names: {}}
 // CHECK:STDOUT:   entity_names:    {}
 // CHECK:STDOUT:   functions:       {}
 // CHECK:STDOUT:   classes:         {}
@@ -48,10 +48,10 @@
 // CHECK:STDOUT:     'type(inst(NamespaceType))':
 // CHECK:STDOUT:       value_repr:      {kind: copy, type: type(inst(NamespaceType))}
 // CHECK:STDOUT:   insts:
-// CHECK:STDOUT:     inst14:          {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
+// CHECK:STDOUT:     inst0000000E:    {kind: Namespace, arg0: name_scope0, arg1: inst<none>, type: type(inst(NamespaceType))}
 // CHECK:STDOUT:   constant_values:
 // CHECK:STDOUT:     values:
-// CHECK:STDOUT:       inst14:          concrete_constant(inst14)
+// CHECK:STDOUT:       inst0000000E:    concrete_constant(inst0000000E)
 // CHECK:STDOUT:     symbolic_constants: {}
 // CHECK:STDOUT:   inst_blocks:
 // CHECK:STDOUT:     inst_block_empty: {}
@@ -59,7 +59,7 @@
 // CHECK:STDOUT:     imports:         {}
 // CHECK:STDOUT:     global_init:     {}
 // CHECK:STDOUT:     inst_block4:
-// CHECK:STDOUT:       0:               inst14
+// CHECK:STDOUT:       0:               inst0000000E
 // CHECK:STDOUT: ...
 // CHECK:STDOUT: --- -
 // CHECK:STDOUT:

+ 3 - 0
toolchain/sem_ir/file.cpp

@@ -36,6 +36,9 @@ File::File(const Parse::Tree* parse_tree, CheckIRId check_ir_id,
       value_stores_(&value_stores),
       filename_(std::move(filename)),
       impls_(*this),
+      // The `+1` prevents adding a tag to the global `NameSpace::PackageInstId`
+      // instruction. It's not a "singleton" instruction, but it's a unique
+      // instruction id that comes right after the singletons.
       insts_(this, SingletonInstKinds.size() + 1),
       constant_values_(ConstantId::NotConstant, &insts_),
       inst_blocks_(allocator_),

+ 2 - 4
toolchain/sem_ir/formatter.cpp

@@ -1236,17 +1236,15 @@ auto Formatter::FormatImportRefRhs(AnyImportRef inst) -> void {
     const auto& import_ir = sem_ir_->import_irs().Get(import_ir_inst.ir_id());
     auto loc_id =
         import_ir.sem_ir->insts().GetCanonicalLocId(import_ir_inst.inst_id());
-    InstId stripped_inst_id(
-        import_ir.sem_ir->insts().GetRawIndex(import_ir_inst.inst_id()));
     switch (loc_id.kind()) {
       case LocId::Kind::None: {
-        out_ << stripped_inst_id << " [no loc]";
+        out_ << import_ir_inst.inst_id() << " [no loc]";
         break;
       }
       case LocId::Kind::ImportIRInstId: {
         // TODO: Probably don't want to format each indirection, but maybe
         // reuse GetCanonicalImportIRInst?
-        out_ << stripped_inst_id << " [indirect]";
+        out_ << import_ir_inst.inst_id() << " [indirect]";
         break;
       }
       case LocId::Kind::NodeId: {

+ 1 - 6
toolchain/sem_ir/ids.cpp

@@ -16,12 +16,7 @@ auto InstId::Print(llvm::raw_ostream& out) const -> void {
   if (IsSingletonInstId(*this)) {
     out << Label << "(" << SingletonInstKinds[index] << ")";
   } else {
-    auto [ir_id, simple_index] = IdTag::DecomposeWithBestEffort(index);
-    if (ir_id == -1) {
-      IdBase::Print(out);
-    } else {
-      out << "ir" << ir_id << ".inst" << simple_index;
-    }
+    IdBase::PrintHex(out);
   }
 }
 

+ 3 - 0
toolchain/sem_ir/inst.h

@@ -438,6 +438,9 @@ struct LocIdAndInst {
 };
 
 // Provides a ValueStore wrapper for an API specific to instructions.
+//
+// InstIds in this store are tagged by an IdTag using the File's CheckIRId as
+// the tag value.
 class InstStore {
  public:
   using IdType = InstId;

+ 4 - 5
toolchain/sem_ir/yaml_test.cpp

@@ -47,12 +47,11 @@ TEST(SemIRTest, Yaml) {
   // Matches the ID of an instruction. Instruction counts may change as various
   // support changes, so this code is only doing loose structural checks.
   auto inst_block_id = Yaml::Scalar(MatchesRegex(R"(inst_block(\d+|_empty))"));
-  auto inst_id = Yaml::Scalar(MatchesRegex(R"((ir\d+\.)?inst\d+)"));
+  auto inst_id = Yaml::Scalar(MatchesRegex(R"(inst[0-9A-F]+)"));
   auto constant_id =
-      Yaml::Scalar(MatchesRegex(R"(concrete_constant\((ir\d+\.)?inst\d+\))"));
-  auto inst_builtin = Yaml::Scalar(MatchesRegex(R"(inst\(\w+\))"));
-  auto type_id = Yaml::Scalar(
-      MatchesRegex(R"(type\((\w+|inst\(\w+\)|(ir\d+\.)?inst\d+)\))"));
+      Yaml::Scalar(MatchesRegex(R"(concrete_constant\(inst[0-9A-F]+\))"));
+  auto type_id =
+      Yaml::Scalar(MatchesRegex(R"(type\((\w+|inst\(\w+\)|inst[0-9A-F]+)\))"));
   auto type_builtin = Pair(type_id, Yaml::Mapping(_));
 
   auto file = Yaml::Mapping(ElementsAre(

+ 2 - 2
toolchain/testing/file_test.cpp

@@ -322,8 +322,8 @@ auto ToolchainFileTest::DoExtraCheckReplacements(std::string& check_line) const
 
       // Reduce instruction numbering sensitivity; this is brittle for
       // instruction edits including adding/removing singleton instructions.
-      static RE2 inst_re(R"((import_ref [^,]*, inst)\d+)");
-      RE2::Replace(&check_line, inst_re, R"(\1{{\\d+}})");
+      static RE2 inst_re(R"((import_ref [^,]*, inst)[0-9A-F]+)");
+      RE2::Replace(&check_line, inst_re, R"(\1{{[0-9A-F]+}})");
 
       // Reduce location sensitivity in imports referring to `Core`; this is
       // brittle for small edits, including comment changes.