Use the right bitwise OR operation for clearing single-step at trap time.

DBCR0_IDM || DBCRO_IC yields 1, which in this register is DBCR0_FT, not what we
want.
Reported by:	Mark Millard
MFC after:	2 weeks
This commit is contained in:
Justin Hibbits 2016-12-16 04:38:53 +00:00
parent 1ea1b27578
commit fa133b6bf0

View file

@ -280,7 +280,7 @@ trap(struct trapframe *frame)
case EXC_DEBUG: /* Single stepping */
mtspr(SPR_DBSR, mfspr(SPR_DBSR));
frame->srr1 &= ~PSL_DE;
frame->cpu.booke.dbcr0 &= ~(DBCR0_IDM || DBCR0_IC);
frame->cpu.booke.dbcr0 &= ~(DBCR0_IDM | DBCR0_IC);
sig = SIGTRAP;
ucode = TRAP_TRACE;
break;