ppc64asm,ppc64map: improve gnu branch decoding, and other misc
Rewrite the branch decoding to be more consistent with objdump.
Comments are taken from ISA 3.1 sections on the BO field (book i, 2.4),
and Appendix C.2 for extended branch mnemonics. Also, generate all
interesting cases to verify. Interesting cases are those which
don't choke objdump (e.g not setting z bits in BO, or setting at to
0b01).
Likewise, fixup handling of mtfs* instructions. The field names are
similar to condition registers, but these operate on FPSCR bits and
fields. Decode them as immediates, similar to objdump.
Likewise, when printing CR bits, use gnu/ISA syntax of 4*crN+B when
N > 0, and B is a named CR bit.
Likewise, when running testcode, track the "PC". This keeps the
generated tests working without hacks. This requires fixing up
some offsets in the handwritten tests. Similarly, allow testing
of multiple files in the test directory which are prefixed with
"decode".
Likewise, allow appropriately prefixed to run these tests too. This
allows running tests on non-native systems (e.g with IBM's advance
toolchain on an x86 host).
Change-Id: I1d6b2fc78a22a182524fdec596f05a10d25363c5
Reviewed-on: https://go-review.googlesource.com/c/arch/+/293270
Trust: Carlos Eduardo Seo <carlos.seo@linaro.org>
Run-TryBot: Carlos Eduardo Seo <carlos.seo@linaro.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Lynn Boger <laboger@linux.vnet.ibm.com>
diff --git a/ppc64/ppc64asm/decode_test.go b/ppc64/ppc64asm/decode_test.go
index 7e7638c..3337312 100644
--- a/ppc64/ppc64asm/decode_test.go
+++ b/ppc64/ppc64asm/decode_test.go
@@ -8,16 +8,33 @@
"encoding/binary"
"encoding/hex"
"io/ioutil"
+ "path"
"strings"
"testing"
)
func TestDecode(t *testing.T) {
- data, err := ioutil.ReadFile("testdata/decode.txt")
+ files, err := ioutil.ReadDir("testdata")
if err != nil {
t.Fatal(err)
}
+ for _, f := range files {
+ if !strings.HasPrefix(f.Name(), "decode") {
+ continue
+ }
+ filename := path.Join("testdata", f.Name())
+ data, err := ioutil.ReadFile(filename)
+ if err != nil {
+ t.Fatal(err)
+ }
+ decode(data, t, filename)
+ }
+}
+
+func decode(data []byte, t *testing.T, filename string) {
all := string(data)
+ // Simulate PC based on number of instructions found in the test file.
+ pc := uint64(0)
for strings.Contains(all, "\t\t") {
all = strings.Replace(all, "\t\t", "\t", -1)
}
@@ -29,16 +46,16 @@
f := strings.SplitN(line, "\t", 3)
i := strings.Index(f[0], "|")
if i < 0 {
- t.Errorf("parsing %q: missing | separator", f[0])
+ t.Errorf("%s: parsing %q: missing | separator", filename, f[0])
continue
}
if i%2 != 0 {
- t.Errorf("parsing %q: misaligned | separator", f[0])
+ t.Errorf("%s: parsing %q: misaligned | separator", filename, f[0])
}
size := i / 2
code, err := hex.DecodeString(f[0][:i] + f[0][i+1:])
if err != nil {
- t.Errorf("parsing %q: %v", f[0], err)
+ t.Errorf("%s: parsing %q: %v", filename, f[0], err)
continue
}
syntax, asm := f[1], f[2]
@@ -49,16 +66,17 @@
} else {
switch syntax {
case "gnu":
- out = GNUSyntax(inst, 0)
+ out = GNUSyntax(inst, pc)
case "plan9":
- out = GoSyntax(inst, 0, nil)
+ out = GoSyntax(inst, pc, nil)
default:
t.Errorf("unknown syntax %q", syntax)
continue
}
}
+ pc += uint64(size)
if out != asm || inst.Len != size {
- t.Errorf("Decode(%s) [%s] = %s want %s", f[0], syntax, out, asm)
+ t.Errorf("%s: Decode(%s) [%s] = %s want %s", filename, f[0], syntax, out, asm)
}
}
}
diff --git a/ppc64/ppc64asm/gnu.go b/ppc64/ppc64asm/gnu.go
index 1849a29..4631749 100644
--- a/ppc64/ppc64asm/gnu.go
+++ b/ppc64/ppc64asm/gnu.go
@@ -11,8 +11,10 @@
)
var (
- condBit = [4]string{"lt", "gt", "eq", "so"}
- condBitNeg = [4]string{"ge", "le", "ne", "so"}
+ // bit 3 of index is a negated check.
+ condBit = [8]string{
+ "lt", "gt", "eq", "so",
+ "ge", "le", "ne", "ns"}
)
// GNUSyntax returns the GNU assembler syntax for the instruction, as defined by GNU binutils.
@@ -31,57 +33,144 @@
// Special handling for some ops
startArg := 0
sep := " "
- switch inst.Op.String() {
- case "bc":
- bo := gnuArg(&inst, 0, inst.Args[0], PC)
- bi := inst.Args[1]
- switch bi := bi.(type) {
- case CondReg:
- if bi >= CR0 {
- if bi == CR0 && bo == "16" {
- buf.WriteString("bdnz")
- }
- buf.WriteString(fmt.Sprintf("bc cr%d", bi-CR0))
- }
- cr := bi / 4
- switch bo {
- case "4":
- bit := condBitNeg[(bi-Cond0LT)%4]
- if cr == 0 {
- buf.WriteString(fmt.Sprintf("b%s", bit))
- } else {
- buf.WriteString(fmt.Sprintf("b%s cr%d,", bit, cr))
- sep = ""
- }
- case "12":
- bit := condBit[(bi-Cond0LT)%4]
- if cr == 0 {
- buf.WriteString(fmt.Sprintf("b%s", bit))
- } else {
- buf.WriteString(fmt.Sprintf("b%s cr%d,", bit, cr))
- sep = ""
- }
- case "8":
- bit := condBit[(bi-Cond0LT)%4]
- sep = ""
- if cr == 0 {
- buf.WriteString(fmt.Sprintf("bdnzt %s,", bit))
- } else {
- buf.WriteString(fmt.Sprintf("bdnzt cr%d,%s,", cr, bit))
- }
- case "16":
- if cr == 0 && bi == Cond0LT {
- buf.WriteString("bdnz")
- } else {
- buf.WriteString(fmt.Sprintf("bdnz cr%d,", cr))
- sep = ""
- }
- }
- startArg = 2
- default:
- fmt.Printf("Unexpected bi: %d for bc with bo: %s\n", bi, bo)
+ opName := inst.Op.String()
+ switch opName {
+ case "bc", "bcl", "bca", "bcla", "bclr", "bclrl", "bcctr", "bcctrl", "bctar", "bctarl":
+ sfx := inst.Op.String()[2:]
+ bo := int(inst.Args[0].(Imm))
+ bi := inst.Args[1].(CondReg)
+ atsfx := [4]string{"", "?", "-", "+"}
+ decsfx := [2]string{"dnz", "dz"}
+
+ //BO field is... complicated (z == ignored bit, at == prediction hint)
+ //Paraphrased from ISA 3.1 Book I Section 2.4:
+ //
+ //0000z -> decrement ctr, b if ctr != 0 and CRbi == 0
+ //0001z -> decrement ctr, b if ctr == 0 and CRbi == 0
+ //001at -> b if CRbi == 0
+ //0100z -> decrement ctr, b if ctr != 0 and CRbi == 1
+ //0101z -> decrement ctr, b if ctr == 0 and CRbi == 1
+ //011at -> b if CRbi == 1
+ //1a00t -> decrement ctr, b if ctr != 0
+ //1a01t -> decrement ctr, b if ctr == 0
+ //1z1zz -> b always
+
+ // Decoding (in this order) we get
+ // BO & 0b00100 == 0b00000 -> dz if BO[1], else dnz (not simplified for bcctrl forms)
+ // BO & 0b10000 == 0b10000 -> (bc and bca forms not simplified), at = B[4]B[0] if B[2] != 0, done
+ // BO & 0b10000 == 0b00000 -> t if BO[3], else f
+ // BO & 0b10100 == 0b00100 -> at = B[0:1]
+
+ // BI fields rename as follows:
+ // less than : lt BI%4==0 && test == t
+ // less than or equal : le BI%4==1 && test == f
+ // equal : eq BI%4==2 && test == t
+ // greater than or equal: ge BI%4==0 && test == f
+ // greater than : gt BI%4==1 && test == t
+ // not less than : nl BI%4==0 && test == f
+ // not equal : ne BI%4==2 && test == f
+ // not greater than : ng BI%4==1 && test == f
+ // summary overflow : so BI%4==3 && test == t
+ // not summary overflow : ns BI%4==3 && test == f
+ // unordered : un BI%4==3 && test == t
+ // not unordered : nu BI%4==3 && test == f
+ //
+ // Note, there are only 8 possible tests, but quite a few more
+ // ways to name fields. For simplicity, we choose those in condBit.
+
+ at := 0 // 0 == no hint, 1 == reserved, 2 == not likely, 3 == likely
+ form := 1 // 1 == n/a, 0 == cr bit not set, 4 == cr bit set
+ cr := (bi - Cond0LT) / 4
+ bh := -1 // Only for lr/tar/ctr variants.
+ switch opName {
+ case "bclr", "bclrl", "bcctr", "bcctrl", "bctar", "bctarl":
+ bh = int(inst.Args[2].(Imm))
}
- startArg = 2
+
+ if bo&0x14 == 0x14 {
+ if bo == 0x14 && bi == Cond0LT { // preferred form of unconditional branch
+ // Likewise, avoid printing fake b/ba/bl/bla
+ if opName != "bc" && opName != "bca" && opName != "bcl" && opName != "bcla" {
+ startArg = 2
+ }
+ }
+ } else if bo&0x04 == 0 { // ctr is decremented
+ if opName != "bcctr" && opName != "bcctrl" {
+ startArg = 1
+ tf := ""
+ if bo&0x10 == 0x00 {
+ tf = "f"
+ if bo&0x08 == 0x08 {
+ tf = "t"
+ }
+ }
+ sfx = decsfx[(bo>>1)&1] + tf + sfx
+ }
+ if bo&0x10 == 0x10 {
+ if opName != "bcctr" && opName != "bcctrl" {
+ startArg = 2
+ }
+ if bi != Cond0LT {
+ // A non-zero BI bit was encoded, but ignored by BO
+ startArg = 0
+ }
+ at = ((bo & 0x8) >> 2) | (bo & 0x1)
+ } else if bo&0x4 == 0x4 {
+ at = bo & 0x3
+ }
+ } else if bo&0x10 == 0x10 { // BI field is not used
+ if opName != "bca" && opName != "bc" {
+ at = ((bo & 0x8) >> 2) | (bo & 0x1)
+ startArg = 2
+ }
+ // If BI is encoded as a bit other than 0, no mnemonic.
+ if bo&0x14 == 0x14 {
+ startArg = 0
+ }
+ } else {
+ form = (bo & 0x8) >> 1
+ startArg = 2
+ if bo&0x14 == 0x04 {
+ at = bo & 0x3
+ }
+ }
+ sfx += atsfx[at]
+
+ if form != 1 {
+ bit := int((bi-Cond0LT)%4) | (^form)&0x4
+ sfx = condBit[bit] + sfx
+ }
+
+ if at != 1 && startArg > 0 && bh <= 0 {
+ str := fmt.Sprintf("b%s", sfx)
+ if startArg > 1 && (cr != 0 || bh > 0) {
+ str += fmt.Sprintf(" cr%d", cr)
+ sep = ","
+ }
+ buf.WriteString(str)
+ if startArg < 2 && bh == 0 {
+ str := fmt.Sprintf(" %s",
+ gnuArg(&inst, 1, inst.Args[1], PC))
+ buf.WriteString(str)
+ startArg = 3
+ } else if bh == 0 {
+ startArg = 3
+ }
+ } else {
+ if startArg == 0 || bh > 0 || at == 1 {
+ buf.WriteString(inst.Op.String())
+ buf.WriteString(atsfx[at])
+ startArg = 0
+ } else {
+ buf.WriteString("b" + sfx)
+ }
+ if bh == 0 {
+ str := fmt.Sprintf(" %d,%s", bo, gnuArg(&inst, 1, inst.Args[1], PC))
+ buf.WriteString(str)
+ startArg = 3
+ }
+ }
+
case "mtspr":
opcode := inst.Op.String()
buf.WriteString(opcode[0:2])
@@ -198,7 +287,7 @@
if arg <= Cond0SO {
return bit
}
- return fmt.Sprintf("%s cr%d", bit, int(arg-Cond0LT)/4)
+ return fmt.Sprintf("4*cr%d+%s", int(arg-Cond0LT)/4, bit)
case Imm:
return fmt.Sprintf("%d", arg)
case SpReg:
diff --git a/ppc64/ppc64asm/objdumpext_test.go b/ppc64/ppc64asm/objdumpext_test.go
index d4f8fc8..37aa257 100644
--- a/ppc64/ppc64asm/objdumpext_test.go
+++ b/ppc64/ppc64asm/objdumpext_test.go
@@ -14,22 +14,34 @@
"io"
"log"
"os"
+ "os/exec"
"runtime"
"strconv"
"strings"
"testing"
)
-const objdumpPath = "/usr/bin/objdump"
+var objdumpPath = "objdump"
+
+var objdumpCrossNames = [...]string{"powerpc64-linux-gnu-objdump", "powerpc64le-linux-gnu-objdump"}
func testObjdump(t *testing.T, generate func(func([]byte))) {
if testing.Short() {
t.Skip("skipping objdump test in short mode")
}
if runtime.GOARCH != "ppc64le" && runtime.GOARCH != "ppc64" {
- t.Skip("skipping; test requires host tool objdump for ppc64 or ppc64le")
- }
- if _, err := os.Stat(objdumpPath); err != nil {
+ found := false
+ for _, c := range objdumpCrossNames {
+ if _, err := exec.LookPath(c); err == nil {
+ objdumpPath = c
+ found = true
+ break
+ }
+ }
+ if !found {
+ t.Skip("skipping; test requires host tool objdump for ppc64 or ppc64le")
+ }
+ } else if _, err := exec.LookPath(objdumpPath); err != nil {
t.Skip(err)
}
diff --git a/ppc64/ppc64asm/tables.go b/ppc64/ppc64asm/tables.go
index 76f9635..971816d 100644
--- a/ppc64/ppc64asm/tables.go
+++ b/ppc64/ppc64asm/tables.go
@@ -2794,6 +2794,7 @@
ap_FPReg_16_20 = &argField{Type: TypeFPReg, Shift: 0, BitFields: BitFields{{16, 5}}}
ap_FPReg_11_15 = &argField{Type: TypeFPReg, Shift: 0, BitFields: BitFields{{11, 5}}}
ap_FPReg_21_25 = &argField{Type: TypeFPReg, Shift: 0, BitFields: BitFields{{21, 5}}}
+ ap_ImmUnsigned_6_8 = &argField{Type: TypeImmUnsigned, Shift: 0, BitFields: BitFields{{6, 3}}}
ap_ImmUnsigned_16_19 = &argField{Type: TypeImmUnsigned, Shift: 0, BitFields: BitFields{{16, 4}}}
ap_ImmUnsigned_15_15 = &argField{Type: TypeImmUnsigned, Shift: 0, BitFields: BitFields{{15, 1}}}
ap_ImmUnsigned_7_14 = &argField{Type: TypeImmUnsigned, Shift: 0, BitFields: BitFields{{7, 8}}}
@@ -3653,21 +3654,21 @@
{MCRFS, 0xfc0007fe, 0xfc000080, 0x63f801, // Move to Condition Register from FPSCR X-form (mcrfs BF,BFA)
[5]*argField{ap_CondRegField_6_8, ap_CondRegField_11_13}},
{MTFSFI, 0xfc0007ff, 0xfc00010c, 0x7e0800, // Move To FPSCR Field Immediate X-form (mtfsfi BF,U,W)
- [5]*argField{ap_CondRegField_6_8, ap_ImmUnsigned_16_19, ap_ImmUnsigned_15_15}},
+ [5]*argField{ap_ImmUnsigned_6_8, ap_ImmUnsigned_16_19, ap_ImmUnsigned_15_15}},
{MTFSFICC, 0xfc0007ff, 0xfc00010d, 0x7e0800, // Move To FPSCR Field Immediate X-form (mtfsfi. BF,U,W)
- [5]*argField{ap_CondRegField_6_8, ap_ImmUnsigned_16_19, ap_ImmUnsigned_15_15}},
+ [5]*argField{ap_ImmUnsigned_6_8, ap_ImmUnsigned_16_19, ap_ImmUnsigned_15_15}},
{MTFSF, 0xfc0007ff, 0xfc00058e, 0x0, // Move To FPSCR Fields XFL-form (mtfsf FLM,FRB,L,W)
[5]*argField{ap_ImmUnsigned_7_14, ap_FPReg_16_20, ap_ImmUnsigned_6_6, ap_ImmUnsigned_15_15}},
{MTFSFCC, 0xfc0007ff, 0xfc00058f, 0x0, // Move To FPSCR Fields XFL-form (mtfsf. FLM,FRB,L,W)
[5]*argField{ap_ImmUnsigned_7_14, ap_FPReg_16_20, ap_ImmUnsigned_6_6, ap_ImmUnsigned_15_15}},
{MTFSB0, 0xfc0007ff, 0xfc00008c, 0x1ff800, // Move To FPSCR Bit 0 X-form (mtfsb0 BT)
- [5]*argField{ap_CondRegBit_6_10}},
+ [5]*argField{ap_ImmUnsigned_6_10}},
{MTFSB0CC, 0xfc0007ff, 0xfc00008d, 0x1ff800, // Move To FPSCR Bit 0 X-form (mtfsb0. BT)
- [5]*argField{ap_CondRegBit_6_10}},
+ [5]*argField{ap_ImmUnsigned_6_10}},
{MTFSB1, 0xfc0007ff, 0xfc00004c, 0x1ff800, // Move To FPSCR Bit 1 X-form (mtfsb1 BT)
- [5]*argField{ap_CondRegBit_6_10}},
+ [5]*argField{ap_ImmUnsigned_6_10}},
{MTFSB1CC, 0xfc0007ff, 0xfc00004d, 0x1ff800, // Move To FPSCR Bit 1 X-form (mtfsb1. BT)
- [5]*argField{ap_CondRegBit_6_10}},
+ [5]*argField{ap_ImmUnsigned_6_10}},
{LVEBX, 0xfc0007fe, 0x7c00000e, 0x1, // Load Vector Element Byte Indexed X-form (lvebx VRT,RA,RB)
[5]*argField{ap_VecReg_6_10, ap_Reg_11_15, ap_Reg_16_20}},
{LVEHX, 0xfc0007fe, 0x7c00004e, 0x1, // Load Vector Element Halfword Indexed X-form (lvehx VRT,RA,RB)
diff --git a/ppc64/ppc64asm/testdata/decode.txt b/ppc64/ppc64asm/testdata/decode.txt
index 5547a18..f46a616 100644
--- a/ppc64/ppc64asm/testdata/decode.txt
+++ b/ppc64/ppc64asm/testdata/decode.txt
@@ -9,7 +9,7 @@
00002000| gnu error: unknown instruction
a1841e80| gnu lhz r12,7808(r4)
a1841e80| plan9 MOVHZ 7808(R4),R12
-42000004| gnu bdnz 0x4
+42000004| gnu bdnz 0x30
e38d5b90| gnu lq r28,23440(r13)
84127a20| gnu lwzu r0,31264(r18)
84127a20| plan9 MOVWZU 31264(R18),R0
@@ -25,7 +25,7 @@
2c030001| plan9 CMPW R3,$1
e8610032| gnu lwa r3,48(r1)
e8610032| plan9 MOVW 48(R1),R3
-4320336b| gnu bcla 25,lt,0x3368
+4320336b| gnu bdnzla+ 0x3368
7e40092e| gnu stwx r18,0,r1
7e40092e| plan9 MOVW R18,(R1)(0)
7c103c2c| gnu lwbrx r0,r16,r7
@@ -70,14 +70,14 @@
7c6c42a6| plan9 MOVD SPR(268),R3
7c8202a6| plan9 MOVD SPR(2),R4
7c8202a6| gnu mfspr r4,2
-41820010| plan9 BEQ 0x10
-41820010| gnu beq 0x10
-4086000c| plan9 BNE CR1,0xc
-4086000c| gnu bne cr1,0xc
-41880008| plan9 BLT CR2,0x8
-41880008| gnu blt cr2,0x8
-418d0004| plan9 BGT CR3,0x4
-418d0004| gnu bgt cr3,0x4
+41820010| plan9 BEQ 0x130
+41820010| gnu beq 0x134
+4086000c| plan9 BNE CR1,0x134
+4086000c| gnu bne cr1,0x138
+41880008| plan9 BLT CR2,0x138
+41880008| gnu blt cr2,0x13c
+418d0004| plan9 BGT CR3,0x13c
+418d0004| gnu bgt cr3,0x140
e8830008| plan9 MOVD 8(R3),R4
7ca4182a| plan9 MOVD (R3)(R4),R5
e8830006| plan9 MOVW 4(R3),R4
diff --git a/ppc64/ppc64asm/testdata/decode_branch.txt b/ppc64/ppc64asm/testdata/decode_branch.txt
new file mode 100644
index 0000000..923d0ba
--- /dev/null
+++ b/ppc64/ppc64asm/testdata/decode_branch.txt
@@ -0,0 +1,2816 @@
+4c000020| gnu bdnzflr lt
+4c000420| gnu bcctr 0,lt
+4c000460| gnu bdnzftar lt
+4c000820| gnu bclr 0,lt,1
+4c000c20| gnu bcctr 0,lt,1
+4c000c60| gnu bctar 0,lt,1
+4c001020| gnu bclr 0,lt,2
+4c001420| gnu bcctr 0,lt,2
+4c001460| gnu bctar 0,lt,2
+40000080| gnu bdnzf lt,0xa4
+40000082| gnu bdnzfa lt,0x80
+4c000021| gnu bdnzflrl lt
+4c000421| gnu bcctrl 0,lt
+4c000461| gnu bdnzftarl lt
+4c000821| gnu bclrl 0,lt,1
+4c000c21| gnu bcctrl 0,lt,1
+4c000c61| gnu bctarl 0,lt,1
+4c001021| gnu bclrl 0,lt,2
+4c001421| gnu bcctrl 0,lt,2
+4c001461| gnu bctarl 0,lt,2
+40000081| gnu bdnzfl lt,0xd0
+40000083| gnu bdnzfla lt,0x80
+4c010020| gnu bdnzflr gt
+4c010420| gnu bcctr 0,gt
+4c010460| gnu bdnzftar gt
+4c010820| gnu bclr 0,gt,1
+4c010c20| gnu bcctr 0,gt,1
+4c010c60| gnu bctar 0,gt,1
+4c011020| gnu bclr 0,gt,2
+4c011420| gnu bcctr 0,gt,2
+4c011460| gnu bctar 0,gt,2
+40010080| gnu bdnzf gt,0xfc
+40010082| gnu bdnzfa gt,0x80
+4c010021| gnu bdnzflrl gt
+4c010421| gnu bcctrl 0,gt
+4c010461| gnu bdnzftarl gt
+4c010821| gnu bclrl 0,gt,1
+4c010c21| gnu bcctrl 0,gt,1
+4c010c61| gnu bctarl 0,gt,1
+4c011021| gnu bclrl 0,gt,2
+4c011421| gnu bcctrl 0,gt,2
+4c011461| gnu bctarl 0,gt,2
+40010081| gnu bdnzfl gt,0x128
+40010083| gnu bdnzfla gt,0x80
+4c020020| gnu bdnzflr eq
+4c020420| gnu bcctr 0,eq
+4c020460| gnu bdnzftar eq
+4c020820| gnu bclr 0,eq,1
+4c020c20| gnu bcctr 0,eq,1
+4c020c60| gnu bctar 0,eq,1
+4c021020| gnu bclr 0,eq,2
+4c021420| gnu bcctr 0,eq,2
+4c021460| gnu bctar 0,eq,2
+40020080| gnu bdnzf eq,0x154
+40020082| gnu bdnzfa eq,0x80
+4c020021| gnu bdnzflrl eq
+4c020421| gnu bcctrl 0,eq
+4c020461| gnu bdnzftarl eq
+4c020821| gnu bclrl 0,eq,1
+4c020c21| gnu bcctrl 0,eq,1
+4c020c61| gnu bctarl 0,eq,1
+4c021021| gnu bclrl 0,eq,2
+4c021421| gnu bcctrl 0,eq,2
+4c021461| gnu bctarl 0,eq,2
+40020081| gnu bdnzfl eq,0x180
+40020083| gnu bdnzfla eq,0x80
+4c030020| gnu bdnzflr so
+4c030420| gnu bcctr 0,so
+4c030460| gnu bdnzftar so
+4c030820| gnu bclr 0,so,1
+4c030c20| gnu bcctr 0,so,1
+4c030c60| gnu bctar 0,so,1
+4c031020| gnu bclr 0,so,2
+4c031420| gnu bcctr 0,so,2
+4c031460| gnu bctar 0,so,2
+40030080| gnu bdnzf so,0x1ac
+40030082| gnu bdnzfa so,0x80
+4c030021| gnu bdnzflrl so
+4c030421| gnu bcctrl 0,so
+4c030461| gnu bdnzftarl so
+4c030821| gnu bclrl 0,so,1
+4c030c21| gnu bcctrl 0,so,1
+4c030c61| gnu bctarl 0,so,1
+4c031021| gnu bclrl 0,so,2
+4c031421| gnu bcctrl 0,so,2
+4c031461| gnu bctarl 0,so,2
+40030081| gnu bdnzfl so,0x1d8
+40030083| gnu bdnzfla so,0x80
+4c040020| gnu bdnzflr 4*cr1+lt
+4c040420| gnu bcctr 0,4*cr1+lt
+4c040460| gnu bdnzftar 4*cr1+lt
+4c040820| gnu bclr 0,4*cr1+lt,1
+4c040c20| gnu bcctr 0,4*cr1+lt,1
+4c040c60| gnu bctar 0,4*cr1+lt,1
+4c041020| gnu bclr 0,4*cr1+lt,2
+4c041420| gnu bcctr 0,4*cr1+lt,2
+4c041460| gnu bctar 0,4*cr1+lt,2
+40040080| gnu bdnzf 4*cr1+lt,0x204
+40040082| gnu bdnzfa 4*cr1+lt,0x80
+4c040021| gnu bdnzflrl 4*cr1+lt
+4c040421| gnu bcctrl 0,4*cr1+lt
+4c040461| gnu bdnzftarl 4*cr1+lt
+4c040821| gnu bclrl 0,4*cr1+lt,1
+4c040c21| gnu bcctrl 0,4*cr1+lt,1
+4c040c61| gnu bctarl 0,4*cr1+lt,1
+4c041021| gnu bclrl 0,4*cr1+lt,2
+4c041421| gnu bcctrl 0,4*cr1+lt,2
+4c041461| gnu bctarl 0,4*cr1+lt,2
+40040081| gnu bdnzfl 4*cr1+lt,0x230
+40040083| gnu bdnzfla 4*cr1+lt,0x80
+4c050020| gnu bdnzflr 4*cr1+gt
+4c050420| gnu bcctr 0,4*cr1+gt
+4c050460| gnu bdnzftar 4*cr1+gt
+4c050820| gnu bclr 0,4*cr1+gt,1
+4c050c20| gnu bcctr 0,4*cr1+gt,1
+4c050c60| gnu bctar 0,4*cr1+gt,1
+4c051020| gnu bclr 0,4*cr1+gt,2
+4c051420| gnu bcctr 0,4*cr1+gt,2
+4c051460| gnu bctar 0,4*cr1+gt,2
+40050080| gnu bdnzf 4*cr1+gt,0x25c
+40050082| gnu bdnzfa 4*cr1+gt,0x80
+4c050021| gnu bdnzflrl 4*cr1+gt
+4c050421| gnu bcctrl 0,4*cr1+gt
+4c050461| gnu bdnzftarl 4*cr1+gt
+4c050821| gnu bclrl 0,4*cr1+gt,1
+4c050c21| gnu bcctrl 0,4*cr1+gt,1
+4c050c61| gnu bctarl 0,4*cr1+gt,1
+4c051021| gnu bclrl 0,4*cr1+gt,2
+4c051421| gnu bcctrl 0,4*cr1+gt,2
+4c051461| gnu bctarl 0,4*cr1+gt,2
+40050081| gnu bdnzfl 4*cr1+gt,0x288
+40050083| gnu bdnzfla 4*cr1+gt,0x80
+4c060020| gnu bdnzflr 4*cr1+eq
+4c060420| gnu bcctr 0,4*cr1+eq
+4c060460| gnu bdnzftar 4*cr1+eq
+4c060820| gnu bclr 0,4*cr1+eq,1
+4c060c20| gnu bcctr 0,4*cr1+eq,1
+4c060c60| gnu bctar 0,4*cr1+eq,1
+4c061020| gnu bclr 0,4*cr1+eq,2
+4c061420| gnu bcctr 0,4*cr1+eq,2
+4c061460| gnu bctar 0,4*cr1+eq,2
+40060080| gnu bdnzf 4*cr1+eq,0x2b4
+40060082| gnu bdnzfa 4*cr1+eq,0x80
+4c060021| gnu bdnzflrl 4*cr1+eq
+4c060421| gnu bcctrl 0,4*cr1+eq
+4c060461| gnu bdnzftarl 4*cr1+eq
+4c060821| gnu bclrl 0,4*cr1+eq,1
+4c060c21| gnu bcctrl 0,4*cr1+eq,1
+4c060c61| gnu bctarl 0,4*cr1+eq,1
+4c061021| gnu bclrl 0,4*cr1+eq,2
+4c061421| gnu bcctrl 0,4*cr1+eq,2
+4c061461| gnu bctarl 0,4*cr1+eq,2
+40060081| gnu bdnzfl 4*cr1+eq,0x2e0
+40060083| gnu bdnzfla 4*cr1+eq,0x80
+4c070020| gnu bdnzflr 4*cr1+so
+4c070420| gnu bcctr 0,4*cr1+so
+4c070460| gnu bdnzftar 4*cr1+so
+4c070820| gnu bclr 0,4*cr1+so,1
+4c070c20| gnu bcctr 0,4*cr1+so,1
+4c070c60| gnu bctar 0,4*cr1+so,1
+4c071020| gnu bclr 0,4*cr1+so,2
+4c071420| gnu bcctr 0,4*cr1+so,2
+4c071460| gnu bctar 0,4*cr1+so,2
+40070080| gnu bdnzf 4*cr1+so,0x30c
+40070082| gnu bdnzfa 4*cr1+so,0x80
+4c070021| gnu bdnzflrl 4*cr1+so
+4c070421| gnu bcctrl 0,4*cr1+so
+4c070461| gnu bdnzftarl 4*cr1+so
+4c070821| gnu bclrl 0,4*cr1+so,1
+4c070c21| gnu bcctrl 0,4*cr1+so,1
+4c070c61| gnu bctarl 0,4*cr1+so,1
+4c071021| gnu bclrl 0,4*cr1+so,2
+4c071421| gnu bcctrl 0,4*cr1+so,2
+4c071461| gnu bctarl 0,4*cr1+so,2
+40070081| gnu bdnzfl 4*cr1+so,0x338
+40070083| gnu bdnzfla 4*cr1+so,0x80
+4c400020| gnu bdzflr lt
+4c400420| gnu bcctr 2,lt
+4c400460| gnu bdzftar lt
+4c400820| gnu bclr 2,lt,1
+4c400c20| gnu bcctr 2,lt,1
+4c400c60| gnu bctar 2,lt,1
+4c401020| gnu bclr 2,lt,2
+4c401420| gnu bcctr 2,lt,2
+4c401460| gnu bctar 2,lt,2
+40400080| gnu bdzf lt,0x364
+40400082| gnu bdzfa lt,0x80
+4c400021| gnu bdzflrl lt
+4c400421| gnu bcctrl 2,lt
+4c400461| gnu bdzftarl lt
+4c400821| gnu bclrl 2,lt,1
+4c400c21| gnu bcctrl 2,lt,1
+4c400c61| gnu bctarl 2,lt,1
+4c401021| gnu bclrl 2,lt,2
+4c401421| gnu bcctrl 2,lt,2
+4c401461| gnu bctarl 2,lt,2
+40400081| gnu bdzfl lt,0x390
+40400083| gnu bdzfla lt,0x80
+4c410020| gnu bdzflr gt
+4c410420| gnu bcctr 2,gt
+4c410460| gnu bdzftar gt
+4c410820| gnu bclr 2,gt,1
+4c410c20| gnu bcctr 2,gt,1
+4c410c60| gnu bctar 2,gt,1
+4c411020| gnu bclr 2,gt,2
+4c411420| gnu bcctr 2,gt,2
+4c411460| gnu bctar 2,gt,2
+40410080| gnu bdzf gt,0x3bc
+40410082| gnu bdzfa gt,0x80
+4c410021| gnu bdzflrl gt
+4c410421| gnu bcctrl 2,gt
+4c410461| gnu bdzftarl gt
+4c410821| gnu bclrl 2,gt,1
+4c410c21| gnu bcctrl 2,gt,1
+4c410c61| gnu bctarl 2,gt,1
+4c411021| gnu bclrl 2,gt,2
+4c411421| gnu bcctrl 2,gt,2
+4c411461| gnu bctarl 2,gt,2
+40410081| gnu bdzfl gt,0x3e8
+40410083| gnu bdzfla gt,0x80
+4c420020| gnu bdzflr eq
+4c420420| gnu bcctr 2,eq
+4c420460| gnu bdzftar eq
+4c420820| gnu bclr 2,eq,1
+4c420c20| gnu bcctr 2,eq,1
+4c420c60| gnu bctar 2,eq,1
+4c421020| gnu bclr 2,eq,2
+4c421420| gnu bcctr 2,eq,2
+4c421460| gnu bctar 2,eq,2
+40420080| gnu bdzf eq,0x414
+40420082| gnu bdzfa eq,0x80
+4c420021| gnu bdzflrl eq
+4c420421| gnu bcctrl 2,eq
+4c420461| gnu bdzftarl eq
+4c420821| gnu bclrl 2,eq,1
+4c420c21| gnu bcctrl 2,eq,1
+4c420c61| gnu bctarl 2,eq,1
+4c421021| gnu bclrl 2,eq,2
+4c421421| gnu bcctrl 2,eq,2
+4c421461| gnu bctarl 2,eq,2
+40420081| gnu bdzfl eq,0x440
+40420083| gnu bdzfla eq,0x80
+4c430020| gnu bdzflr so
+4c430420| gnu bcctr 2,so
+4c430460| gnu bdzftar so
+4c430820| gnu bclr 2,so,1
+4c430c20| gnu bcctr 2,so,1
+4c430c60| gnu bctar 2,so,1
+4c431020| gnu bclr 2,so,2
+4c431420| gnu bcctr 2,so,2
+4c431460| gnu bctar 2,so,2
+40430080| gnu bdzf so,0x46c
+40430082| gnu bdzfa so,0x80
+4c430021| gnu bdzflrl so
+4c430421| gnu bcctrl 2,so
+4c430461| gnu bdzftarl so
+4c430821| gnu bclrl 2,so,1
+4c430c21| gnu bcctrl 2,so,1
+4c430c61| gnu bctarl 2,so,1
+4c431021| gnu bclrl 2,so,2
+4c431421| gnu bcctrl 2,so,2
+4c431461| gnu bctarl 2,so,2
+40430081| gnu bdzfl so,0x498
+40430083| gnu bdzfla so,0x80
+4c440020| gnu bdzflr 4*cr1+lt
+4c440420| gnu bcctr 2,4*cr1+lt
+4c440460| gnu bdzftar 4*cr1+lt
+4c440820| gnu bclr 2,4*cr1+lt,1
+4c440c20| gnu bcctr 2,4*cr1+lt,1
+4c440c60| gnu bctar 2,4*cr1+lt,1
+4c441020| gnu bclr 2,4*cr1+lt,2
+4c441420| gnu bcctr 2,4*cr1+lt,2
+4c441460| gnu bctar 2,4*cr1+lt,2
+40440080| gnu bdzf 4*cr1+lt,0x4c4
+40440082| gnu bdzfa 4*cr1+lt,0x80
+4c440021| gnu bdzflrl 4*cr1+lt
+4c440421| gnu bcctrl 2,4*cr1+lt
+4c440461| gnu bdzftarl 4*cr1+lt
+4c440821| gnu bclrl 2,4*cr1+lt,1
+4c440c21| gnu bcctrl 2,4*cr1+lt,1
+4c440c61| gnu bctarl 2,4*cr1+lt,1
+4c441021| gnu bclrl 2,4*cr1+lt,2
+4c441421| gnu bcctrl 2,4*cr1+lt,2
+4c441461| gnu bctarl 2,4*cr1+lt,2
+40440081| gnu bdzfl 4*cr1+lt,0x4f0
+40440083| gnu bdzfla 4*cr1+lt,0x80
+4c450020| gnu bdzflr 4*cr1+gt
+4c450420| gnu bcctr 2,4*cr1+gt
+4c450460| gnu bdzftar 4*cr1+gt
+4c450820| gnu bclr 2,4*cr1+gt,1
+4c450c20| gnu bcctr 2,4*cr1+gt,1
+4c450c60| gnu bctar 2,4*cr1+gt,1
+4c451020| gnu bclr 2,4*cr1+gt,2
+4c451420| gnu bcctr 2,4*cr1+gt,2
+4c451460| gnu bctar 2,4*cr1+gt,2
+40450080| gnu bdzf 4*cr1+gt,0x51c
+40450082| gnu bdzfa 4*cr1+gt,0x80
+4c450021| gnu bdzflrl 4*cr1+gt
+4c450421| gnu bcctrl 2,4*cr1+gt
+4c450461| gnu bdzftarl 4*cr1+gt
+4c450821| gnu bclrl 2,4*cr1+gt,1
+4c450c21| gnu bcctrl 2,4*cr1+gt,1
+4c450c61| gnu bctarl 2,4*cr1+gt,1
+4c451021| gnu bclrl 2,4*cr1+gt,2
+4c451421| gnu bcctrl 2,4*cr1+gt,2
+4c451461| gnu bctarl 2,4*cr1+gt,2
+40450081| gnu bdzfl 4*cr1+gt,0x548
+40450083| gnu bdzfla 4*cr1+gt,0x80
+4c460020| gnu bdzflr 4*cr1+eq
+4c460420| gnu bcctr 2,4*cr1+eq
+4c460460| gnu bdzftar 4*cr1+eq
+4c460820| gnu bclr 2,4*cr1+eq,1
+4c460c20| gnu bcctr 2,4*cr1+eq,1
+4c460c60| gnu bctar 2,4*cr1+eq,1
+4c461020| gnu bclr 2,4*cr1+eq,2
+4c461420| gnu bcctr 2,4*cr1+eq,2
+4c461460| gnu bctar 2,4*cr1+eq,2
+40460080| gnu bdzf 4*cr1+eq,0x574
+40460082| gnu bdzfa 4*cr1+eq,0x80
+4c460021| gnu bdzflrl 4*cr1+eq
+4c460421| gnu bcctrl 2,4*cr1+eq
+4c460461| gnu bdzftarl 4*cr1+eq
+4c460821| gnu bclrl 2,4*cr1+eq,1
+4c460c21| gnu bcctrl 2,4*cr1+eq,1
+4c460c61| gnu bctarl 2,4*cr1+eq,1
+4c461021| gnu bclrl 2,4*cr1+eq,2
+4c461421| gnu bcctrl 2,4*cr1+eq,2
+4c461461| gnu bctarl 2,4*cr1+eq,2
+40460081| gnu bdzfl 4*cr1+eq,0x5a0
+40460083| gnu bdzfla 4*cr1+eq,0x80
+4c470020| gnu bdzflr 4*cr1+so
+4c470420| gnu bcctr 2,4*cr1+so
+4c470460| gnu bdzftar 4*cr1+so
+4c470820| gnu bclr 2,4*cr1+so,1
+4c470c20| gnu bcctr 2,4*cr1+so,1
+4c470c60| gnu bctar 2,4*cr1+so,1
+4c471020| gnu bclr 2,4*cr1+so,2
+4c471420| gnu bcctr 2,4*cr1+so,2
+4c471460| gnu bctar 2,4*cr1+so,2
+40470080| gnu bdzf 4*cr1+so,0x5cc
+40470082| gnu bdzfa 4*cr1+so,0x80
+4c470021| gnu bdzflrl 4*cr1+so
+4c470421| gnu bcctrl 2,4*cr1+so
+4c470461| gnu bdzftarl 4*cr1+so
+4c470821| gnu bclrl 2,4*cr1+so,1
+4c470c21| gnu bcctrl 2,4*cr1+so,1
+4c470c61| gnu bctarl 2,4*cr1+so,1
+4c471021| gnu bclrl 2,4*cr1+so,2
+4c471421| gnu bcctrl 2,4*cr1+so,2
+4c471461| gnu bctarl 2,4*cr1+so,2
+40470081| gnu bdzfl 4*cr1+so,0x5f8
+40470083| gnu bdzfla 4*cr1+so,0x80
+4c800020| gnu bgelr
+4c800420| gnu bgectr
+4c800460| gnu bgetar
+4c800820| gnu bclr 4,lt,1
+4c800c20| gnu bcctr 4,lt,1
+4c800c60| gnu bctar 4,lt,1
+4c801020| gnu bclr 4,lt,2
+4c801420| gnu bcctr 4,lt,2
+4c801460| gnu bctar 4,lt,2
+40800080| gnu bge 0x624
+40800082| gnu bgea 0x80
+4c800021| gnu bgelrl
+4c800421| gnu bgectrl
+4c800461| gnu bgetarl
+4c800821| gnu bclrl 4,lt,1
+4c800c21| gnu bcctrl 4,lt,1
+4c800c61| gnu bctarl 4,lt,1
+4c801021| gnu bclrl 4,lt,2
+4c801421| gnu bcctrl 4,lt,2
+4c801461| gnu bctarl 4,lt,2
+40800081| gnu bgel 0x650
+40800083| gnu bgela 0x80
+4c810020| gnu blelr
+4c810420| gnu blectr
+4c810460| gnu bletar
+4c810820| gnu bclr 4,gt,1
+4c810c20| gnu bcctr 4,gt,1
+4c810c60| gnu bctar 4,gt,1
+4c811020| gnu bclr 4,gt,2
+4c811420| gnu bcctr 4,gt,2
+4c811460| gnu bctar 4,gt,2
+40810080| gnu ble 0x67c
+40810082| gnu blea 0x80
+4c810021| gnu blelrl
+4c810421| gnu blectrl
+4c810461| gnu bletarl
+4c810821| gnu bclrl 4,gt,1
+4c810c21| gnu bcctrl 4,gt,1
+4c810c61| gnu bctarl 4,gt,1
+4c811021| gnu bclrl 4,gt,2
+4c811421| gnu bcctrl 4,gt,2
+4c811461| gnu bctarl 4,gt,2
+40810081| gnu blel 0x6a8
+40810083| gnu blela 0x80
+4c820020| gnu bnelr
+4c820420| gnu bnectr
+4c820460| gnu bnetar
+4c820820| gnu bclr 4,eq,1
+4c820c20| gnu bcctr 4,eq,1
+4c820c60| gnu bctar 4,eq,1
+4c821020| gnu bclr 4,eq,2
+4c821420| gnu bcctr 4,eq,2
+4c821460| gnu bctar 4,eq,2
+40820080| gnu bne 0x6d4
+40820082| gnu bnea 0x80
+4c820021| gnu bnelrl
+4c820421| gnu bnectrl
+4c820461| gnu bnetarl
+4c820821| gnu bclrl 4,eq,1
+4c820c21| gnu bcctrl 4,eq,1
+4c820c61| gnu bctarl 4,eq,1
+4c821021| gnu bclrl 4,eq,2
+4c821421| gnu bcctrl 4,eq,2
+4c821461| gnu bctarl 4,eq,2
+40820081| gnu bnel 0x700
+40820083| gnu bnela 0x80
+4c830020| gnu bnslr
+4c830420| gnu bnsctr
+4c830460| gnu bnstar
+4c830820| gnu bclr 4,so,1
+4c830c20| gnu bcctr 4,so,1
+4c830c60| gnu bctar 4,so,1
+4c831020| gnu bclr 4,so,2
+4c831420| gnu bcctr 4,so,2
+4c831460| gnu bctar 4,so,2
+40830080| gnu bns 0x72c
+40830082| gnu bnsa 0x80
+4c830021| gnu bnslrl
+4c830421| gnu bnsctrl
+4c830461| gnu bnstarl
+4c830821| gnu bclrl 4,so,1
+4c830c21| gnu bcctrl 4,so,1
+4c830c61| gnu bctarl 4,so,1
+4c831021| gnu bclrl 4,so,2
+4c831421| gnu bcctrl 4,so,2
+4c831461| gnu bctarl 4,so,2
+40830081| gnu bnsl 0x758
+40830083| gnu bnsla 0x80
+4c840020| gnu bgelr cr1
+4c840420| gnu bgectr cr1
+4c840460| gnu bgetar cr1
+4c840820| gnu bclr 4,4*cr1+lt,1
+4c840c20| gnu bcctr 4,4*cr1+lt,1
+4c840c60| gnu bctar 4,4*cr1+lt,1
+4c841020| gnu bclr 4,4*cr1+lt,2
+4c841420| gnu bcctr 4,4*cr1+lt,2
+4c841460| gnu bctar 4,4*cr1+lt,2
+40840080| gnu bge cr1,0x784
+40840082| gnu bgea cr1,0x80
+4c840021| gnu bgelrl cr1
+4c840421| gnu bgectrl cr1
+4c840461| gnu bgetarl cr1
+4c840821| gnu bclrl 4,4*cr1+lt,1
+4c840c21| gnu bcctrl 4,4*cr1+lt,1
+4c840c61| gnu bctarl 4,4*cr1+lt,1
+4c841021| gnu bclrl 4,4*cr1+lt,2
+4c841421| gnu bcctrl 4,4*cr1+lt,2
+4c841461| gnu bctarl 4,4*cr1+lt,2
+40840081| gnu bgel cr1,0x7b0
+40840083| gnu bgela cr1,0x80
+4c850020| gnu blelr cr1
+4c850420| gnu blectr cr1
+4c850460| gnu bletar cr1
+4c850820| gnu bclr 4,4*cr1+gt,1
+4c850c20| gnu bcctr 4,4*cr1+gt,1
+4c850c60| gnu bctar 4,4*cr1+gt,1
+4c851020| gnu bclr 4,4*cr1+gt,2
+4c851420| gnu bcctr 4,4*cr1+gt,2
+4c851460| gnu bctar 4,4*cr1+gt,2
+40850080| gnu ble cr1,0x7dc
+40850082| gnu blea cr1,0x80
+4c850021| gnu blelrl cr1
+4c850421| gnu blectrl cr1
+4c850461| gnu bletarl cr1
+4c850821| gnu bclrl 4,4*cr1+gt,1
+4c850c21| gnu bcctrl 4,4*cr1+gt,1
+4c850c61| gnu bctarl 4,4*cr1+gt,1
+4c851021| gnu bclrl 4,4*cr1+gt,2
+4c851421| gnu bcctrl 4,4*cr1+gt,2
+4c851461| gnu bctarl 4,4*cr1+gt,2
+40850081| gnu blel cr1,0x808
+40850083| gnu blela cr1,0x80
+4c860020| gnu bnelr cr1
+4c860420| gnu bnectr cr1
+4c860460| gnu bnetar cr1
+4c860820| gnu bclr 4,4*cr1+eq,1
+4c860c20| gnu bcctr 4,4*cr1+eq,1
+4c860c60| gnu bctar 4,4*cr1+eq,1
+4c861020| gnu bclr 4,4*cr1+eq,2
+4c861420| gnu bcctr 4,4*cr1+eq,2
+4c861460| gnu bctar 4,4*cr1+eq,2
+40860080| gnu bne cr1,0x834
+40860082| gnu bnea cr1,0x80
+4c860021| gnu bnelrl cr1
+4c860421| gnu bnectrl cr1
+4c860461| gnu bnetarl cr1
+4c860821| gnu bclrl 4,4*cr1+eq,1
+4c860c21| gnu bcctrl 4,4*cr1+eq,1
+4c860c61| gnu bctarl 4,4*cr1+eq,1
+4c861021| gnu bclrl 4,4*cr1+eq,2
+4c861421| gnu bcctrl 4,4*cr1+eq,2
+4c861461| gnu bctarl 4,4*cr1+eq,2
+40860081| gnu bnel cr1,0x860
+40860083| gnu bnela cr1,0x80
+4c870020| gnu bnslr cr1
+4c870420| gnu bnsctr cr1
+4c870460| gnu bnstar cr1
+4c870820| gnu bclr 4,4*cr1+so,1
+4c870c20| gnu bcctr 4,4*cr1+so,1
+4c870c60| gnu bctar 4,4*cr1+so,1
+4c871020| gnu bclr 4,4*cr1+so,2
+4c871420| gnu bcctr 4,4*cr1+so,2
+4c871460| gnu bctar 4,4*cr1+so,2
+40870080| gnu bns cr1,0x88c
+40870082| gnu bnsa cr1,0x80
+4c870021| gnu bnslrl cr1
+4c870421| gnu bnsctrl cr1
+4c870461| gnu bnstarl cr1
+4c870821| gnu bclrl 4,4*cr1+so,1
+4c870c21| gnu bcctrl 4,4*cr1+so,1
+4c870c61| gnu bctarl 4,4*cr1+so,1
+4c871021| gnu bclrl 4,4*cr1+so,2
+4c871421| gnu bcctrl 4,4*cr1+so,2
+4c871461| gnu bctarl 4,4*cr1+so,2
+40870081| gnu bnsl cr1,0x8b8
+40870083| gnu bnsla cr1,0x80
+4cc00020| gnu bgelr-
+4cc00420| gnu bgectr-
+4cc00460| gnu bgetar-
+4cc00820| gnu bclr- 6,lt,1
+4cc00c20| gnu bcctr- 6,lt,1
+4cc00c60| gnu bctar- 6,lt,1
+4cc01020| gnu bclr- 6,lt,2
+4cc01420| gnu bcctr- 6,lt,2
+4cc01460| gnu bctar- 6,lt,2
+40c00080| gnu bge- 0x8e4
+40c00082| gnu bgea- 0x80
+4cc00021| gnu bgelrl-
+4cc00421| gnu bgectrl-
+4cc00461| gnu bgetarl-
+4cc00821| gnu bclrl- 6,lt,1
+4cc00c21| gnu bcctrl- 6,lt,1
+4cc00c61| gnu bctarl- 6,lt,1
+4cc01021| gnu bclrl- 6,lt,2
+4cc01421| gnu bcctrl- 6,lt,2
+4cc01461| gnu bctarl- 6,lt,2
+40c00081| gnu bgel- 0x910
+40c00083| gnu bgela- 0x80
+4cc10020| gnu blelr-
+4cc10420| gnu blectr-
+4cc10460| gnu bletar-
+4cc10820| gnu bclr- 6,gt,1
+4cc10c20| gnu bcctr- 6,gt,1
+4cc10c60| gnu bctar- 6,gt,1
+4cc11020| gnu bclr- 6,gt,2
+4cc11420| gnu bcctr- 6,gt,2
+4cc11460| gnu bctar- 6,gt,2
+40c10080| gnu ble- 0x93c
+40c10082| gnu blea- 0x80
+4cc10021| gnu blelrl-
+4cc10421| gnu blectrl-
+4cc10461| gnu bletarl-
+4cc10821| gnu bclrl- 6,gt,1
+4cc10c21| gnu bcctrl- 6,gt,1
+4cc10c61| gnu bctarl- 6,gt,1
+4cc11021| gnu bclrl- 6,gt,2
+4cc11421| gnu bcctrl- 6,gt,2
+4cc11461| gnu bctarl- 6,gt,2
+40c10081| gnu blel- 0x968
+40c10083| gnu blela- 0x80
+4cc20020| gnu bnelr-
+4cc20420| gnu bnectr-
+4cc20460| gnu bnetar-
+4cc20820| gnu bclr- 6,eq,1
+4cc20c20| gnu bcctr- 6,eq,1
+4cc20c60| gnu bctar- 6,eq,1
+4cc21020| gnu bclr- 6,eq,2
+4cc21420| gnu bcctr- 6,eq,2
+4cc21460| gnu bctar- 6,eq,2
+40c20080| gnu bne- 0x994
+40c20082| gnu bnea- 0x80
+4cc20021| gnu bnelrl-
+4cc20421| gnu bnectrl-
+4cc20461| gnu bnetarl-
+4cc20821| gnu bclrl- 6,eq,1
+4cc20c21| gnu bcctrl- 6,eq,1
+4cc20c61| gnu bctarl- 6,eq,1
+4cc21021| gnu bclrl- 6,eq,2
+4cc21421| gnu bcctrl- 6,eq,2
+4cc21461| gnu bctarl- 6,eq,2
+40c20081| gnu bnel- 0x9c0
+40c20083| gnu bnela- 0x80
+4cc30020| gnu bnslr-
+4cc30420| gnu bnsctr-
+4cc30460| gnu bnstar-
+4cc30820| gnu bclr- 6,so,1
+4cc30c20| gnu bcctr- 6,so,1
+4cc30c60| gnu bctar- 6,so,1
+4cc31020| gnu bclr- 6,so,2
+4cc31420| gnu bcctr- 6,so,2
+4cc31460| gnu bctar- 6,so,2
+40c30080| gnu bns- 0x9ec
+40c30082| gnu bnsa- 0x80
+4cc30021| gnu bnslrl-
+4cc30421| gnu bnsctrl-
+4cc30461| gnu bnstarl-
+4cc30821| gnu bclrl- 6,so,1
+4cc30c21| gnu bcctrl- 6,so,1
+4cc30c61| gnu bctarl- 6,so,1
+4cc31021| gnu bclrl- 6,so,2
+4cc31421| gnu bcctrl- 6,so,2
+4cc31461| gnu bctarl- 6,so,2
+40c30081| gnu bnsl- 0xa18
+40c30083| gnu bnsla- 0x80
+4cc40020| gnu bgelr- cr1
+4cc40420| gnu bgectr- cr1
+4cc40460| gnu bgetar- cr1
+4cc40820| gnu bclr- 6,4*cr1+lt,1
+4cc40c20| gnu bcctr- 6,4*cr1+lt,1
+4cc40c60| gnu bctar- 6,4*cr1+lt,1
+4cc41020| gnu bclr- 6,4*cr1+lt,2
+4cc41420| gnu bcctr- 6,4*cr1+lt,2
+4cc41460| gnu bctar- 6,4*cr1+lt,2
+40c40080| gnu bge- cr1,0xa44
+40c40082| gnu bgea- cr1,0x80
+4cc40021| gnu bgelrl- cr1
+4cc40421| gnu bgectrl- cr1
+4cc40461| gnu bgetarl- cr1
+4cc40821| gnu bclrl- 6,4*cr1+lt,1
+4cc40c21| gnu bcctrl- 6,4*cr1+lt,1
+4cc40c61| gnu bctarl- 6,4*cr1+lt,1
+4cc41021| gnu bclrl- 6,4*cr1+lt,2
+4cc41421| gnu bcctrl- 6,4*cr1+lt,2
+4cc41461| gnu bctarl- 6,4*cr1+lt,2
+40c40081| gnu bgel- cr1,0xa70
+40c40083| gnu bgela- cr1,0x80
+4cc50020| gnu blelr- cr1
+4cc50420| gnu blectr- cr1
+4cc50460| gnu bletar- cr1
+4cc50820| gnu bclr- 6,4*cr1+gt,1
+4cc50c20| gnu bcctr- 6,4*cr1+gt,1
+4cc50c60| gnu bctar- 6,4*cr1+gt,1
+4cc51020| gnu bclr- 6,4*cr1+gt,2
+4cc51420| gnu bcctr- 6,4*cr1+gt,2
+4cc51460| gnu bctar- 6,4*cr1+gt,2
+40c50080| gnu ble- cr1,0xa9c
+40c50082| gnu blea- cr1,0x80
+4cc50021| gnu blelrl- cr1
+4cc50421| gnu blectrl- cr1
+4cc50461| gnu bletarl- cr1
+4cc50821| gnu bclrl- 6,4*cr1+gt,1
+4cc50c21| gnu bcctrl- 6,4*cr1+gt,1
+4cc50c61| gnu bctarl- 6,4*cr1+gt,1
+4cc51021| gnu bclrl- 6,4*cr1+gt,2
+4cc51421| gnu bcctrl- 6,4*cr1+gt,2
+4cc51461| gnu bctarl- 6,4*cr1+gt,2
+40c50081| gnu blel- cr1,0xac8
+40c50083| gnu blela- cr1,0x80
+4cc60020| gnu bnelr- cr1
+4cc60420| gnu bnectr- cr1
+4cc60460| gnu bnetar- cr1
+4cc60820| gnu bclr- 6,4*cr1+eq,1
+4cc60c20| gnu bcctr- 6,4*cr1+eq,1
+4cc60c60| gnu bctar- 6,4*cr1+eq,1
+4cc61020| gnu bclr- 6,4*cr1+eq,2
+4cc61420| gnu bcctr- 6,4*cr1+eq,2
+4cc61460| gnu bctar- 6,4*cr1+eq,2
+40c60080| gnu bne- cr1,0xaf4
+40c60082| gnu bnea- cr1,0x80
+4cc60021| gnu bnelrl- cr1
+4cc60421| gnu bnectrl- cr1
+4cc60461| gnu bnetarl- cr1
+4cc60821| gnu bclrl- 6,4*cr1+eq,1
+4cc60c21| gnu bcctrl- 6,4*cr1+eq,1
+4cc60c61| gnu bctarl- 6,4*cr1+eq,1
+4cc61021| gnu bclrl- 6,4*cr1+eq,2
+4cc61421| gnu bcctrl- 6,4*cr1+eq,2
+4cc61461| gnu bctarl- 6,4*cr1+eq,2
+40c60081| gnu bnel- cr1,0xb20
+40c60083| gnu bnela- cr1,0x80
+4cc70020| gnu bnslr- cr1
+4cc70420| gnu bnsctr- cr1
+4cc70460| gnu bnstar- cr1
+4cc70820| gnu bclr- 6,4*cr1+so,1
+4cc70c20| gnu bcctr- 6,4*cr1+so,1
+4cc70c60| gnu bctar- 6,4*cr1+so,1
+4cc71020| gnu bclr- 6,4*cr1+so,2
+4cc71420| gnu bcctr- 6,4*cr1+so,2
+4cc71460| gnu bctar- 6,4*cr1+so,2
+40c70080| gnu bns- cr1,0xb4c
+40c70082| gnu bnsa- cr1,0x80
+4cc70021| gnu bnslrl- cr1
+4cc70421| gnu bnsctrl- cr1
+4cc70461| gnu bnstarl- cr1
+4cc70821| gnu bclrl- 6,4*cr1+so,1
+4cc70c21| gnu bcctrl- 6,4*cr1+so,1
+4cc70c61| gnu bctarl- 6,4*cr1+so,1
+4cc71021| gnu bclrl- 6,4*cr1+so,2
+4cc71421| gnu bcctrl- 6,4*cr1+so,2
+4cc71461| gnu bctarl- 6,4*cr1+so,2
+40c70081| gnu bnsl- cr1,0xb78
+40c70083| gnu bnsla- cr1,0x80
+4ce00020| gnu bgelr+
+4ce00420| gnu bgectr+
+4ce00460| gnu bgetar+
+4ce00820| gnu bclr+ 7,lt,1
+4ce00c20| gnu bcctr+ 7,lt,1
+4ce00c60| gnu bctar+ 7,lt,1
+4ce01020| gnu bclr+ 7,lt,2
+4ce01420| gnu bcctr+ 7,lt,2
+4ce01460| gnu bctar+ 7,lt,2
+40e00080| gnu bge+ 0xba4
+40e00082| gnu bgea+ 0x80
+4ce00021| gnu bgelrl+
+4ce00421| gnu bgectrl+
+4ce00461| gnu bgetarl+
+4ce00821| gnu bclrl+ 7,lt,1
+4ce00c21| gnu bcctrl+ 7,lt,1
+4ce00c61| gnu bctarl+ 7,lt,1
+4ce01021| gnu bclrl+ 7,lt,2
+4ce01421| gnu bcctrl+ 7,lt,2
+4ce01461| gnu bctarl+ 7,lt,2
+40e00081| gnu bgel+ 0xbd0
+40e00083| gnu bgela+ 0x80
+4ce10020| gnu blelr+
+4ce10420| gnu blectr+
+4ce10460| gnu bletar+
+4ce10820| gnu bclr+ 7,gt,1
+4ce10c20| gnu bcctr+ 7,gt,1
+4ce10c60| gnu bctar+ 7,gt,1
+4ce11020| gnu bclr+ 7,gt,2
+4ce11420| gnu bcctr+ 7,gt,2
+4ce11460| gnu bctar+ 7,gt,2
+40e10080| gnu ble+ 0xbfc
+40e10082| gnu blea+ 0x80
+4ce10021| gnu blelrl+
+4ce10421| gnu blectrl+
+4ce10461| gnu bletarl+
+4ce10821| gnu bclrl+ 7,gt,1
+4ce10c21| gnu bcctrl+ 7,gt,1
+4ce10c61| gnu bctarl+ 7,gt,1
+4ce11021| gnu bclrl+ 7,gt,2
+4ce11421| gnu bcctrl+ 7,gt,2
+4ce11461| gnu bctarl+ 7,gt,2
+40e10081| gnu blel+ 0xc28
+40e10083| gnu blela+ 0x80
+4ce20020| gnu bnelr+
+4ce20420| gnu bnectr+
+4ce20460| gnu bnetar+
+4ce20820| gnu bclr+ 7,eq,1
+4ce20c20| gnu bcctr+ 7,eq,1
+4ce20c60| gnu bctar+ 7,eq,1
+4ce21020| gnu bclr+ 7,eq,2
+4ce21420| gnu bcctr+ 7,eq,2
+4ce21460| gnu bctar+ 7,eq,2
+40e20080| gnu bne+ 0xc54
+40e20082| gnu bnea+ 0x80
+4ce20021| gnu bnelrl+
+4ce20421| gnu bnectrl+
+4ce20461| gnu bnetarl+
+4ce20821| gnu bclrl+ 7,eq,1
+4ce20c21| gnu bcctrl+ 7,eq,1
+4ce20c61| gnu bctarl+ 7,eq,1
+4ce21021| gnu bclrl+ 7,eq,2
+4ce21421| gnu bcctrl+ 7,eq,2
+4ce21461| gnu bctarl+ 7,eq,2
+40e20081| gnu bnel+ 0xc80
+40e20083| gnu bnela+ 0x80
+4ce30020| gnu bnslr+
+4ce30420| gnu bnsctr+
+4ce30460| gnu bnstar+
+4ce30820| gnu bclr+ 7,so,1
+4ce30c20| gnu bcctr+ 7,so,1
+4ce30c60| gnu bctar+ 7,so,1
+4ce31020| gnu bclr+ 7,so,2
+4ce31420| gnu bcctr+ 7,so,2
+4ce31460| gnu bctar+ 7,so,2
+40e30080| gnu bns+ 0xcac
+40e30082| gnu bnsa+ 0x80
+4ce30021| gnu bnslrl+
+4ce30421| gnu bnsctrl+
+4ce30461| gnu bnstarl+
+4ce30821| gnu bclrl+ 7,so,1
+4ce30c21| gnu bcctrl+ 7,so,1
+4ce30c61| gnu bctarl+ 7,so,1
+4ce31021| gnu bclrl+ 7,so,2
+4ce31421| gnu bcctrl+ 7,so,2
+4ce31461| gnu bctarl+ 7,so,2
+40e30081| gnu bnsl+ 0xcd8
+40e30083| gnu bnsla+ 0x80
+4ce40020| gnu bgelr+ cr1
+4ce40420| gnu bgectr+ cr1
+4ce40460| gnu bgetar+ cr1
+4ce40820| gnu bclr+ 7,4*cr1+lt,1
+4ce40c20| gnu bcctr+ 7,4*cr1+lt,1
+4ce40c60| gnu bctar+ 7,4*cr1+lt,1
+4ce41020| gnu bclr+ 7,4*cr1+lt,2
+4ce41420| gnu bcctr+ 7,4*cr1+lt,2
+4ce41460| gnu bctar+ 7,4*cr1+lt,2
+40e40080| gnu bge+ cr1,0xd04
+40e40082| gnu bgea+ cr1,0x80
+4ce40021| gnu bgelrl+ cr1
+4ce40421| gnu bgectrl+ cr1
+4ce40461| gnu bgetarl+ cr1
+4ce40821| gnu bclrl+ 7,4*cr1+lt,1
+4ce40c21| gnu bcctrl+ 7,4*cr1+lt,1
+4ce40c61| gnu bctarl+ 7,4*cr1+lt,1
+4ce41021| gnu bclrl+ 7,4*cr1+lt,2
+4ce41421| gnu bcctrl+ 7,4*cr1+lt,2
+4ce41461| gnu bctarl+ 7,4*cr1+lt,2
+40e40081| gnu bgel+ cr1,0xd30
+40e40083| gnu bgela+ cr1,0x80
+4ce50020| gnu blelr+ cr1
+4ce50420| gnu blectr+ cr1
+4ce50460| gnu bletar+ cr1
+4ce50820| gnu bclr+ 7,4*cr1+gt,1
+4ce50c20| gnu bcctr+ 7,4*cr1+gt,1
+4ce50c60| gnu bctar+ 7,4*cr1+gt,1
+4ce51020| gnu bclr+ 7,4*cr1+gt,2
+4ce51420| gnu bcctr+ 7,4*cr1+gt,2
+4ce51460| gnu bctar+ 7,4*cr1+gt,2
+40e50080| gnu ble+ cr1,0xd5c
+40e50082| gnu blea+ cr1,0x80
+4ce50021| gnu blelrl+ cr1
+4ce50421| gnu blectrl+ cr1
+4ce50461| gnu bletarl+ cr1
+4ce50821| gnu bclrl+ 7,4*cr1+gt,1
+4ce50c21| gnu bcctrl+ 7,4*cr1+gt,1
+4ce50c61| gnu bctarl+ 7,4*cr1+gt,1
+4ce51021| gnu bclrl+ 7,4*cr1+gt,2
+4ce51421| gnu bcctrl+ 7,4*cr1+gt,2
+4ce51461| gnu bctarl+ 7,4*cr1+gt,2
+40e50081| gnu blel+ cr1,0xd88
+40e50083| gnu blela+ cr1,0x80
+4ce60020| gnu bnelr+ cr1
+4ce60420| gnu bnectr+ cr1
+4ce60460| gnu bnetar+ cr1
+4ce60820| gnu bclr+ 7,4*cr1+eq,1
+4ce60c20| gnu bcctr+ 7,4*cr1+eq,1
+4ce60c60| gnu bctar+ 7,4*cr1+eq,1
+4ce61020| gnu bclr+ 7,4*cr1+eq,2
+4ce61420| gnu bcctr+ 7,4*cr1+eq,2
+4ce61460| gnu bctar+ 7,4*cr1+eq,2
+40e60080| gnu bne+ cr1,0xdb4
+40e60082| gnu bnea+ cr1,0x80
+4ce60021| gnu bnelrl+ cr1
+4ce60421| gnu bnectrl+ cr1
+4ce60461| gnu bnetarl+ cr1
+4ce60821| gnu bclrl+ 7,4*cr1+eq,1
+4ce60c21| gnu bcctrl+ 7,4*cr1+eq,1
+4ce60c61| gnu bctarl+ 7,4*cr1+eq,1
+4ce61021| gnu bclrl+ 7,4*cr1+eq,2
+4ce61421| gnu bcctrl+ 7,4*cr1+eq,2
+4ce61461| gnu bctarl+ 7,4*cr1+eq,2
+40e60081| gnu bnel+ cr1,0xde0
+40e60083| gnu bnela+ cr1,0x80
+4ce70020| gnu bnslr+ cr1
+4ce70420| gnu bnsctr+ cr1
+4ce70460| gnu bnstar+ cr1
+4ce70820| gnu bclr+ 7,4*cr1+so,1
+4ce70c20| gnu bcctr+ 7,4*cr1+so,1
+4ce70c60| gnu bctar+ 7,4*cr1+so,1
+4ce71020| gnu bclr+ 7,4*cr1+so,2
+4ce71420| gnu bcctr+ 7,4*cr1+so,2
+4ce71460| gnu bctar+ 7,4*cr1+so,2
+40e70080| gnu bns+ cr1,0xe0c
+40e70082| gnu bnsa+ cr1,0x80
+4ce70021| gnu bnslrl+ cr1
+4ce70421| gnu bnsctrl+ cr1
+4ce70461| gnu bnstarl+ cr1
+4ce70821| gnu bclrl+ 7,4*cr1+so,1
+4ce70c21| gnu bcctrl+ 7,4*cr1+so,1
+4ce70c61| gnu bctarl+ 7,4*cr1+so,1
+4ce71021| gnu bclrl+ 7,4*cr1+so,2
+4ce71421| gnu bcctrl+ 7,4*cr1+so,2
+4ce71461| gnu bctarl+ 7,4*cr1+so,2
+40e70081| gnu bnsl+ cr1,0xe38
+40e70083| gnu bnsla+ cr1,0x80
+4d000020| gnu bdnztlr lt
+4d000420| gnu bcctr 8,lt
+4d000460| gnu bdnzttar lt
+4d000820| gnu bclr 8,lt,1
+4d000c20| gnu bcctr 8,lt,1
+4d000c60| gnu bctar 8,lt,1
+4d001020| gnu bclr 8,lt,2
+4d001420| gnu bcctr 8,lt,2
+4d001460| gnu bctar 8,lt,2
+41000080| gnu bdnzt lt,0xe64
+41000082| gnu bdnzta lt,0x80
+4d000021| gnu bdnztlrl lt
+4d000421| gnu bcctrl 8,lt
+4d000461| gnu bdnzttarl lt
+4d000821| gnu bclrl 8,lt,1
+4d000c21| gnu bcctrl 8,lt,1
+4d000c61| gnu bctarl 8,lt,1
+4d001021| gnu bclrl 8,lt,2
+4d001421| gnu bcctrl 8,lt,2
+4d001461| gnu bctarl 8,lt,2
+41000081| gnu bdnztl lt,0xe90
+41000083| gnu bdnztla lt,0x80
+4d010020| gnu bdnztlr gt
+4d010420| gnu bcctr 8,gt
+4d010460| gnu bdnzttar gt
+4d010820| gnu bclr 8,gt,1
+4d010c20| gnu bcctr 8,gt,1
+4d010c60| gnu bctar 8,gt,1
+4d011020| gnu bclr 8,gt,2
+4d011420| gnu bcctr 8,gt,2
+4d011460| gnu bctar 8,gt,2
+41010080| gnu bdnzt gt,0xebc
+41010082| gnu bdnzta gt,0x80
+4d010021| gnu bdnztlrl gt
+4d010421| gnu bcctrl 8,gt
+4d010461| gnu bdnzttarl gt
+4d010821| gnu bclrl 8,gt,1
+4d010c21| gnu bcctrl 8,gt,1
+4d010c61| gnu bctarl 8,gt,1
+4d011021| gnu bclrl 8,gt,2
+4d011421| gnu bcctrl 8,gt,2
+4d011461| gnu bctarl 8,gt,2
+41010081| gnu bdnztl gt,0xee8
+41010083| gnu bdnztla gt,0x80
+4d020020| gnu bdnztlr eq
+4d020420| gnu bcctr 8,eq
+4d020460| gnu bdnzttar eq
+4d020820| gnu bclr 8,eq,1
+4d020c20| gnu bcctr 8,eq,1
+4d020c60| gnu bctar 8,eq,1
+4d021020| gnu bclr 8,eq,2
+4d021420| gnu bcctr 8,eq,2
+4d021460| gnu bctar 8,eq,2
+41020080| gnu bdnzt eq,0xf14
+41020082| gnu bdnzta eq,0x80
+4d020021| gnu bdnztlrl eq
+4d020421| gnu bcctrl 8,eq
+4d020461| gnu bdnzttarl eq
+4d020821| gnu bclrl 8,eq,1
+4d020c21| gnu bcctrl 8,eq,1
+4d020c61| gnu bctarl 8,eq,1
+4d021021| gnu bclrl 8,eq,2
+4d021421| gnu bcctrl 8,eq,2
+4d021461| gnu bctarl 8,eq,2
+41020081| gnu bdnztl eq,0xf40
+41020083| gnu bdnztla eq,0x80
+4d030020| gnu bdnztlr so
+4d030420| gnu bcctr 8,so
+4d030460| gnu bdnzttar so
+4d030820| gnu bclr 8,so,1
+4d030c20| gnu bcctr 8,so,1
+4d030c60| gnu bctar 8,so,1
+4d031020| gnu bclr 8,so,2
+4d031420| gnu bcctr 8,so,2
+4d031460| gnu bctar 8,so,2
+41030080| gnu bdnzt so,0xf6c
+41030082| gnu bdnzta so,0x80
+4d030021| gnu bdnztlrl so
+4d030421| gnu bcctrl 8,so
+4d030461| gnu bdnzttarl so
+4d030821| gnu bclrl 8,so,1
+4d030c21| gnu bcctrl 8,so,1
+4d030c61| gnu bctarl 8,so,1
+4d031021| gnu bclrl 8,so,2
+4d031421| gnu bcctrl 8,so,2
+4d031461| gnu bctarl 8,so,2
+41030081| gnu bdnztl so,0xf98
+41030083| gnu bdnztla so,0x80
+4d040020| gnu bdnztlr 4*cr1+lt
+4d040420| gnu bcctr 8,4*cr1+lt
+4d040460| gnu bdnzttar 4*cr1+lt
+4d040820| gnu bclr 8,4*cr1+lt,1
+4d040c20| gnu bcctr 8,4*cr1+lt,1
+4d040c60| gnu bctar 8,4*cr1+lt,1
+4d041020| gnu bclr 8,4*cr1+lt,2
+4d041420| gnu bcctr 8,4*cr1+lt,2
+4d041460| gnu bctar 8,4*cr1+lt,2
+41040080| gnu bdnzt 4*cr1+lt,0xfc4
+41040082| gnu bdnzta 4*cr1+lt,0x80
+4d040021| gnu bdnztlrl 4*cr1+lt
+4d040421| gnu bcctrl 8,4*cr1+lt
+4d040461| gnu bdnzttarl 4*cr1+lt
+4d040821| gnu bclrl 8,4*cr1+lt,1
+4d040c21| gnu bcctrl 8,4*cr1+lt,1
+4d040c61| gnu bctarl 8,4*cr1+lt,1
+4d041021| gnu bclrl 8,4*cr1+lt,2
+4d041421| gnu bcctrl 8,4*cr1+lt,2
+4d041461| gnu bctarl 8,4*cr1+lt,2
+41040081| gnu bdnztl 4*cr1+lt,0xff0
+41040083| gnu bdnztla 4*cr1+lt,0x80
+4d050020| gnu bdnztlr 4*cr1+gt
+4d050420| gnu bcctr 8,4*cr1+gt
+4d050460| gnu bdnzttar 4*cr1+gt
+4d050820| gnu bclr 8,4*cr1+gt,1
+4d050c20| gnu bcctr 8,4*cr1+gt,1
+4d050c60| gnu bctar 8,4*cr1+gt,1
+4d051020| gnu bclr 8,4*cr1+gt,2
+4d051420| gnu bcctr 8,4*cr1+gt,2
+4d051460| gnu bctar 8,4*cr1+gt,2
+41050080| gnu bdnzt 4*cr1+gt,0x101c
+41050082| gnu bdnzta 4*cr1+gt,0x80
+4d050021| gnu bdnztlrl 4*cr1+gt
+4d050421| gnu bcctrl 8,4*cr1+gt
+4d050461| gnu bdnzttarl 4*cr1+gt
+4d050821| gnu bclrl 8,4*cr1+gt,1
+4d050c21| gnu bcctrl 8,4*cr1+gt,1
+4d050c61| gnu bctarl 8,4*cr1+gt,1
+4d051021| gnu bclrl 8,4*cr1+gt,2
+4d051421| gnu bcctrl 8,4*cr1+gt,2
+4d051461| gnu bctarl 8,4*cr1+gt,2
+41050081| gnu bdnztl 4*cr1+gt,0x1048
+41050083| gnu bdnztla 4*cr1+gt,0x80
+4d060020| gnu bdnztlr 4*cr1+eq
+4d060420| gnu bcctr 8,4*cr1+eq
+4d060460| gnu bdnzttar 4*cr1+eq
+4d060820| gnu bclr 8,4*cr1+eq,1
+4d060c20| gnu bcctr 8,4*cr1+eq,1
+4d060c60| gnu bctar 8,4*cr1+eq,1
+4d061020| gnu bclr 8,4*cr1+eq,2
+4d061420| gnu bcctr 8,4*cr1+eq,2
+4d061460| gnu bctar 8,4*cr1+eq,2
+41060080| gnu bdnzt 4*cr1+eq,0x1074
+41060082| gnu bdnzta 4*cr1+eq,0x80
+4d060021| gnu bdnztlrl 4*cr1+eq
+4d060421| gnu bcctrl 8,4*cr1+eq
+4d060461| gnu bdnzttarl 4*cr1+eq
+4d060821| gnu bclrl 8,4*cr1+eq,1
+4d060c21| gnu bcctrl 8,4*cr1+eq,1
+4d060c61| gnu bctarl 8,4*cr1+eq,1
+4d061021| gnu bclrl 8,4*cr1+eq,2
+4d061421| gnu bcctrl 8,4*cr1+eq,2
+4d061461| gnu bctarl 8,4*cr1+eq,2
+41060081| gnu bdnztl 4*cr1+eq,0x10a0
+41060083| gnu bdnztla 4*cr1+eq,0x80
+4d070020| gnu bdnztlr 4*cr1+so
+4d070420| gnu bcctr 8,4*cr1+so
+4d070460| gnu bdnzttar 4*cr1+so
+4d070820| gnu bclr 8,4*cr1+so,1
+4d070c20| gnu bcctr 8,4*cr1+so,1
+4d070c60| gnu bctar 8,4*cr1+so,1
+4d071020| gnu bclr 8,4*cr1+so,2
+4d071420| gnu bcctr 8,4*cr1+so,2
+4d071460| gnu bctar 8,4*cr1+so,2
+41070080| gnu bdnzt 4*cr1+so,0x10cc
+41070082| gnu bdnzta 4*cr1+so,0x80
+4d070021| gnu bdnztlrl 4*cr1+so
+4d070421| gnu bcctrl 8,4*cr1+so
+4d070461| gnu bdnzttarl 4*cr1+so
+4d070821| gnu bclrl 8,4*cr1+so,1
+4d070c21| gnu bcctrl 8,4*cr1+so,1
+4d070c61| gnu bctarl 8,4*cr1+so,1
+4d071021| gnu bclrl 8,4*cr1+so,2
+4d071421| gnu bcctrl 8,4*cr1+so,2
+4d071461| gnu bctarl 8,4*cr1+so,2
+41070081| gnu bdnztl 4*cr1+so,0x10f8
+41070083| gnu bdnztla 4*cr1+so,0x80
+4d400020| gnu bdztlr lt
+4d400420| gnu bcctr 10,lt
+4d400460| gnu bdzttar lt
+4d400820| gnu bclr 10,lt,1
+4d400c20| gnu bcctr 10,lt,1
+4d400c60| gnu bctar 10,lt,1
+4d401020| gnu bclr 10,lt,2
+4d401420| gnu bcctr 10,lt,2
+4d401460| gnu bctar 10,lt,2
+41400080| gnu bdzt lt,0x1124
+41400082| gnu bdzta lt,0x80
+4d400021| gnu bdztlrl lt
+4d400421| gnu bcctrl 10,lt
+4d400461| gnu bdzttarl lt
+4d400821| gnu bclrl 10,lt,1
+4d400c21| gnu bcctrl 10,lt,1
+4d400c61| gnu bctarl 10,lt,1
+4d401021| gnu bclrl 10,lt,2
+4d401421| gnu bcctrl 10,lt,2
+4d401461| gnu bctarl 10,lt,2
+41400081| gnu bdztl lt,0x1150
+41400083| gnu bdztla lt,0x80
+4d410020| gnu bdztlr gt
+4d410420| gnu bcctr 10,gt
+4d410460| gnu bdzttar gt
+4d410820| gnu bclr 10,gt,1
+4d410c20| gnu bcctr 10,gt,1
+4d410c60| gnu bctar 10,gt,1
+4d411020| gnu bclr 10,gt,2
+4d411420| gnu bcctr 10,gt,2
+4d411460| gnu bctar 10,gt,2
+41410080| gnu bdzt gt,0x117c
+41410082| gnu bdzta gt,0x80
+4d410021| gnu bdztlrl gt
+4d410421| gnu bcctrl 10,gt
+4d410461| gnu bdzttarl gt
+4d410821| gnu bclrl 10,gt,1
+4d410c21| gnu bcctrl 10,gt,1
+4d410c61| gnu bctarl 10,gt,1
+4d411021| gnu bclrl 10,gt,2
+4d411421| gnu bcctrl 10,gt,2
+4d411461| gnu bctarl 10,gt,2
+41410081| gnu bdztl gt,0x11a8
+41410083| gnu bdztla gt,0x80
+4d420020| gnu bdztlr eq
+4d420420| gnu bcctr 10,eq
+4d420460| gnu bdzttar eq
+4d420820| gnu bclr 10,eq,1
+4d420c20| gnu bcctr 10,eq,1
+4d420c60| gnu bctar 10,eq,1
+4d421020| gnu bclr 10,eq,2
+4d421420| gnu bcctr 10,eq,2
+4d421460| gnu bctar 10,eq,2
+41420080| gnu bdzt eq,0x11d4
+41420082| gnu bdzta eq,0x80
+4d420021| gnu bdztlrl eq
+4d420421| gnu bcctrl 10,eq
+4d420461| gnu bdzttarl eq
+4d420821| gnu bclrl 10,eq,1
+4d420c21| gnu bcctrl 10,eq,1
+4d420c61| gnu bctarl 10,eq,1
+4d421021| gnu bclrl 10,eq,2
+4d421421| gnu bcctrl 10,eq,2
+4d421461| gnu bctarl 10,eq,2
+41420081| gnu bdztl eq,0x1200
+41420083| gnu bdztla eq,0x80
+4d430020| gnu bdztlr so
+4d430420| gnu bcctr 10,so
+4d430460| gnu bdzttar so
+4d430820| gnu bclr 10,so,1
+4d430c20| gnu bcctr 10,so,1
+4d430c60| gnu bctar 10,so,1
+4d431020| gnu bclr 10,so,2
+4d431420| gnu bcctr 10,so,2
+4d431460| gnu bctar 10,so,2
+41430080| gnu bdzt so,0x122c
+41430082| gnu bdzta so,0x80
+4d430021| gnu bdztlrl so
+4d430421| gnu bcctrl 10,so
+4d430461| gnu bdzttarl so
+4d430821| gnu bclrl 10,so,1
+4d430c21| gnu bcctrl 10,so,1
+4d430c61| gnu bctarl 10,so,1
+4d431021| gnu bclrl 10,so,2
+4d431421| gnu bcctrl 10,so,2
+4d431461| gnu bctarl 10,so,2
+41430081| gnu bdztl so,0x1258
+41430083| gnu bdztla so,0x80
+4d440020| gnu bdztlr 4*cr1+lt
+4d440420| gnu bcctr 10,4*cr1+lt
+4d440460| gnu bdzttar 4*cr1+lt
+4d440820| gnu bclr 10,4*cr1+lt,1
+4d440c20| gnu bcctr 10,4*cr1+lt,1
+4d440c60| gnu bctar 10,4*cr1+lt,1
+4d441020| gnu bclr 10,4*cr1+lt,2
+4d441420| gnu bcctr 10,4*cr1+lt,2
+4d441460| gnu bctar 10,4*cr1+lt,2
+41440080| gnu bdzt 4*cr1+lt,0x1284
+41440082| gnu bdzta 4*cr1+lt,0x80
+4d440021| gnu bdztlrl 4*cr1+lt
+4d440421| gnu bcctrl 10,4*cr1+lt
+4d440461| gnu bdzttarl 4*cr1+lt
+4d440821| gnu bclrl 10,4*cr1+lt,1
+4d440c21| gnu bcctrl 10,4*cr1+lt,1
+4d440c61| gnu bctarl 10,4*cr1+lt,1
+4d441021| gnu bclrl 10,4*cr1+lt,2
+4d441421| gnu bcctrl 10,4*cr1+lt,2
+4d441461| gnu bctarl 10,4*cr1+lt,2
+41440081| gnu bdztl 4*cr1+lt,0x12b0
+41440083| gnu bdztla 4*cr1+lt,0x80
+4d450020| gnu bdztlr 4*cr1+gt
+4d450420| gnu bcctr 10,4*cr1+gt
+4d450460| gnu bdzttar 4*cr1+gt
+4d450820| gnu bclr 10,4*cr1+gt,1
+4d450c20| gnu bcctr 10,4*cr1+gt,1
+4d450c60| gnu bctar 10,4*cr1+gt,1
+4d451020| gnu bclr 10,4*cr1+gt,2
+4d451420| gnu bcctr 10,4*cr1+gt,2
+4d451460| gnu bctar 10,4*cr1+gt,2
+41450080| gnu bdzt 4*cr1+gt,0x12dc
+41450082| gnu bdzta 4*cr1+gt,0x80
+4d450021| gnu bdztlrl 4*cr1+gt
+4d450421| gnu bcctrl 10,4*cr1+gt
+4d450461| gnu bdzttarl 4*cr1+gt
+4d450821| gnu bclrl 10,4*cr1+gt,1
+4d450c21| gnu bcctrl 10,4*cr1+gt,1
+4d450c61| gnu bctarl 10,4*cr1+gt,1
+4d451021| gnu bclrl 10,4*cr1+gt,2
+4d451421| gnu bcctrl 10,4*cr1+gt,2
+4d451461| gnu bctarl 10,4*cr1+gt,2
+41450081| gnu bdztl 4*cr1+gt,0x1308
+41450083| gnu bdztla 4*cr1+gt,0x80
+4d460020| gnu bdztlr 4*cr1+eq
+4d460420| gnu bcctr 10,4*cr1+eq
+4d460460| gnu bdzttar 4*cr1+eq
+4d460820| gnu bclr 10,4*cr1+eq,1
+4d460c20| gnu bcctr 10,4*cr1+eq,1
+4d460c60| gnu bctar 10,4*cr1+eq,1
+4d461020| gnu bclr 10,4*cr1+eq,2
+4d461420| gnu bcctr 10,4*cr1+eq,2
+4d461460| gnu bctar 10,4*cr1+eq,2
+41460080| gnu bdzt 4*cr1+eq,0x1334
+41460082| gnu bdzta 4*cr1+eq,0x80
+4d460021| gnu bdztlrl 4*cr1+eq
+4d460421| gnu bcctrl 10,4*cr1+eq
+4d460461| gnu bdzttarl 4*cr1+eq
+4d460821| gnu bclrl 10,4*cr1+eq,1
+4d460c21| gnu bcctrl 10,4*cr1+eq,1
+4d460c61| gnu bctarl 10,4*cr1+eq,1
+4d461021| gnu bclrl 10,4*cr1+eq,2
+4d461421| gnu bcctrl 10,4*cr1+eq,2
+4d461461| gnu bctarl 10,4*cr1+eq,2
+41460081| gnu bdztl 4*cr1+eq,0x1360
+41460083| gnu bdztla 4*cr1+eq,0x80
+4d470020| gnu bdztlr 4*cr1+so
+4d470420| gnu bcctr 10,4*cr1+so
+4d470460| gnu bdzttar 4*cr1+so
+4d470820| gnu bclr 10,4*cr1+so,1
+4d470c20| gnu bcctr 10,4*cr1+so,1
+4d470c60| gnu bctar 10,4*cr1+so,1
+4d471020| gnu bclr 10,4*cr1+so,2
+4d471420| gnu bcctr 10,4*cr1+so,2
+4d471460| gnu bctar 10,4*cr1+so,2
+41470080| gnu bdzt 4*cr1+so,0x138c
+41470082| gnu bdzta 4*cr1+so,0x80
+4d470021| gnu bdztlrl 4*cr1+so
+4d470421| gnu bcctrl 10,4*cr1+so
+4d470461| gnu bdzttarl 4*cr1+so
+4d470821| gnu bclrl 10,4*cr1+so,1
+4d470c21| gnu bcctrl 10,4*cr1+so,1
+4d470c61| gnu bctarl 10,4*cr1+so,1
+4d471021| gnu bclrl 10,4*cr1+so,2
+4d471421| gnu bcctrl 10,4*cr1+so,2
+4d471461| gnu bctarl 10,4*cr1+so,2
+41470081| gnu bdztl 4*cr1+so,0x13b8
+41470083| gnu bdztla 4*cr1+so,0x80
+4d800020| gnu bltlr
+4d800420| gnu bltctr
+4d800460| gnu blttar
+4d800820| gnu bclr 12,lt,1
+4d800c20| gnu bcctr 12,lt,1
+4d800c60| gnu bctar 12,lt,1
+4d801020| gnu bclr 12,lt,2
+4d801420| gnu bcctr 12,lt,2
+4d801460| gnu bctar 12,lt,2
+41800080| gnu blt 0x13e4
+41800082| gnu blta 0x80
+4d800021| gnu bltlrl
+4d800421| gnu bltctrl
+4d800461| gnu blttarl
+4d800821| gnu bclrl 12,lt,1
+4d800c21| gnu bcctrl 12,lt,1
+4d800c61| gnu bctarl 12,lt,1
+4d801021| gnu bclrl 12,lt,2
+4d801421| gnu bcctrl 12,lt,2
+4d801461| gnu bctarl 12,lt,2
+41800081| gnu bltl 0x1410
+41800083| gnu bltla 0x80
+4d810020| gnu bgtlr
+4d810420| gnu bgtctr
+4d810460| gnu bgttar
+4d810820| gnu bclr 12,gt,1
+4d810c20| gnu bcctr 12,gt,1
+4d810c60| gnu bctar 12,gt,1
+4d811020| gnu bclr 12,gt,2
+4d811420| gnu bcctr 12,gt,2
+4d811460| gnu bctar 12,gt,2
+41810080| gnu bgt 0x143c
+41810082| gnu bgta 0x80
+4d810021| gnu bgtlrl
+4d810421| gnu bgtctrl
+4d810461| gnu bgttarl
+4d810821| gnu bclrl 12,gt,1
+4d810c21| gnu bcctrl 12,gt,1
+4d810c61| gnu bctarl 12,gt,1
+4d811021| gnu bclrl 12,gt,2
+4d811421| gnu bcctrl 12,gt,2
+4d811461| gnu bctarl 12,gt,2
+41810081| gnu bgtl 0x1468
+41810083| gnu bgtla 0x80
+4d820020| gnu beqlr
+4d820420| gnu beqctr
+4d820460| gnu beqtar
+4d820820| gnu bclr 12,eq,1
+4d820c20| gnu bcctr 12,eq,1
+4d820c60| gnu bctar 12,eq,1
+4d821020| gnu bclr 12,eq,2
+4d821420| gnu bcctr 12,eq,2
+4d821460| gnu bctar 12,eq,2
+41820080| gnu beq 0x1494
+41820082| gnu beqa 0x80
+4d820021| gnu beqlrl
+4d820421| gnu beqctrl
+4d820461| gnu beqtarl
+4d820821| gnu bclrl 12,eq,1
+4d820c21| gnu bcctrl 12,eq,1
+4d820c61| gnu bctarl 12,eq,1
+4d821021| gnu bclrl 12,eq,2
+4d821421| gnu bcctrl 12,eq,2
+4d821461| gnu bctarl 12,eq,2
+41820081| gnu beql 0x14c0
+41820083| gnu beqla 0x80
+4d830020| gnu bsolr
+4d830420| gnu bsoctr
+4d830460| gnu bsotar
+4d830820| gnu bclr 12,so,1
+4d830c20| gnu bcctr 12,so,1
+4d830c60| gnu bctar 12,so,1
+4d831020| gnu bclr 12,so,2
+4d831420| gnu bcctr 12,so,2
+4d831460| gnu bctar 12,so,2
+41830080| gnu bso 0x14ec
+41830082| gnu bsoa 0x80
+4d830021| gnu bsolrl
+4d830421| gnu bsoctrl
+4d830461| gnu bsotarl
+4d830821| gnu bclrl 12,so,1
+4d830c21| gnu bcctrl 12,so,1
+4d830c61| gnu bctarl 12,so,1
+4d831021| gnu bclrl 12,so,2
+4d831421| gnu bcctrl 12,so,2
+4d831461| gnu bctarl 12,so,2
+41830081| gnu bsol 0x1518
+41830083| gnu bsola 0x80
+4d840020| gnu bltlr cr1
+4d840420| gnu bltctr cr1
+4d840460| gnu blttar cr1
+4d840820| gnu bclr 12,4*cr1+lt,1
+4d840c20| gnu bcctr 12,4*cr1+lt,1
+4d840c60| gnu bctar 12,4*cr1+lt,1
+4d841020| gnu bclr 12,4*cr1+lt,2
+4d841420| gnu bcctr 12,4*cr1+lt,2
+4d841460| gnu bctar 12,4*cr1+lt,2
+41840080| gnu blt cr1,0x1544
+41840082| gnu blta cr1,0x80
+4d840021| gnu bltlrl cr1
+4d840421| gnu bltctrl cr1
+4d840461| gnu blttarl cr1
+4d840821| gnu bclrl 12,4*cr1+lt,1
+4d840c21| gnu bcctrl 12,4*cr1+lt,1
+4d840c61| gnu bctarl 12,4*cr1+lt,1
+4d841021| gnu bclrl 12,4*cr1+lt,2
+4d841421| gnu bcctrl 12,4*cr1+lt,2
+4d841461| gnu bctarl 12,4*cr1+lt,2
+41840081| gnu bltl cr1,0x1570
+41840083| gnu bltla cr1,0x80
+4d850020| gnu bgtlr cr1
+4d850420| gnu bgtctr cr1
+4d850460| gnu bgttar cr1
+4d850820| gnu bclr 12,4*cr1+gt,1
+4d850c20| gnu bcctr 12,4*cr1+gt,1
+4d850c60| gnu bctar 12,4*cr1+gt,1
+4d851020| gnu bclr 12,4*cr1+gt,2
+4d851420| gnu bcctr 12,4*cr1+gt,2
+4d851460| gnu bctar 12,4*cr1+gt,2
+41850080| gnu bgt cr1,0x159c
+41850082| gnu bgta cr1,0x80
+4d850021| gnu bgtlrl cr1
+4d850421| gnu bgtctrl cr1
+4d850461| gnu bgttarl cr1
+4d850821| gnu bclrl 12,4*cr1+gt,1
+4d850c21| gnu bcctrl 12,4*cr1+gt,1
+4d850c61| gnu bctarl 12,4*cr1+gt,1
+4d851021| gnu bclrl 12,4*cr1+gt,2
+4d851421| gnu bcctrl 12,4*cr1+gt,2
+4d851461| gnu bctarl 12,4*cr1+gt,2
+41850081| gnu bgtl cr1,0x15c8
+41850083| gnu bgtla cr1,0x80
+4d860020| gnu beqlr cr1
+4d860420| gnu beqctr cr1
+4d860460| gnu beqtar cr1
+4d860820| gnu bclr 12,4*cr1+eq,1
+4d860c20| gnu bcctr 12,4*cr1+eq,1
+4d860c60| gnu bctar 12,4*cr1+eq,1
+4d861020| gnu bclr 12,4*cr1+eq,2
+4d861420| gnu bcctr 12,4*cr1+eq,2
+4d861460| gnu bctar 12,4*cr1+eq,2
+41860080| gnu beq cr1,0x15f4
+41860082| gnu beqa cr1,0x80
+4d860021| gnu beqlrl cr1
+4d860421| gnu beqctrl cr1
+4d860461| gnu beqtarl cr1
+4d860821| gnu bclrl 12,4*cr1+eq,1
+4d860c21| gnu bcctrl 12,4*cr1+eq,1
+4d860c61| gnu bctarl 12,4*cr1+eq,1
+4d861021| gnu bclrl 12,4*cr1+eq,2
+4d861421| gnu bcctrl 12,4*cr1+eq,2
+4d861461| gnu bctarl 12,4*cr1+eq,2
+41860081| gnu beql cr1,0x1620
+41860083| gnu beqla cr1,0x80
+4d870020| gnu bsolr cr1
+4d870420| gnu bsoctr cr1
+4d870460| gnu bsotar cr1
+4d870820| gnu bclr 12,4*cr1+so,1
+4d870c20| gnu bcctr 12,4*cr1+so,1
+4d870c60| gnu bctar 12,4*cr1+so,1
+4d871020| gnu bclr 12,4*cr1+so,2
+4d871420| gnu bcctr 12,4*cr1+so,2
+4d871460| gnu bctar 12,4*cr1+so,2
+41870080| gnu bso cr1,0x164c
+41870082| gnu bsoa cr1,0x80
+4d870021| gnu bsolrl cr1
+4d870421| gnu bsoctrl cr1
+4d870461| gnu bsotarl cr1
+4d870821| gnu bclrl 12,4*cr1+so,1
+4d870c21| gnu bcctrl 12,4*cr1+so,1
+4d870c61| gnu bctarl 12,4*cr1+so,1
+4d871021| gnu bclrl 12,4*cr1+so,2
+4d871421| gnu bcctrl 12,4*cr1+so,2
+4d871461| gnu bctarl 12,4*cr1+so,2
+41870081| gnu bsol cr1,0x1678
+41870083| gnu bsola cr1,0x80
+4dc00020| gnu bltlr-
+4dc00420| gnu bltctr-
+4dc00460| gnu blttar-
+4dc00820| gnu bclr- 14,lt,1
+4dc00c20| gnu bcctr- 14,lt,1
+4dc00c60| gnu bctar- 14,lt,1
+4dc01020| gnu bclr- 14,lt,2
+4dc01420| gnu bcctr- 14,lt,2
+4dc01460| gnu bctar- 14,lt,2
+41c00080| gnu blt- 0x16a4
+41c00082| gnu blta- 0x80
+4dc00021| gnu bltlrl-
+4dc00421| gnu bltctrl-
+4dc00461| gnu blttarl-
+4dc00821| gnu bclrl- 14,lt,1
+4dc00c21| gnu bcctrl- 14,lt,1
+4dc00c61| gnu bctarl- 14,lt,1
+4dc01021| gnu bclrl- 14,lt,2
+4dc01421| gnu bcctrl- 14,lt,2
+4dc01461| gnu bctarl- 14,lt,2
+41c00081| gnu bltl- 0x16d0
+41c00083| gnu bltla- 0x80
+4dc10020| gnu bgtlr-
+4dc10420| gnu bgtctr-
+4dc10460| gnu bgttar-
+4dc10820| gnu bclr- 14,gt,1
+4dc10c20| gnu bcctr- 14,gt,1
+4dc10c60| gnu bctar- 14,gt,1
+4dc11020| gnu bclr- 14,gt,2
+4dc11420| gnu bcctr- 14,gt,2
+4dc11460| gnu bctar- 14,gt,2
+41c10080| gnu bgt- 0x16fc
+41c10082| gnu bgta- 0x80
+4dc10021| gnu bgtlrl-
+4dc10421| gnu bgtctrl-
+4dc10461| gnu bgttarl-
+4dc10821| gnu bclrl- 14,gt,1
+4dc10c21| gnu bcctrl- 14,gt,1
+4dc10c61| gnu bctarl- 14,gt,1
+4dc11021| gnu bclrl- 14,gt,2
+4dc11421| gnu bcctrl- 14,gt,2
+4dc11461| gnu bctarl- 14,gt,2
+41c10081| gnu bgtl- 0x1728
+41c10083| gnu bgtla- 0x80
+4dc20020| gnu beqlr-
+4dc20420| gnu beqctr-
+4dc20460| gnu beqtar-
+4dc20820| gnu bclr- 14,eq,1
+4dc20c20| gnu bcctr- 14,eq,1
+4dc20c60| gnu bctar- 14,eq,1
+4dc21020| gnu bclr- 14,eq,2
+4dc21420| gnu bcctr- 14,eq,2
+4dc21460| gnu bctar- 14,eq,2
+41c20080| gnu beq- 0x1754
+41c20082| gnu beqa- 0x80
+4dc20021| gnu beqlrl-
+4dc20421| gnu beqctrl-
+4dc20461| gnu beqtarl-
+4dc20821| gnu bclrl- 14,eq,1
+4dc20c21| gnu bcctrl- 14,eq,1
+4dc20c61| gnu bctarl- 14,eq,1
+4dc21021| gnu bclrl- 14,eq,2
+4dc21421| gnu bcctrl- 14,eq,2
+4dc21461| gnu bctarl- 14,eq,2
+41c20081| gnu beql- 0x1780
+41c20083| gnu beqla- 0x80
+4dc30020| gnu bsolr-
+4dc30420| gnu bsoctr-
+4dc30460| gnu bsotar-
+4dc30820| gnu bclr- 14,so,1
+4dc30c20| gnu bcctr- 14,so,1
+4dc30c60| gnu bctar- 14,so,1
+4dc31020| gnu bclr- 14,so,2
+4dc31420| gnu bcctr- 14,so,2
+4dc31460| gnu bctar- 14,so,2
+41c30080| gnu bso- 0x17ac
+41c30082| gnu bsoa- 0x80
+4dc30021| gnu bsolrl-
+4dc30421| gnu bsoctrl-
+4dc30461| gnu bsotarl-
+4dc30821| gnu bclrl- 14,so,1
+4dc30c21| gnu bcctrl- 14,so,1
+4dc30c61| gnu bctarl- 14,so,1
+4dc31021| gnu bclrl- 14,so,2
+4dc31421| gnu bcctrl- 14,so,2
+4dc31461| gnu bctarl- 14,so,2
+41c30081| gnu bsol- 0x17d8
+41c30083| gnu bsola- 0x80
+4dc40020| gnu bltlr- cr1
+4dc40420| gnu bltctr- cr1
+4dc40460| gnu blttar- cr1
+4dc40820| gnu bclr- 14,4*cr1+lt,1
+4dc40c20| gnu bcctr- 14,4*cr1+lt,1
+4dc40c60| gnu bctar- 14,4*cr1+lt,1
+4dc41020| gnu bclr- 14,4*cr1+lt,2
+4dc41420| gnu bcctr- 14,4*cr1+lt,2
+4dc41460| gnu bctar- 14,4*cr1+lt,2
+41c40080| gnu blt- cr1,0x1804
+41c40082| gnu blta- cr1,0x80
+4dc40021| gnu bltlrl- cr1
+4dc40421| gnu bltctrl- cr1
+4dc40461| gnu blttarl- cr1
+4dc40821| gnu bclrl- 14,4*cr1+lt,1
+4dc40c21| gnu bcctrl- 14,4*cr1+lt,1
+4dc40c61| gnu bctarl- 14,4*cr1+lt,1
+4dc41021| gnu bclrl- 14,4*cr1+lt,2
+4dc41421| gnu bcctrl- 14,4*cr1+lt,2
+4dc41461| gnu bctarl- 14,4*cr1+lt,2
+41c40081| gnu bltl- cr1,0x1830
+41c40083| gnu bltla- cr1,0x80
+4dc50020| gnu bgtlr- cr1
+4dc50420| gnu bgtctr- cr1
+4dc50460| gnu bgttar- cr1
+4dc50820| gnu bclr- 14,4*cr1+gt,1
+4dc50c20| gnu bcctr- 14,4*cr1+gt,1
+4dc50c60| gnu bctar- 14,4*cr1+gt,1
+4dc51020| gnu bclr- 14,4*cr1+gt,2
+4dc51420| gnu bcctr- 14,4*cr1+gt,2
+4dc51460| gnu bctar- 14,4*cr1+gt,2
+41c50080| gnu bgt- cr1,0x185c
+41c50082| gnu bgta- cr1,0x80
+4dc50021| gnu bgtlrl- cr1
+4dc50421| gnu bgtctrl- cr1
+4dc50461| gnu bgttarl- cr1
+4dc50821| gnu bclrl- 14,4*cr1+gt,1
+4dc50c21| gnu bcctrl- 14,4*cr1+gt,1
+4dc50c61| gnu bctarl- 14,4*cr1+gt,1
+4dc51021| gnu bclrl- 14,4*cr1+gt,2
+4dc51421| gnu bcctrl- 14,4*cr1+gt,2
+4dc51461| gnu bctarl- 14,4*cr1+gt,2
+41c50081| gnu bgtl- cr1,0x1888
+41c50083| gnu bgtla- cr1,0x80
+4dc60020| gnu beqlr- cr1
+4dc60420| gnu beqctr- cr1
+4dc60460| gnu beqtar- cr1
+4dc60820| gnu bclr- 14,4*cr1+eq,1
+4dc60c20| gnu bcctr- 14,4*cr1+eq,1
+4dc60c60| gnu bctar- 14,4*cr1+eq,1
+4dc61020| gnu bclr- 14,4*cr1+eq,2
+4dc61420| gnu bcctr- 14,4*cr1+eq,2
+4dc61460| gnu bctar- 14,4*cr1+eq,2
+41c60080| gnu beq- cr1,0x18b4
+41c60082| gnu beqa- cr1,0x80
+4dc60021| gnu beqlrl- cr1
+4dc60421| gnu beqctrl- cr1
+4dc60461| gnu beqtarl- cr1
+4dc60821| gnu bclrl- 14,4*cr1+eq,1
+4dc60c21| gnu bcctrl- 14,4*cr1+eq,1
+4dc60c61| gnu bctarl- 14,4*cr1+eq,1
+4dc61021| gnu bclrl- 14,4*cr1+eq,2
+4dc61421| gnu bcctrl- 14,4*cr1+eq,2
+4dc61461| gnu bctarl- 14,4*cr1+eq,2
+41c60081| gnu beql- cr1,0x18e0
+41c60083| gnu beqla- cr1,0x80
+4dc70020| gnu bsolr- cr1
+4dc70420| gnu bsoctr- cr1
+4dc70460| gnu bsotar- cr1
+4dc70820| gnu bclr- 14,4*cr1+so,1
+4dc70c20| gnu bcctr- 14,4*cr1+so,1
+4dc70c60| gnu bctar- 14,4*cr1+so,1
+4dc71020| gnu bclr- 14,4*cr1+so,2
+4dc71420| gnu bcctr- 14,4*cr1+so,2
+4dc71460| gnu bctar- 14,4*cr1+so,2
+41c70080| gnu bso- cr1,0x190c
+41c70082| gnu bsoa- cr1,0x80
+4dc70021| gnu bsolrl- cr1
+4dc70421| gnu bsoctrl- cr1
+4dc70461| gnu bsotarl- cr1
+4dc70821| gnu bclrl- 14,4*cr1+so,1
+4dc70c21| gnu bcctrl- 14,4*cr1+so,1
+4dc70c61| gnu bctarl- 14,4*cr1+so,1
+4dc71021| gnu bclrl- 14,4*cr1+so,2
+4dc71421| gnu bcctrl- 14,4*cr1+so,2
+4dc71461| gnu bctarl- 14,4*cr1+so,2
+41c70081| gnu bsol- cr1,0x1938
+41c70083| gnu bsola- cr1,0x80
+4de00020| gnu bltlr+
+4de00420| gnu bltctr+
+4de00460| gnu blttar+
+4de00820| gnu bclr+ 15,lt,1
+4de00c20| gnu bcctr+ 15,lt,1
+4de00c60| gnu bctar+ 15,lt,1
+4de01020| gnu bclr+ 15,lt,2
+4de01420| gnu bcctr+ 15,lt,2
+4de01460| gnu bctar+ 15,lt,2
+41e00080| gnu blt+ 0x1964
+41e00082| gnu blta+ 0x80
+4de00021| gnu bltlrl+
+4de00421| gnu bltctrl+
+4de00461| gnu blttarl+
+4de00821| gnu bclrl+ 15,lt,1
+4de00c21| gnu bcctrl+ 15,lt,1
+4de00c61| gnu bctarl+ 15,lt,1
+4de01021| gnu bclrl+ 15,lt,2
+4de01421| gnu bcctrl+ 15,lt,2
+4de01461| gnu bctarl+ 15,lt,2
+41e00081| gnu bltl+ 0x1990
+41e00083| gnu bltla+ 0x80
+4de10020| gnu bgtlr+
+4de10420| gnu bgtctr+
+4de10460| gnu bgttar+
+4de10820| gnu bclr+ 15,gt,1
+4de10c20| gnu bcctr+ 15,gt,1
+4de10c60| gnu bctar+ 15,gt,1
+4de11020| gnu bclr+ 15,gt,2
+4de11420| gnu bcctr+ 15,gt,2
+4de11460| gnu bctar+ 15,gt,2
+41e10080| gnu bgt+ 0x19bc
+41e10082| gnu bgta+ 0x80
+4de10021| gnu bgtlrl+
+4de10421| gnu bgtctrl+
+4de10461| gnu bgttarl+
+4de10821| gnu bclrl+ 15,gt,1
+4de10c21| gnu bcctrl+ 15,gt,1
+4de10c61| gnu bctarl+ 15,gt,1
+4de11021| gnu bclrl+ 15,gt,2
+4de11421| gnu bcctrl+ 15,gt,2
+4de11461| gnu bctarl+ 15,gt,2
+41e10081| gnu bgtl+ 0x19e8
+41e10083| gnu bgtla+ 0x80
+4de20020| gnu beqlr+
+4de20420| gnu beqctr+
+4de20460| gnu beqtar+
+4de20820| gnu bclr+ 15,eq,1
+4de20c20| gnu bcctr+ 15,eq,1
+4de20c60| gnu bctar+ 15,eq,1
+4de21020| gnu bclr+ 15,eq,2
+4de21420| gnu bcctr+ 15,eq,2
+4de21460| gnu bctar+ 15,eq,2
+41e20080| gnu beq+ 0x1a14
+41e20082| gnu beqa+ 0x80
+4de20021| gnu beqlrl+
+4de20421| gnu beqctrl+
+4de20461| gnu beqtarl+
+4de20821| gnu bclrl+ 15,eq,1
+4de20c21| gnu bcctrl+ 15,eq,1
+4de20c61| gnu bctarl+ 15,eq,1
+4de21021| gnu bclrl+ 15,eq,2
+4de21421| gnu bcctrl+ 15,eq,2
+4de21461| gnu bctarl+ 15,eq,2
+41e20081| gnu beql+ 0x1a40
+41e20083| gnu beqla+ 0x80
+4de30020| gnu bsolr+
+4de30420| gnu bsoctr+
+4de30460| gnu bsotar+
+4de30820| gnu bclr+ 15,so,1
+4de30c20| gnu bcctr+ 15,so,1
+4de30c60| gnu bctar+ 15,so,1
+4de31020| gnu bclr+ 15,so,2
+4de31420| gnu bcctr+ 15,so,2
+4de31460| gnu bctar+ 15,so,2
+41e30080| gnu bso+ 0x1a6c
+41e30082| gnu bsoa+ 0x80
+4de30021| gnu bsolrl+
+4de30421| gnu bsoctrl+
+4de30461| gnu bsotarl+
+4de30821| gnu bclrl+ 15,so,1
+4de30c21| gnu bcctrl+ 15,so,1
+4de30c61| gnu bctarl+ 15,so,1
+4de31021| gnu bclrl+ 15,so,2
+4de31421| gnu bcctrl+ 15,so,2
+4de31461| gnu bctarl+ 15,so,2
+41e30081| gnu bsol+ 0x1a98
+41e30083| gnu bsola+ 0x80
+4de40020| gnu bltlr+ cr1
+4de40420| gnu bltctr+ cr1
+4de40460| gnu blttar+ cr1
+4de40820| gnu bclr+ 15,4*cr1+lt,1
+4de40c20| gnu bcctr+ 15,4*cr1+lt,1
+4de40c60| gnu bctar+ 15,4*cr1+lt,1
+4de41020| gnu bclr+ 15,4*cr1+lt,2
+4de41420| gnu bcctr+ 15,4*cr1+lt,2
+4de41460| gnu bctar+ 15,4*cr1+lt,2
+41e40080| gnu blt+ cr1,0x1ac4
+41e40082| gnu blta+ cr1,0x80
+4de40021| gnu bltlrl+ cr1
+4de40421| gnu bltctrl+ cr1
+4de40461| gnu blttarl+ cr1
+4de40821| gnu bclrl+ 15,4*cr1+lt,1
+4de40c21| gnu bcctrl+ 15,4*cr1+lt,1
+4de40c61| gnu bctarl+ 15,4*cr1+lt,1
+4de41021| gnu bclrl+ 15,4*cr1+lt,2
+4de41421| gnu bcctrl+ 15,4*cr1+lt,2
+4de41461| gnu bctarl+ 15,4*cr1+lt,2
+41e40081| gnu bltl+ cr1,0x1af0
+41e40083| gnu bltla+ cr1,0x80
+4de50020| gnu bgtlr+ cr1
+4de50420| gnu bgtctr+ cr1
+4de50460| gnu bgttar+ cr1
+4de50820| gnu bclr+ 15,4*cr1+gt,1
+4de50c20| gnu bcctr+ 15,4*cr1+gt,1
+4de50c60| gnu bctar+ 15,4*cr1+gt,1
+4de51020| gnu bclr+ 15,4*cr1+gt,2
+4de51420| gnu bcctr+ 15,4*cr1+gt,2
+4de51460| gnu bctar+ 15,4*cr1+gt,2
+41e50080| gnu bgt+ cr1,0x1b1c
+41e50082| gnu bgta+ cr1,0x80
+4de50021| gnu bgtlrl+ cr1
+4de50421| gnu bgtctrl+ cr1
+4de50461| gnu bgttarl+ cr1
+4de50821| gnu bclrl+ 15,4*cr1+gt,1
+4de50c21| gnu bcctrl+ 15,4*cr1+gt,1
+4de50c61| gnu bctarl+ 15,4*cr1+gt,1
+4de51021| gnu bclrl+ 15,4*cr1+gt,2
+4de51421| gnu bcctrl+ 15,4*cr1+gt,2
+4de51461| gnu bctarl+ 15,4*cr1+gt,2
+41e50081| gnu bgtl+ cr1,0x1b48
+41e50083| gnu bgtla+ cr1,0x80
+4de60020| gnu beqlr+ cr1
+4de60420| gnu beqctr+ cr1
+4de60460| gnu beqtar+ cr1
+4de60820| gnu bclr+ 15,4*cr1+eq,1
+4de60c20| gnu bcctr+ 15,4*cr1+eq,1
+4de60c60| gnu bctar+ 15,4*cr1+eq,1
+4de61020| gnu bclr+ 15,4*cr1+eq,2
+4de61420| gnu bcctr+ 15,4*cr1+eq,2
+4de61460| gnu bctar+ 15,4*cr1+eq,2
+41e60080| gnu beq+ cr1,0x1b74
+41e60082| gnu beqa+ cr1,0x80
+4de60021| gnu beqlrl+ cr1
+4de60421| gnu beqctrl+ cr1
+4de60461| gnu beqtarl+ cr1
+4de60821| gnu bclrl+ 15,4*cr1+eq,1
+4de60c21| gnu bcctrl+ 15,4*cr1+eq,1
+4de60c61| gnu bctarl+ 15,4*cr1+eq,1
+4de61021| gnu bclrl+ 15,4*cr1+eq,2
+4de61421| gnu bcctrl+ 15,4*cr1+eq,2
+4de61461| gnu bctarl+ 15,4*cr1+eq,2
+41e60081| gnu beql+ cr1,0x1ba0
+41e60083| gnu beqla+ cr1,0x80
+4de70020| gnu bsolr+ cr1
+4de70420| gnu bsoctr+ cr1
+4de70460| gnu bsotar+ cr1
+4de70820| gnu bclr+ 15,4*cr1+so,1
+4de70c20| gnu bcctr+ 15,4*cr1+so,1
+4de70c60| gnu bctar+ 15,4*cr1+so,1
+4de71020| gnu bclr+ 15,4*cr1+so,2
+4de71420| gnu bcctr+ 15,4*cr1+so,2
+4de71460| gnu bctar+ 15,4*cr1+so,2
+41e70080| gnu bso+ cr1,0x1bcc
+41e70082| gnu bsoa+ cr1,0x80
+4de70021| gnu bsolrl+ cr1
+4de70421| gnu bsoctrl+ cr1
+4de70461| gnu bsotarl+ cr1
+4de70821| gnu bclrl+ 15,4*cr1+so,1
+4de70c21| gnu bcctrl+ 15,4*cr1+so,1
+4de70c61| gnu bctarl+ 15,4*cr1+so,1
+4de71021| gnu bclrl+ 15,4*cr1+so,2
+4de71421| gnu bcctrl+ 15,4*cr1+so,2
+4de71461| gnu bctarl+ 15,4*cr1+so,2
+41e70081| gnu bsol+ cr1,0x1bf8
+41e70083| gnu bsola+ cr1,0x80
+4e000020| gnu bdnzlr
+4e000420| gnu bcctr 16,lt
+4e000460| gnu bdnztar
+4e000820| gnu bclr 16,lt,1
+4e000c20| gnu bcctr 16,lt,1
+4e000c60| gnu bctar 16,lt,1
+4e001020| gnu bclr 16,lt,2
+4e001420| gnu bcctr 16,lt,2
+4e001460| gnu bctar 16,lt,2
+42000080| gnu bdnz 0x1c24
+42000082| gnu bdnza 0x80
+4e000021| gnu bdnzlrl
+4e000421| gnu bcctrl 16,lt
+4e000461| gnu bdnztarl
+4e000821| gnu bclrl 16,lt,1
+4e000c21| gnu bcctrl 16,lt,1
+4e000c61| gnu bctarl 16,lt,1
+4e001021| gnu bclrl 16,lt,2
+4e001421| gnu bcctrl 16,lt,2
+4e001461| gnu bctarl 16,lt,2
+42000081| gnu bdnzl 0x1c50
+42000083| gnu bdnzla 0x80
+4e010020| gnu bclr 16,gt
+4e010420| gnu bcctr 16,gt
+4e010460| gnu bctar 16,gt
+4e010820| gnu bclr 16,gt,1
+4e010c20| gnu bcctr 16,gt,1
+4e010c60| gnu bctar 16,gt,1
+4e011020| gnu bclr 16,gt,2
+4e011420| gnu bcctr 16,gt,2
+4e011460| gnu bctar 16,gt,2
+42010080| gnu bc 16,gt,0x1c7c
+42010082| gnu bca 16,gt,0x80
+4e010021| gnu bclrl 16,gt
+4e010421| gnu bcctrl 16,gt
+4e010461| gnu bctarl 16,gt
+4e010821| gnu bclrl 16,gt,1
+4e010c21| gnu bcctrl 16,gt,1
+4e010c61| gnu bctarl 16,gt,1
+4e011021| gnu bclrl 16,gt,2
+4e011421| gnu bcctrl 16,gt,2
+4e011461| gnu bctarl 16,gt,2
+42010081| gnu bcl 16,gt,0x1ca8
+42010083| gnu bcla 16,gt,0x80
+4e020020| gnu bclr 16,eq
+4e020420| gnu bcctr 16,eq
+4e020460| gnu bctar 16,eq
+4e020820| gnu bclr 16,eq,1
+4e020c20| gnu bcctr 16,eq,1
+4e020c60| gnu bctar 16,eq,1
+4e021020| gnu bclr 16,eq,2
+4e021420| gnu bcctr 16,eq,2
+4e021460| gnu bctar 16,eq,2
+42020080| gnu bc 16,eq,0x1cd4
+42020082| gnu bca 16,eq,0x80
+4e020021| gnu bclrl 16,eq
+4e020421| gnu bcctrl 16,eq
+4e020461| gnu bctarl 16,eq
+4e020821| gnu bclrl 16,eq,1
+4e020c21| gnu bcctrl 16,eq,1
+4e020c61| gnu bctarl 16,eq,1
+4e021021| gnu bclrl 16,eq,2
+4e021421| gnu bcctrl 16,eq,2
+4e021461| gnu bctarl 16,eq,2
+42020081| gnu bcl 16,eq,0x1d00
+42020083| gnu bcla 16,eq,0x80
+4e030020| gnu bclr 16,so
+4e030420| gnu bcctr 16,so
+4e030460| gnu bctar 16,so
+4e030820| gnu bclr 16,so,1
+4e030c20| gnu bcctr 16,so,1
+4e030c60| gnu bctar 16,so,1
+4e031020| gnu bclr 16,so,2
+4e031420| gnu bcctr 16,so,2
+4e031460| gnu bctar 16,so,2
+42030080| gnu bc 16,so,0x1d2c
+42030082| gnu bca 16,so,0x80
+4e030021| gnu bclrl 16,so
+4e030421| gnu bcctrl 16,so
+4e030461| gnu bctarl 16,so
+4e030821| gnu bclrl 16,so,1
+4e030c21| gnu bcctrl 16,so,1
+4e030c61| gnu bctarl 16,so,1
+4e031021| gnu bclrl 16,so,2
+4e031421| gnu bcctrl 16,so,2
+4e031461| gnu bctarl 16,so,2
+42030081| gnu bcl 16,so,0x1d58
+42030083| gnu bcla 16,so,0x80
+4e040020| gnu bclr 16,4*cr1+lt
+4e040420| gnu bcctr 16,4*cr1+lt
+4e040460| gnu bctar 16,4*cr1+lt
+4e040820| gnu bclr 16,4*cr1+lt,1
+4e040c20| gnu bcctr 16,4*cr1+lt,1
+4e040c60| gnu bctar 16,4*cr1+lt,1
+4e041020| gnu bclr 16,4*cr1+lt,2
+4e041420| gnu bcctr 16,4*cr1+lt,2
+4e041460| gnu bctar 16,4*cr1+lt,2
+42040080| gnu bc 16,4*cr1+lt,0x1d84
+42040082| gnu bca 16,4*cr1+lt,0x80
+4e040021| gnu bclrl 16,4*cr1+lt
+4e040421| gnu bcctrl 16,4*cr1+lt
+4e040461| gnu bctarl 16,4*cr1+lt
+4e040821| gnu bclrl 16,4*cr1+lt,1
+4e040c21| gnu bcctrl 16,4*cr1+lt,1
+4e040c61| gnu bctarl 16,4*cr1+lt,1
+4e041021| gnu bclrl 16,4*cr1+lt,2
+4e041421| gnu bcctrl 16,4*cr1+lt,2
+4e041461| gnu bctarl 16,4*cr1+lt,2
+42040081| gnu bcl 16,4*cr1+lt,0x1db0
+42040083| gnu bcla 16,4*cr1+lt,0x80
+4e050020| gnu bclr 16,4*cr1+gt
+4e050420| gnu bcctr 16,4*cr1+gt
+4e050460| gnu bctar 16,4*cr1+gt
+4e050820| gnu bclr 16,4*cr1+gt,1
+4e050c20| gnu bcctr 16,4*cr1+gt,1
+4e050c60| gnu bctar 16,4*cr1+gt,1
+4e051020| gnu bclr 16,4*cr1+gt,2
+4e051420| gnu bcctr 16,4*cr1+gt,2
+4e051460| gnu bctar 16,4*cr1+gt,2
+42050080| gnu bc 16,4*cr1+gt,0x1ddc
+42050082| gnu bca 16,4*cr1+gt,0x80
+4e050021| gnu bclrl 16,4*cr1+gt
+4e050421| gnu bcctrl 16,4*cr1+gt
+4e050461| gnu bctarl 16,4*cr1+gt
+4e050821| gnu bclrl 16,4*cr1+gt,1
+4e050c21| gnu bcctrl 16,4*cr1+gt,1
+4e050c61| gnu bctarl 16,4*cr1+gt,1
+4e051021| gnu bclrl 16,4*cr1+gt,2
+4e051421| gnu bcctrl 16,4*cr1+gt,2
+4e051461| gnu bctarl 16,4*cr1+gt,2
+42050081| gnu bcl 16,4*cr1+gt,0x1e08
+42050083| gnu bcla 16,4*cr1+gt,0x80
+4e060020| gnu bclr 16,4*cr1+eq
+4e060420| gnu bcctr 16,4*cr1+eq
+4e060460| gnu bctar 16,4*cr1+eq
+4e060820| gnu bclr 16,4*cr1+eq,1
+4e060c20| gnu bcctr 16,4*cr1+eq,1
+4e060c60| gnu bctar 16,4*cr1+eq,1
+4e061020| gnu bclr 16,4*cr1+eq,2
+4e061420| gnu bcctr 16,4*cr1+eq,2
+4e061460| gnu bctar 16,4*cr1+eq,2
+42060080| gnu bc 16,4*cr1+eq,0x1e34
+42060082| gnu bca 16,4*cr1+eq,0x80
+4e060021| gnu bclrl 16,4*cr1+eq
+4e060421| gnu bcctrl 16,4*cr1+eq
+4e060461| gnu bctarl 16,4*cr1+eq
+4e060821| gnu bclrl 16,4*cr1+eq,1
+4e060c21| gnu bcctrl 16,4*cr1+eq,1
+4e060c61| gnu bctarl 16,4*cr1+eq,1
+4e061021| gnu bclrl 16,4*cr1+eq,2
+4e061421| gnu bcctrl 16,4*cr1+eq,2
+4e061461| gnu bctarl 16,4*cr1+eq,2
+42060081| gnu bcl 16,4*cr1+eq,0x1e60
+42060083| gnu bcla 16,4*cr1+eq,0x80
+4e070020| gnu bclr 16,4*cr1+so
+4e070420| gnu bcctr 16,4*cr1+so
+4e070460| gnu bctar 16,4*cr1+so
+4e070820| gnu bclr 16,4*cr1+so,1
+4e070c20| gnu bcctr 16,4*cr1+so,1
+4e070c60| gnu bctar 16,4*cr1+so,1
+4e071020| gnu bclr 16,4*cr1+so,2
+4e071420| gnu bcctr 16,4*cr1+so,2
+4e071460| gnu bctar 16,4*cr1+so,2
+42070080| gnu bc 16,4*cr1+so,0x1e8c
+42070082| gnu bca 16,4*cr1+so,0x80
+4e070021| gnu bclrl 16,4*cr1+so
+4e070421| gnu bcctrl 16,4*cr1+so
+4e070461| gnu bctarl 16,4*cr1+so
+4e070821| gnu bclrl 16,4*cr1+so,1
+4e070c21| gnu bcctrl 16,4*cr1+so,1
+4e070c61| gnu bctarl 16,4*cr1+so,1
+4e071021| gnu bclrl 16,4*cr1+so,2
+4e071421| gnu bcctrl 16,4*cr1+so,2
+4e071461| gnu bctarl 16,4*cr1+so,2
+42070081| gnu bcl 16,4*cr1+so,0x1eb8
+42070083| gnu bcla 16,4*cr1+so,0x80
+4e400020| gnu bdzlr
+4e400420| gnu bcctr 18,lt
+4e400460| gnu bdztar
+4e400820| gnu bclr 18,lt,1
+4e400c20| gnu bcctr 18,lt,1
+4e400c60| gnu bctar 18,lt,1
+4e401020| gnu bclr 18,lt,2
+4e401420| gnu bcctr 18,lt,2
+4e401460| gnu bctar 18,lt,2
+42400080| gnu bdz 0x1ee4
+42400082| gnu bdza 0x80
+4e400021| gnu bdzlrl
+4e400421| gnu bcctrl 18,lt
+4e400461| gnu bdztarl
+4e400821| gnu bclrl 18,lt,1
+4e400c21| gnu bcctrl 18,lt,1
+4e400c61| gnu bctarl 18,lt,1
+4e401021| gnu bclrl 18,lt,2
+4e401421| gnu bcctrl 18,lt,2
+4e401461| gnu bctarl 18,lt,2
+42400081| gnu bdzl 0x1f10
+42400083| gnu bdzla 0x80
+4e410020| gnu bclr 18,gt
+4e410420| gnu bcctr 18,gt
+4e410460| gnu bctar 18,gt
+4e410820| gnu bclr 18,gt,1
+4e410c20| gnu bcctr 18,gt,1
+4e410c60| gnu bctar 18,gt,1
+4e411020| gnu bclr 18,gt,2
+4e411420| gnu bcctr 18,gt,2
+4e411460| gnu bctar 18,gt,2
+42410080| gnu bc 18,gt,0x1f3c
+42410082| gnu bca 18,gt,0x80
+4e410021| gnu bclrl 18,gt
+4e410421| gnu bcctrl 18,gt
+4e410461| gnu bctarl 18,gt
+4e410821| gnu bclrl 18,gt,1
+4e410c21| gnu bcctrl 18,gt,1
+4e410c61| gnu bctarl 18,gt,1
+4e411021| gnu bclrl 18,gt,2
+4e411421| gnu bcctrl 18,gt,2
+4e411461| gnu bctarl 18,gt,2
+42410081| gnu bcl 18,gt,0x1f68
+42410083| gnu bcla 18,gt,0x80
+4e420020| gnu bclr 18,eq
+4e420420| gnu bcctr 18,eq
+4e420460| gnu bctar 18,eq
+4e420820| gnu bclr 18,eq,1
+4e420c20| gnu bcctr 18,eq,1
+4e420c60| gnu bctar 18,eq,1
+4e421020| gnu bclr 18,eq,2
+4e421420| gnu bcctr 18,eq,2
+4e421460| gnu bctar 18,eq,2
+42420080| gnu bc 18,eq,0x1f94
+42420082| gnu bca 18,eq,0x80
+4e420021| gnu bclrl 18,eq
+4e420421| gnu bcctrl 18,eq
+4e420461| gnu bctarl 18,eq
+4e420821| gnu bclrl 18,eq,1
+4e420c21| gnu bcctrl 18,eq,1
+4e420c61| gnu bctarl 18,eq,1
+4e421021| gnu bclrl 18,eq,2
+4e421421| gnu bcctrl 18,eq,2
+4e421461| gnu bctarl 18,eq,2
+42420081| gnu bcl 18,eq,0x1fc0
+42420083| gnu bcla 18,eq,0x80
+4e430020| gnu bclr 18,so
+4e430420| gnu bcctr 18,so
+4e430460| gnu bctar 18,so
+4e430820| gnu bclr 18,so,1
+4e430c20| gnu bcctr 18,so,1
+4e430c60| gnu bctar 18,so,1
+4e431020| gnu bclr 18,so,2
+4e431420| gnu bcctr 18,so,2
+4e431460| gnu bctar 18,so,2
+42430080| gnu bc 18,so,0x1fec
+42430082| gnu bca 18,so,0x80
+4e430021| gnu bclrl 18,so
+4e430421| gnu bcctrl 18,so
+4e430461| gnu bctarl 18,so
+4e430821| gnu bclrl 18,so,1
+4e430c21| gnu bcctrl 18,so,1
+4e430c61| gnu bctarl 18,so,1
+4e431021| gnu bclrl 18,so,2
+4e431421| gnu bcctrl 18,so,2
+4e431461| gnu bctarl 18,so,2
+42430081| gnu bcl 18,so,0x2018
+42430083| gnu bcla 18,so,0x80
+4e440020| gnu bclr 18,4*cr1+lt
+4e440420| gnu bcctr 18,4*cr1+lt
+4e440460| gnu bctar 18,4*cr1+lt
+4e440820| gnu bclr 18,4*cr1+lt,1
+4e440c20| gnu bcctr 18,4*cr1+lt,1
+4e440c60| gnu bctar 18,4*cr1+lt,1
+4e441020| gnu bclr 18,4*cr1+lt,2
+4e441420| gnu bcctr 18,4*cr1+lt,2
+4e441460| gnu bctar 18,4*cr1+lt,2
+42440080| gnu bc 18,4*cr1+lt,0x2044
+42440082| gnu bca 18,4*cr1+lt,0x80
+4e440021| gnu bclrl 18,4*cr1+lt
+4e440421| gnu bcctrl 18,4*cr1+lt
+4e440461| gnu bctarl 18,4*cr1+lt
+4e440821| gnu bclrl 18,4*cr1+lt,1
+4e440c21| gnu bcctrl 18,4*cr1+lt,1
+4e440c61| gnu bctarl 18,4*cr1+lt,1
+4e441021| gnu bclrl 18,4*cr1+lt,2
+4e441421| gnu bcctrl 18,4*cr1+lt,2
+4e441461| gnu bctarl 18,4*cr1+lt,2
+42440081| gnu bcl 18,4*cr1+lt,0x2070
+42440083| gnu bcla 18,4*cr1+lt,0x80
+4e450020| gnu bclr 18,4*cr1+gt
+4e450420| gnu bcctr 18,4*cr1+gt
+4e450460| gnu bctar 18,4*cr1+gt
+4e450820| gnu bclr 18,4*cr1+gt,1
+4e450c20| gnu bcctr 18,4*cr1+gt,1
+4e450c60| gnu bctar 18,4*cr1+gt,1
+4e451020| gnu bclr 18,4*cr1+gt,2
+4e451420| gnu bcctr 18,4*cr1+gt,2
+4e451460| gnu bctar 18,4*cr1+gt,2
+42450080| gnu bc 18,4*cr1+gt,0x209c
+42450082| gnu bca 18,4*cr1+gt,0x80
+4e450021| gnu bclrl 18,4*cr1+gt
+4e450421| gnu bcctrl 18,4*cr1+gt
+4e450461| gnu bctarl 18,4*cr1+gt
+4e450821| gnu bclrl 18,4*cr1+gt,1
+4e450c21| gnu bcctrl 18,4*cr1+gt,1
+4e450c61| gnu bctarl 18,4*cr1+gt,1
+4e451021| gnu bclrl 18,4*cr1+gt,2
+4e451421| gnu bcctrl 18,4*cr1+gt,2
+4e451461| gnu bctarl 18,4*cr1+gt,2
+42450081| gnu bcl 18,4*cr1+gt,0x20c8
+42450083| gnu bcla 18,4*cr1+gt,0x80
+4e460020| gnu bclr 18,4*cr1+eq
+4e460420| gnu bcctr 18,4*cr1+eq
+4e460460| gnu bctar 18,4*cr1+eq
+4e460820| gnu bclr 18,4*cr1+eq,1
+4e460c20| gnu bcctr 18,4*cr1+eq,1
+4e460c60| gnu bctar 18,4*cr1+eq,1
+4e461020| gnu bclr 18,4*cr1+eq,2
+4e461420| gnu bcctr 18,4*cr1+eq,2
+4e461460| gnu bctar 18,4*cr1+eq,2
+42460080| gnu bc 18,4*cr1+eq,0x20f4
+42460082| gnu bca 18,4*cr1+eq,0x80
+4e460021| gnu bclrl 18,4*cr1+eq
+4e460421| gnu bcctrl 18,4*cr1+eq
+4e460461| gnu bctarl 18,4*cr1+eq
+4e460821| gnu bclrl 18,4*cr1+eq,1
+4e460c21| gnu bcctrl 18,4*cr1+eq,1
+4e460c61| gnu bctarl 18,4*cr1+eq,1
+4e461021| gnu bclrl 18,4*cr1+eq,2
+4e461421| gnu bcctrl 18,4*cr1+eq,2
+4e461461| gnu bctarl 18,4*cr1+eq,2
+42460081| gnu bcl 18,4*cr1+eq,0x2120
+42460083| gnu bcla 18,4*cr1+eq,0x80
+4e470020| gnu bclr 18,4*cr1+so
+4e470420| gnu bcctr 18,4*cr1+so
+4e470460| gnu bctar 18,4*cr1+so
+4e470820| gnu bclr 18,4*cr1+so,1
+4e470c20| gnu bcctr 18,4*cr1+so,1
+4e470c60| gnu bctar 18,4*cr1+so,1
+4e471020| gnu bclr 18,4*cr1+so,2
+4e471420| gnu bcctr 18,4*cr1+so,2
+4e471460| gnu bctar 18,4*cr1+so,2
+42470080| gnu bc 18,4*cr1+so,0x214c
+42470082| gnu bca 18,4*cr1+so,0x80
+4e470021| gnu bclrl 18,4*cr1+so
+4e470421| gnu bcctrl 18,4*cr1+so
+4e470461| gnu bctarl 18,4*cr1+so
+4e470821| gnu bclrl 18,4*cr1+so,1
+4e470c21| gnu bcctrl 18,4*cr1+so,1
+4e470c61| gnu bctarl 18,4*cr1+so,1
+4e471021| gnu bclrl 18,4*cr1+so,2
+4e471421| gnu bcctrl 18,4*cr1+so,2
+4e471461| gnu bctarl 18,4*cr1+so,2
+42470081| gnu bcl 18,4*cr1+so,0x2178
+42470083| gnu bcla 18,4*cr1+so,0x80
+4f000020| gnu bdnzlr-
+4f000420| gnu bcctr- 24,lt
+4f000460| gnu bdnztar-
+4f000820| gnu bclr- 24,lt,1
+4f000c20| gnu bcctr- 24,lt,1
+4f000c60| gnu bctar- 24,lt,1
+4f001020| gnu bclr- 24,lt,2
+4f001420| gnu bcctr- 24,lt,2
+4f001460| gnu bctar- 24,lt,2
+43000080| gnu bdnz- 0x21a4
+43000082| gnu bdnza- 0x80
+4f000021| gnu bdnzlrl-
+4f000421| gnu bcctrl- 24,lt
+4f000461| gnu bdnztarl-
+4f000821| gnu bclrl- 24,lt,1
+4f000c21| gnu bcctrl- 24,lt,1
+4f000c61| gnu bctarl- 24,lt,1
+4f001021| gnu bclrl- 24,lt,2
+4f001421| gnu bcctrl- 24,lt,2
+4f001461| gnu bctarl- 24,lt,2
+43000081| gnu bdnzl- 0x21d0
+43000083| gnu bdnzla- 0x80
+4f010020| gnu bclr- 24,gt
+4f010420| gnu bcctr- 24,gt
+4f010460| gnu bctar- 24,gt
+4f010820| gnu bclr- 24,gt,1
+4f010c20| gnu bcctr- 24,gt,1
+4f010c60| gnu bctar- 24,gt,1
+4f011020| gnu bclr- 24,gt,2
+4f011420| gnu bcctr- 24,gt,2
+4f011460| gnu bctar- 24,gt,2
+43010080| gnu bc- 24,gt,0x21fc
+43010082| gnu bca- 24,gt,0x80
+4f010021| gnu bclrl- 24,gt
+4f010421| gnu bcctrl- 24,gt
+4f010461| gnu bctarl- 24,gt
+4f010821| gnu bclrl- 24,gt,1
+4f010c21| gnu bcctrl- 24,gt,1
+4f010c61| gnu bctarl- 24,gt,1
+4f011021| gnu bclrl- 24,gt,2
+4f011421| gnu bcctrl- 24,gt,2
+4f011461| gnu bctarl- 24,gt,2
+43010081| gnu bcl- 24,gt,0x2228
+43010083| gnu bcla- 24,gt,0x80
+4f020020| gnu bclr- 24,eq
+4f020420| gnu bcctr- 24,eq
+4f020460| gnu bctar- 24,eq
+4f020820| gnu bclr- 24,eq,1
+4f020c20| gnu bcctr- 24,eq,1
+4f020c60| gnu bctar- 24,eq,1
+4f021020| gnu bclr- 24,eq,2
+4f021420| gnu bcctr- 24,eq,2
+4f021460| gnu bctar- 24,eq,2
+43020080| gnu bc- 24,eq,0x2254
+43020082| gnu bca- 24,eq,0x80
+4f020021| gnu bclrl- 24,eq
+4f020421| gnu bcctrl- 24,eq
+4f020461| gnu bctarl- 24,eq
+4f020821| gnu bclrl- 24,eq,1
+4f020c21| gnu bcctrl- 24,eq,1
+4f020c61| gnu bctarl- 24,eq,1
+4f021021| gnu bclrl- 24,eq,2
+4f021421| gnu bcctrl- 24,eq,2
+4f021461| gnu bctarl- 24,eq,2
+43020081| gnu bcl- 24,eq,0x2280
+43020083| gnu bcla- 24,eq,0x80
+4f030020| gnu bclr- 24,so
+4f030420| gnu bcctr- 24,so
+4f030460| gnu bctar- 24,so
+4f030820| gnu bclr- 24,so,1
+4f030c20| gnu bcctr- 24,so,1
+4f030c60| gnu bctar- 24,so,1
+4f031020| gnu bclr- 24,so,2
+4f031420| gnu bcctr- 24,so,2
+4f031460| gnu bctar- 24,so,2
+43030080| gnu bc- 24,so,0x22ac
+43030082| gnu bca- 24,so,0x80
+4f030021| gnu bclrl- 24,so
+4f030421| gnu bcctrl- 24,so
+4f030461| gnu bctarl- 24,so
+4f030821| gnu bclrl- 24,so,1
+4f030c21| gnu bcctrl- 24,so,1
+4f030c61| gnu bctarl- 24,so,1
+4f031021| gnu bclrl- 24,so,2
+4f031421| gnu bcctrl- 24,so,2
+4f031461| gnu bctarl- 24,so,2
+43030081| gnu bcl- 24,so,0x22d8
+43030083| gnu bcla- 24,so,0x80
+4f040020| gnu bclr- 24,4*cr1+lt
+4f040420| gnu bcctr- 24,4*cr1+lt
+4f040460| gnu bctar- 24,4*cr1+lt
+4f040820| gnu bclr- 24,4*cr1+lt,1
+4f040c20| gnu bcctr- 24,4*cr1+lt,1
+4f040c60| gnu bctar- 24,4*cr1+lt,1
+4f041020| gnu bclr- 24,4*cr1+lt,2
+4f041420| gnu bcctr- 24,4*cr1+lt,2
+4f041460| gnu bctar- 24,4*cr1+lt,2
+43040080| gnu bc- 24,4*cr1+lt,0x2304
+43040082| gnu bca- 24,4*cr1+lt,0x80
+4f040021| gnu bclrl- 24,4*cr1+lt
+4f040421| gnu bcctrl- 24,4*cr1+lt
+4f040461| gnu bctarl- 24,4*cr1+lt
+4f040821| gnu bclrl- 24,4*cr1+lt,1
+4f040c21| gnu bcctrl- 24,4*cr1+lt,1
+4f040c61| gnu bctarl- 24,4*cr1+lt,1
+4f041021| gnu bclrl- 24,4*cr1+lt,2
+4f041421| gnu bcctrl- 24,4*cr1+lt,2
+4f041461| gnu bctarl- 24,4*cr1+lt,2
+43040081| gnu bcl- 24,4*cr1+lt,0x2330
+43040083| gnu bcla- 24,4*cr1+lt,0x80
+4f050020| gnu bclr- 24,4*cr1+gt
+4f050420| gnu bcctr- 24,4*cr1+gt
+4f050460| gnu bctar- 24,4*cr1+gt
+4f050820| gnu bclr- 24,4*cr1+gt,1
+4f050c20| gnu bcctr- 24,4*cr1+gt,1
+4f050c60| gnu bctar- 24,4*cr1+gt,1
+4f051020| gnu bclr- 24,4*cr1+gt,2
+4f051420| gnu bcctr- 24,4*cr1+gt,2
+4f051460| gnu bctar- 24,4*cr1+gt,2
+43050080| gnu bc- 24,4*cr1+gt,0x235c
+43050082| gnu bca- 24,4*cr1+gt,0x80
+4f050021| gnu bclrl- 24,4*cr1+gt
+4f050421| gnu bcctrl- 24,4*cr1+gt
+4f050461| gnu bctarl- 24,4*cr1+gt
+4f050821| gnu bclrl- 24,4*cr1+gt,1
+4f050c21| gnu bcctrl- 24,4*cr1+gt,1
+4f050c61| gnu bctarl- 24,4*cr1+gt,1
+4f051021| gnu bclrl- 24,4*cr1+gt,2
+4f051421| gnu bcctrl- 24,4*cr1+gt,2
+4f051461| gnu bctarl- 24,4*cr1+gt,2
+43050081| gnu bcl- 24,4*cr1+gt,0x2388
+43050083| gnu bcla- 24,4*cr1+gt,0x80
+4f060020| gnu bclr- 24,4*cr1+eq
+4f060420| gnu bcctr- 24,4*cr1+eq
+4f060460| gnu bctar- 24,4*cr1+eq
+4f060820| gnu bclr- 24,4*cr1+eq,1
+4f060c20| gnu bcctr- 24,4*cr1+eq,1
+4f060c60| gnu bctar- 24,4*cr1+eq,1
+4f061020| gnu bclr- 24,4*cr1+eq,2
+4f061420| gnu bcctr- 24,4*cr1+eq,2
+4f061460| gnu bctar- 24,4*cr1+eq,2
+43060080| gnu bc- 24,4*cr1+eq,0x23b4
+43060082| gnu bca- 24,4*cr1+eq,0x80
+4f060021| gnu bclrl- 24,4*cr1+eq
+4f060421| gnu bcctrl- 24,4*cr1+eq
+4f060461| gnu bctarl- 24,4*cr1+eq
+4f060821| gnu bclrl- 24,4*cr1+eq,1
+4f060c21| gnu bcctrl- 24,4*cr1+eq,1
+4f060c61| gnu bctarl- 24,4*cr1+eq,1
+4f061021| gnu bclrl- 24,4*cr1+eq,2
+4f061421| gnu bcctrl- 24,4*cr1+eq,2
+4f061461| gnu bctarl- 24,4*cr1+eq,2
+43060081| gnu bcl- 24,4*cr1+eq,0x23e0
+43060083| gnu bcla- 24,4*cr1+eq,0x80
+4f070020| gnu bclr- 24,4*cr1+so
+4f070420| gnu bcctr- 24,4*cr1+so
+4f070460| gnu bctar- 24,4*cr1+so
+4f070820| gnu bclr- 24,4*cr1+so,1
+4f070c20| gnu bcctr- 24,4*cr1+so,1
+4f070c60| gnu bctar- 24,4*cr1+so,1
+4f071020| gnu bclr- 24,4*cr1+so,2
+4f071420| gnu bcctr- 24,4*cr1+so,2
+4f071460| gnu bctar- 24,4*cr1+so,2
+43070080| gnu bc- 24,4*cr1+so,0x240c
+43070082| gnu bca- 24,4*cr1+so,0x80
+4f070021| gnu bclrl- 24,4*cr1+so
+4f070421| gnu bcctrl- 24,4*cr1+so
+4f070461| gnu bctarl- 24,4*cr1+so
+4f070821| gnu bclrl- 24,4*cr1+so,1
+4f070c21| gnu bcctrl- 24,4*cr1+so,1
+4f070c61| gnu bctarl- 24,4*cr1+so,1
+4f071021| gnu bclrl- 24,4*cr1+so,2
+4f071421| gnu bcctrl- 24,4*cr1+so,2
+4f071461| gnu bctarl- 24,4*cr1+so,2
+43070081| gnu bcl- 24,4*cr1+so,0x2438
+43070083| gnu bcla- 24,4*cr1+so,0x80
+4f200020| gnu bdnzlr+
+4f200420| gnu bcctr+ 25,lt
+4f200460| gnu bdnztar+
+4f200820| gnu bclr+ 25,lt,1
+4f200c20| gnu bcctr+ 25,lt,1
+4f200c60| gnu bctar+ 25,lt,1
+4f201020| gnu bclr+ 25,lt,2
+4f201420| gnu bcctr+ 25,lt,2
+4f201460| gnu bctar+ 25,lt,2
+43200080| gnu bdnz+ 0x2464
+43200082| gnu bdnza+ 0x80
+4f200021| gnu bdnzlrl+
+4f200421| gnu bcctrl+ 25,lt
+4f200461| gnu bdnztarl+
+4f200821| gnu bclrl+ 25,lt,1
+4f200c21| gnu bcctrl+ 25,lt,1
+4f200c61| gnu bctarl+ 25,lt,1
+4f201021| gnu bclrl+ 25,lt,2
+4f201421| gnu bcctrl+ 25,lt,2
+4f201461| gnu bctarl+ 25,lt,2
+43200081| gnu bdnzl+ 0x2490
+43200083| gnu bdnzla+ 0x80
+4f210020| gnu bclr+ 25,gt
+4f210420| gnu bcctr+ 25,gt
+4f210460| gnu bctar+ 25,gt
+4f210820| gnu bclr+ 25,gt,1
+4f210c20| gnu bcctr+ 25,gt,1
+4f210c60| gnu bctar+ 25,gt,1
+4f211020| gnu bclr+ 25,gt,2
+4f211420| gnu bcctr+ 25,gt,2
+4f211460| gnu bctar+ 25,gt,2
+43210080| gnu bc+ 25,gt,0x24bc
+43210082| gnu bca+ 25,gt,0x80
+4f210021| gnu bclrl+ 25,gt
+4f210421| gnu bcctrl+ 25,gt
+4f210461| gnu bctarl+ 25,gt
+4f210821| gnu bclrl+ 25,gt,1
+4f210c21| gnu bcctrl+ 25,gt,1
+4f210c61| gnu bctarl+ 25,gt,1
+4f211021| gnu bclrl+ 25,gt,2
+4f211421| gnu bcctrl+ 25,gt,2
+4f211461| gnu bctarl+ 25,gt,2
+43210081| gnu bcl+ 25,gt,0x24e8
+43210083| gnu bcla+ 25,gt,0x80
+4f220020| gnu bclr+ 25,eq
+4f220420| gnu bcctr+ 25,eq
+4f220460| gnu bctar+ 25,eq
+4f220820| gnu bclr+ 25,eq,1
+4f220c20| gnu bcctr+ 25,eq,1
+4f220c60| gnu bctar+ 25,eq,1
+4f221020| gnu bclr+ 25,eq,2
+4f221420| gnu bcctr+ 25,eq,2
+4f221460| gnu bctar+ 25,eq,2
+43220080| gnu bc+ 25,eq,0x2514
+43220082| gnu bca+ 25,eq,0x80
+4f220021| gnu bclrl+ 25,eq
+4f220421| gnu bcctrl+ 25,eq
+4f220461| gnu bctarl+ 25,eq
+4f220821| gnu bclrl+ 25,eq,1
+4f220c21| gnu bcctrl+ 25,eq,1
+4f220c61| gnu bctarl+ 25,eq,1
+4f221021| gnu bclrl+ 25,eq,2
+4f221421| gnu bcctrl+ 25,eq,2
+4f221461| gnu bctarl+ 25,eq,2
+43220081| gnu bcl+ 25,eq,0x2540
+43220083| gnu bcla+ 25,eq,0x80
+4f230020| gnu bclr+ 25,so
+4f230420| gnu bcctr+ 25,so
+4f230460| gnu bctar+ 25,so
+4f230820| gnu bclr+ 25,so,1
+4f230c20| gnu bcctr+ 25,so,1
+4f230c60| gnu bctar+ 25,so,1
+4f231020| gnu bclr+ 25,so,2
+4f231420| gnu bcctr+ 25,so,2
+4f231460| gnu bctar+ 25,so,2
+43230080| gnu bc+ 25,so,0x256c
+43230082| gnu bca+ 25,so,0x80
+4f230021| gnu bclrl+ 25,so
+4f230421| gnu bcctrl+ 25,so
+4f230461| gnu bctarl+ 25,so
+4f230821| gnu bclrl+ 25,so,1
+4f230c21| gnu bcctrl+ 25,so,1
+4f230c61| gnu bctarl+ 25,so,1
+4f231021| gnu bclrl+ 25,so,2
+4f231421| gnu bcctrl+ 25,so,2
+4f231461| gnu bctarl+ 25,so,2
+43230081| gnu bcl+ 25,so,0x2598
+43230083| gnu bcla+ 25,so,0x80
+4f240020| gnu bclr+ 25,4*cr1+lt
+4f240420| gnu bcctr+ 25,4*cr1+lt
+4f240460| gnu bctar+ 25,4*cr1+lt
+4f240820| gnu bclr+ 25,4*cr1+lt,1
+4f240c20| gnu bcctr+ 25,4*cr1+lt,1
+4f240c60| gnu bctar+ 25,4*cr1+lt,1
+4f241020| gnu bclr+ 25,4*cr1+lt,2
+4f241420| gnu bcctr+ 25,4*cr1+lt,2
+4f241460| gnu bctar+ 25,4*cr1+lt,2
+43240080| gnu bc+ 25,4*cr1+lt,0x25c4
+43240082| gnu bca+ 25,4*cr1+lt,0x80
+4f240021| gnu bclrl+ 25,4*cr1+lt
+4f240421| gnu bcctrl+ 25,4*cr1+lt
+4f240461| gnu bctarl+ 25,4*cr1+lt
+4f240821| gnu bclrl+ 25,4*cr1+lt,1
+4f240c21| gnu bcctrl+ 25,4*cr1+lt,1
+4f240c61| gnu bctarl+ 25,4*cr1+lt,1
+4f241021| gnu bclrl+ 25,4*cr1+lt,2
+4f241421| gnu bcctrl+ 25,4*cr1+lt,2
+4f241461| gnu bctarl+ 25,4*cr1+lt,2
+43240081| gnu bcl+ 25,4*cr1+lt,0x25f0
+43240083| gnu bcla+ 25,4*cr1+lt,0x80
+4f250020| gnu bclr+ 25,4*cr1+gt
+4f250420| gnu bcctr+ 25,4*cr1+gt
+4f250460| gnu bctar+ 25,4*cr1+gt
+4f250820| gnu bclr+ 25,4*cr1+gt,1
+4f250c20| gnu bcctr+ 25,4*cr1+gt,1
+4f250c60| gnu bctar+ 25,4*cr1+gt,1
+4f251020| gnu bclr+ 25,4*cr1+gt,2
+4f251420| gnu bcctr+ 25,4*cr1+gt,2
+4f251460| gnu bctar+ 25,4*cr1+gt,2
+43250080| gnu bc+ 25,4*cr1+gt,0x261c
+43250082| gnu bca+ 25,4*cr1+gt,0x80
+4f250021| gnu bclrl+ 25,4*cr1+gt
+4f250421| gnu bcctrl+ 25,4*cr1+gt
+4f250461| gnu bctarl+ 25,4*cr1+gt
+4f250821| gnu bclrl+ 25,4*cr1+gt,1
+4f250c21| gnu bcctrl+ 25,4*cr1+gt,1
+4f250c61| gnu bctarl+ 25,4*cr1+gt,1
+4f251021| gnu bclrl+ 25,4*cr1+gt,2
+4f251421| gnu bcctrl+ 25,4*cr1+gt,2
+4f251461| gnu bctarl+ 25,4*cr1+gt,2
+43250081| gnu bcl+ 25,4*cr1+gt,0x2648
+43250083| gnu bcla+ 25,4*cr1+gt,0x80
+4f260020| gnu bclr+ 25,4*cr1+eq
+4f260420| gnu bcctr+ 25,4*cr1+eq
+4f260460| gnu bctar+ 25,4*cr1+eq
+4f260820| gnu bclr+ 25,4*cr1+eq,1
+4f260c20| gnu bcctr+ 25,4*cr1+eq,1
+4f260c60| gnu bctar+ 25,4*cr1+eq,1
+4f261020| gnu bclr+ 25,4*cr1+eq,2
+4f261420| gnu bcctr+ 25,4*cr1+eq,2
+4f261460| gnu bctar+ 25,4*cr1+eq,2
+43260080| gnu bc+ 25,4*cr1+eq,0x2674
+43260082| gnu bca+ 25,4*cr1+eq,0x80
+4f260021| gnu bclrl+ 25,4*cr1+eq
+4f260421| gnu bcctrl+ 25,4*cr1+eq
+4f260461| gnu bctarl+ 25,4*cr1+eq
+4f260821| gnu bclrl+ 25,4*cr1+eq,1
+4f260c21| gnu bcctrl+ 25,4*cr1+eq,1
+4f260c61| gnu bctarl+ 25,4*cr1+eq,1
+4f261021| gnu bclrl+ 25,4*cr1+eq,2
+4f261421| gnu bcctrl+ 25,4*cr1+eq,2
+4f261461| gnu bctarl+ 25,4*cr1+eq,2
+43260081| gnu bcl+ 25,4*cr1+eq,0x26a0
+43260083| gnu bcla+ 25,4*cr1+eq,0x80
+4f270020| gnu bclr+ 25,4*cr1+so
+4f270420| gnu bcctr+ 25,4*cr1+so
+4f270460| gnu bctar+ 25,4*cr1+so
+4f270820| gnu bclr+ 25,4*cr1+so,1
+4f270c20| gnu bcctr+ 25,4*cr1+so,1
+4f270c60| gnu bctar+ 25,4*cr1+so,1
+4f271020| gnu bclr+ 25,4*cr1+so,2
+4f271420| gnu bcctr+ 25,4*cr1+so,2
+4f271460| gnu bctar+ 25,4*cr1+so,2
+43270080| gnu bc+ 25,4*cr1+so,0x26cc
+43270082| gnu bca+ 25,4*cr1+so,0x80
+4f270021| gnu bclrl+ 25,4*cr1+so
+4f270421| gnu bcctrl+ 25,4*cr1+so
+4f270461| gnu bctarl+ 25,4*cr1+so
+4f270821| gnu bclrl+ 25,4*cr1+so,1
+4f270c21| gnu bcctrl+ 25,4*cr1+so,1
+4f270c61| gnu bctarl+ 25,4*cr1+so,1
+4f271021| gnu bclrl+ 25,4*cr1+so,2
+4f271421| gnu bcctrl+ 25,4*cr1+so,2
+4f271461| gnu bctarl+ 25,4*cr1+so,2
+43270081| gnu bcl+ 25,4*cr1+so,0x26f8
+43270083| gnu bcla+ 25,4*cr1+so,0x80
+4f400020| gnu bdzlr-
+4f400420| gnu bcctr- 26,lt
+4f400460| gnu bdztar-
+4f400820| gnu bclr- 26,lt,1
+4f400c20| gnu bcctr- 26,lt,1
+4f400c60| gnu bctar- 26,lt,1
+4f401020| gnu bclr- 26,lt,2
+4f401420| gnu bcctr- 26,lt,2
+4f401460| gnu bctar- 26,lt,2
+43400080| gnu bdz- 0x2724
+43400082| gnu bdza- 0x80
+4f400021| gnu bdzlrl-
+4f400421| gnu bcctrl- 26,lt
+4f400461| gnu bdztarl-
+4f400821| gnu bclrl- 26,lt,1
+4f400c21| gnu bcctrl- 26,lt,1
+4f400c61| gnu bctarl- 26,lt,1
+4f401021| gnu bclrl- 26,lt,2
+4f401421| gnu bcctrl- 26,lt,2
+4f401461| gnu bctarl- 26,lt,2
+43400081| gnu bdzl- 0x2750
+43400083| gnu bdzla- 0x80
+4f410020| gnu bclr- 26,gt
+4f410420| gnu bcctr- 26,gt
+4f410460| gnu bctar- 26,gt
+4f410820| gnu bclr- 26,gt,1
+4f410c20| gnu bcctr- 26,gt,1
+4f410c60| gnu bctar- 26,gt,1
+4f411020| gnu bclr- 26,gt,2
+4f411420| gnu bcctr- 26,gt,2
+4f411460| gnu bctar- 26,gt,2
+43410080| gnu bc- 26,gt,0x277c
+43410082| gnu bca- 26,gt,0x80
+4f410021| gnu bclrl- 26,gt
+4f410421| gnu bcctrl- 26,gt
+4f410461| gnu bctarl- 26,gt
+4f410821| gnu bclrl- 26,gt,1
+4f410c21| gnu bcctrl- 26,gt,1
+4f410c61| gnu bctarl- 26,gt,1
+4f411021| gnu bclrl- 26,gt,2
+4f411421| gnu bcctrl- 26,gt,2
+4f411461| gnu bctarl- 26,gt,2
+43410081| gnu bcl- 26,gt,0x27a8
+43410083| gnu bcla- 26,gt,0x80
+4f420020| gnu bclr- 26,eq
+4f420420| gnu bcctr- 26,eq
+4f420460| gnu bctar- 26,eq
+4f420820| gnu bclr- 26,eq,1
+4f420c20| gnu bcctr- 26,eq,1
+4f420c60| gnu bctar- 26,eq,1
+4f421020| gnu bclr- 26,eq,2
+4f421420| gnu bcctr- 26,eq,2
+4f421460| gnu bctar- 26,eq,2
+43420080| gnu bc- 26,eq,0x27d4
+43420082| gnu bca- 26,eq,0x80
+4f420021| gnu bclrl- 26,eq
+4f420421| gnu bcctrl- 26,eq
+4f420461| gnu bctarl- 26,eq
+4f420821| gnu bclrl- 26,eq,1
+4f420c21| gnu bcctrl- 26,eq,1
+4f420c61| gnu bctarl- 26,eq,1
+4f421021| gnu bclrl- 26,eq,2
+4f421421| gnu bcctrl- 26,eq,2
+4f421461| gnu bctarl- 26,eq,2
+43420081| gnu bcl- 26,eq,0x2800
+43420083| gnu bcla- 26,eq,0x80
+4f430020| gnu bclr- 26,so
+4f430420| gnu bcctr- 26,so
+4f430460| gnu bctar- 26,so
+4f430820| gnu bclr- 26,so,1
+4f430c20| gnu bcctr- 26,so,1
+4f430c60| gnu bctar- 26,so,1
+4f431020| gnu bclr- 26,so,2
+4f431420| gnu bcctr- 26,so,2
+4f431460| gnu bctar- 26,so,2
+43430080| gnu bc- 26,so,0x282c
+43430082| gnu bca- 26,so,0x80
+4f430021| gnu bclrl- 26,so
+4f430421| gnu bcctrl- 26,so
+4f430461| gnu bctarl- 26,so
+4f430821| gnu bclrl- 26,so,1
+4f430c21| gnu bcctrl- 26,so,1
+4f430c61| gnu bctarl- 26,so,1
+4f431021| gnu bclrl- 26,so,2
+4f431421| gnu bcctrl- 26,so,2
+4f431461| gnu bctarl- 26,so,2
+43430081| gnu bcl- 26,so,0x2858
+43430083| gnu bcla- 26,so,0x80
+4f440020| gnu bclr- 26,4*cr1+lt
+4f440420| gnu bcctr- 26,4*cr1+lt
+4f440460| gnu bctar- 26,4*cr1+lt
+4f440820| gnu bclr- 26,4*cr1+lt,1
+4f440c20| gnu bcctr- 26,4*cr1+lt,1
+4f440c60| gnu bctar- 26,4*cr1+lt,1
+4f441020| gnu bclr- 26,4*cr1+lt,2
+4f441420| gnu bcctr- 26,4*cr1+lt,2
+4f441460| gnu bctar- 26,4*cr1+lt,2
+43440080| gnu bc- 26,4*cr1+lt,0x2884
+43440082| gnu bca- 26,4*cr1+lt,0x80
+4f440021| gnu bclrl- 26,4*cr1+lt
+4f440421| gnu bcctrl- 26,4*cr1+lt
+4f440461| gnu bctarl- 26,4*cr1+lt
+4f440821| gnu bclrl- 26,4*cr1+lt,1
+4f440c21| gnu bcctrl- 26,4*cr1+lt,1
+4f440c61| gnu bctarl- 26,4*cr1+lt,1
+4f441021| gnu bclrl- 26,4*cr1+lt,2
+4f441421| gnu bcctrl- 26,4*cr1+lt,2
+4f441461| gnu bctarl- 26,4*cr1+lt,2
+43440081| gnu bcl- 26,4*cr1+lt,0x28b0
+43440083| gnu bcla- 26,4*cr1+lt,0x80
+4f450020| gnu bclr- 26,4*cr1+gt
+4f450420| gnu bcctr- 26,4*cr1+gt
+4f450460| gnu bctar- 26,4*cr1+gt
+4f450820| gnu bclr- 26,4*cr1+gt,1
+4f450c20| gnu bcctr- 26,4*cr1+gt,1
+4f450c60| gnu bctar- 26,4*cr1+gt,1
+4f451020| gnu bclr- 26,4*cr1+gt,2
+4f451420| gnu bcctr- 26,4*cr1+gt,2
+4f451460| gnu bctar- 26,4*cr1+gt,2
+43450080| gnu bc- 26,4*cr1+gt,0x28dc
+43450082| gnu bca- 26,4*cr1+gt,0x80
+4f450021| gnu bclrl- 26,4*cr1+gt
+4f450421| gnu bcctrl- 26,4*cr1+gt
+4f450461| gnu bctarl- 26,4*cr1+gt
+4f450821| gnu bclrl- 26,4*cr1+gt,1
+4f450c21| gnu bcctrl- 26,4*cr1+gt,1
+4f450c61| gnu bctarl- 26,4*cr1+gt,1
+4f451021| gnu bclrl- 26,4*cr1+gt,2
+4f451421| gnu bcctrl- 26,4*cr1+gt,2
+4f451461| gnu bctarl- 26,4*cr1+gt,2
+43450081| gnu bcl- 26,4*cr1+gt,0x2908
+43450083| gnu bcla- 26,4*cr1+gt,0x80
+4f460020| gnu bclr- 26,4*cr1+eq
+4f460420| gnu bcctr- 26,4*cr1+eq
+4f460460| gnu bctar- 26,4*cr1+eq
+4f460820| gnu bclr- 26,4*cr1+eq,1
+4f460c20| gnu bcctr- 26,4*cr1+eq,1
+4f460c60| gnu bctar- 26,4*cr1+eq,1
+4f461020| gnu bclr- 26,4*cr1+eq,2
+4f461420| gnu bcctr- 26,4*cr1+eq,2
+4f461460| gnu bctar- 26,4*cr1+eq,2
+43460080| gnu bc- 26,4*cr1+eq,0x2934
+43460082| gnu bca- 26,4*cr1+eq,0x80
+4f460021| gnu bclrl- 26,4*cr1+eq
+4f460421| gnu bcctrl- 26,4*cr1+eq
+4f460461| gnu bctarl- 26,4*cr1+eq
+4f460821| gnu bclrl- 26,4*cr1+eq,1
+4f460c21| gnu bcctrl- 26,4*cr1+eq,1
+4f460c61| gnu bctarl- 26,4*cr1+eq,1
+4f461021| gnu bclrl- 26,4*cr1+eq,2
+4f461421| gnu bcctrl- 26,4*cr1+eq,2
+4f461461| gnu bctarl- 26,4*cr1+eq,2
+43460081| gnu bcl- 26,4*cr1+eq,0x2960
+43460083| gnu bcla- 26,4*cr1+eq,0x80
+4f470020| gnu bclr- 26,4*cr1+so
+4f470420| gnu bcctr- 26,4*cr1+so
+4f470460| gnu bctar- 26,4*cr1+so
+4f470820| gnu bclr- 26,4*cr1+so,1
+4f470c20| gnu bcctr- 26,4*cr1+so,1
+4f470c60| gnu bctar- 26,4*cr1+so,1
+4f471020| gnu bclr- 26,4*cr1+so,2
+4f471420| gnu bcctr- 26,4*cr1+so,2
+4f471460| gnu bctar- 26,4*cr1+so,2
+43470080| gnu bc- 26,4*cr1+so,0x298c
+43470082| gnu bca- 26,4*cr1+so,0x80
+4f470021| gnu bclrl- 26,4*cr1+so
+4f470421| gnu bcctrl- 26,4*cr1+so
+4f470461| gnu bctarl- 26,4*cr1+so
+4f470821| gnu bclrl- 26,4*cr1+so,1
+4f470c21| gnu bcctrl- 26,4*cr1+so,1
+4f470c61| gnu bctarl- 26,4*cr1+so,1
+4f471021| gnu bclrl- 26,4*cr1+so,2
+4f471421| gnu bcctrl- 26,4*cr1+so,2
+4f471461| gnu bctarl- 26,4*cr1+so,2
+43470081| gnu bcl- 26,4*cr1+so,0x29b8
+43470083| gnu bcla- 26,4*cr1+so,0x80
+4f600020| gnu bdzlr+
+4f600420| gnu bcctr+ 27,lt
+4f600460| gnu bdztar+
+4f600820| gnu bclr+ 27,lt,1
+4f600c20| gnu bcctr+ 27,lt,1
+4f600c60| gnu bctar+ 27,lt,1
+4f601020| gnu bclr+ 27,lt,2
+4f601420| gnu bcctr+ 27,lt,2
+4f601460| gnu bctar+ 27,lt,2
+43600080| gnu bdz+ 0x29e4
+43600082| gnu bdza+ 0x80
+4f600021| gnu bdzlrl+
+4f600421| gnu bcctrl+ 27,lt
+4f600461| gnu bdztarl+
+4f600821| gnu bclrl+ 27,lt,1
+4f600c21| gnu bcctrl+ 27,lt,1
+4f600c61| gnu bctarl+ 27,lt,1
+4f601021| gnu bclrl+ 27,lt,2
+4f601421| gnu bcctrl+ 27,lt,2
+4f601461| gnu bctarl+ 27,lt,2
+43600081| gnu bdzl+ 0x2a10
+43600083| gnu bdzla+ 0x80
+4f610020| gnu bclr+ 27,gt
+4f610420| gnu bcctr+ 27,gt
+4f610460| gnu bctar+ 27,gt
+4f610820| gnu bclr+ 27,gt,1
+4f610c20| gnu bcctr+ 27,gt,1
+4f610c60| gnu bctar+ 27,gt,1
+4f611020| gnu bclr+ 27,gt,2
+4f611420| gnu bcctr+ 27,gt,2
+4f611460| gnu bctar+ 27,gt,2
+43610080| gnu bc+ 27,gt,0x2a3c
+43610082| gnu bca+ 27,gt,0x80
+4f610021| gnu bclrl+ 27,gt
+4f610421| gnu bcctrl+ 27,gt
+4f610461| gnu bctarl+ 27,gt
+4f610821| gnu bclrl+ 27,gt,1
+4f610c21| gnu bcctrl+ 27,gt,1
+4f610c61| gnu bctarl+ 27,gt,1
+4f611021| gnu bclrl+ 27,gt,2
+4f611421| gnu bcctrl+ 27,gt,2
+4f611461| gnu bctarl+ 27,gt,2
+43610081| gnu bcl+ 27,gt,0x2a68
+43610083| gnu bcla+ 27,gt,0x80
+4f620020| gnu bclr+ 27,eq
+4f620420| gnu bcctr+ 27,eq
+4f620460| gnu bctar+ 27,eq
+4f620820| gnu bclr+ 27,eq,1
+4f620c20| gnu bcctr+ 27,eq,1
+4f620c60| gnu bctar+ 27,eq,1
+4f621020| gnu bclr+ 27,eq,2
+4f621420| gnu bcctr+ 27,eq,2
+4f621460| gnu bctar+ 27,eq,2
+43620080| gnu bc+ 27,eq,0x2a94
+43620082| gnu bca+ 27,eq,0x80
+4f620021| gnu bclrl+ 27,eq
+4f620421| gnu bcctrl+ 27,eq
+4f620461| gnu bctarl+ 27,eq
+4f620821| gnu bclrl+ 27,eq,1
+4f620c21| gnu bcctrl+ 27,eq,1
+4f620c61| gnu bctarl+ 27,eq,1
+4f621021| gnu bclrl+ 27,eq,2
+4f621421| gnu bcctrl+ 27,eq,2
+4f621461| gnu bctarl+ 27,eq,2
+43620081| gnu bcl+ 27,eq,0x2ac0
+43620083| gnu bcla+ 27,eq,0x80
+4f630020| gnu bclr+ 27,so
+4f630420| gnu bcctr+ 27,so
+4f630460| gnu bctar+ 27,so
+4f630820| gnu bclr+ 27,so,1
+4f630c20| gnu bcctr+ 27,so,1
+4f630c60| gnu bctar+ 27,so,1
+4f631020| gnu bclr+ 27,so,2
+4f631420| gnu bcctr+ 27,so,2
+4f631460| gnu bctar+ 27,so,2
+43630080| gnu bc+ 27,so,0x2aec
+43630082| gnu bca+ 27,so,0x80
+4f630021| gnu bclrl+ 27,so
+4f630421| gnu bcctrl+ 27,so
+4f630461| gnu bctarl+ 27,so
+4f630821| gnu bclrl+ 27,so,1
+4f630c21| gnu bcctrl+ 27,so,1
+4f630c61| gnu bctarl+ 27,so,1
+4f631021| gnu bclrl+ 27,so,2
+4f631421| gnu bcctrl+ 27,so,2
+4f631461| gnu bctarl+ 27,so,2
+43630081| gnu bcl+ 27,so,0x2b18
+43630083| gnu bcla+ 27,so,0x80
+4f640020| gnu bclr+ 27,4*cr1+lt
+4f640420| gnu bcctr+ 27,4*cr1+lt
+4f640460| gnu bctar+ 27,4*cr1+lt
+4f640820| gnu bclr+ 27,4*cr1+lt,1
+4f640c20| gnu bcctr+ 27,4*cr1+lt,1
+4f640c60| gnu bctar+ 27,4*cr1+lt,1
+4f641020| gnu bclr+ 27,4*cr1+lt,2
+4f641420| gnu bcctr+ 27,4*cr1+lt,2
+4f641460| gnu bctar+ 27,4*cr1+lt,2
+43640080| gnu bc+ 27,4*cr1+lt,0x2b44
+43640082| gnu bca+ 27,4*cr1+lt,0x80
+4f640021| gnu bclrl+ 27,4*cr1+lt
+4f640421| gnu bcctrl+ 27,4*cr1+lt
+4f640461| gnu bctarl+ 27,4*cr1+lt
+4f640821| gnu bclrl+ 27,4*cr1+lt,1
+4f640c21| gnu bcctrl+ 27,4*cr1+lt,1
+4f640c61| gnu bctarl+ 27,4*cr1+lt,1
+4f641021| gnu bclrl+ 27,4*cr1+lt,2
+4f641421| gnu bcctrl+ 27,4*cr1+lt,2
+4f641461| gnu bctarl+ 27,4*cr1+lt,2
+43640081| gnu bcl+ 27,4*cr1+lt,0x2b70
+43640083| gnu bcla+ 27,4*cr1+lt,0x80
+4f650020| gnu bclr+ 27,4*cr1+gt
+4f650420| gnu bcctr+ 27,4*cr1+gt
+4f650460| gnu bctar+ 27,4*cr1+gt
+4f650820| gnu bclr+ 27,4*cr1+gt,1
+4f650c20| gnu bcctr+ 27,4*cr1+gt,1
+4f650c60| gnu bctar+ 27,4*cr1+gt,1
+4f651020| gnu bclr+ 27,4*cr1+gt,2
+4f651420| gnu bcctr+ 27,4*cr1+gt,2
+4f651460| gnu bctar+ 27,4*cr1+gt,2
+43650080| gnu bc+ 27,4*cr1+gt,0x2b9c
+43650082| gnu bca+ 27,4*cr1+gt,0x80
+4f650021| gnu bclrl+ 27,4*cr1+gt
+4f650421| gnu bcctrl+ 27,4*cr1+gt
+4f650461| gnu bctarl+ 27,4*cr1+gt
+4f650821| gnu bclrl+ 27,4*cr1+gt,1
+4f650c21| gnu bcctrl+ 27,4*cr1+gt,1
+4f650c61| gnu bctarl+ 27,4*cr1+gt,1
+4f651021| gnu bclrl+ 27,4*cr1+gt,2
+4f651421| gnu bcctrl+ 27,4*cr1+gt,2
+4f651461| gnu bctarl+ 27,4*cr1+gt,2
+43650081| gnu bcl+ 27,4*cr1+gt,0x2bc8
+43650083| gnu bcla+ 27,4*cr1+gt,0x80
+4f660020| gnu bclr+ 27,4*cr1+eq
+4f660420| gnu bcctr+ 27,4*cr1+eq
+4f660460| gnu bctar+ 27,4*cr1+eq
+4f660820| gnu bclr+ 27,4*cr1+eq,1
+4f660c20| gnu bcctr+ 27,4*cr1+eq,1
+4f660c60| gnu bctar+ 27,4*cr1+eq,1
+4f661020| gnu bclr+ 27,4*cr1+eq,2
+4f661420| gnu bcctr+ 27,4*cr1+eq,2
+4f661460| gnu bctar+ 27,4*cr1+eq,2
+43660080| gnu bc+ 27,4*cr1+eq,0x2bf4
+43660082| gnu bca+ 27,4*cr1+eq,0x80
+4f660021| gnu bclrl+ 27,4*cr1+eq
+4f660421| gnu bcctrl+ 27,4*cr1+eq
+4f660461| gnu bctarl+ 27,4*cr1+eq
+4f660821| gnu bclrl+ 27,4*cr1+eq,1
+4f660c21| gnu bcctrl+ 27,4*cr1+eq,1
+4f660c61| gnu bctarl+ 27,4*cr1+eq,1
+4f661021| gnu bclrl+ 27,4*cr1+eq,2
+4f661421| gnu bcctrl+ 27,4*cr1+eq,2
+4f661461| gnu bctarl+ 27,4*cr1+eq,2
+43660081| gnu bcl+ 27,4*cr1+eq,0x2c20
+43660083| gnu bcla+ 27,4*cr1+eq,0x80
+4f670020| gnu bclr+ 27,4*cr1+so
+4f670420| gnu bcctr+ 27,4*cr1+so
+4f670460| gnu bctar+ 27,4*cr1+so
+4f670820| gnu bclr+ 27,4*cr1+so,1
+4f670c20| gnu bcctr+ 27,4*cr1+so,1
+4f670c60| gnu bctar+ 27,4*cr1+so,1
+4f671020| gnu bclr+ 27,4*cr1+so,2
+4f671420| gnu bcctr+ 27,4*cr1+so,2
+4f671460| gnu bctar+ 27,4*cr1+so,2
+43670080| gnu bc+ 27,4*cr1+so,0x2c4c
+43670082| gnu bca+ 27,4*cr1+so,0x80
+4f670021| gnu bclrl+ 27,4*cr1+so
+4f670421| gnu bcctrl+ 27,4*cr1+so
+4f670461| gnu bctarl+ 27,4*cr1+so
+4f670821| gnu bclrl+ 27,4*cr1+so,1
+4f670c21| gnu bcctrl+ 27,4*cr1+so,1
+4f670c61| gnu bctarl+ 27,4*cr1+so,1
+4f671021| gnu bclrl+ 27,4*cr1+so,2
+4f671421| gnu bcctrl+ 27,4*cr1+so,2
+4f671461| gnu bctarl+ 27,4*cr1+so,2
+43670081| gnu bcl+ 27,4*cr1+so,0x2c78
+43670083| gnu bcla+ 27,4*cr1+so,0x80
diff --git a/ppc64/ppc64map/map.go b/ppc64/ppc64map/map.go
index 80e4be7..482e6c7 100644
--- a/ppc64/ppc64map/map.go
+++ b/ppc64/ppc64map/map.go
@@ -409,10 +409,20 @@
case "RA", "RB", "RC", "RS", "RSp", "RT", "RTp":
typ = asm.TypeReg
case "BT", "BA", "BB", "BC", "BI":
- typ = asm.TypeCondRegBit
+ if strings.HasPrefix(inst.Op, "mtfs") {
+ // mtfsb[01] instructions use BT, but they specify fields in the fpscr.
+ typ = asm.TypeImmUnsigned
+ } else {
+ typ = asm.TypeCondRegBit
+ }
case "BF", "BFA":
- typ = asm.TypeCondRegField
- case "FRA", "FRB", "FRBp", "FRC", "FRS", "FRSp", "FRT", "FRTp":
+ if strings.HasPrefix(inst.Op, "mtfs") {
+ // mtfsfi[.] instructions use BF, but they specify fields in the fpscr.
+ typ = asm.TypeImmUnsigned
+ } else {
+ typ = asm.TypeCondRegField
+ }
+ case "FRA", "FRB", "FRBp", "FRC", "FRS", "FRSp", "FRT", "FRTp", "FRAp":
typ = asm.TypeFPReg
case "XA", "XB", "XC", "XS", "XT": // 5-bit, split field
typ = asm.TypeVecSReg
diff --git a/ppc64/ppc64util/util.go b/ppc64/ppc64util/util.go
new file mode 100644
index 0000000..df903fb
--- /dev/null
+++ b/ppc64/ppc64util/util.go
@@ -0,0 +1,126 @@
+// Copyright 2021 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build ignore
+// Generate interesting test cases from ppc64 objdump via
+// go run util.go
+//
+// This requires powerpc64le-linux-gnu-gcc and powerpc64le-linux-gnu-objdump be in
+// the PATH this command is run.
+//
+// These tools can be acquired from the IBM advance toolchain for amd64 hosts too.
+
+package main
+
+import (
+ "bufio"
+ "fmt"
+ "io"
+ "os"
+ "os/exec"
+ "regexp"
+ "strings"
+)
+
+// Generator for branch on spr (bclr, bctar, bcctr)
+func emitBSpr(bo, bi, l uint32, out io.Writer) {
+ var insn [3]uint32 = [3]uint32{19<<26 | 16<<1, 19<<26 | 528<<1, 19<<26 | 560<<1}
+ for bh := uint32(0); bh < 3; bh++ {
+ for _, m := range insn {
+ m |= bo << 21
+ m |= bi << 16
+ m |= bh << 11
+ m |= l << 0
+ fmt.Fprintf(out, "\t.long 0x%08x\n", m)
+ }
+ }
+}
+
+// Generator for bc
+func emitBc(bo, bi, l uint32, out io.Writer) {
+ for aa := uint32(0); aa < 2; aa++ {
+ m := uint32(16 << 26)
+ m |= bo << 21
+ m |= bi << 16
+ m |= l << 0
+ m |= aa << 1
+ m |= 128
+ fmt.Fprintf(out, "\t.long 0x%08x\n", m)
+ }
+}
+
+// Generator all interesting conditional branch type instructions
+func emitBranches(out io.Writer) {
+ fmt.Fprintf(out, ".text\n")
+ for bo := 0; bo < 0x20; bo++ {
+ // objdump behaves strangely on some cases when a z bit is set.
+ // Ignore these, they should never show up in correct code.
+ if bo&0x15 == 0x1 {
+ // skip 0b0.0.z cases where z != 0
+ continue
+ }
+ if bo&0x14 == 0x14 && bo != 14 {
+ // skip 0b1z1zz cases where z != 0
+ continue
+ }
+ // skip at == 1 cases. objdump doesn't handle these well either.
+ reserved_at := map[int]bool{5: true, 13: true, 17: true, 19: true}
+ if reserved_at[bo] {
+ continue
+ }
+ // only test cr0/cr1 bits. cr2-cr7 cases are basically identical to cr1.
+ for bi := 0; bi < 0x8; bi++ {
+ for l := 0; l < 2; l++ {
+ emitBSpr(uint32(bo), uint32(bi), uint32(l), out)
+ emitBc(uint32(bo), uint32(bi), uint32(l), out)
+ }
+ }
+ }
+}
+
+// Emit a test file using the generator called name.txt
+func genOutput(name, tcPfx string, generator func(io.Writer)) {
+ // Generate object code from gcc
+ cmd := exec.Command(tcPfx+"gcc", "-c", "-mbig", "-mcpu=power9", "-x", "assembler-with-cpp", "-o", name+".o", "-")
+ input, _ := cmd.StdinPipe()
+ go func() {
+ defer input.Close()
+ generator(input.(io.Writer))
+ }()
+ if cmd.Run() != nil {
+ fmt.Printf("Failed running gcc for: %s\n", name)
+ return
+ }
+ defer os.Remove(name + ".o")
+ cmd = exec.Command(tcPfx+"objdump", "-d", name+".o")
+
+ // Run objdump and parse output into test format
+ output, _ := cmd.StdoutPipe()
+ defer output.Close()
+ scanner := bufio.NewScanner(output)
+ spacere := regexp.MustCompile("[[:space:]]+")
+ outf, _ := os.Create(name + ".txt")
+ defer outf.Close()
+ if cmd.Start() != nil {
+ fmt.Printf("Failed running objdump for: %s\n", name)
+ return
+ }
+
+ for scanner.Scan() {
+ ln := spacere.Split(scanner.Text(), -1)
+ if len(ln) >= 7 {
+ opc := strings.Join(ln[2:6], "")
+ dec := strings.Join(ln[6:], " ")
+ fmt.Fprintf(outf, "%s|\tgnu\t%s\n", opc, dec)
+ }
+
+ }
+ cmd.Wait()
+}
+
+// Produce generated test outputs. This should be run every so often with
+// new versions of objdump to ensure we stay up to date.
+func main() {
+ genOutput("decode_branch", "powerpc64le-linux-gnu-", emitBranches)
+}