diff options
Diffstat (limited to 'backend/include')
| -rw-r--r-- | backend/include/rcc/IR/PassInstrumentation.h | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/backend/include/rcc/IR/PassInstrumentation.h b/backend/include/rcc/IR/PassInstrumentation.h index f90df37..8ba2d2e 100644 --- a/backend/include/rcc/IR/PassInstrumentation.h +++ b/backend/include/rcc/IR/PassInstrumentation.h @@ -18,7 +18,6 @@ namespace rcc { class CompilationUnit; class MachineFunction; -class TargetDescription; struct MachinePassResult; struct CompilationUnitPassResult; @@ -105,6 +104,7 @@ public: [[nodiscard]] std::vector<InstrumentationStatistic> statistics() const; [[nodiscard]] std::vector<MachineActionEvent> actionEvents() const; + [[nodiscard]] bool requiresSerialFunctionExecution() const; [[nodiscard]] Expected<bool> requestAction(std::string_view Pass, std::string_view Rule, const MachineFunction &Function, @@ -114,17 +114,6 @@ public: std::uint64_t Cost); private: - struct BufferedEvents final { - const TargetDescription *Target = nullptr; - std::vector<std::function<void()>> Events; - }; - - [[nodiscard]] bool bufferFunctionEvent(const MachineFunction &Function, - std::function<void(const MachineFunction &)> Replay) const; - void beginBuffering(BufferedEvents &Buffer, const TargetDescription &Target) const noexcept; - void endBuffering() const noexcept; - void replayBufferedEvents(BufferedEvents &Buffer) const; - void before(std::string_view Name, const MachineFunction &Function) const; void after(std::string_view Name, const MachineFunction &Function, const MachinePassResult &Result, std::uint64_t Nanoseconds) const; @@ -174,8 +163,6 @@ private: std::vector<UnitAnalysisFailureCallback> UnitAnalysisFailure; mutable std::unordered_map<std::string, InstrumentationStatistic> Statistics; - static thread_local BufferedEvents *ActiveBuffer; - template <typename, typename> friend struct AnalysisManagerInstrumentation; template <typename, typename, typename> friend struct PassManagerCallbacks; }; |
