blob: 2e600dae25d3cad937e3d85933a18f3f0405e569 [file]
//-------------------------------------------------------------------------------------------------------
// 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
#ifdef VTUNE_PROFILING
//
// Encapsulates all VTune Chakra profiling event logging and registration etc..
//
class VTuneChakraProfile
{
public:
static void Register();
static void UnRegister();
static void LogMethodNativeLoadEvent(Js::FunctionBody* body, Js::FunctionEntryPointInfo* entryPoint);
static void LogLoopBodyLoadEvent(Js::FunctionBody* body, Js::LoopHeader* loopHeader, Js::LoopEntryPointInfo* entryPoint, uint16 loopNumber);
static const utf8char_t DynamicCode[];
static bool isJitProfilingActive;
private:
static utf8char_t* GetUrl(Js::FunctionBody* body, size_t* urlLength);
};
#endif