-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Commit 468447b
authored
Optimize lsra for MinOpts (#96386)
* Optimize resetAllRegistersState()
* Add assert about refType for minopts
* Templatize processBlockEndAllocation()
* Add resetMinOpts()
* Add selectMinOpts()
* Add calculateUnassignedSet()
* Call spillCostMinOpts() for minopts
* Add enregisterLocalVars check in setIntervalAsSpilled()
* optimize few paths in resolveRegisters()
* optimize few paths in allocateRegisters()
* Adjust RegisterSelection creation
* Add allocateRegistersForMinOpts()
* jit format
* Update the assert for processBlockStartLocations()
* Fix bug by using freeCandidates
* Set candidates only if freeCandidates are NONE
* Remove unnecessary setting of foundRegBit
* Remove unnecessary checks for `freeCandidates == RBM_NONE`
* Remove unnecessary checks for `freeCandidates == RBM_NONE` --amend
* wip
* add allocateRegForMinOpts()
* Remove hasConsecutiveRegister template from allocateRegistersForMinOpt()
* Add template parameter for assignCopyReg() and fix the uses
* fix calls to processBlockEndAllocation()
* fix bug about initializing vectorIter
* Add assignCopyRegForMinOpts
* jit format
* rename from *MinOpts to *Minimal
* Remove unneeded method
* jit format
* Add back short-circuit code
* Quick LSRA only if optimization is disabled
* Add verifyFreeRegisters()1 parent 7373fd0 commit 468447bCopy full SHA for 468447b
File tree
Expand file treeCollapse file tree
3 files changed
+1338
-278
lines changedFilter options
- src/coreclr/jit
Expand file treeCollapse file tree
3 files changed
+1338
-278
lines changed
0 commit comments