target/riscv: Apply modularized matching conditions for icount trigger
authorAlvin Chang <alvinga@andestech.com>
Wed, 26 Jun 2024 13:22:47 +0000 (21:22 +0800)
committerAlistair Francis <alistair.francis@wdc.com>
Thu, 27 Jun 2024 03:09:16 +0000 (13:09 +1000)
We have implemented trigger_common_match(), which checks if the enabled
privilege levels of the trigger match CPU's current privilege level. We
can invoke trigger_common_match() to check the privilege levels of the
type 3 triggers.

Signed-off-by: Alvin Chang <alvinga@andestech.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240626132247.2761286-4-alvinga@andestech.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
target/riscv/debug.c

index c290d6002efa59ea66c96d982b1ec4adabd8d04a..0b5099ff9ab612c218ca18992d98780bad4e09da 100644 (file)
@@ -624,7 +624,7 @@ void helper_itrigger_match(CPURISCVState *env)
         if (get_trigger_type(env, i) != TRIGGER_TYPE_INST_CNT) {
             continue;
         }
-        if (check_itrigger_priv(env, i)) {
+        if (!trigger_common_match(env, TRIGGER_TYPE_INST_CNT, i)) {
             continue;
         }
         count = itrigger_get_count(env, i);