/* unwind-ia64.c -- utility routines to dump IA-64 unwind info for readelf.
- Copyright 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
- Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
+ Copyright 2000, 2001, 2002, 2003, 2005, 2007, 2012
+ Free Software Foundation, Inc.
-This file is part of GNU Binutils.
+ Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
-This program 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.
+ This file is part of GNU Binutils.
-This program 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.
+ This program 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 3, or (at your option)
+ any later version.
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+ This program 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 this program; if not, write to the Free Software
+ Foundation, 51 Franklin Street - Fifth Floor, Boston,
+ MA 02110-1301, USA. */
+
+#include "config.h"
#include "unwind-ia64.h"
#include <stdio.h>
#include <string.h>
static void
unw_print_abreg (char *cp, unsigned int abreg)
{
- static const char *special_reg[16] =
+ static const char * const special_reg[16] =
{
"pr", "psp", "@priunat", "rp", "ar.bsp", "ar.bspstore", "ar.rnat",
"ar.unat", "ar.fpsr", "ar.pfs", "ar.lc",
#define UNW_DEC_ABI(fmt, abi, context, arg) \
do \
{ \
- static const char *abiname[] = \
+ static const char * const abiname[] = \
{ \
"@svr4", "@hpux", "@nt" \
}; \
#define UNW_DEC_SPILL_SPREL(fmt, t, abreg, spoff, arg) \
do \
{ \
- char regname[10]; \
+ char regname[20]; \
\
unw_print_abreg (regname, abreg); \
printf ("\t%s:spill_sprel(reg=%s,t=%lu,spoff=0x%lx)\n", \
#define UNW_DEC_SPILL_PSPREL(fmt, t, abreg, pspoff, arg) \
do \
{ \
- char regname[10]; \
+ char regname[20]; \
\
unw_print_abreg (regname, abreg); \
printf ("\t%s:spill_psprel(reg=%s,t=%lu,pspoff=0x10-0x%lx)\n", \
#define UNW_DEC_RESTORE(fmt, t, abreg, arg) \
do \
{ \
- char regname[10]; \
+ char regname[20]; \
\
unw_print_abreg (regname, abreg); \
printf ("\t%s:restore(t=%lu,reg=%s)\n", \
#define UNW_DEC_SPILL_REG(fmt, t, abreg, x, ytreg, arg) \
do \
{ \
- char abregname[10], tregname[10]; \
+ char abregname[20], tregname[20]; \
\
unw_print_abreg (abregname, abreg); \
unw_print_xyreg (tregname, x, ytreg); \
typedef const unsigned char *(*unw_decoder)
(const unsigned char *, unsigned int, void *);
-static unw_decoder unw_decode_table[2][8] =
+static const unw_decoder unw_decode_table[2][8] =
{
/* prologue table: */
{