Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-09-02 | Add input/output location | Feng Chen | |
2021-09-01 | Add colorfront and txtcoord support | Feng Chen | |
2021-08-19 | SPIR-V: Merge two ifs in EmitGetAttribute | Valeri | |
2021-07-30 | Merge pull request #6767 from ReinUsesLisp/fold-float-pack | Morph | |
shader: Fold UnpackFloat2x16 and PackFloat2x16 | |||
2021-07-29 | Merge pull request #6722 from ReinUsesLisp/xmad-opts | bunnei | |
shader: Fold integer FMA from Nvidia's pattern | |||
2021-07-29 | shader: Fold UnpackFloat2x16 and PackFloat2x16 | ReinUsesLisp | |
Simplifies the code a bit when possible. These instructions should be no-ops codegen wise. | |||
2021-07-27 | shader: Mark ConvertF16F32 and ConvertF32F16 as fp16 instructions | ReinUsesLisp | |
Fixes instances where fp16 types are not declared on SPIR-V but they are used. This shouldn't happen on master, as it's been uncovered by an additional optimization pass. | |||
2021-07-27 | exception: Make constructors explicit | Lioncash | |
Ensures that exception construction is always explicit. | |||
2021-07-27 | exception: Make what() member function nodiscard | Lioncash | |
2021-07-27 | exception: Narrow down specific header | Lioncash | |
We can use the <exception> header instead of pulling in all of the exception-style classes. | |||
2021-07-26 | Merge pull request #6724 from lioncash/nodisc-shader | Rodrigo Locatti | |
shader_recompiler: Remove unnecessary [[nodiscard]] instances | |||
2021-07-26 | Merge pull request #6726 from lioncash/hguard | Rodrigo Locatti | |
emit_spirv_instructions: Add missing header guard | |||
2021-07-26 | Merge pull request #6727 from lioncash/topology | Rodrigo Locatti | |
emit_glasm: Fix LINESS_ADJACENCY typo in InputPrimitive() | |||
2021-07-26 | Merge pull request #6723 from lioncash/shader | Rodrigo Locatti | |
object_pool: Add missing return in Chunk move assignment operator | |||
2021-07-26 | emit_glasm: Fix LINESS_ADJACENCY typo in InputPrimitive() | Lioncash | |
This should be LINES_ADJACENCY | |||
2021-07-26 | emit_spirv_instructions: Add missing header guard | Lioncash | |
2021-07-26 | shader_recompiler: Remove unnecessary [[nodiscard]] instances | Lioncash | |
[[nodiscard]] doesn't do anything on functions with a void return type and causes superfluous warnings. | |||
2021-07-26 | control_flow: Fix duplicate switch case in OpcodeToken | Lioncash | |
This previously duplicated the case of the PBK case above it. | |||
2021-07-26 | object_pool: Add missing return in Chunk move assignment operator | Lioncash | |
Prevents undefined behavior from occurring. | |||
2021-07-26 | shader: Fold integer FMA from Nvidia's pattern | ReinUsesLisp | |
Fold shaders doing "a * b + c" on integers from the pattern generated by Nvidia's GL compiler. On a somewhat complex compute shader it reduces the code size by 16 instructions from 2 matches on Turing GPUs. On Intel as extracted from KHR_pipeline_executable_properties: Before the optimization: ``` Instruction Count: 2057 Basic Block Count: 45 Scratch Memory Size: 14752 Spill Count: 232 Fill Count: 261 SEND Count: 610 Cycle Count: 11325 ``` After the optimization: ``` Instruction Count: 2046 Basic Block Count: 44 Scratch Memory Size: 13728 Spill Count: 219 Fill Count: 268 SEND Count: 604 Cycle Count: 11367 ``` | |||
2021-07-26 | shader: Use TryInstRecursive on XMAD multiply folding | ReinUsesLisp | |
Simplify a bit the logic. | |||
2021-07-26 | shader: Add TryInstRecursive utility to values | ReinUsesLisp | |
2021-07-22 | shader: Support out of bound local memory reads and immediate writes | ReinUsesLisp | |
Support ignoring immediate out of bound writes. Writing dynamically out of bounds is not yet supported (e.g. R0+0x4). Reading out of bounds yields zero. This is supported checking for the size from the IR; if the input is immediate, the optimization passes will drop it. | |||
2021-07-22 | shader: Fix disabled attribute default values | ameerj | |
2021-07-22 | glsl: Simplify FCMP emission | ameerj | |
2021-07-22 | glsl: Update TessellationControl gl_in | ameerj | |
Adheres to GL_ARB_separate_shader_objects requirements | |||
2021-07-22 | shader: Implement ISETP.X | ameerj | |
2021-07-22 | shader: Avoid usage of C++20 ranges to build in clang | ReinUsesLisp | |
2021-07-22 | glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZE | ameerj | |
2021-07-22 | shader_recompiler, video_core: Resolve clang errors | lat9nq | |
Silences the following warnings-turned-errors: -Wsign-conversion -Wunused-private-field -Wbraced-scalar-init -Wunused-variable And some other errors | |||
2021-07-22 | shader: Manually convert from array<u32> to bitset instead of using bit_cast | ReinUsesLisp | |
2021-07-22 | glsl: Fix tracking of info.uses_shadow_lod | ameerj | |
2021-07-22 | shader: Ignore global memory ops on devices lacking int64 support | ameerj | |
2021-07-22 | dual_vertex_pass: Clang format | ameerj | |
2021-07-22 | emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 Nvidia | ReinUsesLisp | |
Fix regression on Fire Emblem: Three Houses when using native fp16. | |||
2021-07-22 | shader: GCC fmt 8.0.0 fixes | lat9nq | |
2021-07-22 | shader: Account for 33-bit IADD3 scenario | ameerj | |
2021-07-22 | shader: Only apply shift on register mode for IADD3 | ReinUsesLisp | |
2021-07-22 | shader: Fix disabled and unwritten attributes and varyings | ReinUsesLisp | |
2021-07-22 | glsl: Fix shared and local memory declarations | ameerj | |
account for the fact that program.*memory_size is in units of bytes. | |||
2021-07-22 | opengl: Implement LOP.CC | ameerj | |
Used by MH:Rise | |||
2021-07-22 | spirv: Fix code emission when descriptor aliasing is unsupported | ReinUsesLisp | |
Fixes OpenGL. | |||
2021-07-22 | glsl: Declare local memory in main | ameerj | |
2021-07-22 | glsl: Add passthrough geometry shader support | ameerj | |
2021-07-22 | shader: Use std::bit_cast instead of Common::BitCast for passthrough | ReinUsesLisp | |
2021-07-22 | glasm: Add passthrough geometry shader support | ReinUsesLisp | |
2021-07-22 | shader: Rework varyings and implement passthrough geometry shaders | ReinUsesLisp | |
Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's. | |||
2021-07-22 | shader: Only verify shader when graphics debugging is enabled | ReinUsesLisp | |
2021-07-22 | shader: Unify shader stage types | ReinUsesLisp | |
2021-07-22 | lower_int64_to_int32: Add missing include | lat9nq | |