forbid object files to cross address border
Nick Clifton
nickc@redhat.com
Fri Jul 29 14:32:00 GMT 2005
Hi Josef,
> Im doing gcc/gas bios-programming for a virtual machine. Therefore
> i tell ld to place the object files between address 0xe0000 and 0xfffff.
>
> But the problem is, no object file may cross (have one half one the one
> side, another on the other) address 0xe0000, because this probably
> breaks my code.
It the object files can only be placed between 0xe0000 and 0xfffff and
you set this up as the only memory region available then the linker will
not place anything below 0xe0000 and so the boundary will not be crossed.
> Of course if could define two memory regions, and put some object files
> in the one and the remaining in the other, but the solution should be
> "scaleable", object sizes changes with time, so thats not suitable.
Unfortunately the linker does not have the facility to say "object files
must not cross boundary XXXX". Sorry. You will just have to create
linker maps and place the object files explicitly.
Cheers
Nick
More information about the Binutils
mailing list