You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Consider passing enregisterLocalVars as a template argument to LinearScan #82848
Today, we check for enregisterLocalVars at lot of hot code in LinearScan and probably templatizing it would be better.
Evaluate the impact on binary size if we do it. If it increases the size significantly, extract out the checks for enregisterLocalVars out of some of the loops or add special paths for it.
Activity
JulieLeeMSFT commentedon Apr 13, 2023
@kunalspathak is this going to be .NET 8 work?
kunalspathak commentedon Apr 13, 2023
Most likely. Let us keep it in .NET 8 for now and we can reevaluate in next month or so.
kunalspathak commentedon Apr 20, 2023
Here is the list of methods that has the checks for
if(enregisterLocalVars)recordVarLocationsAtStartOfBB: Called from codegen that cannot accessprivate enregisterLocalVars.isRegCandidate<-- no change in sizeidentifyCandidates<-- no change in sizeidentifyCandidates<-- no change in sizeinitVarRegMap<-- no change in sizeprocessBlockEndAllocation<-- no change in sizeprocessBlockStartLocations<-- no change in sizeresolveRegisters()<-- 1KB increaseisContainableMemoryOp: Not worth doing.buildKillPositionsForNode: Not worth doing.buildIntervals<-- 3KB size increase. Will re-evaluate.