bunnei
d1aafb0834
Merge pull request #2318 from ReinUsesLisp/sampler-cache
...
gl_sampler_cache: Port sampler cache to OpenGL
2019-04-17 21:45:56 -04:00
bunnei
c1c43bde80
Merge pull request #2348 from FernandoS27/guest-bindless
...
Implement Bindless Textures on Shader Decompiler and GL backend
2019-04-17 20:59:49 -04:00
bunnei
d4b42f6bc6
Merge pull request #2315 from ReinUsesLisp/severity-decompiler
...
shader_ir/decode: Reduce the severity of common assertions
2019-04-16 22:21:19 -04:00
bunnei
1599234a39
Merge pull request #2384 from ReinUsesLisp/gl-state-clear
...
gl_rasterizer: Apply just the needed state on Clear
2019-04-16 22:19:03 -04:00
bunnei
1614c97d78
Merge pull request #2092 from ReinUsesLisp/stg
...
shader/memory: Implement STG and global memory flushing
2019-04-16 22:15:17 -04:00
Fernando Sahmkow
ad686a3c0d
Implement IsBlockContinous
...
This detects when a GPU Memory Block is not continous within host cpu
memory.
2019-04-16 18:49:35 -04:00
Fernando Sahmkow
56c2b0ea86
Apply Const correctness to SwizzleKepler and replace u32 for size_t on iterators.
2019-04-16 12:00:46 -04:00
Fernando Sahmkow
994393bd02
Use ReadBlockUnsafe for fetyching DMA CommandLists
2019-04-16 11:22:34 -04:00
Fernando Sahmkow
86d3cb5fa7
Document unsafe versions and add BlockCopyUnsafe
2019-04-16 10:11:35 -04:00
Fernando Sahmkow
cde8e7f605
Use ReadBlockUnsafe for Shader Cache
2019-04-15 23:34:03 -04:00
Fernando Sahmkow
b33c627670
Use ReadBlockUnsafe on TIC and TSC reading
...
Use ReadBlockUnsafe on TIC and TSC reading as memory is never flushed
from host GPU there.
2019-04-15 23:10:24 -04:00
Fernando Sahmkow
57051db434
GPU MemoryManager: Implement ReadBlockUnsafe and WriteBlockUnsafe
2019-04-15 23:01:35 -04:00
Fernando Sahmkow
525211db3b
Use WriteBlock and ReadBlock.
2019-04-15 22:42:34 -04:00
Fernando Sahmkow
15368c6070
Implement Block Linear copies in Kepler Memory.
2019-04-15 21:22:16 -04:00
ReinUsesLisp
45044529b4
vk_shader_decompiler: Add missing operations
2019-04-15 21:32:57 -03:00
ReinUsesLisp
6ea1afc2bc
shader_ir/decode: Fix half float pre-operations and remove MetaHalfArithmetic
...
Operations done before the main half float operation (like HAdd) were
managing a packed value instead of the unpacked one. Adding an unpacked
operation allows us to drop the per-operand MetaHalfArithmetic entry,
simplifying the code overall.
2019-04-15 21:16:10 -03:00
ReinUsesLisp
7e58372bb9
gl_shader_decompiler: Fix MrgH0 decompilation
...
GLSL decompilation for HMergeH0 was wrong. This addresses that issue.
2019-04-15 21:16:10 -03:00
ReinUsesLisp
6d47914b88
shader_ir/decode: Implement half float saturation
2019-04-15 21:16:10 -03:00
ReinUsesLisp
9c4449696a
shader_ir/decode: Reduce severity of unimplemented half-float FTZ
2019-04-15 21:16:09 -03:00
ReinUsesLisp
a87fe3ea63
renderer_opengl: Implement half float NaN comparisons
2019-04-15 21:13:26 -03:00
ReinUsesLisp
b6a805df3b
shader_ir: Avoid using static on heap-allocated objects
...
Using static here might be faster at runtime, but it adds a heap
allocation called before main.
2019-04-15 21:12:43 -03:00
Fernando Sahmkow
73f925a949
Do some corrections in conversion shader instructions.
...
Corrects encodings for I2F, F2F, I2I and F2I
Implements Immediate variants of all four conversion types.
Add assertions to unimplemented stuffs.
2019-04-15 19:16:27 -04:00
Fernando Sahmkow
02c84726ed
Correct Kepler Memory on Linear Pushes.
2019-04-15 14:51:36 -04:00
Fernando Sahmkow
0e8065d640
Support compressed formats on linear textures.
2019-04-15 13:56:09 -04:00
Fernando Sahmkow
7e2bd462f9
Correct Pitch in Fermi2D
2019-04-15 12:24:29 -04:00
ReinUsesLisp
4338b9d829
gl_shader_decompiler: Use variable AOFFI on supported hardware
2019-04-14 05:13:19 -03:00
ReinUsesLisp
79e7fb6d6f
shader_ir: Implement STG, keep track of global memory usage and flush
2019-04-14 00:25:32 -03:00
bunnei
2ca1f24c4b
Merge pull request #2373 from FernandoS27/z32
...
Set Pixel Format to Z32 if its R32F and depth compare enabled, and Implement format ZF32_X24S8
2019-04-13 22:14:51 -04:00
bunnei
39c54252f4
Merge pull request #2386 from ReinUsesLisp/shader-manager
...
gl_shader_manager: Move code to source file and minor clean up
2019-04-13 22:09:27 -04:00
Lioncash
e0962940a2
video_core/gpu: Create threads separately from initialization
...
Like with CPU emulation, we generally don't want to fire off the threads
immediately after the relevant classes are initialized, we want to do
this after all necessary data is done loading first.
This splits the thread creation into its own interface member function
to allow controlling when these threads in particular get created.
2019-04-11 22:11:40 -04:00
bunnei
5679a65320
Merge pull request #2235 from ReinUsesLisp/spirv-decompiler
...
vk_shader_decompiler: Implement a SPIR-V decompiler
2019-04-11 21:54:23 -04:00
Fernando Sahmkow
5a01502521
gl_rasterizer_cache: Relax restrictions on FastCopySurface and FastLayeredCopySurface
2019-04-11 13:14:28 -04:00
bunnei
4c10687f1b
Merge pull request #2278 from ReinUsesLisp/vc-texture-cache
...
video_core: Implement API agnostic view based texture cache
2019-04-10 21:17:35 -04:00
bunnei
696ab74283
Merge pull request #2372 from FernandoS27/fermi-fix
...
Correct Fermi Copy on Linear Textures.
2019-04-10 21:17:03 -04:00
ReinUsesLisp
750ff46cbc
gl_shader_manager: Move code to source file and minor clean up
2019-04-10 19:29:15 -03:00
ReinUsesLisp
3215c52cad
gl_rasterizer: Apply just the needed state on Clear
2019-04-10 18:13:15 -03:00
ReinUsesLisp
1c4f5b2737
gl_device: Implement interface and add uniform offset alignment
2019-04-10 15:56:12 -03:00
ReinUsesLisp
d334042c75
vk_shader_decompiler: Implement flow primitives
2019-04-10 14:20:25 -03:00
ReinUsesLisp
e3c886a149
vk_shader_decompiler: Implement most common texture primitives
2019-04-10 14:20:25 -03:00
ReinUsesLisp
7b813afc88
vk_shader_decompiler: Implement texture decompilation helper functions
2019-04-10 14:20:25 -03:00
ReinUsesLisp
357a5fcded
vk_shader_decompiler: Implement Assign and LogicalAssign
2019-04-10 14:20:25 -03:00
ReinUsesLisp
b6b1cc9ffa
vk_shader_decompiler: Implement non-OperationCode visits
2019-04-10 14:20:25 -03:00
ReinUsesLisp
4d83f1ea9e
vk_shader_decompiler: Implement OperationCode decompilation interface
2019-04-10 14:20:25 -03:00
ReinUsesLisp
86647aee2e
vk_shader_decompiler: Implement Visit
2019-04-10 14:20:25 -03:00
ReinUsesLisp
4d331aeab6
vk_shader_decompiler: Implement labels tree and flow
2019-04-10 14:20:25 -03:00
ReinUsesLisp
946b97b6f4
vk_shader_decompiler: Implement declarations
2019-04-10 14:20:25 -03:00
ReinUsesLisp
0589785e80
vk_shader_decompiler: Declare and stub interface for a SPIR-V decompiler
2019-04-10 14:20:25 -03:00
ReinUsesLisp
6272cafac7
video_core: Add sirit as optional dependency with Vulkan
...
sirit is a runtime assembler for SPIR-V
2019-04-10 14:20:25 -03:00
bunnei
f58f846f40
Merge pull request #2345 from ReinUsesLisp/multibind
...
gl_rasterizer: Use ARB_multi_bind to update buffers with a single call per drawcall
2019-04-10 11:23:19 -04:00
bunnei
8bdfb51284
Merge pull request #2375 from FernandoS27/fix-ldc
...
Remove unnecessary bounding in LD_C
2019-04-09 21:23:24 -04:00