PowerPC e500 Core Family Reference Manual, Rev. 1
C-12
Freescale Semiconductor
Simplified Mnemonics for PowerPC Instructions
Table C-10
shows the syntax for basic simplified branch mnemonics
The simplified mnemonics in
Table C-10
that test a condition require a corresponding CR bit as
the first operand (as examples 2–5 below illustrate). The symbols in
Table C-9
can be used in place
of a numeric value.
C.4.5.1
Examples that Eliminate the BO Operand
The simplified mnemonics in
Table C-10
are used in the following examples:
1. Decrement CTR and branch if it is still nonzero (closure of a loop controlled by a count
loaded into CTR) (note that no CR bits are tested).
bdnz target
equivalent to
bc 16,0,target
Because this instruction does not test a CR bit, the simplified mnemonic should specify
only a target operand. Specifying a CR (for example, bdnz 0,target or bdnz cr0,target) may
be considered a programming error. Subsequent examples test conditions).
2. Same as (1) but branch only if CTR is nonzero and equal condition in CR0.
bdnzt eq
,
target
equivalent to
bc 8,2,target
Other equivalents include bdnzt 2
,
target or the unlikely bdnzt 4*cr0+eq
,
target
3. Same as (2), but equal condition is in CR5.
bdnzt 4 * cr5 + eq,target equivalent
to
bc 8,22,target
bdnzt 22,target would also work
4. Branch if bit 59 of CR is false.
bf 27,target
equivalent to
bc 4,27,target
bf 4*cr6+so,target would also work
5. Same as (4), but set the link register. This is a form of conditional call.
bfl 27,target
equivalent to
bcl 4,27,target
Table C-11. Branch Instructions
Instruction
Standard
Mnemonic
Syntax
Simplified
Mnemonic
Syntax
Branch
b
(
ba bl bla
)
target_addr
N/A, syntax does not include BO
Branch Conditional
bc
(
bca bcl bcla
)
BO
,
BI,target_addr
b
x
1
(
b
x
a b
x
l b
x
la
)
1
x stands for one of the symbols in
Table C-6
, where applicable.
BI
2
,target_addr
2
BI can be a numeric value or an expression as shown in
Table C-9
.
Branch Conditional to Link Register
bclr
(
bclrl
)
BO
,
BI
b
x
lr
(
b
x
lrl
)
BI
Branch Conditional to Count Register
bcctr
(
bcctrl
)
BO
,
BI
b
x
ctr
(
b
x
ctrl
)
BI
Summary of Contents for PowerPC e500 Core
Page 1: ...PowerPC e500 Core Family Reference Manual Supports e500v1 e500v2 E500CORERM Rev 1 4 2005...
Page 36: ...PowerPC e500 Core Family Reference Manual Rev 1 xxxvi Freescale Semiconductor...
Page 38: ...PowerPC e500 Core Family Reference Manual Rev 1 Part I 2 Freescale Semiconductor...
Page 332: ...PowerPC e500 Core Family Reference Manual Rev 1 Part II 2 Freescale Semiconductor...
Page 530: ...Opcode Listings PowerPC e500 Core Family Reference Manual Rev 1 D 50 Freescale Semiconductor...
Page 534: ...PowerPC e500 Core Family Reference Manual Rev 1 E 4 Freescale Semiconductor Revision History...