|
V8 Project
|
#include <hydrogen-environment-liveness.h>
Inheritance diagram for v8::internal::HEnvironmentLivenessAnalysisPhase:
Collaboration diagram for v8::internal::HEnvironmentLivenessAnalysisPhase:Public Member Functions | |
| HEnvironmentLivenessAnalysisPhase (HGraph *graph) | |
| void | Run () |
Public Member Functions inherited from v8::internal::HPhase | |
| HPhase (const char *name, HGraph *graph) | |
| ~HPhase () | |
Private Member Functions | |
| void | ZapEnvironmentSlot (int index, HSimulate *simulate) |
| void | ZapEnvironmentSlotsInSuccessors (HBasicBlock *block, BitVector *live) |
| void | ZapEnvironmentSlotsForInstruction (HEnvironmentMarker *marker) |
| void | UpdateLivenessAtBlockEnd (HBasicBlock *block, BitVector *live) |
| void | UpdateLivenessAtInstruction (HInstruction *instr, BitVector *live) |
| DISALLOW_COPY_AND_ASSIGN (HEnvironmentLivenessAnalysisPhase) | |
Private Attributes | |
| int | block_count_ |
| int | maximum_environment_size_ |
| ZoneList< BitVector * > | live_at_block_start_ |
| ZoneList< HSimulate * > | first_simulate_ |
| ZoneList< BitVector * > | first_simulate_invalid_for_index_ |
| ZoneList< HEnvironmentMarker * > | markers_ |
| bool | collect_markers_ |
| HSimulate * | last_simulate_ |
| BitVector | went_live_since_last_simulate_ |
Additional Inherited Members | |
Protected Member Functions inherited from v8::internal::HPhase | |
| HGraph * | graph () const |
Definition at line 23 of file hydrogen-environment-liveness.h.
|
explicit |
Definition at line 13 of file hydrogen-environment-liveness.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), block_count_, DCHECK, first_simulate_, first_simulate_invalid_for_index_, live_at_block_start_, maximum_environment_size_, and NULL.
Here is the call graph for this function:
|
private |
| void v8::internal::HEnvironmentLivenessAnalysisPhase::Run | ( | ) |
Definition at line 158 of file hydrogen-environment-liveness.cc.
References v8::internal::BitVector::Add(), block_count_, collect_markers_, v8::internal::BitVector::Contains(), DCHECK, first_simulate_, first_simulate_invalid_for_index_, v8::internal::HPhase::graph(), v8::internal::BitVector::IsEmpty(), last_simulate_, live_at_block_start_, markers_, maximum_environment_size_, NULL, v8::internal::BitVector::Remove(), v8::internal::List< T, AllocationPolicy >::Set(), UpdateLivenessAtBlockEnd(), UpdateLivenessAtInstruction(), went_live_since_last_simulate_, ZapEnvironmentSlotsForInstruction(), and ZapEnvironmentSlotsInSuccessors().
Here is the call graph for this function:
|
private |
Definition at line 83 of file hydrogen-environment-liveness.cc.
References v8::internal::BitVector::Clear(), live_at_block_start_, and v8::internal::BitVector::Union().
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 94 of file hydrogen-environment-liveness.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), v8::internal::BitVector::Add(), v8::internal::BitVector::Clear(), collect_markers_, v8::internal::BitVector::Contains(), DCHECK, v8::internal::HValue::kEndsLiveRange, last_simulate_, live_at_block_start_, markers_, v8::internal::HInstruction::next(), NULL, v8::internal::HValue::opcode(), v8::internal::BitVector::Remove(), v8::internal::BitVector::Union(), and went_live_since_last_simulate_.
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 36 of file hydrogen-environment-liveness.cc.
References v8::internal::HPhase::graph().
Referenced by ZapEnvironmentSlotsForInstruction(), and ZapEnvironmentSlotsInSuccessors().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 72 of file hydrogen-environment-liveness.cc.
References DCHECK, v8::internal::HValue::kEndsLiveRange, NULL, and ZapEnvironmentSlot().
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 47 of file hydrogen-environment-liveness.cc.
References v8::internal::List< T, AllocationPolicy >::at(), v8::internal::BitVector::Contains(), DCHECK, v8::internal::BitVector::Equals(), first_simulate_, first_simulate_invalid_for_index_, v8::internal::BitVector::length(), live_at_block_start_, NULL, and ZapEnvironmentSlot().
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 39 of file hydrogen-environment-liveness.h.
Referenced by HEnvironmentLivenessAnalysisPhase(), and Run().
|
private |
Definition at line 54 of file hydrogen-environment-liveness.h.
Referenced by Run(), and UpdateLivenessAtInstruction().
|
private |
Definition at line 47 of file hydrogen-environment-liveness.h.
Referenced by HEnvironmentLivenessAnalysisPhase(), Run(), and ZapEnvironmentSlotsInSuccessors().
|
private |
Definition at line 48 of file hydrogen-environment-liveness.h.
Referenced by HEnvironmentLivenessAnalysisPhase(), Run(), and ZapEnvironmentSlotsInSuccessors().
|
private |
Definition at line 59 of file hydrogen-environment-liveness.h.
Referenced by Run(), and UpdateLivenessAtInstruction().
Definition at line 46 of file hydrogen-environment-liveness.h.
Referenced by HEnvironmentLivenessAnalysisPhase(), Run(), UpdateLivenessAtBlockEnd(), UpdateLivenessAtInstruction(), and ZapEnvironmentSlotsInSuccessors().
|
private |
Definition at line 53 of file hydrogen-environment-liveness.h.
Referenced by Run(), and UpdateLivenessAtInstruction().
|
private |
Definition at line 43 of file hydrogen-environment-liveness.h.
Referenced by HEnvironmentLivenessAnalysisPhase(), and Run().
|
private |
Definition at line 60 of file hydrogen-environment-liveness.h.
Referenced by Run(), and UpdateLivenessAtInstruction().