c3d62bd078
Implement ATOM shader instruction ( #1687 )
...
* Implement ATOM shader instruction
* Fix reduction type decoding
2020-11-10 01:06:46 +01:00
49f970d5bd
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
2f16491712
Get rid of Reflection.Emit dependency on CPU and Shader projects ( #1626 )
...
* Get rid of Reflection.Emit dependency on CPU and Shader projects
* Remove useless private sets
* Missed those due to the alignment
2020-10-21 09:13:44 -03:00
f02791b20c
Fix LOP3 (cbuf) shader instruction encoding ( #1616 )
2020-10-13 19:33:04 -03:00
e4777717cd
Implement LEA.HI shader instruction ( #1609 )
2020-10-12 21:46:04 -03:00
e13154c83d
Implement shader LEA instruction and improve bindless image load/store ( #1355 )
2020-07-04 01:48:44 +02:00
ff7a933ec0
Implement TMML and TMML.B ( #1270 )
...
* Implement TMML and TMML.B
This implement TMML and TMML.B instructions
* Fix TmmlB declaration alignment
* Address gdkchan's comments
* Fix inverted encoding definitions
2020-05-23 12:04:35 +02:00
3cb1fa0e85
Implement texture buffers ( #1152 )
...
* Implement texture buffers
* Throw NotSupportedException where appropriate
2020-04-25 23:02:18 +10:00
03711dd7b5
Implement SULD shader instruction ( #1117 )
...
* Implement SULD shader instruction
* Some nits
2020-04-22 09:35:28 +10:00
d599fba711
Implement FCMP shader instruction ( #1067 )
2020-03-30 12:04:00 +02:00
7ad8b3ef75
Move the OpActivator to OpCodeTable class for improve performance ( #1001 )
...
* Move the OpActivator to OpCodeTable class, for reduce the use of ConcurrentDictionary
* Modify code style.
2020-03-29 19:52:56 +11:00
06bf25521f
Implement NOP and stub DEPBAR shader instructions ( #1041 )
...
* Implement NOP and stub DEPBAR shader instruction
* Fix a few issues and formatting stuff
* Remove OpCodeNop/Depbar and use OpCode instead
* Fix NOP shader instruction opcode
* Fix formatting
2020-03-26 19:30:16 -03:00
1586450a38
Implement VMNMX shader instruction ( #1032 )
...
* Implement VMNMX shader instruction
* No need for the gap on the enum
* Fix typo
2020-03-25 15:49:10 +01:00
6edc929894
Implement ICMP shader instruction ( #1010 )
2020-03-23 17:32:30 +01:00
dc97457bf0
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
2eccc7023a
Partial support for shader memory barriers
2020-01-09 02:13:00 +01:00
6b13c5b439
Support bindless texture gather shader instruction
2020-01-09 02:13:00 +01:00
cb171f6ebf
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
b8528c6317
Implement HSET2 shader instruction and fix errors uncovered by Rodrigo tests
2020-01-09 02:13:00 +01:00
e0c95b18eb
Add PSET shader instruction
2020-01-09 02:13:00 +01:00
6a8ba6d600
Add R2P shader instruction
2020-01-09 02:13:00 +01:00
f0a59f345c
Add partial support for the BRX shader instruction
2020-01-09 02:13:00 +01:00
769c02235f
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
278a4c317c
Implement BFI, BRK, FLO, FSWZADD, PBK, SHFL and TXD shader instructions, misc. fixes
2020-01-09 02:13:00 +01:00
1b7d955195
Initial support for image stores, support texture sample on compute
2020-01-09 02:13:00 +01:00
1876b346fe
Initial work
2020-01-09 02:13:00 +01:00