217c217
< reg_pmovsr &= ~val;
---
> setOverflowStatus(reg_pmovsr & ~val);
289c289
< reg_pmovsr |= val;
---
> setOverflowStatus(reg_pmovsr | val);
647a648,661
> PMU::setOverflowStatus(MiscReg new_val)
> {
> const bool int_old = reg_pmovsr != 0;
> const bool int_new = new_val != 0;
>
> reg_pmovsr = new_val;
> if (int_old && !int_new) {
> clearInterrupt();
> } else if (!int_old && int_new && (reg_pminten & reg_pmovsr)) {
> raiseInterrupt();
> }
> }
>
> void
659a674,685
> PMU::clearInterrupt()
> {
> if (interrupt) {
> DPRINTF(PMUVerbose, "Clearing PMU interrupt.\n");
> interrupt->clear();
> } else {
> warn_once("Dropping PMU interrupt as no interrupt has "
> "been specified\n");
> }
> }
>
> void