64f6e5e597
ARM: pass MemorySystem separately in the constructor and make System optional
...
So that unit test can test CPU without constructing the entire system. Also remove hacks in the System class
2019-02-14 14:04:46 -05:00
e87dc17da2
Pass system into arm interpreter; fix tests
2018-12-05 20:21:14 -05:00
7d8f115185
Prefix all size_t with std::
...
done automatically by executing regex replace `([^:0-9a-zA-Z_])size_t([^0-9a-zA-Z_])` -> `$1std::size_t$2`
2018-09-06 16:03:28 -04:00
74cd98ecad
core: clean up warnings
2018-08-01 14:10:23 -05:00
fb2d34997e
core/arm: Backend-specific context implementations
2017-12-12 19:12:03 +00:00
77493860ca
Merge pull request #3228 from lioncash/explicit
...
arm: Make CPU backend constructors explicit
2017-12-06 22:44:39 -05:00
e960628a14
arm: Make CPU backend constructors explicit
...
Avoids implicit conversions
2017-12-06 19:37:56 -05:00
647e553f64
ARM_Interface: Allow for partial invalidation of instruction cache
2017-12-06 20:57:55 +00:00
7cd8b437aa
core/arm: Improve timing accuracy before service calls in JIT
...
We also correct the CPU JIT's implementation of Step.
2017-12-03 16:06:46 +00:00
529f4a0131
Moved down_count to CoreTiming
2017-09-30 17:38:14 +01:00
67a70bd9e1
ARM_Interface: Implement PageTableChanged
2017-09-24 23:08:25 +01:00
8b1e269e58
ThreadContext: Move from "core" to "arm_interface".
2016-12-22 00:27:49 -05:00
ebdae19fd2
Remove empty newlines in #include blocks.
...
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
2016-09-21 11:15:47 +09:00
05e120a4cc
arm: ResetContext shouldn't be part of ARM_Interface.
2016-09-15 17:49:30 -04:00
85861d44b7
arm_dynarmic/arm_dyncom: Remove unnecessary "virtual" keyword.
2016-09-15 17:49:30 -04:00
2161f52661
ARM: add ClearInstructionCache function
2016-08-27 21:38:06 +08:00
3b457a5876
arm_interface: Implement interface for retrieving VFP registers
2015-08-06 21:24:25 -04:00
dfb424b6d1
dyncom: Rename armdefs.h to armstate.h
2015-07-25 22:10:44 -04:00
aea15f5c73
Core: Cleanup core includes.
2015-06-28 00:36:54 +01:00
bdcf28e3bc
Headers: Add some forgotten overrides, thanks clang!
2015-04-14 21:18:25 +02:00
c3ffe8f9c3
arm_interface: Support retrieval/storage to CP15 registers
2015-04-06 12:57:49 -04:00
8cf81643a9
arm_interface: Get rid of GetTicks.
...
Removes a TODO.
2015-03-16 12:18:37 -04:00
b7fac494cd
dyncom: Switch the app and system cores into the correct mode at initialization
2015-02-12 21:54:28 -05:00
5fcbfc06eb
Scheduler refactor Pt. 1
...
* Simplifies scheduling logic, specifically regarding thread status. It should be much clearer which statuses are valid
for a thread at any given point in the system.
* Removes dead code from thread.cpp.
* Moves the implementation of resetting a ThreadContext to the corresponding core's implementation.
Other changes:
* Fixed comments in arm interfaces.
* Updated comments in thread.cpp
* Removed confusing, useless, functions like MakeReady() and ChangeStatus() from thread.cpp.
* Removed stack_size from Thread. In the CTR kernel, the thread's stack would be allocated before thread creation.
2015-02-09 21:47:12 -08:00
7b3452c730
Move ThreadContext to core/core.h and deal with the fallout
2015-01-09 03:51:55 -02:00
620d77b7e3
Timing: Use CoreTiming::GetTicks to keep track of ticks.
...
This will keep track of idle ticks for us, and fixes some tickcount-related issues
2015-01-08 19:39:14 -05:00
4783133bbd
ARM: Add a mechanism for faking CPU time elapsed during HLE.
...
- Also a few cleanups.
2014-12-25 22:46:44 -05:00
ebfd831ccb
License change
2014-12-20 21:20:24 -08:00
f5d38649c7
Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated
2014-11-19 09:03:07 +00:00
64cc6cb6cf
Fix documentation of parameters
2014-11-18 08:31:24 -05:00
d72708c1f5
Add override
keyword through the code.
...
This was automated using `clang-modernize`.
2014-10-26 16:18:05 -02:00
53a22b84da
ARM: Integrate SkyEye faster "dyncom" interpreter.
...
Fixed typo (make protected member public)
Added license header back in. I originally removed this because I mostly rewrote the file, but meh
ARM: Fixed a type error in dyncom interpreter.
ARM: Updated dyncom to use unique_ptr for internal ARM state.
2014-10-25 14:11:39 -04:00