X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=gdb%2Fsparc64-sol2-tdep.c;h=5411b9bdff6d2cc1cce24b796bd4a350862ed82d;hb=149ad273c520ca22c19edc35f054fd05fe6cc6e7;hp=48f076036264000bb25b9fea2d346039f05acae8;hpb=70b216c81352409f3bf52fff20f9213378e99109;p=binutils-gdb.git diff --git a/gdb/sparc64-sol2-tdep.c b/gdb/sparc64-sol2-tdep.c index 48f07603626..5411b9bdff6 100644 --- a/gdb/sparc64-sol2-tdep.c +++ b/gdb/sparc64-sol2-tdep.c @@ -1,12 +1,12 @@ /* Target-dependent code for Solaris UltraSPARC. - Copyright 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2006, 2007 Free Software Foundation, Inc. This file is part of GDB. 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 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -15,9 +15,7 @@ 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, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ #include "defs.h" #include "frame.h" @@ -30,6 +28,7 @@ #include "gdb_assert.h" +#include "sol2-tdep.h" #include "sparc64-tdep.h" #include "solib-svr4.h" @@ -119,13 +118,13 @@ sparc64_sol2_sigtramp_frame_prev_register (struct frame_info *next_frame, int regnum, int *optimizedp, enum lval_type *lvalp, CORE_ADDR *addrp, - int *realnump, void *valuep) + int *realnump, gdb_byte *valuep) { struct sparc_frame_cache *cache = sparc64_sol2_sigtramp_frame_cache (next_frame, this_cache); - trad_frame_prev_register (next_frame, cache->saved_regs, regnum, - optimizedp, lvalp, addrp, realnump, valuep); + trad_frame_get_prev_register (next_frame, cache->saved_regs, regnum, + optimizedp, lvalp, addrp, realnump, valuep); } static const struct frame_unwind sparc64_sol2_sigtramp_frame_unwind = @@ -154,14 +153,18 @@ sparc64_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) { struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); - set_gdbarch_deprecated_pc_in_sigtramp (gdbarch, sparc_sol2_pc_in_sigtramp); frame_unwind_append_sniffer (gdbarch, sparc64_sol2_sigtramp_frame_sniffer); sparc64_init_abi (info, gdbarch); + /* The Sun compilers also do "globalization"; see the comment in + sparc_sol2_static_transform_name for more information. */ + set_gdbarch_static_transform_name + (gdbarch, sparc_sol2_static_transform_name); + /* Solaris has SVR4-style shared libraries... */ - set_gdbarch_in_solib_call_trampoline (gdbarch, in_plt_section); set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); + set_gdbarch_skip_solib_resolver (gdbarch, sol2_skip_solib_resolver); set_solib_svr4_fetch_link_map_offsets (gdbarch, svr4_lp64_fetch_link_map_offsets);