1
0
mirror of https://github.com/antonblanchard/microwatt.git synced 2026-04-11 06:37:58 +00:00

execute1: Fix bug where LPCR[HEIC] disabled interrupts in problem state (#453)

LPCR[HEIC] should only disable external interrupts in hypervisor mode,
and not in problem state (user mode).  This fixes the expression for
irq_valid to do that.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
This commit is contained in:
Paul Mackerras
2025-10-10 10:31:43 +11:00
committed by GitHub
parent fabe9a4feb
commit da695e7927

View File

@@ -1749,7 +1749,7 @@ begin
irq_valid := ex1.msr(MSR_EE) and
(pmu_to_x.intr or dec_sign or dhd_pending or
(ext_irq_in and not ctrl.lpcr_heic));
(ext_irq_in and (not ctrl.lpcr_heic or ex1.msr(MSR_PR))));
if valid_in = '1' then
v.prev_op := e_in.insn_type;