Fernando Sahmkow
ec3c66c847
Fix incorrect value for CC bit in IADD
7 years ago
ReinUsesLisp
6dfc564d12
kepler_compute: Fixup assert and rename engines
When I originally added the compute assert I used the wrong
documentation. This addresses that.
The dispatch register was tested with homebrew against hardware and is
triggered by some games (e.g. Super Mario Odyssey). What exactly is
missing to get a valid program bound by this engine requires more
investigation.
7 years ago
greggameplayer
b4603fafcb
Implement BGRA8 framebuffer format
7 years ago
Fernando Sahmkow
6d7c42a7ee
Implement linear textures ( #2089 )
7 years ago
ReinUsesLisp
37fa502428
gl_rasterizer_cache: Fixup texture view parameters
These parameters were declared as constants and passed to glTextureView
but then they were removed on a rabase. This addresses that mistake.
7 years ago
ReinUsesLisp
9fe3f3a100
shader_ir: Remove F4 prefix to texture operations
This was originally included because texture operations returned a vec4.
These operations now return a single float and the F4 prefix doesn't
mean anything.
7 years ago
ReinUsesLisp
31305cad93
shader_ir: Clean texture management code
Previous code relied on GLSL parameter order (something that's always
ill-formed on an IR design). This approach passes spatial coordiantes
through operation nodes and array and depth compare values in the the
texture metadata. It still contains an "extra" vector containing generic
nodes for bias and component index (for example) which is still a bit
ill-formed but it should be better than the previous approach.
7 years ago
bunnei
07e83ca08b
gl_rasterizer_cache: Mark surface copy destinations as modified.
7 years ago
bunnei
4e28975608
gl_rasterizer: Implement a more accurate fermi 2D copy.
- This is a blit, use the blit registers.
7 years ago
Frederic L
bd216cd3cb
gl_shader_disk_cache: Check LZ4 size limit
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
7 years ago
Frederic L
39627da4a9
gl_shader_disk_cache: Consider compressed size zero as an error
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
7 years ago
ReinUsesLisp
8e8b793a51
gl_shader_disk_cache: Use unordered containers
7 years ago
ReinUsesLisp
6609f2a614
gl_shader_cache: Fixup GLSL unique identifiers
7 years ago
ReinUsesLisp
f1e717fbee
gl_shader_cache: Link loading screen with disk shader cache load
7 years ago
ReinUsesLisp
66a3760a71
gl_shader_cache: Set GL_PROGRAM_SEPARABLE to dumped shaders
i965 (and probably all mesa drivers) require GL_PROGRAM_SEPARABLE when using
glProgramBinary. This is probably required by the standard but it's ignored by
permisive proprietary drivers.
7 years ago
ReinUsesLisp
ea2ce59743
gl_shader_disk_cache: Pass core system as argument and guard against games without title ids
7 years ago
ReinUsesLisp
f9bcb4e842
gl_shader_disk_cache: Guard reads and writes against failure
7 years ago
ReinUsesLisp
720c2456f4
gl_shader_disk_cache: Address miscellaneous feedback
7 years ago
ReinUsesLisp
fcf98dc3f7
gl_shader_disk_cache: Pass return values returning instead of by parameters
7 years ago
ReinUsesLisp
e2f4c2b9d9
gl_shader_disk_cache: Compress program binaries using LZ4
7 years ago
ReinUsesLisp
92682d3bfa
gl_shader_disk_cache: Compress GLSL code using LZ4
7 years ago
ReinUsesLisp
d83818d30a
gl_shader_disk_cache: Save GLSL and entries into the precompiled file
7 years ago
ReinUsesLisp
1342998379
settings: Hide shader cache behind a setting
7 years ago
ReinUsesLisp
8b1a7aa19d
gl_shader_disk_cache: Invalidate shader cache changes with CMake hash
7 years ago
ReinUsesLisp
bb69f9fb7a
gl_shader_cache: Refactor to support disk shader cache
7 years ago
ReinUsesLisp
a931bb68cd
gl_shader_disk_cache: Add transferable cache invalidation
7 years ago
ReinUsesLisp
b33860b218
gl_shader_disk_cache: Add precompiled load
7 years ago
ReinUsesLisp
c0da61936c
gl_shader_disk_cache: Add precompiled save
7 years ago
ReinUsesLisp
550111b091
gl_shader_disk_cache: Add transferable load
7 years ago
ReinUsesLisp
7012b1a5a4
gl_shader_disk_cache: Add transferable stores
7 years ago
ReinUsesLisp
ac7a6ef85f
gl_shader_disk_cache: Add ShaderDiskCacheOpenGL class and helpers
7 years ago
ReinUsesLisp
09225145c9
gl_shader_disk_cache: Add file and move BaseBindings declaration
7 years ago
ReinUsesLisp
658959673b
gl_shader_decompiler: Remove name entries
7 years ago
ReinUsesLisp
4eb946829d
gl_shader_util: Add parameter to handle retrievable programs
7 years ago
ReinUsesLisp
5bed286abf
rasterizer_interface: Add disk cache entry for the rasterizer
7 years ago
ReinUsesLisp
0d6369989d
shader_decode: Implement LDG and basic cbuf tracking
7 years ago
ReinUsesLisp
c1e8fe0067
video_core/texture: Fix BitField size for depth_minus_one
7 years ago
Mat M
6506dbc577
Update src/video_core/engines/shader_bytecode.h
Co-Authored-By: FernandoS27 <fsahmkow27@gmail.com>
7 years ago
Fernando Sahmkow
4133c86d71
Fix TXQ not using the component mask.
7 years ago
ReinUsesLisp
a6c3180b68
shader_ir/memory: Add ST_L 64 and 128 bits stores
7 years ago
ReinUsesLisp
13b83e6e0f
shader/track: Search inside of conditional nodes
Some games search conditionally use global memory instructions. This
allows the heuristic to search inside conditional nodes for the source
constant buffer.
7 years ago
ReinUsesLisp
92c948999b
shader_ir: Rename BasicBlock to NodeBlock
It's not always used as a basic block. Rename it for consistency.
7 years ago
ReinUsesLisp
e3c0f29a4d
shader_ir: Pass decoded nodes as a whole instead of per basic blocks
Some games call LDG at the top of a basic block, making the tracking
heuristic to fail. This commit lets the heuristic the decoded nodes as a
whole instead of per basic blocks.
This may lead to some false positives but allows it the heuristic to
track cases it previously couldn't.
7 years ago
ReinUsesLisp
af1543712d
video_core: Assert on invalid GPU to CPU address queries
7 years ago
ReinUsesLisp
c73b44fc35
maxwell_3d: Allow sampler handles with TSC id zero
7 years ago
ReinUsesLisp
04fe4a72b9
maxwell_3d: Allow texture handles with TIC id zero
Also remove "enabled" field from Tegra::Texture::FullTextureInfo because
it would become unused.
7 years ago
ReinUsesLisp
36ccfac47b
memory_manager: Check for reserved page status
7 years ago
ReinUsesLisp
0b57f33fdf
shader_ir/memory: Add LD_L 128 bits loads
7 years ago
ReinUsesLisp
5ae8a056fe
shader_bytecode: Rename BytesN enums to BitsN
7 years ago
ReinUsesLisp
a8cbcb1210
shader_ir/memory: Add LD_L 64 bits loads
7 years ago