From a27d7436adc73d1ce6abdd303148275391696061 Mon Sep 17 00:00:00 2001 From: Maxim Poliakovski Date: Fri, 31 Jan 2020 21:53:02 +0100 Subject: [PATCH] Fix ppctests.cpp and add more instructions. --- cpu/ppc/test/genppctests.py | 76 +++++- cpu/ppc/test/instruction_tests_console.txt | 10 - cpu/ppc/test/ppcinttests.csv | 268 +++++++++++++++++++++ cpu/ppc/test/ppctests.cpp | 12 +- 4 files changed, 349 insertions(+), 17 deletions(-) diff --git a/cpu/ppc/test/genppctests.py b/cpu/ppc/test/genppctests.py index 9ada81e..e734944 100644 --- a/cpu/ppc/test/genppctests.py +++ b/cpu/ppc/test/genppctests.py @@ -69,6 +69,80 @@ def gen_ppc_opcode(opc_str, imm): return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x1A << 1) elif opc_str == "CNTLZW.": return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x1A << 1) + 1 + elif opc_str == "DIVW": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1EB << 1) + elif opc_str == "DIVW.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1EB << 1) + 1 + elif opc_str == "DIVWO": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x3EB << 1) + elif opc_str == "DIVWO.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x3EB << 1) + 1 + elif opc_str == "DIVWU": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1CB << 1) + elif opc_str == "DIVWU.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1CB << 1) + 1 + elif opc_str == "DIVWUO": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x3CB << 1) + elif opc_str == "DIVWUO.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x3CB << 1) + 1 + elif opc_str == "EQV": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x11C << 1) + elif opc_str == "EQV.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x11C << 1) + 1 + elif opc_str == "EXTSB": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x3BA << 1) + elif opc_str == "EXTSB.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x3BA << 1) + 1 + elif opc_str == "EXTSH": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x39A << 1) + elif opc_str == "EXTSH.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x39A << 1) + 1 + elif opc_str == "MULHW": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x4B << 1) + elif opc_str == "MULHW.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x4B << 1) + 1 + elif opc_str == "MULHWU": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0xB << 1) + elif opc_str == "MULHWU.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0xB << 1) + 1 + elif opc_str == "MULLI": + return (0x07 << 26) + (3 << 21) + (3 << 16) + (imm & 0xFFFF) + elif opc_str == "MULLW": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0xEB << 1) + elif opc_str == "MULLW.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0xEB << 1) + 1 + elif opc_str == "MULLWO": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x2EB << 1) + elif opc_str == "MULLWO.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x2EB << 1) + 1 + elif opc_str == "NAND": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1DC << 1) + elif opc_str == "NAND.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1DC << 1) + 1 + elif opc_str == "NEG": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x68 << 1) + elif opc_str == "NEG.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x68 << 1) + 1 + elif opc_str == "NEGO": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x268 << 1) + elif opc_str == "NEGO.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (0x268 << 1) + 1 + elif opc_str == "NOR": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x7C << 1) + elif opc_str == "NOR.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x7C << 1) + 1 + elif opc_str == "OR": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1BC << 1) + elif opc_str == "OR.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x1BC << 1) + 1 + elif opc_str == "ORC": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x19C << 1) + elif opc_str == "ORC.": + return (0x1F << 26) + (3 << 21) + (3 << 16) + (4 << 11) + (0x19C << 1) + 1 + elif opc_str == "ORI": + return (0x18 << 26) + (3 << 21) + (3 << 16) + (imm & 0xFFFF) + elif opc_str == "ORIS": + return (0x18 << 26) + (3 << 21) + (3 << 16) + (imm & 0xFFFF) def find_imm(line): @@ -126,5 +200,5 @@ with open("instruction_tests_console.txt", "r") as in_file: out_file.write("\n") lineno += 1 - if lineno > 266: + if lineno > 534: break diff --git a/cpu/ppc/test/instruction_tests_console.txt b/cpu/ppc/test/instruction_tests_console.txt index 126a3d5..040141a 100644 --- a/cpu/ppc/test/instruction_tests_console.txt +++ b/cpu/ppc/test/instruction_tests_console.txt @@ -265,7 +265,6 @@ CNTLZW. :: rD 0x00000003 | rA 0x10000000 | XER: 0x00000000 | CR: 0x40000000 CNTLZW. :: rD 0x00000002 | rA 0x20000000 | XER: 0x00000000 | CR: 0x40000000 CNTLZW. :: rD 0x00000001 | rA 0x40000000 | XER: 0x00000000 | CR: 0x40000000 CNTLZW. :: rD 0x00000000 | rA 0x80000000 | XER: 0x00000000 | CR: 0x20000000 -DIVW Variants DIVW :: rD 0x00000000 | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 DIVW :: rD 0x00000000 | rA 0x7FFFFFFF | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 DIVW :: rD 0x80000001 | rA 0x7FFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x00000000 @@ -347,7 +346,6 @@ DIVWUO. :: rD 0x00000006 | rA 0x000001A4 | rB 0x00000045 | XER: 0x00000000 | CR DIVWUO. :: rD 0x00000002 | rA 0xFFFFFFFF | rB 0x7FFFFFFF | XER: 0x00000000 | CR: 0x40000000 DIVWUO. :: rD 0x00000001 | rA 0xFFFFFFFF | rB 0x80000000 | XER: 0x00000000 | CR: 0x40000000 DIVWUO. :: rD 0x00000001 | rA 0xFFFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x40000000 -EQV Variants EQV :: rD 0xFFFFFFFF | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 EQV :: rD 0xFFFFFFFF | rA 0x00000001 | rB 0x00000001 | XER: 0x00000000 | CR: 0x00000000 EQV :: rD 0xFFFFFFFF | rA 0x7FFFFFFF | rB 0x7FFFFFFF | XER: 0x00000000 | CR: 0x00000000 @@ -356,7 +354,6 @@ EQV. :: rD 0xFFFFFFFF | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR EQV. :: rD 0xFFFFFFFF | rA 0x00000001 | rB 0x00000001 | XER: 0x00000000 | CR: 0x80000000 EQV. :: rD 0xFFFFFFFF | rA 0x7FFFFFFF | rB 0x7FFFFFFF | XER: 0x00000000 | CR: 0x80000000 EQV. :: rD 0xFFFFFFFF | rA 0xFFFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x80000000 -EXTSB Variants EXTSB :: rD 0x00000000 | rA 0x00000000 | XER: 0x00000000 | CR: 0x00000000 EXTSB :: rD 0x00000001 | rA 0x00000001 | XER: 0x00000000 | CR: 0x00000000 EXTSB :: rD 0xFFFFFFFF | rA 0x7FFFFFFF | XER: 0x00000000 | CR: 0x00000000 @@ -377,7 +374,6 @@ EXTSH. :: rD 0x00000001 | rA 0x00000001 | XER: 0x00000000 | CR: 0x40000000 EXTSH. :: rD 0xFFFFFFFF | rA 0x7FFFFFFF | XER: 0x00000000 | CR: 0x80000000 EXTSH. :: rD 0x00000000 | rA 0x80000000 | XER: 0x00000000 | CR: 0x20000000 EXTSH. :: rD 0xFFFFFFFF | rA 0xFFFFFFFF | XER: 0x00000000 | CR: 0x80000000 -MULHW Variants MULHW :: rD 0x00000000 | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 MULHW :: rD 0x00000000 | rA 0x00000032 | rB 0x00000032 | XER: 0x00000000 | CR: 0x00000000 MULHW :: rD 0x00000000 | rA 0x00007FFF | rB 0x00007FFF | XER: 0x00000000 | CR: 0x00000000 @@ -406,7 +402,6 @@ MULHWU. :: rD 0x00000000 | rA 0x0000FFFF | rB 0x0000FFFF | XER: 0x00000000 | CR MULHWU. :: rD 0x3FFFFFFF | rA 0x7FFFFFFF | rB 0x7FFFFFFF | XER: 0x00000000 | CR: 0x40000000 MULHWU. :: rD 0x40000000 | rA 0x80000000 | rB 0x80000000 | XER: 0x00000000 | CR: 0x40000000 MULHWU. :: rD 0xFFFFFFFE | rA 0xFFFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x80000000 -MULLI MULLI :: rD 0x00000000 | rA 0x00000000 | imm 0x00000000 | XER: 0x00000000 | CR: 0x00000000 MULLI :: rD 0x000009C4 | rA 0x00000032 | imm 0x00000032 | XER: 0x00000000 | CR: 0x00000000 MULLI :: rD 0x3FFF0001 | rA 0x00007FFF | imm 0x00007FFF | XER: 0x00000000 | CR: 0x00000000 @@ -414,7 +409,6 @@ MULLI :: rD 0x7FFE8001 | rA 0x0000FFFF | imm 0x00007FFF | XER: 0x00000000 | C MULLI :: rD 0x7FFF8001 | rA 0x7FFFFFFF | imm 0x00007FFF | XER: 0x00000000 | CR: 0x00000000 MULLI :: rD 0x80000000 | rA 0x80000000 | imm 0x00007FFF | XER: 0x00000000 | CR: 0x00000000 MULLI :: rD 0xFFFF8001 | rA 0xFFFFFFFF | imm 0x00007FFF | XER: 0x00000000 | CR: 0x00000000 -MULLW Variants MULLW :: rD 0x00000000 | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 MULLW :: rD 0x000009C4 | rA 0x00000032 | rB 0x00000032 | XER: 0x00000000 | CR: 0x00000000 MULLW :: rD 0x3FFF0001 | rA 0x00007FFF | rB 0x00007FFF | XER: 0x00000000 | CR: 0x00000000 @@ -443,7 +437,6 @@ MULLWO. :: rD 0xFFFE0001 | rA 0x0000FFFF | rB 0x0000FFFF | XER: 0xC0000000 | CR MULLWO. :: rD 0x00000001 | rA 0x7FFFFFFF | rB 0x7FFFFFFF | XER: 0xC0000000 | CR: 0x50000000 MULLWO. :: rD 0x00000000 | rA 0x80000000 | rB 0x80000000 | XER: 0xC0000000 | CR: 0x30000000 MULLWO. :: rD 0x00000001 | rA 0xFFFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x40000000 -NAND Variants NAND :: rD 0xFFFFFFFF | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 NAND :: rD 0xFFFFFFFF | rA 0x00000000 | rB 0x00000001 | XER: 0x00000000 | CR: 0x00000000 NAND :: rD 0xFFFFFFFF | rA 0x00000001 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 @@ -464,7 +457,6 @@ NAND. :: rD 0xFFFF0000 | rA 0x0000FFFF | rB 0x0000FFFF | XER: 0x00000000 | CR NAND. :: rD 0x80000000 | rA 0x7FFFFFFF | rB 0x7FFFFFFF | XER: 0x00000000 | CR: 0x80000000 NAND. :: rD 0x7FFFFFFF | rA 0x80000000 | rB 0x80000000 | XER: 0x00000000 | CR: 0x40000000 NAND. :: rD 0x00000000 | rA 0xFFFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x20000000 -NEG Variants NEG :: rD 0x00000000 | rA 0x00000000 | XER: 0x00000000 | CR: 0x00000000 NEG :: rD 0xFFFFFFFF | rA 0x00000001 | XER: 0x00000000 | CR: 0x00000000 NEG :: rD 0x80000001 | rA 0x7FFFFFFF | XER: 0x00000000 | CR: 0x00000000 @@ -485,7 +477,6 @@ NEGO. :: rD 0xFFFFFFFF | rA 0x00000001 | XER: 0x00000000 | CR: 0x80000000 NEGO. :: rD 0x80000001 | rA 0x7FFFFFFF | XER: 0x00000000 | CR: 0x80000000 NEGO. :: rD 0x80000000 | rA 0x80000000 | XER: 0xC0000000 | CR: 0x90000000 NEGO. :: rD 0x00000001 | rA 0xFFFFFFFF | XER: 0x00000000 | CR: 0x40000000 -NOR Variants NOR :: rD 0xFFFFFFFF | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 NOR :: rD 0xFFFFFFFE | rA 0x00000000 | rB 0x00000001 | XER: 0x00000000 | CR: 0x00000000 NOR :: rD 0xFFFFFFFE | rA 0x00000001 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 @@ -500,7 +491,6 @@ NOR. :: rD 0xFFFFFFFE | rA 0x00000001 | rB 0x00000001 | XER: 0x00000000 | CR NOR. :: rD 0x80000000 | rA 0x7FFFFFFF | rB 0x7FFFFFFF | XER: 0x00000000 | CR: 0x80000000 NOR. :: rD 0x7FFFFFFF | rA 0x80000000 | rB 0x80000000 | XER: 0x00000000 | CR: 0x40000000 NOR. :: rD 0x00000000 | rA 0xFFFFFFFF | rB 0xFFFFFFFF | XER: 0x00000000 | CR: 0x20000000 -OR Variants OR :: rD 0x00000000 | rA 0x00000000 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 OR :: rD 0x00000001 | rA 0x00000000 | rB 0x00000001 | XER: 0x00000000 | CR: 0x00000000 OR :: rD 0x00000001 | rA 0x00000001 | rB 0x00000000 | XER: 0x00000000 | CR: 0x00000000 diff --git a/cpu/ppc/test/ppcinttests.csv b/cpu/ppc/test/ppcinttests.csv index a5ac3c0..683c2f4 100644 --- a/cpu/ppc/test/ppcinttests.csv +++ b/cpu/ppc/test/ppcinttests.csv @@ -265,3 +265,271 @@ CNTLZW.,0x7C630035,rD=0x00000003,rA=0x10000000,XER=0x00000000,CR=0x40000000 CNTLZW.,0x7C630035,rD=0x00000002,rA=0x20000000,XER=0x00000000,CR=0x40000000 CNTLZW.,0x7C630035,rD=0x00000001,rA=0x40000000,XER=0x00000000,CR=0x40000000 CNTLZW.,0x7C630035,rD=0x00000000,rA=0x80000000,XER=0x00000000,CR=0x20000000 +DIVW,0x7C6323D6,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x80000001,rA=0x7FFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0xFFFFFFFF,rA=0x80000000,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000000,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000000,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x00000000 +DIVW,0x7C6323D6,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVW.,0x7C6323D7,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +DIVW.,0x7C6323D7,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0x00000000,CR=0x20000000 +DIVW.,0x7C6323D7,rD=0xFFFFFFFF,rA=0x80000000,rB=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +DIVW.,0x7C6323D7,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x20000000 +DIVW.,0x7C6323D7,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x40000000 +DIVW.,0x7C6323D7,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x40000000 +DIVW.,0x7C6323D7,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x40000000 +DIVW.,0x7C6323D7,rD=0x00000000,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x20000000 +DIVW.,0x7C6323D7,rD=0x00000000,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x20000000 +DIVW.,0x7C6323D7,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +DIVWO,0x7C6327D6,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0xC0000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0xC0000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0xFFFFFFFF,rA=0x80000000,rB=0xFFFFFFFF,XER=0xC0000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000000,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000000,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x00000000 +DIVWO,0x7C6327D6,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWO.,0x7C6327D7,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0xC0000000,CR=0x30000000 +DIVWO.,0x7C6327D7,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0xC0000000,CR=0x30000000 +DIVWO.,0x7C6327D7,rD=0xFFFFFFFF,rA=0x80000000,rB=0xFFFFFFFF,XER=0xC0000000,CR=0x90000000 +DIVWO.,0x7C6327D7,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x20000000 +DIVWO.,0x7C6327D7,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x40000000 +DIVWO.,0x7C6327D7,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x40000000 +DIVWO.,0x7C6327D7,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x40000000 +DIVWO.,0x7C6327D7,rD=0x00000000,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x20000000 +DIVWO.,0x7C6327D7,rD=0x00000000,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x20000000 +DIVWO.,0x7C6327D7,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +DIVWU,0x7C632396,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000000,rA=0x80000000,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000002,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000001,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x00000000 +DIVWU,0x7C632396,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWU.,0x7C632397,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +DIVWU.,0x7C632397,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0x00000000,CR=0x20000000 +DIVWU.,0x7C632397,rD=0x00000000,rA=0x80000000,rB=0xFFFFFFFF,XER=0x00000000,CR=0x20000000 +DIVWU.,0x7C632397,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x20000000 +DIVWU.,0x7C632397,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x40000000 +DIVWU.,0x7C632397,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x40000000 +DIVWU.,0x7C632397,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x40000000 +DIVWU.,0x7C632397,rD=0x00000002,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x40000000 +DIVWU.,0x7C632397,rD=0x00000001,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x40000000 +DIVWU.,0x7C632397,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +DIVWUO,0x7C632796,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0xC0000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0xC0000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000000,rA=0x80000000,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000002,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000001,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x00000000 +DIVWUO,0x7C632796,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +DIVWUO.,0x7C632797,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0xC0000000,CR=0x30000000 +DIVWUO.,0x7C632797,rD=0x00000000,rA=0x7FFFFFFF,rB=0x00000000,XER=0xC0000000,CR=0x30000000 +DIVWUO.,0x7C632797,rD=0x00000000,rA=0x80000000,rB=0xFFFFFFFF,XER=0x00000000,CR=0x20000000 +DIVWUO.,0x7C632797,rD=0x00000000,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x20000000 +DIVWUO.,0x7C632797,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x40000000 +DIVWUO.,0x7C632797,rD=0x00000005,rA=0x0000000A,rB=0x00000002,XER=0x00000000,CR=0x40000000 +DIVWUO.,0x7C632797,rD=0x00000006,rA=0x000001A4,rB=0x00000045,XER=0x00000000,CR=0x40000000 +DIVWUO.,0x7C632797,rD=0x00000002,rA=0xFFFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x40000000 +DIVWUO.,0x7C632797,rD=0x00000001,rA=0xFFFFFFFF,rB=0x80000000,XER=0x00000000,CR=0x40000000 +DIVWUO.,0x7C632797,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +EQV,0x7C632238,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +EQV,0x7C632238,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +EQV,0x7C632238,rD=0xFFFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +EQV,0x7C632238,rD=0xFFFFFFFF,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +EQV.,0x7C632239,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x80000000 +EQV.,0x7C632239,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x80000000 +EQV.,0x7C632239,rD=0xFFFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +EQV.,0x7C632239,rD=0xFFFFFFFF,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +EXTSB,0x7C630774,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +EXTSB,0x7C630774,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +EXTSB,0x7C630774,rD=0xFFFFFFFF,rA=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +EXTSB,0x7C630774,rD=0x00000000,rA=0x80000000,XER=0x00000000,CR=0x00000000 +EXTSB,0x7C630774,rD=0xFFFFFFFF,rA=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +EXTSB.,0x7C630775,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x20000000 +EXTSB.,0x7C630775,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x40000000 +EXTSB.,0x7C630775,rD=0xFFFFFFFF,rA=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +EXTSB.,0x7C630775,rD=0x00000000,rA=0x80000000,XER=0x00000000,CR=0x20000000 +EXTSB.,0x7C630775,rD=0xFFFFFFFF,rA=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +EXTSH,0x7C630734,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +EXTSH,0x7C630734,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +EXTSH,0x7C630734,rD=0xFFFFFFFF,rA=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +EXTSH,0x7C630734,rD=0x00000000,rA=0x80000000,XER=0x00000000,CR=0x00000000 +EXTSH,0x7C630734,rD=0xFFFFFFFF,rA=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +EXTSH.,0x7C630735,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x20000000 +EXTSH.,0x7C630735,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x40000000 +EXTSH.,0x7C630735,rD=0xFFFFFFFF,rA=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +EXTSH.,0x7C630735,rD=0x00000000,rA=0x80000000,XER=0x00000000,CR=0x20000000 +EXTSH.,0x7C630735,rD=0xFFFFFFFF,rA=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +MULHW,0x7C632096,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +MULHW,0x7C632096,rD=0x00000000,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x00000000 +MULHW,0x7C632096,rD=0x00000000,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x00000000 +MULHW,0x7C632096,rD=0x00000000,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x00000000 +MULHW,0x7C632096,rD=0x3FFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +MULHW,0x7C632096,rD=0x40000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +MULHW,0x7C632096,rD=0x00000000,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +MULHW.,0x7C632097,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +MULHW.,0x7C632097,rD=0x00000000,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x20000000 +MULHW.,0x7C632097,rD=0x00000000,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x20000000 +MULHW.,0x7C632097,rD=0x00000000,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x20000000 +MULHW.,0x7C632097,rD=0x3FFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x40000000 +MULHW.,0x7C632097,rD=0x40000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x40000000 +MULHW.,0x7C632097,rD=0x00000000,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x20000000 +MULHWU,0x7C632016,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +MULHWU,0x7C632016,rD=0x00000000,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x00000000 +MULHWU,0x7C632016,rD=0x00000000,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x00000000 +MULHWU,0x7C632016,rD=0x00000000,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x00000000 +MULHWU,0x7C632016,rD=0x3FFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +MULHWU,0x7C632016,rD=0x40000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +MULHWU,0x7C632016,rD=0xFFFFFFFE,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +MULHWU.,0x7C632017,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +MULHWU.,0x7C632017,rD=0x00000000,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x20000000 +MULHWU.,0x7C632017,rD=0x00000000,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x20000000 +MULHWU.,0x7C632017,rD=0x00000000,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x20000000 +MULHWU.,0x7C632017,rD=0x3FFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x40000000 +MULHWU.,0x7C632017,rD=0x40000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x40000000 +MULHWU.,0x7C632017,rD=0xFFFFFFFE,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +MULLI,0x1C630000,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +MULLI,0x1C630032,rD=0x000009C4,rA=0x00000032,XER=0x00000000,CR=0x00000000 +MULLI,0x1C637FFF,rD=0x3FFF0001,rA=0x00007FFF,XER=0x00000000,CR=0x00000000 +MULLI,0x1C637FFF,rD=0x7FFE8001,rA=0x0000FFFF,XER=0x00000000,CR=0x00000000 +MULLI,0x1C637FFF,rD=0x7FFF8001,rA=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +MULLI,0x1C637FFF,rD=0x80000000,rA=0x80000000,XER=0x00000000,CR=0x00000000 +MULLI,0x1C637FFF,rD=0xFFFF8001,rA=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0x000009C4,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0x3FFF0001,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0xFFFE0001,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0x00000001,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0x00000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +MULLW,0x7C6321D6,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +MULLW.,0x7C6321D7,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +MULLW.,0x7C6321D7,rD=0x000009C4,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x40000000 +MULLW.,0x7C6321D7,rD=0x3FFF0001,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x40000000 +MULLW.,0x7C6321D7,rD=0xFFFE0001,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x80000000 +MULLW.,0x7C6321D7,rD=0x00000001,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x40000000 +MULLW.,0x7C6321D7,rD=0x00000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x20000000 +MULLW.,0x7C6321D7,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +MULLWO,0x7C6325D6,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +MULLWO,0x7C6325D6,rD=0x000009C4,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x00000000 +MULLWO,0x7C6325D6,rD=0x3FFF0001,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x00000000 +MULLWO,0x7C6325D6,rD=0xFFFE0001,rA=0x0000FFFF,rB=0x0000FFFF,XER=0xC0000000,CR=0x00000000 +MULLWO,0x7C6325D6,rD=0x00000001,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0xC0000000,CR=0x00000000 +MULLWO,0x7C6325D6,rD=0x00000000,rA=0x80000000,rB=0x80000000,XER=0xC0000000,CR=0x00000000 +MULLWO,0x7C6325D6,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +MULLWO.,0x7C6325D7,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +MULLWO.,0x7C6325D7,rD=0x000009C4,rA=0x00000032,rB=0x00000032,XER=0x00000000,CR=0x40000000 +MULLWO.,0x7C6325D7,rD=0x3FFF0001,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x40000000 +MULLWO.,0x7C6325D7,rD=0xFFFE0001,rA=0x0000FFFF,rB=0x0000FFFF,XER=0xC0000000,CR=0x90000000 +MULLWO.,0x7C6325D7,rD=0x00000001,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0xC0000000,CR=0x50000000 +MULLWO.,0x7C6325D7,rD=0x00000000,rA=0x80000000,rB=0x80000000,XER=0xC0000000,CR=0x30000000 +MULLWO.,0x7C6325D7,rD=0x00000001,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +NAND,0x7C6323B8,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0xFFFFFFFE,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0xFFFF8000,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0xFFFF7FFF,rA=0x00008000,rB=0x00008000,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0xFFFF0000,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0x80000000,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0x7FFFFFFF,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +NAND,0x7C6323B8,rD=0x00000000,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +NAND.,0x7C6323B9,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0xFFFFFFFE,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0xFFFF8000,rA=0x00007FFF,rB=0x00007FFF,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0xFFFF7FFF,rA=0x00008000,rB=0x00008000,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0xFFFF0000,rA=0x0000FFFF,rB=0x0000FFFF,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0x80000000,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +NAND.,0x7C6323B9,rD=0x7FFFFFFF,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x40000000 +NAND.,0x7C6323B9,rD=0x00000000,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x20000000 +NEG,0x7C6300D0,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +NEG,0x7C6300D0,rD=0xFFFFFFFF,rA=0x00000001,XER=0x00000000,CR=0x00000000 +NEG,0x7C6300D0,rD=0x80000001,rA=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +NEG,0x7C6300D0,rD=0x80000000,rA=0x80000000,XER=0x00000000,CR=0x00000000 +NEG,0x7C6300D0,rD=0x00000001,rA=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +NEG.,0x7C6300D1,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x20000000 +NEG.,0x7C6300D1,rD=0xFFFFFFFF,rA=0x00000001,XER=0x00000000,CR=0x80000000 +NEG.,0x7C6300D1,rD=0x80000001,rA=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +NEG.,0x7C6300D1,rD=0x80000000,rA=0x80000000,XER=0x00000000,CR=0x80000000 +NEG.,0x7C6300D1,rD=0x00000001,rA=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +NEGO,0x7C6304D0,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +NEGO,0x7C6304D0,rD=0xFFFFFFFF,rA=0x00000001,XER=0x00000000,CR=0x00000000 +NEGO,0x7C6304D0,rD=0x80000001,rA=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +NEGO,0x7C6304D0,rD=0x80000000,rA=0x80000000,XER=0xC0000000,CR=0x00000000 +NEGO,0x7C6304D0,rD=0x00000001,rA=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +NEGO.,0x7C6304D1,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x20000000 +NEGO.,0x7C6304D1,rD=0xFFFFFFFF,rA=0x00000001,XER=0x00000000,CR=0x80000000 +NEGO.,0x7C6304D1,rD=0x80000001,rA=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +NEGO.,0x7C6304D1,rD=0x80000000,rA=0x80000000,XER=0xC0000000,CR=0x90000000 +NEGO.,0x7C6304D1,rD=0x00000001,rA=0xFFFFFFFF,XER=0x00000000,CR=0x40000000 +NOR,0x7C6320F8,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +NOR,0x7C6320F8,rD=0xFFFFFFFE,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +NOR,0x7C6320F8,rD=0xFFFFFFFE,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x00000000 +NOR,0x7C6320F8,rD=0xFFFFFFFE,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +NOR,0x7C6320F8,rD=0x80000000,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +NOR,0x7C6320F8,rD=0x7FFFFFFF,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +NOR,0x7C6320F8,rD=0x00000000,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +NOR.,0x7C6320F9,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x80000000 +NOR.,0x7C6320F9,rD=0xFFFFFFFE,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x80000000 +NOR.,0x7C6320F9,rD=0xFFFFFFFE,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x80000000 +NOR.,0x7C6320F9,rD=0xFFFFFFFE,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x80000000 +NOR.,0x7C6320F9,rD=0x80000000,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +NOR.,0x7C6320F9,rD=0x7FFFFFFF,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x40000000 +NOR.,0x7C6320F9,rD=0x00000000,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x20000000 +OR,0x7C632378,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +OR,0x7C632378,rD=0x00000001,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +OR,0x7C632378,rD=0x00000001,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x00000000 +OR,0x7C632378,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +OR,0x7C632378,rD=0x7FFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +OR,0x7C632378,rD=0x80000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +OR,0x7C632378,rD=0xFFFFFFFF,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +OR.,0x7C632379,rD=0x00000000,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x20000000 +OR.,0x7C632379,rD=0x00000001,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x40000000 +OR.,0x7C632379,rD=0x00000001,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x40000000 +OR.,0x7C632379,rD=0x00000001,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x40000000 +OR.,0x7C632379,rD=0x7FFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x40000000 +OR.,0x7C632379,rD=0x80000000,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x80000000 +OR.,0x7C632379,rD=0xFFFFFFFF,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +ORC,0x7C632338,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x00000000 +ORC,0x7C632338,rD=0xFFFFFFFE,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x00000000 +ORC,0x7C632338,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x00000000 +ORC,0x7C632338,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x00000000 +ORC,0x7C632338,rD=0xFFFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x00000000 +ORC,0x7C632338,rD=0xFFFFFFFF,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x00000000 +ORC,0x7C632338,rD=0xFFFFFFFF,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x00000000 +ORC.,0x7C632339,rD=0xFFFFFFFF,rA=0x00000000,rB=0x00000000,XER=0x00000000,CR=0x80000000 +ORC.,0x7C632339,rD=0xFFFFFFFE,rA=0x00000000,rB=0x00000001,XER=0x00000000,CR=0x80000000 +ORC.,0x7C632339,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000000,XER=0x00000000,CR=0x80000000 +ORC.,0x7C632339,rD=0xFFFFFFFF,rA=0x00000001,rB=0x00000001,XER=0x00000000,CR=0x80000000 +ORC.,0x7C632339,rD=0xFFFFFFFF,rA=0x7FFFFFFF,rB=0x7FFFFFFF,XER=0x00000000,CR=0x80000000 +ORC.,0x7C632339,rD=0xFFFFFFFF,rA=0x80000000,rB=0x80000000,XER=0x00000000,CR=0x80000000 +ORC.,0x7C632339,rD=0xFFFFFFFF,rA=0xFFFFFFFF,rB=0xFFFFFFFF,XER=0x00000000,CR=0x80000000 +ORI,0x60630000,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +ORI,0x60630001,rD=0x00000001,rA=0x00000000,XER=0x00000000,CR=0x00000000 +ORI,0x60630000,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORI,0x60630001,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORI,0x60631FFF,rD=0x00001FFF,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORI,0x60633FFF,rD=0x00003FFF,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORI,0x60637FFF,rD=0x00007FFF,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORIS,0x60630000,rD=0x00000000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +ORIS,0x60630001,rD=0x00010000,rA=0x00000000,XER=0x00000000,CR=0x00000000 +ORIS,0x60630000,rD=0x00000001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORIS,0x60630001,rD=0x00010001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORIS,0x60631FFF,rD=0x1FFF0001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORIS,0x60633FFF,rD=0x3FFF0001,rA=0x00000001,XER=0x00000000,CR=0x00000000 +ORIS,0x60637FFF,rD=0x7FFF0001,rA=0x00000001,XER=0x00000000,CR=0x00000000 diff --git a/cpu/ppc/test/ppctests.cpp b/cpu/ppc/test/ppctests.cpp index a35e5f1..517d379 100644 --- a/cpu/ppc/test/ppctests.cpp +++ b/cpu/ppc/test/ppctests.cpp @@ -45,7 +45,7 @@ void read_test_data() continue; } - opcode = stol(tokens[1], NULL, 16); + opcode = stoul(tokens[1], NULL, 16); dest = 0; src1 = 0; @@ -55,15 +55,15 @@ void read_test_data() for (i = 2; i < tokens.size(); i++) { if (tokens[i].rfind("rD=", 0) == 0) { - dest = stol(tokens[i].substr(3), NULL, 16); + dest = stoul(tokens[i].substr(3), NULL, 16); } else if (tokens[i].rfind("rA=", 0) == 0) { - src1 = stol(tokens[i].substr(3), NULL, 16); + src1 = stoul(tokens[i].substr(3), NULL, 16); } else if (tokens[i].rfind("rB=", 0) == 0) { - src2 = stol(tokens[i].substr(3), NULL, 16); + src2 = stoul(tokens[i].substr(3), NULL, 16); } else if (tokens[i].rfind("XER=", 0) == 0) { - check_xer = stol(tokens[i].substr(4), NULL, 16); + check_xer = stoul(tokens[i].substr(4), NULL, 16); } else if (tokens[i].rfind("CR=", 0) == 0) { - check_cr = stol(tokens[i].substr(3), NULL, 16); + check_cr = stoul(tokens[i].substr(3), NULL, 16); } else { cout << "Unknown parameter " << tokens[i] << " in line " << lineno << ". Exiting..." << endl;