Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
4f07fab
JIT: Coalesce adjacent STORE_LCL_FLD nodes
AndyAyersMS Mar 26, 2026
f8a89a7
JIT: Add heuristic for non-constant STORE_LCL_FLD coalescing
AndyAyersMS Mar 26, 2026
2b3926f
JIT: Fold narrow constant stores into preceding wider zero-init
AndyAyersMS Mar 26, 2026
48da287
JIT: Generalize narrow-into-wide fold beyond zero-init
AndyAyersMS Mar 26, 2026
187dd5b
JIT: Bypass constant store+load for last-use locals
AndyAyersMS Mar 26, 2026
21130c7
JIT: Revert store-load bypass due to correctness issue
AndyAyersMS Mar 26, 2026
8c294d8
Revert "JIT: Revert store-load bypass due to correctness issue"
AndyAyersMS Mar 26, 2026
0c83c01
tweak; format
AndyAyersMS Mar 26, 2026
fc88ab9
JIT: Fix store-load bypass with GTF_ICON_STRUCT_INIT_VAL flag
AndyAyersMS Mar 26, 2026
ffe5df5
JIT: Relax store-load bypass to not require last use
AndyAyersMS Mar 26, 2026
0ceed69
JIT: Support partial constant forwarding in store-load bypass
AndyAyersMS Mar 26, 2026
190473b
JIT: Remove partial forward debug trace
AndyAyersMS Mar 26, 2026
fe29f90
JIT: Skip store-load bypass for address-exposed locals
AndyAyersMS Mar 26, 2026
345f8f7
format, fix comments
AndyAyersMS Mar 26, 2026
ba118a0
JIT: Extract store-forwarding into TryForwardConstantStoreLclFld helper
AndyAyersMS Mar 26, 2026
671ea9b
JIT: Remove unnecessary IsInvariantInRange check from store forwarding
AndyAyersMS Mar 26, 2026
04b3001
JIT: Extract non-constant coalescing into TryCoalesceNonConstStoreLclFld
AndyAyersMS Mar 26, 2026
f160a84
JIT: Fix formatting via jit-format
AndyAyersMS Mar 26, 2026
f8261e8
JIT: Remove redundant control flow boundary checks from scan loops
AndyAyersMS Mar 26, 2026
2a1eade
JIT: Fix store forwarding for small types and struct reads
AndyAyersMS Mar 26, 2026
d79c292
JIT: Address PR review feedback
AndyAyersMS Mar 27, 2026
3945afb
JIT: Change GTF_ICON_STRUCT_INIT_VAL bit to avoid conflict
AndyAyersMS Mar 27, 2026
786addd
JIT: Restrict store forwarding to integral-typed reads only
AndyAyersMS Mar 27, 2026
283385a
JIT: ABI-aware struct forwarding in TryForwardConstantStoreLclFld
AndyAyersMS Mar 27, 2026
fcf8bef
JIT: Enable struct forwarding on all platforms
AndyAyersMS Mar 27, 2026
7efe2d4
JIT: Address second round of PR review feedback
AndyAyersMS Mar 27, 2026
b698b83
JIT: Remove overly broad address-exposed coalescing restriction
AndyAyersMS Mar 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/coreclr/jit/gentree.h
Original file line number Diff line number Diff line change
Expand Up @@ -519,6 +519,7 @@ enum GenTreeFlags : unsigned

// GTF_ICON_REUSE_REG_VAL = 0x00800000 // GT_CNS_INT -- GTF_REUSE_REG_VAL, defined above
GTF_ICON_SIMD_COUNT = 0x00200000, // GT_CNS_INT -- constant is Vector<T>.Count
GTF_ICON_STRUCT_INIT_VAL = 0x00400000, // GT_CNS_INT -- constant is a full struct init value, not a byte pattern

GTF_OVERFLOW = 0x10000000, // Supported for: GT_ADD, GT_SUB, GT_MUL and GT_CAST.
// Requires an overflow check. Use gtOverflow(Ex)() to check this flag.
Expand Down
Loading
Loading