Commit Graph

2997 Commits

Author SHA1 Message Date
S Gopal Rajagopal c72d97c64a Implemented LF*, STF*, RL* and a few more instructions 2014-10-13 15:30:58 +05:30
S Gopal Rajagopal e485047a10 Enabled some LLVM analysis/transform passes
Implement mul, neg, nor, subf
2014-10-13 15:26:10 +05:30
S Gopal Rajagopal d69de9c332 Fixed some bugs that prevented the recompiler from terminating properly 2014-10-13 15:26:09 +05:30
S Gopal Rajagopal 840ae2f86b Run recompilation in the background 2014-10-13 15:26:09 +05:30
S Gopal Rajagopal 1f3a117744 Disabled tests 2014-10-13 15:26:08 +05:30
S Gopal Rajagopal f5188cdb32 Some refactoring. Added support for some load/store instructions. 2014-10-13 15:26:08 +05:30
S Gopal Rajagopal 1be5222e66 Made changes so that there is a single LLVM context instead of one per PPU. If separate LLVM contexts are used per PPU and if different PPUs execute the same address then the address will have to compiled once per PPU. 2014-10-13 15:26:07 +05:30
S Gopal Rajagopal a4bb9eaa55 Made changes so that the recompiler output may be verfied against that of the interpreter. This seems to be a better strategy for testing the recompiler. The best strategy would be to verify its output against a real PPU core but I dont have access to one. 2014-10-13 15:26:07 +05:30
S Gopal Rajagopal 791f8e3b9a Compilation Fix 2014-10-13 15:25:02 +05:30
S Gopal Rajagopal 02d1c9f6d2 Added LLVM as a submodule 2014-10-13 15:24:24 +05:30
S Gopal Rajagopal 6135b450c2 Implemented fallback to PPU Interpreter 2014-10-13 15:22:39 +05:30
S Gopal Rajagopal aa614e83f2 Refactoring + new instructions 2014-10-13 15:22:39 +05:30
S Gopal Rajagopal 878926f57c Support few more instructions 2014-10-13 15:22:38 +05:30
S Gopal Rajagopal ac86ee8fa9 Added support for MULLI 2014-10-13 15:22:38 +05:30
S Gopal Rajagopal eaa644dc20 Added support for a few more vector instructions 2014-10-13 15:22:37 +05:30
S Gopal Rajagopal d8d0c0d2fe Added support for 3 more instructions 2014-10-13 15:21:25 +05:30
S Gopal Rajagopal 659a3d88c6 Added more tests 2014-10-13 15:21:24 +05:30
S Gopal Rajagopal 66d0b25448 Moved tests to a new file 2014-10-13 15:21:24 +05:30
S Gopal Rajagopal 2ea881301a Implemented a basic UT framework for PPULLVMRecompiler 2014-10-13 15:18:53 +05:30
S Gopal Rajagopal 2bb63ad051 LLVM based PPU Recompiler. Intial commit 2014-10-13 15:18:17 +05:30
Raul Tambre 9e5403aeb3 Remove unneeded be_t 2014-10-11 20:20:01 +03:00
Nekotekina 48eb66383b waiter_reg_t, cellSyncBarrier improved 2014-10-11 02:37:20 +04:00
Nekotekina 3c2e0fff07 waiter_op() and waiter_signal() basis
Simplified signaling on condition variables without using them directly.
2014-10-11 01:33:57 +04:00
Nekotekina 446993eaa6 Atomic intrinsics for u128 type
cellSpursGetSpuThreadGroupId
cellSpursGetNumSpuThread
cellSpursGetSpuThreadId
2014-10-10 22:41:57 +04:00
Nekotekina 09fbda603c Atomic intrinsics refactoring 2014-10-10 22:19:14 +04:00
Raul Tambre d92b44e93f Update ASMJIT 2014-10-10 17:24:37 +03:00
Raul Tambre 9bcaa1e498 Disable pausing when a null command occurs 2014-10-10 17:24:28 +03:00
Nekotekina b0da8319b7 SPURS kernel v2 2014-10-10 01:39:03 +04:00
Nekotekina b7d0bfa972 SPU branch D/E flags workaround 2014-10-10 01:38:02 +04:00
Nekotekina 1dac13be16 RSXIO memory mapping with strict ordering (draft) 2014-10-10 01:26:04 +04:00
Nekotekina 266c3d4753 Small fixes 2014-10-08 18:26:08 +04:00
Nekotekina 9a02add930 Bugfix 2014-10-08 16:29:29 +04:00
Arkaran99 d9a95aae09 Avoid giving arguments by value for log. 2014-10-08 01:35:19 +02:00
Nekotekina fd7da9d61a Compilation fix 2014-10-08 01:53:50 +04:00
Nekotekina 94c30924dd Some things for u128 2014-10-08 01:37:04 +04:00
Nekotekina 237ab974dd SPURS kernel v1 2014-10-07 17:35:44 +04:00
B1ackDaemon 67bc9acbe0 Merge pull request #836 from raven02/patch-1
Small RSX fix
2014-10-06 18:08:50 +03:00
raven02 b13a8ab4e3 Small RSX fix 2014-10-06 21:39:25 +08:00
Alexandro Sánchez Bach 9c3981bc8e Merge pull request #835 from Nekotekina/master
Notification for encrypted SPU modules
2014-10-06 00:17:38 +02:00
Nekotekina ed0918d097 Notification for encrypted SPU modules 2014-10-06 01:21:00 +04:00
B1ackDaemon 5e954f4f76 Merge pull request #834 from Nekotekina/master
RSXDebugger fix
2014-10-05 11:36:35 +03:00
Nekotekina 4273c52efc RSXDebugger fix 2014-10-05 12:25:54 +04:00
B1ackDaemon 4a2d61bc84 Merge pull request #833 from Nekotekina/master
RSX fix
2014-10-05 11:07:14 +03:00
Nekotekina 5f46534b72 RSX fix
Forgot to rollback these lines.
2014-10-05 12:03:14 +04:00
B1ackDaemon f38fb61c62 Merge pull request #830 from Nekotekina/master
Various changes
2014-10-04 18:15:16 +03:00
Nekotekina 6c8d6aaf71 Damned conflicts fixed 2014-10-04 18:57:53 +04:00
Nekotekina 74007d5e5d Small changes in memory and RSXIOMem
Some bugs fixed, some other changes.
2014-10-04 18:43:46 +04:00
Alexandro Sánchez Bach ad4b0f092b Merge pull request #828 from Survanium90/master
Added initialization checks in SceNpClans module
2014-10-04 15:51:34 +02:00
Survanium90 b02225dd80 Added initialization and termination for SceNpTus Module
Also added initialization checks
2014-10-04 11:38:38 +04:00
Survanium90 70e5068e37 Added more initializations in cellCamera 2014-10-04 11:31:27 +04:00