target/riscv/pmp: Add assert for ePMP operations
Although we construct epmp_operation in such a way that it can only be between 0 and 15 Coverity complains that we don't handle the other possible cases. To fix Coverity and make it easier for humans to read add a default case to the switch statement that calls g_assert_not_reached(). Fixes: CID 1453108 Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com> Message-id: ec5f225928eec448278c82fcb1f6805ee61dde82.1621550996.git.alistair.francis@wdc.com
This commit is contained in:
parent
a722701dd3
commit
787a4baf91
@ -402,6 +402,8 @@ bool pmp_hart_has_privs(CPURISCVState *env, target_ulong addr,
|
|||||||
case 15:
|
case 15:
|
||||||
*allowed_privs = PMP_READ;
|
*allowed_privs = PMP_READ;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
g_assert_not_reached();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
switch (epmp_operation) {
|
switch (epmp_operation) {
|
||||||
@ -433,6 +435,8 @@ bool pmp_hart_has_privs(CPURISCVState *env, target_ulong addr,
|
|||||||
case 7:
|
case 7:
|
||||||
*allowed_privs = PMP_READ | PMP_WRITE | PMP_EXEC;
|
*allowed_privs = PMP_READ | PMP_WRITE | PMP_EXEC;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
g_assert_not_reached();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user