Commit graph

49 commits

Author SHA1 Message Date
Nekotekina 87af905018 Enable -Wunused-parameter 2021-03-06 18:07:08 +03:00
Eladash e4c3b1c2bd vm: Remove vm::dealloc_verbose_nothrow 2021-01-15 17:37:52 +03:00
Nekotekina e321765c54 Split BEType.h to util/v128.hpp and util/to_endian.hpp 2020-12-13 16:34:45 +03:00
Nekotekina 584174d371 vm::gvar: add array support 2019-09-17 02:46:34 +03:00
Lassi Hämäläinen 499035512b Split Emu/Memory into more logical headers
- Add vm_locking.h and vm_reservation.h and move relevant functions
  and types to these headers.
- Change include order and make vm_ptr.h, vm_var.h and vm_ref.h headers
  usable invidually and them including vm.h instead of other way around
- Because usage of vm::ptr now requires including vm_ptr.h instead of
  vm.h updated multiple #includes
- Added additional #includes to vm_reservation.h and vm_locking to
  where vm::reservation_* and locking related functions are used
2019-06-25 17:11:10 +03:00
Nekotekina a605dd0a3f Add missing deleted operators 2018-09-27 12:16:43 +03:00
Nekotekina ee96807305 Remove explicit_bool_t, ignore, multicast<>
Remove vm::ptr operator %
This was a bad idea but explicit_bool_t was created almost for it
Other removed types are unused and have little to no meaning
2018-09-08 00:32:04 +03:00
Nekotekina ce4c4696dd Try to get rid of SIZE_32 macro 2018-09-03 21:40:36 +03:00
Nekotekina 7bccdbf157 Make vm::var unmoveable
Fix bugs with discarding vm::make_var result
2018-09-03 21:40:36 +03:00
Nekotekina 69f0ad0d68 Remove ALIGN_32 macro
It's never used in expressions like SIZE_32(T) * n, so it doesn't help to fix any warning issued due to truncation.
2018-09-03 21:40:36 +03:00
Nekotekina 5d15d64ec8 Memory mirror support
Implemented utils::memory_release (not used)
Implemented utils::shm class (handler for shared memory)
Improved sys_mmapper syscalls
Rewritten ppu_patch function
Implemented vm::get_super_ptr (ignores memory protection)
Minimal allocation alignment increased to 0x10000
2018-05-09 23:35:34 +03:00
Nekotekina cce0ad0c35 Clean vm::ps3 namespace use 2018-02-09 17:49:37 +03:00
Nekotekina 76be7d40ac Remove PSP2 2018-02-09 15:24:46 +03:00
Nekotekina aa5dc5455e _sys_spu_image_import implemented
vm:var<T[]> improved (begin/end)
sys_spu_image_import rewritten
2017-08-27 03:00:10 +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 73c2115968 BEType: explicit alignment specifier 2016-07-16 14:45:57 +03:00
DH 67a341fded Fixed _var_base move ctor 2016-06-27 03:22:22 +03:00
Nekotekina 266db1336d The rest 2016-05-23 16:22:25 +03:00
Nekotekina 0c7f763889 Partial commit: Memory 2016-04-15 19:22:43 +03:00
Nekotekina 960668ecf1 For #1355
offsetof() eliminated
OFFSET_32, SIZE_32, ALIGN_32 used
2016-01-14 19:07:27 +03:00
Nekotekina 8e4ad3dfcb Property sheets, configuration simplified
MemLeak build fixed
2015-12-08 20:02:30 +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 5e14310071 noexcept usage fixed
thread_t renamed to named_thread_t
2015-08-24 21:22:48 +03:00
Nekotekina 168cd9bb7a TLS for sys_net implemented
Method ptr for vm::ptr (renamed "of")
Method ref for vm::ptr (returns vm::ref)
Operator & for vm::ref (returns vm::ptr)
2015-08-24 21:22:46 +03:00
Nekotekina fcd6b64f8f vm::var rewritten 2015-08-24 21:22:44 +03:00
Nekotekina a8fcf71f9c Minor bugfix, cleanup 2015-07-21 23:14:04 +03:00
Nekotekina 3aefa2b4e1 ThreadBase rewritten (wip) 2015-07-10 04:31:16 +03:00
Nekotekina 714da1aa7c vm::var fix, vm::ptr improved
GetCurrentPPUThread() removed
2015-07-10 04:31:00 +03:00
Nekotekina 3064560027 vm::ptr refactoring (operators improved)
vm::pptr, vm::bpptr added for PS3
is_le_t added
sizeof32() added (32-bit sizeof macro)
2015-06-15 19:21:14 +03:00
Nekotekina 78fdcf75e7 Attribute macro changed
__forceinline -> force_inline
__noinline -> never_inline
printf_alike(x,y) added
2015-05-28 18:14:22 +03:00
Nekotekina 0fc6ec2df9 Fix 2015-03-13 18:37:00 +03:00
Nekotekina d209cc5671 Fix 2015-03-13 18:36:03 +03:00
Nekotekina 6c36013e2a sys_fs_open rewritten 2015-03-13 18:06:27 +03:00
Nekotekina 583b6d92ec sys_fs syscalls detached from cellFs 2015-03-12 22:02:02 +03:00
Nekotekina 267de68441 Memory cleanup, page flags implemented
RSXCMDMem, SPRXMem, MmaperMem removed
MainMem range fixed
2015-02-13 17:04:03 +03:00
Nekotekina 81340e9d5c scePerf stub, sceSysmodule, sema, ef 2015-01-27 03:19:51 +03:00
Nekotekina 36a134798b Small vm fix 2015-01-20 00:30:33 +03:00
Nekotekina bd71c1200e CB_FUNC/SC_FUNC fixed 2015-01-07 19:44:47 +03:00
Nekotekina 5f27e9b6e7 Compilation fix 2015-01-07 05:27:35 +03:00
Nekotekina 3f44e07b7c vm::stackvar (experimental)
Should be convenient for small allocations which would be done on stack
on real console
2015-01-07 05:14:00 +03:00
Nekotekina 597d07bf24 Small refactoring 2014-09-15 02:17:24 +04:00
Nekotekina 964c1bfd6c WriteString replaced
strcpy_trunc (defined in GNU.h) is better for fixed-length char arrays
2014-09-05 03:23:36 +04:00
Nekotekina 774b5be7d7 Patch from DH applied 2014-09-01 20:16:44 +04:00
Nekotekina 0b5ef1d8f9 mem64_t replaced
Added conversion from vm::var to vm::ptr of the same type.
2014-09-01 02:58:08 +04:00
Nekotekina 26e03fa794 Compilation fix 3 2014-08-31 03:38:55 +04:00
Nekotekina 140d40b5bc Compilation fix 2 2014-08-31 03:19:10 +04:00
Nekotekina ff3df64a26 Compilation fix 2014-08-31 03:06:43 +04:00
DHrpcs3 7411012db9 Fixed compilation errors
Implemented vm::ptr & vm::ref
2014-08-01 19:27:48 +03:00
DHrpcs3 cd33be1491 Implemented vm::var.
MemoryAllocator replaced with vm::var
2014-07-31 19:08:02 +03:00