Previous: Sparc-Float, Up: Sparc-Dependent


9.35.5 Sparc Machine Directives

The Sparc version of as supports the following additional machine directives:

.align
This must be followed by the desired alignment in bytes.


.common
This must be followed by a symbol name, a positive number, and "bss". This behaves somewhat like .comm, but the syntax is different.


.half
This is functionally identical to .short.


.nword
On the Sparc, the .nword directive produces native word sized value, ie. if assembling with -32 it is equivalent to .word, if assembling with -64 it is equivalent to .xword.


.proc
This directive is ignored. Any text following it on the same line is also ignored.


.register
This directive declares use of a global application or system register. It must be followed by a register name %g2, %g3, %g6 or %g7, comma and the symbol name for that register. If symbol name is #scratch, it is a scratch register, if it is #ignore, it just suppresses any errors about using undeclared global register, but does not emit any information about it into the object file. This can be useful e.g. if you save the register before use and restore it after.


.reserve
This must be followed by a symbol name, a positive number, and "bss". This behaves somewhat like .lcomm, but the syntax is different.


.seg
This must be followed by "text", "data", or "data1". It behaves like .text, .data, or .data 1.


.skip
This is functionally identical to the .space directive.


.word
On the Sparc, the .word directive produces 32 bit values, instead of the 16 bit values it produces on many other machines.


.xword
On the Sparc V9 processor, the .xword directive produces 64 bit values.