-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Stackalloc localloc conditional2 #127980
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
AndyAyersMS
wants to merge
47
commits into
dotnet:main
Choose a base branch
from
AndyAyersMS:StackallocLocallocConditional2
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Stackalloc localloc conditional2 #127980
Changes from all commits
Commits
Show all changes
47 commits
Select commit
Hold shift + click to select a range
c5cefd3
proof of concept
AndyAyersMS 4d9f1bc
fix flags
AndyAyersMS e3c4019
enable by default (for now)
AndyAyersMS 23b4261
enable for array allocations in loops too
AndyAyersMS d096d63
add missing bit of code
AndyAyersMS 032f724
add handler check; fix elem size type
AndyAyersMS 1e088c4
fix zero init logic
AndyAyersMS d572dec
merge main
AndyAyersMS 526ba2f
update post merge, cleanup a bit
AndyAyersMS 9e7cf8e
pad localloc array size as if it was on heap; handle align8
AndyAyersMS e247123
don't allow localloc for gc type arrays
AndyAyersMS f858501
Merge branch 'main' into StackallocLocalloc
AndyAyersMS f421343
simple runtime check for stack alloc vs heap alloc
AndyAyersMS 45f648e
make new call instead of trying to hack up the old one
AndyAyersMS 66a8ddd
Merge branch 'main' into StackallocLocalloc
AndyAyersMS 39294f4
Merge remote-tracking branch 'origin/StackallocLocalloc' into Stackal…
AndyAyersMS 5540b26
temp fix for linux x64 issue with misaligned frame
AndyAyersMS d7ac700
Merge branch 'StackallocLocalloc' into StackallocLocallocConditional2
AndyAyersMS 7c7ff33
Merge remote-tracking branch 'upstream/main' into StackallocLocallocC…
AndyAyersMS 7cc123c
Fix MorphNewArrNodeIntoStackAlloc body to match merged signature
AndyAyersMS cf5063e
codegenwasm: honor GTF_LCLHEAP_MUSTINIT in genLclHeap
AndyAyersMS ad2add4
Add Compiler::gtMustZeroLocalloc helper and use it at LCLHEAP sites
AndyAyersMS 62f33f4
Remove unused locals after merge regression
AndyAyersMS 47f47fe
Fix off-by-one in stack-array localloc size round-up
AndyAyersMS f1454bc
Restore variable-length newarr admission for localloc dispatch
AndyAyersMS e3fcb61
Keep localloc'd stack arrays only possibly-stack-pointing for GC trac…
AndyAyersMS 0c3e303
Validate length before stack-array localloc to avoid memory corruption
AndyAyersMS 0b27c02
Apply jit-format --fix --untidy
AndyAyersMS ebd2e51
Use length's actual type for stack-array localloc length check
AndyAyersMS 5dee83b
Add regression tests for variable-length stack-array localloc
AndyAyersMS 25128b6
Skip localloc dispatch when newarr result is unused
AndyAyersMS cf44e72
Merge branch 'main' into StackallocLocallocConditional2
AndyAyersMS 739a362
Add per-frame budget for conditional stack allocations
AndyAyersMS 1993d41
Address PR #127980 review feedback
AndyAyersMS e35374a
Merge remote-tracking branch 'origin/main' into StackallocLocallocCon…
AndyAyersMS 2ab5f64
Use managed helper for conditional localloc policy
AndyAyersMS 03b2692
Address conditional localloc review feedback
AndyAyersMS c9a93fb
Increase conditional localloc heap fallback test size
AndyAyersMS 82e532f
Preserve heap possibility for conditional localloc
AndyAyersMS 3e1e064
Merge remote-tracking branch 'origin/main' into StackallocLocallocCon…
AndyAyersMS c0c7b99
Address conditional localloc feedback
AndyAyersMS b78e2e2
Merge origin/main into conditional localloc branch
AndyAyersMS da912d4
Route in-loop arrays through conditional localloc
AndyAyersMS 00be573
Fix conditional localloc CI failures
AndyAyersMS 6f9e64d
Fix conditional localloc expansion iteration
AndyAyersMS 2b291b4
Fix conditional localloc replacement type
AndyAyersMS 2a86206
Merge remote-tracking branch 'upstream/main' into StackallocLocallocC…
AndyAyersMS File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.