summaryrefslogtreecommitdiff
path: root/CMakeModules/GenerateSCMRev.cmake
AgeCommit message (Collapse)Author
2020-06-11gl_arb_decompiler: Implement an assembly shader decompilerReinUsesLisp
Emit code compatible with NV_gpu_program5. This should emit code compatible with Fermi, but it wasn't tested on that architecture. Pascal has some issues not present on Turing GPUs.
2020-03-13shader/transform_feedback: Add host API friendly TFB builderReinUsesLisp
2020-03-09video_core: Rename "const buffer locker" to "registry"ReinUsesLisp
2020-03-09gl_shader_cache: Rework shader cache and remove post-specializationsReinUsesLisp
Instead of pre-specializing shaders and then post-specializing them, drop the later and only "specialize" the shader while decoding it.
2020-01-16Fix git version in scm_rev.cppJames Rowe
2019-10-25VideoCore: Unify const buffer accessing along engines and provide ↵Fernando Sahmkow
ConstBufferLocker class to shaders.
2019-10-04Shader_Ir: Refactor Decompilation process and allow multiple decompilation ↵Fernando Sahmkow
modes.
2019-10-04shader_ir: Corrections to outward movements and misc stuffsFernando Sahmkow
2019-08-21shader_ir: Implement VOTEReinUsesLisp
Implement VOTE using Nvidia's intrinsics. Documentation about these can be found here https://developer.nvidia.com/reading-between-threads-shader-intrinsics Instead of using portable ARB instructions I opted to use Nvidia intrinsics because these are the closest we have to how Tegra X1 hardware renders. To stub VOTE on non-Nvidia drivers (including nouveau) this commit simulates a GPU with a warp size of one, returning what is meaningful for the instruction being emulated: * anyThreadNV(value) -> value * allThreadsNV(value) -> value * allThreadsEqualNV(value) -> true ballotARB, also known as "uint64_t(activeThreadsNV())", emits VOTE.ANY Rd, PT, PT; on nouveau's compiler. This doesn't match exactly to Nvidia's code VOTE.ALL Rd, PT, PT; Which is emulated with activeThreadsNV() by this commit. In theory this shouldn't really matter since .ANY, .ALL and .EQ affect the predicates (set to PT on those cases) and not the registers.
2019-07-09shader_ir: Implement a new shader scannerFernando Sahmkow
2019-06-20shader: Decode SUST and implement backing image functionalityReinUsesLisp
2019-06-06cmake: Add missing shader hash file entriesReinUsesLisp
2019-04-16GenerateSCMRev: fix Travis compilation on repo forksfearlessTobi
2019-02-26shader/decode: Split memory and texture instructions decodingReinUsesLisp
2019-02-06cmake: Fix title bar issueReinUsesLisp
2019-02-06cmake: Fixup application stringMichael
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-02-06gl_shader_disk_cache: Invalidate shader cache changes with CMake hashReinUsesLisp