ReinUsesLisp
ca05a13c62
glasm: Catch more register leaks
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.
5 years ago
ReinUsesLisp
0794273870
glasm: Implement int64 add and subtract
5 years ago
ReinUsesLisp
291f220be3
glasm: Implement 64-bit shifts
5 years ago
ameerj
3777592ada
glasm: Implement IADD.CC
5 years ago
ReinUsesLisp
98ed8ff103
glasm: Implement BFE.CC
5 years ago
ReinUsesLisp
0f88fb5d72
glasm: Write result to scalar on integer comparison instructions
5 years ago
ReinUsesLisp
d54d7de40e
glasm: Rework control flow introducing a syntax list
This commit regresses VertexA shaders, their transformation pass has to
be adapted to the new control flow.
5 years ago
ReinUsesLisp
70fbede213
glasm: Review all GLASM insts to be aware of register aliasing
5 years ago
ReinUsesLisp
5b18a12df2
glasm: Implement IAbs64 and INeg64 on GLASM
5 years ago
ReinUsesLisp
ad61b47f80
glasm: Add conversion instructions to GLASM
5 years ago
ReinUsesLisp
45ef62d3ba
glasm: Remove unnecesary new white space on Clamp GLASM
5 years ago
ameerj
6705f56029
emit_glasm: Implement more integer alu ops
5 years ago
ameerj
3e10709091
glasm: Reimplement bitwise ops and BFI/BFE
5 years ago
ReinUsesLisp
1c9307969c
glasm: Make GLASM aware of types
5 years ago
ameerj
934d300246
glasm: Use CMP.S for Select32
also fixes ADD and SUB to use U modifier
5 years ago
ameerj
68cc445b8e
glasm: Implement more logical ops
5 years ago
ameerj
941c6dc740
glasm: Implement BFI, BFE
Along with implementations of common instructions along the way
5 years ago
ReinUsesLisp
6fd190d1ae
glasm: Implement basic GLASM instructions
5 years ago
ReinUsesLisp
b10cf64c48
glasm: Add GLASM backend infrastructure
5 years ago