File tree Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -17139,7 +17139,15 @@ GenTree* Compiler::gtWrapWithSideEffects(GenTree* tree,
17139
17139
// It should be possible to be smarter here and allow such cases by extracting the side effects
17140
17140
// properly for this particular case. For now, caller is responsible for avoiding such cases.
17141
17141
17142
- tree = gtNewOperNode(GT_COMMA, tree->TypeGet(), sideEffects, tree);
17142
+ if (sideEffectsSource->OperIs(GT_COMMA) && sideEffectsSource->AsOp()->gtOp1 == sideEffects)
17143
+ {
17144
+ sideEffectsSource->AsOp()->gtOp2 = tree;
17145
+ return sideEffectsSource;
17146
+ }
17147
+ else
17148
+ {
17149
+ tree = gtNewOperNode(GT_COMMA, tree->TypeGet(), sideEffects, tree);
17150
+ }
17143
17151
}
17144
17152
return tree;
17145
17153
}
You can’t perform that action at this time.
0 commit comments