For MMIX, there is a choice of generating
ELF object files or
mmo object files when linking. The simulator
mmix understands the
mmo format. The binutils
objcopy utility can translate between the two formats.
There is one special section, the .MMIX.reg_contents section. Contents in this section is assumed to correspond to that of global registers, and symbols referring to it are translated to special symbols, equal to registers. In a final link, the start address of the .MMIX.reg_contents section corresponds to the first allocated global register multiplied by 8. Register
$255 is not included in this section; it is always set to the program entry, which is at the symbol
Global symbols with the prefix
__.MMIX.start., for example
__.MMIX.start..data are special. The default linker script uses these to set the default start address of a section.
Initial and trailing multiples of zero-valued 32-bit words in a section, are left out from an mmo file.