summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* general: Convert source file copyright comments over to SPDXGravatar Morph2022-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 includesGravatar ameerj2021-12-051-1/+1
|
* shader: Add integer division opcodesGravatar ReinUsesLisp2021-11-161-0/+8
|
* opengl: Implement LOP.CCGravatar ameerj2021-07-221-3/+27
| | | | Used by MH:Rise
* shader: Remove IAbs64Gravatar ReinUsesLisp2021-07-221-4/+0
|
* glasm: Fix INeg32 on negative immediatesGravatar ReinUsesLisp2021-07-221-1/+5
|
* glasm: Catch more register leaksGravatar ReinUsesLisp2021-07-221-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 subtractGravatar ReinUsesLisp2021-07-221-6/+4
|
* glasm: Implement 64-bit shiftsGravatar ReinUsesLisp2021-07-221-9/+9
|
* glasm: Implement IADD.CCGravatar ameerj2021-07-221-1/+26
|
* glasm: Implement BFE.CCGravatar ReinUsesLisp2021-07-221-0/+8
|
* glasm: Write result to scalar on integer comparison instructionsGravatar ReinUsesLisp2021-07-221-10/+10
|
* glasm: Rework control flow introducing a syntax listGravatar ReinUsesLisp2021-07-221-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 aliasingGravatar ReinUsesLisp2021-07-221-12/+30
|
* glasm: Implement IAbs64 and INeg64 on GLASMGravatar ReinUsesLisp2021-07-221-4/+4
|
* glasm: Add conversion instructions to GLASMGravatar ReinUsesLisp2021-07-221-4/+6
|
* glasm: Remove unnecesary new white space on Clamp GLASMGravatar ReinUsesLisp2021-07-221-4/+4
|
* emit_glasm: Implement more integer alu opsGravatar ameerj2021-07-221-36/+30
|
* glasm: Reimplement bitwise ops and BFI/BFEGravatar ameerj2021-07-221-46/+36
|
* glasm: Make GLASM aware of typesGravatar ReinUsesLisp2021-07-221-123/+93
|
* glasm: Use CMP.S for Select32Gravatar ameerj2021-07-221-2/+2
| | | | also fixes ADD and SUB to use U modifier
* glasm: Implement more logical opsGravatar ameerj2021-07-221-4/+4
|
* glasm: Implement BFI, BFEGravatar ameerj2021-07-221-67/+79
| | | | Along with implementations of common instructions along the way
* glasm: Implement basic GLASM instructionsGravatar ReinUsesLisp2021-07-221-0/+228
|
* glasm: Add GLASM backend infrastructureGravatar ReinUsesLisp2021-07-221-0/+0