EasyManua.ls Logo

Freescale Semiconductor PowerPC e500 Core - Examples that Eliminate the BO Operand

Default Icon
548 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
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 Tabl e 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

Table of Contents

Related product manuals