| Index: src/hydrogen-escape-analysis.h
|
| diff --git a/src/a64/debugger-a64.h b/src/hydrogen-escape-analysis.h
|
| similarity index 77%
|
| copy from src/a64/debugger-a64.h
|
| copy to src/hydrogen-escape-analysis.h
|
| index 50480cc268a49f53fafc1650e79d73de573524ed..6ba6e823c54f25f2ef4c45a13c9aedba37cfa566 100644
|
| --- a/src/a64/debugger-a64.h
|
| +++ b/src/hydrogen-escape-analysis.h
|
| @@ -25,32 +25,33 @@
|
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| -#ifndef V8_A64_DEBUGGER_A64_H_
|
| -#define V8_A64_DEBUGGER_A64_H_
|
| +#ifndef V8_HYDROGEN_ESCAPE_ANALYSIS_H_
|
| +#define V8_HYDROGEN_ESCAPE_ANALYSIS_H_
|
|
|
| -#if defined(USE_SIMULATOR)
|
| -
|
| -#include "globals.h"
|
| -#include "utils.h"
|
| -#include "a64/constants-a64.h"
|
| -#include "a64/simulator-a64.h"
|
| +#include "allocation.h"
|
| +#include "hydrogen.h"
|
|
|
| namespace v8 {
|
| namespace internal {
|
|
|
|
|
| -class Debugger : public Simulator {
|
| +class HEscapeAnalysisPhase : public HPhase {
|
| public:
|
| - Debugger(Decoder* decoder, FILE* stream = stdout)
|
| - : Simulator(decoder, NULL, stream) {}
|
| + explicit HEscapeAnalysisPhase(HGraph* graph)
|
| + : HPhase("H_Escape analysis", graph), captured_(0, zone()) { }
|
| +
|
| + void Run() {
|
| + CollectCapturedValues();
|
| + }
|
|
|
| - // Functions overloading.
|
| - void VisitException(Instruction* instr);
|
| + private:
|
| + void CollectCapturedValues();
|
| + void CollectIfNoEscapingUses(HInstruction* instr);
|
| +
|
| + ZoneList<HValue*> captured_;
|
| };
|
|
|
|
|
| } } // namespace v8::internal
|
|
|
| -#endif // USE_SIMULATOR
|
| -
|
| -#endif // V8_A64_DEBUGGER_A64_H_
|
| +#endif // V8_HYDROGEN_ESCAPE_ANALYSIS_H_
|
|
|