This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
FYI: fixed a build failure on AIX (rs6000-nat.c:vmap_exec)
- From: Joel Brobecker <brobecker at adacore dot com>
- To: gdb-patches at sourceware dot org
- Date: Wed, 9 Sep 2009 11:01:11 -0700
- Subject: FYI: fixed a build failure on AIX (rs6000-nat.c:vmap_exec)
Hello,
This is a patch that sat in my outbox since July 4th... It fixes a build
failure on AIX.
Tested on AIX with AdaCore's testsuite.
--
Joel
commit 4e8743a20fd7fddef3d6741c2a40c4fd4f15c07d
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Jul 4 09:13:32 2009 -0700
Fix build failure on AIX.
* rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table
instead of relying on the to_sections/to_section_end target_ops
field, since the latter have been removed in a previous patch.
diff --git a/gdb/rs6000-nat.c b/gdb/rs6000-nat.c
index a1d15bc..7fa7c41 100644
--- a/gdb/rs6000-nat.c
+++ b/gdb/rs6000-nat.c
@@ -935,33 +935,32 @@ vmap_exec (void)
{
static bfd *execbfd;
int i;
+ struct target_section_table *table = target_get_section_table (&exec_ops);
if (execbfd == exec_bfd)
return;
execbfd = exec_bfd;
- if (!vmap || !exec_ops.to_sections)
- error (_("vmap_exec: vmap or exec_ops.to_sections == 0."));
+ if (!vmap || !table->sections)
+ error (_("vmap_exec: vmap or table->sections == 0."));
- for (i = 0; &exec_ops.to_sections[i] < exec_ops.to_sections_end; i++)
+ for (i = 0; &table->sections[i] < table->sections_end; i++)
{
- if (strcmp (".text", exec_ops.to_sections[i].the_bfd_section->name) == 0)
+ if (strcmp (".text", table->sections[i].the_bfd_section->name) == 0)
{
- exec_ops.to_sections[i].addr += vmap->tstart - vmap->tvma;
- exec_ops.to_sections[i].endaddr += vmap->tstart - vmap->tvma;
+ table->sections[i].addr += vmap->tstart - vmap->tvma;
+ table->sections[i].endaddr += vmap->tstart - vmap->tvma;
}
- else if (strcmp (".data",
- exec_ops.to_sections[i].the_bfd_section->name) == 0)
+ else if (strcmp (".data", table->sections[i].the_bfd_section->name) == 0)
{
- exec_ops.to_sections[i].addr += vmap->dstart - vmap->dvma;
- exec_ops.to_sections[i].endaddr += vmap->dstart - vmap->dvma;
+ table->sections[i].addr += vmap->dstart - vmap->dvma;
+ table->sections[i].endaddr += vmap->dstart - vmap->dvma;
}
- else if (strcmp (".bss",
- exec_ops.to_sections[i].the_bfd_section->name) == 0)
+ else if (strcmp (".bss", table->sections[i].the_bfd_section->name) == 0)
{
- exec_ops.to_sections[i].addr += vmap->dstart - vmap->dvma;
- exec_ops.to_sections[i].endaddr += vmap->dstart - vmap->dvma;
+ table->sections[i].addr += vmap->dstart - vmap->dvma;
+ table->sections[i].endaddr += vmap->dstart - vmap->dvma;
}
}
}