* write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
authorIan Lance Taylor <ian@airs.com>
Fri, 28 Feb 1997 20:04:39 +0000 (20:04 +0000)
committerIan Lance Taylor <ian@airs.com>
Fri, 28 Feb 1997 20:04:39 +0000 (20:04 +0000)
(S_LOCAL_NAME): Likewise.
(FAKE_LABEL_NAME): Define unconditionally.
* symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
BFD_ASSEMBLER.
(S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
* config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
Don't define FAKE_LABEL_NAME.
* config/te-ic960.h: Likewise.
* config/tc-mips.h (tc_frob_file_before_adjust): Define.
(mips_frob_file_before_adjust): Declare.
* config/tc-mips.c (mips_frob_file_before_adjust): New function.
(mips_local_label): Remove.

gas/ChangeLog
gas/config/tc-arm.h
gas/config/tc-m88k.h
gas/config/tc-mips.c
gas/config/te-ic960.h

index 1c18e5249b540974ab9002650f43fe2fa54a03c5..adcd663589f9d4df3de41b90b219d329dd60ef10 100644 (file)
@@ -1,3 +1,21 @@
+Fri Feb 28 14:40:00 1997  Ian Lance Taylor  <ian@cygnus.com>
+
+       * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
+       (S_LOCAL_NAME): Likewise.
+       (FAKE_LABEL_NAME): Define unconditionally.
+       * symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
+       BFD_ASSEMBLER.
+       (S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
+       * config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
+       Don't define FAKE_LABEL_NAME.
+       * config/te-ic960.h: Likewise.
+       * config/tc-mips.h (tc_frob_file_before_adjust): Define.
+       (mips_frob_file_before_adjust): Declare.
+       * config/tc-mips.c (mips_frob_file_before_adjust): New function.
+       (mips_local_label): Remove.
+
+       * config/te-sco386.h: Remove; not used.
+
 start-sanitize-tic80
 Thu Feb 27 15:39:16 1997  Fred Fish  <fnf@cygnus.com>
 
index 149579ec9c768a1326ed8f9eb757abca8a2ed892..0214d68f08d17b9c893ed4d386ca0a591e70ad04 100644 (file)
@@ -1,9 +1,8 @@
 /* This file is tc-arm.h
+   Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
    Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org)
        Modified by David Taylor (dtaylor@armltd.co.uk)
 
-   Copyright (C) 1994, 1995 Free Software Foundation, Inc.
-
    This file is part of GAS, the GNU Assembler.
 
    GAS is free software; you can redistribute it and/or modify
    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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+   along with GAS; see the file COPYING.  If not, write to the Free
+   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+   02111-1307, USA.  */
 
 #define TC_ARM 1
 
+#ifndef TARGET_BYTES_BIG_ENDIAN
+#define TARGET_BYTES_BIG_ENDIAN 0
+#endif
+
 #define COFF_MAGIC ARMMAGIC
 #define TARGET_ARCH bfd_arch_arm
 
 #define LITTLE_ENDIAN 1234
 #define BIG_ENDIAN 4321
 
-#ifndef TARGET_BYTES_BIG_ENDIAN
-#define TARGET_BYTES_BIG_ENDIAN 0
-#endif
-
 #ifdef OBJ_AOUT
 #ifdef TE_RISCIX
 #define TARGET_FORMAT "a.out-riscix"
@@ -111,9 +111,10 @@ char *arm_canonicalize_symbol_name PARAMS ((char *));
 #define LOCAL_LABELS_FB  1
 
 /* Use defaults for OBJ_AOUT.  */
+#ifndef BFD_ASSEMBLER
 #ifndef OBJ_AOUT
 #define LOCAL_LABEL(name)      ((name)[0] == '.' && (name)[1] == 'L')
-#define FAKE_LABEL_NAME                ".L0\001"
+#endif
 #endif
 
 /* end of tc-arm.h */
index f26580f3cac550eeeccc6a7caa8d635820a8b9a1..c51da817bc3cda86ffb716b9b9ddfad7080ad9f2 100644 (file)
@@ -62,9 +62,12 @@ struct reloc_info_m88k
 
 /* The m88k uses '@' to start local labels.  */
 #define LEX_AT (LEX_BEGIN_NAME | LEX_NAME)
+
+#ifndef BFD_ASSEMBLER
 #define LOCAL_LABEL(name) \
   ((name[0] =='@' && (name [1] == 'L' || name [1] == '.')) \
    || (name[0] == 'L' && name[1] == '0' && name[2] == '\001'))
+#endif
 
 /* The m88k uses pseudo-ops with no leading period.  */
 #define NO_PSEUDO_DOT
index 862b455f2574e7a3a8b4043b627ac93df0558f87..31b5d1f352899f305105c357eae2b50599b34323 100644 (file)
@@ -8516,6 +8516,24 @@ cons_fix_new_mips (frag, where, nbytes, exp)
                : (nbytes == 4 ? BFD_RELOC_32 : BFD_RELOC_64)));
 }
 
