//------------------------------------------------------------------------------------------------------- // Copyright (C) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. //------------------------------------------------------------------------------------------------------- #pragma once class CodeGenAllocators { // emitBufferManager depends on allocator which in turn depends on pageAllocator, make sure the sequence is right private: PageAllocator pageAllocator; NoRecoverMemoryArenaAllocator allocator; public: EmitBufferManager emitBufferManager; #if !_M_X64_OR_ARM64 && _CONTROL_FLOW_GUARD bool canCreatePreReservedSegment; #endif CodeGenAllocators(AllocationPolicyManager * policyManager, Js::ScriptContext * scriptContext); ~CodeGenAllocators(); #if DBG void ClearConcurrentThreadId(); #endif };