summaryrefslogtreecommitdiff
path: root/CMakeModules/GenerateSCMRev.cmake (follow)
Commit message (Collapse)AuthorAgeFilesLines
* shader_ir: Implement VOTEGravatar ReinUsesLisp2019-08-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* shader_ir: Implement a new shader scannerGravatar Fernando Sahmkow2019-07-091-0/+2
|
* shader: Decode SUST and implement backing image functionalityGravatar ReinUsesLisp2019-06-201-0/+1
|
* cmake: Add missing shader hash file entriesGravatar ReinUsesLisp2019-06-061-0/+3
|
* GenerateSCMRev: fix Travis compilation on repo forksGravatar fearlessTobi2019-04-161-1/+1
|
* shader/decode: Split memory and texture instructions decodingGravatar ReinUsesLisp2019-02-261-0/+1
|
* cmake: Fix title bar issueGravatar ReinUsesLisp2019-02-061-8/+1
|
* cmake: Fixup application stringGravatar Michael2019-02-061-2/+2
| | | Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
* gl_shader_disk_cache: Invalidate shader cache changes with CMake hashGravatar ReinUsesLisp2019-02-061-0/+101