+/* This is called before the symbol table is processed.  In order to
+   work with gcc when using mips-tfile, we must keep all local labels.
+   However, in other cases, we want to discard them.  If we were
+   called with -g, but we didn't see any debugging information, it may
+   mean that gcc is smuggling debugging information through to
+   mips-tfile, in which case we must generate all local labels.  */
+
+void
+mips_frob_file_before_adjust ()
+{
+#ifndef NO_ECOFF_DEBUGGING
+  if (ECOFF_DEBUGGING
+      && mips_debug != 0
+      && ! ecoff_debugging_seen)
+    flag_keep_locals = 1;
+#endif
+}
+
 /* Sort any unmatched HI16_S relocs so that they immediately precede
    the corresponding LO reloc.  This is called before md_apply_fix and
    tc_gen_reloc.  Unmatched HI16_S relocs can only be generated by
@@ -10354,33 +10372,6 @@ mips_define_label (sym)
   l->next = insn_labels;
   insn_labels = l;
 }
-
-/* Decide whether a label is local.  This is called by LOCAL_LABEL.
-   In order to work with gcc when using mips-tfile, we must keep all
-   local labels.  However, in other cases, we want to discard them,
-   since they are useless.  */
-
-int
-mips_local_label (name)
-     const char *name;
-{
-#ifndef NO_ECOFF_DEBUGGING
-  if (ECOFF_DEBUGGING
-      && mips_debug != 0
-      && ! ecoff_debugging_seen)
-    {
-      /* We were called with -g, but we didn't see any debugging
-         information.  That may mean that gcc is smuggling debugging
-         information through to mips-tfile, in which case we must
-         generate all local labels.  */
-      return 0;
-    }
-#endif
-
-  /* Here it's OK to discard local labels.  */
-
-  return name[0] == '$';
-}
 \f
 #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
 
index 76b08735d08de865c0b484b39db9a871ed532f05..8331fb962ea6204873a2999ab5ed7d7b553bdead 100644 (file)
@@ -1,6 +1,5 @@
-/* This file is twe-ic960.h
-
-   Copyright (C) 1987-1992 Free Software Foundation, Inc.
+/* This file is te-ic960.h
+   Copyright (C) 1987-1992, 94, 95, 1997 Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
@@ -15,8 +14,9 @@
    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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+   along with GAS; see the file COPYING.  If not, write to the Free
+   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+   02111-1307, USA.  */
 
 /*
  * This file is te-ic960.h and is intended to define ic960 environment
  */
 
 #define OBJ_COFF_OMIT_OPTIONAL_HEADER
+
+#ifndef BFD_ASSEMBLER
 #define LOCAL_LABEL(name) ((name[0] =='L') \
                           || (name[0] =='.' \
                               && (name[1]=='C' \
                                   || name[1]=='I' \
                                   || name[1]=='.')))
+#endif
+
 #include "obj-format.h"
 
 /* end of te-ic960.h */