Commit graph

3432 commits

Author SHA1 Message Date
Merry
29dde29560 emit_x64_vector_floating_point: RSqrtEstimate: Add AVX implementation 2023-08-28 14:15:20 +01:00
Merry
adac93f12e emit_x64_vector_floating_point: FPVectorMulAdd: Minimize full fallback 2023-08-28 14:15:20 +01:00
Merry
ceea80dd59 emit_x64_vector_floating_point: Implement GetNonSignMaskVector 2023-08-28 12:57:20 +01:00
Merry
92a47c8db2 emit_x64_floating_point: FPMulAdd: Inline NaN handling 2023-08-28 09:45:46 +01:00
Merry
3bf86d0755 dynarmic: 6.5.0 2023-07-20 23:42:41 +01:00
Andrea Pappacoda
831984b519 build: set SOVERSION to major.minor
Dynarmic uses semantic versioning, restricting backwards-incompatible
changes to major releases. This backwards compatibility, though, refers
to API changes, and disregards ABI stability. Since having to maintain a
compatible ABI between major releases is somewhat of a pain, and it
arguably doesn't matter that much for dynarmic, setting the SOVERSION to
major.minor allows for breaking ABI changes to be made between feature
releases, and not only major ones.

To be clear, this patch doesn't try to enforce a new policy, but just
reflects how the project has handled ABI changes in the past. That is,
these kind of changes have been made already.

This patch comes as a fix for Debian bug <https://bugs.debian.org/1041270>.
2023-07-20 23:41:08 +01:00
Merry
daa3dedf88 README: Update projects list 2023-07-09 17:01:24 +01:00
comex
40636020fc exception_handler_macos: Avoid undefined behavior due to accessing misaligned pointer
Caught by UBSan.  I don't think this has a meaningful performance impact
(especially since the thread state doesn't include floating-point/vector
registers), but I haven't tested it.
2023-07-09 10:38:44 +01:00
Merry
d333a09b3b dynarmic: 6.4.8 2023-05-26 00:42:34 +01:00
merry
f7296572ba spin_lock: Unlocked at initilization time 2023-05-17 15:34:19 +01:00
Merry
7da378033a spin_lock: Invalidate runtime generated code
Not doing this can result in cache related heisenbugs.
2023-05-07 23:03:39 +01:00
Merry
d5c2b473a8 spin_lock: Use std::call_once 2023-05-07 15:12:05 +01:00
Merry
f9e6a3df5c dynarmic: 6.4.7 2023-05-05 16:29:42 +01:00
Merry
420a786a3f a32_get_set_elimination_pass: Appease MSVC 2022 2023-05-05 10:37:57 +01:00
Steveice10
39c59b6c46 common: Defer spin-lock initialization. 2023-04-29 23:04:00 +01:00
Merry
720d6bbcd8 Squashed 'externals/oaknut/' changes from 816481f10..c24f918e5
c24f918e5 oaknut: 1.1.6
3a70cd40a oaknut: Run clang-format
dc54784b8 oaknut: Add support for iOS memory protection.
14207278a oaknut: 1.1.5
841f9b693 oaknut: throw OaknutException instead of plain C string

git-subtree-dir: externals/oaknut
git-subtree-split: c24f918e52e629fc315c6e4bca4ea62def8b55e8
2023-04-27 22:20:30 +01:00
Merry
494fbee05b externals: Update oaknut to 1.1.6
Merge commit '720d6bbcd87a8aecf628ab26a55ac7b17f7325df'
2023-04-27 22:20:30 +01:00
Merry
b1584b66b6 x64/block_of_code: Only commit minimum required memory 2023-04-27 21:22:28 +01:00
Merry
c08c5a9362 6.4.6 2023-04-01 12:37:29 +01:00
Merry
5acf5614be tests: fibonacci example 2023-03-31 10:29:31 +01:00
merry
c326f9b02f backend/arm64: Implement RSB 2023-03-31 10:29:31 +01:00
merry
3f6232bfdb arm64/abi: Add Xscratch2 2023-03-31 10:29:31 +01:00
Liam
4ad2dee67b a32_interface: remove Context 2023-03-15 16:06:05 +00:00
Alexandre Bouvier
b3a92ab54d cmake: fix static standalone build 2023-03-04 14:19:51 +00:00
Wunkolo
e92f69aca0 emit_x64_vector: AVX512VBMI implementation of EmitVectorTableLookup64 2023-02-21 21:56:18 +00:00
Wunkolo
87a312b446 tests/A32: Add tbl/tbx instruction unit tests 2023-02-21 21:56:18 +00:00
Merry
15e889fbe3 emit_arm64: Add BlockRelocationType::MoveToScratch0 2023-02-15 11:42:22 +00:00
Merry
a179e2f2bb A64: Remove more instances of use of VectorMultiply64 2023-02-11 12:09:56 +00:00
Merry
082167feeb backend/arm64: Add InvalidateCacheRanges 2023-02-11 11:58:09 +00:00
Merry
165621a872 6.4.5 2023-02-05 17:34:13 +00:00
Merry
3e715994c8 LICENSE: Update name 2023-02-05 17:32:20 +00:00
Merry
7d3b4f913b a32_get_set_elimination_pass: Fix bugs in A32 get/set algorithm 2023-02-05 17:19:08 +00:00
Merry
2636da8821 verbose_debugging_output: Use actual names 2023-02-04 14:11:56 +00:00
Merry
8c9a3e16f5 Appease clang-format 2023-02-04 14:09:24 +00:00
Merry
43b71c6015 clang-format: Use clang-format 15 2023-02-04 11:32:11 +00:00
Merry
d796d8e93d reg_alloc: Fix cast-qual issue 2023-02-04 11:30:01 +00:00
Merry
60030a76d7 README: Add touchHLE 2023-02-03 23:10:51 +00:00
Merry
66a4940b11 a32_get_set_elimination_pass: Fix Set/GetVector for 64-bit registers 2023-02-03 23:00:56 +00:00
Merry
9364ba821e tests: Support noopt mode 2023-02-03 22:16:29 +00:00
Merry
890f01f036 verbose debugging: Ensure host fp state is preserved 2023-02-03 22:15:53 +00:00
Merry
fdd5192ab3 reg_alloc: Support unused values for noopt mode 2023-02-03 22:15:21 +00:00
Merry
716a2fa5fa emit_x64_vector: zext TBL (3) 2023-01-20 23:42:38 +00:00
Merry
e01a1959a3 CMake: Add dependencies to Config file 2023-01-20 22:59:34 +00:00
Merry
d04989c052 emit_x64_vector: zext Vector*SaturatedNarrowTo* 2023-01-20 21:21:11 +00:00
Merry
b764c2425c emit_x64_floating_point: zext FPFixedU32ToDouble 2023-01-20 21:20:35 +00:00
Merry
43e8d0d7fc emit_x64_vector: Fix vector upper output of EmitVectorSignedSaturatedNarrowToSigned 2023-01-20 16:19:46 +00:00
Merry
e26a9769dc backend/arm64: Implement VectorMultiply64, but allow only during debugging 2023-01-20 11:53:56 +00:00
Merry
191125a208 backend/arm64: Add verbose debugging output 2023-01-20 11:52:23 +00:00
Merry
2a87337141 test_reader: Add A32 modes 2023-01-20 11:50:41 +00:00
Merry
f0ebdf278c backend/x64: Improve verbose debugging output 2023-01-20 11:47:49 +00:00