diff --git a/sim/m32c/ChangeLog b/sim/m32c/ChangeLog index c77bf25789..5512d6995a 100644 --- a/sim/m32c/ChangeLog +++ b/sim/m32c/ChangeLog @@ -1,3 +1,8 @@ +2008-10-01 DJ Delorie + + * int.c (trigger_peripheral_interrupt): Clear interrupt pending + bit when peripheral interrupts are serviced. + 2008-07-11 Hans-Peter Nilsson * configure: Regenerate to track ../common/common.m4 changes. diff --git a/sim/m32c/int.c b/sim/m32c/int.c index 5556a120dc..ac7ac97596 100644 --- a/sim/m32c/int.c +++ b/sim/m32c/int.c @@ -72,4 +72,5 @@ trigger_peripheral_interrupt (int vector, int icaddr) int addr = get_reg (intb) + vector * 4; trigger_interrupt (addr, 1); put_reg (flags, (get_reg (flags) & 0x8fff) | ((old_ic & 7) << 12)); + mem_put_qi (icaddr, old_ic & ~ 0x08); }