From: Wolfgang Kern on
While I tried to get rid of some jumps, I figured it out the hard way,
and I think it may be of help for other coders around to know:

CMOVcc eax,[eax] ;may invoke a GP/PF fault regardles if condition is met

while any

Jcc over_next
mov eax,[eax] ;may only raise an exception if executed at all
over_next:

So finally we should see CMOVcc r,[mem] as a limit-restricted instruction.
Sure, most of you already knew it anyway ... or not ? :)
__
wolfgang



From: Rod Pemberton on

"Wolfgang Kern" <nowhere(a)never.at> wrote in message
news:ff0dtt$de3$1(a)newsreader2.utanet.at...
> While I tried to get rid of some jumps, I figured it out the hard way,
> and I think it may be of help for other coders around to know:
>
> CMOVcc eax,[eax] ;may invoke a GP/PF fault regardles if condition is met
>
> while any
>
> Jcc over_next
> mov eax,[eax] ;may only raise an exception if executed at all
> over_next:
>
> So finally we should see CMOVcc r,[mem] as a limit-restricted instruction.
> Sure, most of you already knew it anyway ... or not ? :)

No, I've been avoiding post 486 instructions since they don't serve my
needs. I will remember this though.


Rod Pemberton

From: Robert Redelmeier on
In alt.lang.asm Wolfgang Kern <nowhere(a)never.at> wrote in part:
> CMOVcc eax,[eax] ;may invoke a GP/PF fault regardles if condition is met
> [snip] Sure, most of you already knew it anyway ... or not ? :)

No, I did not. But it encourages me to use CMOV 'cuz I
don't read memory that doesn't belong to me, and I'm glad
of the errors/notification when I mistakenly try.

The worst bugs are those that only happen on "condition".

-- Robert

>
>
>
From: //o//annabee on
On Mon, 15 Oct 2007 21:09:46 +0200, Wolfgang Kern <nowhere(a)never.at> wrote:

> While I tried to get rid of some jumps, I figured it out the hard way,
> and I think it may be of help for other coders around to know:
>
> CMOVcc eax,[eax] ;may invoke a GP/PF fault regardles if condition is met
>
> while any
>
> Jcc over_next
> mov eax,[eax] ;may only raise an exception if executed at all
> over_next:
>
> So finally we should see CMOVcc r,[mem] as a limit-restricted
> instruction.
> Sure, most of you already knew it anyway ... or not ? :)

No, I have been avoiding it because I saw RH use it once.

> __
> wolfgang
>
>
>

From: alex on
Wolfgang Kern wrote:
> While I tried to get rid of some jumps, I figured it out the hard way,
> and I think it may be of help for other coders around to know:
>
> CMOVcc eax,[eax] ;may invoke a GP/PF fault regardles if condition is met
>
> while any
>
> Jcc over_next
> mov eax,[eax] ;may only raise an exception if executed at all
> over_next:
>
> So finally we should see CMOVcc r,[mem] as a limit-restricted instruction.
> Sure, most of you already knew it anyway ... or not ? :)
> __
> wolfgang
>

yep