eladash
a9014a8cac
ppu Fast/Precise: Fix SIMD instructions VSUM2SWS, VPKSWSS, VPKSHUS, VPKSHSS
...
Also rewrite VPKSHUS for speed.
2019-04-11 17:47:52 +03:00
eladash
e21504d52d
ppu interpreter: Improve FPCC field handling
2019-04-11 17:47:52 +03:00
eladash
fb8302817f
ppu: Set link unconditionally
2018-12-10 01:34:02 +03:00
scribam
8540399ecb
ppu-interpreter: improve vminfp instruction
2018-10-12 21:30:14 +03:00
scribam
39272eef45
ppu-interpreter: improve vsl/vsr instructions
2018-10-08 00:15:26 +03:00
scribam
cc846eb670
ppu-interpreter: improve fnmadd/fnmadds instructions ( #5183 )
...
* ppu-interpreter: improve fnmadd instruction
* ppu-interpreter: improve fnmadds instruction
2018-10-04 00:49:19 +03:00
scribam
f294729b28
ppu: improve lvebx/lvehx/lvewx instructions
2018-09-11 21:20:52 +03:00
Nekotekina
ed9fb8405b
Move rotate/cntlz/cnttz helpers to Utilities/asm.h
2018-09-08 00:32:04 +03:00
scribam
c5c0f68b3e
ppu-precise: improve vaddsws and vadduws instructions
2018-07-22 19:53:28 +04:00
scribam
2ed6e51d24
ppu: improve vnmsubfp instruction
2018-07-09 03:33:05 +04:00
scribam
733efc6b0d
ppu: improve fnmsubs instruction
2018-07-09 03:33:05 +04:00
scribam
f1e6532ec0
ppu: improve fnmsub instruction
2018-07-09 03:33:05 +04:00
isJuhn
83f096c435
Add conditional reservation update to STW
2018-06-23 23:13:34 +04:00
scribam
824ad4fea7
cmake: simplify glslang integration ( #4652 )
...
* cmake: simplify glslang integration
* Fix warning (ignored attributes), part 2
2018-06-06 15:45:28 +03:00
Nekotekina
cce0ad0c35
Clean vm::ps3 namespace use
2018-02-09 17:49:37 +03:00
Nekotekina
83da7f9b63
PPU: remove SSSE3 dependency
2017-12-20 01:21:15 +03:00
Nekotekina
1ae8850b3f
PPU: rewrite VMHRADDSHS without SSSE3
2017-12-20 00:04:09 +03:00
Nekotekina
140a581d23
PPU: redesign LVSL, LVSR instructions
2017-12-20 00:04:09 +03:00
Nekotekina
df2fc13b7a
Add PPU instruction stat dumper
...
Needs PPU Debug option to activate and PPU Interpreter
Dumps after Resume (after Pause)
Fix utils::memory_decommit, clean vm.cpp
2017-10-11 20:06:33 +03:00
Nekotekina
85f8a42bd2
PPU: MTOCRF optimization
2017-06-29 17:48:55 +03:00
Nekotekina
2629f9be44
PPU: VREFP, VRSQRTEFP changed
2017-06-29 17:48:55 +03:00
Nekotekina
fc2a45d6d6
Removed unnecessary code
2017-06-29 17:48:55 +03:00
Nekotekina
aea094730b
PPU LLVM: paradigm shift
...
For now, compile only one block at time
Use tail calls to move between blocks
Fully write PPU context (except CIA)
This fixes many compatibility problems
2017-06-23 20:09:33 +03:00
Wilfried Rabouin
7ab210432e
PPU interpreter (precise): SAT bit implemented ( #2736 )
2017-04-30 21:05:50 +03:00
Nekotekina
3bfe17a14f
PPU: HACK instruction removed
...
Breakpoints fixed
2017-03-22 23:23:47 +03:00
Nekotekina
c4bdc930ca
Fix UB in PPU interpreter
2017-03-17 20:23:03 +03:00
Nekotekina
5e3bacbd9b
New reservations
...
Memory system cleanup
sys_memory_get_page_attribute
2017-03-10 15:51:40 +03:00
Nekotekina
3baf79f929
ror64 added
2017-03-04 17:34:59 +03:00
Wilfried Rabouin
67ac8bf070
PPUInterpreter: Fix undefined behavior of left rotate functions ( #2469 )
...
* PPUInterpreter: Fix undefined behavior of rol8 and rol16 with inline assembly
* PPUInterpreter: Fix undefined behavior of rol32 and rol64
* PPUInterpreter: Change left rotate functions to inline functions and move to types.h
2017-03-04 16:41:40 +03:00
Nekotekina
f4b95c0226
PPU analyser improved
2017-02-12 21:12:08 +03:00
Nekotekina
47b4c649f1
PPU fixes
2017-02-07 16:37:30 +03:00
Nekotekina
1705638e25
MFVSCR error removed
2017-01-26 20:01:16 +03:00
Nekotekina
84d0d396ed
EXPECTS usage removed
2016-08-15 16:29:38 +03:00
Nekotekina
05fb57baff
VERIFY macro removed
2016-08-15 03:13:31 +03:00
Nekotekina
a7e808b35b
EXCEPTION macro removed
...
fmt::throw_exception<> implemented
::narrow improved
Minor fixes
2016-08-08 19:19:32 +03:00
Nekotekina
5a36c57c57
Formatting system improved
...
`unveil<>` renamed to `fmt_unveil<>`, now packs args to u64 imitating va_args
`bijective...` removed, `cfg::enum_entry` now uses formatting system
`fmt_class_string<>` added, providing type-specific "%s" handler function
Added `fmt::append`, removed `fmt::narrow` (too obscure)
Utilities/cfmt.h: C-style format template function (WIP)
Minor formatting fixes and cleanup
2016-08-04 21:34:00 +03:00
Nekotekina
f8719c1230
PPUThread refactoring
...
`CallbackManager` removed, added _gcm_intr_thread for cellGcmSys
`PPUThread` renamed to `ppu_thread`, inheritance allowed
Added lightweight command queue for `ppu_thread`
Implemented call stack dump for PPU
`get_current_thread_mutex` removed
`thread_ctrl::spawn`: minor initialization fix
`thread_ctrl::wait_for` added
`named_thread`: some methods added
`cpu_thread::run` added
Some bugs fixes, including SPU channels
2016-07-30 16:35:02 +03:00
Nekotekina
eb377f425c
PPU LLVM: Analyser fix
...
ppu_branch_target removed
2016-07-14 16:27:14 +03:00
Nekotekina
a8bebcba55
LLVM AOT
2016-06-19 21:29:48 +03:00
Nekotekina
e2d82394f6
Cell
2016-05-23 16:22:23 +03:00
John
ce3fdeda5e
Replace math macros by function calls from cmath. ( #1695 )
2016-05-19 19:15:56 +03:00
Ivan
aafcf44581
Header optimizations ( #1684 )
...
Shouldn't break anything. I hope.
2016-04-27 01:27:24 +03:00
Ivan
da7472fe81
Optimizations ( #1680 )
...
* Optimizations
1) Some headers simplified for better compilation time
2) Some templates simplified for smaller executable size
3) Eliminate std::future to fix compilation for mingw64
4) PKG installation can be cancelled now
5) cellGame fixes
6) XAudio2 fix for mingw64
7) PPUInterpreter bug fixed (Clang)
* any_pod<> implemented
Aliases: any16, any32, any64
rsx::make_command fixed
2016-04-25 13:49:12 +03:00
Nekotekina
c4e99dbdb2
Partial commit: Cell
2016-04-15 19:22:34 +03:00
Nekotekina
960668ecf1
For #1355
...
offsetof() eliminated
OFFSET_32, SIZE_32, ALIGN_32 used
2016-01-14 19:07:27 +03:00
Nekotekina
3ed603074c
Changes done by [DH] rewritten
...
Added rsx_program_decompiler submodule
Added fs::dir iterator
Added fmt::match
2015-12-22 23:11:20 +03:00
Nekotekina
5f6caf33f0
MINGW64: Compilation fix
2015-11-16 19:12:51 +03:00
Nekotekina
a974ee009e
vm::var improved, cleanup
...
Mostly vm::var initialization introduced.
Added vm::make_var function.
2015-10-14 18:17:37 +03:00
Nekotekina
59f1077a36
Cleanup, be_t fixed
...
Some functions renamed:
get_ps3_function_name
execute_syscall_by_index
2015-09-22 13:28:34 +03:00
Nekotekina
6f3c50eba2
u128 renamed to v128
...
Since it's vector union type
2015-08-24 21:22:23 +03:00