aboutsummaryrefslogtreecommitdiffstats
path: root/addr2line.c
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-03-25 23:55:58 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-03-25 23:55:58 +0000
commit3bd0fd118d11767a1a5d37320372a39802b4b206 (patch)
tree116a2aa7bcae407598a96351eac711d5ff348dbb /addr2line.c
parent633b2fc9d738ff11b28f2cd85abb73fbc85ee091 (diff)
downloadruby-3bd0fd118d11767a1a5d37320372a39802b4b206.tar.gz
temporaly change/add to debug on powerpc64-linux
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'addr2line.c')
-rw-r--r--addr2line.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/addr2line.c b/addr2line.c
index 4a5a24df84..0b48278f75 100644
--- a/addr2line.c
+++ b/addr2line.c
@@ -571,11 +571,17 @@ fill_lines(int num_traces, void **traces, char **syms, int check_debuglink,
char *strtab = file + strtab_shdr->sh_offset;
ElfW(Sym) *symtab = (ElfW(Sym) *)(file + symtab_shdr->sh_offset);
int symtab_count = (int)(symtab_shdr->sh_size / sizeof(ElfW(Sym)));
+#ifdef __powerpc64__
+ kprintf("\n= %s %lx\n",lines[offset].path,lines[offset].base_addr);
+#endif
for (j = 0; j < symtab_count; j++) {
ElfW(Sym) *sym = &symtab[j];
int type = ELF_ST_TYPE(sym->st_info);
intptr_t saddr = (intptr_t)sym->st_value + current_line->base_addr;
if (type != STT_FUNC) continue;
+#ifdef __powerpc64__
+ kprintf("%s %lx %lx\n",strtab + sym->st_name,sym->st_value,sym->st_size);
+#endif
for (i = offset; i < num_traces; i++) {
intptr_t d = (intptr_t)traces[i] - saddr;
if (lines[i].line != -1)