MMIX Instruction Set |
||||||||||||||||||||||||||||||
Content
|
PUSHJ and PUSHGOName:Specification: Assignment to $X. If X < rG, registers $0 to $X - 1 are pushed to the register stack. If $X is a marginal register, it is automatically made local as in an Finally, the value X is pushed on the register stack. If X ≥ rG, registers $0 to $rL-1 are pushed to the register stack Finally, the value rL is pushed on the register stack and rL ← 0.
Further:
The PUSHJ-Operation of x + 1 registers to the register stack
S[0],…,S[τ - 1] entails the following:
Timing: PUSHJ: 1υ PUSHGO: 3υ Description:
The PUSHJ and PUSHGO instructions are used to link subroutines.
The only difference between the two is the computation of the
target address. PUSHJ uses a 16-bit relative address, like branch
instructions, while PUSHGO uses an absolute address $Y+$Z (or $Y+Z)
like the GO instruction. See also:
POP,
|
Please help to keep this site up to date! If you want to point out important material or projects that are not listed here, if you find errors or want to suggest improvements, please send email to