Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 //
2 // Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
7 #include "compiler/InitializeParseContext.h"
9 #include "compiler/osinclude.h"
11 OS_TLSIndex GlobalParseContextIndex = OS_INVALID_TLS_INDEX;
13 bool InitializeParseContextIndex()
14 {
15 assert(GlobalParseContextIndex == OS_INVALID_TLS_INDEX);
17 GlobalParseContextIndex = OS_AllocTLSIndex();
18 return GlobalParseContextIndex != OS_INVALID_TLS_INDEX;
19 }
21 void FreeParseContextIndex()
22 {
23 assert(GlobalParseContextIndex != OS_INVALID_TLS_INDEX);
25 OS_FreeTLSIndex(GlobalParseContextIndex);
26 GlobalParseContextIndex = OS_INVALID_TLS_INDEX;
27 }
29 void SetGlobalParseContext(TParseContext* context)
30 {
31 assert(GlobalParseContextIndex != OS_INVALID_TLS_INDEX);
32 OS_SetTLSValue(GlobalParseContextIndex, context);
33 }
35 TParseContext* GetGlobalParseContext()
36 {
37 assert(GlobalParseContextIndex != OS_INVALID_TLS_INDEX);
38 return static_cast<TParseContext*>(OS_GetTLSValue(GlobalParseContextIndex));
39 }