21#include "backends/tofino/bf-asm/target.h"
25 FOR_ALL_TARGETS(DECLARE_TARGET_CLASS)
27 virtual void input_binary(uint64_t addr,
char tag, uint32_t *data,
size_t len) = 0;
31#define DECLARE_DISASM_TARGET(TARGET, ...) \
32 class Disasm::TARGET : public Disasm { \
34 typedef ::Target::TARGET Target; \
35 Target::top_level_regs regs; \
36 TARGET() { declare_registers(®s); } \
37 ~TARGET() { undeclare_registers(®s); } \
38 TARGET(const TARGET &) = delete; \
43 DECLARE_DISASM_TARGET,
void input_binary(uint64_t addr,
char tag, uint32_t *data,
size_t len) {
45 regs.mem_top.input_binary(addr, tag, data, len);
47 regs.reg_top.input_binary(addr, tag, data, len);
static Disasm * create(std::string target)
Definition disasm.cpp:22