summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/decode/xmad.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* shader: Remove old shader managementReinUsesLisp2021-07-231-156/+0
|
* video_core: Allow copy elision to take place where applicableLioncash2020-07-211-7/+8
| | | | | Removes const from some variables that are returned from functions, as this allows the move assignment/constructors to execute for them.
* shader_ir: Separate float-point comparisons in ordered and unorderedReinUsesLisp2020-05-091-6/+6
| | | | | This allows us to use native SPIR-V instructions without having to manually check for NAN.
* xmad: fix clang build errormakigumo2020-03-231-4/+5
|
* nit & remove some optional paramNguyen Dac Nam2020-03-131-10/+11
|
* shader_decode: implement XMAD mode CSfuNguyen Dac Nam2020-03-131-9/+41
|
* shader_ir: Rename Get/SetTemporal to Get/SetTemporaryLioncash2019-07-171-6/+6
| | | | | | This is more accurate in terms of describing what the functions are actually doing. Temporal relates to time, not the setting of a temporary itself.
* 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.
* video_core: Silent -Wswitch warningsReinUsesLisp2019-04-181-2/+3
|
* Correct XMAD mode, psl and high_b on different encodings.Fernando Sahmkow2019-04-081-9/+30
|
* 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: Unify constant buffer offset valuesReinUsesLisp2019-01-301-2/+3
| | | | | | | Constant buffer values on the shader IR were using different offsets if the access direct or indirect. cbuf34 has a non-multiplied offset while cbuf36 does. On shader decoding this commit multiplies it by four on cbuf34 queries.
* shader_ir: Fixup clang buildReinUsesLisp2019-01-161-4/+6
|
* shader_decode: Fixup XMADReinUsesLisp2019-01-151-1/+1
|
* shader_ir: Pass to decoder functions basic block's codeReinUsesLisp2019-01-151-1/+1
|
* shader_decode: Improve zero flag implementationReinUsesLisp2019-01-151-0/+1
|
* shader_decode: Use BitfieldExtract instead of shift + andReinUsesLisp2019-01-151-20/+6
|
* video_core: Return safe values after an assert hitsReinUsesLisp2019-01-151-4/+4
|
* shader_decode: Fixup clang-formatReinUsesLisp2019-01-151-1/+1
|
* shader_decode: Implement XMADReinUsesLisp2019-01-151-1/+85
|
* shader_ir: Initial implementationReinUsesLisp2019-01-151-0/+24