@@ -603,6 +603,180 @@ isexpr.cs:
603603# 18| v6_0(Void) = NoOp :
604604#-----| Goto -> Block 1
605605
606+ jumps.cs:
607+ # 5| System.Void Jumps.Main()
608+ # 5| Block 0
609+ # 5| v0_0(Void) = EnterFunction :
610+ # 5| mu0_1(null) = AliasedDefinition :
611+ # 5| mu0_2(null) = UnmodeledDefinition :
612+ # 7| r0_3(glval<Int32>) = VariableAddress[i] :
613+ # 7| r0_4(Int32) = Constant[1] :
614+ # 7| mu0_5(Int32) = Store : &:r0_3, r0_4
615+ #-----| Goto -> Block 1
616+
617+ # 7| Block 1
618+ # 7| r1_0(glval<Int32>) = VariableAddress[i] :
619+ # 7| r1_1(Int32) = Load : &:r1_0, ~mu0_2
620+ # 7| r1_2(Int32) = Constant[10] :
621+ # 7| r1_3(Boolean) = CompareLE : r1_1, r1_2
622+ # 7| v1_4(Void) = ConditionalBranch : r1_3
623+ #-----| False -> Block 7
624+ #-----| True -> Block 2
625+
626+ # 9| Block 2
627+ # 9| r2_0(glval<Int32>) = VariableAddress[i] :
628+ # 9| r2_1(Int32) = Load : &:r2_0, ~mu0_2
629+ # 9| r2_2(Int32) = Constant[3] :
630+ # 9| r2_3(Boolean) = CompareEQ : r2_1, r2_2
631+ # 9| v2_4(Void) = ConditionalBranch : r2_3
632+ #-----| False -> Block 4
633+ #-----| True -> Block 3
634+
635+ # 10| Block 3
636+ # 10| v3_0(Void) = NoOp :
637+ #-----| Goto -> Block 19
638+
639+ # 11| Block 4
640+ # 11| r4_0(glval<Int32>) = VariableAddress[i] :
641+ # 11| r4_1(Int32) = Load : &:r4_0, ~mu0_2
642+ # 11| r4_2(Int32) = Constant[5] :
643+ # 11| r4_3(Boolean) = CompareEQ : r4_1, r4_2
644+ # 11| v4_4(Void) = ConditionalBranch : r4_3
645+ #-----| False -> Block 6
646+ #-----| True -> Block 5
647+
648+ # 12| Block 5
649+ # 12| v5_0(Void) = NoOp :
650+ #-----| Goto -> Block 7
651+
652+ # 13| Block 6
653+ # 13| r6_0(glval<null>) = FunctionAddress[WriteLine] :
654+ # 13| r6_1(String) = StringConstant["BreakAndContinue"] :
655+ # 13| v6_2(Void) = Call : func:r6_0, 0:r6_1
656+ # 13| mu6_3(null) = ^CallSideEffect : ~mu0_2
657+ #-----| Goto -> Block 19
658+
659+ # 16| Block 7
660+ # 16| r7_0(glval<Int32>) = VariableAddress[i] :
661+ # 16| r7_1(Int32) = Constant[0] :
662+ # 16| mu7_2(Int32) = Store : &:r7_0, r7_1
663+ #-----| Goto -> Block 8
664+
665+ # 16| Block 8
666+ # 16| r8_0(glval<Int32>) = VariableAddress[i] :
667+ # 16| r8_1(Int32) = Load : &:r8_0, ~mu0_2
668+ # 16| r8_2(Int32) = Constant[10] :
669+ # 16| r8_3(Boolean) = CompareLT : r8_1, r8_2
670+ # 16| v8_4(Void) = ConditionalBranch : r8_3
671+ #-----| False -> Block 10
672+ #-----| True -> Block 9
673+
674+ # 18| Block 9
675+ # 18| r9_0(glval<Int32>) = VariableAddress[i] :
676+ # 18| r9_1(Int32) = Load : &:r9_0, ~mu0_2
677+ # 18| r9_2(Int32) = Constant[1] :
678+ # 18| r9_3(Int32) = Add : r9_1, r9_2
679+ # 18| mu9_4(Int32) = Store : &:r9_0, r9_3
680+ # 19| v9_5(Void) = NoOp :
681+ #-----| Goto (back edge) -> Block 8
682+
683+ # 22| Block 10
684+ # 22| r10_0(glval<Int32>) = VariableAddress[a] :
685+ # 22| r10_1(Int32) = Constant[0] :
686+ # 22| mu10_2(Int32) = Store : &:r10_0, r10_1
687+ #-----| Goto -> Block 11
688+
689+ # 23| Block 11
690+ # 23| r11_0(Boolean) = Constant[true] :
691+ # 23| v11_1(Void) = ConditionalBranch : r11_0
692+ #-----| False -> Block 16
693+ #-----| True -> Block 12
694+
695+ # 25| Block 12
696+ # 25| r12_0(glval<Int32>) = VariableAddress[a] :
697+ # 25| r12_1(Int32) = Load : &:r12_0, ~mu0_2
698+ # 25| r12_2(Int32) = Constant[1] :
699+ # 25| r12_3(Int32) = Add : r12_1, r12_2
700+ # 25| mu12_4(Int32) = Store : &:r12_0, r12_3
701+ # 26| r12_5(glval<Int32>) = VariableAddress[a] :
702+ # 26| r12_6(Int32) = Load : &:r12_5, ~mu0_2
703+ # 26| r12_7(Int32) = Constant[5] :
704+ # 26| r12_8(Boolean) = CompareEQ : r12_6, r12_7
705+ # 26| v12_9(Void) = ConditionalBranch : r12_8
706+ #-----| False -> Block 14
707+ #-----| True -> Block 13
708+
709+ # 27| Block 13
710+ # 27| v13_0(Void) = NoOp :
711+ #-----| Goto (back edge) -> Block 11
712+
713+ # 28| Block 14
714+ # 28| r14_0(glval<Int32>) = VariableAddress[a] :
715+ # 28| r14_1(Int32) = Load : &:r14_0, ~mu0_2
716+ # 28| r14_2(Int32) = Constant[10] :
717+ # 28| r14_3(Boolean) = CompareEQ : r14_1, r14_2
718+ # 28| v14_4(Void) = ConditionalBranch : r14_3
719+ #-----| False (back edge) -> Block 11
720+ #-----| True -> Block 15
721+
722+ # 29| Block 15
723+ # 29| v15_0(Void) = NoOp :
724+ #-----| Goto -> Block 16
725+
726+ # 32| Block 16
727+ # 32| r16_0(glval<Int32>) = VariableAddress[i] :
728+ # 32| r16_1(Int32) = Constant[1] :
729+ # 32| mu16_2(Int32) = Store : &:r16_0, r16_1
730+ #-----| Goto -> Block 18
731+
732+ # 32| Block 17
733+ # 32| r17_0(glval<Int32>) = VariableAddress[i] :
734+ # 32| r17_1(Int32) = Load : &:r17_0, ~mu0_2
735+ # 32| r17_2(Int32) = Constant[1] :
736+ # 32| r17_3(Int32) = Add : r17_1, r17_2
737+ # 32| mu17_4(Int32) = Store : &:r17_0, r17_3
738+ #-----| Goto (back edge) -> Block 18
739+
740+ # 32| Block 18
741+ # 32| r18_0(glval<Int32>) = VariableAddress[i] :
742+ # 32| r18_1(Int32) = Load : &:r18_0, ~mu0_2
743+ # 32| r18_2(Int32) = Constant[10] :
744+ # 32| r18_3(Boolean) = CompareLE : r18_1, r18_2
745+ # 32| v18_4(Void) = ConditionalBranch : r18_3
746+ #-----| False -> Block 22
747+ #-----| True -> Block 20
748+
749+ # 7| Block 19
750+ # 7| r19_0(glval<Int32>) = VariableAddress[i] :
751+ # 7| r19_1(Int32) = Load : &:r19_0, ~mu0_2
752+ # 7| r19_2(Int32) = Constant[1] :
753+ # 7| r19_3(Int32) = Add : r19_1, r19_2
754+ # 7| mu19_4(Int32) = Store : &:r19_0, r19_3
755+ #-----| Goto (back edge) -> Block 1
756+
757+ # 34| Block 20
758+ # 34| r20_0(glval<Int32>) = VariableAddress[i] :
759+ # 34| r20_1(Int32) = Load : &:r20_0, ~mu0_2
760+ # 34| r20_2(Int32) = Constant[5] :
761+ # 34| r20_3(Boolean) = CompareEQ : r20_1, r20_2
762+ # 34| v20_4(Void) = ConditionalBranch : r20_3
763+ #-----| False -> Block 17
764+ #-----| True -> Block 21
765+
766+ # 35| Block 21
767+ # 35| v21_0(Void) = NoOp :
768+ #-----| Goto -> Block 22
769+
770+ # 37| Block 22
771+ # 37| v22_0(Void) = NoOp :
772+ # 38| r22_1(glval<null>) = FunctionAddress[WriteLine] :
773+ # 38| r22_2(String) = StringConstant["Done"] :
774+ # 38| v22_3(Void) = Call : func:r22_1, 0:r22_2
775+ # 38| mu22_4(null) = ^CallSideEffect : ~mu0_2
776+ # 5| v22_5(Void) = ReturnVoid :
777+ # 5| v22_6(Void) = UnmodeledUse : mu*
778+ # 5| v22_7(Void) = ExitFunction :
779+
606780lock.cs:
607781# 5| System.Void LockTest.A()
608782# 5| Block 0
0 commit comments