Re: [PATCH] Trapping for Alpha EV4 machines

From: Richard Henderson (rth@twiddle.net)
Date: Mon Feb 21 2000 - 17:37:44 EST


On Sun, Feb 20, 2000 at 11:19:40PM +0100, Carsten Jacobi wrote:
> The problem is, that EV4 machines seam to behave differently than
> EV5/6 during an illegal opcode or FP forced software handling trap.

Not as much as you think. The issue being that rounding modes
other than nearest are not implemented. So they invoke an illegal
opcode trap.

> +#ifdef CONFIG_ALPHA_EV4
> + if (alpha_fp_emul(regs.pc))
> + return;
> +#else
> /* 21264 (except pass 1) has precise exceptions. */
> if (alpha_fp_emul(regs.pc - 4))
> return;
> +#endif

This part of the patch is incorrect.

> - if (alpha_fp_emul(regs.pc - 4))
> + if (alpha_fp_emul(regs.pc))
> + {
> + /* Increment the PC so that the program in
> + user space continues */
> + regs.pc += 4;
> return;

But this one's right. Applied.

r~

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Feb 23 2000 - 21:00:29 EST