-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Jit64: Don't store immediate values in register cache
They're now stored in ConstantPropagation instead. I've also removed the LocationType enum. The location of each guest register is now tracked using three booleans: Whether it is in ppcState, whether it is in a host register, and whether it is a known immediate. The first two of these booleans are stored in the register cache, and the last one is stored in ConstantPropagation. This new model allows us to handle the combination of a value simultaneously being in a host register and being a known immediate. It also keeps track of which registers are dirty, which was previously kept track of in X64CachedReg. The old model maps to the new model as follows: default host_reg immediate Default true false false Discarded false false false Bound (!dirty) true false Immediate false false true SpeculativeImmediate true false true [previously unrepresentable] (!dirty) true true
- Loading branch information
Showing
11 changed files
with
219 additions
and
202 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
Oops, something went wrong.