Commit graph

24 commits

Author SHA1 Message Date
Jean-Philip Desjardins
b8877ddfd2 Code style fixes. 2020-12-02 18:43:42 -05:00
Jean-Philip Desjardins
70f7251582 Attach exception handler to GS thread on macOS/iOS.
GS thread sometimes writes to EE RAM.
2020-12-02 15:32:48 -05:00
Jean-Philip Desjardins
602bb90e8f Simplify cached block handling in EE executor. 2020-08-06 16:57:12 -04:00
Jean-Philip Desjardins
8b21aca123 Enable protecting RAM pages to detect modified code on iOS. 2020-02-25 12:47:56 -05:00
Jean-Philip Desjardins
9db589cdca Add some asserts. 2020-02-25 12:47:56 -05:00
Jean-Philip Desjardins
2ae43e0320 Don't cache blocks that have breakpoints.
Broke breakpoint toggling.

(cherry picked from commit 3d2ed9e20f2b917b10f359ee76c8724192e839c2)
2020-02-10 21:40:09 -05:00
Jean-Philip Desjardins
95584611ca Add a no link threshold for recycled blocks.
Significatively improves speed of Jak series games.
2019-12-20 21:25:33 -05:00
Jean-Philip Desjardins
07592cd138 Recycle compiled blocks. 2019-12-18 07:44:52 -05:00
Jean-Philip Desjardins
3210ffecfa Breakpoints now work again. 2018-07-26 21:38:17 -04:00
Jean-Philip Desjardins
050bf0f854 MipsExecutor is now owned by MIPS CPU context.
Will help to make new breakpoint implementation simpler.
2018-07-26 21:38:16 -04:00
Jean-Philip Desjardins
dc597e34ce Add empty block concept. 2018-07-26 21:38:15 -04:00
Jean-Philip Desjardins
f23dce025b Made MipsExecutor a template.
Allows choosing block lookup policy.
2018-07-26 21:38:14 -04:00
Clang-Format
acf75535ec Clang format 2018-04-30 21:01:23 +01:00
Jean-Philip Desjardins
5c1347162f Always protect currently executing block.
Previous detection method was broken anyways because it is possible for a basic block
to span two pages with its begin address (PC) being in the page that's not protected.

Needed for Hot Shots Golf Fore.
2018-04-22 10:04:05 -04:00
Jean-Philip Desjardins
331cf44917 Don't teardown exception handler if protection is disabled. 2017-12-13 08:21:22 -05:00
Jean-Philip Desjardins
5ede128f2d Cleanup. 2017-12-13 08:17:22 -05:00
Mahmood(Thunder07)
c0328be1a2 OSX: CEeExecutor prevent thread block 2017-10-16 13:37:32 +01:00
Mahmood(Thunder07)
09abad8bf9 linux: missing define and include 2016-09-06 00:23:44 +01:00
Jean-Philip Desjardins
7814cc56ea Enabled arm64 build on iOS. 2015-12-23 16:38:25 -05:00
Jean-Philip Desjardins
9bb55bb07a Disable memory protection on iOS till we figure out how to do it properly. 2015-06-27 22:02:26 -04:00
Jean-Philip Desjardins
62fbaa86ac Fixed Android build. 2015-06-09 23:06:43 -04:00
Jean-Philip Desjardins
6cd0e5e3dd Made EE executor work on OSX. 2015-06-09 02:49:54 -04:00
Jean-Philip Desjardins
81e3ce2820 Made EE executor work on Android. 2015-06-08 01:39:23 -04:00
Jean-Philip Desjardins
295da9f66c Added EE executor that handles block cache invalidation using virtual memory mechanisms. 2015-06-07 23:44:46 -04:00