This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


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

Re: dw2 stack info does not exactly following spec


On Mon, Apr 30, 2001 at 02:45:36PM -0700, Zhang, Yingwei wrote:
> As you mentioned earlier, the unwinding information does not use LEB128
> encoding on address and offsets. Are you planning to leave as is or you are
> going to fix them later? 

You're slightly confused.  The .debug_frame/.eh_frame information
can and does use leb128 encodings.  GAS knows how to re-code this
information for compactness.  If you're not using GAS, you get a
less compact but equally correct form.

I think you're thinking of the Language Specific Data Area, which
also wants to use leb128 offsets.  In this case we use the .uleb128
assembler directive when it is available.

In either case, there is enough meta data to discover which encoding
is being used.  The readers should be compatible whichever encoding
is used.

> The document said stack unwind info should be in .debug_frame section. But
> it is in .eh_frame section. Does this mean that it is EH specific data
> structure and debugger does not use it? 

The debugger _could_ use it.  There are two extremely minor differences
in the format to cope with load-time addresses vs in-file offsets.

But at present GDB doesn't even use .debug_frame, so it's moot.


r~


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