aboutsummaryrefslogtreecommitdiff
path: root/src/core/arm
AgeCommit message (Collapse)Author
2022-06-14core: centralize profile scope for DynarmicLiam
2022-06-05common: consolidate ELF structure definitionsLiam
2022-06-01core/debugger: Improved stepping mechanism and misc fixesLiam
2022-06-01core/debugger: Implement new GDB stub debuggerLiam
2022-05-14general: Avoid ambiguous format_to compilation errorsLioncash
Ensures that we're using the fmt version of format_to. These are also the only three outliers. All of the other formatters we have are properly qualified.
2022-04-24Remove unused PrepareReschedule functionMerry
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-20core/arm: separate backtrace collectionLiam
2022-04-16Merge pull request #8188 from merryhime/jit-race-page-table-changedbunnei
dynarmic: Fix race when switching page tables
2022-04-13dynarmic: Fix single core modemerry
Regression introduced in a5d040df3d. Closes #8201.
2022-04-10dynarmic: Fix race when switching page tablesmerry
2022-04-09core: extract symbol readingLiam
2022-04-07Merge pull request #8148 from merryhime/interruptsFernando S
dynarmic: Better interrupts
2022-04-05dynarmic: Print stack trace on unrecognised instruction or other exceptionmerry
2022-04-04Merge pull request #8089 from merryhime/paranoiabunnei
configuration: Add Paranoid CPU accuracy level
2022-04-03arm_dynarmic: Use HaltReason for svc calls and reschedulesmerry
2022-04-03dynarmic: Better interruptsmerry
2022-03-27arm_dynarmic_64: Invalidate on all coresmerry
2022-03-26configuration: Add Paranoid CPU accuracy levelmerry
Disables most optimizations for the paranoid.
2022-03-22Revert "dynarmic: Reduce size of code caches"bunnei
2022-03-19core: Reduce unused includesameerj
2022-03-13dynarmic: Reduce size of code cachesMerry
2022-02-27dynarmic: Inline exclusive memory accessesmerry
Inlines implementation of exclusive instructions into JITted code, improving performance of applications relying heavily on these instructions. We also fastmem these instructions for additional speed, with support for appropriate recompilation on fastmem failure. An unsafe optimization to disable the intercore global_monitor is also provided, should one wish to rely solely on cmpxchg semantics for safety. See also: merryhime/dynarmic#664
2022-02-02general: Replace NonCopyable struct with equivalentsLioncash
2021-11-21arm: dynarmic: Cleanup icache op handlingjam1garner
2021-11-21arm: dynarmic: Implement icache op handling for 'ic iallu' instructionjam1garner
2021-11-21arm: dynarmic: Implement icache op handling for 'ic ivau' instructionjam1garner
2021-11-03core: Remove unused includesameerj
2021-10-24Fixed ARM_Dynamic_64 StepAndrew Strelsky
2021-07-08settings, arm_dynarmic, yuzu qt: Move CPU debugging optionlat9nq
Decouples the CPU debugging mode from the enumeration to its own boolean. After this, it moves the CPU Debugging tab over to a sub tab underneath the Debug tab in the configuration UI.
2021-07-08arm_dynarmic_64: Re-add fastmem_address_space_bits to Auto settinglat9nq
2021-07-08arm_dynarmic{32,64}: Fixes from test buildlat9nq
Now sets optimizations regardless of the Settings. Drops unsafe fastmem optimization.
2021-07-08core,common,yuzu qt: Add CPU accuracy option 'Auto'lat9nq
The current CPU accuracy settings in yuzu are fairly polarized and require more than common knowledge to know what the optimal settings for yuzu would be. This adds a curated option called 'Auto' that applies a few at the moment known-good unsafe optimizations to Dynarmic.
2021-06-24common: Replace common_sizes into user-literalsWunkolo
Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc user-literals within literals.h. To keep the global namespace clean, users will have to use: ``` using namespace Common::Literals; ``` to access these literals.
2021-06-20Update dynarmic and add new unsafe CPU option.Fernando Sahmkow
2021-06-11General: Add settings for fastmem and disabling adress space check.FernandoS27
2021-06-11core: Make use of fastmemMarkus Wick
2021-05-30Merge pull request #6385 from degasus/save_memory_accessbunnei
core/memory: Check our memory fallbacks for out-of-bound behavior.
2021-05-29core/arm_interface: Improve the performance of memory fallbacks.Markus Wick
We just create one memory subsystem. This is a constant all the time. So there is no need to call the non-inlined parent.Memory() helper on every callback.
2021-05-29externals: Update dynarmic.Markus Wick
The new version supports fastmem on a64.
2021-05-27core/arm_interface: Call SVC after end of dynarmic block.Markus Wick
So we can modify all of dynarmic states within SVC without ExceptionalExit. Especially as the ExceptionalExit hack is dropped on upstream dynarmic.
2021-05-26core/arm: Drop ChangeProcessorID.Markus Wick
This code was used to switch the CPU ID on thread switches. However since "hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.", the CPU ID is not a constant. This has been dead code since this rewrite, and dropped in dynarmic as well. So there is no need to keep it.
2021-05-20Merge pull request #6321 from lat9nq/per-game-cpubunnei
configuration: Add CPU tab to game properties and slight per-game settings rework
2021-05-16core: Make variable shadowing a compile-time errorLioncash
Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely.
2021-05-15general: Make CPU accuracy and related a Settings::Settinglat9nq
Required to make CPU accuracy and unsafe settings available to use as a per-game setting.
2021-05-05hle: kernel: Rename Process to KProcess.bunnei
2021-05-04service: Resolve cases of member field shadowingLioncash
Now all that remains is for kernel code to be 'shadow-free' and then -Wshadow can be turned into an error.
2021-05-03core: Resolve misc cases of variable shadowingLioncash
Resolves shadowing warnings that aren't in a particularly large subsection of core. Brings us closer to turning -Wshadow into an error. All that remains now is for cases in the kernel (left untouched for now since a big change by bunnei is pending), and a few left over in the service code (will be tackled next).
2021-04-14common: Move settings to common from core.bunnei
- Removes a dependency on core and input_common from common.
2021-04-02arm_dynarmic: Increase size of code cacheMerryMage