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
gibbed
f7a8c5ce7a
[x64] Fix corruption of src1 in calls to EmulateVectorRotateLeft.
...
To mitigate this mistake in the future, implemented new
StashConstantXmm functions.
2019-11-30 20:08:10 -06:00
gibbed
c4ff8d7c58
[x64] Fix prolog/epilog sizes for emitted functions.
2019-08-25 17:02:42 -05:00
gibbed
24321dbcd9
[x64] Fix up offset of stack alloc in prolog for unwind info.
...
- [x64] Track offset of stack alloc in prolog within emitted functions.
- [x64] Don't use hardcoded offset of stack alloc in prolog in generated
unwind info.
2019-08-23 06:12:22 -05:00
gibbed
0dc4a13db3
[x64] Fix up unwind info for emitted functions.
...
- [x64] Track size of code within emitted functions (prolog, body, epilog).
- [x64] Don't use hardcoded prolog size in generated unwind info.
- [x64] Update URLs to MSDN documentation on UNWIND_INFO/UNWIND_CODE.
2019-08-23 06:12:22 -05:00
gibbed
b2f62b1982
Clean up cvars (rename, recategorize).
2019-08-03 23:46:03 -05:00
Jonathan Goyvaerts
c1af632562
Replace all gflag implementations with cvar implementations
2019-08-03 02:34:07 +02:00
Triang3l
8c00aea5ff
[CPU] vpkd3d VPACK_NORMPACKED64
2019-07-20 22:04:37 +03:00
Triang3l
4ae9266f13
[CPU] Fix vpkd3d half4 component order
2019-01-24 17:45:41 +03:00
gibbed
e7d77f4780
Clarify AVX requirement error message.
2018-11-26 10:33:22 -06:00
Dr. Chat
384ec98a42
[x64] Allow the JIT to use volatile registers
2018-11-23 18:02:04 -06:00
Dr. Chat
b57bb74965
[x64] Change the parameters to host_to_guest_thunk
...
Shuffle some code around in x64_backend.cc
Add GetNativeParam to avoid hardcoding parameters
2018-11-23 18:02:04 -06:00
Dr. Chat
4571e8207a
[x64] Minor cleanups in emitter
2018-11-23 18:02:03 -06: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
Triang3l
c89cc6a229
[CPU] vupkd3d: NaN on negative overflow and tests
2018-06-11 21:34:13 +03:00
Triang3l
0378f532ab
[CPU] Fix W in 2101010 vupkd3d and revert untested saturation
2018-06-11 17:22:15 +03:00
Triang3l
06fcdef968
[CPU] Bring back saturation in D3DCOLOR vpkd3d128
2018-05-31 16:17:27 +03:00
Triang3l
d61aff4389
[CPU] v(u)pkd3d128: Support UINT_2101010 and don't saturate D3DCOLOR
...
Fix broken mesh polygons in the Call of Duty series. Also remove saturation of D3DCOLOR when packing because values near 3 may be accepted, while unpacking D3DCOLOR gives values near 1.
2018-05-31 14:42:11 +03:00
DrChat
0577b6c9be
[JIT] Full vctuxs support
2018-03-01 23:49:44 -06:00
DrChat
aaf281351d
Format all code with new clang-format
2017-12-14 20:44:43 -06:00
Dr. Chat
16cff62d36
Base: Remove memory::DeallocationType::kDecommitRelease (an invalid combination)
2017-05-14 00:59:52 -05:00
Dr. Chat
d3ed53c43e
PPC: Support v[u]pkd3d128 VPACK_NORMSHORT4
2017-05-12 17:55:52 -05:00
Dr. Chat
d5e7bc8dca
JIT - vctsxs: Properly saturate signed integers
2017-03-05 17:45:17 -06:00
Dr. Chat
ea89a5d179
JIT - fctixx: Properly handle numbers > INT_MAX
2017-03-05 15:04:26 -06:00
Dr. Chat
8947a7626e
Linting fixes :)
2017-02-05 22:53:30 -06:00
Dr. Chat
803f0be049
Linux header fixes
2017-02-05 22:45:01 -06:00
Dr. Chat
52c75c8dbc
x64 backend: Pass guest return address as first argument to guest functions.
2016-08-26 13:46:21 -05:00
Dr. Chat
7683069f6c
Set context/membase registers to rsi/rdi respectively.
...
Use offsetof for the backend thunks.
2016-08-26 11:00:42 -05:00
Dr. Chat
5f4416ee2f
x64 backend: Save nonvolatile XMM registers on host -> guest transitions
...
Define the context and membase registers in the x64 emitter.
2016-08-22 14:55:16 -05:00
Dr. Chat
e3fdb08ad7
x64 JIT: Allocate constant data outside of the guest heap.
2016-08-18 18:26:55 -05:00
sephiroth99
4c0f9e6342
Add missing includes
2016-01-20 10:36:01 -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
9c694f07b3
Better trap message.
2015-12-29 13:40:53 -08:00
Ben Vanik
15816327b4
Renaming xe::cpu::frontend to xe::cpu::ppc.
2015-12-14 21:17:55 -08:00
Ben Vanik
9273359cdd
Removing vestigial ContextInfo.
2015-12-14 20:57:14 -08:00
Ben Vanik
4af6c41740
Moving profiling.h to base - UI could be separated for cleanliness.
2015-11-07 12:31:07 -08:00
Ben Vanik
5525f6c0a2
Tracking master xbyak.
2015-11-05 17:17:52 -08:00
Dr. Chat
f3fe260a17
Fallback case if indirection table could not be allocated.
2015-11-04 06:46:52 -06:00
Ben Vanik
4c8634bc31
Fixing breakpoints.
2015-09-21 21:10:57 -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
5355183590
Don't double-break on debugbreak.
2015-09-01 09:45:32 -07:00
Ben Vanik
7233df2778
Switch default --ignore_undefined_externs to true.
2015-08-30 20:48:41 -07:00
Ben Vanik
b80a028589
Much better errors on undefined externs.
2015-08-30 15:27:12 -07:00
Ben Vanik
b7203c2989
Logging to with a ringbuffer. Much faster.
2015-08-29 18:06:30 -07:00
Ben Vanik
5e08889d93
More style cleanup.
2015-08-06 20:17:01 -07:00
Ben Vanik
e6461f326c
Some xb style cleanup.
2015-08-05 22:06:20 -07:00
Ben Vanik
eaa1a8ee3a
Refactoring SymbolInfo/FunctionInfo/Function into Symbol/Function.
2015-08-05 21:50:02 -07:00
Ben Vanik
b0425f7ee2
Moving source map to Function.
2015-08-01 14:07:13 -07:00
Ben Vanik
19901c4759
Replacing a use of strings for xbyak labels.
2015-07-29 18:58:45 -07:00