This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] DW_CFA_restore handling causes memory fault


On 11/17/05, Frederic RISS <frederic.riss@st.com> wrote:
> The current handling of DW_CFA_restore in dwarf2-frame.c doesn't check
> if the value it tries to restore has actually been allocated. This
> produces strange results (from undeterministic behavour to a GDB crash).
> The attached patch tries to fix that by following the GCC 'convention'
> that an unspecified register implies "same value".

This replicates what we would have done had that register's slot been
allocated, but its value had been left unspecified --- right?

> It's debatable wether the compiler is right to produce DW_CFA_restore
> without specifying all the registers initial state in the CIE, but
> that's another story, isn't it ?

Right; we're supposed to be prepared for mis-formed input.  It would
be nice to have a brief comment explaining that the 'else' half of the
'if' does constitute questionable behavior on the part of the
compiler.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]