Flutter Engine
The Flutter Engine
Classes | Namespaces | Macros
compiler_timings.h File Reference
#include <memory>
#include "platform/allocation.h"
#include "vm/compiler/compiler_pass.h"
#include "vm/thread.h"
#include "vm/timer.h"

Go to the source code of this file.

Classes

class  dart::CompilerTimings
 
class  dart::CompilerTimings::Scope
 

Namespaces

namespace  dart
 

Macros

#define PRECOMPILER_TIMERS_LIST(V)
 
#define INLINING_TIMERS_LIST(V)
 
#define COMPILER_TIMERS_LIST(V)
 
#define INC(Name)   +1
 
#define DECLARE_TIMER_ID(Name)   k##Name,
 
#define TIMER_SCOPE_NAME2(counter)   timer_scope_##counter
 
#define TIMER_SCOPE_NAME(counter)   TIMER_SCOPE_NAME2(counter)
 
#define COMPILER_TIMINGS_TIMER_SCOPE(thread, timer_id)
 
#define COMPILER_TIMINGS_PASS_TIMER_SCOPE(thread, pass_id)
 
#define PRECOMPILER_TIMER_SCOPE(precompiler, timer_id)
 

Macro Definition Documentation

◆ COMPILER_TIMERS_LIST

#define COMPILER_TIMERS_LIST (   V)
Value:
PRECOMPILER_TIMERS_LIST(V) \
INLINING_TIMERS_LIST(V) \
V(BuildGraph) \
V(EmitCode) \
V(FinalizeCode)
#define COMPILER_PASS_LIST(V)
Definition: compiler_pass.h:21
T __attribute__((ext_vector_type(N))) V

Definition at line 51 of file compiler_timings.h.

◆ COMPILER_TIMINGS_PASS_TIMER_SCOPE

#define COMPILER_TIMINGS_PASS_TIMER_SCOPE (   thread,
  pass_id 
)
Value:
CompilerTimings::Scope TIMER_SCOPE_NAME(__COUNTER__)( \
thread, static_cast<CompilerTimings::TimerId>(pass_id))
#define TIMER_SCOPE_NAME(counter)

Definition at line 153 of file compiler_timings.h.

◆ COMPILER_TIMINGS_TIMER_SCOPE

#define COMPILER_TIMINGS_TIMER_SCOPE (   thread,
  timer_id 
)
Value:
CompilerTimings::Scope TIMER_SCOPE_NAME(__COUNTER__)( \
thread, CompilerTimings::k##timer_id)

Definition at line 149 of file compiler_timings.h.

◆ DECLARE_TIMER_ID

#define DECLARE_TIMER_ID (   Name)    k##Name,

Definition at line 81 of file compiler_timings.h.

◆ INC

#define INC (   Name)    +1

Definition at line 70 of file compiler_timings.h.

◆ INLINING_TIMERS_LIST

#define INLINING_TIMERS_LIST (   V)
Value:
V(CollectGraphInfo) \
V(PopulateWithICData) \
V(FindCallSites) \
V(SetInliningId) \
V(MakeInliningDecision) \
V(CheckForPragma) \
V(InlineCall) \
V(InlineRecognizedMethod) \
V(DiscoverBlocks) \
V(BuildDecisionGraph) \
V(PrepareGraphs)
#define V(name)
Definition: raw_object.h:125

Definition at line 36 of file compiler_timings.h.

◆ PRECOMPILER_TIMER_SCOPE

#define PRECOMPILER_TIMER_SCOPE (   precompiler,
  timer_id 
)
Value:
CompilerTimings::Scope TIMER_SCOPE_NAME(__COUNTER__)( \
(precompiler) -> thread(), CompilerTimings::k##timer_id)

Definition at line 157 of file compiler_timings.h.

◆ PRECOMPILER_TIMERS_LIST

#define PRECOMPILER_TIMERS_LIST (   V)
Value:
V(CompileAll) \
V(Iterate) \
V(CompileFunction) \
V(AddCalleesOf) \
V(CheckForNewDynamicFunctions) \
V(CollectCallbackFields) \
V(PrecompileConstructors) \
V(AttachOptimizedTypeTestingStub) \
V(TraceForRetainedFunctions) \
V(FinalizeDispatchTable) \
V(ReplaceFunctionStaticCallEntries) \
V(Drop) \
V(Obfuscate) \
V(Dedup) \
V(SymbolsCompact)

Definition at line 19 of file compiler_timings.h.

◆ TIMER_SCOPE_NAME

#define TIMER_SCOPE_NAME (   counter)    TIMER_SCOPE_NAME2(counter)

Definition at line 147 of file compiler_timings.h.

◆ TIMER_SCOPE_NAME2

#define TIMER_SCOPE_NAME2 (   counter)    timer_scope_##counter

Definition at line 146 of file compiler_timings.h.