diff options
author | Alistair Francis <alistair.francis@wdc.com> | 2021-05-21 06:55:53 +0800 |
---|---|---|
committer | Alistair Francis <alistair.francis@wdc.com> | 2021-06-08 09:59:43 +1000 |
commit | 787a4baf91fa2ff36b901c0b31ea73f3f0739415 (patch) | |
tree | 937b7755f585ce96628c361b8d54bf94a75156a4 /target/riscv/pmp.c | |
parent | a722701dd364b82dc115e94a29d767949f796000 (diff) |
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
Diffstat (limited to 'target/riscv/pmp.c')
-rw-r--r-- | target/riscv/pmp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/target/riscv/pmp.c b/target/riscv/pmp.c index 78203291de..82ed020b10 100644 --- a/target/riscv/pmp.c +++ b/target/riscv/pmp.c @@ -402,6 +402,8 @@ bool pmp_hart_has_privs(CPURISCVState *env, target_ulong addr, case 15: *allowed_privs = PMP_READ; break; + default: + g_assert_not_reached(); } } else { switch (epmp_operation) { @@ -433,6 +435,8 @@ bool pmp_hart_has_privs(CPURISCVState *env, target_ulong addr, case 7: *allowed_privs = PMP_READ | PMP_WRITE | PMP_EXEC; break; + default: + g_assert_not_reached(); } } } |