Commit 73eae4c2 authored by bmeurer's avatar bmeurer Committed by Commit bot

[turbofan] Make pipeline.h independent of compiler.h.

Eventually compiler.h might need to depend on the Pipeline to manage its
life cycle for concurrent recompilation, so we should not have the
cyclic include dependency here.

R=jarin@chromium.org

Review URL: https://codereview.chromium.org/1698113002

Cr-Commit-Position: refs/heads/master@{#34000}
parent 3a0377a4
......@@ -1502,6 +1502,8 @@ void Pipeline::AllocateRegisters(const RegisterConfiguration* config,
data->DeleteRegisterAllocationZone();
}
Isolate* Pipeline::isolate() const { return info()->isolate(); }
} // namespace compiler
} // namespace internal
} // namespace v8
......@@ -7,11 +7,12 @@
// Clients of this interface shouldn't depend on lots of compiler internals.
// Do not include anything from src/compiler here!
#include "src/compiler.h"
#include "src/objects.h"
namespace v8 {
namespace internal {
class CompilationInfo;
class RegisterConfiguration;
namespace compiler {
......@@ -57,9 +58,6 @@ class Pipeline {
Schedule* schedule = nullptr);
private:
CompilationInfo* info_;
PipelineData* data_;
// Helpers for executing pipeline phases.
template <typename Phase>
void Run();
......@@ -68,14 +66,19 @@ class Pipeline {
template <typename Phase, typename Arg0, typename Arg1>
void Run(Arg0 arg_0, Arg1 arg_1);
CompilationInfo* info() const { return info_; }
Isolate* isolate() { return info_->isolate(); }
void BeginPhaseKind(const char* phase_kind);
void RunPrintAndVerify(const char* phase, bool untyped = false);
Handle<Code> ScheduleAndGenerateCode(CallDescriptor* call_descriptor);
void AllocateRegisters(const RegisterConfiguration* config,
CallDescriptor* descriptor, bool run_verifier);
CompilationInfo* info() const { return info_; }
Isolate* isolate() const;
CompilationInfo* const info_;
PipelineData* data_;
DISALLOW_COPY_AND_ASSIGN(Pipeline);
};
} // namespace compiler
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment