Skip to content

Commit accd29f

Browse files
richlanderCopilot
andcommitted
Add JIT/runtime examples to release notes reference
Three styles of JIT feature descriptions: - Array Enumeration De-Abstraction (progressive benchmarks, optimization narrative) - Struct Arguments codegen (before/after assembly comparison) - Loop Optimizations (metric-heavy prose, no code) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 5105869 commit accd29f

1 file changed

Lines changed: 21 additions & 1 deletion

File tree

.github/skills/release-notes/references/examples.md

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,24 @@ A behavioral change that's mostly invisible but has an edge case. Explains what
4040

4141
Best for: major features, security capabilities, things users have been asking for.
4242

43+
### Example: Array Enumeration De-Abstraction
44+
45+
> From [.NET 10 Preview 2 — Runtime](../../release-notes/10.0/preview/preview2/runtime.md)
46+
47+
A progressive JIT optimization story told through three benchmark tables. Starts with a simple case (transparent type), escalates to a harder case (opaque type behind interface), and walks through each optimization layer (inlining, PGO, guarded devirtualization, conditional escape analysis). Each benchmark shows measurable improvement. The narrative structure — problem, partial solution, harder problem, better solution — keeps the reader engaged.
48+
49+
### Example: Improved Code Generation for Struct Arguments
50+
51+
> From [.NET 10 Preview 6 — Runtime](../../release-notes/10.0/preview/preview6/runtime.md)
52+
53+
Before/after assembly comparison showing a concrete codegen improvement. Starts with C# code, shows the current optimal case, introduces the pathological case with assembly output, then shows the fix. Three `asm` blocks tell the whole story — the reader can literally count the instructions eliminated.
54+
55+
### Example: JIT Loop Optimizations
56+
57+
> From [.NET 9 Preview 1 — Runtime](../../release-notes/9.0/preview/preview1/runtime.md)
58+
59+
No code at all — just crisp prose with percentages. Explains three optimization categories (hoisting, cloning, alignment) with one-paragraph descriptions and measured improvement rates. Good template for infrastructure improvements where the value is breadth of impact rather than a single dramatic before/after.
60+
4361
### Example: Post-Quantum Cryptography Updates
4462

4563
> From [.NET 10 Preview 7 — Libraries](../../release-notes/10.0/preview/preview7/libraries.md)
@@ -59,4 +77,6 @@ Community contribution with extensive quoted motivation from the contributor. Th
5977
3. **Code shows, prose explains** — when there's an API, show it; use prose for the why/when
6078
4. **Attribution is natural** — community contributions get a mention with a GitHub link, not a separate "contributors" section
6179
5. **Diff format for improvements** — when a feature simplifies existing code, `diff` blocks make the improvement immediately visible
62-
6. **Workarounds are welcome** — if a change might break someone, say so and give the escape hatch
80+
6. **Assembly comparisons for JIT work** — before/after `asm` blocks let readers count the instructions eliminated
81+
7. **Progressive benchmarks tell a story** — multiple benchmark tables showing incremental improvement are more compelling than a single number
82+
8. **Workarounds are welcome** — if a change might break someone, say so and give the escape hatch

0 commit comments

Comments
 (0)