target/arm/helper: Implement CNTHCTL_EL2.CNT[VP]MASK
authorJean-Philippe Brucker <jean-philippe@linaro.org>
Tue, 22 Aug 2023 16:31:13 +0000 (17:31 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 22 Aug 2023 16:31:13 +0000 (17:31 +0100)
commitf6fc36deef6abcee406211f3e2f11ff894b87fa4
tree2f0f04b136804105ed8345a19abf61c594673f7c
parent1acd00ef14101434cd99df0b01b32f62255423a9
target/arm/helper: Implement CNTHCTL_EL2.CNT[VP]MASK

When FEAT_RME is implemented, these bits override the value of
CNT[VP]_CTL_EL0.IMASK in Realm and Root state. Move the IRQ state update
into a new gt_update_irq() function and test those bits every time we
recompute the IRQ state.

Since we're removing the IRQ state from some trace events, add a new
trace event for gt_update_irq().

Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Message-id: 20230809123706.1842548-7-jean-philippe@linaro.org
[PMM: only register change hook if not USER_ONLY and if TCG]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/cpu.c
target/arm/cpu.h
target/arm/helper.c
target/arm/trace-events