Skip to content

Commit f5e8077

Browse files
committed
[Test] Removed stdlib dependency from file.
Not having a stdlib dependency allows the test to be run even when building the stdlib fails.
1 parent f234d8d commit f5e8077

File tree

1 file changed

+61
-43
lines changed

1 file changed

+61
-43
lines changed

test/SILOptimizer/mem2reg_ossa.sil

Lines changed: 61 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,30 @@
11
// RUN: %target-sil-opt -enable-sil-verify-all %s -mem2reg | %FileCheck %s
22

33
import Builtin
4-
import Swift
54

65
//////////////////
76
// Declarations //
87
//////////////////
98

9+
typealias AnyObject = Builtin.AnyObject
10+
11+
struct Int64 {
12+
var _value : Builtin.Int64
13+
}
14+
15+
struct Int {
16+
var _value : Builtin.Int64
17+
}
18+
19+
struct Bool {
20+
var _value : Builtin.Int1
21+
}
22+
23+
enum FakeOptional<T> {
24+
case some(T)
25+
case none
26+
}
27+
1028
class Klass {}
1129

1230
struct SmallCodesizeStruct {
@@ -492,22 +510,22 @@ bb0:
492510
// CHECK-LABEL: sil [ossa] @test_optional_in_multiple_blocks :
493511
// CHECK-NOT: alloc_stack
494512
// CHECK: } // end sil function 'test_optional_in_multiple_blocks'
495-
sil [ossa] @test_optional_in_multiple_blocks : $@convention(method) (@guaranteed Optional<Klass>) -> () {
496-
bb0(%0 : @guaranteed $Optional<Klass>):
497-
%1 = copy_value %0 : $Optional<Klass>
498-
%32 = alloc_stack $Optional<Klass>
499-
store %1 to [init] %32 : $*Optional<Klass>
500-
switch_enum %0 : $Optional<Klass>, case #Optional.some!enumelt: bb6, case #Optional.none!enumelt: bb5
513+
sil [ossa] @test_optional_in_multiple_blocks : $@convention(method) (@guaranteed FakeOptional<Klass>) -> () {
514+
bb0(%0 : @guaranteed $FakeOptional<Klass>):
515+
%1 = copy_value %0 : $FakeOptional<Klass>
516+
%32 = alloc_stack $FakeOptional<Klass>
517+
store %1 to [init] %32 : $*FakeOptional<Klass>
518+
switch_enum %0 : $FakeOptional<Klass>, case #FakeOptional.some!enumelt: bb6, case #FakeOptional.none!enumelt: bb5
501519

502520
bb5:
503-
dealloc_stack %32 : $*Optional<Klass>
521+
dealloc_stack %32 : $*FakeOptional<Klass>
504522
br bb7
505523

506524
bb6(%50 : @guaranteed $Klass):
507-
%53 = load [copy] %32 : $*Optional<Klass>
508-
destroy_value %53 : $Optional<Klass>
509-
destroy_addr %32 : $*Optional<Klass>
510-
dealloc_stack %32 : $*Optional<Klass>
525+
%53 = load [copy] %32 : $*FakeOptional<Klass>
526+
destroy_value %53 : $FakeOptional<Klass>
527+
destroy_addr %32 : $*FakeOptional<Klass>
528+
dealloc_stack %32 : $*FakeOptional<Klass>
511529
br bb7
512530

513531
bb7:
@@ -518,22 +536,22 @@ bb7:
518536
// CHECK-LABEL: sil [ossa] @test_optional_in_multiple_blocks_lexical :
519537
// CHECK-NOT: alloc_stack
520538
// CHECK: } // end sil function 'test_optional_in_multiple_blocks_lexical'
521-
sil [ossa] @test_optional_in_multiple_blocks_lexical : $@convention(method) (@guaranteed Optional<Klass>) -> () {
522-
bb0(%0 : @guaranteed $Optional<Klass>):
523-
%1 = copy_value %0 : $Optional<Klass>
524-
%32 = alloc_stack [lexical] $Optional<Klass>
525-
store %1 to [init] %32 : $*Optional<Klass>
526-
switch_enum %0 : $Optional<Klass>, case #Optional.some!enumelt: bb6, case #Optional.none!enumelt: bb5
539+
sil [ossa] @test_optional_in_multiple_blocks_lexical : $@convention(method) (@guaranteed FakeOptional<Klass>) -> () {
540+
bb0(%0 : @guaranteed $FakeOptional<Klass>):
541+
%1 = copy_value %0 : $FakeOptional<Klass>
542+
%32 = alloc_stack [lexical] $FakeOptional<Klass>
543+
store %1 to [init] %32 : $*FakeOptional<Klass>
544+
switch_enum %0 : $FakeOptional<Klass>, case #FakeOptional.some!enumelt: bb6, case #FakeOptional.none!enumelt: bb5
527545

528546
bb5:
529-
dealloc_stack %32 : $*Optional<Klass>
547+
dealloc_stack %32 : $*FakeOptional<Klass>
530548
br bb7
531549

532550
bb6(%50 : @guaranteed $Klass):
533-
%53 = load [copy] %32 : $*Optional<Klass>
534-
destroy_value %53 : $Optional<Klass>
535-
destroy_addr %32 : $*Optional<Klass>
536-
dealloc_stack %32 : $*Optional<Klass>
551+
%53 = load [copy] %32 : $*FakeOptional<Klass>
552+
destroy_value %53 : $FakeOptional<Klass>
553+
destroy_addr %32 : $*FakeOptional<Klass>
554+
dealloc_stack %32 : $*FakeOptional<Klass>
537555
br bb7
538556

539557
bb7:
@@ -544,23 +562,23 @@ bb7:
544562
// CHECK-LABEL: sil [ossa] @test_optional_in_multiple_blocks_lexical_storedvalue :
545563
// CHECK-NOT: alloc_stack
546564
// CHECK: } // end sil function 'test_optional_in_multiple_blocks_lexical_storedvalue'
547-
sil [ossa] @test_optional_in_multiple_blocks_lexical_storedvalue : $@convention(method) (@owned Optional<Klass>) -> () {
548-
bb0(%0 : @owned $Optional<Klass>):
549-
%1 = copy_value %0 : $Optional<Klass>
550-
%32 = alloc_stack $Optional<Klass>
551-
store %0 to [init] %32 : $*Optional<Klass>
552-
switch_enum %1 : $Optional<Klass>, case #Optional.some!enumelt: bb6, case #Optional.none!enumelt: bb5
565+
sil [ossa] @test_optional_in_multiple_blocks_lexical_storedvalue : $@convention(method) (@owned FakeOptional<Klass>) -> () {
566+
bb0(%0 : @owned $FakeOptional<Klass>):
567+
%1 = copy_value %0 : $FakeOptional<Klass>
568+
%32 = alloc_stack $FakeOptional<Klass>
569+
store %0 to [init] %32 : $*FakeOptional<Klass>
570+
switch_enum %1 : $FakeOptional<Klass>, case #FakeOptional.some!enumelt: bb6, case #FakeOptional.none!enumelt: bb5
553571

554572
bb5:
555-
dealloc_stack %32 : $*Optional<Klass>
573+
dealloc_stack %32 : $*FakeOptional<Klass>
556574
br bb7
557575

558576
bb6(%50 : @owned $Klass):
559-
%53 = load [copy] %32 : $*Optional<Klass>
560-
destroy_value %53 : $Optional<Klass>
577+
%53 = load [copy] %32 : $*FakeOptional<Klass>
578+
destroy_value %53 : $FakeOptional<Klass>
561579
destroy_value %50 : $Klass
562-
destroy_addr %32 : $*Optional<Klass>
563-
dealloc_stack %32 : $*Optional<Klass>
580+
destroy_addr %32 : $*FakeOptional<Klass>
581+
dealloc_stack %32 : $*FakeOptional<Klass>
564582
br bb7
565583

566584
bb7:
@@ -571,20 +589,20 @@ bb7:
571589
// CHECK-LABEL: sil [ossa] @optimize_optional_in_single_block :
572590
// CHECK-NOT: alloc_stack
573591
// CHECK: } // end sil function 'optimize_optional_in_single_block'
574-
sil [ossa] @optimize_optional_in_single_block : $@convention(method) (@guaranteed Optional<Klass>) -> () {
575-
bb0(%0 : @guaranteed $Optional<Klass>):
576-
switch_enum %0 : $Optional<Klass>, case #Optional.some!enumelt: bb6, case #Optional.none!enumelt: bb5
592+
sil [ossa] @optimize_optional_in_single_block : $@convention(method) (@guaranteed FakeOptional<Klass>) -> () {
593+
bb0(%0 : @guaranteed $FakeOptional<Klass>):
594+
switch_enum %0 : $FakeOptional<Klass>, case #FakeOptional.some!enumelt: bb6, case #FakeOptional.none!enumelt: bb5
577595

578596
bb5:
579597
br bb7
580598

581599
bb6(%50 : @guaranteed $Klass):
582-
%32 = alloc_stack $Optional<Klass>
583-
%1 = copy_value %0 : $Optional<Klass>
584-
store %1 to [init] %32 : $*Optional<Klass>
585-
%53 = load [take] %32 : $*Optional<Klass>
586-
destroy_value %53 : $Optional<Klass>
587-
dealloc_stack %32 : $*Optional<Klass>
600+
%32 = alloc_stack $FakeOptional<Klass>
601+
%1 = copy_value %0 : $FakeOptional<Klass>
602+
store %1 to [init] %32 : $*FakeOptional<Klass>
603+
%53 = load [take] %32 : $*FakeOptional<Klass>
604+
destroy_value %53 : $FakeOptional<Klass>
605+
dealloc_stack %32 : $*FakeOptional<Klass>
588606
br bb7
589607

590608
bb7:

0 commit comments

Comments
 (0)