Re: pentium bug continued

Gabriel Paubert (paubert@iram.es)
Mon, 10 Nov 1997 13:43:05 +0100 (MET)


On Mon, 10 Nov 1997, Dale Amon as Operator wrote:

> This sort of thing isn't all that uncommon. The old 6800
> had what we used to call the HCF opcode, "Halt and Catch
> Fire". When a program got lost in hyperspace it
> would inevitably hit either a Halt or this undocumented
> feature, at which point the address lines became a
> binary counter and the machine required a power reset
> to get it back.
>
> I wouldn't be surprised at all to find accidental or
> QA opdcodes hidden away in other processors.
>

Except that in this case the instruction does not behave according to
Intel's own Pentium documentation (241430_4.pdf, page 25-71, there may be
a more recent version):

"The destination operand must be a memory operand, not a register. If the
CMPXCHG8B instruction is executed with a modr/m byte representing a
register as the destination operand, #UD occurs."

A lock prefix should not change this behaviour, and much less enable to
lockup the processor from user mode. It seems AMD has read Intel's doc
better than Intel ;)

Gabriel.