gdkchan
d3b2ebf645
Fix constant buffer array size when indexing is used and other buffer descriptor and resolution scale regressions ( #2298 )
...
* Fix constant buffer array size when indexing is used
* Change default QueryConstantBufferUse value
* Fix more regressions
* Ensure proper order
2021-05-20 15:12:15 -03:00
gdkchan
08dbc851c0
Move shader resource descriptor creation out of the backend ( #2290 )
...
* Move shader resource descriptor creation out of the backend
* Remove now unused code, and other nits
* Shader cache version bump
* Nits
* Set format for bindless image load/store
* Fix buffer write flag
2021-05-19 23:15:26 +02:00
gdkchan
e54a89d2c5
Use multiple dest operands for shader call instructions ( #1975 )
...
* Use multiple dest operands for shader call instructions
* Passing opNode is no longer needed
2021-02-01 11:13:38 +11:00
gdkchan
52970555f6
Support multiple destination operands on shader IR and shuffle predicates ( #1964 )
...
* Support multiple destination operands on shader IR and shuffle predicates
* Cache version change
2021-01-28 10:59:47 +11:00
gdkchan
e705b2d978
Add support for shader atomic min/max (S32) ( #1948 )
2021-01-26 17:38:33 +11:00
gdkchan
180c8131fa
Simplify logic for bindless texture handling ( #1667 )
...
* Simplify logic for bindless texture handling
* Nits
2020-11-09 19:35:04 -03:00
gdkchan
4c40f241a8
Implement CAL and RET shader instructions ( #1618 )
...
* Add support for CAL and RET shader instructions
* Remove unused stuff
* Fix a bug that could cause the wrong values to be passed to a function
* Avoid repopulating function id dictionary every time
* PR feedback
* Fix vertex shader A/B merge
2020-10-25 17:00:44 -03:00
gdkchan
c653c5d058
Add support for shader constant buffer slot indexing ( #1608 )
...
* Add support for shader constant buffer slot indexing
* Fix typo
2020-10-12 21:40:50 -03:00
gdkchan
bd010a2288
Implement SULD shader instruction ( #1117 )
...
* Implement SULD shader instruction
* Some nits
2020-04-22 09:35:28 +10:00
gdkchan
04f7a7955a
Initial support for double precision shader instructions. ( #963 )
...
* Implement DADD, DFMA and DMUL shader instructions
* Rename FP to FP32
* Correct double immediate
* Classic mistake
2020-03-03 15:02:08 +01:00
gdkchan
d5e8fc5c08
Support shared color mask, implement more shader instructions
...
Support shared color masks (used by Nouveau and maybe the NVIDIA
driver).
Support draw buffers (also required by OpenGL).
Support viewport transform disable (disabled for now as it breaks some
games).
Fix instanced rendering draw being ignored for multi draw.
Fix IADD and IADD3 immediate shader encodings, that was not matching
some ops.
Implement FFMA32I shader instruction.
Implement IMAD shader instruction.
2020-01-09 02:13:00 +01:00
gdk
85a00d4d76
Add a pass to turn global memory access into storage access, and do all storage related transformations on IR
2020-01-09 02:13:00 +01:00
gdk
f7cec66ce0
Add ATOMS, LDS, POPC, RED, STS and VOTE shader instructions, start changing the way how global memory is handled
2020-01-09 02:13:00 +01:00
gdk
bd0a16ecbf
Add partial support for array of samplers, and add pass to identify them from bindless texture accesses
2020-01-09 02:13:00 +01:00
gdk
dd8a838a81
Implement BFI, BRK, FLO, FSWZADD, PBK, SHFL and TXD shader instructions, misc. fixes
2020-01-09 02:13:00 +01:00
gdk
c9abf08686
Initial support for image stores, support texture sample on compute
2020-01-09 02:13:00 +01:00
gdk
fb2200c09b
Initial work
2020-01-09 02:13:00 +01:00