Back to index

cell-binutils  2.17cvs20070401
stab-syms.c
Go to the documentation of this file.
00001 /* Table of stab names for the BFD library.
00002    Copyright 1990, 1991, 1992, 1994, 1995, 1996, 2000
00003    Free Software Foundation, Inc.
00004    Written by Cygnus Support.
00005 
00006 This file is part of BFD, the Binary File Descriptor library.
00007 
00008 This program is free software; you can redistribute it and/or modify
00009 it under the terms of the GNU General Public License as published by
00010 the Free Software Foundation; either version 2 of the License, or
00011 (at your option) any later version.
00012 
00013 This program is distributed in the hope that it will be useful,
00014 but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016 GNU General Public License for more details.
00017 
00018 You should have received a copy of the GNU General Public License
00019 along with this program; if not, write to the Free Software
00020 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
00021 
00022 #include "bfd.h"
00023 
00024 #define ARCH_SIZE 32        /* Value doesn't matter.  */
00025 #include "libaout.h"
00026 #include "aout/aout64.h"
00027 
00028 /* Ignore duplicate stab codes; just return the string for the first
00029    one.  */
00030 #define __define_stab(NAME, CODE, STRING) __define_name(CODE, STRING)
00031 #define __define_stab_duplicate(NAME, CODE, STRING)
00032 
00033 /* These are not really stab symbols, but it is
00034    convenient to have them here for the sake of nm.
00035    For completeness, we could also add N_TEXT etc, but those
00036    are never needed, since nm treats those specially.  */
00037 #define EXTRA_SYMBOLS \
00038   __define_name (N_SETA, "SETA")/* Absolute set element symbol */ \
00039   __define_name (N_SETT, "SETT")/* Text set element symbol */ \
00040   __define_name (N_SETD, "SETD")/* Data set element symbol */ \
00041   __define_name (N_SETB, "SETB")/* Bss set element symbol */ \
00042   __define_name (N_SETV, "SETV")/* Pointer to set vector in data area.  */ \
00043   __define_name (N_INDR, "INDR") \
00044   __define_name (N_WARNING, "WARNING")
00045 
00046 const char *
00047 bfd_get_stab_name (code)
00048      int code;
00049 {
00050   switch (code)
00051     {
00052 #define __define_name(val, str) case val: return str;
00053 #include "aout/stab.def"
00054       EXTRA_SYMBOLS
00055     }
00056 
00057   return (const char *) 0;
00058 }