Pokechu22
fbbfea8e8e
Replace Common::BitCast with std::bit_cast
2024-05-03 18:43:51 -07:00
JosJuice
e0eb4ef5bc
JitArm64: Use enum class for LogicalImm size parameter
...
This should prevent issues like the one fixed in the previous commit
from happening again.
2023-12-16 16:48:26 +01:00
JosJuice
255ee3fdce
JitArm64: Use LSL+CLS for classifying floats
...
This is a little trick I came up with that lets us restructure our float
classification code so we can exit earlier when the float is normal,
which is the case more often than not.
First we shift left by 1 to get rid of the sign bit, and then we count
the number of leading sign bits. If the result is less than 10 (for
doubles) or 7 (for floats), the float is normal. This is because, if the
float isn't normal, the exponent is either all zeroes or all ones.
2023-11-28 18:30:45 +01:00
JosJuice
1104b93ee4
UnitTests: Declare as CPU thread when using CPUThreadConfigCallback
...
This fixes a bunch of DEBUG_ASSERTs in the unit tests.
2023-08-17 19:19:25 +02:00
Admiral H. Curtiss
62de9c593b
UnitTests: Avoid ppcState global.
2023-04-05 20:09:32 +02:00
Admiral H. Curtiss
9c0226b7e3
JitBase: Avoid System::GetInstance() and ppcState.
2023-03-25 02:37:00 +01:00
Lioncash
0888c93d48
Common: Move FPU-related helpers into Common namespace
...
Makes these utilities' namespace consistent with the majority of the
Common library.
2023-03-21 10:58:13 -04:00
Shawn Hoffman
2c2fb869a2
use std-provided randomness for JitArm64 unittests
...
decreases runtime significantly and lessens dependency on mbedtls
2023-02-22 12:55:12 -08:00
Admiral H. Curtiss
61ba516570
PowerPC: Move a few functions to PowerPCState.
2023-01-27 15:22:44 +01:00
Merry
4d99506b4c
UnitTests/MovI2R: Test all logical immediates
2022-07-10 22:17:09 +01:00
Pokechu22
161c627466
Treewide: Remove unused inclusions of <cinttypes>
...
Most of these became unneeded when fmt was introduced.
2022-01-09 12:43:11 -08:00
JosJuice
44beaeaff5
Arm64Emitter: Check end of allocated space when emitting code
...
JitArm64 port of 5b52b3e
.
2021-10-13 21:52:16 +02:00
Pierre Bourdon
e149ad4f0a
treewide: convert GPLv2+ license info to SPDX tags
...
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
2021-07-05 04:35:56 +02:00
JosJuice
d56721ebb9
Interpreter: Fix FPRF handling of denormal singles
2021-06-27 20:34:49 +02:00
Skyler Saleh
655ed37983
Unit Tests: Added W^X Support for PowerPC test
2021-06-19 10:40:51 -07:00
JosJuice
4b3fda7906
JitArm64: Implement frsqrte
2021-05-15 19:21:15 +02:00
JosJuice
85226e09f0
JitArm64: Implement fres
2021-05-15 19:16:32 +02:00
JosJuice
25dc059f6f
JitArm64: Add FPRF unit test
2021-05-13 11:51:00 +02:00
JosJuice
bb39f75093
UnitTests: Put PowerPC test values in a separate file
...
We use more or less the same values for all PowerPC float unit
tests. Let's put them in one place instead of duplicating them.
2021-05-02 22:12:28 +02:00
JosJuice
9d6263f306
JitArm64: Add unit tests for single/double conversion
2021-04-25 15:56:58 +02:00
Dentomologist
f0f206714f
Arm64Gen: Convert ARM64Reg to enum class
...
Most changes are just adding ARM64Reg:: in front of the constants.
2021-03-13 10:10:59 -08:00
JosJuice
eff66c2adc
Arm64Emitter: Expand the MOVI2R unit test a little
...
This tests for a bug with ADRP which was present in an
earlier version of this pull request.
Also adding the MOVI2R unit test to the VS build.
2021-02-13 21:04:16 +01:00
MerryMage
1ab7657120
MovI2R: Do not exhaustively test
2021-01-31 13:17:31 +00:00
MerryMage
fe9207bb56
UnitTests: Add MOVI2R test
2021-01-31 13:17:19 +00:00