We currently only support SXL=UXL=2 (64 bit). These fields are WARL,
so that we have to make sure that no other value can be set.
Change-Id: I62ddc7d68b8c31ca655ba1ccee7a294912f46b09
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/25651
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
setMiscRegNoEffect(misc_reg, new_val);
}
break;
+ case MISCREG_STATUS:
+ {
+ // SXL and UXL are hard-wired to 64 bit
+ auto cur = readMiscRegNoEffect(misc_reg);
+ val &= ~(STATUS_SXL_MASK | STATUS_UXL_MASK);
+ val |= cur & (STATUS_SXL_MASK | STATUS_UXL_MASK);
+ setMiscRegNoEffect(misc_reg, val);
+ }
+ break;
default:
setMiscRegNoEffect(misc_reg, val);
}