8#ifndef BACKENDS_EBPF_MIDEND_H_
9#define BACKENDS_EBPF_MIDEND_H_
11#include "ebpfOptions.h"
12#include "frontends/common/resolveReferences/referenceMap.h"
13#include "frontends/p4/typeMap.h"
20 std::vector<DebugHook> hooks;
24 void addDebugHook(
DebugHook hook) { hooks.push_back(hook); }
26 const IR::ToplevelBlock *
run(
EbpfOptions &options,
const IR::P4Program *program,
27 std::ostream *outStream =
nullptr);
Definition ebpf/midend.h:18
const IR::ToplevelBlock * run(EbpfOptions &options, const IR::P4Program *program, std::ostream *outStream=nullptr)
If p4c is run with option '–listMidendPasses', outStream is used for printing passes names.
Definition ebpf/midend.cpp:60
Definition ebpfOptions.h:17
Class used to encode maps from paths to declarations.
Definition referenceMap.h:58
Definition codeGen.cpp:14
std::function< void(const char *manager, unsigned seqNo, const char *pass, const IR::Node *node)> DebugHook
Definition ir/pass_manager.h:29