gdkchan
d7863e9001
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
gdkchan
8345f5f297
Implement ICMP shader instruction ( #1010 )
2020-03-23 17:32:30 +01:00
gdkchan
abd7fe1b87
Implement textureQueryLevels ( #1007 )
2020-03-23 08:31:31 +11:00
gdkchan
64538f5cba
Improve shader sampler type selection ( #989 )
2020-03-15 11:24:45 +11:00
jduncanator
052281a166
Fix branch with CC and predicate, and a case of SYNC propagation ( #967 )
2020-03-06 11:09:49 +11: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
81b9cd95f9
Update bindless to indexed conversion code pattern match ( #938 )
...
* Update bindless to indexed conversion code pattern match
* Correct index shift
2020-02-14 11:29:58 +01:00
gdkchan
79ea6daa52
Sign-extend shader memory instruction offsets ( #934 )
2020-02-14 01:48:07 +01:00
gdkchan
303724a4b1
Support compute uniform buffers emulated with global memory ( #924 )
2020-02-11 01:10:05 +01:00
gdkchan
039518404d
Use correct shader local memory size instead of a hardcoded size ( #914 )
...
* Use correct shader local size instead of a hardcoded size
* Remove unused uniform block
* Update XML doc
* Local memory size has 23 bits on maxwell
* Generate compute QMD struct from nv open doc header
* Remove dummy arrays when shared or local memory is not used, other improvements
2020-02-02 14:25:52 +11:00
gdkchan
28db1d27bd
Support flat interpolation qualifier on shaders ( #915 )
2020-02-02 10:18:58 +11:00
gdkchan
1a72d8fcfc
Fix shader output color buffer index when non-sequential render targets are used ( #895 )
2020-01-19 00:09:46 +01:00
gdkchan
13aea6d726
Add a GetSpan method to the memory manager and use it on GPU ( #877 )
2020-01-13 10:27:50 +11:00
gdkchan
24a72b2fcc
Add runtime identifiers to new projects
2020-01-09 02:13:00 +01:00
gdkchan
4bf59cc7bd
Address PR feedback
...
Removes a useless null check
Aligns some values to improve readability
2020-01-09 02:13:00 +01:00
gdkchan
2849e1dc05
Remove some unused args on the shader translator
2020-01-09 02:13:00 +01:00
gdkchan
d951b214a6
Fix FADD32I check for Ra negation
2020-01-09 02:13:00 +01:00
gdkchan
46530360e3
Address PR feedback
...
Add TODO comment for GL_EXT_polygon_offset_clamp
2020-01-09 02:13:00 +01:00
gdkchan
bc38064351
Address PR feedback
2020-01-09 02:13:00 +01:00
gdkchan
af0003eb44
Remove more unused code
2020-01-09 02:13:00 +01:00
gdkchan
d42edddefd
Some code cleanup
2020-01-09 02:13:00 +01:00
gdkchan
f7277e76e3
Reimplement limited bindless textures support
2020-01-09 02:13:00 +01:00
gdkchan
d125c0ebfe
Fix exception on shader translator when adding goto temp variable
2020-01-09 02:13:00 +01:00
gdkchan
c009bcc9e5
Support CC on FSET shader instruction, fix CC on ISET.BF shader instruction
2020-01-09 02:13:00 +01:00
gdkchan
0dedc2bf7e
Support texture rectangle targets (non-normalized coords)
2020-01-09 02:13:00 +01:00
gdkchan
7bfde41ea4
Partial support for shader memory barriers
2020-01-09 02:13:00 +01:00
gdkchan
cd111a82aa
Remove some usings that are not needed
2020-01-09 02:13:00 +01:00
gdkchan
49959e3cd0
Correct non-constant offset rewrite for texelFetch
2020-01-09 02:13:00 +01:00
gdkchan
84e5a32fd3
Support non-constant texture offsets on non-NVIDIA gpus
2020-01-09 02:13:00 +01:00
gdkchan
8cd2823869
Use dispatch params shared memory size when available
2020-01-09 02:13:00 +01:00
gdkchan
46a6580c8b
Use maximum shared memory size supported by hardware
2020-01-09 02:13:00 +01:00
gdkchan
745814f94c
Support bindless texture gather shader instruction
2020-01-09 02:13:00 +01:00
gdkchan
ab20360779
Support depth clip mode and disable shader fast math optimization on NVIDIA as a workaround for compiler bugs (?)
2020-01-09 02:13:00 +01:00
gdkchan
12f573e342
Fix wrong maximum id on sampler pool in some cases
2020-01-09 02:13:00 +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
f4582f9ff0
Partial support for branch with CC, and fix a edge case of branch out of loop on shaders
2020-01-09 02:13:00 +01:00
gdk
77e2ab39cf
Simplified F2I shader instruction codegen
2020-01-09 02:13:00 +01:00
gdk
4b9867daae
Implement HSET2 shader instruction and fix errors uncovered by Rodrigo tests
2020-01-09 02:13:00 +01:00
gdk
4dc7e8eecd
Add PSET shader instruction
2020-01-09 02:13:00 +01:00
gdk
5acd231ba9
Revert "Simplify shader uniform buffer access codegen"
...
This reverts commit 2fe9ebaf118d690be8d0cb302529dd359d7c402b.
2020-01-09 02:13:00 +01:00
gdk
c558897292
Simplify shader uniform buffer access codegen
2020-01-09 02:13:00 +01:00
gdk
dfb16f19d8
Remove TranslatorConfig struct
2020-01-09 02:13:00 +01:00
gdk
d59bcf8f22
Add R2P shader instruction
2020-01-09 02:13:00 +01:00
gdk
bda4d677d0
Make the shader translator more error resilient (part 2)
2020-01-09 02:13:00 +01:00
gdk
d6cf87194c
Make the shader translator more error resilient
2020-01-09 02:13:00 +01:00
gdk
2dcb452a09
Add missing check for BRX, do not add a out of bounds block to the queue
2020-01-09 02:13:00 +01:00
gdk
c8398482ef
Add partial support for the BRX shader instruction
2020-01-09 02:13:00 +01:00
gdk
9311e8dfe9
Fix regression on load/store local (wrong type)
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