Support the .f_floating, .d_floating, .g_floating and .h_floating directives
authorNick Clifton <nickc@redhat.com>
Fri, 1 Apr 2005 14:17:17 +0000 (14:17 +0000)
committerNick Clifton <nickc@redhat.com>
Fri, 1 Apr 2005 14:17:17 +0000 (14:17 +0000)
for the VAX target in order to be more compatible with the VAX MACRO assembler.

gas/ChangeLog
gas/NEWS
gas/config/atof-vax.c
gas/config/tc-vax.c
gas/testsuite/ChangeLog
gas/testsuite/gas/vax/flonum.d [new file with mode: 0644]
gas/testsuite/gas/vax/flonum.s [new file with mode: 0644]
gas/testsuite/gas/vax/vax.exp

index 46cdf48e9bbd614d31f6ebf8c3a00aa98ad873fd..7642fd76bff1073e128f19af828b3b844742ec3c 100644 (file)
@@ -1,3 +1,9 @@
+2005-04-01  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
+
+       * NEWS: Mention [fdgh]_floating.
+       * config/atof-vax.c: Fix some whitespace.
+       * config/tc-vax.c (md_pseudo_table): Add "[fdgh]_floating".
+
 2005-04-01  Nick Clifton  <nickc@redhat.com>
 
        * configure.in: Add a check for <unistd.h> providing a prototype
index a0aa0886452b2f21236ed27f3674ef173831f737..0e9b332501a3294be55c832c2cfe01744d928161 100644 (file)
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -1,5 +1,9 @@
 -*- text -*-
 
+* Support the .f_floating, .d_floating, .g_floating and .h_floating directives
+  for the VAX target in order to be more compatible with the VAX MACRO
+  assembler.
+
 * New command line option -mtune=[itanium1|itanium2] for IA64 targets.
 
 Changes in 2.16:
index b94e5609f91406eb744fd6443e65429495f9442e..7cc139b9fcb6098b62b82899837a7954723c689e 100644 (file)
@@ -29,7 +29,7 @@
 #define F_PRECISION    2
 
 /* Length in LittleNums of guard bits.  */
-#define GUARD          2
+#define GUARD          2
 
 int flonum_gen2vax (int, FLONUM_TYPE *, LITTLENUM_TYPE *);
 
index 1b4e6f1793c7f8effc98a542e060d89c277b9b00..fef859e80664fbb81268d56df7e6c6c301cda5de 100644 (file)
@@ -251,6 +251,10 @@ const pseudo_typeS md_pseudo_table[] =
   {"ffloat", float_cons, 'f'},
   {"gfloat", float_cons, 'g'},
   {"hfloat", float_cons, 'h'},
+  {"d_floating", float_cons, 'd'},
+  {"f_floating", float_cons, 'f'},
+  {"g_floating", float_cons, 'g'},
+  {"h_floating", float_cons, 'h'},
   {NULL, NULL, 0},
 };
 
index 44bf28f9d0abaddac0afcd36d2ebeaa09ad40c7c..be44600311815c6dd37a6d0af5307512fda9a741 100644 (file)
@@ -1,9 +1,12 @@
 2005-04-01  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
 
-       * gas/testsuite/gas/vax/elf-rel.d: Call gas with -k. Thanks to
-       Matt Thomas for figuring out.
-       * gas/testsuite/gas/vax/vax.exp: Run elf-rel.[sd] for NetBSD-ELF
-       and Linux.
+       * gas/vax/flonum.s: New testcase: Encode some flonums.
+       * gas/vax/flonum.d: Expected result of new testcase.
+       * gas/vax/vax.exp: Call the new testcase.
+
+       * gas/vax/elf-rel.d: Call gas with -k. Thanks to Matt Thomas for
+       figuring out.
+       * gas/vax/vax.exp: Run elf-rel.[sd] for NetBSD-ELF and Linux.
 
 2005-04-01  Jan Beulich  <jbeulich@novell.com>
 
diff --git a/gas/testsuite/gas/vax/flonum.d b/gas/testsuite/gas/vax/flonum.d
new file mode 100644 (file)
index 0000000..38d20cd
--- /dev/null
@@ -0,0 +1,12 @@
+#objdump: -sw
+#name: VAX flonum test
+
+.*:     file format .*
+
+Contents of section .data:
+ 0000 fc3e5bd3 9e401006 1641751f 5d41e23b  .*
+ 0010 5d2e5de1 9241272c 37a6ce36 b5418cb9  .*
+ 0020 287e0b24 3b40f227 c83c2bde 3f407b8f  .*
+ 0030 069ee40f 0440d61c 4ce09205 3810675c  .*
+ 0040 e3df062a 04406520 db16d80d d72f205e  .*
+ 0050 c746ae64                             .*
diff --git a/gas/testsuite/gas/vax/flonum.s b/gas/testsuite/gas/vax/flonum.s
new file mode 100644 (file)
index 0000000..9793c38
--- /dev/null
@@ -0,0 +1,12 @@
+.data
+
+.float         0.12345
+.ffloat                1.23456
+.f_floating    2.34567
+.double                3.45678
+.dfloat                4.56789
+.d_floating    5.67890
+.gfloat                6.78901
+.g_floating    7.89012
+.hfloat                8.90123
+.h_floating    9.01234
index 7ba8c27548c513693baf7b2024a8bd7c434eaa26..d1b998698aa06d13b9ea99a5cb87cb35c2ed7a57 100644 (file)
@@ -29,6 +29,8 @@ proc do_quad {} {
 if [istarget vax-*-* ] then {
     do_quad
 
+    run_dump_test "flonum"
+
     if { [istarget vax-*-*elf*] || [istarget vax-*-linux-gnu*] } then {
        run_dump_test "elf-rel"
     }