Commit Graph

88 Commits

Author SHA1 Message Date
David Guillen Fandos 0522d9a4f5 Add workaround for Android ARM builds
While we are at it, use ARM mode for better performance.
2021-03-09 19:29:18 +01:00
David Guillen Fandos 3d558413fd Fix x86 dynarec, broken by d10c4afe
The dynarec expects function args to be located in registers instead of
the stack, which is not the default calling convetion in GCC/clang.
2021-03-06 21:15:22 +01:00
David Guillen Fandos 89bd699837 Reduce executable size by 90%
Turns out most of that file ends up in JIT section, which is RWX and not
a very nice way to run code really (security issues aside).
This also makes possible to build that file with -ggdb otherwise it
complains about stuff.
2021-03-05 01:14:31 +01:00
David Guillen Fandos ed3ba2c18b More cleanups (mostly whitespace and unused stuff) 2021-02-15 21:51:49 +01:00
David Guillen Fandos 7aaa280b9f Fix ARM dynarec
Turns out there were a couple of very interesting and hard to track
bugs. A missing comma made the reg list too short, leaving the 31th
element at the mercy of the linker ordering algorithm, which seems to
work in some cases depending on the compiler version.
Also the cache flush code seemed not to work on my machine (OGA),
not sure why it wored in the past :/
2021-02-10 02:46:45 +01:00
Francisco José García García 5afe4c2a39 [VITA] Fixes bug causing dynarec stuttering 2019-11-09 13:54:30 +01:00
bmaupin a60de42f3a Get dynarec working again for PSP 2019-10-20 14:58:51 -04:00
Francisco José García García a20e1c9d3a Remove RW_INIT 2016-10-04 14:20:51 +02:00
Francisco José García García adcf1c6f73 (VITA) Dynarec changes 2016-10-04 07:32:54 +00:00
Francisco José García García 6bfb7e1b47 (VITA) Dynarec working 2016-10-03 20:19:11 +02:00
twinaphex 7313c9cd61 Fix build issues 2016-08-15 03:48:39 +02:00
Francisco José García García 44b63e7d28 (VITA) Dynarec WIP 2016-08-14 18:28:25 +02:00
Francisco José García García 6ab0992ecf (VITA) Dynarec WIP 2016-08-08 00:31:21 +02:00
aliaspider f1d14fbe7c (3ds) dynarec: map the translation caches to specific addresses at
runtime, increases compatibility with loaders that can reloacate each
program section seperately.
move the svc enabling functions to the frontend.
2015-11-04 15:46:27 +01:00
aliaspider c1d061e204 (3DS) add dynarec support when started from a .cia install
use libkhax for ninjhax 1.0
2015-09-11 22:02:04 +01:00
aliaspider 5b6683bb93 (3DS) enable dynarec support, works only with ninjahax. 2015-04-08 10:20:32 +01:00
Twinaphex d10c4afea2 Get rid of function_cc 2014-12-20 09:14:38 +01:00
twinaphex cefd5b63ee Remove a lot of the GNU case range extensions instances 2014-12-13 04:50:48 +01:00
twinaphex 5b59ef3acc Reimplement cache invalidation code 2014-12-11 18:47:48 +01:00
twinaphex c78a0dd39b (Android) For Android x86 build - try to use mmap, for Android - use ARM_MEMORY_DYNAREC
codepath
2014-12-11 01:38:47 +01:00
twinaphex eeeff89a2c (Android) Works now with dynarec 2014-12-10 21:12:45 +01:00
twinaphex e33a56cd83 PC_BUILD can go now 2014-12-10 18:53:06 +01:00
twinaphex 82731290ee We don't need to get rid of idle loop patching for non-dynarec
core
2014-12-10 17:27:18 +01:00
twinaphex 51d78afa09 Add HAVE_DYNAREC ifdef 2014-12-10 17:06:09 +01:00
twinaphex 512f7f5b27 Code nits - get rid of '== NULL' / '!= NULL' 2014-12-10 16:40:43 +01:00
twinaphex 7a0b0cba45 Style nits 2014-12-10 15:47:19 +01:00
aliaspider a926a68eb3 cleanups 2014-12-10 12:53:26 +01:00
aliaspider 6d7fd87e07 add a HAVE_MMAP check, cleanups. 2014-12-10 12:29:19 +01:00
twinaphex 1a8b77c185 Demacro-ize block_builder_arm/block_builder_thumb 2014-12-10 01:25:37 +01:00
twinaphex fe19474dca Add macro parameter 'opcode' to some macros 2014-12-10 01:17:37 +01:00
aliaspider 1a6a136801 dynamic recompiler now works when the core is compiled as a shared
library.
2014-12-09 09:54:33 +01:00
notaz bbba320911 enable -Wall and fix warnings reported by it 2011-09-06 00:18:06 +03:00
notaz 8b6232a675 fix some warnings 2011-09-03 01:31:26 +03:00
notaz eac6971733 revive PC build, support Linux 2011-09-03 01:05:41 +03:00
notaz ee0a3871f9 get rid of GP2X_BUILD checks where they are not really needed 2011-09-03 01:01:17 +03:00
notaz d5e0983c10 move platform-independent stuff out of /gp2x. 2011-09-02 17:44:41 +03:00
notaz f50ad10a9b cache clean fix 2009-06-21 21:16:51 +03:00
notaz 2823a4c819 original source from gpsp09-2xb_src.tar.bz2 2009-05-21 18:48:31 +03:00