summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/decode/half_set_predicate.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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_ir/decode: Fix half float pre-operations and remove MetaHalfArithmeticReinUsesLisp2019-04-161-4/+4
| | | | | | | 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: 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: Rework HSETP2ReinUsesLisp2019-01-151-3/+5
|
* shader_decode: Implement HSETP2ReinUsesLisp2019-01-151-1/+37
|
* shader_ir: Initial implementationReinUsesLisp2019-01-151-0/+24