Am 01.02.2011 12:46, schrieb ali hagigat:
SECTIONS {
        /* Trigger an error if I have an unuseable start address */
        _bogus = ASSERT(_start>= 0xffff0000, "_start too low. Please
decrease CONFIG_ROM_IMAGE_SIZE");
        _ROMTOP = 0xfffffff0;
        . = _ROMTOP;
        .reset . : {
                *(.reset)
                . = 15 ;
                BYTE(0x00);
        }
}
------------------------------------------------------------------
What does (.=15;) mean? It seems a mistake! and can be: . = .+1;
. = 15; means "set the location pointer to 15". With the byte that's written right after that, this means that .reset is exactly 16 bytes. If it's less, ". = 15" pads the section to be larger, if it would have to be larger, ". = 15" makes the linker fail (because the location pointer must not go backwards).

I guess that also answers why ". = .+1" is no adequate substitute.


Patrick

--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to