dolphin/Source/Core/VideoCommon
Lioncash 149a97e396 VideoCommon: Remove unnecessary memset on ShaderUid instances.
Zero-initialization zeroes out all members and padding bits, so this is
safe to do. While we're at it, also add static assertions that enforce
the necessary requirements of a UID type explicitly within the ShaderUid
class.

This way, we can remove several memset calls around the shader
generation code that makes sure the underlying UID data is zeroed out.
Now our ShaderUid class enforces this for us, so we don't need to care about
it at the usage sites.
2019-05-30 06:41:54 -04:00
..
AVIDump.cpp decrease gop size (keyint) 2019-03-11 22:17:13 +03:00
AVIDump.h MSVC: define HAVE_FFMPEG 2017-05-26 00:53:58 -07:00
AbstractFramebuffer.cpp Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
AbstractFramebuffer.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
AbstractPipeline.h AbstractPipeline: Support returning "cache data" 2019-04-16 00:09:47 +10:00
AbstractShader.h AbstractPipeline: Support returning "cache data" 2019-04-16 00:09:47 +10:00
AbstractStagingTexture.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
AbstractStagingTexture.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
AbstractTexture.cpp Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
AbstractTexture.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
AsyncRequests.cpp TextureCache: Simplify XFB reconstruction 2019-04-21 12:41:15 +10:00
AsyncRequests.h Reformat all the things! 2018-04-12 21:28:39 +02:00
AsyncShaderCompiler.cpp ShaderCache: Use imgui for shader compilation dialog 2019-01-25 11:15:57 +10:00
AsyncShaderCompiler.h ShaderCache: Implement compile priority 2018-03-17 01:53:11 +10:00
BPFunctions.cpp Replace MathUtil::Clamp with std::clamp 2019-05-04 23:12:17 +02:00
BPFunctions.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
BPMemory.cpp BPMemory: Use Common::BitCast where applicable 2018-05-18 14:25:44 -04:00
BPMemory.h Compiler: Rename __forceinline define to DOLPHIN_FORCE_INLINE 2018-06-09 12:20:25 -04:00
BPStructs.cpp Replace EFBRectangle/TargetRectangle with MathUtil::Rectangle 2019-04-21 14:28:14 +10:00
BPStructs.h VideoCommon: Header cleanup 2016-01-17 20:11:45 -05:00
BoundingBox.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
BoundingBox.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
CMakeLists.txt Add imgui golf mode overlay 2019-04-05 07:01:03 -04:00
CPMemory.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
CPMemory.h specify custom brace style to fix unions 2017-01-05 12:55:13 +01:00
CommandProcessor.cpp CommandProcessor: Don't reset the video buffer when FIFO distance is changed 2019-05-11 00:31:37 +10:00
CommandProcessor.h Call Do for every member of SCPFifoStruct individually 2017-11-13 19:51:16 +01:00
ConstantManager.h PixelShaderGen: Implement table-based fog range as in software renderer 2018-02-15 22:19:21 +10:00
DataReader.h Compiler: Rename __forceinline define to DOLPHIN_FORCE_INLINE 2018-06-09 12:20:25 -04:00
DriverDetails.cpp Disable Vulkan overrides for RADV driver 2019-05-01 07:59:54 -04:00
DriverDetails.h Vulkan: Support macOS via MoltenVK 2018-11-07 05:41:09 -08:00
FPSCounter.cpp Don't use wrong encoding for paths when opening streams on Windows 2017-12-05 21:23:35 +01:00
FPSCounter.h Reformat all the things! 2018-04-12 21:28:39 +02:00
Fifo.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
Fifo.h Fifo: const correctness 2017-03-26 23:08:33 -04:00
FramebufferManager.cpp FramebufferManager: Fix invalid transitions for 1xIR in EFB cache 2019-04-28 16:13:49 +10:00
FramebufferManager.h FramebufferManager: Implement deferred EFB cache invalidation 2019-03-09 12:24:04 +10:00
FramebufferShaderGen.cpp FramebufferShaderGen: Don't emit SV_SampleIndex when not using SSAA 2019-04-28 15:26:21 +10:00
FramebufferShaderGen.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
GXPipelineTypes.h ShaderCache: Utilize pipeline cache data where possible 2019-04-16 00:39:43 +10:00
GeometryShaderGen.cpp VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
GeometryShaderGen.h VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
GeometryShaderManager.cpp VideoConfig: Make StereoMode an enum class 2017-11-18 23:19:53 -05:00
GeometryShaderManager.h VideoBackends: Merge Initialize and Shutdown functions. 2016-06-26 12:34:59 +02:00
HiresTextures.cpp VideoCommon/HiresTextures: Change wildcard to a Windows-compatible character 2018-08-21 15:54:25 -04:00
HiresTextures.h HiresTextures: Do not load compressed textures with unaligned dimensions 2018-05-22 16:15:18 +10:00
HiresTextures_DDSLoader.cpp HiresTextures: Do not load compressed textures with unaligned dimensions 2018-05-22 16:15:18 +10:00
ImageWrite.cpp Add a namespace to OpenFStream 2017-06-15 21:34:04 +02:00
ImageWrite.h ImageWriter: Don't use inplace alpha truncation. 2016-10-08 12:02:49 +02:00
IndexGenerator.cpp Use main buffers for utility draws 2018-12-04 17:37:25 +10:00
IndexGenerator.h Use main buffers for utility draws 2018-12-04 17:37:25 +10:00
LightingShaderGen.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
LightingShaderGen.h LightingShaderGen: Always calculate lighting for both color channels 2017-11-22 01:52:18 +10:00
LookUpTables.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
NativeVertexFormat.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
NetPlayChatUI.cpp VideoCommon/NetPlayChatUI: Default destructor in the cpp file 2019-05-29 06:20:05 -04:00
NetPlayChatUI.h VideoCommon/NetPlayChatUI: Default destructor in the cpp file 2019-05-29 06:20:05 -04:00
NetPlayGolfUI.cpp VideoCommon/NetPlayGolfUI: Default the destructor in the cpp file 2019-05-29 06:20:05 -04:00
NetPlayGolfUI.h VideoCommon/NetPlayGolfUI: Remove unused header 2019-05-29 06:20:57 -04:00
OnScreenDisplay.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
OnScreenDisplay.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
OpcodeDecoding.cpp CommandProcessor: Limit scope of ugly SCPFifoStruct. 2017-01-27 19:04:56 +01:00
OpcodeDecoding.h OpcodeDecoding: Convert #defines into enum constants 2017-02-08 00:05:17 -05:00
PerfQueryBase.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
PerfQueryBase.h D3D12: Fix rare case where command list was executed with open queries 2019-04-01 20:49:24 +10:00
PixelEngine.cpp CommandProcessor: Remove unnecessary include 2017-09-02 13:34:21 -04:00
PixelEngine.h PixelEngine: Move enum constants into the PixelEngine namespace 2017-02-28 07:01:50 -05:00
PixelShaderGen.cpp VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
PixelShaderGen.h VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
PixelShaderManager.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
PixelShaderManager.h Ubershaders: Fix 6-bit color truncation not being applied 2017-08-01 00:01:09 +10:00
PostProcessing.cpp VideoCommon: Implement passive stereoscopic 3D 2019-05-04 22:58:00 -05:00
PostProcessing.h VideoCommon: Implement passive stereoscopic 3D 2019-05-04 22:58:00 -05:00
RenderBase.cpp Replace MathUtil::Clamp with std::clamp 2019-05-04 23:12:17 +02:00
RenderBase.h Merge pull request #8000 from stenzek/more-videocommon-cleanup 2019-04-22 12:50:22 +10:00
RenderState.cpp Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
RenderState.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
SamplerCommon.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
ShaderCache.cpp ShaderCache: Fix crash at shutdown on shared shader compilation fail 2019-04-21 14:28:14 +10:00
ShaderCache.h ShaderCache: Utilize pipeline cache data where possible 2019-04-16 00:39:43 +10:00
ShaderGenCommon.cpp Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
ShaderGenCommon.h VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
Statistics.cpp VideoCommon: add EFB peek/poke stats 2019-03-04 02:49:59 +00:00
Statistics.h VideoCommon: add EFB peek/poke stats 2019-03-04 02:49:59 +00:00
TextureCacheBase.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
TextureCacheBase.h Replace EFBRectangle/TargetRectangle with MathUtil::Rectangle 2019-04-21 14:28:14 +10:00
TextureConfig.cpp Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
TextureConfig.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
TextureConversionShader.cpp ShaderGen: Use interface blocks when geometry shaders are supported 2019-04-20 23:44:33 +10:00
TextureConversionShader.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
TextureConverterShaderGen.cpp VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
TextureConverterShaderGen.h Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
TextureDecoder.h TextureDecoder: Move XFB decoding to Common 2019-04-21 12:41:15 +10:00
TextureDecoder_Common.cpp Replace MathUtil::Clamp with std::clamp 2019-05-04 23:12:17 +02:00
TextureDecoder_Generic.cpp TextureDecoder: Move XFB decoding to Common 2019-04-21 12:41:15 +10:00
TextureDecoder_Util.h TextureDecoder: Deduplicate some utility code 2017-01-15 20:23:26 +11:00
TextureDecoder_x64.cpp Replace MathUtil::Clamp with std::clamp 2019-05-04 23:12:17 +02:00
UberShaderCommon.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
UberShaderCommon.h Ubershaders: Support per-pixel lighting 2017-07-30 17:43:59 +10:00
UberShaderPixel.cpp VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
UberShaderPixel.h VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
UberShaderVertex.cpp VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
UberShaderVertex.h VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
VertexLoader.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
VertexLoader.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
VertexLoaderARM64.cpp VertexLoaderArm: Fix 565 color format. 2018-05-27 11:27:15 +02:00
VertexLoaderARM64.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
VertexLoaderBase.cpp Reformat all the things! 2018-04-12 21:28:39 +02:00
VertexLoaderBase.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
VertexLoaderManager.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
VertexLoaderManager.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
VertexLoaderUtils.h Compiler: Rename __forceinline define to DOLPHIN_FORCE_INLINE 2018-06-09 12:20:25 -04:00
VertexLoaderX64.cpp Remove code for only allocating low memory 2017-05-20 09:35:53 +02:00
VertexLoaderX64.h VideoCommon/VertexLoaderX64: Add missing header guard 2019-05-29 06:35:22 -04:00
VertexLoader_Color.cpp Common: Move byte swapping utilities into their own header 2017-03-03 17:18:18 -05:00
VertexLoader_Color.h VideoCommon: Header cleanup 2016-01-17 20:11:45 -05:00
VertexLoader_Normal.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
VertexLoader_Normal.h Common: Move byte swapping utilities into their own header 2017-03-03 17:18:18 -05:00
VertexLoader_Position.cpp Reformat all the things! 2018-04-12 21:28:39 +02:00
VertexLoader_Position.h Common: Move byte swapping utilities into their own header 2017-03-03 17:18:18 -05:00
VertexLoader_TextCoord.cpp Reformat all the things! 2018-04-12 21:28:39 +02:00
VertexLoader_TextCoord.h Common: Move byte swapping utilities into their own header 2017-03-03 17:18:18 -05:00
VertexManagerBase.cpp FramebufferManager: Implement deferred EFB cache invalidation 2019-03-09 12:24:04 +10:00
VertexManagerBase.h VertexManagerBase: Increase vertex/uniform buffer sizes 2019-03-29 19:52:38 +10:00
VertexShaderGen.cpp VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
VertexShaderGen.h VideoCommon: Remove unnecessary memset on ShaderUid instances. 2019-05-30 06:41:54 -04:00
VertexShaderManager.cpp VideoCommon: Change free-look's middle-mouse action to roll the camera. 2019-04-17 05:10:11 -05:00
VertexShaderManager.h VideoCommon: Change free-look's middle-mouse action to roll the camera. 2019-04-17 05:10:11 -05:00
VideoBackendBase.cpp Implement D3D12 backend 2019-04-01 11:24:55 +10:00
VideoBackendBase.h VideoBackend: Add a virtual PrepareWindow function 2018-11-07 05:12:20 -08:00
VideoCommon.h Turn EFB_WIDTH/EFB_HEIGHT into constexpr 2019-04-28 11:50:17 +02:00
VideoCommon.vcxproj Add imgui golf mode overlay 2019-04-05 07:01:03 -04:00
VideoCommon.vcxproj.filters Add imgui golf mode overlay 2019-04-05 07:01:03 -04:00
VideoConfig.cpp FramebufferManager: Implement deferred EFB cache invalidation 2019-03-09 12:24:04 +10:00
VideoConfig.h VideoCommon: Implement passive stereoscopic 3D 2019-05-04 22:58:00 -05:00
VideoState.cpp VertexManagerBase: Get rid of static behavior 2016-08-21 23:30:38 -04:00
VideoState.h VideoBackends: Merge Initialize and Shutdown functions. 2016-06-26 12:34:59 +02:00
XFMemory.cpp VideoCommon: Header cleanup 2016-01-17 20:11:45 -05:00
XFMemory.h FifoPlayer: reduce XF_REGS_SIZE to what we know 2018-10-08 06:54:32 +01:00
XFStructs.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
XFStructs.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
sfont.inc Update license headers to GPLv2+ 2015-05-25 13:22:31 +02:00