This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: PR11867, bignum operations
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"