@@ -471,15 +471,14 @@ func test_multiple_patterns1() {
471
471
// CHECK: cond_br {{%.*}}, [[FIRST_MATCH_CASE:bb[0-9]+]], [[FIRST_FAIL:bb[0-9]+]]
472
472
// CHECK: [[FIRST_MATCH_CASE]]:
473
473
// CHECK: debug_value [[FIRST_X:%.*]] :
474
- // CHECK: br [[CASE_BODY:bb[0-9]+]]([[FIRST_X]] : $Int)
474
+ // CHECK: [[B1_FUNC:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
475
+ // CHECK: apply [[B1_FUNC]]([[FIRST_X]])
475
476
// CHECK: [[FIRST_FAIL]]:
476
477
// CHECK: cond_br {{%.*}}, [[SECOND_MATCH_CASE:bb[0-9]+]], [[SECOND_FAIL:bb[0-9]+]]
477
478
// CHECK: [[SECOND_MATCH_CASE]]:
478
479
// CHECK: debug_value [[SECOND_X:%.*]] :
479
- // CHECK: br [[CASE_BODY]]([[SECOND_X]] : $Int)
480
- // CHECK: [[CASE_BODY]]([[BODY_VAR:%.*]] : $Int):
481
- // CHECK: [[A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
482
- // CHECK: apply [[A]]([[BODY_VAR]])
480
+ // CHECK: [[B2_FUNC:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
481
+ // CHECK: apply [[B2_FUNC]]([[SECOND_X]])
483
482
a ( x: x)
484
483
default :
485
484
// CHECK: [[SECOND_FAIL]]:
@@ -502,16 +501,15 @@ func test_multiple_patterns2() {
502
501
// CHECK: apply {{%.*}}([[FIRST_X]], [[T1]])
503
502
// CHECK: cond_br {{%.*}}, [[FIRST_MATCH_CASE:bb[0-9]+]], [[FIRST_FAIL:bb[0-9]+]]
504
503
// CHECK: [[FIRST_MATCH_CASE]]:
505
- // CHECK: br [[CASE_BODY:bb[0-9]+]]([[FIRST_X]] : $Int)
504
+ // CHECK: [[A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
505
+ // CHECK: apply [[A]]([[FIRST_X]])
506
506
// CHECK: [[FIRST_FAIL]]:
507
507
// CHECK: debug_value [[SECOND_X:%.*]] :
508
508
// CHECK: apply {{%.*}}([[SECOND_X]], [[T2]])
509
509
// CHECK: cond_br {{%.*}}, [[SECOND_MATCH_CASE:bb[0-9]+]], [[SECOND_FAIL:bb[0-9]+]]
510
510
// CHECK: [[SECOND_MATCH_CASE]]:
511
- // CHECK: br [[CASE_BODY]]([[SECOND_X]] : $Int)
512
- // CHECK: [[CASE_BODY]]([[BODY_VAR:%.*]] : $Int):
513
511
// CHECK: [[A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
514
- // CHECK: apply [[A]]([[BODY_VAR ]])
512
+ // CHECK: apply [[A]]([[SECOND_X ]])
515
513
a ( x: x)
516
514
default :
517
515
// CHECK: [[SECOND_FAIL]]:
@@ -535,22 +533,22 @@ func test_multiple_patterns3() {
535
533
// CHECK: [[A]]({{%.*}} : $(Int, Double)):
536
534
// CHECK: [[A_X:%.*]] = tuple_extract
537
535
// CHECK: [[A_N:%.*]] = tuple_extract
538
- // CHECK: br [[CASE_BODY:bb[0-9]+]]([[A_X]] : $Int, [[A_N]] : $Double)
536
+ // CHECK: [[FUNC_A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
537
+ // CHECK: apply [[FUNC_A]]([[A_X]])
539
538
540
539
// CHECK: [[B]]({{%.*}} : $(Double, Int)):
541
540
// CHECK: [[B_N:%.*]] = tuple_extract
542
541
// CHECK: [[B_X:%.*]] = tuple_extract
543
- // CHECK: br [[CASE_BODY]]([[B_X]] : $Int, [[B_N]] : $Double)
542
+ // CHECK: [[FUNC_B:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
543
+ // CHECK: apply [[FUNC_B]]([[B_X]])
544
544
545
545
// CHECK: [[C]]({{%.*}} : $(Int, Int, Double)):
546
546
// CHECK: [[C__:%.*]] = tuple_extract
547
547
// CHECK: [[C_X:%.*]] = tuple_extract
548
548
// CHECK: [[C_N:%.*]] = tuple_extract
549
- // CHECK: br [[CASE_BODY]]([[C_X]] : $Int, [[C_N]] : $Double)
549
+ // CHECK: [[FUNC_C:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
550
+ // CHECK: apply [[FUNC_C]]([[C_X]])
550
551
551
- // CHECK: [[CASE_BODY]]([[BODY_X:%.*]] : $Int, [[BODY_N:%.*]] : $Double):
552
- // CHECK: [[FUNC_A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
553
- // CHECK: apply [[FUNC_A]]([[BODY_X]])
554
552
a ( x: x)
555
553
}
556
554
}
@@ -574,24 +572,25 @@ func test_multiple_patterns4() {
574
572
// CHECK: [[A]]({{%.*}} : $(Int, Double)):
575
573
// CHECK: [[A_X:%.*]] = tuple_extract
576
574
// CHECK: [[A_N:%.*]] = tuple_extract
577
- // CHECK: br [[CASE_BODY:bb[0-9]+]]([[A_X]] : $Int)
575
+ // CHECK: [[FUNC_A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
576
+ // CHECK: apply [[FUNC_A]]([[A_X]])
578
577
579
578
// CHECK: [[B]]({{%.*}} : $(Double, Int)):
580
579
// CHECK: [[B_N:%.*]] = tuple_extract
581
580
// CHECK: [[B_X:%.*]] = tuple_extract
582
- // CHECK: br [[CASE_BODY]]([[B_X]] : $Int)
581
+ // CHECK: [[FUNC_B:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
582
+ // CHECK: apply [[FUNC_B]]([[B_X]])
583
583
584
584
// CHECK: [[C]]({{%.*}} : $(Int, Int, Double)):
585
- // CHECK: br [[CASE_BODY]]([[Y_X]] : $Int)
585
+ // CHECK: [[FUNC_C:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
586
+ // CHECK: apply [[FUNC_C]]([[Y_X]])
586
587
587
588
// CHECK: [[Z]]({{%.*}} : $(Int, Foo)):
588
589
// CHECK: [[Z_X:%.*]] = tuple_extract
589
590
// CHECK: [[Z_F:%.*]] = tuple_extract
590
- // CHECK: br [[CASE_BODY]]([[Z_X]] : $Int)
591
+ // CHECK: [[FUNC_Z:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
592
+ // CHECK: apply [[FUNC_Z]]([[Z_X]])
591
593
592
- // CHECK: [[CASE_BODY]]([[BODY_X:%.*]] : $Int):
593
- // CHECK: [[FUNC_A:%.*]] = function_ref @_TF10switch_var1aFT1xSi_T_
594
- // CHECK: apply [[FUNC_A]]([[BODY_X]])
595
594
a ( x: x)
596
595
}
597
596
}
@@ -612,25 +611,32 @@ func test_multiple_patterns5() {
612
611
// CHECK: [[A]]({{%.*}} : $(Int, Double)):
613
612
// CHECK: [[A_X:%.*]] = tuple_extract
614
613
// CHECK: [[A_N:%.*]] = tuple_extract
615
- // CHECK: br [[CASE_BODY:bb[0-9]+]]([[A_X]] : $Int)
614
+ // CHECK: [[A_BOX:%.*]] = project_box
615
+ // CHECK: store [[A_X]] to [[A_BOX]]
616
+ // CHECK: [[FUNC_A:%.*]] = function_ref @_TF10switch_var3aaaFT1xRSi_T_
617
+ // CHECK: apply [[FUNC_A]]([[A_BOX]])
616
618
617
619
// CHECK: [[B]]({{%.*}} : $(Double, Int)):
618
620
// CHECK: [[B_N:%.*]] = tuple_extract
619
621
// CHECK: [[B_X:%.*]] = tuple_extract
620
- // CHECK: br [[CASE_BODY]]([[B_X]] : $Int)
622
+ // CHECK: [[B_BOX:%.*]] = project_box
623
+ // CHECK: store [[B_X]] to [[B_BOX]]
624
+ // CHECK: [[FUNC_B:%.*]] = function_ref @_TF10switch_var3aaaFT1xRSi_T_
625
+ // CHECK: apply [[FUNC_B]]([[B_BOX]])
621
626
622
627
// CHECK: [[C]]({{%.*}} : $(Int, Int, Double)):
623
- // CHECK: br [[CASE_BODY]]([[Y_X]] : $Int)
628
+ // CHECK: [[Y_BOX:%.*]] = project_box
629
+ // CHECK: store [[Y_X]] to [[Y_BOX]]
630
+ // CHECK: [[FUNC_C:%.*]] = function_ref @_TF10switch_var3aaaFT1xRSi_T_
631
+ // CHECK: apply [[FUNC_C]]([[Y_BOX]])
624
632
625
633
// CHECK: [[Z]]({{%.*}} : $(Int, Foo)):
626
634
// CHECK: [[Z_X:%.*]] = tuple_extract
627
635
// CHECK: [[Z_F:%.*]] = tuple_extract
628
- // CHECK: br [[CASE_BODY]]([[Z_X]] : $Int)
629
-
630
- // CHECK: [[CASE_BODY]]([[BODY_X:%.*]] : $Int):
631
- // CHECK: store [[BODY_X]] to [[BOX_X:%.*]] : $*Int
632
- // CHECK: [[FUNC_AAA:%.*]] = function_ref @_TF10switch_var3aaaFT1xRSi_T_
633
- // CHECK: apply [[FUNC_AAA]]([[BOX_X]])
636
+ // CHECK: [[Z_BOX:%.*]] = project_box
637
+ // CHECK: store [[Z_X]] to [[Z_BOX]]
638
+ // CHECK: [[FUNC_Z:%.*]] = function_ref @_TF10switch_var3aaaFT1xRSi_T_
639
+ // CHECK: apply [[FUNC_Z]]([[Z_BOX]])
634
640
aaa ( x: & x)
635
641
}
636
642
}
0 commit comments