summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorJoseph Tremoulet <jotrem@microsoft.com>2017-08-18 12:13:41 -0400
committerJoseph Tremoulet <jotrem@microsoft.com>2017-08-18 13:42:25 -0400
commit73304d84c008380b1fed2d28bf48a16fdf3ec7b4 (patch)
tree75e3cb0b87e5ce9e41c91b0c3827666714bed15f /Documentation
parent7145b1e1ccf2d5d77138be9589e221b3e4e472ef (diff)
downloadcoreclr-73304d84c008380b1fed2d28bf48a16fdf3ec7b4.tar.gz
coreclr-73304d84c008380b1fed2d28bf48a16fdf3ec7b4.tar.bz2
coreclr-73304d84c008380b1fed2d28bf48a16fdf3ec7b4.zip
Mention Byref Store/Load VN and Helper Call Kills
These are two more areas that have received recent scrutiny.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/performance/JitOptimizerTodoAssessment.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/Documentation/performance/JitOptimizerTodoAssessment.md b/Documentation/performance/JitOptimizerTodoAssessment.md
index 24b9a4fa53..5a34535800 100644
--- a/Documentation/performance/JitOptimizerTodoAssessment.md
+++ b/Documentation/performance/JitOptimizerTodoAssessment.md
@@ -122,6 +122,15 @@ benchmarking story set up to measure the effect of such changes when they go in,
we should do that.
+### Helper Call Register Kill Set Improvements
+
+We have some facility to allocate caller-save registers across calls to runtime
+helpers that are known not to trash them, but the information about which
+helpers trash which registers is spread across a few places in the codebase,
+and has some puzzling quirks like separate "GC" and "NoGC" kill sets for the
+same helper. Unifying the information sources and then refining the recorded
+kill sets would help avoid more stack traffic. See [#12940](https://github.com/dotnet/coreclr/issues/12940).
+
Low-Hanging Fruit
-----------------
@@ -144,6 +153,14 @@ patterns and emit specialized write barriers that avoid various overheads --
see [#13006](https://github.com/dotnet/coreclr/issues/13006) and [#12812](https://github.com/dotnet/coreclr/issues/12812).
+### Byref-Exposed Store/Load Value Propagation
+
+There are a few tweaks to our value-numbering for byref-exposed loads and stores
+to share some of the machinery we use for heap loads and stores that would
+allow better propagation through byref-exposed locals and out parameters --
+see [#13457](https://github.com/dotnet/coreclr/issues/13457) and
+[#13458](https://github.com/dotnet/coreclr/issues/13458).
+
Miscellaneous
-------------