| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-09-22 | Merge pull request #2870 from FernandoS27/multi-draw | David | |
| Implement a MME Draw commands Inliner and correct host instance drawing | |||
| 2019-09-21 | Merge pull request #2878 from FernandoS27/icmp | Rodrigo Locatti | |
| shader_ir: Implement ICMP | |||
| 2019-09-21 | Shader_IR: ICMP corrections and fixes | Fernando Sahmkow | |
| 2019-09-20 | Merge pull request #2855 from ReinUsesLisp/shfl | bunnei | |
| shader_ir/warp: Implement SHFL for Nvidia devices | |||
| 2019-09-19 | Shader_IR: Implement ICMP. | Fernando Sahmkow | |
| 2019-09-19 | VideoCore: Corrections to the MME Inliner and removal of hacky instance ↵ | Fernando Sahmkow | |
| management. | |||
| 2019-09-18 | Merge pull request #2784 from ReinUsesLisp/smem | bunnei | |
| shader_ir: Implement shared memory | |||
| 2019-09-17 | shader_ir/warp: Implement SHFL | ReinUsesLisp | |
| 2019-09-10 | shader/image: Implement SUATOM and fix SUST | ReinUsesLisp | |
| 2019-09-10 | Merge pull request #2823 from ReinUsesLisp/shr-clamp | bunnei | |
| shader/shift: Implement SHR wrapped and clamped variants | |||
| 2019-09-05 | gl_shader_decompiler: Keep track of written images and mark them as modified | ReinUsesLisp | |
| 2019-09-05 | kepler_compute: Implement texture queries | ReinUsesLisp | |
| 2019-09-05 | shader_ir: Implement LD_S | ReinUsesLisp | |
| Loads from shared memory. | |||
| 2019-09-05 | shader_ir: Implement ST_S | ReinUsesLisp | |
| This instruction writes to a memory buffer shared with threads within the same work group. It is known as "shared" memory in GLSL. | |||
| 2019-09-04 | shader/shift: Implement SHR wrapped and clamped variants | ReinUsesLisp | |
| Nvidia defaults to wrapped shifts, but this is undefined behaviour on OpenGL's spec. Explicitly mask/clamp according to what the guest shader requires. | |||
| 2019-09-04 | half_set_predicate: Fix predicate assignments | ReinUsesLisp | |
| 2019-09-03 | Merge pull request #2812 from ReinUsesLisp/f2i-selector | bunnei | |
| shader_ir/conversion: Implement F2I and F2F F16 selector | |||
| 2019-09-03 | Merge pull request #2811 from ReinUsesLisp/fsetp-fix | bunnei | |
| float_set_predicate: Add missing negation bit for the second operand | |||
| 2019-08-30 | video_core: Silent miscellaneous warnings (#2820) | Rodrigo Locatti | |
| * texture_cache/surface_params: Remove unused local variable * rasterizer_interface: Add missing documentation commentary * maxwell_dma: Remove unused rasterizer reference * video_core/gpu: Sort member declaration order to silent -Wreorder warning * fermi_2d: Remove unused MemoryManager reference * video_core: Silent unused variable warnings * buffer_cache: Silent -Wreorder warnings * kepler_memory: Remove unused MemoryManager reference * gl_texture_cache: Add missing override * buffer_cache: Add missing include * shader/decode: Remove unused variables | |||
| 2019-08-29 | Merge pull request #2758 from ReinUsesLisp/packed-tid | bunnei | |
| shader/decode: Implement S2R Tic | |||
| 2019-08-28 | shader_ir/conversion: Split int and float selector and implement F2F H1 | ReinUsesLisp | |
| 2019-08-27 | shader_ir/conversion: Implement F2I F16 Ra.H1 | ReinUsesLisp | |
| 2019-08-27 | float_set_predicate: Add missing negation bit for the second operand | ReinUsesLisp | |
| 2019-08-21 | shader_ir: Implement VOTE | ReinUsesLisp | |
| 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-08-21 | Merge pull request #2777 from ReinUsesLisp/hsetp2-fe3h-fix | bunnei | |
| half_set_predicate: Fix HSETP2_C constant buffer offset | |||
| 2019-08-21 | Merge pull request #2753 from FernandoS27/float-convert | bunnei | |
| Shader_Ir: Implement F16 Variants of F2F, F2I, I2F. | |||
| 2019-08-18 | Merge pull request #2778 from ReinUsesLisp/nop | bunnei | |
| shader_ir: Implement NOP | |||
| 2019-08-04 | shader_ir: Implement NOP | ReinUsesLisp | |
| 2019-08-04 | half_set_predicate: Fix HSETP2_C constant buffer offset | ReinUsesLisp | |
| 2019-07-26 | decode/half_set_predicate: Fix predicates | ReinUsesLisp | |
| 2019-07-25 | Merge pull request #2739 from lioncash/cflow | bunnei | |
| video_core/control_flow: Minor changes/warning cleanup | |||
| 2019-07-25 | Merge pull request #2737 from FernandoS27/track-fix | bunnei | |
| Shader_Ir: Correct tracking to track from right to left | |||
| 2019-07-25 | Merge pull request #2743 from FernandoS27/surpress-assert | bunnei | |
| Downgrade and suppress a series of GPU asserts and debug messages. | |||
| 2019-07-22 | shader/decode: Implement S2R Tic | ReinUsesLisp | |
| 2019-07-20 | Shader_Ir: Implement F16 Variants of F2F, F2I, I2F. | Fernando Sahmkow | |
| This commit takes care of implementing the F16 Variants of the conversion instructions and makes sure conversions are done. | |||
| 2019-07-19 | Shader_Ir: Change Debug Asserts for Log Warnings | Fernando Sahmkow | |
| 2019-07-19 | shader/half_set_predicate: Fix HSETP2 implementation | ReinUsesLisp | |
| 2019-07-19 | shader/half_set_predicate: Implement missing HSETP2 variants | ReinUsesLisp | |
| 2019-07-18 | video_core/control_flow: Provide operator!= for types with operator== | Lioncash | |
| Provides operational symmetry for the respective structures. | |||
| 2019-07-18 | video_core/control_flow: Prevent sign conversion in TryGetBlock() | Lioncash | |
| The return value is a u32, not an s32, so this would result in an implicit signedness conversion. | |||
| 2019-07-18 | video_core/control_flow: Remove unnecessary BlockStack copy constructor | Lioncash | |
| This is the default behavior of the copy constructor, so it doesn't need to be specified. While we're at it we can make the other non-default constructor explicit. | |||
| 2019-07-18 | video_core/control_flow: Use std::move where applicable | Lioncash | |
| Results in less work being done where avoidable. | |||
| 2019-07-18 | video_core/control_flow: Use the prefix variant of operator++ for iterators | Lioncash | |
| Same thing, but potentially allows a standard library implementation to pick a more efficient codepath. | |||
| 2019-07-18 | video_core/control_flow: Use empty() member function for checking emptiness | Lioncash | |
| It's what it's there for. | |||
| 2019-07-18 | video_core: Resolve -Wreorder warnings | Lioncash | |
| Ensures that the constructor members are always initialized in the order that they're declared in. | |||
| 2019-07-18 | video_core/control_flow: Make program_size for ScanFlow() a std::size_t | Lioncash | |
| Prevents a truncation warning from occurring with MSVC. Also the internal data structures already treat it as a size_t, so this is just a discrepancy in the interface. | |||
| 2019-07-18 | video_core/control_flow: Place all internally linked types/functions within ↵ | Lioncash | |
| an anonymous namespace Previously, quite a few functions were being linked with external linkage. | |||
| 2019-07-18 | video_core/shader/decode: Prevent sign-conversion warnings | Lioncash | |
| Makes it explicit that the conversions here are intentional. | |||
| 2019-07-18 | Merge pull request #2738 from lioncash/shader-ir | bunnei | |
| shader-ir: Minor cleanup-related changes | |||
| 2019-07-18 | Shader_Ir: correct clang format | Fernando Sahmkow | |
