PR 22567 is that breakpoint location can't correct gdbarch from SAL,
because its fields .section and .symtab is NULL. We use to have code
setting .section, but was removed by 4024cf2
- if (msymbol_is_text (msymbol))
+ CORE_ADDR func_addr;
+ if (msymbol_is_function (objfile, msymbol, &func_addr))
{
- sal = find_pc_sect_line (MSYMBOL_VALUE_ADDRESS (objfile, msymbol),
- (struct obj_section *) 0, 0);
- sal.section = MSYMBOL_OBJ_SECTION (objfile, msymbol);
this patch adds this back by moving it to the common place at the bottom
of the function.
gdb:
2017-12-08 Yao Qi <yao.qi@linaro.org>
PR breakpionts/22567
* linespec.c (minsym_found): Set sal.section.
+2017-12-08 Yao Qi <yao.qi@linaro.org>
+
+ PR breakpionts/22567
+ * linespec.c (minsym_found): Set sal.section.
+
2017-12-08 Andreas Arnez <arnez@linux.vnet.ibm.com>
* configure.tgt (s390*-*-linux*): Add symfile-mem.o.
sal.objfile = objfile;
sal.pc = MSYMBOL_VALUE_ADDRESS (objfile, msymbol);
sal.pspace = current_program_space;
- sal.section = MSYMBOL_OBJ_SECTION (objfile, msymbol);
}
+ sal.section = MSYMBOL_OBJ_SECTION (objfile, msymbol);
+
if (maybe_add_address (self->addr_set, objfile->pspace, sal.pc))
add_sal_to_sals (self, result, &sal, MSYMBOL_NATURAL_NAME (msymbol), 0);
}