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