Commit graph

131 commits

Author SHA1 Message Date
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
Danila Malyutin 11eeab0a1a PPU/LLVM: Added noexcept and some fixes 2015-09-19 17:09:50 +03:00
Danila Malyutin 3208a7713f PPU/LLVM: Fix for crashes on exit with jit 2015-09-19 17:09:49 +03:00
Vincent Lejeune 05c5058dfd PPU/LLVM: Remove useless call to NotifyBlockStart
Likely a rebase error, with this Metal Slug can run at 60 fps again.
2015-09-16 22:39:49 +02:00
Vincent Lejeune c407c786cc PPU/LLVM: Do not notify already compiled block.
Also flush m_pending_address_start to avoid memory consumption
explosion.
2015-09-15 19:21:40 +02:00
Vincent Lejeune ecb3d93918 PPU/LLVM: Remove lock in GetCompiledExecutableIfAvailable
This should increase performance a lot in some case.
2015-09-15 19:21:40 +02:00
Vincent Lejeune 667cb64c29 PPU/LLVM: Rename ProcessExecutionTrace to better reflect what it does. 2015-09-15 19:21:40 +02:00
Vincent Lejeune 359258c3d3 PPU/LLVM: Increase recompiler thread responsiveness. 2015-09-15 19:21:39 +02:00
Vincent Lejeune 9d18bba1df PPU/LLVM: Propagate exceptions
It fixes a crash in Retro City Rampage with low (ie 10) llvm threshold.
2015-09-15 19:21:39 +02:00
Vincent Lejeune 58181c5c17 PPU/LLVM: Remove indirect call completly 2015-09-01 18:58:14 +03:00
Vincent Lejeune 02a1bffc12 PPU/LLVM: Simplify trace management 2015-09-01 18:58:11 +03:00
Vincent Lejeune f2c8db75bf PPU/LLVM: Do not recompile blocks 2015-09-01 18:58:10 +03:00
Vincent Lejeune 5fe3ea6440 PPU/LLVM: Use a big table instead of an unordered_map to get compilation result.
The hashmap overhead may be really big in some case.
2015-08-26 22:22:01 +02:00
Vincent Lejeune 241dedef4e PPU/LLVM: Properly print verification string 2015-08-26 21:54:40 +02:00
Vincent Lejeune b2ca9edde2 PPU/LLVM: Use ExecuteFunction in ExecuteTillReturn 2015-08-26 21:54:39 +02:00
Vincent Lejeune f81192373f PPU/LLVM: Replace magic number with opcode enum in GetBranchTypeFromInstruction. 2015-08-26 21:54:39 +02:00
Nekotekina ce494f8847 fmt::by_value, fmt::Format removed 2015-08-24 21:22:42 +03:00
Nekotekina 15057ffc5e wtf? 2015-08-24 21:22:40 +03:00
Danila Malyutin aeee0758c2 Ignore warnings in VS from llvm headers 2015-08-16 23:40:03 +03:00
Raul Tambre a775b428f4 Merge pull request #1173 from vlj/llvm36-debug
Add debug options for llvm compiler
2015-08-12 17:53:49 +03:00
Raul Tambre d10c44ed3a Merge pull request #1175 from danilaml/appveyor-cmake
Make it possible to compile rpcs3 on win via cmake and make win builds available for download on appveyor
2015-08-11 20:44:22 +03:00
Vincent Lejeune e459d01927 PPU/LLVM: Add debug tool for LLVM recompiler 2015-08-11 18:10:32 +02:00
Vincent Lejeune 6e8a5f3a5f PPU/LLVM: Avoid recompiler thread spinning forever 2015-08-10 20:32:22 +02:00
Vincent Lejeune 53769ae1bd PPU/LLVM: Fix recursive call crashing llvm backend 2015-08-10 19:59:30 +02:00
Danila Malyutin ddff65d288 Make it possible to build rpcs3 via cmake/vs2015 combo. 2015-08-08 04:43:08 +03:00
Vincent Lejeune fc3314ea96 PPU/LLVM: Print PPC block before translated LLVM bytecode 2015-08-05 17:27:59 +02:00
Vincent Lejeune 8f490e8ecd PPU/LLVM: Try to fix crash (again) when cleaning modules 2015-08-01 21:56:44 +02:00
Danila Malyutin 5ae6586803 Add missing override specifiers 2015-07-26 18:37:14 +03:00
Danila Malyutin e810eabd32 Clean up and fixes 2015-07-26 18:09:33 +03:00
Danila Malyutin 6849192b39 Tabify 2015-07-26 18:09:31 +03:00
Danila Malyutin 6832910187 Update llvm tests to work with new mcjit recomp
WIP, also found some offending instructions with it.
2015-07-26 18:09:29 +03:00
vlj 26f6b89530 PPU/LLVM: Remove duplicate m_address_to_ordinal map and improve cleaning 2015-07-22 02:11:00 +03:00
vlj 501c14fc65 PPU/LLVM: Clean code
Replace auto with real type, reduce indent and useless variables...
2015-07-22 02:10:58 +03:00
vlj 4adb9a2683 PPU/LLVM: Do not cache block 2015-07-22 02:10:57 +03:00
vlj abd61538ea PPU/LLVM: Rename ExecutionEngine to CPUHybridDecoderRecompiler
In order to avoid naming conflict with llvm own ExecutionEngine
2015-07-22 02:10:55 +03:00
vlj 7592b87a90 PPU/LLVM: Fix build 2015-07-22 02:10:54 +03:00
Nekotekina b3dfa4f5a2 VS2015 2015-07-22 02:10:14 +03:00
vlj cfa0079c3d PPU/LLVM: Fix branch detection
Thanks Nekotekina for the fix
2015-07-22 01:32:19 +03:00
Vincent Lejeune b7d5d70a92 PPU/LLVM: Fix for callback spinning undefinitly
Thanks for Nekoteki for the fix
2015-07-22 01:32:18 +03:00
Nekotekina 2f7fe35f5c Minor style change 2015-07-21 23:14:31 +03:00
Nekotekina 48c75105e2 "Memory" eliminated 2015-07-18 03:12:06 +03:00
Nekotekina 2d37c6b5e2 sys_memory, sys_mmapper rewritten
LogBase::Fatal() removed
2015-07-10 20:37:12 +03:00
Nekotekina 83321c5be7 sys_time_get_current_time fixed, CALL_FUNC draft 2015-07-10 04:31:30 +03:00
Nekotekina 8f9e1100c8 SPU fixes, various fixes 2015-07-10 04:31:25 +03:00
Nekotekina 6f1e76198a Some fixes 2015-07-10 04:31:18 +03:00
Nekotekina 39f836b495 re32/se32/... macro eliminated, some fixes 2015-07-10 04:31:09 +03:00
Nekotekina b84d831d8f MFF_NO_RETURN flag introduced 2015-05-29 01:49:50 +03:00
luxsie 0f1bb8545d Tab to Space. 2015-04-18 03:12:25 +08:00
luxsie cd23a2ecaf CppCheck: About assert side-effect and remove_if that i don't know enough.. 2015-04-10 19:29:45 +08:00