This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: ELF instruction for section and branch.
- From: Richard Sandiford <rsandifo at redhat dot com>
- To: <gagneet at acmet dot com>
- Cc: <gcc-help at gcc dot gnu dot org>, <gcc at gcc dot gnu dot org>
- Date: Fri, 19 Dec 2003 15:04:04 +0000
- Subject: Re: ELF instruction for section and branch.
- References: <010201c3c63e$6a36bcb0$9900a8c0@GAGNEET>
"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