as.info: Comm
Go forward to Data
Go backward to Byte
Go up to Pseudo Ops
Go to the top op as
`.comm SYMBOL , LENGTH '
`.comm' declares a common symbol named SYMBOL. When linking, a
common symbol in one object file may be merged with a defined or common
symbol of the same name in another object file. If `ld' does not see a
definition for the symbol-just one or more common symbols-then it will
allocate LENGTH bytes of uninitialized memory. LENGTH must be an
absolute expression. If `ld' sees multiple common symbols with the
same name, and they do not all have the same size, it will allocate
space using the largest size.
When using ELF, the `.comm' directive takes an optional third
argument. This is the desired alignment of the symbol, specified as a
byte boundary (for example, an alignment of 16 means that the least
significant 4 bits of the address should be zero). The alignment must
be an absolute expression, and it must be a power of two. If `ld'
allocates uninitialized memory for the common symbol, it will use the
alignment when placing the symbol. If no alignment is specified, `as'
will set the alignment to the largest power of two less than or equal
to the size of the symbol, up to a maximum of 16.
The syntax for `.comm' differs slightly on the HPPA. The syntax is
`SYMBOL .comm, LENGTH'; SYMBOL is optional.
Created Wed Sep 1 16:41:01 2004 on bee with info_to_html version 0.9.6.