Commit Graph

152 Commits

Author SHA1 Message Date
Henrik Rydgard 465367bf1b iOS buildfix attempt 2020-07-14 09:25:45 +02:00
Henrik Rydgard 430c3ee6a3 HandleFault: Add missing nullcheck 2020-07-14 09:25:45 +02:00
Henrik Rydgard fdcf4f06f2 Add x64Analyzer to Android.mk. Some minor cleanup 2020-07-14 09:25:45 +02:00
Henrik Rydgard c988d42b04 ARM/ARM64 instruction analysis, hook up to handler 2020-07-14 09:25:45 +02:00
Henrik Rydgard aa802ecc0f Skip bad reads/writes by the guest executable. 2020-07-14 09:25:45 +02:00
Henrik Rydgard 1fce6de8b1 Simple exception handler so we can ignore accesses that happen within the PSP memory space. 2020-07-14 09:25:45 +02:00
Unknown W. Brackets b4496f1975 Core: Move config enums to separate file.
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets 3193772e78 Debugger: Use a lock for memory reallocs.
Simpler this way, no need to remember to lock memory.
2018-06-08 06:59:18 -07:00
Unknown W. Brackets 395ac32d63 Debugger: Run memory breakpoints on mobile. 2018-06-06 17:31:56 -07:00
Henrik Rydgård 100cf60bc7 Memory::Memset: IsValidRange is a better solution. 2017-11-30 23:18:20 +01:00
Henrik Rydgård 20e93515be Add sanity check in Memory::Memset 2017-11-30 16:49:14 +01:00
Henrik Rydgård 4bad28046b UWP: Save memory by only committing the ranges we need, instead of doing a giant allocation. 2017-03-23 10:02:29 +01:00
Henrik Rydgard d58ee6670e UWP: Fix audio sample rate, savestates, memory leak. 2017-03-23 10:02:28 +01:00
Henrik Rydgard ff2b6b3fca Assorted cleanup, UWP memory map fixes. PSPFlower runs in both 32-bit and 64-bit. 2017-03-23 10:02:28 +01:00
Unknown W. Brackets 88780fe1dd Cut down on some logspam. 2017-03-19 07:44:44 -07:00
Henrik Rydgård 32a71c4c74 Fix typo, preprocessor warning 2017-03-10 18:02:41 +01:00
Henrik Rydgård 440e72d250 Clean up among the logs. Remove MASTER_LOG. 2017-03-06 13:10:23 +01:00
Henrik Rydgard b0eab68760 Fix compiler warning 2017-03-03 14:16:19 +01:00
Henrik Rydgard 83c108836b Fix a hang/crash when using the Windows GE debugger 2017-03-03 11:17:59 +01:00
Henrik Rydgard 26a2d42731 Big mutex overhaul - remove our custom ones, make them non-recursive where possible 2017-02-28 11:40:29 +01:00
Henrik Rydgard a1ec735f6c ARM64Emitter: Implement instructions to move data to/from SP 2017-01-26 14:23:42 +01:00
Henrik Rydgård 193b5f3094 By skipping kernel mappings, I got things to fit in the iOS 64-bit address space. However, something is still a bit broken with JIT... 2017-01-25 18:35:09 +01:00
Henrik Rydgård 5e61a5afe1 Implement fastmem for Darwin. Not very successfully yet.. 2017-01-25 17:14:43 +01:00
Henrik Rydgard 73a2a1bc0f The MemArena code has way too many ifdefs. Split it up by platform. 2017-01-25 16:20:21 +01:00
Henrik Rydgard 4e1f562f47 Remove the "low" memory mappings, we have no use for them 2017-01-25 15:15:17 +01:00
Henrik Rydgard 5df4bac6d2 Delete some left behind unused code 2017-01-25 10:05:39 +01:00
Florent Castelli 8c3552de74 cmake: Detect features at compile time
Instead of relying on manually passed down flags from CMake,
we now have ppsspp_config.h file to create the platform defines for us.
This improves support for multiplatform builds (such as iOS).
2016-10-19 12:31:19 +02:00
Florent Castelli 4145b60a0e symbian: Remove! 2016-10-11 18:49:08 +02:00
Unknown W. Brackets eee98966f4 Add Memory utility to detect shutdown. 2016-05-19 21:17:17 -07:00
Unknown W. Brackets e37777648e jit-ir: Restore emuhacks before saving state.
Let's just ask jit to do this, not its block cache directly.
2016-05-14 08:59:44 -07:00
Henrik Rydgard 3c5510e5a3 Disable debug file logging, fix issue with replacement functions, etc 2016-05-07 21:35:12 +02:00
Henrik Rydgard 4acf85aa06 It's kind of starting to run 2016-05-07 17:37:19 +02:00
Henrik Rydgard a5be0976bd Remove preprocessor hacks to choose JIT implementation.
Opens up for having multiple JIT implementations available at runtime,
which could be use for experimenting with new JIT compiler types or for
unit testing one JIT on another architecture.

