#include "compiler/translator/spirv/BuiltinsWorkaround.h"
#include "angle_gl.h"
#include "compiler/translator/Symbol.h"
#include "compiler/translator/SymbolTable.h"
#include "compiler/translator/tree_util/BuiltIn.h"
namespace sh
{
namespace
{
constexpr const ImmutableString kGlInstanceIDString("gl_InstanceID");
constexpr const ImmutableString kGlVertexIDString("gl_VertexID");
class TBuiltinsWorkaround : public TIntermTraverser
{ … };
TBuiltinsWorkaround::TBuiltinsWorkaround(TSymbolTable *symbolTable, const ShCompileOptions &options)
: … { … }
void TBuiltinsWorkaround::visitSymbol(TIntermSymbol *node)
{ … }
bool TBuiltinsWorkaround::visitDeclaration(Visit, TIntermDeclaration *node)
{ … }
}
[[nodiscard]] bool ShaderBuiltinsWorkaround(TCompiler *compiler,
TIntermBlock *root,
TSymbolTable *symbolTable,
const ShCompileOptions &compileOptions)
{ … }
}