qurious-pixel
2b7161208e
[CI] FreeBSD build ( #17293 )
...
Build FreeBSD on Github Actions
2025-06-12 09:33:40 +03:00
Megamouse
4704c03209
Fix some static analysis warnings, including c-style cast
2025-06-01 22:07:03 +02:00
kd-11
2d9a24d1d6
rsx/util/test: Cover edge cases in address_range test suite
2025-05-27 15:06:32 +03:00
kd-11
2ea7ff6b14
rsx/util: Split address_range into a sized address_range template
2025-05-27 15:06:32 +03:00
kd-11
4f7c82ba8a
utils: Rename address_range to address_range32 to allow implementation of address_range16 and address_range64
2025-05-27 15:06:32 +03:00
kd-11
79bcb7790c
rsx/util: Add unit tests for address ranges
2025-05-27 15:06:32 +03:00
Vestral
3cebfaa648
Atomic utils fixup after ASLR changes ( #17168 )
2025-05-05 21:48:07 +03:00
Megamouse
982dac9446
Remove unused fmt::match function
2025-05-01 00:56:37 +02:00
Megamouse
486e93f418
Fix fmt::replace_all with empty from and add unit tests
2025-05-01 00:56:37 +02:00
Megamouse
9897a80216
CMake: fix gcc build
2025-04-30 10:08:16 +02:00
Vestral
e066735fe9
Utils fixes for ASLR
2025-04-30 02:56:23 +02:00
Vestral
e2df71d87c
Enable ASLR
2025-04-30 02:56:23 +02:00
Megamouse
68e7f4e820
fmt: add some unit tests and fix fmt::trim
2025-04-30 00:07:24 +02:00
Megamouse
1960b5a605
hotfix: fix parentheses when saving some files
2025-04-23 16:27:17 +02:00
Megamouse
22c184bf75
cellMusic: improve logging
2025-04-23 08:14:59 +02:00
DH
cd840ef70a
LLVM JIT: do not produce broken binaries on crash
2025-03-30 08:18:09 +03:00
Megamouse
faef63e8a7
patches: fix c_utf8 validation
2025-03-24 21:44:23 +01:00
DH
d766baef12
fs::file: implement release_handle
...
cleanup
2025-03-10 21:09:27 +01:00
DH
95d0cb18e4
Coding style issues fixes
...
Thanks @Megamouse
2025-03-10 21:09:27 +01:00
DH
2ebf257f84
vm: removed c_page_size, it cannot be used by globals
2025-03-10 21:09:27 +01:00
DH
94f52d6dc0
android: jit: teach fallback_cpu_detection provide meaningful results for aarch64
2025-03-10 21:09:27 +01:00
DH
3080b55d02
cfg: remove string::get()
2025-03-10 21:09:27 +01:00
DH
f3d988d8ab
fs::file: add from_native_handle constructor
...
fs::get_*_dir tweaks for android
2025-03-10 21:09:27 +01:00
DH
798c194025
android stuff
2025-03-10 21:09:27 +01:00
Megamouse
6abb863a54
static analysis: std::move
2025-03-05 00:12:30 +01:00
Megamouse
a8fc3f5f74
static analysis: more const
2025-03-05 00:12:30 +01:00
Elad
783079266e
Emulator: Implement config CLI args, add barrier for host CLI args
2025-03-03 06:54:00 +02:00
oltolm
29ad4ecc78
concepts: fix review notes
2025-02-26 11:04:02 +02:00
oltolm
ebde5310b9
use concepts instead of std::enable_if
2025-02-26 11:04:02 +02:00
Megamouse
709e3d2822
Move sys_time fmt to date_time.cpp
2025-02-25 19:45:43 +01:00
Megamouse
d33d3a9f57
Move cheat_type fmt to cheat_info.cpp
2025-02-25 19:45:43 +01:00
RipleyTom
cd87a64621
Headers cleanup
2025-02-11 20:38:35 +01:00
Megamouse
3187dc816e
Fix some warnings
2025-02-02 17:06:39 +01:00
Megamouse
67703b49d8
Update LLVM to 18.1.8
2025-01-25 18:15:13 +01:00
Elad
9677a3a9ea
Fix Emulator::IsPaused() to allow measurements during module compilation
...
Also fix a potential deadlock in access violation handler for non-cpu_thread
2025-01-25 12:47:44 +02:00
Elad
4c0832e6e6
PPU LLVM: Reduce size of JIT-transition treampolines to 16
2025-01-25 12:47:44 +02:00
Elad
6fc643f483
JITASM.cpp: add assert for code building
2025-01-25 12:47:44 +02:00
Elad
3f4210437d
JIT.h: Add option for lowered function size
2025-01-25 12:47:44 +02:00
Elad
67f2356ef7
JIT.h: Use kOptimizeForSize
2025-01-25 12:47:44 +02:00
Elad
81d0dd686b
LLVM: Add explicit resource-freeing at emulation stop
2025-01-25 12:47:44 +02:00
Elad
9d5b75bb7a
LLVM: Slice PPU executable memory
2025-01-25 12:47:44 +02:00
Elad
7b8fee7cdb
Thread.cpp: Report VM addresses on VM segfault
2025-01-25 12:47:44 +02:00
Elad
64c53fcc61
LLVM: Install error reporting handler
2025-01-25 12:47:44 +02:00
Megamouse
a7edfa221e
windows: move logs to log dir
2025-01-16 21:33:33 +01:00
Megamouse
451e953d26
windows: move config.yml and games.yml to /config/
2025-01-16 21:33:33 +01:00
Megamouse
1966171838
Use string_view in rXml
2025-01-14 21:35:57 +01:00
Elad
c6f3737c2a
PPU LLVM: Fixup patches enlisting in analyzer
2025-01-07 20:42:45 +02:00
Elad
0b784ff2c1
PPU LLVM: Function table dependent resolver hashing
2025-01-07 15:43:41 +02:00
Megamouse
99f1f4c22a
cheats: add float32 gui support
2025-01-06 10:48:00 +01:00
Elad
6165c2d8b3
Thread.h: Fix a bug by adding thread_state::destroying_context
2025-01-05 10:01:35 +02:00
Elad
0cc655074d
serialzation.hpp: Fix add_padding
2024-12-27 22:08:28 +02:00
Elad
98a0c76a08
StrFmt.cpp: Make function printing shorter
2024-12-24 21:31:57 +02:00
Elad
6a4b9430c0
Thread.h: Add a few noexcept
2024-12-24 21:31:57 +02:00
Elad
3bf735161f
sys_config: Move cleanup to IDM abort
2024-12-24 21:31:57 +02:00
Elad
575a245f8d
IDM: Implement lock-free smart pointers ( #16403 )
...
Replaces `std::shared_pointer` with `stx::atomic_ptr` and `stx::shared_ptr`.
Notes to programmers:
* This pr kills the use of `dynamic_cast`, `std::dynamic_pointer_cast` and `std::weak_ptr` on IDM objects, possible replacement is to save the object ID on the base object, then use idm::check/get_unlocked to the destination type via the saved ID which may be null. Null pointer check is how you can tell type mismatch (as dynamic cast) or object destruction (as weak_ptr locking).
* Double-inheritance on IDM objects should be used with care, `stx::shared_ptr` does not support constant-evaluated pointer offsetting to parent/child type.
* `idm::check/get_unlocked` can now be used anywhere.
Misc fixes:
* Fixes some segfaults with RPCN with interaction with IDM.
* Fix deadlocks in access violation handler due locking recursion.
* Fixes race condition in process exit-spawn on memory containers read.
* Fix bug that theoretically can prevent RPCS3 from booting - fix `id_manager::typeinfo` comparison to compare members instead of `memcmp` which can fail spuriously on padding bytes.
* Ensure all IDM inherited types of base, either has `id_base` or `id_type` defined locally, this allows to make getters such as `idm::get_unlocked<lv2_socket, lv2_socket_raw>()` which were broken before. (requires save-states invalidation)
* Removes broken operator[] overload of `stx::shared_ptr` and `stx::single_ptr` for non-array types.
2024-12-22 20:59:48 +02:00
Elad
926de68a79
Debugger: Dump related thread information on crash
2024-11-28 13:32:52 +02:00
Elad
2b9f076024
fs: Minor fix of fs::dir::open
...
Did not close previous handle on fs::dir::open like on fs::file
2024-11-28 05:47:40 +02:00
Elad
378a69ea85
Qt: Deprecate processEvents() part 2
2024-11-27 16:00:40 +02:00
Elad
cc86e01df9
lockless.h: Fox
2024-11-18 18:45:34 +02:00
Elad
1dfee5fbfa
lockless.h: Fixup addressing
2024-11-18 18:45:34 +02:00
Elad
21f65f087d
lockless.h: Fixup lf_array assert
2024-11-18 18:45:34 +02:00
Megamouse
29901d65ed
More constexpr
2024-11-16 15:10:20 +01:00
Megamouse
0bb83ed5e9
Fix warning
2024-11-16 15:10:20 +01:00
Elad
68d74bc28a
Progress Dialog: Fix recursion and concurrency use of text updates
2024-11-16 12:22:23 +02:00
Elad
1475625705
Implement lf_array::for_each
2024-11-16 12:22:23 +02:00
Elad
935e83a490
Utilities\lockless.h: Flatten recusrion in lf_array
...
Add assert for sane index access.
2024-11-16 12:22:23 +02:00
Megamouse
070add461f
overlays: get localized values in home menu settings
2024-11-15 09:48:12 +01:00
oltolm
2b0f786b2d
Fix std::basic_string warnings ( #16261 )
2024-11-11 21:54:44 +02:00
Megamouse
2262ac1684
Qt: Replace QMap with std::map
...
This should reduce the amount of string conversions during list refreshes
2024-11-06 09:34:32 +01:00
Elad
b053b1e200
Another attempt to fix fs::pending_file for hardlinks
2024-11-02 21:43:35 +02:00
Elad
d3c0ec5651
Print last system error on fs::error::unknown
2024-11-02 21:43:35 +02:00
Elad
4206b022b6
Win32/File.cpp: Use ReplaceFile for hardlink overwrite
2024-11-01 07:37:57 +02:00
elad335
8b8396b945
Filesystem/Win32: Recreate hardlinks on fs::pending_file
2024-10-29 19:26:33 +02:00
RipleyTom
36da83592a
Improve AMD cpu detection
2024-10-07 05:36:19 +02:00
kd-11
82f97d33d1
aarch64: Correctly implement the null function trap
2024-09-25 15:48:36 +03:00
kd-11
31ce32709e
build: Disble fixed base for windows-on-arm
2024-09-08 17:41:29 +03:00
kd-11
4f27af9949
Fix compilation warning
2024-09-08 17:41:29 +03:00
kd-11
7e3b8b5cdb
c++-ify empty return
2024-09-04 07:49:49 +03:00
kd-11
a60eab6e36
aarch64: Fix compilation for windows-on-arm
2024-09-04 07:49:49 +03:00
kd-11
c80342e8d4
aarch64: Support calloc patch blocks
2024-08-31 13:55:58 +03:00
kd-11
4d193ecb6a
Block parallel JIT allocation on macos
2024-08-29 13:08:23 +03:00
kd-11
ce9024efc5
Fix overlapping addresses returned by mmap
2024-08-29 13:08:23 +03:00
kd-11
23788b04c6
Restore comment
2024-08-29 13:08:23 +03:00
kd-11
c0e577c4dc
Allow overcommit on macos
2024-08-29 13:08:23 +03:00
kd-11
56d35bf409
Fix crash in JIT when compiling LLVM blocks
2024-08-25 22:04:45 +03:00
kd-11
4f97ea8da7
macos - Fix crash when running native arm64 LLVM
2024-08-25 22:04:45 +03:00
kd-11
470f8674df
aarch64 - Support for apple exceptions
2024-08-24 14:13:14 +03:00
kd-11
4bb79b6c31
Rework aarch64 signal handling
2024-08-21 16:16:28 +03:00
kd-11
3ea24183b9
Improve "write" instruction detection.
2024-08-20 05:18:53 +03:00
kd-11
c2f5de1c55
Fix compiler warnings about unused args for aarch64
2024-08-20 05:18:53 +03:00
Elad Ashkenazi
1bd4565186
Implement thread_ctrl::wait_until()
2024-08-17 06:38:49 +03:00
Megamouse
456ff10f02
Qt/patches: don't allow duplicate app versions
2024-08-15 09:35:58 +02:00
Megamouse
8371c445ce
Qt/patches: check if app version is 5 characters long and like 01.00
2024-08-15 09:35:58 +02:00
Megamouse
93424d1adc
Qt/patches: check if serial is 9 characters long and alphanumeric
2024-08-15 09:35:58 +02:00
Megamouse
d05d803f5e
patches: use more std::move
2024-08-15 09:35:58 +02:00
Megamouse
76c0df849a
patches: improve error logging: add file paths to all errors
2024-08-14 20:21:55 +02:00
Megamouse
4051988403
Qt/patches: improve value validation
2024-08-14 20:21:55 +02:00
Darkhost1999
3970b7b754
Class "llvm:StringRef" has no member 'Startswith' ( #15898 )
2024-08-08 21:40:52 +02:00
kd-11
0be1c41e63
Improve AMD CPU detection
2024-08-03 21:35:10 +03:00
kd-11
c8e81a2dad
Return zen4 for zen5+ until LLVM upgrade
2024-08-03 21:35:10 +03:00