@@ -438,7 +438,6 @@ var b: i32 = a.({.index = 2}.index);
438438// CHECK:STDOUT:
439439// CHECK:STDOUT: constants {
440440// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [concrete]
441- // CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
442441// CHECK:STDOUT: %N: Core.IntLiteral = symbolic_binding N, 0 [symbolic]
443442// CHECK:STDOUT: %i32: type = class_type @Int, @Int(%int_32) [concrete]
444443// CHECK:STDOUT: %tuple.type.a1c: type = tuple_type (%i32) [concrete]
@@ -455,11 +454,6 @@ var b: i32 = a.({.index = 2}.index);
455454// CHECK:STDOUT: %Copy.facet: %Copy.type = facet_value %i32, (%Copy.impl_witness.fb7) [concrete]
456455// CHECK:STDOUT: %.65f: type = fn_type_with_self_type %Copy.Op.type, %Copy.facet [concrete]
457456// CHECK:STDOUT: %Int.as.Copy.impl.Op.specific_fn: <specific function> = specific_function %Int.as.Copy.impl.Op.dfd, @Int.as.Copy.impl.Op(%int_32) [concrete]
458- // CHECK:STDOUT: %type_where: type = facet_type <type where .Self impls <CanDestroy>> [concrete]
459- // CHECK:STDOUT: %facet_value: %type_where = facet_value %tuple.type.a1c, () [concrete]
460- // CHECK:STDOUT: %DestroyT.binding.as_type.as.Destroy.impl.Op.type.49b: type = fn_type @DestroyT.binding.as_type.as.Destroy.impl.Op, @DestroyT.binding.as_type.as.Destroy.impl(%facet_value) [concrete]
461- // CHECK:STDOUT: %DestroyT.binding.as_type.as.Destroy.impl.Op.c36: %DestroyT.binding.as_type.as.Destroy.impl.Op.type.49b = struct_value () [concrete]
462- // CHECK:STDOUT: %ptr.0b7: type = ptr_type %tuple.type.a1c [concrete]
463457// CHECK:STDOUT: }
464458// CHECK:STDOUT:
465459// CHECK:STDOUT: imports {
@@ -472,20 +466,14 @@ var b: i32 = a.({.index = 2}.index);
472466// CHECK:STDOUT: %F.ref: %F.type = name_ref F, file.%F.decl [concrete = constants.%F]
473467// CHECK:STDOUT: %F.call: init %tuple.type.a1c = call %F.ref()
474468// CHECK:STDOUT: %int_0: Core.IntLiteral = int_value 0 [concrete = constants.%int_0.5c6]
475- // CHECK:STDOUT: %.loc7_12.1: ref %tuple.type.a1c = temporary_storage
476- // CHECK:STDOUT: %.loc7_12.2: ref %tuple.type.a1c = temporary %.loc7_12.1, %F.call
477- // CHECK:STDOUT: %tuple.elem0: ref %i32 = tuple_access %.loc7_12.2, element0
478- // CHECK:STDOUT: %.loc7_13: %i32 = acquire_value %tuple.elem0
469+ // CHECK:STDOUT: %.loc7_12.1: %tuple.type.a1c = value_of_initializer %F.call
470+ // CHECK:STDOUT: %.loc7_12.2: %tuple.type.a1c = converted %F.call, %.loc7_12.1
471+ // CHECK:STDOUT: %tuple.elem0: %i32 = tuple_access %.loc7_12.2, element0
479472// CHECK:STDOUT: %impl.elem0: %.65f = impl_witness_access constants.%Copy.impl_witness.fb7, element0 [concrete = constants.%Int.as.Copy.impl.Op.dfd]
480- // CHECK:STDOUT: %bound_method.loc7_13.1: <bound method> = bound_method %.loc7_13 , %impl.elem0
473+ // CHECK:STDOUT: %bound_method.loc7_13.1: <bound method> = bound_method %tuple.elem0 , %impl.elem0
481474// CHECK:STDOUT: %specific_fn: <specific function> = specific_function %impl.elem0, @Int.as.Copy.impl.Op(constants.%int_32) [concrete = constants.%Int.as.Copy.impl.Op.specific_fn]
482- // CHECK:STDOUT: %bound_method.loc7_13.2: <bound method> = bound_method %.loc7_13, %specific_fn
483- // CHECK:STDOUT: %Int.as.Copy.impl.Op.call: init %i32 = call %bound_method.loc7_13.2(%.loc7_13)
484- // CHECK:STDOUT: %DestroyT.binding.as_type.as.Destroy.impl.Op.bound: <bound method> = bound_method %.loc7_12.2, constants.%DestroyT.binding.as_type.as.Destroy.impl.Op.c36
485- // CHECK:STDOUT: <elided>
486- // CHECK:STDOUT: %bound_method.loc7_12: <bound method> = bound_method %.loc7_12.2, %DestroyT.binding.as_type.as.Destroy.impl.Op.specific_fn
487- // CHECK:STDOUT: %addr: %ptr.0b7 = addr_of %.loc7_12.2
488- // CHECK:STDOUT: %DestroyT.binding.as_type.as.Destroy.impl.Op.call: init %empty_tuple.type = call %bound_method.loc7_12(%addr)
475+ // CHECK:STDOUT: %bound_method.loc7_13.2: <bound method> = bound_method %tuple.elem0, %specific_fn
476+ // CHECK:STDOUT: %Int.as.Copy.impl.Op.call: init %i32 = call %bound_method.loc7_13.2(%tuple.elem0)
489477// CHECK:STDOUT: return %Int.as.Copy.impl.Op.call to %return
490478// CHECK:STDOUT: }
491479// CHECK:STDOUT:
0 commit comments