Ian Lance Taylor wrote:
David Daney <[EMAIL PROTECTED]> writes:
I am going to try to fix:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29721
Which is a problem where a %lo relocation gets separated from its
corresponding %hi.
What is the mechanism that tries to prevent this from happening? And
where is it implemented?
This implemented by having the assembler sort the relocations so that
each %lo relocations follows the appropriate set of %hi relocations.
It is implemented in gas/config/tc-mips.c in append_insn. Look for
reloc_needs_lo_p and mips_frob_file.
At first glance the assembler does appear to handle %got correctly, so
I'm not sure why it is failing for you.
Did you look at the assembly fragment in the PR?
Is it correct in that there is a pair of %got/%lo in the middle of
another %got/%lo pair?
David Daney,