From 0a433ebc90ae1d3d86382757aa049a0e91bd5019 Mon Sep 17 00:00:00 2001 From: Trevor Saunders Date: Sun, 28 Feb 2016 18:00:00 -0500 Subject: [PATCH] use do_align () directly in tc-ia64.c gas/ChangeLog: 2016-03-22 Trevor Saunders * config/tc-ia64.c (ia64_do_align): Remove. (ia64_cons_align): Call do_align () directly. (dot_proc): Likewise. (stmt_float_cons): Likewise. --- gas/ChangeLog | 7 +++++++ gas/config/tc-ia64.c | 29 ++++++++++------------------- 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 4aa12925c4..0c5d973dc8 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2016-03-22 Trevor Saunders + + * 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 * listing.c (listing_message): Use XNEW style allocation macros. diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index c2f7372b3e..edb2683b8a 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -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); } -- 2.34.1