gibbed
1513dd235b
[Kernel] Code reentrance for guest fibers.
...
[Kernel] Code reentrance using exceptions for guest fibers.
2020-12-05 14:17:33 -06:00
gibbed
164aa8e8ca
[Kernel] Scope object type enum.
2020-11-22 20:34:07 -06:00
Triang3l
b7ba3051f2
[Kernel] Fix null in thread affinity init + ignore affinity when less than 6 cores
2020-11-16 23:15:51 +03:00
Triang3l
a319617185
[Kernel] Thread affinity cleanup
2020-11-14 18:09:47 +03:00
Gliniak
2dc6b0b2ad
[Kernel/Thread] Added missing paramteter to KeSetAffinityThread
2020-11-14 17:48:30 +03:00
gibbed
a48bb71c2f
Overhaul logging.
2020-04-07 16:09:41 -05:00
gibbed
5bf0b34445
C++17ification.
...
C++17ification!
- Filesystem interaction now uses std::filesystem::path.
- Usage of const char*, std::string have been changed to
std::string_view where appropriate.
- Usage of printf-style functions changed to use fmt.
2020-04-07 16:09:41 -05:00
Joel Linn
7e244e0488
[Base] Clock state now unaltered by threading.
...
- Removed tick and time values from ThreadSavedState.
- Removed affiliated get/set code from Save and Restore.
- Removed dangerous SetGuestTickCount method.
2019-12-01 17:11:58 -06:00
Silent
c5db959154
[Kernel] Retain handles and not objects in XThread
...
This fixes cases introduced by 52e836d0f81e752ba368717e68773b591adfa9cf
where thread handles get closed before the thread finishes.
Handle was assumed to be alive there, which was not true as
threads self-referenced only their objects, not their handles.
Affected games: Payday 2 Demo
2019-11-30 20:08:30 -06:00
Jonathan Goyvaerts
c1af632562
Replace all gflag implementations with cvar implementations
2019-08-03 02:34:07 +02:00
gibbed
7c7d80103e
[Kernel] Use type constant instead of type enum when calling base constructor.
2019-07-29 13:53:44 -05:00
gibbed
18d8a59cfa
[Kernel] Initialize COM on all new XThreads.
2019-04-19 04:02:32 -05:00
Margen67
896ac4a682
Update documentation.
...
- Convert http to https, provide archive link when possible.
- Made CPU-JIT.png more readable on dark themes;
Added a white background so there isn't black text on a black
background.
2018-11-22 09:20:09 -06:00
DrChat
11ae05155d
Fix casting between XThread and Thread causing pointer misalignment
2017-02-10 23:35:35 -06:00
Dr. Chat
4c55039c22
Remove xenia-cpu dependency on xenia-kernel
2017-02-06 21:57:18 -06:00
gibbed
dd18112905
Assert the CPU index on set.
2016-06-20 12:53:07 -05:00
gibbed
27610989a2
Fixed fake CPU handling.
2016-06-20 12:52:36 -05:00
Dr. Chat
23b2e25fb8
XThread: Don't release ourselves before calling thread_->Terminate!
2016-06-18 20:58:58 -05:00
sephiroth99
bf910c2d9a
Add missing definitions for XAPC constants
...
Fixes linking errors for these symbols.
2016-01-20 11:26:35 -05:00
Ben Vanik
6777ce6668
Reconcile debugger and save state stuff into a single implementation.
...
Fixes #497 and fixes #496 .
Still rough edges, but at least less duplication.
2016-01-18 11:48:21 -08:00
Ben Vanik
b02ca62388
Fixing most remaining C++ warnings in clang.
2016-01-01 18:37:33 +00:00
Dr. Chat
c242a01043
Mark XThreads as running before calling Execute
2015-12-29 13:10:02 -08:00
Dr. Chat
5cb591b993
Compensate for static TLS when accessing dynamic TLS.
2015-12-29 13:10:01 -08:00
Dr. Chat
bca5fb5382
XThread acquire mutants on restore
2015-12-29 13:10:00 -08:00
Dr. Chat
eee0bb070c
Store thread TLS in guest memory rather than using host APIs
2015-12-29 13:09:58 -08:00
Ben Vanik
383a173a18
REBASE: fixing xthread instruction decoding.
2015-12-29 13:09:50 -08:00
Dr. Chat
a5c22ec214
XThread: Only need to retain a pointer to our object - not a handle.
2015-12-29 13:09:49 -08:00
Dr. Chat
621d3f8abb
XThread free stack on destruction
2015-12-29 13:09:49 -08:00
Dr. Chat
07d31862f1
XThread: Special case save/restore for threads no longer running.
2015-12-29 13:09:48 -08:00
Dr. Chat
b58e9afbf1
Fix XThread::StepIntoBranch not properly stepping into blr/bctr
2015-12-29 13:09:48 -08:00
Dr. Chat
44c9e8fe25
Save/Restore the guest clock in XThreads
2015-12-29 13:09:47 -08:00
Dr. Chat
6f4626118e
Fix infinite loop in StepToSafePoint after stepping to an address once
2015-12-29 13:09:46 -08:00
Dr. Chat
606aa9af6f
XThread: Update the PC when we step out of an export!
2015-12-29 13:09:43 -08:00
Dr. Chat
d2d97fe58f
XThread - Fix unconditional conditional branch check
2015-12-29 13:09:42 -08:00
Dr. Chat
3007a98d2d
Install false-branch breakpoint only if the opcode is conditional.
2015-12-29 13:09:38 -08:00
Dr. Chat
f9de61ceed
XThread::StepToSafePoint - Handle cases where the thread hasn't started yet.
2015-12-29 13:09:37 -08:00
Dr. Chat
a6322c7bf4
NativeList getters/setters
2015-12-29 13:09:36 -08:00
Dr. Chat
290d5d9594
Fix incorrect double-retaining of objects on restore.
2015-12-29 13:09:24 -08:00
Dr. Chat
1e36ea8b69
Use c_str() when passing a string to sprintf!
2015-12-29 13:09:23 -08:00
Dr. Chat
e54850e1f2
XThread::set_name - Use more efficient xe::format_string instead of a StringBuffer
2015-12-29 13:09:22 -08:00
Dr. Chat
442f063ddf
XThread Save: Handle emulated instructions/MMIO/etc that call out of guest code
2015-12-29 13:09:20 -08:00
Dr. Chat
4301641bdf
XThread Save/Restore
2015-12-29 13:09:16 -08:00
Dr. Chat
666f5543a8
Cleanup ThreadState and XThread
2015-12-29 12:32:46 -08:00
Ben Vanik
4af6c41740
Moving profiling.h to base - UI could be separated for cleanliness.
2015-11-07 12:31:07 -08:00
Dr. Chat
3cbc65ac29
XThread Get/Set Last Error
2015-09-25 18:22:13 -05:00
Ben Vanik
3fc1d02a09
Suspend some host threads that make guest callbacks.
2015-09-21 21:24:26 -07:00
Ben Vanik
5d033f9cb3
A new debugger.
...
Lots of bugs/rough edges/etc - issues will be filed.
Old-style debugging still works (just use --emit_source_annotations to get
the helpful movs back and --break_on_instruction will still fire).
2015-09-20 21:31:05 -07:00
Ben Vanik
a1a996c1e6
Shrinking UI elements in the debugger.
2015-09-06 20:49:20 -07:00
Ben Vanik
e5fbf840d2
Shuffling kernel/.
2015-09-06 18:07:52 -07:00