summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/glasm/reg_alloc.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-07-23glasm: Remove unnecessary value typesReinUsesLisp1-4/+4
2021-07-23glasm: Catch more register leaksReinUsesLisp1-4/+24
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.
2021-07-23glasm: Do not alias ConditionRef for nowReinUsesLisp1-1/+0
Immediate condition refs where not handled correctly. Just move the value for now.
2021-07-23shader: Read branch conditions from an instructionReinUsesLisp1-0/+1
Fixes the identity removal pass.
2021-07-23glasm: Fix aliased bitcasts ref countingReinUsesLisp1-7/+32
2021-07-23glasm: Add Void type to GLASM valuesReinUsesLisp1-0/+3
2021-07-23glasm: Fix register allocation when moving immediate on GLASMReinUsesLisp1-30/+41
2021-07-23glasm: Add conversion instructions to GLASMReinUsesLisp1-0/+4
2021-07-23glasm: Initial GLASM fp64 supportReinUsesLisp1-19/+47
2021-07-23glasm: Make GLASM aware of typesReinUsesLisp1-27/+35
2021-07-23glasm: Implement more logical opsameerj1-1/+1
2021-07-23glasm: Use BitField instead of C bitfieldsReinUsesLisp1-5/+5
2021-07-23glasm: Changes to GLASM register allocator and emit contextReinUsesLisp1-16/+21
2021-07-23glasm: Add GLASM backend infrastructureReinUsesLisp1-0/+82