| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-01-24 | Merge pull request #3273 from FernandoS27/txd-array | bunnei | |
| Shader_IR: Implement TXD Array. | |||
| 2020-01-16 | shader/memory: Implement ATOMS.ADD.U32 | ReinUsesLisp | |
| 2020-01-14 | control_flow: Silence -Wreorder warning for CFGRebuildState | Lioncash | |
| Organizes the initializer list in the same order that the variables would actually be initialized in. | |||
| 2020-01-14 | Merge pull request #3287 from ReinUsesLisp/ldg-stg-16 | bunnei | |
| shader_ir/memory: Implement u16 and u8 for STG and LDG | |||
| 2020-01-09 | shader_ir/texture: Simplify AOFFI code | ReinUsesLisp | |
| 2020-01-09 | shader_ir/memory: Implement u16 and u8 for STG and LDG | ReinUsesLisp | |
| Using the same technique we used for u8 on LDG, implement u16. In the case of STG, load memory and insert the value we want to set into it with bitfieldInsert. Then set that value. | |||
| 2020-01-04 | Merge pull request #3258 from FernandoS27/shader-amend | bunnei | |
| Shader_IR: add the ability to amend code in the shader ir. | |||
| 2020-01-04 | Shader_IR: Address Feedback | Fernando Sahmkow | |
| 2020-01-04 | Shader_IR: Implement TXD Array. | Fernando Sahmkow | |
| This commit extends the compilation of TXD to support array samplers on TXD. | |||
| 2019-12-31 | Merge pull request #3239 from ReinUsesLisp/p2r | bunnei | |
| shader/p2r: Implement P2R Pr | |||
| 2019-12-30 | Shader_IR: add the ability to amend code in the shader ir. | Fernando Sahmkow | |
| This commit introduces a mechanism by which shader IR code can be amended and extended. This useful for track algorithms where certain information can derived from before the track such as indexes to array samplers. | |||
| 2019-12-26 | Merge pull request #3228 from ReinUsesLisp/ptp | bunnei | |
| shader/texture: Implement AOFFI and PTP for TLD4 and TLD4S | |||
| 2019-12-21 | Merge pull request #3235 from ReinUsesLisp/ldg-u8 | bunnei | |
| shader/memory: Implement LDG.U8 and unaligned U8 loads | |||
| 2019-12-20 | shader/p2r: Implement P2R Pr | ReinUsesLisp | |
| P2R dumps predicate or condition codes state to a register. This is useful for unit testing. | |||
| 2019-12-20 | shader/r2p: Refactor P2R to support P2R | ReinUsesLisp | |
| 2019-12-19 | Merge pull request #3234 from ReinUsesLisp/i2f-u8-selector | bunnei | |
| shader/conversion: Implement byte selector in I2F | |||
| 2019-12-18 | shader/memory: Implement LDG.U8 and unaligned U8 loads | ReinUsesLisp | |
| LDG can load single bytes instead of full integers or packs of integers. These have the advantage of loading bytes that are not aligned to 4 bytes. To emulate these this commit gets the byte being referenced (by doing "address & 3" and then using that to extract the byte from the loaded integer: result = bitfieldExtract(loaded_integer, (address % 4) * 8, 8) | |||
| 2019-12-18 | shader/conversion: Implement byte selector in I2F | ReinUsesLisp | |
| I2F's byte selector is used to choose what bytes to convert to float. e.g. if the input is 0xaabbccdd and the selector is ".B3" it will convert 0xaa. The default (when it's not shown in nvdisasm) is ".B0", in that example the default would convert 0xdd to float. | |||
| 2019-12-17 | shader/texture: Properly shrink unused entries in size mismatches | ReinUsesLisp | |
| When a image format mismatches we were inserting zeroes to the texture itself. This was not handling cases were the mismatch uses less coordinates than the guest shader code. Address that by resizing the vector. | |||
| 2019-12-16 | shader/texture: Implement TLD4.PTP | ReinUsesLisp | |
| 2019-12-16 | shader/texture: Enable arrayed TLD4 | ReinUsesLisp | |
| 2019-12-16 | shader/texture: Implement AOFFI for TLD4S | ReinUsesLisp | |
| 2019-12-16 | shader/texture: Remove unnecesary parenthesis | ReinUsesLisp | |
| 2019-12-11 | Shader_IR: Correct TLD4S Depth Compare. | Fernando Sahmkow | |
| 2019-12-11 | Shader_Ir: Correct TLD4S encoding and implement f16 flag. | Fernando Sahmkow | |
| 2019-12-11 | Shader_Ir: default failed tracks on bindless samplers to null values. | Fernando Sahmkow | |
| 2019-12-10 | shader: Implement MEMBAR.GL | ReinUsesLisp | |
| Implement using memoryBarrier in GLSL and OpMemoryBarrier on SPIR-V. | |||
| 2019-12-09 | shader_ir/other: Implement S2R InvocationId | ReinUsesLisp | |
| 2019-12-09 | shader: Keep track of shaders using warp instructions | ReinUsesLisp | |
| 2019-12-09 | shader_ir/memory: Implement patch stores | ReinUsesLisp | |
| 2019-12-06 | Merge pull request #3109 from FernandoS27/new-instr | bunnei | |
| Implement FLO & TXD Instructions on GPU Shaders | |||
| 2019-11-27 | video_core/const_buffer_locker: Make use of std::tie in HasEqualKeys() | Lioncash | |
| Tidies it up a little bit visually. | |||
| 2019-11-27 | video_core/const_buffer_locker: Remove unused includes | Lioncash | |
| 2019-11-27 | video_core/const_buffer_locker: Remove #pragma once from cpp file | Lioncash | |
| Silences a compiler warning. | |||
| 2019-11-22 | video_core: Unify ProgramType and ShaderStage into ShaderType | ReinUsesLisp | |
| 2019-11-22 | shader/texture: Handle TLDS texture type mismatches | ReinUsesLisp | |
| Some games like "Fire Emblem: Three Houses" bind 2D textures to offsets used by instructions of 1D textures. To handle the discrepancy this commit uses the the texture type from the binding and modifies the emitted code IR to build a valid backend expression. E.g.: Bound texture is 2D and instruction is 1D, the emitted IR samples a 2D texture in the coordinate ivec2(X, 0). | |||
| 2019-11-22 | shader/texture: Deduce texture buffers from locker | ReinUsesLisp | |
| Instead of specializing shaders to separate texture buffers from 1D textures, use the locker to deduce them while they are being decoded. | |||
| 2019-11-19 | shader/other: Reduce DEPBAR log severity | ReinUsesLisp | |
| While DEPBAR is stubbed it doesn't change anything from our end. Shading languages handle what this instruction does implicitly. We are not getting anything out fo this log except noise. | |||
| 2019-11-18 | Shader_IR: Address Feedback | Fernando Sahmkow | |
| 2019-11-14 | Shader_IR: Implement TXD instruction. | Fernando Sahmkow | |
| 2019-11-14 | Shader_IR: Implement FLO instruction. | Fernando Sahmkow | |
| 2019-11-14 | Merge pull request #3081 from ReinUsesLisp/fswzadd-shuffles | Fernando Sahmkow | |
| shader: Implement FSWZADD and reimplement SHFL | |||
| 2019-11-13 | Merge pull request #3084 from ReinUsesLisp/cast-warnings | Rodrigo Locatti | |
| video_core: Treat implicit conversions as errors | |||
| 2019-11-08 | video_core: Silence implicit conversion warnings | ReinUsesLisp | |
| 2019-11-07 | shader_ir/warp: Implement FSWZADD | ReinUsesLisp | |
| 2019-11-07 | gl_shader_decompiler: Reimplement shuffles with platform agnostic intrinsics | ReinUsesLisp | |
| 2019-11-07 | Merge pull request #3032 from ReinUsesLisp/simplify-control-flow-brx | bunnei | |
| shader/control_flow: Abstract repeated code chunks in BRX tracking | |||
| 2019-11-07 | shader/control_flow: Specify constness on caller lambdas | Rodrigo Locatti | |
| Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> | |||
| 2019-11-07 | shader/control_flow: Use callable template instead of std::function | ReinUsesLisp | |
| 2019-11-07 | shader/control_flow: Abstract repeated code chunks in BRX tracking | ReinUsesLisp | |
| Remove copied and pasted for cycles into a common templated function. | |||
