gdkchan
494b758937
Use dispatch params shared memory size when available
2020-01-05 13:48:38 -03:00
gdkchan
ae9ed388b1
Use maximum shared memory size supported by hardware
2020-01-05 13:48:38 -03:00
gdkchan
d428170695
Fix draw indexed flag not being cleared for instanced draws, also avoid state updates in the middle of a indexed draw
2020-01-05 13:48:38 -03:00
gdkchan
c9c6efbe4f
Support 3D ASTC textures (using 2D blocks)
2020-01-05 13:48:38 -03:00
gdkchan
223482b9a5
Support bindless texture gather shader instruction
2020-01-05 13:48:38 -03:00
gdkchan
a513794992
Support depth clip mode and disable shader fast math optimization on NVIDIA as a workaround for compiler bugs (?)
2020-01-05 13:48:38 -03:00
gdkchan
a4acdedf73
Fix wrong maximum id on sampler pool in some cases
2020-01-05 13:48:38 -03:00
gdkchan
a2bf9e084b
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-05 13:48:38 -03:00
gdkchan
a67686b4c0
Initial support for the guest OpenGL driver (NVIDIA and Nouveau)
2020-01-05 13:48:38 -03:00
gdk
554aa5f16d
Add a pass to turn global memory access into storage access, and do all storage related transformations on IR
2020-01-05 13:48:38 -03:00
gdk
9c486bd1ef
Fix texture 0 not being bound for compute
2020-01-05 13:48:38 -03:00
gdk
f679a0398f
Partial support for branch with CC, and fix a edge case of branch out of loop on shaders
2020-01-05 13:48:38 -03:00
gdk
716e0d8657
Simplified F2I shader instruction codegen
2020-01-05 13:48:38 -03:00
gdk
c83530d744
Implement HSET2 shader instruction and fix errors uncovered by Rodrigo tests
2020-01-05 13:48:38 -03:00
gdk
3c6df2d218
Fix shader code comparison method
2020-01-05 13:48:38 -03:00
gdk
8523b3fb17
Optimize RangeList by not doing an allocation on every call to the Find methods
2020-01-05 13:48:38 -03:00
gdk
09f972faa3
Add PSET shader instruction
2020-01-05 13:48:38 -03:00
gdk
e920960d96
Revert "Simplify shader uniform buffer access codegen"
...
This reverts commit 2fe9ebaf118d690be8d0cb302529dd359d7c402b.
2020-01-05 13:48:38 -03:00
gdk
eb76e048cc
Simplify shader uniform buffer access codegen
2020-01-05 13:48:37 -03:00
gdk
13aaba88f7
Improved and simplified window texture presentation
2020-01-05 13:48:37 -03:00
gdk
1ccc370c4f
Small optimizations on texture and sampler pool invalidation
2020-01-05 13:48:37 -03:00
gdk
a5847e6c48
Correct ordering of compute buffer bind
2020-01-05 13:48:37 -03:00
gdk
31f8d9b412
Share texture pool cache between graphics and compute
2020-01-05 13:48:37 -03:00
gdk
3800b07f01
Separate sub-channel state
2020-01-05 13:48:37 -03:00
gdk
fcb98959f2
Remove TranslatorConfig struct
2020-01-05 13:48:37 -03:00
gdk
6fd4e24e97
Add R2P shader instruction
2020-01-05 13:48:37 -03:00
gdk
2be0c2b436
Make the shader translator more error resilient (part 2)
2020-01-05 13:48:37 -03:00
gdk
c6035bf976
Make the shader translator more error resilient
2020-01-05 13:48:37 -03:00
gdk
4421f1cfc8
Add missing check for BRX, do not add a out of bounds block to the queue
2020-01-05 13:48:37 -03:00
gdk
5a8c9e6eda
Invalidate shaders when they are modified
2020-01-05 13:48:37 -03:00
gdk
1ac837c4ed
Add partial support for the BRX shader instruction
2020-01-05 13:48:37 -03:00
gdk
966a7b8a52
Fix image units bindings and shader dump in the presence of NOPs
2020-01-05 13:48:37 -03:00
gdk
9635369cdc
Revert "Check for ASTC support on the list of supported compressed formats"
...
This reverts commit 38a993510f64346649529b8fd2af6683bef05aa6.
2020-01-05 13:48:37 -03:00
gdk
b14d9cf266
Check for ASTC support on the list of supported compressed formats
2020-01-05 13:48:37 -03:00
gdk
1f153565e2
Fix regression on load/store local (wrong type)
2020-01-05 13:48:37 -03:00
gdk
a6a8f5a69d
Do not throw for invalid ASTC compressed textures
2020-01-05 13:48:37 -03:00
gdk
449d2f3f79
Add ATOMS, LDS, POPC, RED, STS and VOTE shader instructions, start changing the way how global memory is handled
2020-01-05 13:48:37 -03:00
gdk
306229718c
Use a more efficient range list on the buffer manager
2020-01-05 13:48:37 -03:00
gdk
fcaa130c28
Remove some unused constants and other code
2020-01-05 13:48:37 -03:00
gdk
1a63025c47
Add partial support for array of samplers, and add pass to identify them from bindless texture accesses
2020-01-05 13:48:37 -03:00
gdk
f8b57cac2d
Support window resizing
2020-01-05 13:48:37 -03:00
gdk
e325a9c6d1
Implement BFI, BRK, FLO, FSWZADD, PBK, SHFL and TXD shader instructions, misc. fixes
2020-01-05 13:48:37 -03:00
gdk
c48fdc3c33
Support copy of slices to 3D textures, remove old 3D render target layered render support, do not delete textures with existing views created from them
2020-01-05 13:48:37 -03:00
gdk
7e79dd7b85
Add shader support for the round mode on the F2F instruction, support mipmaps on ASTC compressed textures
2020-01-05 13:48:37 -03:00
gdk
d1175c1b5e
Fix shader FMUL32I instruction saturation
2020-01-05 13:48:37 -03:00
gdk
a182721c30
Flush buffers on copies
2020-01-05 13:48:37 -03:00
gdk
14660acf68
Add per-source type memory change tracking, simplified state change tracking, other fixes
2020-01-05 13:48:37 -03:00
gdk
dd045439a4
Initial support for image stores, support texture sample on compute
2020-01-05 13:48:37 -03:00
gdk
564f94dc54
Fix incorrect saturation on HADD2 and HMUL2 shader instructions
2020-01-05 13:48:37 -03:00
gdk
9653fd4d33
Fix BC6 Signed/Unsigned float texture formats
2020-01-05 13:48:37 -03:00