PR11867, bignum operations
H.J. Lu
hjl.tools@gmail.com
Mon Aug 2 22:06:00 GMT 2010
On Mon, Aug 2, 2010 at 2:44 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Mon, Aug 2, 2010 at 2:38 PM, Richard Sandiford
> <rdsandiford@googlemail.com> wrote:
>> "H.J. Lu" <hjl.tools@gmail.com> writes:
>>> On Mon, Aug 2, 2010 at 6:18 AM, Alan Modra <amodra@gmail.com> wrote:
>>>> gas only supports the unary '-', '~', and '!' operators for bignums,
>>>> and all three were broken. '!' gave the logical inverse of the proper
>>>> result, and the other two ignored any leading zeros.
>>>>
>>>> PR gas/11867
>>>> * expr.c (operand <'-' and '~'>): Widen bignums.
>>>> (operand <'!'>): Correct bignum result and convert to O_constant.
>>>> * read.c (emit_expr): Don't assert on .byte bignum. Don't display
>>>> bignum truncated warning for sign extended bignums.
>>>>
>>>
>>> I checked in this testcase.
>>
>>> +Contents of section .data:
>>> + 0000 00000000 fa448607 00000000 fdffffff .....D..........
>>
>> Doesn't this need a big-endian alternative?
>>
>
> I guess so.
>
I checked in this to limit it to i*86, x86_64 and ia64.
--
H.J.
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index e3b76a3..b5d0666 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,5 +1,9 @@
2010-08-02 H.J. Lu <hongjiu.lu@intel.com>
+ * elf/elf.exp: Run data-1 only for i*86, x86_64 and ia64.
+
+2010-08-02 H.J. Lu <hongjiu.lu@intel.com>
+
PR gas/11867
* gas/elf/data-1.d: New.
* gas/elf/data-1.s: Likewise.
diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp
index e06db46..0dcc000 100644
--- a/gas/testsuite/gas/elf/elf.exp
+++ b/gas/testsuite/gas/elf/elf.exp
@@ -127,7 +127,12 @@ if { ([istarget "*-*-*elf*"]
run_dump_test equ-reloc
}
}
- run_dump_test "data-1"
+ if {[istarget "i*86-*-*"]
+ || [istarget "x86_64-*-*"]
+ || [istarget "ia64-*-*"]} then {
+ # This is a little endian test.
+ run_dump_test "data-1"
+ }
run_dump_test "pseudo"
run_dump_test "section0"
run_dump_test "section1"
More information about the Binutils
mailing list