diff options
Diffstat (limited to 'src/arch/arm/faults.cc')
-rw-r--r-- | src/arch/arm/faults.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/arch/arm/faults.cc b/src/arch/arm/faults.cc index c5858c9ae..b006d12ca 100644 --- a/src/arch/arm/faults.cc +++ b/src/arch/arm/faults.cc @@ -1369,6 +1369,9 @@ DataAbort::iss() const // Add on the data abort specific fields to the generic abort ISS value val = AbortFault<DataAbort>::iss(); + + val |= cm << 8; + // ISS is valid if not caused by a stage 1 page table walk, and when taken // to AArch64 only when directed to EL2 if (!s1ptw && stage2 && (!to64 || toEL == EL2)) { @@ -1412,6 +1415,9 @@ DataAbort::annotate(AnnotationIDs id, uint64_t val) isv = true; ar = val; break; + case CM: + cm = val; + break; // Just ignore unknown ID's default: break; |