This is the mail archive of the gcc@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]
Other format: [Raw text]

Re: ELF instruction for section and branch.


"Gagneet Singh" <gagneet@acmet.com> writes:
> I wish to enquire what is the equivalent for a assembly language section
> in the GCC ELF format?

I'm not quite sure what you mean here, but...

> Also, we have a problem of getting the output in ELF format where a
> branch instruction is accessing a label in the second section. 
>
> Is this possible? 

It sounds like you're asking about code such as:

        .section .text1
foo:    b        bar

        .section .text2
bar:

Is that right?  If so, then no, this isn't supported.  The assembler
can't calculate the branch offset because the distance between foo and
bar isn't known until link time.  And unfortunately, due to an infamous
problem with the MIPS ELF spec, there's no relocation that the assembler
can use either.

(The R_MIPS_PC16 relocation was probably designed for branches, but the
ELF spec says it gives a byte offset, whereas branch instructions need
a word offset.)

Richard


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