joevt
566706dd62
ppctests: Fix compiler warnings.
2024-03-28 07:17:38 -07:00
joevt
78558e4c52
debugger: Ensure space between opcode and operand.
...
Instructions that are 8 characters or longer (such as mtdbat3l) did not have a space between opcode and operand. Now there is always a space. The width of the opcode column is unchanged except for those opcodes that have 8 or more characters.
2024-03-28 06:54:23 -07:00
joevt
267a9448ea
ppctest: Fix floating-point tests.
...
genppctests.py
- Fix incorrect bits for some floating-point instruction opcodes or fields.
- Use separate register for FP results like DolphinPPCTests does.
- Remove extra FMULS.
- Use a regular expression for parsing ppcfloattest.txt. Don't parse the values, just put them in the output ppcloattests.csv file.
ppcfloattest.txt
- Clear crf0 and crf7 because we only care about crf1.
- Use values from DolphinPPCTests (0.0, 0.5, 1.0, 3.5, DBL_MAX, FLT_MAX, 2.4679999352, 4.9359998704, etc.). Some of the values were rounded. This will un-round them. Specify snan or qnan instead of nan.
- One of the FCMPO and FCMPU tests had qnan instead of snan input values.
ppcfloattest.csv
- Regenerate this file using the updated genppctests.py which uses the updated ppcfloattest.txt.
ppctests
- Update double_from_string to be able to parse the new values (snan, qnan, FLT_MAX, DBL_MAX).
2024-02-10 14:56:21 -07:00
dingusdev
a5ce6a806f
CPU clean-up
2024-01-07 17:04:51 -07:00
dingusdev
924b80574a
Further fix from last commit
2024-01-05 15:53:56 -07:00
dingusdev
f3a759c80d
CPU code clean-up
2024-01-05 15:11:37 -07:00
Maxim Poliakovski
a1d8f8aa4e
ppctests: fix test cases with SNaN/QNaN operands.
2023-11-30 17:44:46 +01:00
Maxim Poliakovski
0a9107b602
ppcfloattests.csv: remove unrelated CR7 changes.
2023-11-30 12:28:32 +01:00
Maxim Poliakovski
6abb07e61b
Add rounding control for the host FPU.
2023-11-30 12:06:44 +01:00
dingusdev
87b8a8e0a0
Correcting multiply tests
2023-11-28 19:02:48 -07:00
dingusdev
c2a63bab09
FP Opcode Test Fixes
2021-10-30 16:43:13 -07:00
dingusdev
767735251b
FP comp tests & various fixes
2021-10-24 14:00:35 -07:00
dingusdev
a28ef677fd
Fixing FP mul ops & tests
2021-10-23 13:05:20 -07:00
Maxim Poliakovski
c0cd6eb38f
Add missing licence headers, update license date.
2021-10-23 21:00:31 +02:00
dingusdev
fb277945c2
Floating point test fixes
2021-10-19 07:16:15 -07:00
dingusdev
3c7fc58ac0
Small test case fixes for floating points
2021-10-16 22:33:56 -07:00
dingusdev
00dd99d851
Temporarily removing comparisons
...
These seem to cause the test program to crash. Will reinstate once the cause of the crash is resolved.
2021-10-15 20:02:00 -07:00
dingusdev
7d7a4b453f
Partial test file reading fix
2021-10-15 06:28:11 -07:00
dingusdev
7ce94a6ab5
Further fixing the test code
2021-10-14 21:05:58 -07:00
dingusdev
9251745d6f
Fixed floating-point test generation
2021-10-14 07:19:04 -07:00
dingusdev
07a4166eef
Preliminary work on floating point tests
2021-06-25 21:20:53 -07:00
dingusdev
593230f326
Disassembler - floating point instruction fixes
2021-01-23 22:44:14 -07:00
dingusdev
680b437b74
Fixed disassembly for fctiwz, frsp, and fctiw
2021-01-23 21:30:29 -07:00
dingusdev
2539faef7e
Small typo fixes
2021-01-23 15:10:08 -07:00
Maxim Poliakovski
014eefdf7e
ppcdisasm: fix frsp and add tests for it.
2021-01-23 02:32:30 +01:00
dingusdev
dc58386237
Started re-refactoring opcode retrieval
2020-10-17 14:30:37 -07:00
Waqar Ahmed
0ab9380be3
clang-format everything
2020-05-12 23:55:45 +05:00
dingusdev
e31f7873f5
Fixed redunant variable names for PPC emulation.
2020-03-04 21:29:04 -07:00
Maxim Poliakovski
cbb46e8f30
More tests to reaveal wrong disassembly.
2020-03-01 18:21:57 +01:00
dingusdev
e9a616ffeb
Started working on incorporating loguru
2020-02-23 20:59:10 -07:00
dingusdev
6428f324f6
icbi fixed
2020-02-19 19:37:51 -07:00
dingusdev
9138b9bafc
Quick fix for cmp
2020-02-19 19:12:23 -07:00
dingusdev
c71be1bc37
Fixed compare instructions
2020-02-19 19:03:39 -07:00
Maxim Poliakovski
8671517a08
ppcdisasm: new tests and fixes for rlwinm/rlwimi.
2020-02-20 02:27:48 +01:00
dingusdev
6f6e5671d4
Fixed test cases for stfd(u) and sllq(.)
2020-02-15 12:09:27 -07:00
dingusdev
ef27fcec69
More tests, more fixes
...
Only significant bugs left are with stfd(u) and sllq(.)
2020-02-15 11:29:03 -07:00
dingusdev
4f02a98c2b
More tests +fix for fsel
2020-02-14 07:58:30 -07:00
dingusdev
3d89b0438a
Many new test cases, many fixes
2020-02-13 21:04:14 -07:00
dingusdev
d4239c5aa1
Fixed comparison instructions, 603 instructions, mnemonics
2020-02-13 08:00:36 -07:00
dingusdev
eda9454f66
Fixed twi and tw; added more tests
2020-02-12 22:21:16 -07:00
dingusdev
40f399e0c4
Inserting missing instructions and fixing several opcodes
2020-02-12 22:08:40 -07:00
dingusdev
3d492b7f72
stwcx., slwi, and tw fixed
2020-02-12 20:58:51 -07:00
dingusdev
c2eafcc45d
Fixed shifting ops and eieio
2020-02-12 20:26:12 -07:00
Maxim Poliakovski
e4ee252b6c
ppcdisasm: fix several instructions.
2020-02-13 04:13:26 +01:00
Maxim Poliakovski
1543acc696
ppcdisasm: fix bcctr and bclr instructions.
2020-02-13 03:16:47 +01:00
Maxim Poliakovski
24652de392
Integrate disassembler tests.
2020-02-12 22:58:24 +01:00
Maxim Poliakovski
36fc7a9aaa
Add XER[OV] clear tests.
2020-02-10 19:34:03 +01:00
Maxim Poliakovski
d0f1a34c02
Fix integer multiplications.
...
Add a couple of tests for verifying XER[OV] updating code
for mullwo[.].
2020-02-10 18:36:28 +01:00
Maxim Poliakovski
d4a2f400b5
Fix divw[.] and divwo[.] emulation.
...
Also adds a couple of tests for undocumented
CPU behaviour. Remove superfluous "sidiv".
2020-02-10 16:07:11 +01:00
Maxim Poliakovski
8d03d24c77
Complete tests for the integer instructions.
2020-02-08 23:23:58 +01:00