ReinUsesLisp
46bd362d0d
fixed_pipeline_state: Use regular for loop instead of ranges for perf
MSVC generates better code for it.
5 years ago
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.
5 years ago
lat9nq
22f0c4f002
emit_glasm_context_get_set: Remove unused variable
5 years ago
ReinUsesLisp
5539b13c5a
shader,glasm: Implement legacy texcoord loads
5 years ago
ReinUsesLisp
cf9f88e5a7
glasm: Implement legacy varyings
5 years ago
ReinUsesLisp
ac0f5d2ab6
shader: Track legacy varyings
5 years ago
ReinUsesLisp
05d41fa9b7
shader: Add support for "negative" and unaligned offsets
"Negative" offsets don't exist. They are shown as such due to a bug in
nvdisasm.
Unaligned offsets have been proved to read the aligned offset. For
example, when reading an U32, if the offset is 6, the offset read will
be 4.
5 years ago
ReinUsesLisp
5d170de0b5
shader: Implement ISCADD32I
5 years ago
ReinUsesLisp
adc43297c5
spirv: Fix output generics with components
5 years ago
ReinUsesLisp
1148a4eac7
vulkan: Conditionally use shaderInt16
Add support for Polaris AMD devices.
5 years ago
ReinUsesLisp
77372443c3
vulkan: Enable depth bounds and use it conditionally
Intel devices pre-Xe don't support this.
5 years ago
ReinUsesLisp
c44b16124f
vk_buffer_cache: Add transform feedback usage to buffers
5 years ago
ReinUsesLisp
916ca74324
opengl: Declare fragment outputs even if they are not used
Fixes Ori and the Blind Forest's menu on GLASM. For some reason
(probably high level optimizations) it is not sanitized on SPIR-V for
OpenGL. Vulkan is unaffected by this change.
5 years ago
ReinUsesLisp
a7e9756671
buffer_cache: Mark uniform buffers as dirty if any enable bit changes
5 years ago
ReinUsesLisp
329dea217d
shader: Always initialize up reference in structure control flow
Fixes ubsan issue.
5 years ago
ReinUsesLisp
99f2c31b64
vulkan_device: Enable float64 and int64 conditionally
Add Intel Xe support.
5 years ago
ReinUsesLisp
d093522fac
shader: Fix ImageWrite indexing
5 years ago
ReinUsesLisp
d738ad4d0b
spirv: Fix image and image buffer descriptor index usage
5 years ago
ReinUsesLisp
eb8464cb3d
glasm: Fix immediate texture coordinate
5 years ago
ReinUsesLisp
457dda69cc
shader: Clang-format secondary textures
5 years ago
ReinUsesLisp
627161c38e
shader: Fix secondary textures
5 years ago
ameerj
dd39b87b0c
shader: Adhere to disk shader cache setting
5 years ago
ReinUsesLisp
b659212dbd
shader: Fix TMML queries
5 years ago
ReinUsesLisp
fbf5cdcba0
shader: Fix FSwizzleAdd folding when going through phi nodes
5 years ago
ReinUsesLisp
871c9f1ced
shader/exception: Fix compilation errors on gcc
5 years ago
ReinUsesLisp
b6c087496b
glasm: Reduce reg allocation leaks from an exception to a log
5 years ago
ReinUsesLisp
56d4a9ebde
texture_cache: Reduce invalid image/sampler error severity
5 years ago
ReinUsesLisp
b7764c3a79
shader: Handle host exceptions
5 years ago
ReinUsesLisp
83db7abae6
glasm: Use integer lod for TXQ
5 years ago
ReinUsesLisp
3b595fe8b2
glasm: Prepare XFB from state instead of global registers
5 years ago
ReinUsesLisp
e240a62017
glasm: Fix global memory fallbacks
5 years ago
ReinUsesLisp
8f3043c3cf
Revert "glasm: Skip phi moves on undefined instructions"
Causes regressions on Bowser's Fury.
5 years ago
ReinUsesLisp
2aa30353b7
glasm: Remove unintentional '\n' on Undef32
5 years ago
ReinUsesLisp
adb591a757
glasm: Use storage buffers instead of global memory when possible
5 years ago
ReinUsesLisp
f58f79c85d
glasm: Implement Y direction
5 years ago
ReinUsesLisp
586c785366
glasm: Skip phi moves on undefined instructions
5 years ago
ReinUsesLisp
b9c8814ea9
glasm: Implement undef instructions
5 years ago
ReinUsesLisp
8763cc1ff7
glasm: Fix global memory callbacks
5 years ago
ReinUsesLisp
a41b2ed391
gl_shader_cache: Add disk shader cache
5 years ago
ReinUsesLisp
a49532c8eb
video_core,shader: Clang-format fixes
5 years ago
ReinUsesLisp
eacf18cce9
gl_shader_cache: Rename Program abstractions into Pipeline
5 years ago
ReinUsesLisp
48aafe0961
glasm: Release phi node registers after they are no longer needed
5 years ago
ReinUsesLisp
77ee733c3a
glasm: Remove unintentionally committed fmt::prints
5 years ago
ReinUsesLisp
70c9281fbf
glasm: Fix INeg32 on negative immediates
5 years ago
ReinUsesLisp
75fd0079db
glasm: Remove unnecessary value types
5 years ago
ReinUsesLisp
379b305b4b
glasm: Throw when there are register leaks
5 years ago
ReinUsesLisp
ca05a13c62
glasm: Catch more register leaks
Add support for null registers. These are used when an instruction has
no usages.
This comes handy when an instruction is only used for its CC value, with
the caveat of having to invalidate all pseudo-instructions before
defining the instruction itself in the register allocator. This commits
changes this.
Workaround a bug on Nvidia's condition codes conditional execution using
branches.
5 years ago
ReinUsesLisp
9fbfe7d676
glasm: Fix usage counting on phi nodes
5 years ago
ReinUsesLisp
4017928213
gl_shader_cache: Do not flip tessellation on OpenGL
5 years ago
ReinUsesLisp
80884e3270
gl_graphics_program: Fix texture buffer bindings
5 years ago