Triang3l
10819a4174
[Drone] Update Android targets
2022-07-04 23:53:55 +03:00
Triang3l
40aa73f7d7
[Linux] Swap read/write in x64 page fault handler + exception code cleanup
2022-07-04 23:51:26 +03:00
Triang3l
a9cbd9cc5f
[Linux] Update RIP after handling an exception
2022-07-04 23:24:26 +03:00
uytvbn
54aac81268
[Linux] Implement exception handler
2022-07-04 23:04:27 +03:00
Triang3l
35d4ea59c6
[Base] Remove exception_handler_linux.cc
2022-07-04 23:02:11 +03:00
Triang3l
feaad639fb
[Vulkan] Destroy all RTs before VulkanRenderTargetCache is destroyed
2022-07-04 11:27:51 +03:00
Gliniak
6e753c6399
Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
2022-07-04 08:11:04 +02:00
Triang3l
2621dabf0f
[Vulkan] Native 24-bit unorm depth where available
2022-07-03 21:21:17 +03:00
Triang3l
83e9984539
[Vulkan] Remove required feature checks
...
Fallbacks for those will be added more or less soon, the stable version won't hard-require anything beyond 1.0 and the portability subset
2022-07-03 20:54:34 +03:00
Triang3l
bbae909fd7
[GPU] Reasons to keep non-Vulkan backends [ci skip]
2022-07-03 20:39:44 +03:00
Triang3l
ed61e15fc3
[App] Make D3D12 the default GPU backend on Windows again
2022-07-03 19:49:11 +03:00
Triang3l
ee84f4e267
[Vulkan] Update title bar warning
2022-07-03 19:45:48 +03:00
Triang3l
f7ef051025
[Vulkan] Disable validation by default
2022-07-03 19:42:22 +03:00
Triang3l
001f64852c
[Vulkan] VMA for textures
2022-07-03 19:40:48 +03:00
Gliniak
a8df744ea6
Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
2022-07-03 13:07:15 +02:00
Triang3l
636585e0aa
[Vulkan] Trace viewer
2022-07-01 19:53:41 +03:00
Triang3l
ad1ef84145
Merge branch 'master' into vulkan
2022-07-01 19:53:08 +03:00
Triang3l
e37e3ef382
[GPU] Display swap output in the trace viewer
...
Resolve output is unreliable because resolving may be done to a subregion of a texture and even to 3D textures, and to any color format
2022-07-01 19:50:19 +03:00
Triang3l
c8a4a9504f
[Vulkan] Remove an unneeded scale from RefreshGuestOutput aspect ratio
2022-07-01 12:52:12 +03:00
Triang3l
d174762a40
Merge branch 'master' into vulkan
2022-07-01 12:51:34 +03:00
Triang3l
28670d8ec2
[UI] Presenter: Rename display size to aspect ratio
2022-07-01 12:50:45 +03:00
Triang3l
f8b351138e
[Vulkan] Alpha test
2022-06-30 22:20:51 +03:00
Triang3l
6772c88141
Merge branch 'master' into vulkan
2022-06-30 22:15:29 +03:00
Triang3l
7e691d5ef1
[DXBC] Handle NaN in not equal alpha test as passed
2022-06-30 22:15:01 +03:00
Triang3l
c0c3666e12
[Vulkan] Align texture extents in loading to vector size accessed by the shader
...
Fixes loading of the 1x1 linear 8_8_8_8 texture containing just a single #FFFFFFFF texel in 4D5307E6, which is used for screen fade and the lobby map loading bar background
2022-06-29 23:41:32 +03:00
Triang3l
9392fff369
Merge branch 'master' into vulkan
2022-06-29 23:39:54 +03:00
Triang3l
a11b070fee
[GPU] Align texture extents in loading to host buffer texel size accessed by the shader
2022-06-29 23:38:06 +03:00
Triang3l
7c2df55209
[Vulkan] Cache clear: shared memory, scratch buffer
2022-06-29 13:24:45 +03:00
Triang3l
d5815d9e6a
[Vulkan] Float24 depth range remapping fixes
2022-06-29 13:14:00 +03:00
Gliniak
efe3cd96d6
Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
2022-06-29 09:21:09 +02:00
Triang3l
05ef7a273a
[Vulkan] Samplers (only 1.0 core features for now)
2022-06-28 22:42:18 +03:00
Triang3l
5d9061cf99
Merge branch 'master' into vulkan
2022-06-28 22:05:45 +03:00
Triang3l
243683d2e9
[GPU] Cleanup Texture::MarkAsUsed conditionals
2022-06-28 22:04:26 +03:00
Triang3l
382710bab7
[GPU] Normalize sampler clamp modes
2022-06-28 21:58:58 +03:00
Triang3l
cedc94679b
[GPU] Don't drop the rest of the command list if IssueDraw fails
2022-06-28 21:40:06 +03:00
Radosław Gliński
18e2103fee
Merge pull request #48 from chrisps/canary_experimental
...
Added optimizations for combining conditions together when their resu…
2022-06-28 08:42:04 +02:00
chss95cs@gmail.com
3c06921cd4
Added optimizations for combining conditions together when their results are OR'ed
...
Added recognition of impossible comparisons via NZM and optimize them away
Recognize (x + -y) and transform to (x - y) for constants
Recognize (~x ) + 1 and transform to -x
Check and transform comparisons if theyre semantically equal to others
Detect comparisons of single-bit values with their only possible non-zero value and transform to true/false tests
Transform ==0 to IS_FALSE, !=0 to IS_TRUE
Truncate to int8 if operand for IS_TRUE/IS_FALSE has a nzm of 1
Reduced code generated for SubDidCarry slightly
Add special case for InstrEmit_srawix if mask == 1
Cut down the code generated for trap instructions, instead of naive or'ing or compare results do a switch and select the best condition
Rerun simplification pass until no changes, as some optimizations will enable others to be done
Enable rel32 call optimization by default
2022-06-26 12:49:04 -07:00
Gliniak
e6898fda66
Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
2022-06-26 20:11:33 +02:00
Radosław Gliński
f8f6a20569
Merge pull request #47 from chrisps/canary_experimental
...
drastically reduce size of final generated code for rlwinm by adding …
2022-06-26 19:52:17 +02:00
chrisps
08232de8cc
patch a mistake in NZM calculation for OPCODE_NOT
2022-06-26 09:30:56 -07:00
Triang3l
9672230d9f
Merge branch 'master' into vulkan
2022-06-26 18:59:49 +03:00
Triang3l
ec008463b6
[GPU] CrYCb/YCrCb border colors
2022-06-26 18:56:50 +03:00
Triang3l
2606fa5709
[GPU] Apply BaseMap MipFilter via samplers as it may be overridden
...
Make it have no effect on the texture resource as a resource may be used with samplers with different overrides. Also make sure magnification vs. minification is not undefined with it on Direct3D 12.
2022-06-26 18:41:38 +03:00
Triang3l
e191430091
Merge branch 'master' into vulkan
2022-06-26 16:58:27 +03:00
Triang3l
086a070fa9
[GPU] Explicitly cast bit field values in std::min/max
...
According to the integral promotion rules https://eel.is/c++draft/conv.prom#5.sentence-1 bit fields can be promoted to `int` if it's wide enough to store their value, and then otherwise, to `unsigned int`. Hopefully fixes Clang building (the `width_div_8` case).
2022-06-26 16:54:11 +03:00
Triang3l
e0b890fe5c
[DXBC] Remove alphatest/A2C with [earlydepthstencil]
2022-06-26 15:31:08 +03:00
Triang3l
6688b13773
[Vulkan] PsParamGen
2022-06-26 15:01:27 +03:00
Triang3l
a99a1be880
Merge branch 'master' into vulkan
2022-06-26 15:00:21 +03:00
Triang3l
b787f2dec1
[GPU] GPR count limit is 128, not 64
2022-06-26 14:45:49 +03:00
Triang3l
a5c8df7a37
[Vulkan] Remove UB-based independent blend logic
...
On Vulkan, unlike Direct3D, not writing to a color target in the fragment shader produces an undefined result.
2022-06-25 20:57:44 +03:00