diff options
author | gdkchan <gab.dark.100@gmail.com> | 2021-02-16 19:16:20 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-17 09:16:20 +1100 |
commit | 9d82d27df2d28c96f854b050c65e58eb1a48a22d (patch) | |
tree | a7e93232f788ab11dea5f93ad51dbdc5b3ac3af8 /ARMeilleure | |
parent | 715b605e9541cd5a7e4cce7609d96dbc41cd0326 (diff) |
Fix memory tracking performance regression (#2026)
* Fix memory tracking performance regression
* Set PTC version
Diffstat (limited to 'ARMeilleure')
-rw-r--r-- | ARMeilleure/Instructions/InstEmitMemoryHelper.cs | 6 | ||||
-rw-r--r-- | ARMeilleure/Translation/PTC/Ptc.cs | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/ARMeilleure/Instructions/InstEmitMemoryHelper.cs b/ARMeilleure/Instructions/InstEmitMemoryHelper.cs index cb4fae8f..2d7b6799 100644 --- a/ARMeilleure/Instructions/InstEmitMemoryHelper.cs +++ b/ARMeilleure/Instructions/InstEmitMemoryHelper.cs @@ -334,14 +334,14 @@ namespace ARMeilleure.Instructions { if (write) { - pte = context.ShiftLeft(pte, Const(1)); context.BranchIf(lblSlowPath, pte, Const(0L), Comparison.LessOrEqual); - pte = context.ShiftRightUI(pte, Const(1)); + pte = context.BitwiseAnd(pte, Const(0xffffffffffffUL)); // Ignore any software protection bits. (they are still used by C# memory access) } else { + pte = context.ShiftLeft(pte, Const(1)); context.BranchIf(lblSlowPath, pte, Const(0L), Comparison.LessOrEqual); - pte = context.BitwiseAnd(pte, Const(0xffffffffffffUL)); // Ignore any software protection bits. (they are still used by C# memory access) + pte = context.ShiftRightUI(pte, Const(1)); } } else diff --git a/ARMeilleure/Translation/PTC/Ptc.cs b/ARMeilleure/Translation/PTC/Ptc.cs index f3f209f0..40d2ad5c 100644 --- a/ARMeilleure/Translation/PTC/Ptc.cs +++ b/ARMeilleure/Translation/PTC/Ptc.cs @@ -22,7 +22,7 @@ namespace ARMeilleure.Translation.PTC { private const string HeaderMagic = "PTChd"; - private const int InternalVersion = 1987; //! To be incremented manually for each change to the ARMeilleure project. + private const int InternalVersion = 2026; //! To be incremented manually for each change to the ARMeilleure project. private const string ActualDir = "0"; private const string BackupDir = "1"; |