SOURCES: binutils-gasp.patch - no orig

arekm arekm at pld-linux.org
Thu Jul 21 21:03:01 CEST 2005


Author: arekm                        Date: Thu Jul 21 19:03:01 2005 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- no orig

---- Files affected:
SOURCES:
   binutils-gasp.patch (1.9 -> 1.10) 

---- Diffs:

================================================================
Index: SOURCES/binutils-gasp.patch
diff -u SOURCES/binutils-gasp.patch:1.9 SOURCES/binutils-gasp.patch:1.10
--- SOURCES/binutils-gasp.patch:1.9	Thu Jul 21 20:54:11 2005
+++ SOURCES/binutils-gasp.patch	Thu Jul 21 21:02:56 2005
@@ -5671,107 +5671,6 @@
 +extern const char *expand_irp (int, int, sb *, sb *, int (*) (sb *), int);
  
  #endif
-diff -urNbB binutils-2.16.91.0.2.org/gas/macro.h.orig binutils-2.16.91.0.2/gas/macro.h.orig
---- binutils-2.16.91.0.2.org/gas/macro.h.orig	1970-01-01 00:00:00.000000000 +0000
-+++ binutils-2.16.91.0.2/gas/macro.h.orig	2005-05-10 22:46:44.000000000 +0000
-@@ -0,0 +1,97 @@
-+/* macro.h - header file for macro support for gas
-+   Copyright 1994, 1995, 1996, 1997, 1998, 2000, 2002, 2003, 2004
-+   Free Software Foundation, Inc.
-+
-+   Written by Steve and Judy Chamberlain of Cygnus Support,
-+      sac at cygnus.com
-+
-+   This file is part of GAS, the GNU Assembler.
-+
-+   GAS is free software; you can redistribute it and/or modify
-+   it under the terms of the GNU General Public License as published by
-+   the Free Software Foundation; either version 2, or (at your option)
-+   any later version.
-+
-+   GAS is distributed in the hope that it will be useful,
-+   but WITHOUT ANY WARRANTY; without even the implied warranty of
-+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+   GNU General Public License for more details.
-+
-+   You should have received a copy of the GNU General Public License
-+   along with GAS; see the file COPYING.  If not, write to the Free
-+   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
-+   02110-1301, USA.  */
-+
-+#ifndef MACRO_H
-+
-+#define MACRO_H
-+
-+#include "ansidecl.h"
-+#include "sb.h"
-+
-+/* Structures used to store macros.
-+
-+   Each macro knows its name and included text.  It gets built with a
-+   list of formal arguments, and also keeps a hash table which points
-+   into the list to speed up formal search.  Each formal knows its
-+   name and its default value.  Each time the macro is expanded, the
-+   formals get the actual values attached to them.  */
-+
-+/* Describe the formal arguments to a macro.  */
-+
-+typedef struct formal_struct {
-+  struct formal_struct *next;	/* Next formal in list.  */
-+  sb name;			/* Name of the formal.  */
-+  sb def;			/* The default value.  */
-+  sb actual;			/* The actual argument (changed on each expansion).  */
-+  int index;			/* The index of the formal 0..formal_count - 1.  */
-+  enum formal_type
-+    {
-+      FORMAL_OPTIONAL,
-+      FORMAL_REQUIRED,
-+      FORMAL_VARARG
-+    } type;			/* The kind of the formal.  */
-+} formal_entry;
-+
-+/* Other values found in the index field of a formal_entry.  */
-+#define QUAL_INDEX (-1)
-+#define NARG_INDEX (-2)
-+#define LOCAL_INDEX (-3)
-+
-+/* Describe the macro.  */
-+
-+typedef struct macro_struct
-+{
-+  sb sub;				/* Substitution text.  */
-+  int formal_count;			/* Number of formal args.  */
-+  formal_entry *formals;		/* Pointer to list of formal_structs.  */
-+  struct hash_control *formal_hash;	/* Hash table of formals.  */
-+  const char *name;			/* Macro name.  */
-+  char *file;				/* File the macro was defined in.  */
-+  unsigned int line;			/* Line number of definition.  */
-+} macro_entry;
-+
-+/* Whether any macros have been defined.  */
-+
-+extern int macro_defined;
-+
-+/* The macro nesting level.  */
-+
-+extern int macro_nest;
-+
-+/* The macro hash table.  */
-+
-+extern struct hash_control *macro_hash;
-+
-+extern int buffer_and_nest (const char *, const char *, sb *, int (*) (sb *));
-+extern void macro_init
-+  (int, int, int, int (*) (const char *, int, sb *, int *));
-+extern void macro_set_alternate (int);
-+extern void macro_mri_mode (int);
-+extern const char *define_macro
-+  (int, sb *, sb *, int (*) (sb *), char *, unsigned int, const char **);
-+extern int check_macro (const char *, sb *, const char **, macro_entry **);
-+extern void delete_macro (const char *);
-+extern const char *expand_irp (int, int, sb *, sb *, int (*) (sb *));
-+
-+#endif
 diff -urNbB binutils-2.16.91.0.2.org/gas/read.c binutils-2.16.91.0.2/gas/read.c
 --- binutils-2.16.91.0.2.org/gas/read.c	2005-06-22 20:53:34.000000000 +0000
 +++ binutils-2.16.91.0.2/gas/read.c	2005-07-21 18:31:04.000000000 +0000
