aboutsummaryrefslogtreecommitdiff
path: root/riscv/triggers.cc
diff options
context:
space:
mode:
authorTim Newsome <tim@sifive.com>2022-03-24 11:45:59 -0700
committerTim Newsome <tim@sifive.com>2022-04-05 10:33:31 -0700
commit4f895c05fb1eb41296f87b5a3246270095d3999e (patch)
treeafd481bc05eb11266ceb30016b088b797a19c844 /riscv/triggers.cc
parentcf0707f883d6f8a38e2b943f9a4a959226287d65 (diff)
downloadspike-4f895c05fb1eb41296f87b5a3246270095d3999e.zip
spike-4f895c05fb1eb41296f87b5a3246270095d3999e.tar.gz
spike-4f895c05fb1eb41296f87b5a3246270095d3999e.tar.bz2
Make chain into chain() for all triggers.
Diffstat (limited to 'riscv/triggers.cc')
-rw-r--r--riscv/triggers.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/riscv/triggers.cc b/riscv/triggers.cc
index 3a782e1..c368140 100644
--- a/riscv/triggers.cc
+++ b/riscv/triggers.cc
@@ -4,7 +4,7 @@
namespace triggers {
mcontrol_t::mcontrol_t() :
- type(2), maskmax(0), select(false), timing(false), chain(false),
+ type(2), maskmax(0), select(false), timing(false), chain_bit(false),
match(MATCH_EQUAL), m(false), h(false), s(false), u(false), execute(false),
store(false), load(false)
{
@@ -19,7 +19,7 @@ reg_t mcontrol_t::tdata1_read(const processor_t *proc) const noexcept {
v = set_field(v, MCONTROL_SELECT, select);
v = set_field(v, MCONTROL_TIMING, timing);
v = set_field(v, MCONTROL_ACTION, action);
- v = set_field(v, MCONTROL_CHAIN, chain);
+ v = set_field(v, MCONTROL_CHAIN, chain_bit);
v = set_field(v, MCONTROL_MATCH, match);
v = set_field(v, MCONTROL_M, m);
v = set_field(v, MCONTROL_H, h);
@@ -40,7 +40,7 @@ bool mcontrol_t::tdata1_write(processor_t *proc, const reg_t val) noexcept {
select = get_field(val, MCONTROL_SELECT);
timing = get_field(val, MCONTROL_TIMING);
action = (triggers::action_t) get_field(val, MCONTROL_ACTION);
- chain = get_field(val, MCONTROL_CHAIN);
+ chain_bit = get_field(val, MCONTROL_CHAIN);
unsigned match_value = get_field(val, MCONTROL_MATCH);
switch (match_value) {
case MATCH_EQUAL:
@@ -157,12 +157,12 @@ match_result_t module_t::memory_access_match(action_t *action, operation_t opera
for (unsigned int i = 0; i < triggers.size(); i++) {
if (!chain_ok) {
- chain_ok |= !triggers[i]->chain;
+ chain_ok |= !triggers[i]->chain();
continue;
}
match_result_t result = triggers[i]->memory_access_match(proc, operation, address, data);
- if (result != MATCH_NONE && !triggers[i]->chain) {
+ if (result != MATCH_NONE && !triggers[i]->chain()) {
*action = triggers[i]->action;
return result;
}