AMD29K-Regs - Using as

Previous: AMD29K-Chars, Up: AMD29K Syntax

##### 8.1.2.3 Register Names

General-purpose registers are represented by predefined symbols of the form GRnnn (for global registers) or LRnnn (for local registers), where nnn represents a number between `0` and `127`, written with no leading zeros. The leading letters may be in either upper or lower case; for example, gr13 and LR7 are both valid register names.

You may also refer to general-purpose registers by specifying the register number as the result of an expression (prefixed with %% to flag the expression as a register number):

         %%expression

—where expression must be an absolute expression evaluating to a number between `0` and `255`. The range [0, 127] refers to global registers, and the range [128, 255] to local registers.

In addition, `as` understands the following protected special-purpose register names for the AMD 29K family:

           vab    chd    pc0
           ops    chc    pc1
           cps    rbp    pc2
           cfg    tmc    mmu
           cha    tmr    lru

These unprotected special-purpose register names are also recognized:

           ipc    alu    fpe
           ipa    bp     inte
           ipb    fc     fps
           q      cr     exop