• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // GENERATED FILE - DO NOT EDIT.
2 // Generated by gen_features.py using data from *_features.json.
3 //
4 // Copyright 2022 The ANGLE Project Authors. All rights reserved.
5 // Use of this source code is governed by a BSD-style license that can be
6 // found in the LICENSE file.
7 //
8 // angle_features_autogen.h: List of ANGLE features to help enable/disable them in tests.
9 
10 #ifndef ANGLE_SRC_TESTS_TEST_UTIL_AUTOGEN_ANGLE_FEATURES_AUTOGEN_H_
11 #define ANGLE_SRC_TESTS_TEST_UTIL_AUTOGEN_ANGLE_FEATURES_AUTOGEN_H_
12 
13 #include "../util_export.h"
14 
15 namespace angle
16 {
17 enum class Feature
18 {
19     AddAndTrueToLoopCondition,
20     AddMockTextureNoRenderTarget,
21     AdjustClearColorPrecision,
22     AdjustSrcDstRegionForBlitFramebuffer,
23     AllocateNonZeroMemory,
24     AllowAstcFormats,
25     AllowBufferReadWrite,
26     AllowClearForRobustResourceInit,
27     AllowCompressedFormats,
28     AllowES3OnFL100,
29     AllowETCFormats,
30     AllowGenerateMipmapWithCompute,
31     AllowGenMultipleMipsPerPass,
32     AllowHostImageCopyDespiteNonIdenticalLayout,
33     AllowInlineConstVertexData,
34     AllowMultisampledRenderToTextureEmulation,
35     AllowMultisampleStoreAndResolve,
36     AllowPipelineStatisticsForPrimitivesGeneratedQuery,
37     AllowRenderpassWithoutAttachment,
38     AllowRuntimeSamplerCompareMode,
39     AllowSamplerCompareGradient,
40     AllowSeparateDepthStencilBuffers,
41     AllowTranslateUniformBlockToStructuredBuffer,
42     AlwaysCallUseProgramAfterLink,
43     AlwaysEnableEmulatedMultidrawExtensions,
44     AlwaysPreferStagedTextureUploads,
45     AlwaysRunLinkSubJobsThreaded,
46     AlwaysUnbindFramebufferTexture2D,
47     AlwaysUseManagedStorageModeForBuffers,
48     AlwaysUseSharedStorageModeForBuffers,
49     AlwaysUseStagedBufferUpdates,
50     AppendAliasedMemoryDecorations,
51     AsyncCommandBufferResetAndGarbageCleanup,
52     Avoid1BitAlphaTextureFormats,
53     AvoidBindFragDataLocation,
54     AvoidOpSelectWithMismatchingRelaxedPrecision,
55     AvoidStencilTextureSwizzle,
56     BgraTexImageFormatsBroken,
57     BindCompleteFramebufferForTimerQueries,
58     BindTransformFeedbackBufferBeforeBindBufferRange,
59     BorderColorSrgb,
60     BottomLeftOriginPresentRegionRectangles,
61     BresenhamLineRasterization,
62     CacheCompiledShader,
63     CallClearTwice,
64     ClampArrayAccess,
65     ClampFragDepth,
66     ClampMscRate,
67     ClampPointSize,
68     ClDumpVkSpirv,
69     ClearsWithGapsNeedFlush,
70     ClearToZeroOrOneBroken,
71     ClipSrcRegionForBlitFramebuffer,
72     CompileJobIsThreadSafe,
73     CompressVertexData,
74     CopyIOSurfaceToNonIOSurfaceForReadOptimization,
75     CopyTextureToBufferForReadOptimization,
76     CorruptProgramBinaryForTesting,
77     DecodeEncodeSRGBForGenerateMipmap,
78     DepthStencilBlitExtraCopy,
79     DescriptorSetCache,
80     DestroyOldSwapchainInSharedPresentMode,
81     DisableAnisotropicFiltering,
82     DisableB5G6R5Support,
83     DisableBaseInstanceVertex,
84     DisableBlendEquationAdvanced,
85     DisableBlendFuncExtended,
86     DisableClipControl,
87     DisableDepthStencilResolveThroughAttachment,
88     DisableDrawBuffersIndexed,
89     DisableFlippingBlitWithCommand,
90     DisableGPUSwitchingSupport,
91     DisableMetalOnNvidia,
92     DisableMultisampledRenderToTexture,
93     DisableNativeParallelCompile,
94     DisablePipelineCacheLoadForTesting,
95     DisableProgramBinary,
96     DisableProgramCaching,
97     DisableProgramCachingForTransformFeedback,
98     DisableProgrammableBlending,
99     DisableRasterizerOrderViews,
100     DisableRasterOrderGroups,
101     DisableRenderSnorm,
102     DisableRWTextureTier2Support,
103     DisableSemaphoreFd,
104     DisableSeparateShaderObjects,
105     DisableStagedInitializationOfPackedTextureFormats,
106     DisableSyncControlSupport,
107     DisableTextureClampToBorder,
108     DisableTextureMirrorClampToEdge,
109     DisableTiledRendering,
110     DisableTimestampQueries,
111     DisallowMixedDepthStencilLoadOpNoneAndLoad,
112     DoesSRGBClearsOnLinearFramebufferAttachments,
113     DontInitializeUninitializedLocals,
114     DontUseLoopsToInitializeVariables,
115     DoubleDepthBiasConstantFactor,
116     DoWhileGLSLCausesGPUHang,
117     DumpShaderSource,
118     DumpTranslatedShaders,
119     EglColorspaceAttributePassthrough,
120     EmulateAbsIntFunction,
121     EmulateAdvancedBlendEquations,
122     EmulateAlphaToCoverage,
123     EmulateAtan2Float,
124     EmulateClipDistanceState,
125     EmulateClipOrigin,
126     EmulateCopyTexImage2D,
127     EmulateCopyTexImage2DFromRenderbuffers,
128     EmulateDithering,
129     EmulateDontCareLoadWithRandomClear,
130     EmulatedPrerotation180,
131     EmulatedPrerotation270,
132     EmulatedPrerotation90,
133     EmulateImmutableCompressedTexture3D,
134     EmulateIsnanFloat,
135     EmulateMaxVertexAttribStride,
136     EmulatePackSkipRowsAndPackSkipPixels,
137     EmulatePixelLocalStorage,
138     EmulatePrimitiveRestartFixedIndex,
139     EmulateR32fImageAtomicExchange,
140     EmulateRGB10,
141     EmulateTinyStencilTextures,
142     EmulateTransformFeedback,
143     EnableAdditionalBlendFactorsForDithering,
144     EnableAsyncPipelineCacheCompression,
145     EnableCaptureLimits,
146     EnableInMemoryMtlLibraryCache,
147     EnableMergeClientAttribBuffer,
148     EnableMultisampledRenderToTexture,
149     EnableMultisampledRenderToTextureOnNonTilers,
150     EnableParallelCompileAndLink,
151     EnableParallelMtlLibraryCompilation,
152     EnablePipelineCacheDataCompression,
153     EnablePortabilityEnumeration,
154     EnablePrecisionQualifiers,
155     EnablePreRotateSurfaces,
156     EnableProgramBinaryForCapture,
157     EnableShaderSubstitution,
158     EnableTimestampQueries,
159     EnableTranslatedShaderSubstitution,
160     EnsureNonEmptyBufferIsBoundForDraw,
161     ExpandIntegerPowExpressions,
162     ExplicitFragmentLocations,
163     ExplicitlyCastMediumpFloatTo16Bit,
164     ExplicitlyEnablePerSampleShading,
165     ExposeES32ForTesting,
166     ExposeNonConformantExtensionsAndVersions,
167     FinishDoesNotCauseQueriesToBeAvailable,
168     FlushAfterEndingTransformFeedback,
169     FlushAfterStreamVertexData,
170     FlushBeforeDeleteTextureIfCopiedTo,
171     FlushOnFramebufferChange,
172     ForceAtomicValueResolution,
173     ForceBufferGPUStorage,
174     ForceContinuousRefreshOnSharedPresent,
175     ForceD16TexFilter,
176     ForceD24S8AsUnsupported,
177     ForceDepthAttachmentInitOnClear,
178     ForceDisableFullScreenExclusive,
179     ForceFallbackFormat,
180     ForceFlushAfterDrawcallUsingShadowmap,
181     ForceFragmentShaderPrecisionHighpToMediump,
182     ForceGlErrorChecking,
183     ForceInitShaderVariables,
184     ForceMaxCombinedShaderOutputResources,
185     ForceMaxUniformBufferSize16KB,
186     ForceMinimumMaxVertexAttributes,
187     ForceNearestFiltering,
188     ForceNearestMipFiltering,
189     ForceNonCSBaseMipmapGeneration,
190     ForceRobustResourceInit,
191     ForceSampleUsageForAhbBackedImages,
192     ForceSubmitImmutableTextureUpdates,
193     ForceTextureLodOffset1,
194     ForceTextureLodOffset2,
195     ForceTextureLodOffset3,
196     ForceTextureLodOffset4,
197     ForceWaitForSubmissionToCompleteForQueryResult,
198     GenerateFragmentShadingRateAttchementWithCpu,
199     GenerateShareableShaders,
200     GetDimensionsIgnoresBaseLevel,
201     HasBaseVertexInstancedDraw,
202     HasBlobCacheThatEvictsOldItemsFirst,
203     HasCheapRenderPass,
204     HasDepthAutoResolve,
205     HasEvents,
206     HasExplicitMemBarrier,
207     HasNonUniformDispatch,
208     HasShaderStencilOutput,
209     HasStencilAutoResolve,
210     HasTextureSwizzle,
211     InitFragmentOutputVariables,
212     InitializeCurrentVertexAttributes,
213     InjectAsmStatementIntoLoopBodies,
214     IntelDisableFastMath,
215     IntelExplicitBoolCastWorkaround,
216     KeepBufferShadowCopy,
217     LimitMax3dArrayTextureSizeTo1024,
218     LimitMaxColorTargetBitsForTesting,
219     LimitMaxDrawBuffersForTesting,
220     LimitMaxMSAASamplesTo4,
221     LimitMaxStorageBufferSize,
222     LimitSampleCountTo2,
223     LimitWebglMaxTextureSizeTo4096,
224     LimitWebglMaxTextureSizeTo8192,
225     LinkJobIsThreadSafe,
226     LogMemoryReportCallbacks,
227     LogMemoryReportStats,
228     LoseContextOnOutOfMemory,
229     MapUnspecifiedColorSpaceToPassThrough,
230     MergeProgramPipelineCachesToGlobalCache,
231     MrtPerfWorkaround,
232     MultisampleColorFormatShaderReadWorkaround,
233     MutableMipmapTextureUpload,
234     OverrideSurfaceFormatRGB8ToRGBA8,
235     PackLastRowSeparatelyForPaddingInclusion,
236     PackOverlappingRowsSeparatelyPackBuffer,
237     PadBuffersToMaxVertexAttribStride,
238     PassHighpToPackUnormSnormBuiltins,
239     PerFrameWindowSizeQuery,
240     PermanentlySwitchToFramebufferFetchMode,
241     PersistentlyMappedBuffers,
242     PreAddTexelFetchOffsets,
243     PreemptivelyStartProvokingVertexCommandBuffer,
244     PreferAggregateBarrierCalls,
245     PreferCachedNoncoherentForDynamicStreamBufferUsage,
246     PreferCpuForBuffersubdata,
247     PreferCPUForBufferSubData,
248     PreferDeviceLocalMemoryHostVisible,
249     PreferDoubleBufferSwapchainOnFifoMode,
250     PreferDrawClearOverVkCmdClearAttachments,
251     PreferDriverUniformOverSpecConst,
252     PreferDynamicRendering,
253     PreferHostCachedForNonStaticBufferUsage,
254     PreferLinearFilterForYUV,
255     PreferMonolithicPipelinesOverLibraries,
256     PreferMSRTSSFlagByDefault,
257     PreferSkippingInvalidateForEmulatedFormats,
258     PreferSubmitAtFBOBoundary,
259     PreferSubmitOnAnySamplesPassedQueryEnd,
260     PreTransformTextureCubeGradDerivatives,
261     PromotePackedFormatsTo8BitPerChannel,
262     ProvokingVertex,
263     QueryCounterBitsGeneratesErrors,
264     ReadPixelsUsingImplementationColorReadFormatForNorm16,
265     ReapplyUBOBindingsAfterUsingBinaryProgram,
266     RegenerateStructNames,
267     RejectWebglShadersWithUndefinedBehavior,
268     RemoveDynamicIndexingOfSwizzledVector,
269     RemoveInvariantAndCentroidForESSL3,
270     RequireGpuFamily2,
271     RescopeGlobalVariables,
272     ResetTexImage2DBaseLevel,
273     ResyncDepthRangeOnClipControl,
274     RetainSPIRVDebugInfo,
275     RewriteFloatUnaryMinusOperator,
276     RewriteRepeatedAssignToSwizzled,
277     RewriteRowMajorMatrices,
278     RewriteUnaryMinusOperator,
279     RGBA4IsNotSupportedForColorRendering,
280     RGBDXT1TexturesSampleZeroAlpha,
281     RoundOutputAfterDithering,
282     SanitizeAMDGPURendererString,
283     ScalarizeVecAndMatConstructorArgs,
284     SelectViewInGeometryShader,
285     SetDataFasterThanImageUpload,
286     SetPrimitiveRestartFixedIndexForDrawArrays,
287     SetZeroLevelBeforeGenerateMipmap,
288     ShiftInstancedArrayDataWithOffset,
289     SingleThreadedTextureDecompression,
290     SkipPipelineCacheSerialization,
291     SkipVSConstantRegisterZero,
292     SlowDownMonolithicPipelineCreationForTesting,
293     SrgbBlendingBroken,
294     Supports16BitInputOutput,
295     Supports16BitPushConstant,
296     Supports16BitStorageBuffer,
297     Supports16BitUniformAndStorageBuffer,
298     Supports8BitPushConstant,
299     Supports8BitStorageBuffer,
300     Supports8BitUniformAndStorageBuffer,
301     SupportsAndroidHardwareBuffer,
302     SupportsAndroidNativeFenceSync,
303     SupportsAngleRgbxInternalFormat,
304     SupportsAppleClipDistance,
305     SupportsAstcSliced3d,
306     SupportsBindMemory2,
307     SupportsBlendOperationAdvanced,
308     SupportsBlendOperationAdvancedCoherent,
309     SupportsColorWriteEnable,
310     SupportsComputeTranscodeEtcToBc,
311     SupportsCustomBorderColor,
312     SupportsDenormFtzFp16,
313     SupportsDenormFtzFp32,
314     SupportsDenormFtzFp64,
315     SupportsDenormPreserveFp16,
316     SupportsDenormPreserveFp32,
317     SupportsDenormPreserveFp64,
318     SupportsDepthClampZeroOne,
319     SupportsDepthClipControl,
320     SupportsDepthStencilIndependentResolveNone,
321     SupportsDepthStencilResolve,
322     SupportsDeviceFault,
323     SupportsDynamicRendering,
324     SupportsDynamicRenderingLocalRead,
325     SupportsExtendedDynamicState,
326     SupportsExtendedDynamicState2,
327     SupportsExternalFenceCapabilities,
328     SupportsExternalFenceFd,
329     SupportsExternalFormatResolve,
330     SupportsExternalMemoryDmaBufAndModifiers,
331     SupportsExternalMemoryFd,
332     SupportsExternalMemoryFuchsia,
333     SupportsExternalMemoryHost,
334     SupportsExternalSemaphoreCapabilities,
335     SupportsExternalSemaphoreFd,
336     SupportsExternalSemaphoreFuchsia,
337     SupportsFormatFeatureFlags2,
338     SupportsFoveatedRendering,
339     SupportsFragmentShaderInterlockARB,
340     SupportsFragmentShaderInterlockNV,
341     SupportsFragmentShaderOrderingINTEL,
342     SupportsFragmentShaderPixelInterlock,
343     SupportsFragmentShadingRate,
344     SupportsFullScreenExclusive,
345     SupportsGeometryStreamsCapability,
346     SupportsGetMemoryRequirements2,
347     SupportsGraphicsPipelineLibrary,
348     SupportsHostImageCopy,
349     SupportsHostQueryReset,
350     SupportsImage2dViewOf3d,
351     SupportsImageCompressionControl,
352     SupportsImageCompressionControlSwapchain,
353     SupportsImageCubeArray,
354     SupportsImageFormatList,
355     SupportsImagelessFramebuffer,
356     SupportsIncrementalPresent,
357     SupportsIndexTypeUint8,
358     SupportsLegacyDithering,
359     SupportsLockSurfaceExtension,
360     SupportsLogicOpDynamicState,
361     SupportsMaintenance5,
362     SupportsMemoryBudget,
363     SupportsMultiDrawIndirect,
364     SupportsMultisampledRenderToSingleSampled,
365     SupportsMultiview,
366     SupportsNonConstantLoopIndexing,
367     SupportsPipelineCreationFeedback,
368     SupportsPipelineProtectedAccess,
369     SupportsPipelineRobustness,
370     SupportsPipelineStatisticsQuery,
371     SupportsPortabilityEnumeration,
372     SupportsPresentation,
373     SupportsPrimitivesGeneratedQuery,
374     SupportsPrimitiveTopologyListRestart,
375     SupportsProtectedMemory,
376     SupportsRasterizationOrderAttachmentAccess,
377     SupportsRenderpass2,
378     SupportsRenderPassLoadStoreOpNone,
379     SupportsRenderPassStoreOpNone,
380     SupportsRoundingModeRteFp16,
381     SupportsRoundingModeRteFp32,
382     SupportsRoundingModeRteFp64,
383     SupportsRoundingModeRtzFp16,
384     SupportsRoundingModeRtzFp32,
385     SupportsRoundingModeRtzFp64,
386     SupportsSampler2dViewOf3d,
387     SupportsSamplerMirrorClampToEdge,
388     SupportsShaderFloat16,
389     SupportsShaderFloat64,
390     SupportsShaderFramebufferFetch,
391     SupportsShaderFramebufferFetchDepthStencil,
392     SupportsShaderFramebufferFetchEXT,
393     SupportsShaderFramebufferFetchNonCoherent,
394     SupportsShaderFramebufferFetchNonCoherentEXT,
395     SupportsShaderInt8,
396     SupportsShaderNonSemanticInfo,
397     SupportsShaderStencilExport,
398     SupportsSharedPresentableImageExtension,
399     SupportsSignedZeroInfNanPreserveFp16,
400     SupportsSignedZeroInfNanPreserveFp32,
401     SupportsSignedZeroInfNanPreserveFp64,
402     SupportsSPIRV14,
403     SupportsSurfaceCapabilities2Extension,
404     SupportsSurfacelessQueryExtension,
405     SupportsSurfaceMaintenance1,
406     SupportsSurfaceProtectedCapabilitiesExtension,
407     SupportsSurfaceProtectedSwapchains,
408     SupportsSwapchainMaintenance1,
409     SupportsSwapchainMutableFormat,
410     SupportsSynchronization2,
411     SupportsTextureCompressionAstcHdr,
412     SupportsTimelineSemaphore,
413     SupportsTimestampSurfaceAttribute,
414     SupportsTransformFeedbackExtension,
415     SupportsUniformBufferStandardLayout,
416     SupportsVertexInputDynamicState,
417     SupportsYUVSamplerConversion,
418     SupportsYuvTarget,
419     SwapbuffersOnFlushOrFinishWithSingleBuffer,
420     SyncAllVertexArraysToDefault,
421     SyncDefaultVertexArraysToDefault,
422     SyncMonolithicPipelinesToBlobCache,
423     UnbindFBOBeforeSwitchingContext,
424     UncurrentEglSurfaceUponSurfaceDestroy,
425     UnfoldShortCircuits,
426     UnpackLastRowSeparatelyForPaddingInclusion,
427     UnpackOverlappingRowsSeparatelyUnpackBuffer,
428     UnsizedSRGBReadPixelsDoesntTransform,
429     UploadDataToIosurfacesWithStagingBuffers,
430     UploadTextureDataInChunks,
431     UseCullModeDynamicState,
432     UseDepthBiasEnableDynamicState,
433     UseDepthCompareOpDynamicState,
434     UseDepthTestEnableDynamicState,
435     UseDepthWriteEnableDynamicState,
436     UseDualPipelineBlobCacheSlots,
437     UseEmptyBlobsToEraseOldPipelineCacheFromBlobCache,
438     UseFrontFaceDynamicState,
439     UseIntermediateTextureForGenerateMipmap,
440     UseMultipleDescriptorsForExternalFormats,
441     UseNonZeroStencilWriteMaskStaticState,
442     UsePrimitiveRestartEnableDynamicState,
443     UseRasterizerDiscardEnableDynamicState,
444     UseResetCommandBufferBitForSecondaryPools,
445     UseShadowBuffersWhenAppropriate,
446     UsesNativeBuiltinClKernel,
447     UseStencilOpDynamicState,
448     UseStencilTestEnableDynamicState,
449     UseSystemMemoryForConstantBuffers,
450     UseUnusedBlocksWithStandardOrSharedLayout,
451     UseVertexInputBindingStrideDynamicState,
452     UseVkEventForBufferBarrier,
453     UseVkEventForImageBarrier,
454     UseVmaForImageSuballocation,
455     VaryingsRequireMatchingPrecisionInSpirv,
456     VerifyPipelineCacheInBlobCache,
457     VertexIDDoesNotIncludeBaseVertex,
458     WaitIdleBeforeSwapchainRecreation,
459     WarmUpPipelineCacheAtLink,
460     WrapSwitchInIfTrue,
461     WriteHelperSampleMask,
462     ZeroMaxLodWorkaround,
463 
464     InvalidEnum,
465     EnumCount = InvalidEnum,
466 };
467 
468 ANGLE_UTIL_EXPORT extern const char *GetFeatureName(Feature feature);
469 
470 }  // namespace angle
471 
472 #endif  // ANGLE_SRC_TESTS_TEST_UTIL_AUTOGEN_ANGLE_FEATURES_AUTOGEN_H_
473