This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: PATCH: Move operand/address-size override prefixes before SIMD prefix
- From: malc <av1474 at comtv dot ru>
- To: Dave Korn <dave dot korn at artimi dot com>
- Cc: "'Menezes, Evandro'" <evandro dot menezes at amd dot com>, 'Jan Beulich' <jbeulich at novell dot com>, "'H. J. Lu'" <hjl at lucon dot org>, binutils at sourceware dot org
- Date: Fri, 8 Dec 2006 01:53:33 +0300 (MSK)
- Subject: RE: PATCH: Move operand/address-size override prefixes before SIMD prefix
- References: <002801c71a3f$511d3940$a501a8c0@CAM.ARTIMI.COM>
On Thu, 7 Dec 2006, Dave Korn wrote:
On 07 December 2006 12:34, malc wrote:
On Thu, 7 Dec 2006, Dave Korn wrote:
On 07 December 2006 11:50, malc wrote:
So your position is that it's #UD. Objdump disagrees with you, whether
rightfully or not is an open question (or original question if you will)
Well, can't you just try single-stepping over one in the debugger and see
if it executes something or blows up with an illegal instruction trap?
I can. This will proove exactly nothing though.
That's not quite correct, from a logical reasoning / experimental design
point of view.
I agree that if it did *not* cause an exception, that would in no way
guarantee that it was legal or valid or safe to use or that it would remain so
in any future revisions.
I disagree here, it might cause an exception on Opteron, might not cause
it on Athlon XP, might again cause it on Core Duo 2.. The possibilities
are endless (just like permutations of prefixes, and i'd have to check
them _ALL_)
OTOH, if it *did* cause an exception, it *would* prove that the instruction
was *not* valid.
So, it could have proved it one way but not the other.
Thanks for your insights though i disagree with them. (And i guess this
is getting off topic here)
--
vale