liamwhite
a28a0c47f8
Merge pull request #10990 from comex/ubsan
...
Fixes and workarounds to make UBSan happier on macOS
2023-07-26 10:33:28 -04:00
liamwhite
a9b733893c
Merge pull request #11142 from german77/avoid_crash
...
yuzu: Avoid reading broken games
2023-07-26 10:33:14 -04:00
Morph
1c91875e6b
Merge pull request #11157 from lat9nq/nasm
...
cmake: Download nasm from our external repo
2023-07-25 13:35:02 -04:00
lat9nq
909d84e4b4
cmake: Download nasm from our external repo
...
This package download has intermittent failures due to host Internet
issues (presumably), so download it ourselves from our own hosting.
2023-07-25 15:47:44 -04:00
liamwhite
904e8975ea
Merge pull request #11095 from liamwhite/memory2
...
memory: cleanup
2023-07-24 13:47:11 -04:00
liamwhite
297e870ec7
Merge pull request #11135 from liamwhite/getaddrinfo
...
core: implement GetGaiStringErrorRequest, IContextRegistrar
2023-07-24 13:47:02 -04:00
liamwhite
48571783b5
Merge pull request #11136 from liamwhite/sp3shader
...
ssa_rewrite_pass: use proper maps
2023-07-24 13:46:53 -04:00
german77
352baa02da
yuzu: Avoid reading broken games
2023-07-24 08:59:14 -06:00
Liam
b13ddf2a73
ssa_rewrite_pass: use proper maps
2023-07-23 11:38:01 -04:00
Liam
caf76a5603
core: implement GetGaiStringErrorRequest, IContextRegistrar
2023-07-22 23:29:45 -04:00
Liam
46234254b1
core: reduce TOCTTOU memory access
2023-07-22 11:19:29 -04:00
Liam
7073afff3b
memory: minimize dependency on process
2023-07-22 11:19:29 -04:00
liamwhite
a1008f1be7
Merge pull request #11042 from lat9nq/wayland-appimage
...
ci/linux: Target deploy script from appimage path
2023-07-22 11:17:48 -04:00
liamwhite
de2fb523e3
Merge pull request #11094 from liamwhite/get
...
kernel: misc cleanup of page table accessors
2023-07-22 11:17:36 -04:00
liamwhite
ddb55725a1
Merge pull request #11098 from GPUCode/texel-buffers
...
buffer_cache: Increase number of texture buffers
2023-07-22 11:17:27 -04:00
bunnei
62b18a45db
Merge pull request #11113 from liamwhite/nsd1
...
nsd: add GetApplicationServerEnvironmentType
2023-07-21 21:24:36 -07:00
bunnei
c7ebd075ea
Merge pull request #11129 from liamwhite/dynamic_cast
...
general: remove uses of dynamic_cast
2023-07-21 21:22:51 -07:00
Liam
545880f71b
core: remove remaining uses of dynamic_cast
2023-07-21 19:37:29 -04:00
Liam
f07dd39222
general: reduce use of dynamic_cast
2023-07-21 19:22:14 -04:00
liamwhite
09bfde9775
Merge pull request #11123 from Morph1984/remove-mem-hungry-opts
...
ci: Remove GA, Gr optimizations from MSVC
2023-07-21 15:06:07 -04:00
liamwhite
c52c03b718
Merge pull request #11069 from lat9nq/mingw-no-tzdb
...
common: Use arithmetic instead of string ops to get time zone
2023-07-21 15:05:59 -04:00
liamwhite
1b36e48f14
Merge pull request #11096 from german77/amiibooo
...
service: nfc: Update Implementation to match with latest RE
2023-07-21 09:21:48 -04:00
Morph
32e7c33a5c
ci: Remove GA, Gr optimizations from MSVC
...
Internal testing has shown these result in higher committed memory usage in some systems.
Also Ob2 is already implied by O2, so that can be removed as well.
2023-07-21 01:30:43 -04:00
liamwhite
871be3a4d2
Merge pull request #11116 from lat9nq/clang-shadowing
...
general: Silence -Wshadow{,-uncaptured-local} warnings
2023-07-19 17:14:55 -04:00
liamwhite
075740115b
Merge pull request #11114 from Kelebek1/warnings
...
Mark SetIdleTimeDetectionExtension logging as debug
2023-07-19 17:14:45 -04:00
lat9nq
cc6431d884
demangle: Update to llvm/llvm-project@ecbc812e0c
2023-07-18 22:39:26 -04:00
lat9nq
60b1445993
CMake: Require LLVM 17 or later
...
API changes necessitate an update here.
2023-07-18 22:39:13 -04:00
lat9nq
aa21a2ea3c
vk_buffer_cache: Format
2023-07-18 19:56:20 -04:00
lat9nq
30e4e8c2f4
general: Silence -Wshadow{,-uncaptured-local} warnings
...
These occur in the latest commits in LLVM Clang.
2023-07-18 19:31:35 -04:00
Kelebek1
df8097de60
Debug SetIdleTimeDetectionExtension
2023-07-18 10:16:14 +01:00
Morph
d703c0a10c
Merge pull request #11109 from Morph1984/net
...
network: Fix compilation with ENABLE_WEB_SERVICE=OFF
2023-07-17 23:57:39 -04:00
Liam
0cd5b83aa3
nsd: add GetApplicationServerEnvironmentType
2023-07-17 21:34:23 -04:00
Morph
0263d2fb05
ssl: Link with crypt32 for secure channel backend
2023-07-17 15:46:24 -04:00
Morph
e5e843b73f
ssl: Reorder inclusions
2023-07-17 15:46:24 -04:00
Morph
74d0865478
network: Forward declarations
2023-07-17 15:36:03 -04:00
Narr the Reg
2aab79426a
service: nfc: Update Implementation to match with latest RE
2023-07-17 11:24:23 -06:00
liamwhite
f2b6eed2ca
Merge pull request #10934 from abouvier/cmake-vma
...
cmake: allow using system VMA library
2023-07-17 10:42:41 -04:00
liamwhite
e03e85ae31
Merge pull request #11102 from v1993/your-mom-is-encrypted
...
android: fix links to re-dumping guides
2023-07-17 10:42:31 -04:00
liamwhite
b05ad55c4c
Merge pull request #10912 from comex/ssl
...
Implement SSL service
2023-07-16 16:56:47 -04:00
Valeri Ochinski
cd7fc3a3fe
android: fix links to re-dumping guides
2023-07-16 20:22:27 +03:00
GPUCode
7e9f75453f
buffer_cache: Increase number of texture buffers
2023-07-15 23:09:58 +03:00
comex
85d77f636c
Fixes and workarounds to make UBSan happier on macOS
...
There are still some other issues not addressed here, but it's a start.
Workarounds for false-positive reports:
- `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`,
because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp )
of how big it thinks objects can be, specifically when dealing with
offset-to-top values used with multiple inheritance. Hopefully this
doesn't have a performance impact.
- `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks
is UB even though it at least arguably isn't. See the link in the
comment for more information.
Fixes for correct reports:
- `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to
avoid UB from pointer overflow (when pointer arithmetic wraps around
the address space).
- `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`;
avoid calling methods on it in this case. (The existing code returns
a garbage reference to a field, which is then passed into
`LoadWatchpointArray`, and apparently it's never used, so it's
harmless in practice but still triggers UBSan.)
- `KAutoObject::Close`: This function calls `this->Destroy()`, which
overwrites the beginning of the object with junk (specifically a free
list pointer). Then it calls `this->UnregisterWithKernel()`. UBSan
complains about a type mismatch because the vtable has been
overwritten, and I believe this is indeed UB. `UnregisterWithKernel`
also loads `m_kernel` from the 'freed' object, which seems to be
technically safe (the overwriting doesn't extend as far as that
field), but seems dubious. Switch to a `static` method and load
`m_kernel` in advance.
2023-07-15 12:00:28 -07:00
Liam
b47ce23b31
kernel: reduce page table region checking
2023-07-14 22:33:10 -04:00
Liam
6b6f0b21b9
k_process: PageTable -> GetPageTable
2023-07-14 21:43:15 -04:00
Tobias
16590ff2d0
file_sys/content_archive: Detect compressed NCAs ( #11047 )
2023-07-12 23:17:18 +02:00
lat9nq
25b800e26c
time_zone: Clean up includes
2023-07-12 03:03:03 -04:00
lat9nq
0331d580e2
time_zone: Swap subtraction order
2023-07-12 03:02:45 -04:00
lat9nq
9fde7a84ea
time_zone: Account for leap years
...
Protects against invalid hour offsets during transitions to years
following leap years.
2023-07-12 02:34:02 -04:00
Alexandre Bouvier
dad3ef76a2
cmake: allow using system VMA library
2023-07-12 04:51:45 +02:00
bunnei
9a9da4301b
Merge pull request #10985 from liamwhite/handle-translate
...
k_server_session: translate special header for non-HLE requests
2023-07-11 16:49:24 -07:00