Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-07-22 | glsl: Use std::string_view for Emit function args. | ameerj | |
2021-07-22 | glsl: Pass IR::Inst& to Emit functions | ameerj | |
2021-07-22 | glsl: INeg and IAdd negate tests | ameerj | |
2021-07-22 | glsl: Reusable typed variables. IADD32 | ameerj | |
2021-07-22 | glsl: Fix program linking and cbuf | ameerj | |
2021-07-22 | glsl: Fix "reg" allocing | ameerj | |
based on glasm with some tweaks | |||
2021-07-22 | glsl: Initial backend | ameerj | |
2021-07-22 | spirv: Reduce log severity of mismatching denorm rules | ReinUsesLisp | |
2021-07-22 | shader: Add logging | ReinUsesLisp | |
2021-07-22 | shader: Add shader loop safety check settings | lat9nq | |
Also add a setting for enable Nsight Aftermath. | |||
2021-07-22 | spirv/convert: Catch more signed operations oversights | ameerj | |
The sign bit on integers of size < 32 was not properly preserved in casts | |||
2021-07-22 | spirv/convert: Catch more broken signed operations on Nvidia OpenGL | ReinUsesLisp | |
BitCast U32 to S32 before converting to float on drivers with broken signed operations. | |||
2021-07-22 | glasm: Use ARB_derivative_control conditionally | ReinUsesLisp | |
2021-07-22 | emit_glasm_context_get_set: Remove unused variable | lat9nq | |
2021-07-22 | shader,glasm: Implement legacy texcoord loads | ReinUsesLisp | |
2021-07-22 | glasm: Implement legacy varyings | ReinUsesLisp | |
2021-07-22 | shader: Add support for "negative" and unaligned offsets | ReinUsesLisp | |
"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. | |||
2021-07-22 | spirv: Fix output generics with components | ReinUsesLisp | |
2021-07-22 | opengl: Declare fragment outputs even if they are not used | ReinUsesLisp | |
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. | |||
2021-07-22 | spirv: Fix image and image buffer descriptor index usage | ReinUsesLisp | |
2021-07-22 | glasm: Fix immediate texture coordinate | ReinUsesLisp | |
2021-07-22 | glasm: Reduce reg allocation leaks from an exception to a log | ReinUsesLisp | |
2021-07-22 | glasm: Use integer lod for TXQ | ReinUsesLisp | |
2021-07-22 | glasm: Fix global memory fallbacks | ReinUsesLisp | |
2021-07-22 | Revert "glasm: Skip phi moves on undefined instructions" | ReinUsesLisp | |
Causes regressions on Bowser's Fury. | |||
2021-07-22 | glasm: Remove unintentional '\n' on Undef32 | ReinUsesLisp | |
2021-07-22 | glasm: Use storage buffers instead of global memory when possible | ReinUsesLisp | |
2021-07-22 | glasm: Implement Y direction | ReinUsesLisp | |
2021-07-22 | glasm: Skip phi moves on undefined instructions | ReinUsesLisp | |
2021-07-22 | glasm: Implement undef instructions | ReinUsesLisp | |
2021-07-22 | glasm: Fix global memory callbacks | ReinUsesLisp | |
2021-07-22 | glasm: Release phi node registers after they are no longer needed | ReinUsesLisp | |
2021-07-22 | glasm: Fix INeg32 on negative immediates | ReinUsesLisp | |
2021-07-22 | glasm: Remove unnecessary value types | ReinUsesLisp | |
2021-07-22 | glasm: Throw when there are register leaks | ReinUsesLisp | |
2021-07-22 | glasm: Catch more register leaks | ReinUsesLisp | |
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. | |||
2021-07-22 | glasm: Fix usage counting on phi nodes | ReinUsesLisp | |
2021-07-22 | glasm: Implement global memory fallbacks | ReinUsesLisp | |
2021-07-22 | glasm: Implement int64 add and subtract | ReinUsesLisp | |
2021-07-22 | emit_glasm_context_get_set: Remove unused variable | lat9nq | |
2021-07-22 | glasm: Implement indirect attribute loads | ReinUsesLisp | |
2021-07-22 | glasm: Implement image atomics | ReinUsesLisp | |
2021-07-22 | glasm: Reorder unreachable image atomic insts | ReinUsesLisp | |
Reorder them to the bottom of the file for readability. | |||
2021-07-22 | glasm: Implement gl_Layer stores | ReinUsesLisp | |
2021-07-22 | glasm: Implement SampleId | ReinUsesLisp | |
2021-07-22 | glasm: Implement IsHelperInvocation | ReinUsesLisp | |
2021-07-22 | glasm: Fix EmitVertex's optimization | ReinUsesLisp | |
2021-07-22 | gl_shader_cache,glasm: Conditionally use typeless image reads extension | ReinUsesLisp | |
2021-07-22 | glasm: Implement forced early Z | ReinUsesLisp | |
2021-07-22 | glasm: Simplify patch reads | ReinUsesLisp | |