[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/14129] andq and orq instructions give 'invalid operand' er

From: anitha.boyapati at amd dot com
Subject: [Bug binutils/14129] andq and orq instructions give 'invalid operand' error when MSB of 32-bit immediate is set
Date: Fri, 25 May 2012 04:08:46 +0000


--- Comment #2 from Anitha Boyapati <anitha.boyapati at amd dot com> 2012-05-25 
04:08:46 UTC ---
(In reply to comment #1)
> orq and andq take a signed 32-bit value from -0x80000000 to
> 0x7ffffffff.  0xFFFFFF00 is out of range.

(Is 0x7ffffffff a typo for 0x7fffffff?)

Ref: http://download.intel.com/products/processor/manual/325462.pdf

chapter 3.2, 'and' instruction description:

"RAX AND imm32 signextended to 64-bits."

Ditto for OR.

andq and orq take 32-bit immediate values (and sign extend them to 64-bit)which
implies that the valid range is 0x0 to 0xFFFFFFFF. I fail to understand how
0xFFFFFF00 is out-of-range.

Although not a standard reference, I would also like to cite that microsoft
assembler does assemble the above instruction without error.

I think the bug is valid.

Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]