aboutsummaryrefslogtreecommitdiff
path: root/src/core/arm/unicorn
AgeCommit message (Collapse)Author
2018-10-04kernel/thread: Make all instance variables privateLioncash
Many of the member variables of the thread class aren't even used outside of the class itself, so there's no need to make those variables public. This change follows in the steps of the previous changes that made other kernel types' members private. The main motivation behind this is that the Thread class will likely change in the future as emulation becomes more accurate, and letting random bits of the emulator access data members of the Thread class directly makes it a pain to shuffle around and/or modify internals. Having all data members public like this also makes it difficult to reason about certain bits of behavior without first verifying what parts of the core actually use them. Everything being public also generally follows the tendency for changes to be introduced in completely different translation units that would otherwise be better introduced as an addition to the Thread class' public interface.
2018-09-18arm_interface: Remove ARM11-isms from the CPU interfaceLioncash
This modifies the CPU interface to more accurately match an AArch64-supporting CPU as opposed to an ARM11 one. Two of the methods don't even make sense to keep around for this interface, as Adv Simd is used, rather than the VFP in the primary execution state. This is essentially a modernization change that should have occurred from the get-go.
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi
2018-09-04Update microprofile scopes.Markus Wick
Blame the subsystems which deserve the blame :) The updated list is not complete, just the ones I've spotted on random sampling the stack trace.
2018-08-24core: Namespace all code in the arm subdirectory under the Core namespaceLioncash
Gets all of these types and interfaces out of the global namespace.
2018-08-06GDBStub works with both Unicorn and Dynarmic now (#941)Hedges
* GDBStub works with both Unicorn and Dynarmic now * Tidy up
2018-07-21Merge pull request #750 from lioncash/ctxbunnei
arm_interface: Remove unused tls_address member of ThreadContext
2018-07-20CPU: Save and restore the TPIDR_EL0 system register on every context switch.Subv
Note that there's currently a dynarmic bug preventing this register from being written.
2018-07-20arm_interface: Remove unused tls_address member of ThreadContextLioncash
Currently, the TLS address is set within the scheduler, making this member unused.
2018-07-16scheduler: Clear exclusive state when switching contextsMerryMage
2018-07-12More improvements to GDBStub (#653)Hedges
* More improvements to GDBStub - Debugging of threads should work correctly with source and assembly level stepping and modifying registers and memory, meaning threads and callstacks are fully clickable in VS. - List of modules is available to the client, with assumption that .nro and .nso are backed up by an .elf with symbols, while deconstructed ROMs keep N names. - Initial support for floating point registers. * Tidy up as requested in PR feedback * Tidy up as requested in PR feedback
2018-06-06GDB Stub Improvements (#508)Hedges
* GDB Stub should work now. * Applied clang-format. * Replaced htonll with swap64. * Tidy up.
2018-05-10core: Implement multicore support.bunnei
2018-05-02general: Make formatting of logged hex values more straightforwardLioncash
This makes the formatting expectations more obvious (e.g. any zero padding specified is padding that's entirely dedicated to the value being printed, not any pretty-printing that also gets tacked on).
2018-04-27general: Convert assertion macros over to be fmt-compatibleLioncash
2018-03-19Clean Warnings (?)N00byKing
2018-03-18Merge pull request #193 from N00byKing/3184_2_robotic_boogaloobunnei
Implement Pull #3184 from citra: core/arm: Improve timing accuracy before service calls in JIT (Rebased)
2018-03-16arm_interface: Support unmapping previously mapped memory.bunnei
2018-02-25Implements citra-emu/citra#3184N00byKing
2018-02-22Stub am::SetScreenShotPermission, and bsd::StartMonitoring functionsmailwl
2018-01-16Build: Automagically handle unicornJames Rowe
On MSVC if unicorn isn't found, fallback to bundled unicorn On everything else, fallback to building unicorn in externals Also fixes loading unicorn in msvc
2018-01-16Build: Add unicorn as a submodule and build it if neededJames Rowe
Adds a cmake custom target that will build unicorn on first compile and uses this in the build scripts as well. Updates Appveyor and Travis build scripts to work with the new unicorn build, and updates the paths to all of the different artifacts.
2018-01-13arm_unicorn: Log unmapped memory access address.bunnei
2018-01-13yuzu: Update license text to be consistent across project.bunnei
2018-01-12arm_dynarmic: Implement coreMerryMage
2018-01-04arm_unicorn: Load/release unicorn DLL.bunnei
2018-01-04unicorn: Use for arm interface on Windows.bunnei