gcc.info: Explicit Reg Vars
Go forward to Alternate Keywords
Go backward to Asm Labels
Go up to C Extensions
Go to the top op gcc
Variables in Specified Registers
GNU C allows you to put a few global variables into specified
hardware registers. You can also specify the register in which an
ordinary register variable should be allocated.
* Global register variables reserve registers throughout the program.
This may be useful in programs such as programming language
interpreters which have a couple of global variables that are
accessed very often.
* Local register variables in specific registers do not reserve the
registers. The compiler's data flow analysis is capable of
determining where the specified registers contain live values, and
where they are available for other uses. Stores into local
register variables may be deleted when they appear to be dead
according to dataflow analysis. References to local register
variables may be deleted or moved or simplified.
These local variables are sometimes convenient for use with the
extended `asm' feature (*note Extended Asm::.), if you want to
write one output of the assembler instruction directly into a
particular register. (This will work provided the register you
specify fits the constraints specified for that operand in the
`asm'.)
Created Wed Sep 1 16:42:20 2004 on bee with info_to_html version 0.9.6.