ameerj
|
9ccbd74991
|
glsl: Fix ATOM and implement ATOMS
|
2021-07-22 21:51:37 -04:00 |
|
ameerj
|
68ef3803bf
|
glsl: Use gl_SubGroupInvocationARB
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
e35ffbbeb0
|
glsl: Implement VOTE for subgroup size potentially larger
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
770b754afd
|
glsl: Implement VOTE
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
181a4ffdc4
|
glsl: Implement ST{LS}
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
57d354b02c
|
glsl: Implement more instructions used by SMO
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
7df0815117
|
glsl: Implement more instructions used by SMO
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
80eec85867
|
glsl: Fix GetAttribute return values
fixes font rendering issues as these were used to index into the ssbos
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
1542f31e79
|
glsl: minor cleanup
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
005eecffcd
|
glsl: Fix and implement rest of cbuf access
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
3047eb6688
|
glsl: Implement TXQ and other misc changes
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
5fd92780b2
|
glsl: TLD4 implementation
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
697eacd095
|
glsl: Implement TLD instruction
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
e4ba755705
|
glsl: Implement TEXS
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
59a692e9ed
|
glsl: Cleanup texture functions
|
2021-07-22 21:51:36 -04:00 |
|
lat9nq
|
c9a25855bc
|
shader_recompiler: GCC fixes
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
7619b7d427
|
glsl: Implement TEX depth functions
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
55e0211a5e
|
glsl: Implement TEX ImageSample functions
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
b98de76ea8
|
glsl: Rework Shuffle emit instructions to align with SPIR-V
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
8ba814efb2
|
glsl: Better Storage access and wip warps
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
86d4a05cec
|
glsl: Fix integer conversions, implement clamp CC
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
21797efa54
|
glsl: Implement IADD CC
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
453cd25da5
|
glsl: SSBO access fixes and wip SampleExplicitLod implementation.
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
f6bbc76336
|
glsl: WIP var forward declaration
to fix Loop control flow.
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
2a71333716
|
glsl: Fix bindings, add some CC ops
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
6674637853
|
glsl: remove unused headers
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
a752ec88d0
|
glsl: Implement derivatives and YDirection
plus some other misc additions/changed
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
ed14d31f66
|
glsl: Fix non-immediate buffer access
and many other misc implementations
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
d171083d53
|
glsl: textures wip
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
3d086e6130
|
glsl: Implement some attribute getters and setters
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
5399906c26
|
glsl: Track S32 atomics
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
b95716e543
|
glsl: Update phi node management
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
67f881e714
|
glsl: Fix floating point compare ops
Logic for ordered/unordered ops was wrong.
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
bd24fa9713
|
glsl: Query GL Device for FP16 extension support
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
3482df1176
|
glsl: Simply FP storage atomics
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
9cc1b8a873
|
glsl: F16x2 storage atomics
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
11ba190462
|
glsl: Revert ssbo aliasing. Storage Atomics impl
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
e99d01ff53
|
glsl: implement phi nodes
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
3d9ecbe998
|
glsl: Wip storage atomic ops
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
df793fc049
|
glsl: Implement FCMP
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
cdde730219
|
glsl: Add a more robust fp formatter
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
ac7b0ebcb7
|
glsl: More FP fixes
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
3064bde415
|
glsl: FP function fixes
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
65c6f73e43
|
glsl: More FP instructions/fixes
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
5e9095ef22
|
glsl: Add many FP32/64 instructions
|
2021-07-22 21:51:36 -04:00 |
|
ReinUsesLisp
|
53667ddd4e
|
glsl: Fixup build issues
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
ef7bd53f18
|
glsl: Implement more Integer ops
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
266a3d60e3
|
glsl: Implement BF*
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
0f40b0e61c
|
glsl: Implement a few Integer instructions
|
2021-07-22 21:51:36 -04:00 |
|
ameerj
|
fb75d122a2
|
glsl: Use std::string_view for Emit function args.
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
115c162b9a
|
glsl: Pass IR::Inst& to Emit functions
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
78f5eb90d7
|
glsl: INeg and IAdd negate tests
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
e221baccdd
|
glsl: Reusable typed variables. IADD32
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
faf4cd72c5
|
glsl: Fix program linking and cbuf
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
64337f004d
|
glsl: Fix "reg" allocing
based on glasm with some tweaks
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
eaff1030de
|
glsl: Initial backend
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
3d822faea1
|
spirv: Reduce log severity of mismatching denorm rules
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
7ac55c2a75
|
shader: Fix loop safety to SSA pass
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
8fb2048934
|
vk_rasterizer: Exit render passes on fragment barriers
|
2021-07-22 21:51:35 -04:00 |
|
Rodrigo Locatti
|
dbf7cb9f90
|
vk_graphics_pipeline: Fix path with no VK_EXT_extended_dynamic_state
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
94e751f415
|
buffer_cache: Invalidate fast buffers on compute
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
61cd7dd301
|
shader: Add logging
|
2021-07-22 21:51:35 -04:00 |
|
lat9nq
|
373f75d944
|
shader: Add shader loop safety check settings
Also add a setting for enable Nsight Aftermath.
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
487057b8d2
|
shader: Comment why the array component is not read in TMML
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
ba3bdf1d41
|
vulkan_device: Enable VK_EXT_vertex_input_dynamic_state
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
41cca8b8ad
|
vk_pipeline_cache: Skip cached pipelines with different dynamic state
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
5445799260
|
main: Fix Open Transferable Shader Cache context item
Opens the new shader cache directory location for the specified title, if it exists.
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
3c125d4134
|
tmml: Remove index component from coords vec
The lod query functions exposed by the rendering API's do not make use of the texturearray layer indexing.
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
ea038d6653
|
vulkan: Add VK_EXT_vertex_input_dynamic_state support
Reduces the number of total pipelines generated on Vulkan.
Tested on Super Smash Bros. Ultimate.
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
cb78a1b494
|
shader: Reorder shader cache directories
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
3025b2f605
|
vk_rasterizer: Implement first index
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
d554778311
|
vulkan: Use VK_EXT_provoking_vertex when available
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
d52bacf6f0
|
spirv/convert: Catch more signed operations oversights
The sign bit on integers of size < 32 was not properly preserved in casts
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
8554a644df
|
spirv/convert: Catch more broken signed operations on Nvidia OpenGL
BitCast U32 to S32 before converting to float on drivers with broken
signed operations.
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
cd8427367e
|
gl_buffer_cache: Use unorm internal formats for snorm texture buffer views
Fixes black textures in UE4 games
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
5befc0bf87
|
shader_environment: Fix local memory size calculations
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
60a96c49e5
|
buffer_cache: Fix copy based uniform bindings tracking
|
2021-07-22 21:51:35 -04:00 |
|
ameerj
|
15bdd27cac
|
shader_environment: Add shader_local_memory_crs_size to local memory size
Fixes DOOM 2016 missing local memory
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
7eaa74ad23
|
gl_texture_cache: Create image storage views
Fixes SULD.D tests.
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
b1ed64ac18
|
gl_shader_util: Move shader utility code to a separate file
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
12fe7210d2
|
gl_shader_cache: Store workers in shader cache object
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
cffd4716c5
|
vk_pipeline_cache,shader_notify: Add shader notifications
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
48aad8dc05
|
vk_pipeline_cache: Add asynchronous shaders
|
2021-07-22 21:51:35 -04:00 |
|
ReinUsesLisp
|
2a0aeaa3d2
|
vk_rasterizer: Flush work on clear and dispatches
|
2021-07-22 21:51:34 -04:00 |
|
FernandoS27
|
c736b9ffab
|
DMA: Restrict optimised path for BlockToLinear further.
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
f45f7b5c2a
|
vk_swapchain: Handle outdated swapchains
Fixes pixelated presentation on Intel devices.
|
2021-07-22 21:51:34 -04:00 |
|
FernandoS27
|
562af30181
|
shader: Fix VertexA Shaders.
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
ec9a78885e
|
shader: Add 2D and 3D variants to SUATOM and SURED
Used by Claybook.
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
b02c78b276
|
vk_buffer_cache: Handle null texture buffers
Fixes a crash on Age of Calamity cutscenes.
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
8f099af6a8
|
nsight_aftermath_tracker: Fix SPIR-V module writes
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
8c954fcaee
|
vk_pipeline_cache: Set support_derivative_control to true
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
4f8b68fb04
|
shader: Avoid CPU side undefined behavior on I2F
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
79f2fe1a39
|
glasm: Use ARB_derivative_control conditionally
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
4a2361a1e2
|
buffer_cache: Reduce uniform buffer size from shader usage
Increases performance significantly on certain titles.
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
e57ee3b7fd
|
transform_feedback: Read buffer stride from index instead of layout
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
46bd362d0d
|
fixed_pipeline_state: Use regular for loop instead of ranges for perf
MSVC generates better code for it.
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
d26271b014
|
vk_swapchain: Avoid recreating the swapchain on each frame
Recreate only when requested (or sRGB is changed) instead of tracking
the frontend's size. That size is still used as a hint.
|
2021-07-22 21:51:34 -04:00 |
|
lat9nq
|
22f0c4f002
|
emit_glasm_context_get_set: Remove unused variable
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
5539b13c5a
|
shader,glasm: Implement legacy texcoord loads
|
2021-07-22 21:51:34 -04:00 |
|
ReinUsesLisp
|
cf9f88e5a7
|
glasm: Implement legacy varyings
|
2021-07-22 21:51:34 -04:00 |
|