summaryrefslogtreecommitdiff
path: root/cpu.h
AgeCommit message (Collapse)Author
2021-03-17Enable runtime dynarec enable/disableDavid Guillen Fandos
Added a more thorough cache cleanup for reset/mode-change too. Fixed the mmap initialization that ends up leaking memory. Minor x86 asm fixes for Android.
2021-03-17Remove BIOS reserved translation areaDavid Guillen Fandos
This is not really necessary since it can share area with ROM. Performance impact should be very minimal (haven't noticed it myself) and could be compensated (even by a positive offset) if we bump the ROM cache area size. Tested with several dynarecs.
2021-03-16Rewrite of the MIPS dynarec stubsDavid Guillen Fandos
This allows us to emit the handlers directly in a more efficient manner. At the same time it allows for an easy fix to emit PIC code, which is necessary for libretro. This also enables more platform specific optimizations and variations, perhaps even run-time multiplatform support.
2021-03-08Remove libcoDavid Guillen Fandos
This removes libco and all the usages of it (+pthreads). Rewired all dynarecs and interpreter to return after every frame so that libretro can process events. This required to make dynarec re-entrant. Dynarecs were updated to check for new frame on every update (IRQ, cycle exhaustion, I/O write, etc). The performance impact of doing so should be minimal (and definitely outweight the libco gains). While at it, fixed small issues to get a bit more perf: arm dynarec was not idling correctly, mips was using stack when not needed, etc. Tested on PSP (mips), OGA (armv7), Linux (x86 and interpreter). Not tested on Android though.
2021-03-06Fix x86 dynarec, broken by d10c4afeDavid Guillen Fandos
The dynarec expects function args to be located in registers instead of the stack, which is not the default calling convetion in GCC/clang.
2019-10-03Reenable native file IO on PSPbmaupin
2016-08-08(VITA) Dynarec WIPFrancisco José García García
2015-11-04(3ds) dynarec: map the translation caches to specific addresses ataliaspider
runtime, increases compatibility with loaders that can reloacate each program section seperately. move the svc enabling functions to the frontend.
2015-09-20(CTR/3DS) using a heap allocator with a size determined at runtime canaliaspider
remove the static memory limitation, no need to use the smaller dynarec buffer size.
2015-07-30Cleanupstwinaphex
2015-04-16(CTR/3DS) reduce the size of the preallocated memory used by the dynamicaliaspider
recompiler.
2014-12-20Get rid of function_ccTwinaphex
2014-12-10cleanupsaliaspider
2014-12-10add a HAVE_MMAP check, cleanups.aliaspider
2014-12-10implement retro_serialize/unserializealiaspider
2014-12-09dynamic recompiler now works when the core is compiled as a sharedaliaspider
library.
2011-09-06enable -Wall and fix warnings reported by itnotaz
2011-09-03fix some warningsnotaz
2011-09-03get rid of GP2X_BUILD checks where they are not really needednotaz
2009-05-21original source from gpsp09-2xb_src.tar.bz2notaz