Commit Graph

70 Commits

Author SHA1 Message Date
Unknown W. Brackets
4178f09e57 Build: More consistently avoid _M_ defines.
We use PPSSPP_ARCH in several places already, this makes it more complete.
2021-03-02 21:49:21 -08:00
Unknown W. Brackets
5119d79082 Build: Remove IOS define. 2021-03-02 21:04:03 -08:00
Henrik Rydgård
5077a004ff Mark ARM64 Macs as needing WX-exclusive memory protection 2020-12-02 19:13:52 +01:00
Henrik Rydgård
f46759be5a Another missing header buildfix
thanks autechre
2020-10-14 23:49:59 +02:00
Henrik Rydgård
11ab77b995 Remove some TLS. 2020-09-29 15:51:51 +02:00
Henrik Rydgård
b43698a13d Remove most instances of base/logging.h from Common, Core, GPU, more 2020-08-15 19:08:44 +02:00
Henrik Rydgård
0829543987 Third part of getting rid of PanicAlert 2020-07-19 20:34:02 +02:00
Henrik Rydgård
617bbcfb87 Step 1 of removing PanicAlert 2020-07-19 20:33:25 +02:00
Unknown W. Brackets
a0f846d966 Core: Avoid shadowing a define. 2020-03-08 21:27:45 -07:00
Henrik Rydgård
a04720e37e Don't use the MAP_32BIT flag on any platform. 2020-01-04 21:54:25 +01:00
Henrik Rydgård
d9b6ab83cf Mac: MAP_32BIT is no longer supported in Catalina and breaks. We don't need it anymore anyway. Fixes #12495. 2020-01-04 21:00:15 +01:00
Anthony J. Bentley
9fc355eee4 Use W^X on OpenBSD. 2017-11-05 17:06:09 -07:00
Jan Beich
e33acdc5e9 Common: fix MAP_32BIT after 9f24203ef8
9f24203ef8 added 0x20000000 as a default fallback address hint which
unconditionally disabled MAP_32BIT. FreeBSD cannot use the hints
because without adjusting RLIMIT_DATA lower addresses are reserved for
brk(2) style heap. So, don't try to use hints with MAP_32BIT.
2017-07-26 15:25:54 +00:00
Henrik Rydgård
f7fea57bb6 More RIP addressing in software skinning.. 2017-07-07 15:12:57 +02:00
Henrik Rydgård
837118d230 More RIP elimination 2017-07-07 15:07:56 +02:00
Henrik Rydgård
0ec1e5e3b2 Don't erase and rewrite the dispatcher when the cache is cleared. Fixes #9708 2017-05-26 15:48:03 +02: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
Henrik Rydgard
4ced81b1df UWP: Hook up basic touch/mouse input. Start work on loading from a StorageFile. Getting closer to starting to boot a game 2017-03-23 10:02:28 +01:00
Henrik Rydgard
de3e906795 Linux buildfix 2017-03-05 11:25:07 +01:00
Henrik Rydgard
7b3f84aae8 More buildfixes for Windows on ARM 2017-03-05 10:52:08 +01:00
Henrik Rydgard
f2ccd1d648 Assorted Windows-on-ARM fixes 2017-03-05 10:47:41 +01:00
Henrik Rydgård
1503f00885 Memory function cleanups. Better simulation of RW exclusive mode on Windows (if desired) 2017-01-26 09:49:26 +01:00
Henrik Rydgard
b10e0a9a57 Windows buildfix 2017-01-25 20:10:17 +01:00
Henrik Rydgård
ff9e1517c7 More bugfixes 2017-01-25 19:11:33 +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
Florent Castelli
70593d1004 android: Change preprocessor define to standard __ANDROID__
ANDROID is only standard to the old Makefile buildsystem, not the platform.
2016-10-12 11:14:09 +02:00
Florent Castelli
4145b60a0e symbian: Remove! 2016-10-11 18:49:08 +02:00
Henrik Rydgard
f39c603acb Move memory protect logging to VERBOSE level. See #8941 (probably something else going on though) 2016-09-04 16:35:23 +02:00
Henrik Rydgard
dde50cbdf5 Remove checks for various iOS non-jit situations in settings 2016-08-28 19:01:00 +02:00
Unknown W. Brackets
2fd81a4b29 Fix typo. 2016-08-28 09:44:52 -07:00
Henrik Rydgard
740ef4e0eb Apple buildfix 2016-08-28 18:41:24 +02:00
Henrik Rydgard
3ab2094b76 Buildfix attempt 2016-08-28 18:35:57 +02:00
Henrik Rydgard
2a4f4ed41d iOS buildfix, fix another comment 2016-08-28 18:10:26 +02:00
Henrik Rydgard
1e4b77fb49 Use PAGE_SIZE, fix a comment, fix some indentation. 2016-08-28 18:07:54 +02:00
Henrik Rydgard
d82ba24485 Symbian buildfix 2016-08-28 15:07:33 +02:00
Henrik Rydgard
b264657d56 Implement W^X-compatible path. Works on Windows and Android, hopefully iOS (untested).
Disabled block linking in this mode, can re-enable with some more work later.

To enable W^X on other platforms than iOS, simply change PlatformIsWXExclusive.
2016-08-28 14:52:08 +02:00
Henrik Rydgard
323eb72b7c Write-protect the dispatcher on all platforms. 2016-08-28 13:35:27 +02:00
Henrik Rydgard
5005e83254 Consistency improvements to the memory protect/alloc APIs 2016-08-28 12:28:17 +02:00
Henrik Rydgard
adbac55b1d Replace Write/UnWriteProtectMemory with ProtectMemory that takes flags 2016-08-28 12:09:01 +02:00
Henrik Rydgard
c8457d39ed Fix a bunch of compiler warnings, delete some unused code 2016-03-13 15:17:31 +01:00
Unknown W. Brackets
f3a616df24 Jit: Properly re-allocate when jit is freed a lot.
Fixes #8334.
2016-01-02 13:24:58 -08:00
Unknown W. Brackets
935b802dad Reset memory alloc pointer when jit alloc fails.
On Windows x64, we keep track of our last allocation.  Once we run out of
our 2GB range, we need to start over or it'll just fail.

Fixes #8021.
2015-10-10 09:07:34 -07:00
Henrik Rydgard
fdea85138c Update project files, fix minor issues for VS 2015 2015-09-06 19:32:15 +02:00
Jan Beich
2eb1d578dd Common: check against MAP_FAILED on every Unix after mmap()
This is required by POSIX but may matter only in MAX_FIXED case.
2015-05-26 15:20:11 +03:00
Toad King
91cb8ea1c9 typo 2014-08-31 23:53:48 -04:00
Toad King
b98c79bd0a fix 32-bit builds 2014-08-06 22:02:45 -04:00
Toad King
9f24203ef8 executable memory allocation changes 2014-08-06 21:06:49 -04:00
Toad King
aa0b4964ed Try to allocate executable memory close to PPSSPP memory if not below 4GB 2014-08-05 18:45:19 -04:00
Ced2911
418d2ac8ce [xbox] 360 support for common 2014-03-02 12:15:10 -08:00
Sacha
d50b01a778 Doesn't really 'free', so called 'reset' instead. 2013-11-12 02:13:34 +10:00