summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* shader_recompiler: Adjust emit_context includesameerj2021-12-061-1/+1
|
* shader: Add integer division opcodesReinUsesLisp2021-11-161-0/+8
|
* opengl: Implement LOP.CCameerj2021-07-231-3/+27
| | | | Used by MH:Rise
* shader: Remove IAbs64ReinUsesLisp2021-07-231-4/+0
|
* glasm: Fix INeg32 on negative immediatesReinUsesLisp2021-07-231-1/+5
|
* glasm: Catch more register leaksReinUsesLisp2021-07-231-18/+40
| | | | | | | | | | | | | Add support for null registers. These are used when an instruction has no usages. This comes handy when an instruction is only used for its CC value, with the caveat of having to invalidate all pseudo-instructions before defining the instruction itself in the register allocator. This commits changes this. Workaround a bug on Nvidia's condition codes conditional execution using branches.
* glasm: Implement int64 add and subtractReinUsesLisp2021-07-231-6/+4
|
* glasm: Implement 64-bit shiftsReinUsesLisp2021-07-231-9/+9
|
* glasm: Implement IADD.CCameerj2021-07-231-1/+26
|
* glasm: Implement BFE.CCReinUsesLisp2021-07-231-0/+8
|
* glasm: Write result to scalar on integer comparison instructionsReinUsesLisp2021-07-231-10/+10
|
* glasm: Rework control flow introducing a syntax listReinUsesLisp2021-07-231-3/+6
| | | | | This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow.
* glasm: Review all GLASM insts to be aware of register aliasingReinUsesLisp2021-07-231-12/+30
|
* glasm: Implement IAbs64 and INeg64 on GLASMReinUsesLisp2021-07-231-4/+4
|
* glasm: Add conversion instructions to GLASMReinUsesLisp2021-07-231-4/+6
|
* glasm: Remove unnecesary new white space on Clamp GLASMReinUsesLisp2021-07-231-4/+4
|
* emit_glasm: Implement more integer alu opsameerj2021-07-231-36/+30
|
* glasm: Reimplement bitwise ops and BFI/BFEameerj2021-07-231-46/+36
|
* glasm: Make GLASM aware of typesReinUsesLisp2021-07-231-123/+93
|
* glasm: Use CMP.S for Select32ameerj2021-07-231-2/+2
| | | | also fixes ADD and SUB to use U modifier
* glasm: Implement more logical opsameerj2021-07-231-4/+4
|
* glasm: Implement BFI, BFEameerj2021-07-231-67/+79
| | | | Along with implementations of common instructions along the way
* glasm: Implement basic GLASM instructionsReinUsesLisp2021-07-231-0/+228
|
* glasm: Add GLASM backend infrastructureReinUsesLisp2021-07-231-0/+0