src/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
// Run at startup to warm up glslang's internals to avoid hitches on first shader compile.
Run at startup to warm up glslang's internals to avoid hitches on first shader compile.
Run at startup to warm up glslang ' s internals to avoid hitches on first shader compile .
void GlslangWarmup()
{
    ANGLE_TRACE_EVENT0("gpu.angle,startup", "GlslangWarmup");
    EShMessages messages = static_cast<EShMessages>(EShMsgSpvRules | EShMsgVulkanRules);
    const TBuiltInResource builtInResources(glslang::DefaultTBuiltInResource);
    glslang::TShader warmUpShader(EShLangVertex);
    const char *kShaderString = R"(#version 450 core
        void main(){}
    )";
    const int kShaderLength   = static_cast<int>(strlen(kShaderString));
    warmUpShader.setStringsWithLengths(&kShaderString, &kShaderLength, 1);
    warmUpShader.setEntryPoint("main");
    bool result = warmUpShader.parse(&builtInResources, 450, ECoreProfile, false, false, messages);
    ASSERT(result);
}
void GlslangWarmup ( ) { ANGLE_TRACE_EVENT0 ( " " , " " ) ; EShMessages messages = static_cast < EShMessages > ( EShMsgSpvRules | EShMsgVulkanRules ) ; const TBuiltInResource builtInResources ( glslang :: DefaultTBuiltInResource ) ; glslang :: TShader warmUpShader ( EShLangVertex ) ; const char * kShaderString = R" ( #version 450 core
        void main(){}
     ) " ; const int kShaderLength = static_cast < int > ( strlen ( kShaderString ) ) ; warmUpShader . setStringsWithLengths ( & kShaderString , & kShaderLength , 1 ) ; warmUpShader . setEntryPoint ( " " ) ; bool result = warmUpShader . parse ( & builtInResources , 450 , ECoreProfile , false , false , messages ) ; ASSERT ( result ) ; }
Run at startup to warm up glslang's internals to avoid hitches on first shader compile.
Run at startup to warm up glslang ' s internals to avoid hitches on first shader compile .
// EShMessages messages = EShMsgDefault;