projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix gdb build with --enable-build-with-cxx --disable-nls
[deliverable/binutils-gdb.git]
/
gdb
/
solib-frv.c
diff --git
a/gdb/solib-frv.c
b/gdb/solib-frv.c
index 65c7e012dabf816f09894771eaa55e0bcb9ca937..30662ba3b33e93bdf7ccab0780a1dc0f67367a58 100644
(file)
--- a/
gdb/solib-frv.c
+++ b/
gdb/solib-frv.c
@@
-1,5
+1,5
@@
/* Handle FR-V (FDPIC) shared libraries for GDB, the GNU Debugger.
/* Handle FR-V (FDPIC) shared libraries for GDB, the GNU Debugger.
- Copyright (C) 2004-201
3
Free Software Foundation, Inc.
+ Copyright (C) 2004-201
6
Free Software Foundation, Inc.
This file is part of GDB.
This file is part of GDB.
@@
-18,7
+18,6
@@
#include "defs.h"
#include "defs.h"
-#include "gdb_string.h"
#include "inferior.h"
#include "gdbcore.h"
#include "solib.h"
#include "inferior.h"
#include "gdbcore.h"
#include "solib.h"
@@
-30,7
+29,6
@@
#include "command.h"
#include "gdbcmd.h"
#include "elf/frv.h"
#include "command.h"
#include "gdbcmd.h"
#include "elf/frv.h"
-#include "exceptions.h"
#include "gdb_bfd.h"
/* Flag which indicates whether internal debug messages should be printed. */
#include "gdb_bfd.h"
/* Flag which indicates whether internal debug messages should be printed. */
@@
-134,7
+132,7
@@
fetch_loadmap (CORE_ADDR ldmaddr)
/* Allocate space for the complete (external) loadmap. */
ext_ldmbuf_size = sizeof (struct ext_elf32_fdpic_loadmap)
+ (nsegs - 1) * sizeof (struct ext_elf32_fdpic_loadseg);
/* Allocate space for the complete (external) loadmap. */
ext_ldmbuf_size = sizeof (struct ext_elf32_fdpic_loadmap)
+ (nsegs - 1) * sizeof (struct ext_elf32_fdpic_loadseg);
- ext_ldmbuf = xmalloc (ext_ldmbuf_size);
+ ext_ldmbuf =
(struct ext_elf32_fdpic_loadmap *)
xmalloc (ext_ldmbuf_size);
/* Copy over the portion of the loadmap that's already been read. */
memcpy (ext_ldmbuf, &ext_ldmbuf_partial, sizeof ext_ldmbuf_partial);
/* Copy over the portion of the loadmap that's already been read. */
memcpy (ext_ldmbuf, &ext_ldmbuf_partial, sizeof ext_ldmbuf_partial);
@@
-153,7
+151,7
@@
fetch_loadmap (CORE_ADDR ldmaddr)
external loadsegs. I.e, allocate the internal loadsegs. */
int_ldmbuf_size = sizeof (struct int_elf32_fdpic_loadmap)
+ (nsegs - 1) * sizeof (struct int_elf32_fdpic_loadseg);
external loadsegs. I.e, allocate the internal loadsegs. */
int_ldmbuf_size = sizeof (struct int_elf32_fdpic_loadmap)
+ (nsegs - 1) * sizeof (struct int_elf32_fdpic_loadseg);
- int_ldmbuf = xmalloc (int_ldmbuf_size);
+ int_ldmbuf =
(struct int_elf32_fdpic_loadmap *)
xmalloc (int_ldmbuf_size);
/* Place extracted information in internal structs. */
int_ldmbuf->version = version;
/* Place extracted information in internal structs. */
int_ldmbuf->version = version;
@@
-266,7
+264,7
@@
static CORE_ADDR
lm_base (void)
{
enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ());
lm_base (void)
{
enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ());
- struct
minimal_symbol *
got_sym;
+ struct
bound_minimal_symbol
got_sym;
CORE_ADDR addr;
gdb_byte buf[FRV_PTR_SIZE];
CORE_ADDR addr;
gdb_byte buf[FRV_PTR_SIZE];
@@
-284,7
+282,7
@@
lm_base (void)
got_sym = lookup_minimal_symbol ("_GLOBAL_OFFSET_TABLE_", NULL,
symfile_objfile);
got_sym = lookup_minimal_symbol ("_GLOBAL_OFFSET_TABLE_", NULL,
symfile_objfile);
- if (got_sym == 0)
+ if (got_sym
.minsym
== 0)
{
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
{
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
@@
-292,7
+290,7
@@
lm_base (void)
return 0;
}
return 0;
}
- addr = SYMBOL_VALUE_ADDRESS (got_sym) + 8;
+ addr =
BM
SYMBOL_VALUE_ADDRESS (got_sym) + 8;
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
@@
-390,8
+388,8
@@
frv_current_sos (void)
break;
}
break;
}
- sop =
xcalloc (1, sizeof (struct so_list)
);
- sop->lm_info =
xcalloc (1, sizeof (struct lm_info)
);
+ sop =
XCNEW (struct so_list
);
+ sop->lm_info =
XCNEW (struct lm_info
);
sop->lm_info->map = loadmap;
sop->lm_info->got_value = got_addr;
sop->lm_info->lm_addr = lm_addr;
sop->lm_info->map = loadmap;
sop->lm_info->got_value = got_addr;
sop->lm_info->lm_addr = lm_addr;
@@
-486,7
+484,7
@@
enable_break_failure_warning (void)
/* Helper function for gdb_bfd_lookup_symbol. */
static int
/* Helper function for gdb_bfd_lookup_symbol. */
static int
-cmp_name (
asymbol *sym,
void *data)
+cmp_name (
const asymbol *sym, const
void *data)
{
return (strcmp (sym->name, (const char *) data) == 0);
}
{
return (strcmp (sym->name, (const char *) data) == 0);
}
@@
-541,12
+539,11
@@
enable_break2 (void)
CORE_ADDR addr, interp_loadmap_addr;
gdb_byte addr_buf[FRV_PTR_SIZE];
struct int_elf32_fdpic_loadmap *ldm;
CORE_ADDR addr, interp_loadmap_addr;
gdb_byte addr_buf[FRV_PTR_SIZE];
struct int_elf32_fdpic_loadmap *ldm;
- volatile struct gdb_exception ex;
/* Read the contents of the .interp section into a local buffer;
the contents specify the dynamic linker this program uses. */
interp_sect_size = bfd_section_size (exec_bfd, interp_sect);
/* Read the contents of the .interp section into a local buffer;
the contents specify the dynamic linker this program uses. */
interp_sect_size = bfd_section_size (exec_bfd, interp_sect);
- buf = alloca (interp_sect_size);
+ buf =
(char *)
alloca (interp_sect_size);
bfd_get_section_contents (exec_bfd, interp_sect,
buf, 0, interp_sect_size);
bfd_get_section_contents (exec_bfd, interp_sect,
buf, 0, interp_sect_size);
@@
-559,10
+556,15
@@
enable_break2 (void)
be trivial on GNU/Linux). Therefore, we have to try an alternate
mechanism to find the dynamic linker's base address. */
be trivial on GNU/Linux). Therefore, we have to try an alternate
mechanism to find the dynamic linker's base address. */
- TRY
_CATCH (ex, RETURN_MASK_ALL)
+ TRY
{
tmp_bfd = solib_bfd_open (buf);
}
{
tmp_bfd = solib_bfd_open (buf);
}
+ CATCH (ex, RETURN_MASK_ALL)
+ {
+ }
+ END_CATCH
+
if (tmp_bfd == NULL)
{
enable_break_failure_warning ();
if (tmp_bfd == NULL)
{
enable_break_failure_warning ();
@@
-721,6
+723,7
@@
static int
enable_break (void)
{
asection *interp_sect;
enable_break (void)
{
asection *interp_sect;
+ CORE_ADDR entry_point;
if (symfile_objfile == NULL)
{
if (symfile_objfile == NULL)
{
@@
-730,7
+733,7
@@
enable_break (void)
return 0;
}
return 0;
}
- if (!
symfile_objfile->ei.entry_point_p
)
+ if (!
entry_point_address_query (&entry_point)
)
{
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
{
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
@@
-751,15
+754,13
@@
enable_break (void)
return 0;
}
return 0;
}
- create_solib_event_breakpoint (target_gdbarch (),
- symfile_objfile->ei.entry_point);
+ create_solib_event_breakpoint (target_gdbarch (), entry_point);
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
"enable_break: solib event breakpoint "
"placed at entry point: %s\n",
if (solib_frv_debug)
fprintf_unfiltered (gdb_stdlog,
"enable_break: solib event breakpoint "
"placed at entry point: %s\n",
- hex_string_custom (symfile_objfile->ei.entry_point,
- 8));
+ hex_string_custom (entry_point, 8));
return 1;
}
return 1;
}
@@
-798,11
+799,11
@@
frv_relocate_main_executable (void)
if (main_executable_lm_info)
xfree (main_executable_lm_info);
if (main_executable_lm_info)
xfree (main_executable_lm_info);
- main_executable_lm_info =
xcalloc (1, sizeof (struct lm_info)
);
+ main_executable_lm_info =
XCNEW (struct lm_info
);
main_executable_lm_info->map = ldm;
main_executable_lm_info->map = ldm;
- new_offsets =
xcalloc (symfile_objfile->num_section
s,
-
sizeof (struct section_offsets)
);
+ new_offsets =
XCNEWVEC (struct section_offset
s,
+
symfile_objfile->num_sections
);
old_chain = make_cleanup (xfree, new_offsets);
changed = 0;
old_chain = make_cleanup (xfree, new_offsets);
changed = 0;
@@
-920,14
+921,14
@@
frv_relocate_section_addresses (struct so_list *so,
static CORE_ADDR
main_got (void)
{
static CORE_ADDR
main_got (void)
{
- struct
minimal_symbol *
got_sym;
+ struct
bound_minimal_symbol
got_sym;
got_sym = lookup_minimal_symbol ("_GLOBAL_OFFSET_TABLE_",
NULL, symfile_objfile);
got_sym = lookup_minimal_symbol ("_GLOBAL_OFFSET_TABLE_",
NULL, symfile_objfile);
- if (got_sym == 0)
+ if (got_sym
.minsym
== 0)
return 0;
return 0;
- return SYMBOL_VALUE_ADDRESS (got_sym);
+ return
BM
SYMBOL_VALUE_ADDRESS (got_sym);
}
/* Find the global pointer for the given function address ADDR. */
}
/* Find the global pointer for the given function address ADDR. */
This page took
0.042256 seconds
and
4
git commands to generate.