summaryrefslogtreecommitdiff
path: root/Source/ThirdParty/ANGLE/src/compiler/translator/InitializeDll.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/ThirdParty/ANGLE/src/compiler/translator/InitializeDll.cpp')
-rw-r--r--Source/ThirdParty/ANGLE/src/compiler/translator/InitializeDll.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/Source/ThirdParty/ANGLE/src/compiler/translator/InitializeDll.cpp b/Source/ThirdParty/ANGLE/src/compiler/translator/InitializeDll.cpp
new file mode 100644
index 000000000..713965389
--- /dev/null
+++ b/Source/ThirdParty/ANGLE/src/compiler/translator/InitializeDll.cpp
@@ -0,0 +1,38 @@
+//
+// Copyright (c) 2002-2010 The ANGLE Project Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+//
+
+#include "compiler/translator/Cache.h"
+#include "compiler/translator/InitializeDll.h"
+#include "compiler/translator/InitializeGlobals.h"
+#include "compiler/translator/InitializeParseContext.h"
+
+#include "common/platform.h"
+
+#include <assert.h>
+
+bool InitProcess()
+{
+ if (!InitializePoolIndex()) {
+ assert(0 && "InitProcess(): Failed to initalize global pool");
+ return false;
+ }
+
+ if (!InitializeParseContextIndex()) {
+ assert(0 && "InitProcess(): Failed to initalize parse context");
+ return false;
+ }
+
+ TCache::initialize();
+
+ return true;
+}
+
+void DetachProcess()
+{
+ FreeParseContextIndex();
+ FreePoolIndex();
+ TCache::destroy();
+}