summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/decode/half_set.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* half_set: Resolve -Wmaybe-uninitialized warningsLioncash2020-12-301-7/+7
|
* shader/half_set: Implement HSET2_IMMReinUsesLisp2020-06-231-21/+67
| | | | | | Add HSET2_IMM. Due to the complexity of the encoding avoid using BitField unions and read the relevant bits from the code itself. This is less error prone.
* shader/decode: Reduce severity of arithmetic rounding warningsReinUsesLisp2019-11-071-2/+2
|
* shader: Use shared_ptr to store nodes and move initialization to fileReinUsesLisp2019-06-061-0/+1
| | | | | | | | | 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.
* shader/decode/*: Add missing newline to files lacking themLioncash2019-05-231-1/+1
| | | | Keeps the shader code file endings consistent.
* shader/decode/*: Eliminate indirect inclusionsLioncash2019-05-231-0/+1
| | | | | | | Amends cases where we were using things that were indirectly being satisfied through other headers. This way, if those headers change and eliminate dependencies on other headers in the future, we don't have cascading compilation errors.
* shader_ir/decode: Fix half float pre-operations and remove MetaHalfArithmeticReinUsesLisp2019-04-161-7/+5
| | | | | | | Operations done before the main half float operation (like HAdd) were managing a packed value instead of the unpacked one. Adding an unpacked operation allows us to drop the per-operand MetaHalfArithmetic entry, simplifying the code overall.
* shader_ir/decode: Reduce severity of unimplemented half-float FTZReinUsesLisp2019-04-161-1/+3
|
* shader_ir: Rename BasicBlock to NodeBlockReinUsesLisp2019-02-031-1/+1
| | | | It's not always used as a basic block. Rename it for consistency.
* shader_ir: Pass decoded nodes as a whole instead of per basic blocksReinUsesLisp2019-02-031-1/+1
| | | | | | | | | Some games call LDG at the top of a basic block, making the tracking heuristic to fail. This commit lets the heuristic the decoded nodes as a whole instead of per basic blocks. This may lead to some false positives but allows it the heuristic to track cases it previously couldn't.
* shader_ir: Pass to decoder functions basic block's codeReinUsesLisp2019-01-151-1/+1
|
* shader_decode: Fixup clang-formatReinUsesLisp2019-01-151-1/+2
|
* shader_decode: Implement HSET2ReinUsesLisp2019-01-151-1/+43
|
* shader_ir: Initial implementationReinUsesLisp2019-01-151-0/+24