|
@@ -1602,8 +1602,9 @@ public:
|
|
|
};
|
|
|
|
|
|
TShader::TShader(EShLanguage s)
|
|
|
- : pool(0), stage(s), lengths(nullptr), stringNames(nullptr), preamble("")
|
|
|
+ : stage(s), lengths(nullptr), stringNames(nullptr), preamble("")
|
|
|
{
|
|
|
+ pool = new TPoolAllocator;
|
|
|
infoSink = new TInfoSink;
|
|
|
compiler = new TDeferredCompiler(stage, *infoSink);
|
|
|
intermediate = new TIntermediate(s);
|
|
@@ -1707,7 +1708,6 @@ bool TShader::parse(const TBuiltInResource* builtInResources, int defaultVersion
|
|
|
if (! InitThread())
|
|
|
return false;
|
|
|
|
|
|
- pool = new TPoolAllocator();
|
|
|
SetThreadPoolAllocator(pool);
|
|
|
if (! preamble)
|
|
|
preamble = "";
|
|
@@ -1731,7 +1731,6 @@ bool TShader::preprocess(const TBuiltInResource* builtInResources,
|
|
|
if (! InitThread())
|
|
|
return false;
|
|
|
|
|
|
- pool = new TPoolAllocator();
|
|
|
SetThreadPoolAllocator(pool);
|
|
|
if (! preamble)
|
|
|
preamble = "";
|
|
@@ -1752,8 +1751,9 @@ const char* TShader::getInfoDebugLog()
|
|
|
return infoSink->debug.c_str();
|
|
|
}
|
|
|
|
|
|
-TProgram::TProgram() : pool(0), reflection(0), ioMapper(nullptr), linked(false)
|
|
|
+TProgram::TProgram() : reflection(0), ioMapper(nullptr), linked(false)
|
|
|
{
|
|
|
+ pool = new TPoolAllocator;
|
|
|
infoSink = new TInfoSink;
|
|
|
for (int s = 0; s < EShLangCount; ++s) {
|
|
|
intermediate[s] = 0;
|
|
@@ -1788,7 +1788,6 @@ bool TProgram::link(EShMessages messages)
|
|
|
|
|
|
bool error = false;
|
|
|
|
|
|
- pool = new TPoolAllocator();
|
|
|
SetThreadPoolAllocator(pool);
|
|
|
|
|
|
for (int s = 0; s < EShLangCount; ++s) {
|