dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.36k stars 4.75k forks source link

[RyuJIT][LSRA] Improve efficiency of VarToRegMaps #8013

Open CarolEidt opened 7 years ago

CarolEidt commented 7 years ago

For large methods, where the efficiency is of most concern, it may be more efficient to keep a map from registers (which are likely to be densely populated) to variables rather than the reverse, as is currently done. This may impact efficiency in other areas, so requires investigation. category:throughput theme:register-allocator skill-level:expert cost:medium

CarolEidt commented 7 years ago

See the TODO-throughput comments in LinearScan::getTempRegForResolution() and LinearScan::resolveEdge().

CarolEidt commented 7 years ago

Also, consider abstracting the mapping of variables to registers.

ghost commented 1 year ago

Due to lack of recent activity, this issue has been marked as a candidate for backlog cleanup. It will be closed if no further activity occurs within 14 more days. Any new comment (by anyone, not necessarily the author) will undo this process.

This process is part of our issue cleanup automation.

ghost commented 1 year ago

This issue will now be closed since it had been marked no-recent-activity but received no further activity in the past 14 days. It is still possible to reopen or comment on the issue, but please note that the issue will be locked if it remains inactive for another 30 days.