projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Stop the MIPS assembler from accepting ifunc symbols.
[deliverable/binutils-gdb.git]
/
gdb
/
buildsym.c
diff --git
a/gdb/buildsym.c
b/gdb/buildsym.c
index 4965b552b32ffe52fd469dd179a3a1ab92aad3f5..c08c476a0d4a559b9a9091be8a7c8a7002866a36 100644
(file)
--- a/
gdb/buildsym.c
+++ b/
gdb/buildsym.c
@@
-120,7
+120,7
@@
buildsym_compunit::get_macro_table ()
{
if (m_pending_macros == nullptr)
m_pending_macros = new_macro_table (&m_objfile->per_bfd->storage_obstack,
{
if (m_pending_macros == nullptr)
m_pending_macros = new_macro_table (&m_objfile->per_bfd->storage_obstack,
- &m_objfile->per_bfd->
macro
_cache,
+ &m_objfile->per_bfd->
string
_cache,
m_compunit_symtab);
return m_pending_macros;
}
m_compunit_symtab);
return m_pending_macros;
}
@@
-666,7
+666,7
@@
buildsym_compunit::pop_subfile ()
void
buildsym_compunit::record_line (struct subfile *subfile, int line,
void
buildsym_compunit::record_line (struct subfile *subfile, int line,
- CORE_ADDR pc)
+ CORE_ADDR pc
, bool is_stmt
)
{
struct linetable_entry *e;
{
struct linetable_entry *e;
@@
-681,7
+681,7
@@
buildsym_compunit::record_line (struct subfile *subfile, int line,
m_have_line_numbers = true;
}
m_have_line_numbers = true;
}
- if (subfile->line_vector->nitems
+ 1
>= subfile->line_vector_length)
+ if (subfile->line_vector->nitems >= subfile->line_vector_length)
{
subfile->line_vector_length *= 2;
subfile->line_vector = (struct linetable *)
{
subfile->line_vector_length *= 2;
subfile->line_vector = (struct linetable *)
@@
-704,18
+704,20
@@
buildsym_compunit::record_line (struct subfile *subfile, int line,
end of sequence markers. All we lose is the ability to set
breakpoints at some lines which contain no instructions
anyway. */
end of sequence markers. All we lose is the ability to set
breakpoints at some lines which contain no instructions
anyway. */
- if (line == 0
&& subfile->line_vector->nitems > 0
)
+ if (line == 0)
{
{
- e = subfile->line_vector->item + subfile->line_vector->nitems - 1;
- while (subfile->line_vector->nitems > 0 && e->pc == pc)
+ while (subfile->line_vector->nitems > 0)
{
{
- e--;
+ e = subfile->line_vector->item + subfile->line_vector->nitems - 1;
+ if (e->pc != pc)
+ break;
subfile->line_vector->nitems--;
}
}
e = subfile->line_vector->item + subfile->line_vector->nitems++;
e->line = line;
subfile->line_vector->nitems--;
}
}
e = subfile->line_vector->item + subfile->line_vector->nitems++;
e->line = line;
+ e->is_stmt = is_stmt ? 1 : 0;
e->pc = pc;
}
e->pc = pc;
}
This page took
0.032468 seconds
and
4
git commands to generate.