summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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-19Merge pull request #3142 from ReinUsesLisp/depbar-logMat M
shader/other: Reduce DEPBAR log severity
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-19Merge pull request #3086 from ReinUsesLisp/format-lookupsbunnei
texture_cache: Use a flat table instead of switch for texture format lookups
2019-11-17Merge pull request #3123 from ReinUsesLisp/logging-returnbunnei
common/logging: Silence no return value warnings
2019-11-16Merge pull request #3126 from yuzu-emu/revert-3106-bitfieldFernando Sahmkow
Revert "common/bit_field: Silence sign-conversion warnings"
2019-11-16Revert "common/bit_field: Silence sign-conversion warnings"Rodrigo Locatti
2019-11-15Merge pull request #3106 from lioncash/bitfieldRodrigo Locatti
common/bit_field: Silence sign-conversion warnings
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-15common/bit_field: Silence sign-conversion warningsLioncash
We can just use numeric_limits instead of relying on wraparound behavior here.
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-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-14Merge pull request #3110 from greggameplayer/CompleteRGBA16UIRodrigo Locatti
Complete the implementation of RGBA16UI
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-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-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
2019-11-12Update CONTRIBUTING.mdbunnei
2019-11-12Merge pull request #3096 from jroweboy/patch-1bunnei
Move source in windows uploads into its own internal zip
2019-11-12Move source in windows uploads into its own internal zipJames Rowe
This should prevent path length issues when extracting the build from the installer
2019-11-12Merge pull request #3090 from DarkLordZach/azure-sourcebunnei
ci: Package source with builds
2019-11-12key_manager: Make use of IOFile in WriteKeyToFile()Lioncash
This properly handles unicode-based paths on Windows, while opening a raw stream doesn't out-of-the-box. Prevents file creation from potentially failing on Windows PCs that make use of unicode characters in their save paths (e.g. writing to a user's AppData folder, where the user has a name with non-ASCII characters).
2019-11-12core: Migrate off deprecated mbedtls functionsLioncash
These functions are marked for deprecation and it's recommended that the *_ret variants be used instead.
2019-11-12externals: Update httplibLioncash
Since the introduction of this library, numerous improvements have been made. Notably, many of the warnings we would get by simply including the library header have now been fixed. This makes it much easier to make conversion warning an error.