summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/sb.c10
-rw-r--r--gas/sb.h1
3 files changed, 16 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index e4cfd38664..f74ddadcc9 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,10 @@
2005-05-06 Jan Beulich <jbeulich@novell.com>
+ * sb.h (sb_add_buffer): Reintroduce.
+ * sb.c (sb_add_buffer): Likewise.
+
+2005-05-06 Jan Beulich <jbeulich@novell.com>
+
* macro.c (new_formal, del_formal): New.
(do_formals): Use new_formal. Check for and parse qualifier. Warn if
required argument has default value. Stop looking for more formal
diff --git a/gas/sb.c b/gas/sb.c
index 0195c9226b..ba430cfd6c 100644
--- a/gas/sb.c
+++ b/gas/sb.c
@@ -165,6 +165,16 @@ sb_add_string (sb *ptr, const char *s)
ptr->len += len;
}
+/* add string at s of length len to sb at ptr */
+
+void
+sb_add_buffer (sb *ptr, const char *s, int len)
+{
+ sb_check (ptr, len);
+ memcpy (ptr->ptr + ptr->len, s, len);
+ ptr->len += len;
+}
+
/* like sb_name, but don't include the null byte in the string. */
char *
diff --git a/gas/sb.h b/gas/sb.h
index aec5a516ff..5761bd96ae 100644
--- a/gas/sb.h
+++ b/gas/sb.h
@@ -82,6 +82,7 @@ extern void sb_add_sb (sb *, sb *);
extern void sb_reset (sb *);
extern void sb_add_char (sb *, int);
extern void sb_add_string (sb *, const char *);
+extern void sb_add_buffer (sb *, const char *, int);
extern char *sb_terminate (sb *);
extern int sb_skip_white (int, sb *);
extern int sb_skip_comma (int, sb *);