Id makeSamplerType();
Id makeSampledImageType(Id imageType);
-#ifdef NV_EXTENSIONS
// accelerationStructureNV type
Id makeAccelerationStructureNVType();
-#endif
// For querying about types.
Id getTypeId(Id resultId) const { return module.getTypeId(resultId); }
Id component;
Id texelOut;
Id lodClamp;
-#ifdef NV_EXTENSIONS
Id granularity;
Id coarse;
-#endif
bool nonprivate;
bool volatil;
};
/* .MaxCullDistances = */ 8,
/* .MaxCombinedClipAndCullDistances = */ 8,
/* .MaxSamples = */ 4,
-#ifdef NV_EXTENSIONS
/* .maxMeshOutputVerticesNV = */ 256,
/* .maxMeshOutputPrimitivesNV = */ 512,
/* .maxMeshWorkGroupSizeX_NV = */ 32,
/* .maxTaskWorkGroupSizeY_NV = */ 1,
/* .maxTaskWorkGroupSizeZ_NV = */ 1,
/* .maxMeshViewCountNV = */ 4,
-#endif
/* .limits = */ {
/* .nonInductiveForLoops = */ 1,
return false;
}
case EbtFloat16:
- switch (from) {
#ifdef AMD_EXTENSIONS
+ switch (from) {
case EbtInt16:
case EbtUint16:
return extensionRequested(E_GL_AMD_gpu_shader_int16);
case EbtFloat16:
return extensionRequested(E_GL_AMD_gpu_shader_half_float);
-#endif
default:
- return false;
- }
+ break;
+ }
+#endif
+ return false;
case EbtUint16:
- switch (from) {
#ifdef AMD_EXTENSIONS
+ switch (from) {
case EbtInt16:
case EbtUint16:
return extensionRequested(E_GL_AMD_gpu_shader_int16);
-#endif
default:
- return false;
- }
+ break;
+ }
+#endif
+ return false;
default:
return false;
}
void boolCheck(const TSourceLoc&, const TPublicType&);
void samplerCheck(const TSourceLoc&, const TType&, const TString& identifier, TIntermTyped* initializer);
void atomicUintCheck(const TSourceLoc&, const TType&, const TString& identifier);
-#ifdef NV_EXTENSIONS
void accStructNVCheck(const TSourceLoc & loc, const TType & type, const TString & identifier);
-#endif
void transparentOpaqueCheck(const TSourceLoc&, const TType&, const TString& identifier);
void memberQualifierCheck(glslang::TPublicType&);
void globalQualifierFixCheck(const TSourceLoc&, TQualifier&);
// Determine loop control from attributes
void handleLoopAttributes(const TAttributes& attributes, TIntermNode*);
-#ifdef NV_EXTENSIONS
void resizeMeshViewDimension(const TSourceLoc&, TType&);
-#endif
+
protected:
void nonInitConstCheck(const TSourceLoc&, TString& identifier, TType& type);
void inheritGlobalDefaults(TQualifier& dst) const;