@@ -5793,5329 +5692,3 @@
    if (err != NULL)
      as_bad_where (file, line, "%s", err);
  
-diff -urNbB binutils-2.16.91.0.2.org/gas/read.c.orig binutils-2.16.91.0.2/gas/read.c.orig
---- binutils-2.16.91.0.2.org/gas/read.c.orig	1970-01-01 00:00:00.000000000 +0000
-+++ binutils-2.16.91.0.2/gas/read.c.orig	2005-06-22 20:53:34.000000000 +0000
-@@ -0,0 +1,5322 @@
-+/* read.c - read a source file -
-+   Copyright 1986, 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
-+   1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-+   Free Software Foundation, Inc.
-+
-+This file is part of GAS, the GNU Assembler.
-+
-+GAS is free software; you can redistribute it and/or modify
-+it under the terms of the GNU General Public License as published by
-+the Free Software Foundation; either version 2, or (at your option)
-+any later version.
-+
-+GAS is distributed in the hope that it will be useful,
-+but WITHOUT ANY WARRANTY; without even the implied warranty of
-+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+GNU General Public License for more details.
-+
-+You should have received a copy of the GNU General Public License
-+along with GAS; see the file COPYING.  If not, write to the Free
-+Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
-+02110-1301, USA.  */
-+
-+/* If your chars aren't 8 bits, you will change this a bit (eg. to 0xFF).
-+   But then, GNU isn't spozed to run on your machine anyway.
-+   (RMS is so shortsighted sometimes.)  */
-+#define MASK_CHAR ((int)(unsigned char) -1)
-+
-+/* This is the largest known floating point format (for now). It will
-+   grow when we do 4361 style flonums.  */
-+#define MAXIMUM_NUMBER_OF_CHARS_FOR_FLOAT (16)
-+
-+/* Routines that read assembler source text to build spaghetti in memory.
-+   Another group of these functions is in the expr.c module.  */
-+
-+#include "as.h"
-+#include "safe-ctype.h"
-+#include "subsegs.h"
-+#include "sb.h"
-+#include "macro.h"
-+#include "obstack.h"
-+#include "listing.h"
-+#include "ecoff.h"
-+#include "dw2gencfi.h"
-+
-+#ifndef TC_START_LABEL
-+#define TC_START_LABEL(x,y) (x == ':')
-+#endif
-+
-+/* Set by the object-format or the target.  */
-+#ifndef TC_IMPLICIT_LCOMM_ALIGNMENT
-+#define TC_IMPLICIT_LCOMM_ALIGNMENT(SIZE, P2VAR)		\
-+  do								\
-+    {								\
-+      if ((SIZE) >= 8)						\
-+	(P2VAR) = 3;						\
-+      else if ((SIZE) >= 4)					\
-+	(P2VAR) = 2;						\
-+      else if ((SIZE) >= 2)					\
-+	(P2VAR) = 1;						\
-+      else							\
-+	(P2VAR) = 0;						\
-+    }								\
-+  while (0)
-+#endif
-+
-+char *input_line_pointer;	/*->next char of source file to parse.  */
-+
-+#if BITS_PER_CHAR != 8
-+/*  The following table is indexed by[(char)] and will break if
-+    a char does not have exactly 256 states (hopefully 0:255!)!  */
-+die horribly;
-+#endif
-+
-+#ifndef LEX_AT
-+/* The m88k unfortunately uses @ as a label beginner.  */
-+#define LEX_AT 0
-+#endif
-+
-+#ifndef LEX_BR
-+/* The RS/6000 assembler uses {,},[,] as parts of symbol names.  */
-+#define LEX_BR 0
-+#endif
-+
-+#ifndef LEX_PCT
-+/* The Delta 68k assembler permits % inside label names.  */
-+#define LEX_PCT 0
-+#endif
-+
-+#ifndef LEX_QM
-+/* The PowerPC Windows NT assemblers permits ? inside label names.  */
-+#define LEX_QM 0
-+#endif
-+
-+#ifndef LEX_HASH
-+/* The IA-64 assembler uses # as a suffix designating a symbol.  We include
-+   it in the symbol and strip it out in tc_canonicalize_symbol_name.  */
-+#define LEX_HASH 0
-+#endif
-+
-+#ifndef LEX_DOLLAR
-+/* The a29k assembler does not permits labels to start with $.  */
-+#define LEX_DOLLAR 3
-+#endif
-+
-+#ifndef LEX_TILDE
-+/* The Delta 68k assembler permits ~ at start of label names.  */
-+#define LEX_TILDE 0
-+#endif
-+
-+/* Used by is_... macros. our ctype[].  */
-+char lex_type[256] = {
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* @ABCDEFGHIJKLMNO */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* PQRSTUVWXYZ[\]^_ */
-+  0, 0, 0, LEX_HASH, LEX_DOLLAR, LEX_PCT, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, /* _!"#$%&'()*+,-./ */
-+  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, LEX_QM,	/* 0123456789:;<=>? */
-+  LEX_AT, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,	/* @ABCDEFGHIJKLMNO */
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, LEX_BR, 0, LEX_BR, 0, 3, /* PQRSTUVWXYZ[\]^_ */
-+  0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,	/* `abcdefghijklmno */
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, LEX_BR, 0, LEX_BR, LEX_TILDE, 0, /* pqrstuvwxyz{|}~.  */
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
-+  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3
-+};
-+
-+/* In: a character.
-+   Out: 1 if this character ends a line.  */
-+char is_end_of_line[256] = {
-+#ifdef CR_EOL
-+  1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0,	/* @abcdefghijklmno */
-+#else
-+  1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,	/* @abcdefghijklmno */
-+#endif
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* _!"#$%&'()*+,-./ */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* 0123456789:;<=>? */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/* */
-+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0	/* */
-+};
-+
-+#ifndef TC_CASE_SENSITIVE
-+char original_case_string[128];
-+#endif
-+
-+/* Functions private to this file.  */
-+
-+static char *buffer;	/* 1st char of each buffer of lines is here.  */
-+static char *buffer_limit;	/*->1 + last char in buffer.  */
-+
-+/* TARGET_BYTES_BIG_ENDIAN is required to be defined to either 0 or 1
-+   in the tc-<CPU>.h file.  See the "Porting GAS" section of the
-+   internals manual.  */
-+int target_big_endian = TARGET_BYTES_BIG_ENDIAN;
-+
-+/* Variables for handling include file directory table.  */
-+
-+/* Table of pointers to directories to search for .include's.  */
-+char **include_dirs;
-+
-+/* How many are in the table.  */
-+int include_dir_count;
-+
-+/* Length of longest in table.  */
-+int include_dir_maxlen = 1;
-+
-+#ifndef WORKING_DOT_WORD
-+struct broken_word *broken_words;
-+int new_broken_words;
-+#endif
-+
-+/* The current offset into the absolute section.  We don't try to
-+   build frags in the absolute section, since no data can be stored
-+   there.  We just keep track of the current offset.  */
-+addressT abs_section_offset;
-+
-+/* If this line had an MRI style label, it is stored in this variable.
-+   This is used by some of the MRI pseudo-ops.  */
-+symbolS *line_label;
-+
-+/* This global variable is used to support MRI common sections.  We
-+   translate such sections into a common symbol.  This variable is
-+   non-NULL when we are in an MRI common section.  */
-+symbolS *mri_common_symbol;
-+
-+/* In MRI mode, after a dc.b pseudo-op with an odd number of bytes, we
-+   need to align to an even byte boundary unless the next pseudo-op is
-+   dc.b, ds.b, or dcb.b.  This variable is set to 1 if an alignment
-+   may be needed.  */
-+static int mri_pending_align;
-+
-+#ifndef NO_LISTING
-+#ifdef OBJ_ELF
-+/* This variable is set to be non-zero if the next string we see might
-+   be the name of the source file in DWARF debugging information.  See
-+   the comment in emit_expr for the format we look for.  */
-+static int dwarf_file_string;
-+#endif
-+#endif
-+
-+static void do_s_func (int end_p, const char *default_prefix);
-+static void do_align (int, char *, int, int);
-+static void s_align (int, int);
-+static void s_altmacro (int);
-+static void s_bad_end (int);
-+static int hex_float (int, char *);
-+static segT get_known_segmented_expression (expressionS * expP);
-+static void pobegin (void);
-+static int get_line_sb (sb *);
-+static void generate_file_debug (void);
-+static char *_find_end_of_line (char *, int, int);
-+
-+void
-+read_begin (void)
-+{
-+  const char *p;
-+
-+  pobegin ();
-+  obj_read_begin_hook ();
-+
-+  /* Something close -- but not too close -- to a multiple of 1024.
-+     The debugging malloc I'm using has 24 bytes of overhead.  */
-+  obstack_begin (&notes, chunksize);
-+  obstack_begin (&cond_obstack, chunksize);
-+
-+  /* Use machine dependent syntax.  */
-+  for (p = line_separator_chars; *p; p++)
-+    is_end_of_line[(unsigned char) *p] = 1;
-+  /* Use more.  FIXME-SOMEDAY.  */
-+
-+  if (flag_mri)
-+    lex_type['?'] = 3;
-+}
-+
-+#ifndef TC_ADDRESS_BYTES
-+#ifdef BFD_ASSEMBLER
-+#define TC_ADDRESS_BYTES address_bytes
-+
-+static inline int
-+address_bytes (void)
-+{
-+  /* Choose smallest of 1, 2, 4, 8 bytes that is large enough to
-+     contain an address.  */
-+  int n = (stdoutput->arch_info->bits_per_address - 1) / 8;
-+  n |= n >> 1;
-+  n |= n >> 2;
-+  n += 1;
-+  return n;
-+}
-+#endif
-+#endif
-+
-+/* Set up pseudo-op tables.  */
-+
-+static struct hash_control *po_hash;
-+
-+static const pseudo_typeS potable[] = {
-+  {"abort", s_abort, 0},
-+  {"align", s_align_ptwo, 0},
-+  {"altmacro", s_altmacro, 1},
-+  {"ascii", stringer, 0},
-+  {"asciz", stringer, 1},
-+  {"balign", s_align_bytes, 0},
-+  {"balignw", s_align_bytes, -2},
-+  {"balignl", s_align_bytes, -4},
-+/* block  */
-+  {"byte", cons, 1},
-+  {"comm", s_comm, 0},
-+  {"common", s_mri_common, 0},
-+  {"common.s", s_mri_common, 1},
-+  {"data", s_data, 0},
-+  {"dc", cons, 2},
-+#ifdef TC_ADDRESS_BYTES
-+  {"dc.a", cons, 0},
-+#endif
-+  {"dc.b", cons, 1},
-+  {"dc.d", float_cons, 'd'},
-+  {"dc.l", cons, 4},
-+  {"dc.s", float_cons, 'f'},
-+  {"dc.w", cons, 2},
-+  {"dc.x", float_cons, 'x'},
-+  {"dcb", s_space, 2},
-+  {"dcb.b", s_space, 1},
-+  {"dcb.d", s_float_space, 'd'},
-+  {"dcb.l", s_space, 4},
-+  {"dcb.s", s_float_space, 'f'},
-+  {"dcb.w", s_space, 2},
-+  {"dcb.x", s_float_space, 'x'},
-+  {"ds", s_space, 2},
-+  {"ds.b", s_space, 1},
-+  {"ds.d", s_space, 8},
-+  {"ds.l", s_space, 4},
-+  {"ds.p", s_space, 12},
-+  {"ds.s", s_space, 4},
-+  {"ds.w", s_space, 2},
-+  {"ds.x", s_space, 12},
-+  {"debug", s_ignore, 0},
-+#ifdef S_SET_DESC
-+  {"desc", s_desc, 0},
-+#endif
-+/* dim  */
-+  {"double", float_cons, 'd'},
-+/* dsect  */
-+  {"eject", listing_eject, 0},	/* Formfeed listing.  */
-+  {"else", s_else, 0},
-+  {"elsec", s_else, 0},
-+  {"elseif", s_elseif, (int) O_ne},
-+  {"end", s_end, 0},
-+  {"endc", s_endif, 0},
-+  {"endfunc", s_func, 1},
-+  {"endif", s_endif, 0},
-+  {"endm", s_bad_end, 0},
-+  {"endr", s_bad_end, 1},
-+/* endef  */
-+  {"equ", s_set, 0},
-+  {"equiv", s_set, 1},
-+  {"err", s_err, 0},
-+  {"error", s_errwarn, 1},
-+  {"exitm", s_mexit, 0},
-+/* extend  */
-+  {"extern", s_ignore, 0},	/* We treat all undef as ext.  */
-+  {"appfile", s_app_file, 1},
-+  {"appline", s_app_line, 0},
-+  {"fail", s_fail, 0},
-+  {"file", s_app_file, 0},
-+  {"fill", s_fill, 0},
-+  {"float", float_cons, 'f'},
-+  {"format", s_ignore, 0},
-+  {"func", s_func, 0},
-+  {"global", s_globl, 0},
-+  {"globl", s_globl, 0},
-+  {"hword", cons, 2},
-+  {"if", s_if, (int) O_ne},
-+  {"ifb", s_ifb, 1},
-+  {"ifc", s_ifc, 0},
-+  {"ifdef", s_ifdef, 0},
-+  {"ifeq", s_if, (int) O_eq},
-+  {"ifeqs", s_ifeqs, 0},
-+  {"ifge", s_if, (int) O_ge},
-+  {"ifgt", s_if, (int) O_gt},
-+  {"ifle", s_if, (int) O_le},
-+  {"iflt", s_if, (int) O_lt},
-+  {"ifnb", s_ifb, 0},
-+  {"ifnc", s_ifc, 1},
-+  {"ifndef", s_ifdef, 1},
-+  {"ifne", s_if, (int) O_ne},
-+  {"ifnes", s_ifeqs, 1},
-+  {"ifnotdef", s_ifdef, 1},
-+  {"incbin", s_incbin, 0},
-+  {"include", s_include, 0},
-+  {"int", cons, 4},
-+  {"irp", s_irp, 0},
-+  {"irep", s_irp, 0},
-+  {"irpc", s_irp, 1},
-+  {"irepc", s_irp, 1},
-+  {"lcomm", s_lcomm, 0},
-+  {"lflags", listing_flags, 0},	/* Listing flags.  */
-+  {"linkonce", s_linkonce, 0},
-+  {"list", listing_list, 1},	/* Turn listing on.  */
-+  {"llen", listing_psize, 1},
-+  {"long", cons, 4},
-+  {"lsym", s_lsym, 0},
-+  {"macro", s_macro, 0},
-+  {"mexit", s_mexit, 0},
-+  {"mri", s_mri, 0},
-+  {".mri", s_mri, 0},	/* Special case so .mri works in MRI mode.  */
-+  {"name", s_ignore, 0},
-+  {"noaltmacro", s_altmacro, 0},
-+  {"noformat", s_ignore, 0},
-+  {"nolist", listing_list, 0},	/* Turn listing off.  */
-+  {"nopage", listing_nopage, 0},
-+  {"octa", cons, 16},
-+  {"offset", s_struct, 0},
-+  {"org", s_org, 0},
-+  {"p2align", s_align_ptwo, 0},
-+  {"p2alignw", s_align_ptwo, -2},
-+  {"p2alignl", s_align_ptwo, -4},
-+  {"page", listing_eject, 0},
-+  {"plen", listing_psize, 0},
-+  {"print", s_print, 0},
-+  {"psize", listing_psize, 0},	/* Set paper size.  */
-+  {"purgem", s_purgem, 0},
-+  {"quad", cons, 8},
-+  {"rep", s_rept, 0},
-+  {"rept", s_rept, 0},
-+  {"rva", s_rva, 4},
-+  {"sbttl", listing_title, 1},	/* Subtitle of listing.  */
-+/* scl  */
-+/* sect  */
-+  {"set", s_set, 0},
-+  {"short", cons, 2},
-+  {"single", float_cons, 'f'},
-+/* size  */
-+  {"space", s_space, 0},
-+  {"skip", s_space, 0},
-+  {"sleb128", s_leb128, 1},
-+  {"spc", s_ignore, 0},
-+  {"stabd", s_stab, 'd'},
-+  {"stabn", s_stab, 'n'},
-+  {"stabs", s_stab, 's'},
-+  {"string", stringer, 1},
-+  {"struct", s_struct, 0},
-+/* tag  */
-+  {"text", s_text, 0},
-+
-+  /* This is for gcc to use.  It's only just been added (2/94), so gcc
-+     won't be able to use it for a while -- probably a year or more.
-+     But once this has been released, check with gcc maintainers
-+     before deleting it or even changing the spelling.  */
-+  {"this_GCC_requires_the_GNU_assembler", s_ignore, 0},
-+  /* If we're folding case -- done for some targets, not necessarily
-+     all -- the above string in an input file will be converted to
-+     this one.  Match it either way...  */
-+  {"this_gcc_requires_the_gnu_assembler", s_ignore, 0},
-+
-+  {"title", listing_title, 0},	/* Listing title.  */
-+  {"ttl", listing_title, 0},
-+/* type  */
-+  {"uleb128", s_leb128, 0},
-+/* use  */
-+/* val  */
-+  {"xcom", s_comm, 0},
-+  {"xdef", s_globl, 0},
-+  {"xref", s_ignore, 0},
-+  {"xstabs", s_xstab, 's'},
-+  {"warning", s_errwarn, 0},
-+  {"word", cons, 2},
-+  {"zero", s_space, 0},
-+  {NULL, NULL, 0}			/* End sentinel.  */
-+};
-+
-+static offsetT
-+get_absolute_expr (expressionS *exp)
-+{
-+  expression (exp);
-+  if (exp->X_op != O_constant)
-+    {
-+      if (exp->X_op != O_absent)
-+	as_bad (_("bad or irreducible absolute expression"));
-+      exp->X_add_number = 0;
-+    }
-+  return exp->X_add_number;
-+}
-+
-+offsetT
-+get_absolute_expression (void)
-+{
-+  expressionS exp;
-+
-+  return get_absolute_expr (&exp);
-+}
-+
-+static int pop_override_ok = 0;
-+static const char *pop_table_name;
-+
-+void
-+pop_insert (const pseudo_typeS *table)
-+{
-+  const char *errtxt;
-+  const pseudo_typeS *pop;
-+  for (pop = table; pop->poc_name; pop++)
-+    {
-+      errtxt = hash_insert (po_hash, pop->poc_name, (char *) pop);
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    http://cvs.pld-linux.org/SOURCES/binutils-gasp.patch?r1=1.9&r2=1.10&f=u




More information about the pld-cvs-commit mailing list