Fill

The -fill option is used for filling unused memory locations with a known value. The usage of this option is:

-fill=[const_width:]fill_expr@address[:end_address]

where:

The fill values are word-aligned so they start on an address that is a multiple of the fill width. Should the fill value be an instruction opcode, this alignment ensures that the instruction can be executed correctly. Similarly, if the total length of the fill sequence is larger than 1 (and even if the specified width is 1), the fill sequence is aligned to that total length. For example the following fill option, which specifies 2 bytes of fill sequence and a starting address that is not a multiple of 2:

-fill=w1:0x11,0x22@0x11001:0x1100c

will result in the following hex record, where the starting address was filled with the second byte of the fill sequence due to this alignment.

:0C100100221122112211221122112211B1

All constants can be expressed in (unsigned) binary, octal, decimal or hexadecimal, as per normal C syntax, for example, 1234 is a decimal value, 0xFF00 is hexadecimal and FF00 is illegal.