-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
JIT: Remove TYP_BLK and TYP_LCLBLK (#83036)
This PR allows TYP_STRUCT locals to have block layouts and replaces uses of TYP_BLK and TYP_LCLBLK with such locals instead. There is still an invariant that any struct parameter local (even SIMD) has a non-block layout. Also fixes a bug related to GS cookie handle with jit32 GC encoder -- it is not allowed to be at fp+0, so we need to insert some padding in some cases because now that some GS cookie-requiring locals are TYP_STRUCT they can sometimes be removed from the frame. To fix a TP regression, also precache the 0-sized block layout in the layout table. This layout is used by all non-x86 compilations because the outgoing arg area starts out as a 0-sized block local that is always allocated.
- Loading branch information
1 parent
e5fb928
commit 5c7e6d6
Showing
23 changed files
with
291 additions
and
325 deletions.
There are no files selected for viewing
This file contains 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 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 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 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 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 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 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 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.