包含 bo 字段和部分 bi 字段的扩展分支助记符

合并 BO 字段和 BI 字段时的扩展分支助记符指令格式。

合并 BO 字段和部分 BI 字段时,指令格式为以下之一:

  • mnemonic BIFtarget_addr
  • 助记符 target_addr

其中 BIF 操作数指定 CR 字段号 (0-7) , target_addr 操作数指定目标地址。 如果使用 CR0 ,那么可以省略 BIF 操作数。

根据 CR 字段中的位定义,为最常见的分支条件组合定义了以下代码集:

分支代码 含义
lt 小于 *
eq 等于 *
格特 大于 *
so 摘要溢出 *
LE 小于或等于 * (不大于)
GE 大于或等于 * (不小于)
ne 不等于 *
NS 不是摘要溢出 *
nl 不小于
不大于
z
非无序 (浮点比较后)
nz 非零
无序 (浮点比较后)

汇编程序支持 BO 操作数的六个编码值:

  • 分支 if 条件为 true (BO= 12):
    POWER ® 系列 PowerPC®
    b xx b xx
    b xx a b xx a
    b xx l b xx l
    b xx la b xx la
    b xx r b xx lr
    b xx rl b xx lrl
    b xx c b xx 中心
    b xx cl b xx ctrl
    其中 xx 指定 BI 操作数分支代码lt,gt,eq,so,z,或un.
  • 条件为 false 时分支 (BO= 04):
    POWER ® 系列 PowerPC®
    b xx b xx
    b xx a b xx a
    b xx l b xx l
    b xx la b xx la
    b xx r b xx lr
    b xx rl b xx lrl
    b xx c b xx 中心
    b xx cl b xx ctrl
    其中 xx 指定 BI 操作数分支代码ge,le,ne,ns,nl,ng,nz,或nu.
  • 减小 CTR ,然后分支 (如果 CTR 非零且条件为 true) (BO= 08):
    • bdn xx
    其中 xx 指定 BI 操作数分支代码lt,gt,eq,或so(由 分支代码列表中的 * (星号) 标记)。
  • 递减 CTR ,然后分支 (如果 CTR 非零且条件为 false) (BO= 00):
    • bdn xx
    其中 xx 指定 BI 操作数分支代码le,ge,ne,或ns(由 分支代码列表中的 * (星号) 标记)。
  • 递减 CTR ,然后在 CTR 为零且条件为 true 时进行分支 (BO= 10):
    • BDZ XX
    其中 xx 指定 BI 操作数分支代码lt,gt,eq,或so(由 分支代码列表中的 * (星号) 标记)。
  • 递减 CTR ,然后在 CTR 为零且条件为 false 时进行分支 (BO= 02):
    • BDZ XX
    其中 xx 指定 BI 操作数分支代码le,ge,ne,或ns(由 分支代码列表中的 * (星号) 标记)。