Branch; Unconditional Branch - Intel i960 Jx Developer's Manual

Microprocessor
Table of Contents

Advertisement

INSTRUCTION SET OVERVIEW
5.2.7

Branch

Branch instructions allow program flow direction to be changed by explicitly modifying the IP.
The processor provides three branch instruction types:

unconditional branch

conditional branch
compare and branch
Most branch instructions specify the target IP by specifying a signed displacement to be added to
the current IP. Other branch instructions specify the target IP's memory address, using one of the
processor's addressing modes. This latter group of instructions is called extended addressing
instructions (e.g., branch extended, branch-and-link extended).
5.2.7.1
Unconditional Branch
These instructions are used for unconditional branching:
b
Branch
bx
Branch Extended
bal
Branch and Link
balx
Branch and Link Extended
and
use the CTRL format.
b
bal
registers as operands.
and
b
two instructions perform the same function; however, their determination of the target IP differs.
The target IP of a
b
instruction is specified at link time as a relative displacement from the current
IP. The target IP of the
bx
instruction is the absolute address resulting from the instruction's use of
a memory-addressing mode during execution.
bal
and
balx
store the next instruction's address in a specified register, then jump to the specified
target IP. (For
bal
, the RIP is automatically stored in register g14; for
specified with an instruction operand.) As described in
(pg.
7-21), branch and link instructions provide a method of performing procedure calls that do not
use the processor's integrated call/return mechanism. Here, the saved instruction address is used as
a return IP. Branch and link is generally used to call leaf procedures (that is, procedures that do not
call other procedures).
and
can make use of any memory-addressing mode.
bx
balx
5-14
and
use the MEM format and can specify local or global
bx
balx
cause program execution to jump to the specified target IP. These
bx
balx
, the RIP location is
section 7.9, "BRANCH-AND-LINK"

Advertisement

Table of Contents
loading

Table of Contents