summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-11-27video_core/const_buffer_locker: Remove #pragma once from cpp fileLioncash
Silences a compiler warning.
2019-11-26Merge pull request #3143 from ReinUsesLisp/indexing-bugbunnei
gl_device: Deduce indexing bug from device instead of heuristic
2019-11-26core_timing: Use better reference tracking for EventType. (#3159)bunnei
* core_timing: Use better reference tracking for EventType. - Moves ownership of the event to the caller, ensuring we don't fire events for destroyed objects. - Removes need for unique names - we won't be using this for save states anyways.
2019-11-26Merge pull request #3164 from ReinUsesLisp/half-cast-floatbunnei
gl_shader_decompiler: Fix casts from fp32 to fp16
2019-11-26Merge pull request #3162 from bunnei/fix-shared-ptr-crashFernando Sahmkow
kernel: Fix reference management for client/server session.
2019-11-25gl_shader_decompiler: Fix casts from fp32 to f16ReinUsesLisp
Casts from f32 to f16 zeroes the higher half of the target register.
2019-11-25kernel: Fix reference management for client/server session.bunnei
- Fixes shutdown crash and crash in Pokemon SwSh.
2019-11-25gl_device: Deduce indexing bug from device instead of heuristicReinUsesLisp
The heuristic to detect AMD's driver was not working properly since it also included Intel. Instead of using heuristics to detect it, compare the GL_VENDOR string.
2019-11-24Merge pull request #3160 from DarkLordZach/opt-ea-clang-fmtbunnei
ci: Continue pipeline on clang format failure
2019-11-24ci: Continue pipeline on clang format failureZach Hilman
2019-11-24Merge pull request #3158 from ReinUsesLisp/srgb-blitbunnei
gl_texture_cache: Apply sRGB on blits
2019-11-24Merge pull request #3094 from lioncash/tablesbunnei
service: Update function tables
2019-11-24Merge pull request #3155 from bunnei/fix-asynch-gpu-waitbunnei
gpu_thread: Don't spin wait if there are no GPU commands.
2019-11-24kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for ↵bunnei
kernel objects. (#3154) * kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. - See https://github.com/citra-emu/citra/pull/4710 for details.
2019-11-24Merge pull request #3098 from ReinUsesLisp/shader-invalidationsbunnei
gl_shader_cache: Miscellaneous changes to shaders
2019-11-24gl_texture_cache: Apply sRGB on blitsReinUsesLisp
glBlitFramebuffer keeps in mind GL_FRAMEBUFFER_SRGB's state. Enable this depending on the target surface pixel format.
2019-11-24Merge pull request #3105 from ReinUsesLisp/fix-stencil-regbunnei
maxwell_3d: Fix stencil_back_func_mask offset
2019-11-24Merge pull request #3156 from bunnei/sys-ticksbunnei
svc: GetSystemTick should return cntpct_el0, not core ticks.
2019-11-24Merge pull request #3153 from FearlessTobi/port-4964bunnei
Port citra-emu/citra#4964: "Unfold UNREACHABLE implementation for dumb compilers"
2019-11-24Merge pull request #3145 from ReinUsesLisp/buffer-cache-initbunnei
buffer_cache: Remove brace initialized for objects with default constructor
2019-11-23Update svc.cppbunnei
2019-11-23svc: GetSystemTick should return cntpct_el0, not core ticks.bunnei
2019-11-23gpu_thread: Don't spin wait if there are no GPU commands.bunnei
2019-11-23Merge pull request #3114 from FernandoS27/cond-varbunnei
Kernel: Correct behavior of Condition Variables to be more similar to real hardware.
2019-11-23Merge pull request #3141 from ReinUsesLisp/gl-positionbunnei
gl_shader_gen: Apply default value to gl_Position
2019-11-23Merge pull request #3130 from FernandoS27/cancel-syncbunnei
Kernel: Correct Cancel Synchronization.
2019-11-23fix clang-format and lambda captureWeiyi Wang
2019-11-23unfold UNREACHABLE implementation for dumb compilersWeiyi Wang
We relies on UNREACHABLE's noreturn attribute to eliminate parent's "no return value" warning. However, this was wrapped in a `if(!false)` block, which compilers may not unfold to recognize the noreturn nature.
2019-11-22gl_device: Reserve base bindings on limited devicesReinUsesLisp
SSBOs and other resources are limited per pipeline on Intel and AMD. Heuristically reserve resources per stage having in mind the reported OpenGL limits.
2019-11-22gl_state: Skip null texture bindsReinUsesLisp
glBindTextureUnit doesn't support null textures. Skip binding these.
2019-11-22gl_rasterizer: Disable compute shaders on IntelReinUsesLisp
Intel's proprietary driver enters in a corrupt state when compute shaders are executed. For now, disable these.
2019-11-22gl_shader_cache: Hack shared memory sizeReinUsesLisp
The current shared memory size seems to be smaller than what the game actually uses. This makes Nvidia's driver consistently blow up; in the case of FE3H it made it explode on Qt's SwapBuffers while SDL2 worked just fine. For now keep this hack since it's still progress over the previous hardcoded shared memory size.
2019-11-22gl_shader_decompiler: Normalize image bindingsReinUsesLisp
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