blob: 4dd7a8d3b7c9d807ae0cd676e1f1e99485fd950b [file] [edit]
// 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,
AddFramebufferFetchBarrierOnUseMidRenderPass,
AddMockTextureNoRenderTarget,
AdjustClearColorPrecision,
AdjustSrcDstRegionForBlitFramebuffer,
AllocateNonZeroMemory,
AllocateNonZeroTextures,
AllowAstcFormats,
AllowBufferReadWrite,
AllowClearForRobustResourceInit,
AllowCompressedFormats,
AllowES3OnFL100,
AllowETCFormats,
AllowExtensionDisableAfterNonPpTokens,
AllowGenerateMipmapWithCompute,
AllowGenMultipleMipsPerPass,
AllowHostImageCopyAfterInitialUpload,
AllowHostImageCopyDespiteNonIdenticalLayout,
AllowInlineConstVertexData,
AllowMultisampledRenderToTextureEmulation,
AllowMultisampleStoreAndResolve,
AllowPipelineStatisticsForPrimitivesGeneratedQuery,
AllowRenderpassWithoutAttachment,
AllowRuntimeSamplerCompareMode,
AllowSamplerCompareGradient,
AllowSeparateDepthStencilBuffers,
AllowTranslateUniformBlockToStructuredBuffer,
AlwaysCallUseProgramAfterLink,
AlwaysEnableEmulatedMultidrawExtensions,
AlwaysPreferStagedTextureUploads,
AlwaysRunLinkSubJobsThreaded,
AlwaysUnbindFramebufferTexture2D,
AlwaysUseManagedStorageModeForBuffers,
AlwaysUseSharedStorageModeForBuffers,
AlwaysUseStagedBufferUpdates,
AppendAliasedMemoryDecorations,
AsyncCommandBufferReset,
AsyncGarbageCleanup,
Avoid1BitAlphaTextureFormats,
AvoidBindFragDataLocation,
AvoidImageGhostOutsideRenderPass,
AvoidInvisibleWindowSwapchainRecreate,
AvoidOpSelectWithMismatchingRelaxedPrecision,
AvoidStencilTextureSwizzle,
AvoidWaitAny,
BgraTexImageFormatsBroken,
BindCompleteFramebufferForTimerQueries,
BindTransformFeedbackBufferBeforeBindBufferRange,
BottomLeftOriginPresentRegionRectangles,
BresenhamLineRasterization,
CacheCompiledShader,
CallClearTwice,
ClampArrayAccess,
ClampFragDepth,
ClampMscRate,
ClampPointSize,
ClBestUniformFitWGS,
ClDumpVkSpirv,
ClearsWithGapsNeedFlush,
ClipCullDistanceBrokenWithPassthroughShaders,
ClipSrcRegionForBlitFramebuffer,
ClSerializedExecution,
CompileJobIsThreadSafe,
ConvertLowpAndMediumpFloatUniformsTo16Bits,
CopyIOSurfaceToNonIOSurfaceForReadOptimization,
CopyTextureToBufferForReadOptimization,
CorruptProgramBinaryForTesting,
DebugClDumpCommandStream,
DecodeEncodeSRGBForGenerateMipmap,
DepthStencilBlitExtraCopy,
DescriptorSetCache,
DestroyOldSwapchainInSharedPresentMode,
DisableAnisotropicFiltering,
DisableB5G6R5Support,
DisableBaseInstanceVertex,
DisableBlendEquationAdvanced,
DisableClearTexImageForRobustInit,
DisableClearTexture,
DisableClipControl,
DisableDepthStencilResolveThroughAttachment,
DisableDrawBuffersIndexed,
DisableGPUSwitchingSupport,
DisableMetalOnNvidia,
DisableMSAASampleCount1,
DisableMultisampledRenderToTexture,
DisableNativeParallelCompile,
DisablePassthroughShaders,
DisablePipelineCacheLoadForTesting,
DisableProgramBinary,
DisableProgramCaching,
DisableProgramCachingForTransformFeedback,
DisableProgrammableBlending,
DisableRasterizerOrderViews,
DisableRasterOrderGroups,
DisableRenderSnorm,
DisableRWTextureTier2Support,
DisableSemaphoreFd,
DisableSeparateShaderObjects,
DisableStagedInitializationOfPackedTextureFormats,
DisableSubmitCommandsOnSyncStatusCheckForTesting,
DisableSyncControlSupport,
DisableTextureClampToBorder,
DisableTextureMirrorClampToEdge,
DisableTiledRendering,
DisableTimestampQueries,
DisallowMixedDepthStencilLoadOpNoneAndLoad,
DoesSRGBClearsOnLinearFramebufferAttachments,
DontInitializeUninitializedLocals,
DontInvalidateIncompleteFBOs,
DontUseLoopsToInitializeVariables,
DoubleDepthBiasConstantFactor,
DropDepthStencilClearOnInvalidate,
DumpShaderSource,
DumpTranslatedShaders,
EglColorspaceAttributePassthrough,
EmitMaxGlsl400ForTesting,
EmulateAbsIntFunction,
EmulateAdvancedBlendEquations,
EmulateAlphaToCoverage,
EmulateAtan2Float,
EmulateClipDistanceState,
EmulateClipOrigin,
EmulateCopyTexImage2D,
EmulateCopyTexImage2DFromRenderbuffers,
EmulateDithering,
EmulateDontCareLoadWithRandomClear,
EmulatedPrerotation180,
EmulatedPrerotation270,
EmulatedPrerotation90,
EmulateImmutableCompressedTexture3D,
EmulateIsnanFloat,
EmulateMaxVertexAttribStride,
EmulatePackSkipRowsAndPackSkipPixels,
EmulatePixelLocalStorage,
EmulatePrimitiveRestartFixedIndex,
EmulateR32fImageAtomicExchange,
EmulateRGB10,
EmulateTinyStencilTextures,
EmulateTransformFeedback,
EnableAdditionalBlendFactorsForDithering,
EnableAsyncPipelineCacheCompression,
EnableCaptureLimits,
EnableCreateContextBackwardsCompatible,
EnableExtraSubmitFence,
EnableInMemoryMtlLibraryCache,
EnableMergeClientAttribBuffer,
EnableMultisampledRenderToTexture,
EnableMultisampledRenderToTextureOnNonTilers,
EnableParallelCompileAndLink,
EnableParallelMtlLibraryCompilation,
EnablePipelineCacheDataCompression,
EnablePortabilityEnumeration,
EnablePrecisionQualifiers,
EnableProgramBinaryForCapture,
EnableShaderSubstitution,
EnableTimestampQueries,
EnableTranslatedShaderSubstitution,
EnsureLoopForwardProgress,
EnsureNonEmptyBufferIsBoundForDraw,
ExpandFragmentOutputsToVec4,
ExpandIntegerPowExpressions,
ExplicitFragmentLocations,
ExplicitlyEnablePerSampleShading,
ExposeES32ForTesting,
ExposeNonConformantExtensionsAndVersions,
ExternallySynchronizePipelineCacheAccess,
FinishDoesNotCauseQueriesToBeAvailable,
FlushAfterEndingTransformFeedback,
FlushAfterStreamVertexData,
FlushBeforeDeleteTextureIfCopiedTo,
FlushOnFramebufferChange,
ForceAtomicValueResolution,
ForceBufferGPUStorage,
ForceContinuousRefreshOnSharedPresent,
ForceD16TexFilter,
ForceD24S8AsUnsupported,
ForceDebugContexts,
ForceDepthAttachmentInitOnClear,
ForceDisableFullScreenExclusive,
ForceFallbackFormat,
ForceFlushAfterDrawcallUsingShadowmap,
ForceGlErrorChecking,
ForceHostImageCopyForLuma,
ForceInitShaderVariables,
ForceLumaWorkaroundForSameTextureCopyTexImage2D,
ForceMaxCombinedShaderOutputResources,
ForceMaxUniformBufferSize16KB,
ForceMinimumMaxVertexAttributes,
ForceNearestFiltering,
ForceNearestMipFiltering,
ForceNonCSBaseMipmapGeneration,
ForcePassthroughShaders,
ForceRenderableFallbackFormat,
ForceRobustResourceInit,
ForceSampleUsageForAhbBackedImages,
ForceSizePointerForBoundVertexBuffers,
ForceSubmitExceptionsAtFBOBoundary,
ForceSubmitImmutableTextureUpdates,
ForceTextureLodOffset1,
ForceTextureLodOffset2,
ForceTextureLodOffset3,
ForceTextureLodOffset4,
ForceWaitForSubmissionToCompleteForQueryResult,
GenerateFragmentShadingRateAttchementWithCpu,
GenerateShareableShaders,
GetDimensionsIgnoresBaseLevel,
HasBaseVertexInstancedDraw,
HasBlobCacheThatEvictsOldItemsFirst,
HasCheapRenderPass,
HasDepthAutoResolve,
HasEvents,
HasExplicitMemBarrier,
HasNonUniformDispatch,
HasShaderStencilOutput,
HasStencilAutoResolve,
HasTextureSwizzle,
InitFragmentOutputVariables,
InitializeColorAttachmentWithWhite,
InitializeCurrentVertexAttributes,
InjectAsmStatementIntoLoopBodies,
IsVertexSyncDeferred,
KeepBufferShadowCopy,
LimitMax3dArrayTextureSizeTo1024,
LimitMaxBufferBytesTo1MB,
LimitMaxBufferSizeTo1gb,
LimitMaxColorTargetBitsForTesting,
LimitMaxDrawBuffersForTesting,
LimitMaxMSAASamplesTo4,
LimitMaxStorageBufferSize,
LimitMaxTextureBytesTo1MB,
LimitSampleCountTo2,
LimitWebglMaxTextureSizeTo4096,
LimitWebglMaxTextureSizeTo8192,
LinkJobIsThreadSafe,
LogMemoryReportCallbacks,
LogMemoryReportStats,
LoseContextOnOutOfMemory,
MapUnspecifiedColorSpaceToPassThrough,
MergeProgramPipelineCachesToGlobalCache,
MrtPerfWorkaround,
MultisampleColorFormatShaderReadWorkaround,
MultiviewViaViewportArray,
MutableMipmapTextureUpload,
NoperspectiveInterpolationBrokenWithPassthroughShaders,
OverrideSurfaceFormatRGB8ToRGBA8,
PackLargeRowLengthSeparatelyPackBuffer,
PackLastRowSeparatelyForPaddingInclusion,
PackOverlappingRowsSeparatelyPackBuffer,
PadBuffersToMaxVertexAttribStride,
PassHighpToPackUnormSnormBuiltins,
PermanentlySwitchToFramebufferFetchMode,
PersistentlyMappedBuffers,
PreAddTexelFetchOffsets,
PreemptivelyStartProvokingVertexCommandBuffer,
PreferAggregateBarrierCalls,
PreferBGR565ToRGB565,
PreferCachedNoncoherentForDynamicStreamBufferUsage,
PreferCpuForBuffersubdata,
PreferCPUForBufferSubData,
PreferDeviceLocalMemoryHostVisible,
PreferDoubleBufferSwapchainOnFifoMode,
PreferDrawClearOverVkCmdClearAttachments,
PreferDynamicRendering,
PreferGlobalPipelineCache,
PreferGPUForCopyBufferSubData,
PreferHostCachedForNonStaticBufferUsage,
PreferLinearFilterForYUV,
PreferMonolithicPipelinesOverLibraries,
PreferMSRTSSFlagByDefault,
PreferSkippingInvalidateForEmulatedFormats,
PreferSubmitAtFBOBoundary,
PreferSubmitOnAnySamplesPassedQueryEnd,
PreTransformTextureCubeGradDerivatives,
PromotePackedFormatsTo8BitPerChannel,
ProvokingVertex,
QueryCounterBitsGeneratesErrors,
ReadPixelsUsingImplementationColorReadFormatForNorm16,
ReapplyUBOBindingsAfterUsingBinaryProgram,
ReattachFboDepthStencilOnReallocation,
RecreateMipmapLevelsBeforeGenerate,
RecycleVkEvent,
RemoveDynamicIndexingOfSwizzledVector,
RemoveInvariantAndCentroidForESSL3,
RequireGpuFamily2,
RescopeGlobalVariables,
ResetSampleCoverageOnFBOChange,
ResetTexImage2DBaseLevel,
ResyncDepthRangeOnClipControl,
RetainSPIRVDebugInfo,
RewriteRepeatedAssignToSwizzled,
RewriteRowMajorMatrices,
RewriteUnaryMinusOperator,
RGBA4IsNotSupportedForColorRendering,
RGBDXT1TexturesSampleZeroAlpha,
RoundOutputAfterDithering,
SanitizeAMDGPURendererString,
ScalarizeVecAndMatConstructorArgs,
SelectViewInGeometryShader,
SetDataFasterThanImageUpload,
SetNeedInitOnInvalidation,
SetPrimitiveRestartFixedIndexForDrawArrays,
SetZeroLevelBeforeGenerateMipmap,
ShiftInstancedArrayDataWithOffset,
SimulateTileMemoryForTesting,
SingleThreadedTextureDecompression,
SkipPipelineCacheSerialization,
SkipVSConstantRegisterZero,
SlowDownMonolithicPipelineCreationForTesting,
SplitLevel0PboFullSubImage2D,
SrgbBlendingBroken,
SupportFragmentShadingRateExtExtensions,
Supports16BitInputOutput,
Supports16BitPushConstant,
Supports16BitStorageBuffer,
Supports16BitUniformAndStorageBuffer,
Supports8BitPushConstant,
Supports8BitStorageBuffer,
Supports8BitUniformAndStorageBuffer,
SupportsAmdShaderCoreProperties,
SupportsAndroidHardwareBuffer,
SupportsAndroidNativeFenceSync,
SupportsAngleRgbxInternalFormat,
SupportsAppleClipDistance,
SupportsAstc3d,
SupportsAstcDecodeMode,
SupportsAstcDecodeModeRgb9e5,
SupportsAstcHdr3dTextures,
SupportsAstcSliced3d,
SupportsBindMemory2,
SupportsBindVertexBuffers2,
SupportsBlendOperationAdvanced,
SupportsBlendOperationAdvancedCoherent,
SupportsBufferDeviceAddress,
SupportsClipCullDistanceInGSAndTS,
SupportsClKhrSubgroups,
SupportsColorWriteEnable,
SupportsComputeTranscodeEtcToBc,
SupportsCustomBorderColor,
SupportsDenormFtzFp16,
SupportsDenormFtzFp32,
SupportsDenormFtzFp64,
SupportsDenormPreserveFp16,
SupportsDenormPreserveFp32,
SupportsDenormPreserveFp64,
SupportsDepthClampZeroOne,
SupportsDepthClipControl,
SupportsDepthStencilIndependentResolveNone,
SupportsDepthStencilResolve,
SupportsDeviceFault,
SupportsDynamicRendering,
SupportsDynamicRenderingLocalRead,
SupportsExtendedDynamicState,
SupportsExtendedDynamicState2,
SupportsExternalFenceCapabilities,
SupportsExternalFenceFd,
SupportsExternalFormatResolve,
SupportsExternalMemoryDmaBuf,
SupportsExternalMemoryFd,
SupportsExternalMemoryFuchsia,
SupportsExternalMemoryHost,
SupportsExternalSemaphoreCapabilities,
SupportsExternalSemaphoreFd,
SupportsExternalSemaphoreFuchsia,
SupportsFormatFeatureFlags2,
SupportsFoveatedRendering,
SupportsFragmentShaderInterlockARB,
SupportsFragmentShaderInterlockNV,
SupportsFragmentShaderOrderingINTEL,
SupportsFragmentShaderPixelInterlock,
SupportsFragmentShadingRate,
SupportsFullScreenExclusive,
SupportsGeometryStreamsCapability,
SupportsGetMemoryRequirements2,
SupportsGlobalPriority,
SupportsGlobalPriorityQuery,
SupportsGraphicsPipelineLibrary,
SupportShaderPixelLocalStorageAngle,
SupportsHostImageCopy,
SupportsHostQueryReset,
SupportsImage2dViewOf3d,
SupportsImageCompressionControl,
SupportsImageCompressionControlSwapchain,
SupportsImageCubeArray,
SupportsImageDrmFormatModifier,
SupportsImageFormatList,
SupportsImagelessFramebuffer,
SupportsIncrementalPresent,
SupportsIndexTypeUint8,
SupportsLegacyDithering,
SupportsLockSurfaceExtension,
SupportsLogicOpDynamicState,
SupportsMaintenance5,
SupportsMaintenance9,
SupportsMemoryBudget,
SupportsMultiDrawIndirect,
SupportsMultisampledRenderToSingleSampled,
SupportsMultiview,
SupportsMultiviewMultisampleRenderToTexture,
SupportsPipelineCreationFeedback,
SupportsPipelineProtectedAccess,
SupportsPipelineRobustness,
SupportsPipelineStatisticsQuery,
SupportsPortabilityEnumeration,
SupportsPresentation,
SupportsPrimitiveFragmentShadingRate,
SupportsPrimitivesGeneratedQuery,
SupportsPrimitiveTopologyListRestart,
SupportsProtectedMemory,
SupportsRasterizationOrderAttachmentAccess,
SupportsRenderpass2,
SupportsRenderPassLoadStoreOpNone,
SupportsRenderPassStoreOpNone,
SupportsRoundingModeRteFp16,
SupportsRoundingModeRteFp32,
SupportsRoundingModeRteFp64,
SupportsRoundingModeRtzFp16,
SupportsRoundingModeRtzFp32,
SupportsRoundingModeRtzFp64,
SupportsSampler2dViewOf3d,
SupportsSamplerMirrorClampToEdge,
SupportsShaderAtomicInt64,
SupportsShaderDemoteToHelperInvocation,
SupportsShaderFloat16,
SupportsShaderFloat64,
SupportsShaderFramebufferFetch,
SupportsShaderFramebufferFetchDepthStencil,
SupportsShaderFramebufferFetchEXT,
SupportsShaderFramebufferFetchNonCoherent,
SupportsShaderFramebufferFetchNonCoherentEXT,
SupportsShaderInt8,
SupportsShaderIntegerDotProduct,
SupportsShaderNonSemanticInfo,
SupportsShaderStencilExport,
SupportsSharedPresentableImageExtension,
SupportsSignedZeroInfNanPreserveFp16,
SupportsSignedZeroInfNanPreserveFp32,
SupportsSignedZeroInfNanPreserveFp64,
SupportsSPIRV14,
SupportsSurfaceCapabilities2Extension,
SupportsSurfacelessQueryExtension,
SupportsSurfaceMaintenance1,
SupportsSurfaceProtectedCapabilitiesExtension,
SupportsSurfaceProtectedSwapchains,
SupportsSwapchainMaintenance1,
SupportsSwapchainMutableFormat,
SupportsSynchronization2,
SupportsTextureCompressionAstcHdr,
SupportsTileMemoryHeap,
SupportsTimelineSemaphore,
SupportsTimestampSurfaceAttribute,
SupportsTransformFeedbackExtension,
SupportsUnifiedImageLayouts,
SupportsUniformBufferStandardLayout,
SupportsVertexInputDynamicState,
SupportsYUVSamplerConversion,
SupportsYuvTarget,
SwapbuffersOnFlushOrFinishWithSingleBuffer,
SwapchainDeferredMemoryAllocation,
SyncAllVertexArraysToDefault,
SyncDefaultVertexArraysToDefault,
SyncMonolithicPipelinesToBlobCache,
SyncPipelineCacheToBlobCacheEveryFrame,
UnbindFBOBeforeSwitchingContext,
UncurrentEglSurfaceUponSurfaceDestroy,
UnfoldShortCircuits,
UnpackLastRowSeparatelyForPaddingInclusion,
UnpackOverlappingRowsSeparatelyUnpackBuffer,
UnsizedSRGBReadPixelsDoesntTransform,
UploadDataToIosurfacesWithStagingBuffers,
UploadTextureDataInChunks,
UseCullModeDynamicState,
UseDepthBiasEnableDynamicState,
UseDepthCompareOpDynamicState,
UseDepthTestEnableDynamicState,
UseDepthWriteEnableDynamicState,
UseDualPipelineBlobCacheSlots,
UseEmptyBlobsToEraseOldPipelineCacheFromBlobCache,
UseFrontFaceDynamicState,
UseIntermediateTextureForGenerateMipmap,
UseIr,
UseLargeSizeForDynamicBuffers,
UseMultipleDescriptorsForExternalFormats,
UseNonZeroStencilWriteMaskStaticState,
UsePrimitiveRestartEnableDynamicState,
UsePrimitiveTopologyDynamicState,
UseRasterizerDiscardEnableDynamicState,
UseResetCommandBufferBitForSecondaryPools,
UseShadowBuffersWhenAppropriate,
UsesNativeBuiltinClKernel,
UsesSecondComponentForStencilBorderColor,
UseStencilOpDynamicState,
UseStencilTestEnableDynamicState,
UseSystemMemoryForConstantBuffers,
UseUnusedBlocksWithStandardOrSharedLayout,
UseVertexInputBindingStrideDynamicState,
UseVkEventForBufferBarrier,
UseVkEventForImageBarrier,
UseVmaForImageSuballocation,
ValidateMaxPerStageUniformBlocksAtCompileTime,
VaryingsRequireMatchingPrecisionInSpirv,
VerifyPipelineCacheInBlobCache,
VertexIDDoesNotIncludeBaseVertex,
WarmUpPipelineCacheAtLink,
WrapSwitchInIfTrue,
WriteHelperSampleMask,
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_