Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2020-04-16 | track: Eliminate redundant copies | Lioncash | 1 | -5/+6 | |
Two variables can be references, while two others can be std::moved. Makes for 4 less atomic reference count increments and decrements. | |||||
2020-04-16 | CMakeLists: Specify -Wextra on linux builds | Lioncash | 1 | -3/+4 | |
Allows reporting more cases where logic errors may exist, such as implicit fallthrough cases, etc. We currently ignore unused parameters, since we currently have many cases where this is intentional (virtual interfaces). While we're at it, we can also tidy up any existing code that causes warnings. This also uncovered a few bugs as well. | |||||
2020-03-09 | shader/registry: Store graphics and compute metadata | ReinUsesLisp | 1 | -6/+3 | |
Store information GLSL forces us to provide but it's dynamic state in hardware (workgroup sizes, primitive topology, shared memory size). | |||||
2020-03-09 | video_core: Rename "const buffer locker" to "registry" | ReinUsesLisp | 1 | -2/+2 | |
2020-03-09 | gl_shader_cache: Rework shader cache and remove post-specializations | ReinUsesLisp | 1 | -6/+3 | |
Instead of pre-specializing shaders and then post-specializing them, drop the later and only "specialize" the shader while decoding it. | |||||
2020-02-29 | nit: move comment to right place. | Nguyen Dac Nam | 1 | -2/+2 | |
2020-02-28 | shader_decode: Fix LD, LDG when track constant buffer | Nguyen Dac Nam | 1 | -4/+12 | |
2020-02-28 | shader_decode: keep it search on all code | Nguyen Dac Nam | 1 | -4/+12 | |
It fixed opcode LD, LDG on Pokemon Sword that can't find the constant buffer. Not sure if it helps any on visual. | |||||
2020-02-02 | shader: Remove curly braces initializers on shared pointers | ReinUsesLisp | 1 | -2/+2 | |
2020-01-25 | Shader_IR: Address feedback. | Fernando Sahmkow | 1 | -5/+4 | |
2020-01-24 | Shader_IR: Change name of TrackSampler function so it does not confuse with the type. | Fernando Sahmkow | 1 | -5/+7 | |
2020-01-24 | Shader_IR: Propagate bindless index into the GL compiler. | Fernando Sahmkow | 1 | -3/+26 | |
2020-01-24 | Shader_IR: Implement initial code for tracking indexed samplers. | Fernando Sahmkow | 1 | -0/+82 | |
2019-12-10 | shader_ir/memory: Implement patch stores | ReinUsesLisp | 1 | -0/+1 | |
2019-07-17 | shader_ir: std::move Node instance where applicable | Lioncash | 1 | -4/+6 | |
These are std::shared_ptr instances underneath the hood, which means copying them isn't as cheap as a regular pointer. Particularly so on weakly-ordered systems. This avoids atomic reference count increments and decrements where they aren't necessary for the core set of operations. | |||||
2019-07-16 | Shader_Ir: Correct tracking to track from right to left | Fernando Sahmkow | 1 | -2/+2 | |
2019-07-15 | shader: Allow tracking of indirect buffers without variable offset | ReinUsesLisp | 1 | -10/+15 | |
While changing this code, simplify tracking code to allow returning the base address node, this way callers don't have to manually rebuild it on each invocation. | |||||
2019-06-06 | shader: Use shared_ptr to store nodes and move initialization to file | ReinUsesLisp | 1 | -9/+9 | |
Instead of having a vector of unique_ptr stored in a vector and returning star pointers to this, use shared_ptr. While changing initialization code, move it to a separate file when possible. This is a first step to allow code analysis and node generation beyond the ShaderIR class. | |||||
2019-05-19 | shader/shader_ir: Mark tracking functions as const member functions | Lioncash | 1 | -5/+7 | |
These don't actually modify instance state, so they can be marked as const member functions | |||||
2019-03-30 | shader_ir: Implement immediate register tracking | ReinUsesLisp | 1 | -1/+16 | |
2019-02-25 | shader/track: Resolve variable shadowing warnings | Lioncash | 1 | -5/+5 | |
2019-02-03 | shader/track: Search inside of conditional nodes | ReinUsesLisp | 1 | -0/+11 | |
Some games search conditionally use global memory instructions. This allows the heuristic to search inside conditional nodes for the source constant buffer. | |||||
2019-02-03 | shader_ir: Rename BasicBlock to NodeBlock | ReinUsesLisp | 1 | -3/+3 | |
It's not always used as a basic block. Rename it for consistency. | |||||
2019-01-30 | shader_decode: Implement LDG and basic cbuf tracking | ReinUsesLisp | 1 | -0/+76 | |