This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: PR11867, bignum operations
On Tue, Aug 03, 2010 at 09:05:03AM +0200, Tristan Gingold wrote:
> ia64 hpux is big-endian.
I'm going to remove it. A quad value will fit in a 64-bit bfd_vma.
Testing bignum operations effectively requires .octa, as in the
following patch. I'll commit it when testing completes.
* gas/all/octa.s, * gas/all/octa.d: New test.
* gas/all/gas.exp: Run octa.
* gas/elf/data-1.s, * gas/elf/data-1.d: Delete.
* gas/elf/elf.exp: Don't run data-1.
Index: gas/testsuite/gas/all/gas.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/all/gas.exp,v
retrieving revision 1.63
diff -u -p -r1.63 gas.exp
--- gas/testsuite/gas/all/gas.exp 2 Aug 2010 08:48:56 -0000 1.63
+++ gas/testsuite/gas/all/gas.exp 3 Aug 2010 09:24:42 -0000
@@ -339,6 +339,7 @@ if { ![istarget "i960-*-*"] } {
run_dump_test quad
}
+run_dump_test octa
# .set works differently on some targets.
case $target_triplet in {
Index: gas/testsuite/gas/all/octa.d
===================================================================
RCS file: gas/testsuite/gas/all/octa.d
diff -N gas/testsuite/gas/all/octa.d
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gas/testsuite/gas/all/octa.d 3 Aug 2010 09:24:42 -0000
@@ -0,0 +1,8 @@
+#objdump: -s -j .data
+#name: octa bignum
+
+.*: +file format .*
+
+Contents of section .data:
+ 0+00 (ffff3344 55667788 99aabbcc ddeeffff|ffffeedd ccbbaa99 88776655 4433ffff) .*
+ 0+10 (00003444 55667788 99aabbcc ddeeffff|ffffeedd ccbbaa99 88776655 44340000) .*
Index: gas/testsuite/gas/all/octa.s
===================================================================
RCS file: gas/testsuite/gas/all/octa.s
diff -N gas/testsuite/gas/all/octa.s
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gas/testsuite/gas/all/octa.s 3 Aug 2010 09:24:42 -0000
@@ -0,0 +1,6 @@
+ .data
+ .octa ~0x112233445566778899aabbcc0000
+ .octa -347510587133311339321256747728896
+# '!' is end of line char on frv, hppa, m32r, rx
+# '!' starts a comment on i860, m68hc11, m68hc12, mmix, pj, sh, sparc, c4x, z8k
+# .octa !0x100000000000000000000000000000000
Index: gas/testsuite/gas/elf/data-1.d
===================================================================
RCS file: gas/testsuite/gas/elf/data-1.d
diff -N gas/testsuite/gas/elf/data-1.d
--- gas/testsuite/gas/elf/data-1.d 2 Aug 2010 20:10:45 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,7 +0,0 @@
-#objdump: -s -j .data
-#name: elf data
-
-.*: +file format .*
-
-Contents of section .data:
- 0000 00000000 fa448607 00000000 fdffffff .....D..........
Index: gas/testsuite/gas/elf/data-1.s
===================================================================
RCS file: gas/testsuite/gas/elf/data-1.s
diff -N gas/testsuite/gas/elf/data-1.s
--- gas/testsuite/gas/elf/data-1.s 2 Aug 2010 20:10:45 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,3 +0,0 @@
- .data
- .quad 542196645677236224
- .quad -12884901888
Index: gas/testsuite/gas/elf/elf.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/elf/elf.exp,v
retrieving revision 1.63
diff -u -p -r1.63 elf.exp
--- gas/testsuite/gas/elf/elf.exp 2 Aug 2010 22:05:23 -0000 1.63
+++ gas/testsuite/gas/elf/elf.exp 3 Aug 2010 09:24:42 -0000
@@ -127,12 +127,6 @@ if { ([istarget "*-*-*elf*"]
run_dump_test equ-reloc
}
}
- 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"
--
Alan Modra
Australia Development Lab, IBM