aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-11-22gl_shader_decompiler: Normalize cbuf bindingsReinUsesLisp
Stage and compute shaders were using a different binding counter. Normalize these.
2019-11-22gl_rasterizer: Add missing cbuf counter reset on computeReinUsesLisp
2019-11-22gl_shader_cache: Remove dynamic BaseBinding specializationReinUsesLisp
2019-11-22video_core: Unify ProgramType and ShaderStage into ShaderTypeReinUsesLisp
2019-11-22gl_rasterizer: Bind graphics images to draw commandsReinUsesLisp
Images were not being bound to draw invocations because these would require a cache invalidation.
2019-11-22gl_shader_cache: Specialize local memory size for compute shadersReinUsesLisp
Local memory size in compute shaders was stubbed with an arbitary size. This commit specializes local memory size from guest GPU parameters.
2019-11-22gl_shader_cache: Specialize shared memory sizeReinUsesLisp
Shared memory was being declared with an undefined size. Specialize from guest GPU parameters the compute shader's shared memory size.
2019-11-22gl_shader_cache: Specialize shader workgroupReinUsesLisp
Drop the usage of ARB_compute_variable_group_size and specialize compute shaders instead. This permits compute to run on AMD and Intel proprietary drivers.
2019-11-22shader/texture: Handle TLDS texture type mismatchesReinUsesLisp
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-22shader/texture: Deduce texture buffers from lockerReinUsesLisp
Instead of specializing shaders to separate texture buffers from 1D textures, use the locker to deduce them while they are being decoded.
2019-11-21Merge pull request #3140 from FearlessTobi/port-4953bunnei
Port citra-emu/citra#4953: "citra_qt/main.ui: remove unused actions "Load Symbol Map..." and "Select Game Directory...""
2019-11-21Merge pull request #3112 from lioncash/skipbunnei
service/am: Remove unnecessary Skip calls
2019-11-21Merge pull request #3111 from lioncash/querybunnei
am: Stub QueryApplicationPlayStatistics
2019-11-21Kernel: Optimize condition variable threads management.Fernando Sahmkow
2019-11-21Kernel: Correct SignalProcessWideKeyFernando Sahmkow
When the target is 0, all threads must be processed.
2019-11-21Kernel: Correct behavior of Condition Variables to be more similar to real ↵Fernando Sahmkow
hardware. This commit ensures cond var threads act exactly as they do in the real console. The original implementation uses an RBTree and the behavior of cond var threads is that at the same priority level they act like a FIFO.
2019-11-20buffer_cache: Remove brace initialized for objects with default constructorReinUsesLisp
2019-11-20Texture_Cache: Redo invalid Surfaces handling.Fernando Sahmkow
This commit aims to redo the full setup of invalid textures and guarantee correct behavior across backends in the case of finding one by using black dummy textures that match the target of the expected texture.
2019-11-19shader/other: Reduce DEPBAR log severityReinUsesLisp
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-19gl_shader_gen: Apply default value to gl_PositionReinUsesLisp
Nvidia has sane default output values for varyings, but the other vendors don't apply these. To properly emulate this we would have to analyze the shader header. For the time being, apply the same default Nvidia applies so we get the same behaviour on non-Nvidia drivers.
2019-11-19Merge pull request #3086 from ReinUsesLisp/format-lookupsbunnei
texture_cache: Use a flat table instead of switch for texture format lookups
2019-11-19citra_qt/main.ui: remove unused actions "Load Symbol Map..." and...Tobias
..."Select Game Directory..." Co-authored-by: vvanelslande <vvanelslandedev@gmail.com>
2019-11-18Shader_IR: Address FeedbackFernando Sahmkow
2019-11-16Kernel: Correct Cancel Synchronization.Fernando Sahmkow
This commit corrects the behavior of cancel synchronization when the thread is running/ready and ensures the next wait is cancelled as it's suppose to.
2019-11-15common/logging: Silence no return value warningsReinUsesLisp
2019-11-15Merge pull request #3047 from ReinUsesLisp/clip-controlbunnei
gl_rasterizer: Emulate viewport flipping with ARB_clip_control
2019-11-15Merge pull request #3091 from lioncash/core-conversionbunnei
core: Make most implicit type conversion warnings errors on MSVC
2019-11-14format_lookup_table: Address feedbackReinUsesLisp
format_lookup_table: Drop bitfields format_lookup_table: Use std::array for definition table format_lookup_table: Include <limits> instead of <numeric>
2019-11-14texture_cache: Use a table instead of switch for texture formatsReinUsesLisp
Use a large flat array to look up texture formats. This allows us to properly implement formats with different component types. It should also be faster.
2019-11-14Merge pull request #3113 from lioncash/semiRodrigo Locatti
common_funcs: Remove semicolons from INSERT_PADDING_* macros
2019-11-14common_funcs: Remove semicolons from INSERT_PADDING_* macrosLioncash
Makes code that uses the macros consistent by requiring the lines to be terminated with a semicolon.
2019-11-14service/am: Remove unnecessary Skip callsLioncash
We can simplify these by wrapping the necessary members in structs and then simply reading out the whole struct.
2019-11-14texture_cache: Drop abstracted ComponentTypeReinUsesLisp
Abstracted ComponentType was not being used in a meaningful way. This commit drops its usage. There is one place where it was being used to test compatibility between two cached surfaces, but this one is implied in the pixel format. Removing the component type test doesn't change the behaviour.
2019-11-14am: Stub QueryApplicationPlayStatisticsLioncash
Maintains implementation parity between QueryApplicationPlayStatistics and QueryApplicationPlayStatisticsByUid. These function the same behaviorally underneath the hood, with the only difference being that one allows specifying a UID.
2019-11-14correct the implementation of RGBA16UIgreggameplayer
2019-11-14Merge pull request #3089 from SciresM/play_statisticsbunnei
Implement stub for IApplicationFunctions::QueryApplicationPlayStatisticsByUid
2019-11-14Merge pull request #3093 from lioncash/mbedtlsbunnei
core: Migrate off deprecated mbedtls functions
2019-11-14Merge pull request #3092 from lioncash/utilbunnei
key_manager: Make use of IOFile in WriteKeyToFile()
2019-11-14Shader_IR: Implement TXD instruction.Fernando Sahmkow
2019-11-14Shader_IR: Implement FLO instruction.Fernando Sahmkow
2019-11-14Shader_Bytecode: Add encodings for FLO, SHF and TXDFernando Sahmkow
2019-11-14Merge pull request #3081 from ReinUsesLisp/fswzadd-shufflesFernando Sahmkow
shader: Implement FSWZADD and reimplement SHFL
2019-11-13Merge pull request #3107 from lioncash/hashableRodrigo Locatti
common/hash: Remove unused HashableStruct
2019-11-13Merge pull request #3104 from lioncash/xtsRodrigo Locatti
xts_archive: Remove redundant std::string constructor
2019-11-13common/hash: Remove unused HashableStructLioncash
This is unused, so it can be removed. There's better ways of ensuring zeroed out padding bits, like using zero-initialization, anyhow.
2019-11-13maxwell_3d: Fix stencil_back_func_mask offsetReinUsesLisp
stencil_back_func_mask and stencil_back_mask were misplaced. This commit addresses that issue.
2019-11-13Merge pull request #3103 from lioncash/cfuncRodrigo Locatti
common_funcs: silence sign-conversion warnings in MakeMagic()
2019-11-13xts_archive: Remove redundant std::string constructorLioncash
We can just call the .data() member of path instead of constructing a completely new string.
2019-11-13common_funcs: silence sign-conversion warnings in MakeMagic()Lioncash
We can trivially resolve these by casting the characters to unsigned values and then shifting the bits.
2019-11-13Merge pull request #3084 from ReinUsesLisp/cast-warningsRodrigo Locatti
video_core: Treat implicit conversions as errors