summaryrefslogtreecommitdiff
path: root/io/event.h
blob: e17c333baf974ed55438017613ddfdf521986c32 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once

#include <cstdint>
#include <map>

#include "isa/isa.h"

struct event {
    ctlreg reg;
    std::uint_fast32_t mask;
    std::uint_fast32_t value;
    event(ctlreg reg, std::uint_fast32_t value, std::uint_fast32_t mask=~(std::uint_fast32_t)0)
        : reg(reg)
        , mask(mask)
        , value(value)
    { }
};

typedef std::multimap<std::uint64_t, event> event_log;