v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <compiler.h>
Protected Member Functions | |
CompilationInfo (Handle< Script > script, Zone *zone) | |
CompilationInfo (Handle< SharedFunctionInfo > shared_info, Zone *zone) | |
CompilationInfo (HydrogenCodeStub *stub, Isolate *isolate, Zone *zone) | |
Definition at line 62 of file compiler.h.
CompilationInfo | ( | Handle< JSFunction > | closure, |
Zone * | zone | ||
) |
Definition at line 82 of file compiler.cc.
References CompilationInfo::zone().
|
virtual |
Definition at line 147 of file compiler.cc.
References ASSERT_EQ, DependentCode::kGroupCount, and v8::internal::NULL.
|
protected |
Definition at line 57 of file compiler.cc.
References CompilationInfo::zone().
|
protected |
Definition at line 69 of file compiler.cc.
References CompilationInfo::zone().
|
protected |
Definition at line 97 of file compiler.cc.
|
inline |
Definition at line 314 of file compiler.h.
References ASSERT, and CompilationInfo::isolate().
Referenced by DependentCode::MarkCodeForDeoptimization().
|
inline |
Definition at line 296 of file compiler.h.
|
inline |
Definition at line 280 of file compiler.h.
Referenced by OptimizedCompileJob::AbortAndDisableOptimization(), and OptimizedCompileJob::GenerateCode().
|
inline |
Definition at line 86 of file compiler.h.
Referenced by CompilationInfo::SetCachedData().
|
inline |
Definition at line 87 of file compiler.h.
Referenced by CompilationInfo::SetCachedData().
|
inline |
Definition at line 81 of file compiler.h.
Referenced by CompilationInfo::global_object(), CompilationInfo::has_global_object(), OptimizingCompilerThread::InstallOptimizedFunctions(), OptimizingCompilerThread::IsQueuedForOSR(), and CodeGenerator::PrintCode().
Definition at line 80 of file compiler.h.
Referenced by Compiler::BuildFunctionInfo(), OptimizedCompileJob::CreateGraph(), Compiler::RecordFunctionCompilation(), and CompilationInfo::SetCode().
|
inline |
Definition at line 84 of file compiler.h.
Referenced by CompilationInfo::flags(), CodeGenerator::MakeCodePrologue(), CodeGenerator::PrintCode(), and CodeStubGraphBuilderBase::stub().
Definition at line 160 of file compiler.cc.
References ASSERT, List< T, ZoneAllocationPolicy >::at(), v8::internal::dependent_code, DependentCode::ForObject(), DependentCode::kGroupCount, v8::internal::NULL, and DependentCode::UpdateToFinishedCode().
Definition at line 90 of file compiler.h.
Referenced by OptimizedCompileJob::GenerateCode(), and CompilationInfo::SetContext().
|
inline |
Definition at line 260 of file compiler.h.
References v8::internal::NULL.
Referenced by Map::AddDependentCompilationInfo(), AllocationSite::AddDependentCompilationInfo(), and PropertyCell::AddDependentCompilationInfo().
void DisableOptimization | ( | ) |
Definition at line 226 of file compiler.cc.
References Scope::HasTrivialOuterContext(), Scope::inside_with(), and Scope::outer_scope_calls_sloppy_eval().
|
inline |
Definition at line 247 of file compiler.h.
References ASSERT, and CompilationInfo::IsOptimizable().
Referenced by OptimizedCompileJob::CreateGraph(), and Compiler::GetCodeForDebugging().
|
inline |
Definition at line 85 of file compiler.h.
Referenced by CompilationInfo::SetExtension().
Code::Flags flags | ( | ) | const |
Definition at line 213 of file compiler.cc.
References CompilationInfo::code_stub(), Code::ComputeFlags(), and CompilationInfo::IsStub().
Referenced by LChunk::Codegen(), and CompilationInfo::ShouldSelfOptimize().
|
inline |
Definition at line 77 of file compiler.h.
Referenced by Scope::Analyze(), OptimizedCompileJob::CreateGraph(), FullCodeGenerator::MakeCode(), CodeGenerator::MakeCodePrologue(), CodeGenerator::PrintCode(), Rewriter::Rewrite(), AstTyper::Run(), TEST(), and TestParserSyncWithFlags().
|
inline |
Definition at line 226 of file compiler.h.
References CompilationInfo::closure(), CompilationInfo::has_global_object(), and v8::internal::NULL.
|
inline |
Definition at line 79 of file compiler.h.
Referenced by Scope::ResolveVariable(), Scope::ResolveVariablesRecursively(), and CompilationInfo::SetGlobalScope().
|
inline |
Definition at line 221 of file compiler.h.
References CompilationInfo::closure(), and v8::internal::NULL.
Referenced by CompilationInfo::global_object().
|
inline |
Definition at line 319 of file compiler.h.
References ASSERT, and CompilationInfo::isolate().
|
inline |
Definition at line 244 of file compiler.h.
Referenced by FullCodeGenerator::MakeCode().
|
inline |
Definition at line 324 of file compiler.h.
Referenced by OptimizingCompilerThread::FindReadyOSRCandidate(), and OptimizingCompilerThread::IsQueuedForOSR().
|
inline |
Definition at line 133 of file compiler.h.
References CompilationInfo::is_deferred_calling(), and CompilationInfo::is_non_deferred_calling().
|
inline |
Definition at line 141 of file compiler.h.
Referenced by CompilationInfo::is_calling().
|
inline |
Definition at line 73 of file compiler.h.
|
inline |
Definition at line 74 of file compiler.h.
|
inline |
Definition at line 76 of file compiler.h.
|
inline |
Definition at line 72 of file compiler.h.
Referenced by CompilationInfo::MarkAsEval(), CompilationInfo::MarkAsGlobal(), CompilationInfo::MarkAsInLoop(), CompilationInfo::SetCachedData(), and CompilationInfo::SetExtension().
|
inline |
Definition at line 129 of file compiler.h.
Referenced by Parser::Parser().
|
inline |
Definition at line 149 of file compiler.h.
Referenced by CompilationInfo::is_calling().
|
inline |
Definition at line 71 of file compiler.h.
References BailoutId::IsNone().
Referenced by OptimizingCompilerThread::InstallOptimizedFunctions(), OptimizingCompilerThread::QueueForOptimization(), and OptimizedCompileJob::WaitForInstall().
|
inline |
Definition at line 209 of file compiler.h.
|
inline |
Definition at line 67 of file compiler.h.
Referenced by CompilationInfo::AbortDueToDependencyChange(), Scope::Analyze(), Compiler::BuildFunctionInfo(), Compiler::GetCodeForDebugging(), Compiler::GetUnoptimizedCode(), CompilationInfo::HasAbortedDueToDependencyChange(), CodeStubGraphBuilderBase::isolate(), OptimizedCompileJob::isolate(), FullCodeGenerator::MakeCode(), CodeGenerator::MakeCodeEpilogue(), CodeGenerator::MakeCodePrologue(), CompilationInfo::object_wrapper(), CodeGenerator::PrintCode(), Compiler::RecordFunctionCompilation(), Scope::ResolveVariable(), Rewriter::Rewrite(), CompilationInfo::SetOptimizing(), and V8_FINAL< kOperandKind, kNumCachedOperands >::SetTransition().
|
inline |
Definition at line 232 of file compiler.h.
Referenced by CompilationInfo::EnableDeoptimizationSupport(), and FullCodeGenerator::MakeCode().
|
inline |
Definition at line 231 of file compiler.h.
Referenced by CodeGenerator::PrintCode(), and CompilationInfo::ShouldTrapOnDeopt().
|
inline |
Definition at line 233 of file compiler.h.
Referenced by CompilationInfo::flags(), CodeGenerator::MakeCodeEpilogue(), CodeGenerator::MakeCodePrologue(), CompilationInfo::num_heap_slots(), CompilationInfo::num_parameters(), CodeGenerator::PrintCode(), CompilationInfo::set_parameter_count(), and CompilationInfo::ShouldTrapOnDeopt().
|
inline |
Definition at line 137 of file compiler.h.
|
inline |
Definition at line 98 of file compiler.h.
References ASSERT, and CompilationInfo::is_lazy().
Referenced by Compiler::GetFunctionFromEval().
|
inline |
Definition at line 102 of file compiler.h.
References ASSERT, and CompilationInfo::is_lazy().
Referenced by Compiler::CompileScript(), Compiler::GetFunctionFromEval(), TEST(), and TestParserSyncWithFlags().
|
inline |
Definition at line 121 of file compiler.h.
References ASSERT, and CompilationInfo::is_lazy().
|
inline |
Definition at line 125 of file compiler.h.
|
inline |
Definition at line 145 of file compiler.h.
|
inline |
Definition at line 161 of file compiler.h.
|
inline |
Definition at line 153 of file compiler.h.
|
inline |
Definition at line 206 of file compiler.h.
Referenced by Compiler::GetCodeForDebugging().
|
inline |
Definition at line 212 of file compiler.h.
Referenced by Compiler::GetCodeForDebugging().
int num_heap_slots | ( | ) | const |
Definition at line 204 of file compiler.cc.
References CompilationInfo::IsStub(), Scope::num_heap_slots(), and CompilationInfo::scope().
int num_parameters | ( | ) | const |
Definition at line 194 of file compiler.cc.
References ASSERT, CompilationInfo::IsStub(), Scope::num_parameters(), and CompilationInfo::scope().
Referenced by LChunk::GetParameterStackSlot().
Definition at line 306 of file compiler.h.
References Isolate::factory(), CompilationInfo::isolate(), and Factory::NewForeign().
Referenced by Map::AddDependentCompilationInfo(), AllocationSite::AddDependentCompilationInfo(), PropertyCell::AddDependentCompilationInfo(), DependentCode::RemoveCompilationInfo(), and DependentCode::UpdateToFinishedCode().
|
inline |
Definition at line 93 of file compiler.h.
|
inline |
Definition at line 328 of file compiler.h.
Referenced by CodeGenerator::PrintCode().
|
inline |
Definition at line 91 of file compiler.h.
Referenced by HOsrBuilder::HasOsrEntryAt(), OptimizingCompilerThread::InstallOptimizedFunctions(), and CompilationInfo::SetOptimizing().
|
inline |
Definition at line 173 of file compiler.h.
void PrepareForCompilation | ( | Scope * | scope | ) |
Definition at line 249 of file compiler.cc.
References ASSERT, v8::internal::NULL, and CompilationInfo::scope().
Referenced by Scope::Analyze(), Compiler::BuildFunctionInfo(), and OptimizedCompileJob::CreateGraph().
|
inline |
Definition at line 283 of file compiler.h.
References ASSERT_NE, and Code::kPrologueOffsetNotSet.
Referenced by CodeGenerator::MakeCodeEpilogue(), and CompilationInfo::set_prologue_offset().
|
inline |
Definition at line 300 of file compiler.h.
References v8::internal::NULL.
Referenced by CpuProfiler::CodeCreateEvent().
|
inline |
Definition at line 165 of file compiler.h.
void RollbackDependencies | ( | ) |
Definition at line 177 of file compiler.cc.
References List< T, ZoneAllocationPolicy >::at(), v8::internal::dependent_code, DependentCode::ForObject(), DependentCode::kGroupCount, v8::internal::NULL, and DependentCode::RemoveCompilationInfo().
Referenced by CompilationInfoWithZone::~CompilationInfoWithZone().
|
inline |
Definition at line 272 of file compiler.h.
|
inline |
Definition at line 157 of file compiler.h.
Referenced by LChunk::set_allocated_double_registers().
|
inline |
Definition at line 78 of file compiler.h.
Referenced by Compiler::BuildFunctionInfo(), HOptimizedGraphBuilder::BuildGraph(), OptimizedCompileJob::CreateGraph(), CompilationInfo::num_heap_slots(), CompilationInfo::num_parameters(), CompilationInfo::PrepareForCompilation(), AstTyper::Run(), and CompilationInfo::ShouldSelfOptimize().
Definition at line 83 of file compiler.h.
Referenced by FullCodeGenerator::MakeCode(), CodeGenerator::PrintCode(), Compiler::RecordFunctionCompilation(), and Scope::ResolveVariable().
|
inline |
Definition at line 281 of file compiler.h.
Referenced by OptimizedCompileJob::AbortAndDisableOptimization(), OptimizedCompileJob::AbortOptimization(), HOptimizedGraphBuilder::Bailout(), OptimizedCompileJob::GenerateCode(), and LChunk::NewChunk().
|
inline |
Definition at line 255 of file compiler.h.
References ASSERT, and v8::internal::NULL.
|
inline |
Definition at line 106 of file compiler.h.
References ASSERT, and CompilationInfo::IsStub().
|
inline |
Definition at line 288 of file compiler.h.
References ASSERT_EQ, Code::kPrologueOffsetNotSet, and CompilationInfo::prologue_offset().
|
inline |
Definition at line 111 of file compiler.h.
Referenced by OptimizedCompileJob::CreateGraph().
|
inline |
Definition at line 192 of file compiler.h.
References ASSERT, CompilationInfo::cached_data(), CompilationInfo::cached_data_mode(), CompilationInfo::is_lazy(), v8::internal::NO_CACHED_DATA, and v8::internal::NULL.
Referenced by Compiler::CompileScript().
Definition at line 187 of file compiler.h.
References CompilationInfo::code().
Referenced by Compiler::BuildFunctionInfo(), OptimizedCompileJob::GenerateCode(), and FullCodeGenerator::MakeCode().
Definition at line 202 of file compiler.h.
References CompilationInfo::context().
Referenced by Compiler::CompileScript(), OptimizedCompileJob::CreateGraph(), and Compiler::GetFunctionFromEval().
|
inline |
Definition at line 188 of file compiler.h.
References ASSERT, CompilationInfo::extension(), and CompilationInfo::is_lazy().
Referenced by Compiler::CompileScript().
|
inline |
Definition at line 177 of file compiler.h.
References ASSERT, and v8::internal::NULL.
Referenced by Compiler::BuildFunctionInfo(), and OptimizedCompileJob::CreateGraph().
|
inline |
Definition at line 183 of file compiler.h.
References ASSERT, CompilationInfo::global_scope(), and v8::internal::NULL.
Definition at line 234 of file compiler.h.
References ASSERT, CompilationInfo::isolate(), Isolate::NextOptimizationId(), and CompilationInfo::osr_ast_id().
|
inline |
Definition at line 169 of file compiler.h.
Referenced by Compiler::GetFunctionFromEval().
|
inline |
Definition at line 117 of file compiler.h.
References ASSERT, v8::internal::SLOPPY, and CompilationInfo::strict_mode().
Referenced by Compiler::BuildFunctionInfo(), Compiler::CompileScript(), Compiler::GetFunctionFromEval(), and TEST().
|
inline |
Definition at line 82 of file compiler.h.
Referenced by OptimizedCompileJob::AbortAndDisableOptimization(), OptimizedCompileJob::CreateGraph(), Compiler::GetUnoptimizedCode(), HOptimizedGraphBuilder::HOptimizedGraphBuilder(), and CompilationInfo::ShouldSelfOptimize().
bool ShouldSelfOptimize | ( | ) |
Definition at line 240 of file compiler.cc.
References Scope::AllowsLazyCompilation(), CompilationInfo::flags(), v8::internal::kDontSelfOptimize, CompilationInfo::scope(), and CompilationInfo::shared_info().
|
inline |
Definition at line 216 of file compiler.h.
References CompilationInfo::IsOptimizing(), and CompilationInfo::IsStub().
|
inline |
Definition at line 75 of file compiler.h.
Referenced by CompilationInfo::SetStrictMode().
|
inline |
Definition at line 114 of file compiler.h.
Definition at line 92 of file compiler.h.
Referenced by OptimizingCompilerThread::InstallOptimizedFunctions().
|
inline |
Definition at line 70 of file compiler.h.
Referenced by Map::AddDependentCompilationInfo(), AllocationSite::AddDependentCompilationInfo(), PropertyCell::AddDependentCompilationInfo(), Scope::Analyze(), Compiler::BuildFunctionInfo(), CompilationInfo::CompilationInfo(), OptimizedCompileJob::CreateGraph(), HOptimizedGraphBuilder::HOptimizedGraphBuilder(), FullCodeGenerator::Initialize(), CodeGenerator::MakeCodePrologue(), Rewriter::Rewrite(), AstTyper::Run(), LChunk::zone(), and HGraphBuilder::zone().