Skip to content

Commit 4e7cf80

Browse files
Some VN refactoring (#61034)
* Remove "block" from VNApplySelectorsAssign It was unused and all the callers passed the current block anyway. Also some renaming to make Assign and AssignTypeCoerce methods consistent. * Improve the readability of VNForMapStore By naming parameters properly. * Improve the readability of VNForMapSelect By naming parameters properly. * Pull ASG numbering out of fgValueNumberTree In my upcoming substantive changes to this code the unreasonable level of nesting started to significantly degrade the readability of code. So, move it out of the main numbering function. The result is still pretty huge and could be split up further, but this will do for now. * Refactor VNApplySelectors Make it use a loop instead of recursion. Rename parameters to match the "Assign" variants. Add standard header comments.
1 parent c690d27 commit 4e7cf80

3 files changed

Lines changed: 746 additions & 745 deletions

File tree

src/coreclr/jit/compiler.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5465,6 +5465,8 @@ class Compiler
54655465
// assignment.)
54665466
void fgValueNumberTree(GenTree* tree);
54675467

5468+
void fgValueNumberAssignment(GenTreeOp* tree);
5469+
54685470
// Does value-numbering for a block assignment.
54695471
void fgValueNumberBlockAssignment(GenTree* tree);
54705472

0 commit comments

Comments
 (0)