|
V8 Project
|
#include <js-graph.h>
Inheritance diagram for v8::internal::compiler::JSGraph:
Collaboration diagram for v8::internal::compiler::JSGraph:Public Member Functions | |
| JSGraph (Graph *graph, CommonOperatorBuilder *common, JSOperatorBuilder *javascript, Typer *typer, MachineOperatorBuilder *machine) | |
| Node * | CEntryStubConstant () |
| Node * | UndefinedConstant () |
| Node * | TheHoleConstant () |
| Node * | TrueConstant () |
| Node * | FalseConstant () |
| Node * | NullConstant () |
| Node * | ZeroConstant () |
| Node * | OneConstant () |
| Node * | NaNConstant () |
| Node * | HeapConstant (Unique< Object > value) |
| Node * | HeapConstant (Handle< Object > value) |
| Node * | Constant (Handle< Object > value) |
| Node * | Constant (double value) |
| Node * | Constant (int32_t value) |
| Node * | Int32Constant (int32_t value) |
| Node * | Uint32Constant (uint32_t value) |
| Node * | Float32Constant (float value) |
| Node * | Float64Constant (double value) |
| Node * | ExternalConstant (ExternalReference ref) |
| Node * | SmiConstant (int32_t immediate) |
| JSOperatorBuilder * | javascript () |
| CommonOperatorBuilder * | common () |
| MachineOperatorBuilder * | machine () |
| Graph * | graph () |
| Zone * | zone () |
| Isolate * | isolate () |
Public Member Functions inherited from v8::internal::ZoneObject | |
| INLINE (void *operator new(size_t size, Zone *zone)) | |
| void | operator delete (void *, size_t) |
| void | operator delete (void *pointer, Zone *zone) |
Private Member Functions | |
| Node * | ImmovableHeapConstant (Handle< Object > value) |
| Node * | NumberConstant (double value) |
| Node * | NewNode (const Operator *op) |
| Factory * | factory () |
Private Attributes | |
| Graph * | graph_ |
| CommonOperatorBuilder * | common_ |
| JSOperatorBuilder * | javascript_ |
| Typer * | typer_ |
| MachineOperatorBuilder * | machine_ |
| SetOncePointer< Node > | c_entry_stub_constant_ |
| SetOncePointer< Node > | undefined_constant_ |
| SetOncePointer< Node > | the_hole_constant_ |
| SetOncePointer< Node > | true_constant_ |
| SetOncePointer< Node > | false_constant_ |
| SetOncePointer< Node > | null_constant_ |
| SetOncePointer< Node > | zero_constant_ |
| SetOncePointer< Node > | one_constant_ |
| SetOncePointer< Node > | nan_constant_ |
| CommonNodeCache | cache_ |
Definition at line 24 of file js-graph.h.
|
inline |
Definition at line 26 of file js-graph.h.
| Node * v8::internal::compiler::JSGraph::CEntryStubConstant | ( | ) |
Definition at line 26 of file js-graph.cc.
References c_entry_stub_constant_, v8::internal::SetOncePointer< T >::get(), ImmovableHeapConstant(), v8::internal::SetOncePointer< T >::is_set(), isolate(), and v8::internal::SetOncePointer< T >::set().
Here is the call graph for this function:
|
inline |
Definition at line 87 of file js-graph.h.
References common_.
Referenced by v8::internal::compiler::JSInliner::AddClosureToFrameState(), v8::internal::compiler::SimplifiedLowering::common(), v8::internal::compiler::JSGenericLowering::common(), v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState(), ExternalConstant(), Float32Constant(), Float64Constant(), HeapConstant(), ImmovableHeapConstant(), Int32Constant(), NumberConstant(), v8::internal::compiler::JSInliner::TryInlineCall(), and v8::internal::compiler::Inlinee::UnifyReturn().
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::Constant | ( | double | value | ) |
Definition at line 136 of file js-graph.cc.
References NumberConstant(), OneConstant(), and ZeroConstant().
Here is the call graph for this function:Definition at line 115 of file js-graph.cc.
References FalseConstant(), HeapConstant(), NullConstant(), TheHoleConstant(), TrueConstant(), and UndefinedConstant().
Referenced by v8::internal::compiler::AstGraphBuilder::BuildThrowReferenceError(), v8::internal::compiler::AstGraphBuilder::BuildVariableAssignment(), v8::internal::compiler::AstGraphBuilder::BuildVariableDelete(), v8::internal::compiler::AstGraphBuilder::BuildVariableLoad(), v8::internal::compiler::RepresentationChanger::GetTaggedRepresentationFor(), v8::internal::compiler::JSContextSpecializer::ReduceJSLoadContext(), v8::internal::compiler::JSContextSpecializer::ReduceJSStoreContext(), SmiConstant(), v8::internal::compiler::JSContextSpecializer::SpecializeToContext(), and v8::internal::compiler::AstGraphBuilder::VisitDeclarations().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::Constant | ( | int32_t | value | ) |
Definition at line 143 of file js-graph.cc.
References NumberConstant(), OneConstant(), and ZeroConstant().
Here is the call graph for this function:| Node * v8::internal::compiler::JSGraph::ExternalConstant | ( | ExternalReference | ref | ) |
Definition at line 183 of file js-graph.cc.
References cache_, common(), NewNode(), and NULL.
Referenced by v8::internal::compiler::JSGenericLowering::ExternalConstant().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivate |
Definition at line 116 of file js-graph.h.
References v8::internal::Isolate::factory(), and isolate().
Referenced by FalseConstant(), NullConstant(), TheHoleConstant(), TrueConstant(), and UndefinedConstant().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::FalseConstant | ( | ) |
Definition at line 60 of file js-graph.cc.
References factory(), false_constant_, v8::internal::SetOncePointer< T >::get(), ImmovableHeapConstant(), v8::internal::SetOncePointer< T >::is_set(), and v8::internal::SetOncePointer< T >::set().
Referenced by v8::internal::compiler::AstGraphBuilder::BuildVariableDelete(), Constant(), v8::internal::compiler::RepresentationChanger::GetTaggedRepresentationFor(), and v8::internal::compiler::RepresentationSelector::VisitNode().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::Float32Constant | ( | float | value | ) |
Definition at line 168 of file js-graph.cc.
References common(), and NewNode().
Referenced by v8::internal::compiler::RepresentationChanger::GetFloat32RepresentationFor().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::Float64Constant | ( | double | value | ) |
Definition at line 174 of file js-graph.cc.
References cache_, common(), NewNode(), and NULL.
Referenced by v8::internal::compiler::RepresentationChanger::GetFloat64RepresentationFor().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 89 of file js-graph.h.
References graph_.
Referenced by v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState(), v8::internal::compiler::RepresentationChanger::GetBitRepresentationFor(), v8::internal::compiler::RepresentationChanger::GetFloat32RepresentationFor(), v8::internal::compiler::RepresentationChanger::GetFloat64RepresentationFor(), v8::internal::compiler::RepresentationChanger::GetTaggedRepresentationFor(), v8::internal::compiler::RepresentationChanger::GetWord32RepresentationFor(), v8::internal::compiler::SimplifiedLowering::graph(), v8::internal::compiler::JSGenericLowering::graph(), v8::internal::compiler::JSInliner::Inline(), v8::internal::compiler::Inlinee::InlineAtCall(), v8::internal::compiler::RepresentationChanger::InsertChangeFloat32ToFloat64(), NewNode(), v8::internal::compiler::RepresentationSelector::Run(), v8::internal::compiler::JSContextSpecializer::SpecializeToContext(), v8::internal::compiler::JSInliner::TryInlineCall(), v8::internal::compiler::Inlinee::UnifyReturn(), and zone().
Here is the caller graph for this function:Definition at line 102 of file js-graph.cc.
References HeapConstant().
Here is the call graph for this function:Definition at line 96 of file js-graph.cc.
References common(), and NewNode().
Referenced by v8::internal::compiler::JSGenericLowering::CodeConstant(), Constant(), v8::internal::compiler::JSGenericLowering::FunctionConstant(), HeapConstant(), and ImmovableHeapConstant().
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 13 of file js-graph.cc.
References common(), v8::internal::Unique< T >::CreateImmovable(), HeapConstant(), and NewNode().
Referenced by CEntryStubConstant(), FalseConstant(), NullConstant(), TheHoleConstant(), TrueConstant(), and UndefinedConstant().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::Int32Constant | ( | int32_t | value | ) |
Definition at line 150 of file js-graph.cc.
References cache_, common(), NewNode(), and NULL.
Referenced by v8::internal::compiler::SimplifiedLowering::DoLoadField(), v8::internal::compiler::SimplifiedLowering::DoStoreField(), v8::internal::compiler::RepresentationChanger::GetBitRepresentationFor(), v8::internal::compiler::JSGenericLowering::Int32Constant(), v8::internal::compiler::RepresentationChanger::MakeInt32Constant(), v8::internal::compiler::SimplifiedLowering::OffsetMinusTagConstant(), v8::internal::compiler::SimplifiedLowering::SmiTag(), Uint32Constant(), v8::internal::compiler::SimplifiedLowering::Untag(), and v8::internal::compiler::RepresentationSelector::VisitNode().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 91 of file js-graph.h.
References v8::internal::Zone::isolate(), and zone().
Referenced by CEntryStubConstant(), and factory().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 86 of file js-graph.h.
References javascript_.
Referenced by v8::internal::compiler::AstGraphBuilder::javascript(), v8::internal::compiler::JSContextSpecializer::ReduceJSLoadContext(), v8::internal::compiler::JSContextSpecializer::ReduceJSStoreContext(), and v8::internal::compiler::JSInliner::TryInlineCall().
Here is the caller graph for this function:
|
inline |
Definition at line 88 of file js-graph.h.
References machine_.
Referenced by v8::internal::compiler::RepresentationChanger::machine(), v8::internal::compiler::SimplifiedLowering::machine(), v8::internal::compiler::JSGenericLowering::machine(), and v8::internal::compiler::JSInliner::TryInlineCall().
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::NaNConstant | ( | ) |
Definition at line 88 of file js-graph.cc.
References v8::internal::SetOncePointer< T >::get(), v8::internal::SetOncePointer< T >::is_set(), nan_constant_, v8::base::OS::nan_value(), NumberConstant(), and v8::internal::SetOncePointer< T >::set().
Here is the call graph for this function:
|
private |
Definition at line 19 of file js-graph.cc.
References graph(), v8::internal::compiler::Typer::Init(), v8::internal::compiler::Graph::NewNode(), and typer_.
Referenced by ExternalConstant(), Float32Constant(), Float64Constant(), HeapConstant(), ImmovableHeapConstant(), Int32Constant(), and NumberConstant().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::NullConstant | ( | ) |
Definition at line 68 of file js-graph.cc.
References factory(), v8::internal::SetOncePointer< T >::get(), ImmovableHeapConstant(), v8::internal::SetOncePointer< T >::is_set(), null_constant_, and v8::internal::SetOncePointer< T >::set().
Referenced by Constant().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 159 of file js-graph.cc.
References cache_, common(), NewNode(), and NULL.
Referenced by Constant(), NaNConstant(), OneConstant(), and ZeroConstant().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::OneConstant | ( | ) |
Definition at line 82 of file js-graph.cc.
References v8::internal::SetOncePointer< T >::get(), v8::internal::SetOncePointer< T >::is_set(), NumberConstant(), one_constant_, and v8::internal::SetOncePointer< T >::set().
Referenced by Constant(), and v8::internal::compiler::RepresentationChanger::GetBitRepresentationFor().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 81 of file js-graph.h.
References Constant(), DCHECK, and v8::internal::Smi::IsValid().
Referenced by v8::internal::compiler::JSGenericLowering::SmiConstant().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::TheHoleConstant | ( | ) |
Definition at line 44 of file js-graph.cc.
References factory(), v8::internal::SetOncePointer< T >::get(), ImmovableHeapConstant(), v8::internal::SetOncePointer< T >::is_set(), v8::internal::SetOncePointer< T >::set(), and the_hole_constant_.
Referenced by v8::internal::compiler::AstGraphBuilder::BuildHoleCheckSilent(), v8::internal::compiler::AstGraphBuilder::BuildHoleCheckThrow(), v8::internal::compiler::AstGraphBuilder::BuildVariableAssignment(), v8::internal::compiler::AstGraphBuilder::BuildVariableLoad(), and Constant().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::TrueConstant | ( | ) |
Definition at line 52 of file js-graph.cc.
References factory(), v8::internal::SetOncePointer< T >::get(), ImmovableHeapConstant(), v8::internal::SetOncePointer< T >::is_set(), v8::internal::SetOncePointer< T >::set(), and true_constant_.
Referenced by v8::internal::compiler::AstGraphBuilder::BuildVariableDelete(), Constant(), v8::internal::compiler::RepresentationChanger::GetTaggedRepresentationFor(), v8::internal::compiler::AstGraphBuilder::VisitDelete(), and v8::internal::compiler::RepresentationSelector::VisitNode().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 68 of file js-graph.h.
References Int32Constant().
Here is the call graph for this function:| Node * v8::internal::compiler::JSGraph::UndefinedConstant | ( | ) |
Definition at line 35 of file js-graph.cc.
References factory(), v8::internal::SetOncePointer< T >::get(), ImmovableHeapConstant(), v8::internal::SetOncePointer< T >::is_set(), v8::internal::SetOncePointer< T >::set(), and undefined_constant_.
Referenced by v8::internal::compiler::AstGraphBuilder::BuildVariableLoad(), Constant(), v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState(), v8::internal::compiler::AstGraphBuilder::CreateGraph(), v8::internal::compiler::AstGraphBuilder::Environment::Environment(), v8::internal::compiler::Inlinee::InlineAtCall(), and v8::internal::compiler::AstGraphBuilder::VisitVoid().
Here is the call graph for this function:
Here is the caller graph for this function:| Node * v8::internal::compiler::JSGraph::ZeroConstant | ( | ) |
Definition at line 76 of file js-graph.cc.
References v8::internal::SetOncePointer< T >::get(), v8::internal::SetOncePointer< T >::is_set(), NumberConstant(), v8::internal::SetOncePointer< T >::set(), and zero_constant_.
Referenced by Constant().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 90 of file js-graph.h.
References graph(), and v8::internal::compiler::GenericGraphBase::zone().
Referenced by v8::internal::compiler::Inlinee::InlineAtCall(), isolate(), v8::internal::compiler::Inlinee::UnifyReturn(), v8::internal::compiler::RepresentationSelector::VisitNode(), and v8::internal::compiler::SimplifiedLowering::zone().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 100 of file js-graph.h.
Referenced by CEntryStubConstant().
|
private |
Definition at line 110 of file js-graph.h.
Referenced by ExternalConstant(), Float64Constant(), Int32Constant(), and NumberConstant().
|
private |
Definition at line 95 of file js-graph.h.
Referenced by common().
|
private |
Definition at line 104 of file js-graph.h.
Referenced by FalseConstant().
|
private |
Definition at line 94 of file js-graph.h.
Referenced by graph().
|
private |
Definition at line 96 of file js-graph.h.
Referenced by javascript().
|
private |
Definition at line 98 of file js-graph.h.
Referenced by machine().
|
private |
Definition at line 108 of file js-graph.h.
Referenced by NaNConstant().
|
private |
Definition at line 105 of file js-graph.h.
Referenced by NullConstant().
|
private |
Definition at line 107 of file js-graph.h.
Referenced by OneConstant().
|
private |
Definition at line 102 of file js-graph.h.
Referenced by TheHoleConstant().
|
private |
Definition at line 103 of file js-graph.h.
Referenced by TrueConstant().
|
private |
Definition at line 97 of file js-graph.h.
Referenced by NewNode().
|
private |
Definition at line 101 of file js-graph.h.
Referenced by UndefinedConstant().
|
private |
Definition at line 106 of file js-graph.h.
Referenced by ZeroConstant().