blob: 3e7a582bd52c4933e3e342ddd83ccffcf316306f [file] [log] [blame]
// GENERATED FILE - DO NOT EDIT.
// Generated by gen_features.py using data from *_features.json.
//
// Copyright 2022 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// angle_features_autogen.h: List of ANGLE features to help enable/disable them in tests.
#ifndef ANGLE_SRC_TESTS_TEST_UTIL_AUTOGEN_ANGLE_FEATURES_AUTOGEN_H_
#define ANGLE_SRC_TESTS_TEST_UTIL_AUTOGEN_ANGLE_FEATURES_AUTOGEN_H_
#include "../util_export.h"
namespace angle
{
enum class Feature
{
AddAndTrueToLoopCondition,
AddMockTextureNoRenderTarget,
AdjustClearColorPrecision,
AdjustSrcDstRegionForBlitFramebuffer,
AllocateNonZeroMemory,
AllowAstcFormats,
AllowBufferReadWrite,
AllowClearForRobustResourceInit,
AllowCompressedFormats,
AllowES3OnFL100,
AllowETCFormats,
AllowGenerateMipmapWithCompute,
AllowGenMultipleMipsPerPass,
AllowHostImageCopyDespiteNonIdenticalLayout,
AllowInlineConstVertexData,
AllowMultisampledRenderToTextureEmulation,
AllowMultisampleStoreAndResolve,
AllowRenderpassWithoutAttachment,
AllowRuntimeSamplerCompareMode,
AllowSamplerCompareGradient,
AllowSamplerCompareLod,
AllowSeparateDepthStencilBuffers,
AllowTranslateUniformBlockToStructuredBuffer,
AlwaysCallUseProgramAfterLink,
AlwaysPreferStagedTextureUploads,
AlwaysResolveMultisampleRenderBuffers,
AlwaysRunLinkSubJobsThreaded,
AlwaysUnbindFramebufferTexture2D,
AlwaysUseManagedStorageModeForBuffers,
AlwaysUseSharedStorageModeForBuffers,
AlwaysUseStagedBufferUpdates,
AppendAliasedMemoryDecorations,
AsyncCommandBufferReset,
AsyncCommandQueue,
Avoid1BitAlphaTextureFormats,
AvoidOpSelectWithMismatchingRelaxedPrecision,
AvoidStencilTextureSwizzle,
BindCompleteFramebufferForTimerQueries,
BindTransformFeedbackBufferBeforeBindBufferRange,
BorderColorSrgb,
BottomLeftOriginPresentRegionRectangles,
BresenhamLineRasterization,
CacheCompiledShader,
CallClearTwice,
ClampArrayAccess,
ClampFragDepth,
ClampMscRate,
ClampPointSize,
ClDumpVkSpirv,
ClearsWithGapsNeedFlush,
ClearToZeroOrOneBroken,
ClipSrcRegionForBlitFramebuffer,
CombineAllShadersInPipelineLibrary,
CompileJobIsThreadSafe,
CompileMetalShaders,
CompressVertexData,
CopyIOSurfaceToNonIOSurfaceForReadOptimization,
CopyTextureToBufferForReadOptimization,
CorruptProgramBinaryForTesting,
DecodeEncodeSRGBForGenerateMipmap,
DeferFlushUntilEndRenderPass,
DepthStencilBlitExtraCopy,
DisableAnisotropicFiltering,
DisableB5G6R5Support,
DisableBaseInstanceVertex,
DisableBlendFuncExtended,
DisableClipControl,
DisableDepthStencilResolveThroughAttachment,
DisableDrawBuffersIndexed,
DisableFlippingBlitWithCommand,
DisableGPUSwitchingSupport,
DisableMetalOnNvidia,
DisableMultisampledRenderToTexture,
DisableNativeParallelCompile,
DisablePipelineCacheLoadForTesting,
DisableProgramBinary,
DisableProgramCaching,
DisableProgramCachingForTransformFeedback,
DisableProgrammableBlending,
DisableRasterizerOrderViews,
DisableRasterOrderGroups,
DisableRenderSnorm,
DisableRWTextureTier2Support,
DisableSemaphoreFd,
DisableSeparateShaderObjects,
DisableStagedInitializationOfPackedTextureFormats,
DisableSyncControlSupport,
DisableTextureClampToBorder,
DisableTextureMirrorClampToEdge,
DisableTimestampQueries,
DisallowMixedDepthStencilLoadOpNoneAndLoad,
DoesSRGBClearsOnLinearFramebufferAttachments,
DontInitializeUninitializedLocals,
DontUseLoopsToInitializeVariables,
DoubleDepthBiasConstantFactor,
DoWhileGLSLCausesGPUHang,
DumpShaderSource,
DumpTranslatedShaders,
EglColorspaceAttributePassthrough,
EmulateAbsIntFunction,
EmulateAdvancedBlendEquations,
EmulateAlphaToCoverage,
EmulateAtan2Float,
EmulateClipDistanceState,
EmulateClipOrigin,
EmulateCopyTexImage2D,
EmulateCopyTexImage2DFromRenderbuffers,
EmulateDithering,
EmulatedPrerotation180,
EmulatedPrerotation270,
EmulatedPrerotation90,
EmulateImmutableCompressedTexture3D,
EmulateIsnanFloat,
EmulateMaxVertexAttribStride,
EmulatePackSkipRowsAndPackSkipPixels,
EmulatePixelLocalStorage,
EmulatePrimitiveRestartFixedIndex,
EmulateR32fImageAtomicExchange,
EmulateRGB10,
EmulateTinyStencilTextures,
EmulateTransformFeedback,
EnableAdditionalBlendFactorsForDithering,
EnableAsyncPipelineCacheCompression,
EnableCaptureLimits,
EnableInMemoryMtlLibraryCache,
EnableMergeClientAttribBuffer,
EnableMultisampledRenderToTexture,
EnableParallelCompileAndLink,
EnableParallelMtlLibraryCompilation,
EnablePipelineCacheDataCompression,
EnablePortabilityEnumeration,
EnablePrecisionQualifiers,
EnablePreRotateSurfaces,
EnableProgramBinaryForCapture,
EnableShaderSubstitution,
EnableTimestampQueries,
EnableTranslatedShaderSubstitution,
EnsureNonEmptyBufferIsBoundForDraw,
ExpandIntegerPowExpressions,
ExplicitFragmentLocations,
ExplicitlyCastMediumpFloatTo16Bit,
ExplicitlyEnablePerSampleShading,
ExposeNonConformantExtensionsAndVersions,
FinishDoesNotCauseQueriesToBeAvailable,
FlushAfterEndingTransformFeedback,
FlushAfterStreamVertexData,
FlushBeforeDeleteTextureIfCopiedTo,
FlushOnFramebufferChange,
ForceAtomicValueResolution,
ForceBufferGPUStorage,
ForceContinuousRefreshOnSharedPresent,
ForceD16TexFilter,
ForceD24S8AsUnsupported,
ForceDepthAttachmentInitOnClear,
ForceDisableFullScreenExclusive,
ForceFallbackFormat,
ForceFragmentShaderPrecisionHighpToMediump,
ForceGlErrorChecking,
ForceInitShaderVariables,
ForceMaxUniformBufferSize16KB,
ForceMinimumMaxVertexAttributes,
ForceNearestFiltering,
ForceNearestMipFiltering,
ForceNonCSBaseMipmapGeneration,
ForceRobustResourceInit,
ForceSampleUsageForAhbBackedImages,
ForceSubmitImmutableTextureUpdates,
ForceTextureLodOffset1,
ForceTextureLodOffset2,
ForceTextureLodOffset3,
ForceTextureLodOffset4,
ForceWaitForSubmissionToCompleteForQueryResult,
GenerateShareableShaders,
GetDimensionsIgnoresBaseLevel,
HasBaseVertexInstancedDraw,
HasCheapRenderPass,
HasDepthAutoResolve,
HasEffectivePipelineCacheSerialization,
HasEvents,
HasExplicitMemBarrier,
HasNonUniformDispatch,
HasShaderStencilOutput,
HasStencilAutoResolve,
HasTextureSwizzle,
InitFragmentOutputVariables,
InitializeCurrentVertexAttributes,
InjectAsmStatementIntoLoopBodies,
IntelDisableFastMath,
IntelExplicitBoolCastWorkaround,
KeepBufferShadowCopy,
LimitMax3dArrayTextureSizeTo1024,
LimitMaxColorTargetBitsForTesting,
LimitMaxDrawBuffersForTesting,
LimitMaxMSAASamplesTo4,
LimitSampleCountTo2,
LimitWebglMaxTextureSizeTo4096,
LimitWebglMaxTextureSizeTo8192,
LinkJobIsThreadSafe,
LoadMetalShadersFromBlobCache,
LogMemoryReportCallbacks,
LogMemoryReportStats,
LoseContextOnOutOfMemory,
MapUnspecifiedColorSpaceToPassThrough,
MergeProgramPipelineCachesToGlobalCache,
MrtPerfWorkaround,
MultisampleColorFormatShaderReadWorkaround,
MutableMipmapTextureUpload,
OverrideSurfaceFormatRGB8ToRGBA8,
PackLastRowSeparatelyForPaddingInclusion,
PackOverlappingRowsSeparatelyPackBuffer,
PadBuffersToMaxVertexAttribStride,
PassHighpToPackUnormSnormBuiltins,
PerFrameWindowSizeQuery,
PermanentlySwitchToFramebufferFetchMode,
PersistentlyMappedBuffers,
PreAddTexelFetchOffsets,
PreemptivelyStartProvokingVertexCommandBuffer,
PreferAggregateBarrierCalls,
PreferCpuForBuffersubdata,
PreferCPUForBufferSubData,
PreferDeviceLocalMemoryHostVisible,
PreferDrawClearOverVkCmdClearAttachments,
PreferDriverUniformOverSpecConst,
PreferHostCachedForNonStaticBufferUsage,
PreferLinearFilterForYUV,
PreferMonolithicPipelinesOverLibraries,
PreferMSRTSSFlagByDefault,
PreferSkippingInvalidateForEmulatedFormats,
PreferSubmitAtFBOBoundary,
PreferSubmitOnAnySamplesPassedQueryEnd,
PreTransformTextureCubeGradDerivatives,
PrintMetalShaders,
PromotePackedFormatsTo8BitPerChannel,
ProvokingVertex,
QueryCounterBitsGeneratesErrors,
ReadPixelsUsingImplementationColorReadFormatForNorm16,
ReapplyUBOBindingsAfterUsingBinaryProgram,
RegenerateStructNames,
RemoveDynamicIndexingOfSwizzledVector,
RemoveInvariantAndCentroidForESSL3,
RequireGpuFamily2,
RequireMsl21,
RescopeGlobalVariables,
ResetTexImage2DBaseLevel,
ResyncDepthRangeOnClipControl,
RetainSPIRVDebugInfo,
RewriteFloatUnaryMinusOperator,
RewriteRepeatedAssignToSwizzled,
RewriteRowMajorMatrices,
RewriteUnaryMinusOperator,
RGBA4IsNotSupportedForColorRendering,
RGBDXT1TexturesSampleZeroAlpha,
RoundOutputAfterDithering,
SanitizeAMDGPURendererString,
ScalarizeVecAndMatConstructorArgs,
SelectViewInGeometryShader,
SetDataFasterThanImageUpload,
SetPrimitiveRestartFixedIndexForDrawArrays,
SetZeroLevelBeforeGenerateMipmap,
ShiftInstancedArrayDataWithOffset,
SingleThreadedTextureDecompression,
SkipVSConstantRegisterZero,
SlowAsyncCommandQueueForTesting,
SlowDownMonolithicPipelineCreationForTesting,
SupportsAndroidHardwareBuffer,
SupportsAndroidNativeFenceSync,
SupportsBindMemory2,
SupportsBlendOperationAdvanced,
SupportsColorWriteEnable,
SupportsComputeTranscodeEtcToBc,
SupportsCustomBorderColor,
SupportsDepthClampZeroOne,
SupportsDepthClipControl,
SupportsDepthStencilIndependentResolveNone,
SupportsDepthStencilResolve,
SupportsExtendedDynamicState,
SupportsExtendedDynamicState2,
SupportsExternalFenceCapabilities,
SupportsExternalFenceFd,
SupportsExternalFormatResolve,
SupportsExternalMemoryDmaBufAndModifiers,
SupportsExternalMemoryFd,
SupportsExternalMemoryFuchsia,
SupportsExternalMemoryHost,
SupportsExternalSemaphoreCapabilities,
SupportsExternalSemaphoreFd,
SupportsExternalSemaphoreFuchsia,
SupportsFormatFeatureFlags2,
SupportsFoveatedRendering,
SupportsFragmentShaderInterlockARB,
SupportsFragmentShaderInterlockNV,
SupportsFragmentShaderOrderingINTEL,
SupportsFragmentShaderPixelInterlock,
SupportsFragmentShadingRate,
SupportsFullScreenExclusive,
SupportsGeometryStreamsCapability,
SupportsGetMemoryRequirements2,
SupportsGGPFrameToken,
SupportsGraphicsPipelineLibrary,
SupportsHostImageCopy,
SupportsHostQueryReset,
SupportsImage2dViewOf3d,
SupportsImageCubeArray,
SupportsImageFormatList,
SupportsImagelessFramebuffer,
SupportsIncrementalPresent,
SupportsIndexTypeUint8,
SupportsLegacyDithering,
SupportsLockSurfaceExtension,
SupportsLogicOpDynamicState,
SupportsMemoryBudget,
SupportsMixedReadWriteDepthStencilLayouts,
SupportsMultiDrawIndirect,
SupportsMultisampledRenderToSingleSampled,
SupportsMultisampledRenderToSingleSampledGOOGLEX,
SupportsMultiview,
SupportsNonConstantLoopIndexing,
SupportsPipelineCreationFeedback,
SupportsPipelineProtectedAccess,
SupportsPipelineRobustness,
SupportsPipelineStatisticsQuery,
SupportsPortabilityEnumeration,
SupportsPresentation,
SupportsPrimitivesGeneratedQuery,
SupportsPrimitiveTopologyListRestart,
SupportsProtectedMemory,
SupportsRasterizationOrderAttachmentAccess,
SupportsRenderpass2,
SupportsRenderPassLoadStoreOpNone,
SupportsRenderPassStoreOpNone,
SupportsSampler2dViewOf3d,
SupportsSamplerMirrorClampToEdge,
SupportsShaderFloat16,
SupportsShaderFramebufferFetch,
SupportsShaderFramebufferFetchEXT,
SupportsShaderFramebufferFetchNonCoherent,
SupportsShaderFramebufferFetchNonCoherentEXT,
SupportsShaderNonSemanticInfo,
SupportsShaderPixelLocalStorageEXT,
SupportsShaderStencilExport,
SupportsSharedPresentableImageExtension,
SupportsSurfaceCapabilities2Extension,
SupportsSurfacelessQueryExtension,
SupportsSurfaceProtectedCapabilitiesExtension,
SupportsSurfaceProtectedSwapchains,
SupportsSwapchainMaintenance1,
SupportsTimelineSemaphore,
SupportsTimestampSurfaceAttribute,
SupportsTransformFeedbackExtension,
SupportsVertexInputDynamicState,
SupportsYUVSamplerConversion,
SupportsYuvTarget,
SwapbuffersOnFlushOrFinishWithSingleBuffer,
SyncMonolithicPipelinesToBlobCache,
SyncVertexArraysToDefault,
UnbindFBOBeforeSwitchingContext,
UncurrentEglSurfaceUponSurfaceDestroy,
UnfoldShortCircuits,
UnpackLastRowSeparatelyForPaddingInclusion,
UnpackOverlappingRowsSeparatelyUnpackBuffer,
UnsizedSRGBReadPixelsDoesntTransform,
UploadDataToIosurfacesWithStagingBuffers,
UploadTextureDataInChunks,
UseCullModeDynamicState,
UseDepthBiasEnableDynamicState,
UseDepthCompareOpDynamicState,
UseDepthTestEnableDynamicState,
UseDepthWriteEnableDynamicState,
UseFrontFaceDynamicState,
UseInstancedPointSpriteEmulation,
UseIntermediateTextureForGenerateMipmap,
UseMultipleDescriptorsForExternalFormats,
UseNonZeroStencilWriteMaskStaticState,
UsePrimitiveRestartEnableDynamicState,
UseRasterizerDiscardEnableDynamicState,
UseResetCommandBufferBitForSecondaryPools,
UseShadowBuffersWhenAppropriate,
UseStencilOpDynamicState,
UseStencilTestEnableDynamicState,
UseSystemMemoryForConstantBuffers,
UseUnusedBlocksWithStandardOrSharedLayout,
UseVertexInputBindingStrideDynamicState,
UseVmaForImageSuballocation,
VaryingsRequireMatchingPrecisionInSpirv,
VertexIDDoesNotIncludeBaseVertex,
WaitIdleBeforeSwapchainRecreation,
WarmUpPipelineCacheAtLink,
WriteHelperSampleMask,
ZeroMaxLodWorkaround,
InvalidEnum,
EnumCount = InvalidEnum,
};
ANGLE_UTIL_EXPORT extern const char *GetFeatureName(Feature feature);
} // namespace angle
#endif // ANGLE_SRC_TESTS_TEST_UTIL_AUTOGEN_ANGLE_FEATURES_AUTOGEN_H_