This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
.rofixup section size mismatch
- From: "Henderson, Stuart" <Stuart dot Henderson at analog dot com>
- To: "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Tue, 1 Nov 2011 12:18:25 +0000
- Subject: .rofixup section size mismatch
Hi,
I'm looking into a problem I'm seeing with the Blackfin linker (binutils 2.21) when I move to gcc-4.5 (from gcc-4.3). When compiling the example at the bottom of the email (-O3 -g FDPIC), I get the following error:
bin/ld: LINKER BUG: .rofixup section size mismatch
bin/ld: final link failed: Nonrepresentable section on output
i.e. the fixup section size is smaller than the fixup relocation count * 4.
The problem appears to be by gcc 4.5's emission of a series of:
.picptr funcdesc(_callback)
in the .debug_info section which aren't being handled correctly.
What I don't understand is, why is that? I'm relatively new to the world of fdpic, so any pointers would be appreciated.
Thanks,
Stu
static int CallFunctionRec(int (*fun)()) {
CallFunctionRec(fun);
return 1;
}
static int CallFunction(int (*fun)()) {
return CallFunctionRec(fun);
}
static int callback() {
return 0;
}
int main() {
CallFunction(callback);
return 0;
}