use do_align () directly in tc-ia64.c
authorTrevor Saunders <tbsaunde+binutils@tbsaunde.org>
Sun, 28 Feb 2016 23:00:00 +0000 (18:00 -0500)
committerTrevor Saunders <tbsaunde+binutils@tbsaunde.org>
Tue, 22 Mar 2016 23:08:50 +0000 (19:08 -0400)
gas/ChangeLog:

2016-03-22  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>

* config/tc-ia64.c (ia64_do_align): Remove.
(ia64_cons_align): Call do_align () directly.
(dot_proc): Likewise.
(stmt_float_cons): Likewise.

gas/ChangeLog
gas/config/tc-ia64.c

index 4aa12925c403b949e78be63e48cdb35242d5e4bf..0c5d973dc8e7fa1972bc16f0648bfd60ba24de8e 100644 (file)
@@ -1,3 +1,10 @@
+2016-03-22  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
+
+       * config/tc-ia64.c (ia64_do_align): Remove.
+       (ia64_cons_align): Call do_align () directly.
+       (dot_proc): Likewise.
+       (stmt_float_cons): Likewise.
+
 2016-03-22  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
 
        * listing.c (listing_message): Use XNEW style allocation macros.
index c2f7372b3efb7ebc6f17bf38cc7213d8f63bff6d..edb2683b8abfef2fa34103f7d33ce2f6c3ae528e 100644 (file)
@@ -1025,25 +1025,16 @@ ia64_flush_insns (void)
     as_bad (_("qualifying predicate not followed by instruction"));
 }
 
-static void
-ia64_do_align (int nbytes)
-{
-  char *saved_input_line_pointer = input_line_pointer;
-
-  input_line_pointer = "";
-  s_align_bytes (nbytes);
-  input_line_pointer = saved_input_line_pointer;
-}
-
 void
 ia64_cons_align (int nbytes)
 {
   if (md.auto_align)
     {
-      char *saved_input_line_pointer = input_line_pointer;
-      input_line_pointer = "";
-      s_align_bytes (nbytes);
-      input_line_pointer = saved_input_line_pointer;
+      int log;
+      for (log = 0; (nbytes & 1) != 1; nbytes >>= 1)
+       log++;
+
+      do_align (log, NULL, 0, 0);
     }
 }
 
@@ -4290,7 +4281,7 @@ dot_proc (int dummy ATTRIBUTE_UNUSED)
     }
   last_pending->next = NULL;
   demand_empty_rest_of_line ();
-  ia64_do_align (16);
+  do_align (4, NULL, 0, 0);
 
   unwind.prologue = 0;
   unwind.prologue_count = 0;
@@ -4843,20 +4834,20 @@ stmt_float_cons (int kind)
   switch (kind)
     {
     case 'd':
-      alignment = 8;
+      alignment = 3;
       break;
 
     case 'x':
     case 'X':
-      alignment = 16;
+      alignment = 4;
       break;
 
     case 'f':
     default:
-      alignment = 4;
+      alignment = 2;
       break;
     }
-  ia64_do_align (alignment);
+  do_align (alignment, NULL, 0, 0);
   float_cons (kind);
 }