Commit Graph

614 Commits

Author SHA1 Message Date
Nekotekina
9b43203111 offset32(): pointer-to-member arithmetic 2017-04-20 00:17:16 +03:00
Ryan Gonzalez
e447f071ce Misc compile fixes 2017-04-18 22:37:17 +03:00
Ivan
1ae334e500 Fix freezes on Linux (#2632) 2017-04-04 23:27:16 +03:00
Andrey
215a9f9e11 Gdb debug server (#2542) 2017-04-02 21:10:06 +03:00
Nekotekina
78b9c64f67 Simple patch engine 2017-03-30 12:04:59 +03:00
Nekotekina
98d96fd649 util::memory_reserve fixed 2017-03-27 01:15:41 +03:00
Nekotekina
37a97a71e3 vm::g_exec_addr added
s_ppu_compiled renamed
Exception handling enabled
2017-03-27 01:15:41 +03:00
Nekotekina
e4d1bdef07 Fix check_addr arg 2017-03-27 01:15:41 +03:00
Nekotekina
4bbe1b6bf3 fs::write_file aux 2017-03-27 01:15:41 +03:00
Nekotekina
0393c7f52c fs:: handle negative seek 2017-03-27 01:15:41 +03:00
Nekotekina
3e6f9faf71 Use LLVM 4.0 2017-03-21 23:32:14 +03:00
Nekotekina
ad72168143 LLVM: load .pdata section 2017-03-21 20:16:41 +03:00
Nekotekina
560d6776af LLVM: generate trampolines
Must fix issues with older CPUs
JIT.cpp refactored to use utils::memory*
2017-03-21 20:16:41 +03:00
Nekotekina
c7a9a8e8f1 utils::memory update 2017-03-21 20:16:41 +03:00
Nekotekina
14b9b12211 Fix UB in BitField.h 2017-03-17 20:22:47 +03:00
Nekotekina
07646c2124 LLVM CPU override option 2017-03-14 16:12:03 +03:00
Nekotekina
1ede0f4706 Minor optimization 2017-03-13 15:02:18 +03:00
Nekotekina
c72a5a5775 thread_ctrl::finalize crash fix 2017-03-13 13:16:22 +03:00
Nekotekina
d09dd29054 utils::memory_protect 2017-03-13 13:16:22 +03:00
Nekotekina
1f17109203 __chkstk workaround 2017-03-11 19:49:32 +03:00
Nekotekina
4739eb3601 Reservation fix 2017-03-11 15:48:43 +03:00
Nekotekina
5e3bacbd9b New reservations
Memory system cleanup
sys_memory_get_page_attribute
2017-03-10 15:51:40 +03:00
Nekotekina
a2200bd01e Speculative fix for fmt::format 2017-03-05 21:42:54 +03:00
Nekotekina
19a698682b Compilation fix (mingw) 2017-03-05 19:00:08 +03:00
Nekotekina
3baf79f929 ror64 added 2017-03-04 17:34:59 +03:00
Nekotekina
d9c78cf495 bf_t fix 2017-03-04 17:01:31 +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
0eb6bf6a67 LLVM: splitting and caching 2017-02-26 20:14:18 +03:00
Nekotekina
f35babad98 shared_mutex fix (linux) 2017-02-24 18:48:53 +03:00
georgemoralis
3e0c356b0b per game config.yml (#2418) 2017-02-23 18:08:52 +03:00
Nekotekina
baf22527b0 Ditch fs::get_executable_dir 2017-02-22 17:17:26 +03:00
Nekotekina
688097faa9 lf_spsc, lf_mpsc added 2017-02-22 12:57:08 +03:00
Nekotekina
f08579d201 Log timestamp added 2017-02-22 12:56:34 +03:00
Nekotekina
b1aa87b515 Busy waiting added 2017-02-16 00:13:55 +03:00
Nekotekina
436c245d13 Remove unused code 2017-02-13 18:33:31 +03:00
Nekotekina
ef1eff6d48 File: handle EACCES 2017-02-12 02:55:09 +03:00
Nekotekina
be5f780977 fs::memory_stream fixed
seek() allows any offset
read() cannot overflow
2017-02-11 19:27:49 +03:00
Nekotekina
9e39c8cd64 fs::make_stream template 2017-02-11 19:05:35 +03:00
Nekotekina
bb111d325f memory fix 2017-02-10 23:27:58 +03:00
Nekotekina
257b9a2015 Debugger fix
Crash fixes
GUI fixes
Debug enhancements
2017-02-10 16:33:22 +03:00
Nekotekina
ead67d8e67 Minor changes
Fix psv loader
2017-02-07 16:37:30 +03:00
Nekotekina
9767cc84b0 16b atomic load fix 2017-02-05 15:49:51 +03:00
Nekotekina
6537909fd2 sys_event_queue... 2017-02-04 20:39:04 +03:00
Nekotekina
16944b0c4c sys_cond, sys_mutex 2017-02-04 20:39:03 +03:00
Nekotekina
b7a7a5c582 #2314 fix 2017-01-31 20:37:02 +03:00
Nekotekina
aef5113d49 Fix #2300 2017-01-29 22:52:07 +03:00
Nekotekina
be8d8ded3f replace high_resolution_clock 2017-01-29 19:52:19 +03:00
Nekotekina
a5a2d43d7c Thread.cpp refinement
Hide thread mutex
Safe notify() method
Other refactoring
2017-01-29 19:52:19 +03:00
Ryan Gonzalez
11e2965b5c Switch to always using a steady clock (closes #2200) 2017-01-29 03:07:08 +03:00
Nekotekina
d4c3905355 Debug build fix 2017-01-28 15:32:45 +03:00
Nekotekina
307da1fe39 Fixed fs::file::open 2017-01-28 13:11:06 +03:00
Nekotekina
4ecf05aa13 cellFsUtime implemented 2017-01-26 20:01:16 +03:00
Nekotekina
591a6c8671 IdManager improved 2017-01-25 23:29:36 +03:00
Nekotekina
9232ddf0ab Minor changes 2017-01-25 04:43:12 +03:00
Nekotekina
1c14d872a8 New shared_mutex
Experimental sync utils
New semaphore<>
New cond_variable
New owned_mutex
2017-01-25 00:38:07 +03:00
Nekotekina
98fc131d47 util::dynamic_import
Futex implementation
2017-01-25 00:38:07 +03:00
Nekotekina
7a356d3294 is_leaf_function fix (Linux) 2017-01-22 18:50:55 +03:00
Ivan
fb56c14853 LLVM fix (skylake) (#2269) 2017-01-21 23:40:37 +03:00
Vincent Lejeune
c24fba89e8 Add variant.hpp from mapbox 2016-08-24 21:58:59 +02:00
Nekotekina
e3bc2273d3 fs::dir improved
FindFirstFileExW used
Immediate directory read
2016-08-18 15:14:08 +03:00
Nekotekina
bbb0effe23 Minor fixes
cellSyncMutexTryLock fixed
2016-08-17 19:50:20 +03:00
Nekotekina
ad174eb12c error_code implemented
Reports based on formatting system
ppu_error_code removed
arm_error_code removed
2016-08-16 18:57:44 +03:00
Nekotekina
3c82e1a58d Silly macro removed-3 2016-08-15 18:30:33 +03:00
Nekotekina
dbcb5df172 WRAP_EXPR macro removed 2016-08-15 17:11:45 +03:00
Nekotekina
dafb6b5c92 %p fmt fix 2016-08-15 16:57:51 +03:00
Nekotekina
84d0d396ed EXPECTS usage removed 2016-08-15 16:29:38 +03:00
Nekotekina
56b9b38c9c verify() fix 2016-08-15 14:59:19 +03:00
Nekotekina
05fb57baff VERIFY macro removed 2016-08-15 03:13:31 +03:00
Nekotekina
cc46f2d7e6 LOG macro improved 2016-08-15 00:04:42 +03:00
Nekotekina
1f3433464c ENSURES usage removed 2016-08-14 22:41:01 +03:00
Nekotekina
b0f5796c90 New narrow() implementation 2016-08-14 20:28:56 +03:00
Nekotekina
0f87c4485d Silly macro removed-2 2016-08-14 18:19:42 +03:00
Nekotekina
949200cd3e Type hacks removed 2016-08-14 18:07:32 +03:00
Nekotekina
7a2802a5e0 Silly macro removed 2016-08-12 19:31:28 +03:00
Vincent Lejeune
c382ce5260 Add optional files. 2016-08-11 19:47:14 +02:00
Nekotekina
8c8242345e bts/btr/btc support improved 2016-08-10 16:12:34 +03:00
Nekotekina
130f7905ba Error report fix 2016-08-10 14:17:07 +03:00
Nekotekina
912072e60c LLVM: minor fixes (JIT.cpp) 2016-08-10 13:09:11 +03:00
Nekotekina
bdeccd889f cpu_type removed, system_type added
cpu_state -> cpu_flag
vm::stack_allocator template improved
ppu_cmd type changed to enum, cmd64 type added
2016-08-09 17:14:41 +03:00
Nekotekina
a7e808b35b EXCEPTION macro removed
fmt::throw_exception<> implemented
::narrow improved
Minor fixes
2016-08-08 19:19:32 +03:00
Nekotekina
46735d6b3d New bitsets (experimental) 2016-08-08 16:29:37 +03:00
Nekotekina
71441819e5 multicast<> rewritten 2016-08-07 17:06:37 +03:00
Nekotekina
1a7ea2d235 fmt_unveil<> fix 2016-08-07 17:05:35 +03:00
Nekotekina
9245308ff2 Improve fatal error report 2016-08-06 15:09:44 +03:00
Nekotekina
3cd2f735a7 Fmt fix 2016-08-06 13:39:01 +03:00
Nekotekina
d646fbb94f Fmt/Log fixes 2016-08-05 20:59:25 +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
44bee7d0ba LLVM: Use small code model
Global variables modified:
__mptr: pointer to memory base addr
__cptr: pointer to function map addr

Use 32 bit pointers in function map
2016-07-25 18:26:02 +03:00
Nekotekina
a026d35c97 sys_interrupt_thread_eoi fixed
thread_ctrl::interrupt improved
BIND_FUNC improved: preparations
2016-07-24 21:06:07 +03:00
Nekotekina
7ccdea7822 Removed std::enable_shared_from_this
Minor ID manager refactoring
2016-07-24 21:06:05 +03:00
Nekotekina
0227c03366 GUI logging improved
logs::listener resurrected
rpcs3 version: constexpr
2016-07-21 01:54:39 +03:00
Nekotekina
a186af32ec Fixed thread interrupt and accvio 2016-07-18 17:54:31 +03:00
Nekotekina
438e057dc8 Partial commit: sys_fs 2016-07-17 02:27:52 +03:00
Nekotekina
59433bfcd5 Implemented thread_ctrl::interrupt 2016-07-17 02:23:45 +03:00
Nekotekina
96728a83f6 Partial commit: sys_memory, sys_mmapper 2016-07-16 14:46:01 +03:00
Nekotekina
73c2115968 BEType: explicit alignment specifier 2016-07-16 14:45:57 +03:00
Nekotekina
ba8fd825ec fs::get_data_dir implemented 2016-07-11 22:12:39 +03:00
Nekotekina
06c6c8212d Minor fixes
elf_object
Loader fix
Analyser fix
2016-07-11 16:30:11 +03:00
Ivan
77594dc66c PPU LLVM: New analyser (#1858)
Minor fixes
VEX prefix support
2016-07-07 21:42:39 +03:00