introduce new --dump-builtin-symbols command line
add corresponding EShMsgBuiltinSymbolTable TSymbol::dump functions have option to do "complete" print bugfix in TType::getCompleteString, structure can be null for block
This commit is contained in:
parent
0527c9db81
commit
55ba3eaf89
6 changed files with 82 additions and 19 deletions
|
|
@ -377,6 +377,8 @@ bool InitializeSymbolTables(TInfoSink& infoSink, TSymbolTable** commonTable, TS
|
|||
infoSink, commonTable, symbolTables);
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -474,6 +476,14 @@ void SetupBuiltinSymbolTable(int version, EProfile profile, const SpvVersion& sp
|
|||
glslang::ReleaseGlobalLock();
|
||||
}
|
||||
|
||||
// Function to Print all builtins
|
||||
void DumpBuiltinSymbolTable(TInfoSink& infoSink, const TSymbolTable& symbolTable)
|
||||
{
|
||||
infoSink.debug << "BuiltinSymbolTable {\n";
|
||||
symbolTable.dump(infoSink, true);
|
||||
infoSink.debug << "}\n";
|
||||
}
|
||||
|
||||
// Return true if the shader was correctly specified for version/profile/stage.
|
||||
bool DeduceVersionProfile(TInfoSink& infoSink, EShLanguage stage, bool versionNotFirst, int defaultVersion,
|
||||
EShSource source, int& version, EProfile& profile, const SpvVersion& spvVersion)
|
||||
|
|
@ -905,6 +915,10 @@ bool ProcessDeferred(
|
|||
return false;
|
||||
}
|
||||
|
||||
if (messages & EShMsgBuiltinSymbolTable) {
|
||||
DumpBuiltinSymbolTable(compiler->infoSink, *symbolTable);
|
||||
}
|
||||
|
||||
//
|
||||
// Now we can process the full shader under proper symbols and rules.
|
||||
//
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue