ReinUsesLisp
f2ae32fa76
glasm: Initial implementation of phi nodes on GLASM
5 years ago
ReinUsesLisp
03f6d424ce
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
cef625a9b2
shader: Add floating-point rounding to I2F
5 years ago
ReinUsesLisp
6c0a696179
glasm: Implement basic GLASM instructions
5 years ago
ReinUsesLisp
d9b9c10f32
glasm: Add GLASM backend infrastructure
5 years ago
ameerj
a739b6933e
shader: ISET.X implementation
5 years ago
FernandoS27
007a11014c
shader: Optimize NVN Fallthrough
5 years ago
FernandoS27
fb20effc51
shader: Stub SR_AFFINITY
5 years ago
ameerj
455872a4af
shader: Implement Int32 SUATOM/SURED
6 years ago
ReinUsesLisp
5ca5988c63
shader: Initial OpenGL implementation
5 years ago
FernandoS27
6aff9b4476
shader: Address feedback
5 years ago
FernandoS27
a2fac91c47
shader: Implement VertexA stage
6 years ago
FernandoS27
cb0587f841
shader: Implement delegation of Exit to dispatcher on CFG
6 years ago
ameerj
031e91e7e5
shader: Fix IADD3.CC
6 years ago
ReinUsesLisp
c8b0377a67
shader: Fix VMNMX selector B
6 years ago
ReinUsesLisp
1d861a6e90
shader: Remove identity removal pass for better build times
6 years ago
ReinUsesLisp
12d7acf707
shader: Add missing UndoUse case for GetSparseFromOp
6 years ago
ReinUsesLisp
04e042d3b3
shader: Simplify code in opcodes.h to fix Intellisense
Avoid using std::array to fix Intellisense not properly compiling this
code and disabling itself on all files that include it.
While we are at it, change the code to use u8 instead of size_t for the
number of instructions in an opcode.
6 years ago
ReinUsesLisp
052317e748
shader: Implement indexed textures
6 years ago
ameerj
3089fb1e2a
shader: Refactor atomic_operations_global_memory
6 years ago
ameerj
8202ace3e9
shader: add missing include guard in half_floating_point_helper.h
6 years ago
ReinUsesLisp
172942911a
shader: Fix gcc warnings
6 years ago
ReinUsesLisp
16a869571e
shader: Inline common Value getters
6 years ago
ReinUsesLisp
9f5c43dd53
shader: Intrusively store in a block if it's sealed or not
6 years ago
ReinUsesLisp
3c1229a7c5
shader: Improve goto removal algorithm complexity
Find sibling node containing a nephew searching from the nephew itself
instead of the uncle.
6 years ago
ReinUsesLisp
1a44a5cafa
shader: Use memset to reset instruction arguments
6 years ago
ReinUsesLisp
9edc2bd70f
shader: Inline common Value functions into the header
6 years ago
ReinUsesLisp
6236b611cf
shader: Move microinstruction header to the value header
6 years ago
ReinUsesLisp
7769517fc0
shader: Move siblings check to a separate function and comment them out
6 years ago
ReinUsesLisp
7bf134b294
shader: Intrusively store register values in block for SSA pass
6 years ago
ReinUsesLisp
3a39124359
shader: Inline common Opcode and Inst functions
6 years ago
ReinUsesLisp
b6bd6a5bce
shader: Inline common IR::Block methods
6 years ago
ReinUsesLisp
8d1327bf78
shader: Use a small_vector for phi blocks
6 years ago
ReinUsesLisp
c44139cda0
shader: Calculate number of arguments in an opcode at compile time
6 years ago
ReinUsesLisp
56aae7efcf
shader: Simplify code for local memory
6 years ago
ReinUsesLisp
e54171c1a9
shader: Add NVN storage buffer fallbacks
When we can't track the SSBO origin of a global memory instruction,
leave it as a global memory operation and assume these pointers are in
the NVN storage buffer slots, then apply a linear search in the shader's
runtime.
6 years ago
FernandoS27
4a97dd4483
shader: Address feedback
6 years ago
FernandoS27
b85c9d8e84
shader: Implement F2F (Imm)
6 years ago
FernandoS27
fbb642f433
shader: Implement IADD3.CC/.X
6 years ago
FernandoS27
2f01c7fb62
shader: Add coarse derivatives
6 years ago
FernandoS27
b1e325f317
shader: Implement fine derivates constant propagation
6 years ago
FernandoS27
6c60109967
shader: Implement SR_Y_DIRECTION
6 years ago
ReinUsesLisp
99e6cd3916
shader: Fix Phi node types
6 years ago
ReinUsesLisp
6d540c6f2e
shader: Fix memory barriers
6 years ago
ameerj
bfdb38404c
shader: Implement BFE and BFI CC
Fix two bugs in BFI.
6 years ago
ReinUsesLisp
ad1507b4a5
shader: Implement SampleMask
6 years ago
ReinUsesLisp
cc96469019
shader: Implement PIXLD.MY_INDEX
6 years ago
ReinUsesLisp
38908d0f7e
shader: Implement tessellation shaders, polygon mode and invocation id
6 years ago
ReinUsesLisp
e59971ea1b
shader: Implement transform feedbacks and define file format
6 years ago
ReinUsesLisp
9f5ab82de2
shader: Document and relax cache control on surface instructions
6 years ago