ameerj
d171083d53
glsl: textures wip
5 years ago
ameerj
3d086e6130
glsl: Implement some attribute getters and setters
5 years ago
ameerj
5399906c26
glsl: Track S32 atomics
5 years ago
ameerj
b95716e543
glsl: Update phi node management
5 years ago
ameerj
67f881e714
glsl: Fix floating point compare ops
Logic for ordered/unordered ops was wrong.
5 years ago
ameerj
bd24fa9713
glsl: Query GL Device for FP16 extension support
5 years ago
ameerj
3482df1176
glsl: Simply FP storage atomics
5 years ago
ameerj
9cc1b8a873
glsl: F16x2 storage atomics
5 years ago
ameerj
11ba190462
glsl: Revert ssbo aliasing. Storage Atomics impl
5 years ago
ameerj
e99d01ff53
glsl: implement phi nodes
5 years ago
ameerj
3d9ecbe998
glsl: Wip storage atomic ops
5 years ago
ameerj
df793fc049
glsl: Implement FCMP
5 years ago
ameerj
cdde730219
glsl: Add a more robust fp formatter
5 years ago
ameerj
ac7b0ebcb7
glsl: More FP fixes
5 years ago
ameerj
3064bde415
glsl: FP function fixes
5 years ago
ameerj
65c6f73e43
glsl: More FP instructions/fixes
5 years ago
ameerj
5e9095ef22
glsl: Add many FP32/64 instructions
5 years ago
ameerj
ef7bd53f18
glsl: Implement more Integer ops
5 years ago
ameerj
266a3d60e3
glsl: Implement BF*
5 years ago
ameerj
0f40b0e61c
glsl: Implement a few Integer instructions
5 years ago
ameerj
fb75d122a2
glsl: Use std::string_view for Emit function args.
5 years ago
ameerj
115c162b9a
glsl: Pass IR::Inst& to Emit functions
5 years ago
ameerj
78f5eb90d7
glsl: INeg and IAdd negate tests
5 years ago
ameerj
e221baccdd
glsl: Reusable typed variables. IADD32
5 years ago
ameerj
faf4cd72c5
glsl: Fix program linking and cbuf
5 years ago
ameerj
64337f004d
glsl: Fix "reg" allocing
based on glasm with some tweaks
5 years ago
ameerj
eaff1030de
glsl: Initial backend
5 years ago
ReinUsesLisp
3d822faea1
spirv: Reduce log severity of mismatching denorm rules
5 years ago
ReinUsesLisp
61cd7dd301
shader: Add logging
5 years ago
lat9nq
373f75d944
shader: Add shader loop safety check settings
Also add a setting for enable Nsight Aftermath.
5 years ago
ameerj
d52bacf6f0
spirv/convert: Catch more signed operations oversights
The sign bit on integers of size < 32 was not properly preserved in casts
5 years ago
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.
5 years ago
ReinUsesLisp
79f2fe1a39
glasm: Use ARB_derivative_control conditionally
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
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
adc43297c5
spirv: Fix output generics with components
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
d738ad4d0b
spirv: Fix image and image buffer descriptor index usage
5 years ago
ReinUsesLisp
eb8464cb3d
glasm: Fix immediate texture coordinate
5 years ago
ReinUsesLisp
b6c087496b
glasm: Reduce reg allocation leaks from an exception to a log
5 years ago
ReinUsesLisp
83db7abae6
glasm: Use integer lod for TXQ
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