kd-11
ca472b6750
Silence log spam about copy ellision
2023-06-27 16:41:30 +03:00
kd-11
2df7e46cb1
rsx: Import robin-hood unordered map which is much faster than std
2023-06-10 01:36:10 +03:00
kd-11
bbbc5f6e6c
rsx: Write a warning to the log if we decide to collapse surfaces to reduce VRAM usage.
2023-06-01 19:25:50 +03:00
kd-11
12f213ffad
rsx: Trim the number of in-flight invalidated resources (temp cache)
...
- This drastically improves memory allocation behavior.
Holding too many invalidated resources can lead to a cascading overallocation error as old resources hold refs to even older resources and nothing gets deleted.
2023-06-01 19:25:50 +03:00
kd-11
c99ef4b09f
vk: Refactor descriptor handling
2023-05-30 16:50:08 +03:00
kd-11
7e131f8fb6
rsx/util: Add some c++ guards around simple_array class
2023-05-30 16:50:08 +03:00
kd-11
793a21a825
rsx: Fix build after variable rename
2023-05-18 18:10:46 +03:00
kd-11
edb2b60f2f
rsx: Perform region clipping in a normalized coordinate space
...
- Depending on what the caller wants to do, the scaling will be different for src vs dst calculations.
We cannot reliably handle this in the callee
2023-05-18 18:10:46 +03:00
kd-11
b00b8ae71b
rsx: Allow swizzle flag to propagate as an override to surface properties
2023-05-03 01:26:14 +03:00
kd-11
45f416c4f1
rsx: Apply swizzle flag on data source as well
...
- The fact that the attribute is tacked on to the dest is a semantic error.
It's the context that is swz\ln, not the source or dest. They both are one or the other.
2023-05-03 01:26:14 +03:00
kd-11
c58149f5b6
vk: Propagate swizzle flag in hw blit engine
2023-05-03 01:26:14 +03:00
Megamouse
6555de6ef5
fix warnings
2023-04-21 16:41:06 +02:00
Ivan Chikish
1f19804cab
BufferUtils: fix SSE2 path for byteswaps
2023-04-18 16:46:18 +03:00
kd-11
a3ededdcf1
rsx: Implement deferred buffer allocations for GPU write
2023-03-02 12:48:58 +03:00
kd-11
0bb8127372
rsx: Use emplace when constructing in-place.
...
- Unexpectedly high gains for msvc builds. GCC doesn't care, clang shits itself.
2023-03-01 01:10:06 +03:00
kd-11
6adcabda29
rsx: Fix graphics state foot-gun
2023-01-26 11:42:39 +03:00
kd-11
29c1b20b41
Fix compilation
2023-01-11 16:48:53 +03:00
kd-11
439bdde849
rsx: Fix printing of expected values
2023-01-11 16:48:53 +03:00
kd-11
a272f3e3b9
rsx: Improve performance by using an integral type to indicate error
2023-01-11 16:48:53 +03:00
kd-11
eae1ac6558
refactor: Fix build
2023-01-11 16:48:53 +03:00
kd-11
0b019401bd
Refactor gcm enums
2023-01-11 16:48:53 +03:00
kd-11
04fb86556a
rsx: Fix surface metadata life-cycle
...
- Beware of clone operations. Blindly inheriting the parent's metadata is wrong.
- It is possible, especially when reusing a pre-existing slice, that the parent and child info has diverged
2022-12-17 20:16:58 +03:00
kd-11
90cf47cdce
rsx: Handle some corner cases in surface locking
2022-12-17 20:16:58 +03:00
kd-11
66dc1cc15d
rsx: Conditionally skip flush if no new data was introduced
2022-12-17 20:16:58 +03:00
kd-11
a05e3f02b8
rsx: Avoid expensive protection scan by sharing some data between surface and texture cache
2022-12-17 20:16:58 +03:00
kd-11
a0ef1a672c
rsx: Implement interpolation using barycentrics
2022-12-11 15:21:58 +03:00
Nekotekina
7c15001042
Implement read_from_ptr<>() util
...
Doing std::bit_cast on a "span".
Should be usable in constexpr.
2022-11-26 09:30:11 +03:00
Nekotekina
ae809ad320
Unexpected bugfixes
...
Mostly unaligned memory access.
Also includes workarounds for ubsan execution.
2022-10-31 14:20:02 +03:00
kd-11
73784b9e12
Fix GCC build
2022-10-03 12:57:16 +03:00
kd-11
533f960854
rsx: Handle some more corner cases
2022-10-03 12:57:16 +03:00
kd-11
765208a181
rsx: Avoid clobbering CELL memory when splitting fbos
2022-10-03 12:57:16 +03:00
kd-11
4417701ea7
rsx: Track orphaned surfaces' parent addresses
2022-10-03 12:57:16 +03:00
kd-11
f66eaf8f44
rsx: Add some handy util functions to simple_array
2022-10-03 12:57:16 +03:00
kd-11
5281a85b67
rsx: Fix compiler warnings
2022-09-28 12:55:31 +03:00
Nekotekina
6ff6a4989a
Implement at32() util
...
Works like .at() but uses source location for "exception".
2022-09-26 18:04:15 +03:00
kd-11
dd8a337b14
rsx: Fix some more warnings
2022-09-22 23:46:48 +03:00
kd-11
61666bae69
rsx: Fix hardware deswizzle not getting used when hardware deswizzle flag is not set
2022-09-22 23:46:48 +03:00
Nekotekina
c4db65cc08
Fix one more warning
2022-09-18 18:35:17 +03:00
Nekotekina
b49a1f27eb
Warning fixes
2022-09-17 16:35:02 +03:00
Nekotekina
5985f0eefa
BufferUtils: cleanup regarding ARM64
2022-09-07 17:59:07 +03:00
Nekotekina
82258915da
BufferUtils: rewrite remaining intrinsic code with simd_builder
2022-09-07 17:59:07 +03:00
Nekotekina
11a1f090d3
BufferUtils: simd_builder refactoring
...
Some simplifications implemented.
2022-09-07 17:59:07 +03:00
Elad Ashkenazi
290226539f
Fix ARM build ( #12606 )
2022-09-04 21:11:04 +03:00
Nekotekina
58e3232710
BufferUtils: Fix regression in upload_untouched
2022-09-01 17:39:04 +03:00
Nekotekina
e28707055b
Implement simd_builder for x86
...
ASMJIT-based tool for building vectorized loops (such as ones in BufferUtils.cpp)
2022-08-28 18:38:52 +03:00
kd-11
1fc0191311
Fix build
2022-08-23 23:49:46 +03:00
kd-11
1f9e04f72d
rsx/vk: Implement flushing surface cache blocks to linear mem
2022-08-23 23:49:46 +03:00
kd-11
bca833dad7
Fix surface reuse
2022-08-20 01:23:15 +03:00
kd-11
2e504b2dac
rsx: Silence some warnings
2022-08-19 14:29:20 +03:00
kd-11
bacf518189
rsx: Fix 2D intersection tests
2022-08-14 23:53:50 +03:00