Skip to content

Commit e68471b

Browse files
committed
Uncomment a test case now that #65295 has landed
1 parent 10ebf7d commit e68471b

File tree

1 file changed

+22
-3
lines changed

1 file changed

+22
-3
lines changed

test/SILOptimizer/tuples_from_packs.swift

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,29 @@ public func makeEmptyTuple() {
2121
return makeTuple()
2222
}
2323

24-
// FIXME: This crashes in SILGen
25-
/*public func makeOne<T>(_ t: T) -> T {
24+
// FIXME: Useless pack_element_set/pack_element_get
25+
26+
// CHECK-LABEL: sil @$s17tuples_from_packs7makeOneyxxlF : $@convention(thin) <T> (@in_guaranteed T) -> @out T {
27+
// CHECK: bb0(%0 : $*T, %1 : $*T):
28+
// CHECK: [[PACK:%.*]] = alloc_pack $Pack{T}
29+
// CHECK-NEXT: [[IDX:%.*]] = scalar_pack_index 0 of $Pack{T}
30+
// CHECK-NEXT: pack_element_set %0 : $*T into [[IDX]] of [[PACK]] : $*Pack{T}
31+
// CHECK-NEXT: [[PACK2:%.*]] = alloc_pack $Pack{T}
32+
// CHECK-NEXT: [[BOX:%.*]] = alloc_stack $T
33+
// CHECK-NEXT: copy_addr %1 to [init] [[BOX]] : $*T
34+
// CHECK-NEXT: pack_element_set [[BOX]] : $*T into [[IDX]] of [[PACK2]] : $*Pack{T}
35+
// CHECK-NEXT: [[ELT:%.*]] = pack_element_get [[IDX]] of [[PACK]] : $*Pack{T} as $*T
36+
// CHECK-NEXT: [[ELT2:%.*]] = pack_element_get [[IDX]] of [[PACK2]] : $*Pack{T} as $*T
37+
// CHECK-NEXT: copy_addr [[ELT2]] to [init] [[ELT]] : $*T
38+
// CHECK-NEXT: destroy_addr [[BOX]] : $*T
39+
// CHECK-NEXT: dealloc_stack [[BOX]] : $*T
40+
// CHECK-NEXT: dealloc_pack [[PACK2]] : $*Pack{T}
41+
// CHECK-NEXT: dealloc_pack [[PACK]] : $*Pack{T}
42+
// CHECK-NEXT: [[RET:%.*]] = tuple ()
43+
// CHECK-NEXT: return [[RET]] : $()
44+
public func makeOne<T>(_ t: T) -> T {
2645
return makeTuple(t)
27-
}*/
46+
}
2847

2948
// FIXME: Useless pack_element_set/pack_element_get
3049

0 commit comments

Comments
 (0)