aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog13
-rw-r--r--gas/read.c12
2 files changed, 18 insertions, 7 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 80c3266..2a1db5f 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2004-12-02 Alan Modra <amodra@bigpond.net.au>
+
+ * read.c (ALIGN_LIMIT): Define, increasing limit for BFD_ASSEMBLER.
+ (s_align): Use it.
+
2004-11-30 Tero Niemela <tero_niemela@yahoo.com>
* Makefile.am: Change LOCALEDIR to $(datadir)/share.
@@ -5,12 +10,12 @@
2004-11-29 Tomer Levi <Tomer.Levi@nsc.com>
- * config/tc-crx.c: Major code cleanup. Remove unused variables and functions,
- give functions a meaningful name, add comments.
- (check_range): New function - Replace operand size calculation
+ * config/tc-crx.c: Major code cleanup. Remove unused variables and
+ functions, give functions a meaningful name, add comments.
+ (check_range): New function - Replace operand size calculation
with range checking.
(assemble_insn): Update Algorithm, improve error issuing.
- (enum op_err): New - Operand error (for issuing operand error messages).
+ (enum op_err): New.
(process_label_constant): Bug fix regarding COP_BRANCH_INS relocation
handling.
diff --git a/gas/read.c b/gas/read.c
index d0bf2c1f..d1e52d6 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -1195,10 +1195,16 @@ do_align (int n, char *fill, int len, int max)
fill pattern. BYTES_P is non-zero if the alignment value should be
interpreted as the byte boundary, rather than the power of 2. */
+#ifdef BFD_ASSEMBLER
+#define ALIGN_LIMIT (stdoutput->arch_info->bits_per_address - 1)
+#else
+#define ALIGN_LIMIT 15
+#endif
+
static void
s_align (int arg, int bytes_p)
{
- register unsigned int align;
+ unsigned int align;
char *stop = NULL;
char stopc;
offsetT fill = 0;
@@ -1237,9 +1243,9 @@ s_align (int arg, int bytes_p)
}
}
- if (align > 15)
+ if (align > ALIGN_LIMIT)
{
- align = 15;
+ align = ALIGN_LIMIT;
as_warn (_("alignment too large: %u assumed"), align);
}