Maxim Poliakovski
a1d8f8aa4e
ppctests: fix test cases with SNaN/QNaN operands.
2023-11-30 17:44:46 +01:00
Maxim Poliakovski
8c3dfe94c7
ppcfpopcodes: infinities should set FPCC_FUNAN.
2023-11-30 12:53:10 +01:00
Maxim Poliakovski
680cab52f3
ppcfpopcodes: fix ppc_fadds.
2023-11-30 12:06:44 +01:00
Maxim Poliakovski
6abb07e61b
Add rounding control for the host FPU.
2023-11-30 12:06:44 +01:00
Maxim Poliakovski
b59c2be12d
ppcfpopcodes: fix fpresult_update().
2023-11-30 12:06:44 +01:00
Maxim Poliakovski
b51670cb25
ppcfpopcodes: improve mffs, mtfsb0 and mtfsb1.
2023-11-30 12:06:44 +01:00
Maxim Poliakovski
487c6c2c7c
ppcfpopcodes: remove dead code.
2023-11-30 12:06:44 +01:00
Maxim Poliakovski
47e0c23e64
Fix CR1 updates for floating-point instructions.
2023-11-28 16:31:51 +01:00
dingusdev
dd454689e0
Fixes for condition reg move instructions
2023-11-28 07:06:04 -07:00
dingusdev
4753ba5361
Continued clean-up
2023-11-23 16:56:58 -07:00
dingusdev
7835aec034
Further CPU cleanup
2023-11-21 08:06:50 -07:00
dingusdev
f4f035682c
Fixed cfloat include
2023-11-19 20:34:40 -07:00
dingusdev
d92ae6136a
CPU code clean-up in progress
...
Happened to fix one case in the process.
2023-11-19 17:56:30 -07:00
dingusdev
074a760b6a
FP compare fixes
...
This is the start of several fixes for the floating point emulation.
2023-11-13 07:30:31 -07:00
Mihai Parparita
35c86ad6bf
Clean up #includes
...
Result of running IWYU (https://include-what-you-use.org/ ) and
applying most of the suggestions about unncessary includes and
forward declarations.
Was motivated by observing that <thread> was being included in
ppcopcodes.cpp even though it was unused (found while researching
the use of threads), but seems generally good to help with build
times and correctness.
2023-11-03 00:33:47 -07:00
Maxim Poliakovski
b39e884d61
ppcfpopcodes: add missing std:: prefixes.
2022-02-17 00:20:18 +01:00
Maxim Poliakovski
de65196c4f
ppcfpopcodes: remove unused template parameters.
2022-02-17 00:11:14 +01: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
Maxim Poliakovski
331b93d4d6
Fix compilation with Clang 11.
2021-10-17 23:41:53 +02:00
dingusdev
061b061813
Floating point overhaul, part 4
...
Reworked the INF/NAN checks again - This time, only checking them when the result is calculated
2021-10-14 20:31:10 -07:00
dingusdev
5672a154cb
Floating-point refactor, part 3
...
Condensed code to shorten enum names and remove casting.
Condensed mffs and partially fixed NAN checks for FADD(S).
2021-10-10 07:48:49 -07:00
dingusdev
2d65ed47fc
Floating point overhaul, part 2
...
Further formatting fixes. Removed obsoleted separation definitions. Fixed rounding to nearest.
2021-10-09 19:42:25 -07:00
dingusdev
e344b089b3
Floating point overhaul, part 1
...
Cleaned up formatting and reworked the INF/NAN checks
2021-10-09 15:08:53 -07:00
dingusdev
d5960ca70b
Fixed warnings for frsqrte and fsqrts
2021-10-06 18:59:31 -07:00
dingusdev
ad6a2a9f17
Merge pull request #20 from dingusdev/floating-point
...
Merging floating point branch
2021-10-06 18:32:23 -07:00
Maxim Poliakovski
84e111290f
Fix includes for loguru and SDL.
2021-09-16 00:46:38 +02:00
Maxim Poliakovski
089645e830
Implement SoftTLB for writes.
2021-08-22 17:34:23 +02:00
Maxim Poliakovski
22a15f4780
ppcfpopcodes: fix mtfsb0 & mtfsb1 emulation.
2021-07-09 01:07:42 +02:00
dingusdev
48a65279e1
Fixed crf_d for mtfsb0 and mtfsb1
2021-07-07 18:58:02 -07:00
dingusdev
6abe86589b
Update ppcfpopcodes.cpp
2021-07-07 08:00:37 -07:00
Maxim Poliakovski
4da95a66d7
Make emulated memory loads to use SoftTLB.
2021-06-20 22:33:10 +02:00
dingusdev
19ca37c4ba
Started refactoring fctiw and fctiwz
2021-02-05 12:45:57 -07:00
Maxim Poliakovski
5961552ed9
ppcfpopcodes: fix register stores.
2021-01-25 17:19:32 +01:00
Maxim Poliakovski
2141a72b87
ppcfpopcodes: finish RFC of the loading helpers.
2021-01-25 02:27:58 +01:00
Maxim Poliakovski
9683c660bc
ppcfpopcodes: RFC loading helpers, part 2.
...
Fix lfdx emulation along the way.
2021-01-25 01:30:19 +01:00
Maxim Poliakovski
d8397906c2
ppcfpopcodes: start refactoring of loading helpers.
2021-01-24 23:06:33 +01:00
dingusdev
60f84ef0d9
Refactoring interpreter value storage
2021-01-24 11:59:16 -07:00
Maxim Poliakovski
3189876d41
ppcfpopcodes: fix fmul emulation.
2021-01-24 04:53:19 +01:00
Maxim Poliakovski
bb3f4e596e
ppcexec: fix subopcode 59 dispatching.
2021-01-23 03:12:39 +01:00
Maxim Poliakovski
6c6247b94f
Clean up program exceptions.
2020-11-30 20:59:36 +01:00
dingusdev
54fcfca8e9
Fixed floating point loading and storing instructions
2020-11-29 06:52:01 -07:00
dingusdev
1fe9ffe3e5
Further refactoring to clean up the interpreter
2020-10-17 21:46:38 -07: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
dingusdev
354409812e
Updating files with proper licensing header
2020-02-28 09:04:28 -07:00