This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
RE: H8300-elf-as DWARF problem preliminary analysis
- From: "Nitin Gupta, Noida" <niting at noida dot hcltech dot com>
- To: law at redhat dot com
- Cc: Nick Clifton <nickc at redhat dot com>, binutils at sources dot redhat dot com
- Date: Wed, 14 Aug 2002 18:33:01 +0530
- Subject: RE: H8300-elf-as DWARF problem preliminary analysis
> Thinking more about this, why wasn't this fixup simplified?
>
> ie, the generic parts of gas know how to simplify a fixup involving
> the difference of two symbols in the same segment.
>
> I think the answer is that we don't do fixup simplifications on parts
> where the linker is going to potentially relax the segment (shrink
> the segment).
>
> You might look look at defining TC_LINKRELAX_FIXUP since I believe the
> fixup you need simplified is in a debugging section. I believe you
> can find a suitable example in tc-mn10300.c.
>
Big THANKS for your help. This fixes the problem at the root. Now
fixup simplification is done for debug sections. I copied following
line from tc-mn10300.h to tc-h8300.h
/* Fixup debug sections since we will never relax them. */
#define TC_LINKRELAX_FIXUP(seg) (seg->flags & SEC_ALLOC)
I think I should localize the change by doing something
like:
#ifdef BFD_ASSEMBLER
#define TC_LINKRELAX_FIXUP(seg) (!DEBUG_SECTION(seg))
#endif
and define DEBUG_SECTION appropriately.
Thanks and Regards,
Nitin.