Computing .long .L123-.L100
Kazu Hirata
kazu@cs.umass.edu
Thu Jan 22 03:09:00 GMT 2004
Hi Ian,
> > Another related question is that sh_cons_fix_new() outputs a reloc for
> > .long .L3-.L9., but the disassembly of the resulting object file does
> > not contain the reloc anymore. Where is such a reloc deleted?
>
> In gas terminology, sh_cons_fix_new() generates a fixup. Some fixups
> are then computed by fixup_segment(). Others are passed to
> tc_gen_reloc() to generate a reloc.
I was thinking that fixup and reloc are the same thing. :-(
I finally figured out why the difference of two labels is not folded
to a constant. On the target I am working on, the global variable
linkrelax is always set to 1, so fixup_segment() refrains from
touching the difference.
Anyway, if you hadn't mentioned fixup_segment(), I would be still
stuck. Thanks!
Kazu Hirata
More information about the Binutils
mailing list