@@ -75,13 +75,17 @@ func.func @test_for_yield() {
7575// CPP-DEFAULT-NEXT: [[SI:[^ ]*]] = [[S0]];
7676// CPP-DEFAULT-NEXT: [[PI:[^ ]*]] = [[P0]];
7777// CPP-DEFAULT-NEXT: for (size_t [[ITER:[^ ]*]] = [[START]]; [[ITER]] < [[STOP]]; [[ITER]] += [[STEP]]) {
78- // CPP-DEFAULT-NEXT: int32_t [[SN:[^ ]*]] = add([[SI]], [[ITER]]);
79- // CPP-DEFAULT-NEXT: float [[PN:[^ ]*]] = mul([[PI]], [[ITER]]);
78+ // CPP-DEFAULT-NEXT: int32_t [[SI_LOAD:[^ ]*]] = [[SI]];
79+ // CPP-DEFAULT-NEXT: int32_t [[SN:[^ ]*]] = add([[SI_LOAD]], [[ITER]]);
80+ // CPP-DEFAULT-NEXT: float [[PI_LOAD:[^ ]*]] = [[PI]];
81+ // CPP-DEFAULT-NEXT: float [[PN:[^ ]*]] = mul([[PI_LOAD]], [[ITER]]);
8082// CPP-DEFAULT-NEXT: [[SI]] = [[SN]];
8183// CPP-DEFAULT-NEXT: [[PI]] = [[PN]];
8284// CPP-DEFAULT-NEXT: }
83- // CPP-DEFAULT-NEXT: [[SE]] = [[SI]];
84- // CPP-DEFAULT-NEXT: [[PE]] = [[PI]];
85+ // CPP-DEFAULT-NEXT: int32_t [[SI_LOAD2:[^ ]*]] = [[SI]];
86+ // CPP-DEFAULT-NEXT: [[SE]] = [[SI_LOAD2]];
87+ // CPP-DEFAULT-NEXT: float [[PI_LOAD2:[^ ]*]] = [[PI]];
88+ // CPP-DEFAULT-NEXT: [[PE]] = [[PI_LOAD2]];
8589// CPP-DEFAULT-NEXT: return;
8690
8791// CPP-DECLTOP: void test_for_yield() {
@@ -94,8 +98,12 @@ func.func @test_for_yield() {
9498// CPP-DECLTOP-NEXT: float [[PE:[^ ]*]];
9599// CPP-DECLTOP-NEXT: int32_t [[SI:[^ ]*]];
96100// CPP-DECLTOP-NEXT: float [[PI:[^ ]*]];
101+ // CPP-DECLTOP-NEXT: int32_t [[SI_LOAD:[^ ]*]];
97102// CPP-DECLTOP-NEXT: int32_t [[SN:[^ ]*]];
103+ // CPP-DECLTOP-NEXT: float [[PI_LOAD:[^ ]*]];
98104// CPP-DECLTOP-NEXT: float [[PN:[^ ]*]];
105+ // CPP-DECLTOP-NEXT: int32_t [[SI_LOAD2:[^ ]*]];
106+ // CPP-DECLTOP-NEXT: float [[PI_LOAD2:[^ ]*]];
99107// CPP-DECLTOP-NEXT: [[START]] = 0;
100108// CPP-DECLTOP-NEXT: [[STOP]] = 10;
101109// CPP-DECLTOP-NEXT: [[STEP]] = 1;
@@ -105,16 +113,20 @@ func.func @test_for_yield() {
105113// CPP-DECLTOP-NEXT: ;
106114// CPP-DECLTOP-NEXT: ;
107115// CPP-DECLTOP-NEXT: ;
108- // CPP-DECLTOP-NEXT: [[SI:[^ ]* ]] = [[S0]];
109- // CPP-DECLTOP-NEXT: [[PI:[^ ]* ]] = [[P0]];
116+ // CPP-DECLTOP-NEXT: [[SI]] = [[S0]];
117+ // CPP-DECLTOP-NEXT: [[PI]] = [[P0]];
110118// CPP-DECLTOP-NEXT: for (size_t [[ITER:[^ ]*]] = [[START]]; [[ITER]] < [[STOP]]; [[ITER]] += [[STEP]]) {
111- // CPP-DECLTOP-NEXT: [[SN]] = add([[SI]], [[ITER]]);
112- // CPP-DECLTOP-NEXT: [[PN]] = mul([[PI]], [[ITER]]);
119+ // CPP-DECLTOP-NEXT: [[SI_LOAD]] = [[SI]];
120+ // CPP-DECLTOP-NEXT: [[SN]] = add([[SI_LOAD]], [[ITER]]);
121+ // CPP-DECLTOP-NEXT: [[PI_LOAD]] = [[PI]];
122+ // CPP-DECLTOP-NEXT: [[PN]] = mul([[PI_LOAD]], [[ITER]]);
113123// CPP-DECLTOP-NEXT: [[SI]] = [[SN]];
114124// CPP-DECLTOP-NEXT: [[PI]] = [[PN]];
115125// CPP-DECLTOP-NEXT: }
116- // CPP-DECLTOP-NEXT: [[SE]] = [[SI]];
117- // CPP-DECLTOP-NEXT: [[PE]] = [[PI]];
126+ // CPP-DECLTOP-NEXT: [[SI_LOAD2]] = [[SI]];
127+ // CPP-DECLTOP-NEXT: [[SE]] = [[SI_LOAD2]];
128+ // CPP-DECLTOP-NEXT: [[PI_LOAD2]] = [[PI]];
129+ // CPP-DECLTOP-NEXT: [[PE]] = [[PI_LOAD2]];
118130// CPP-DECLTOP-NEXT: return;
119131
120132func.func @test_for_yield_2 () {
0 commit comments