m68k floating point overwrites vector table
Nick Papadonis
npapadon@yahoo.com
Fri Mar 16 10:25:00 GMT 2001
Not sure if this is a bug or not, but when compiling for
target=m68k-coff, my exception vector table is overwritten.
gcc 2.95.2
binutils 2.10.1
target=m68k-coff, MC68331
It looks like this is all happening in the software floating point
library. I linked to $M68KPATH/lib/gcc-lib/m68k-coff/2.95.2/libgcc.a
when compiling for my target.
In the file gcc/config/m68k/lb1sf68.asm,
it appears something like:
ROUND_TO_NEAREST = 0 | round result to nearest representable value
Was making a symbol ROUNDT_TO_NEARETST at addreess 0x0.
Changing all these assignments to the following seemed to solve the problem.
.set ROUND_TO_NEAREST , 0 | round result to nearest representable value
My linker script:
SECTIONS
{
. = 0x4000;
.text : { *(.text) }
. = 0x15000;
.data : { *(.data) }
.bss : { *(.bss) }
}
Anyone experience this problem and is this a bug?
More information about the Binutils
mailing list