Very few of the newly virtual calls are on any sort of critical path so
hopefully there will not be a performance loss.
2016-05-01 11:39:53 +02:00
Unknown W. Brackets d273deedeb Use MEMSIZE SFO param to detect 64MB homebrew.
Now, use 32MB for normal games even in PSP-2000 mode, which is how real
firmware behaves.
2015-12-23 15:16:48 -08:00
Jan Beich a4eb49f009 Unbreak build with FakeJit
Core/MIPS/fake/FakeJit.cpp:141:46: error:
      unknown type name 'FakeJitBlock'; did you mean 'JitBlock'?
const u8 *FakeJit::DoFakeJit(u32 em_address, FakeJitBlock *b)
                                             ^~~~~~~~~~~~
                                             JitBlock
Core/MIPS/JitCommon/JitBlockCache.h:59:8: note:
      'JitBlock' declared here
struct JitBlock {
       ^
Core/MIPS/fake/FakeJit.cpp:141:20: error:
      out-of-line definition of 'DoFakeJit' does not match any declaration in
      'MIPSComp::FakeJit'
const u8 *FakeJit::DoFakeJit(u32 em_address, FakeJitBlock *b)
                   ^~~~~~~~~
Core/HLE/ReplaceTables.cpp:1044:29: error:
      use of undeclared identifier 'JITFUNC'
        { "fabsf", &Replace_fabsf, JITFUNC(Replace_fabsf), REPFLAG_ALLOWINLI...
                                   ^
Core/HLE/ReplaceTables.cpp:1101:27: error:
      invalid application of 'sizeof' to an incomplete type 'const
      ReplacementTableEntry []'
        for (int i = 0; i < (int)ARRAY_SIZE(entries); i++) {
                                 ^~~~~~~~~~~~~~~~~~~
native/math/../base/basictypes.h:67:30: note:
      expanded from macro 'ARRAY_SIZE'
 #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
                             ^~~
Core/HLE/ReplaceTables.cpp:1117:9: error:
      invalid application of 'sizeof' to an incomplete type 'const
      ReplacementTableEntry []'
        return ARRAY_SIZE(entries);
               ^~~~~~~~~~~~~~~~~~~
native/math/../base/basictypes.h:67:30: note:
      expanded from macro 'ARRAY_SIZE'
 #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
                             ^~~
Core/MIPS/JitCommon/JitCommon.cpp:31:2: error:
      unknown type name 'Jit'
        Jit *jit;
        ^
Core/MIPS/JitCommon/JitCommon.cpp:100:21: error:
      no member named 'Asm' in 'MIPSComp::FakeJit'
        if (MIPSComp::jit->Asm().IsInSpace((u8 *)(intptr_t)addr)) {
            ~~~~~~~~~~~~~  ^
Core/MIPS/JitCommon/JitCommon.cpp:101:45: error:
      no member named 'Asm' in 'MIPSComp::FakeJit'
                *offset = addr - (uint64_t)MIPSComp::jit->Asm().GetBasePtr();
                                           ~~~~~~~~~~~~~  ^
Core/MemMap.cpp:197:57: error:
      use of undeclared identifier 'MEMVIEW32_MASK'
  ...position, view.size, base + (view.virtual_address & MEMVIEW32_MASK));
                                                             ^
2015-05-26 15:20:10 +03:00
Henrik Rydgard b309c83973 Initial work on ARM64, based on the ARM jit. 2015-04-06 18:13:01 +02:00
Unknown W. Brackets 2450724be2 Make Memory::Memcpy() execute memchecks directly.
This makes it easier to handle breakpoints in HLE.
2015-04-05 18:09:20 -07:00
Chin 37f50a3792 Change to pass some arguments by reference 2015-03-01 16:49:00 +01:00
Henrik Rydgard 75a9420b21 Reduce the number of places we include JitCommon.h. Update native. 2014-12-12 23:49:08 +01:00
Sacha 1ba9103cef Better support for new archs. 2014-11-11 22:55:49 +10:00
Unknown W. Brackets 8a57e37f33 Minor tweak to avoid some function call overhead. 2014-11-03 07:36:17 -08:00
Sacha 7b308247f8 Symbian buildfix. It doesn't use MemArena. 2014-08-25 02:18:58 +10:00
Henrik Rydgard 1d7642fa48 Remove most mentions of the "_XBOX" define 2014-08-24 14:21:35 +02:00
Unknown W. Brackets 55403e42c2 Introduce a memory shutdown lock.
This allows the debugger to access memory in a safe way that should never
crash.
2014-07-19 23:30:19 -07:00
Sacha 031c5d3569 Symbian: Fix memmap freeze. 2014-06-25 22:01:40 +10:00
Unknown W. Brackets 24d8a34a0b Properly respect resolveReplacements.
And use the same opcode reading func in armjit as x86jit.
Fixes Star Ocean on Android.
2014-06-23 08:20:38 -07:00
Unknown W. Brackets fa875a6016 Fix memory mapping for sure this time on 32-bit. 2014-06-19 00:30:02 -07:00
Unknown W. Brackets 062d747cee Fix vram mirror issue on 32-bit.
Fixes #6249.
2014-06-15 08:59:35 -07:00
Sacha f787a1cbe1 Fix Windows build. 2014-05-29 10:33:02 +10:00
Sacha 9b7ab3816f Clean up MemArena and MemMap. Remove Symbian from MemArena (shouldn't have more ifdefs than code) 2014-05-29 03:30:23 +10:00