From 8cbc827d9fa9371e088f3874d0270a94dce45b88 Mon Sep 17 00:00:00 2001 From: Cerion Armour-Brown Date: Wed, 14 Dec 2005 17:59:35 +0000 Subject: [PATCH] Changed jm_insns.c usage to use one of flags 'i|f|a' to run int|fp|av insns respectively. Removed integer test insns for jm-vmx.vgtest - already tested in jm-int.vgtest git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5343 --- none/tests/ppc32/Makefile.am | 2 +- none/tests/ppc32/jm-insns.c | 26 +- none/tests/ppc32/jm-insns.vgtest | 1 - ...{jm-insns.stderr.exp => jm-int.stderr.exp} | 0 ...{jm-insns.stdout.exp => jm-int.stdout.exp} | 0 none/tests/ppc32/jm-int.vgtest | 1 + none/tests/ppc32/jm-vmx.stdout.exp | 1600 +---------------- 7 files changed, 23 insertions(+), 1607 deletions(-) delete mode 100644 none/tests/ppc32/jm-insns.vgtest rename none/tests/ppc32/{jm-insns.stderr.exp => jm-int.stderr.exp} (100%) rename none/tests/ppc32/{jm-insns.stdout.exp => jm-int.stdout.exp} (100%) create mode 100644 none/tests/ppc32/jm-int.vgtest diff --git a/none/tests/ppc32/Makefile.am b/none/tests/ppc32/Makefile.am index 83f734f354..19adbe7368 100644 --- a/none/tests/ppc32/Makefile.am +++ b/none/tests/ppc32/Makefile.am @@ -3,7 +3,7 @@ noinst_SCRIPTS = filter_stderr EXTRA_DIST = $(noinst_SCRIPTS) \ lsw.stderr.exp lsw.stdout.exp lsw.vgtest \ - jm-insns.stderr.exp jm-insns.stdout.exp jm-insns.vgtest \ + jm-int.stderr.exp jm-int.stdout.exp jm-int.vgtest \ jm-vmx.stderr.exp jm-vmx.stdout.exp jm-vmx.vgtest \ testVMX.stderr.exp testVMX.stdout.exp testVMX.vgtest diff --git a/none/tests/ppc32/jm-insns.c b/none/tests/ppc32/jm-insns.c index bd9523295a..792bce87ae 100644 --- a/none/tests/ppc32/jm-insns.c +++ b/none/tests/ppc32/jm-insns.c @@ -7433,15 +7433,21 @@ static void usage (void) ); #else fprintf(stderr, - "jm-insns [-a]\n" - "\t-a: include tests for altivec instructions\n" + "Usage: jm-insns [OPTION]\n" + "\t-i: test integer instructions (default)\n" + "\t-f: test floating point instructions\n" + "\t-a: test altivec instructions\n" + "\t-v: be verbose\n" + "\t-h: display this help and exit\n" ); #endif } + int main (int argc, char **argv) { #if !defined (USAGE_SIMPLE) +//////////////////////////////////////////////////////////////////////// unsigned char *tmp, *filter = NULL; insn_sel_flags_t flags; int c; @@ -7567,9 +7573,11 @@ int main (int argc, char **argv) flags.cr = 2; // both #else +//////////////////////////////////////////////////////////////////////// /* Simple usage: - ./jm-insns => all insns, except AV - ./jm-insns -a => all insns, including AV + ./jm-insns -i => int insns + ./jm-insns -f => fp insns + ./jm-insns -a => av insns */ char *filter = NULL; insn_sel_flags_t flags; @@ -7585,7 +7593,7 @@ int main (int argc, char **argv) flags.compare = 1; flags.ldst = 1; // Family - flags.integer = 1; + flags.integer = 0; flags.floats = 0; flags.p405 = 0; flags.altivec = 0; @@ -7593,8 +7601,14 @@ int main (int argc, char **argv) // Flags flags.cr = 2; - while ((c = getopt(argc, argv, "ahv")) != -1) { + while ((c = getopt(argc, argv, "ifahv")) != -1) { switch (c) { + case 'i': + flags.integer = 1; + break; + case 'f': + flags.floats = 1; + break; case 'a': flags.altivec = 1; flags.faltivec = 1; diff --git a/none/tests/ppc32/jm-insns.vgtest b/none/tests/ppc32/jm-insns.vgtest deleted file mode 100644 index 0a5c57a759..0000000000 --- a/none/tests/ppc32/jm-insns.vgtest +++ /dev/null @@ -1 +0,0 @@ -prog: jm-insns diff --git a/none/tests/ppc32/jm-insns.stderr.exp b/none/tests/ppc32/jm-int.stderr.exp similarity index 100% rename from none/tests/ppc32/jm-insns.stderr.exp rename to none/tests/ppc32/jm-int.stderr.exp diff --git a/none/tests/ppc32/jm-insns.stdout.exp b/none/tests/ppc32/jm-int.stdout.exp similarity index 100% rename from none/tests/ppc32/jm-insns.stdout.exp rename to none/tests/ppc32/jm-int.stdout.exp diff --git a/none/tests/ppc32/jm-int.vgtest b/none/tests/ppc32/jm-int.vgtest new file mode 100644 index 0000000000..c66a49a378 --- /dev/null +++ b/none/tests/ppc32/jm-int.vgtest @@ -0,0 +1 @@ +prog: jm-insns -i diff --git a/none/tests/ppc32/jm-vmx.stdout.exp b/none/tests/ppc32/jm-vmx.stdout.exp index 805abcdd10..ef056615e2 100644 --- a/none/tests/ppc32/jm-vmx.stdout.exp +++ b/none/tests/ppc32/jm-vmx.stdout.exp @@ -1,1601 +1,3 @@ -PPC integer arith insns with two args: - add 00000000, 00000000 => 00000000 (00000000 00000000) - add 00000000, 000f423f => 000f423f (00000000 00000000) - add 00000000, ffffffff => ffffffff (00000000 00000000) - add 000f423f, 00000000 => 000f423f (00000000 00000000) - add 000f423f, 000f423f => 001e847e (00000000 00000000) - add 000f423f, ffffffff => 000f423e (00000000 00000000) - add ffffffff, 00000000 => ffffffff (00000000 00000000) - add ffffffff, 000f423f => 000f423e (00000000 00000000) - add ffffffff, ffffffff => fffffffe (00000000 00000000) - - addo 00000000, 00000000 => 00000000 (00000000 00000000) - addo 00000000, 000f423f => 000f423f (00000000 00000000) - addo 00000000, ffffffff => ffffffff (00000000 00000000) - addo 000f423f, 00000000 => 000f423f (00000000 00000000) - addo 000f423f, 000f423f => 001e847e (00000000 00000000) - addo 000f423f, ffffffff => 000f423e (00000000 00000000) - addo ffffffff, 00000000 => ffffffff (00000000 00000000) - addo ffffffff, 000f423f => 000f423e (00000000 00000000) - addo ffffffff, ffffffff => fffffffe (00000000 00000000) - - addc 00000000, 00000000 => 00000000 (00000000 00000000) - addc 00000000, 000f423f => 000f423f (00000000 00000000) - addc 00000000, ffffffff => ffffffff (00000000 00000000) - addc 000f423f, 00000000 => 000f423f (00000000 00000000) - addc 000f423f, 000f423f => 001e847e (00000000 00000000) - addc 000f423f, ffffffff => 000f423e (00000000 20000000) - addc ffffffff, 00000000 => ffffffff (00000000 00000000) - addc ffffffff, 000f423f => 000f423e (00000000 20000000) - addc ffffffff, ffffffff => fffffffe (00000000 20000000) - - addco 00000000, 00000000 => 00000000 (00000000 00000000) - addco 00000000, 000f423f => 000f423f (00000000 00000000) - addco 00000000, ffffffff => ffffffff (00000000 00000000) - addco 000f423f, 00000000 => 000f423f (00000000 00000000) - addco 000f423f, 000f423f => 001e847e (00000000 00000000) - addco 000f423f, ffffffff => 000f423e (00000000 20000000) - addco ffffffff, 00000000 => ffffffff (00000000 00000000) - addco ffffffff, 000f423f => 000f423e (00000000 20000000) - addco ffffffff, ffffffff => fffffffe (00000000 20000000) - - divw 00000000, 000f423f => 00000000 (00000000 00000000) - divw 00000000, ffffffff => 00000000 (00000000 00000000) - divw 000f423f, 000f423f => 00000001 (00000000 00000000) - divw 000f423f, ffffffff => fff0bdc1 (00000000 00000000) - divw ffffffff, 000f423f => 00000000 (00000000 00000000) - divw ffffffff, ffffffff => 00000001 (00000000 00000000) - - divwo 00000000, 000f423f => 00000000 (00000000 00000000) - divwo 00000000, ffffffff => 00000000 (00000000 00000000) - divwo 000f423f, 000f423f => 00000001 (00000000 00000000) - divwo 000f423f, ffffffff => fff0bdc1 (00000000 00000000) - divwo ffffffff, 000f423f => 00000000 (00000000 00000000) - divwo ffffffff, ffffffff => 00000001 (00000000 00000000) - - divwu 00000000, 000f423f => 00000000 (00000000 00000000) - divwu 00000000, ffffffff => 00000000 (00000000 00000000) - divwu 000f423f, 000f423f => 00000001 (00000000 00000000) - divwu 000f423f, ffffffff => 00000000 (00000000 00000000) - divwu ffffffff, 000f423f => 000010c6 (00000000 00000000) - divwu ffffffff, ffffffff => 00000001 (00000000 00000000) - - divwuo 00000000, 000f423f => 00000000 (00000000 00000000) - divwuo 00000000, ffffffff => 00000000 (00000000 00000000) - divwuo 000f423f, 000f423f => 00000001 (00000000 00000000) - divwuo 000f423f, ffffffff => 00000000 (00000000 00000000) - divwuo ffffffff, 000f423f => 000010c6 (00000000 00000000) - divwuo ffffffff, ffffffff => 00000001 (00000000 00000000) - - mulhw 00000000, 00000000 => 00000000 (00000000 00000000) - mulhw 00000000, 000f423f => 00000000 (00000000 00000000) - mulhw 00000000, ffffffff => 00000000 (00000000 00000000) - mulhw 000f423f, 00000000 => 00000000 (00000000 00000000) - mulhw 000f423f, 000f423f => 000000e8 (00000000 00000000) - mulhw 000f423f, ffffffff => ffffffff (00000000 00000000) - mulhw ffffffff, 00000000 => 00000000 (00000000 00000000) - mulhw ffffffff, 000f423f => ffffffff (00000000 00000000) - mulhw ffffffff, ffffffff => 00000000 (00000000 00000000) - - mulhwu 00000000, 00000000 => 00000000 (00000000 00000000) - mulhwu 00000000, 000f423f => 00000000 (00000000 00000000) - mulhwu 00000000, ffffffff => 00000000 (00000000 00000000) - mulhwu 000f423f, 00000000 => 00000000 (00000000 00000000) - mulhwu 000f423f, 000f423f => 000000e8 (00000000 00000000) - mulhwu 000f423f, ffffffff => 000f423e (00000000 00000000) - mulhwu ffffffff, 00000000 => 00000000 (00000000 00000000) - mulhwu ffffffff, 000f423f => 000f423e (00000000 00000000) - mulhwu ffffffff, ffffffff => fffffffe (00000000 00000000) - - mullw 00000000, 00000000 => 00000000 (00000000 00000000) - mullw 00000000, 000f423f => 00000000 (00000000 00000000) - mullw 00000000, ffffffff => 00000000 (00000000 00000000) - mullw 000f423f, 00000000 => 00000000 (00000000 00000000) - mullw 000f423f, 000f423f => d4868b81 (00000000 00000000) - mullw 000f423f, ffffffff => fff0bdc1 (00000000 00000000) - mullw ffffffff, 00000000 => 00000000 (00000000 00000000) - mullw ffffffff, 000f423f => fff0bdc1 (00000000 00000000) - mullw ffffffff, ffffffff => 00000001 (00000000 00000000) - - mullwo 00000000, 00000000 => 00000000 (00000000 00000000) - mullwo 00000000, 000f423f => 00000000 (00000000 00000000) - mullwo 00000000, ffffffff => 00000000 (00000000 00000000) - mullwo 000f423f, 00000000 => 00000000 (00000000 00000000) - mullwo 000f423f, 000f423f => d4868b81 (00000000 c0000000) - mullwo 000f423f, ffffffff => fff0bdc1 (00000000 00000000) - mullwo ffffffff, 00000000 => 00000000 (00000000 00000000) - mullwo ffffffff, 000f423f => fff0bdc1 (00000000 00000000) - mullwo ffffffff, ffffffff => 00000001 (00000000 00000000) - - subf 00000000, 00000000 => 00000000 (00000000 00000000) - subf 00000000, 000f423f => 000f423f (00000000 00000000) - subf 00000000, ffffffff => ffffffff (00000000 00000000) - subf 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subf 000f423f, 000f423f => 00000000 (00000000 00000000) - subf 000f423f, ffffffff => fff0bdc0 (00000000 00000000) - subf ffffffff, 00000000 => 00000001 (00000000 00000000) - subf ffffffff, 000f423f => 000f4240 (00000000 00000000) - subf ffffffff, ffffffff => 00000000 (00000000 00000000) - - subfo 00000000, 00000000 => 00000000 (00000000 00000000) - subfo 00000000, 000f423f => 000f423f (00000000 00000000) - subfo 00000000, ffffffff => ffffffff (00000000 00000000) - subfo 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subfo 000f423f, 000f423f => 00000000 (00000000 00000000) - subfo 000f423f, ffffffff => fff0bdc0 (00000000 00000000) - subfo ffffffff, 00000000 => 00000001 (00000000 00000000) - subfo ffffffff, 000f423f => 000f4240 (00000000 00000000) - subfo ffffffff, ffffffff => 00000000 (00000000 00000000) - - subfc 00000000, 00000000 => 00000000 (00000000 20000000) - subfc 00000000, 000f423f => 000f423f (00000000 20000000) - subfc 00000000, ffffffff => ffffffff (00000000 20000000) - subfc 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subfc 000f423f, 000f423f => 00000000 (00000000 20000000) - subfc 000f423f, ffffffff => fff0bdc0 (00000000 20000000) - subfc ffffffff, 00000000 => 00000001 (00000000 00000000) - subfc ffffffff, 000f423f => 000f4240 (00000000 00000000) - subfc ffffffff, ffffffff => 00000000 (00000000 20000000) - - subfco 00000000, 00000000 => 00000000 (00000000 20000000) - subfco 00000000, 000f423f => 000f423f (00000000 20000000) - subfco 00000000, ffffffff => ffffffff (00000000 20000000) - subfco 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subfco 000f423f, 000f423f => 00000000 (00000000 20000000) - subfco 000f423f, ffffffff => fff0bdc0 (00000000 20000000) - subfco ffffffff, 00000000 => 00000001 (00000000 00000000) - subfco ffffffff, 000f423f => 000f4240 (00000000 00000000) - subfco ffffffff, ffffffff => 00000000 (00000000 20000000) - -PPC integer arith insns with two args with flags update: - add. 00000000, 00000000 => 00000000 (20000000 00000000) - add. 00000000, 000f423f => 000f423f (40000000 00000000) - add. 00000000, ffffffff => ffffffff (80000000 00000000) - add. 000f423f, 00000000 => 000f423f (40000000 00000000) - add. 000f423f, 000f423f => 001e847e (40000000 00000000) - add. 000f423f, ffffffff => 000f423e (40000000 00000000) - add. ffffffff, 00000000 => ffffffff (80000000 00000000) - add. ffffffff, 000f423f => 000f423e (40000000 00000000) - add. ffffffff, ffffffff => fffffffe (80000000 00000000) - - addo. 00000000, 00000000 => 00000000 (20000000 00000000) - addo. 00000000, 000f423f => 000f423f (40000000 00000000) - addo. 00000000, ffffffff => ffffffff (80000000 00000000) - addo. 000f423f, 00000000 => 000f423f (40000000 00000000) - addo. 000f423f, 000f423f => 001e847e (40000000 00000000) - addo. 000f423f, ffffffff => 000f423e (40000000 00000000) - addo. ffffffff, 00000000 => ffffffff (80000000 00000000) - addo. ffffffff, 000f423f => 000f423e (40000000 00000000) - addo. ffffffff, ffffffff => fffffffe (80000000 00000000) - - addc. 00000000, 00000000 => 00000000 (20000000 00000000) - addc. 00000000, 000f423f => 000f423f (40000000 00000000) - addc. 00000000, ffffffff => ffffffff (80000000 00000000) - addc. 000f423f, 00000000 => 000f423f (40000000 00000000) - addc. 000f423f, 000f423f => 001e847e (40000000 00000000) - addc. 000f423f, ffffffff => 000f423e (40000000 20000000) - addc. ffffffff, 00000000 => ffffffff (80000000 00000000) - addc. ffffffff, 000f423f => 000f423e (40000000 20000000) - addc. ffffffff, ffffffff => fffffffe (80000000 20000000) - - addco. 00000000, 00000000 => 00000000 (20000000 00000000) - addco. 00000000, 000f423f => 000f423f (40000000 00000000) - addco. 00000000, ffffffff => ffffffff (80000000 00000000) - addco. 000f423f, 00000000 => 000f423f (40000000 00000000) - addco. 000f423f, 000f423f => 001e847e (40000000 00000000) - addco. 000f423f, ffffffff => 000f423e (40000000 20000000) - addco. ffffffff, 00000000 => ffffffff (80000000 00000000) - addco. ffffffff, 000f423f => 000f423e (40000000 20000000) - addco. ffffffff, ffffffff => fffffffe (80000000 20000000) - - divw. 00000000, 000f423f => 00000000 (20000000 00000000) - divw. 00000000, ffffffff => 00000000 (20000000 00000000) - divw. 000f423f, 000f423f => 00000001 (40000000 00000000) - divw. 000f423f, ffffffff => fff0bdc1 (80000000 00000000) - divw. ffffffff, 000f423f => 00000000 (20000000 00000000) - divw. ffffffff, ffffffff => 00000001 (40000000 00000000) - - divwo. 00000000, 000f423f => 00000000 (20000000 00000000) - divwo. 00000000, ffffffff => 00000000 (20000000 00000000) - divwo. 000f423f, 000f423f => 00000001 (40000000 00000000) - divwo. 000f423f, ffffffff => fff0bdc1 (80000000 00000000) - divwo. ffffffff, 000f423f => 00000000 (20000000 00000000) - divwo. ffffffff, ffffffff => 00000001 (40000000 00000000) - - divwu. 00000000, 000f423f => 00000000 (20000000 00000000) - divwu. 00000000, ffffffff => 00000000 (20000000 00000000) - divwu. 000f423f, 000f423f => 00000001 (40000000 00000000) - divwu. 000f423f, ffffffff => 00000000 (20000000 00000000) - divwu. ffffffff, 000f423f => 000010c6 (40000000 00000000) - divwu. ffffffff, ffffffff => 00000001 (40000000 00000000) - - divwuo. 00000000, 000f423f => 00000000 (20000000 00000000) - divwuo. 00000000, ffffffff => 00000000 (20000000 00000000) - divwuo. 000f423f, 000f423f => 00000001 (40000000 00000000) - divwuo. 000f423f, ffffffff => 00000000 (20000000 00000000) - divwuo. ffffffff, 000f423f => 000010c6 (40000000 00000000) - divwuo. ffffffff, ffffffff => 00000001 (40000000 00000000) - - mulhw. 00000000, 00000000 => 00000000 (20000000 00000000) - mulhw. 00000000, 000f423f => 00000000 (20000000 00000000) - mulhw. 00000000, ffffffff => 00000000 (20000000 00000000) - mulhw. 000f423f, 00000000 => 00000000 (20000000 00000000) - mulhw. 000f423f, 000f423f => 000000e8 (40000000 00000000) - mulhw. 000f423f, ffffffff => ffffffff (80000000 00000000) - mulhw. ffffffff, 00000000 => 00000000 (20000000 00000000) - mulhw. ffffffff, 000f423f => ffffffff (80000000 00000000) - mulhw. ffffffff, ffffffff => 00000000 (20000000 00000000) - - mulhwu. 00000000, 00000000 => 00000000 (20000000 00000000) - mulhwu. 00000000, 000f423f => 00000000 (20000000 00000000) - mulhwu. 00000000, ffffffff => 00000000 (20000000 00000000) - mulhwu. 000f423f, 00000000 => 00000000 (20000000 00000000) - mulhwu. 000f423f, 000f423f => 000000e8 (40000000 00000000) - mulhwu. 000f423f, ffffffff => 000f423e (40000000 00000000) - mulhwu. ffffffff, 00000000 => 00000000 (20000000 00000000) - mulhwu. ffffffff, 000f423f => 000f423e (40000000 00000000) - mulhwu. ffffffff, ffffffff => fffffffe (80000000 00000000) - - mullw. 00000000, 00000000 => 00000000 (20000000 00000000) - mullw. 00000000, 000f423f => 00000000 (20000000 00000000) - mullw. 00000000, ffffffff => 00000000 (20000000 00000000) - mullw. 000f423f, 00000000 => 00000000 (20000000 00000000) - mullw. 000f423f, 000f423f => d4868b81 (80000000 00000000) - mullw. 000f423f, ffffffff => fff0bdc1 (80000000 00000000) - mullw. ffffffff, 00000000 => 00000000 (20000000 00000000) - mullw. ffffffff, 000f423f => fff0bdc1 (80000000 00000000) - mullw. ffffffff, ffffffff => 00000001 (40000000 00000000) - - mullwo. 00000000, 00000000 => 00000000 (20000000 00000000) - mullwo. 00000000, 000f423f => 00000000 (20000000 00000000) - mullwo. 00000000, ffffffff => 00000000 (20000000 00000000) - mullwo. 000f423f, 00000000 => 00000000 (20000000 00000000) - mullwo. 000f423f, 000f423f => d4868b81 (90000000 c0000000) - mullwo. 000f423f, ffffffff => fff0bdc1 (80000000 00000000) - mullwo. ffffffff, 00000000 => 00000000 (20000000 00000000) - mullwo. ffffffff, 000f423f => fff0bdc1 (80000000 00000000) - mullwo. ffffffff, ffffffff => 00000001 (40000000 00000000) - - subf. 00000000, 00000000 => 00000000 (20000000 00000000) - subf. 00000000, 000f423f => 000f423f (40000000 00000000) - subf. 00000000, ffffffff => ffffffff (80000000 00000000) - subf. 000f423f, 00000000 => fff0bdc1 (80000000 00000000) - subf. 000f423f, 000f423f => 00000000 (20000000 00000000) - subf. 000f423f, ffffffff => fff0bdc0 (80000000 00000000) - subf. ffffffff, 00000000 => 00000001 (40000000 00000000) - subf. ffffffff, 000f423f => 000f4240 (40000000 00000000) - subf. ffffffff, ffffffff => 00000000 (20000000 00000000) - - subfo. 00000000, 00000000 => 00000000 (20000000 00000000) - subfo. 00000000, 000f423f => 000f423f (40000000 00000000) - subfo. 00000000, ffffffff => ffffffff (80000000 00000000) - subfo. 000f423f, 00000000 => fff0bdc1 (80000000 00000000) - subfo. 000f423f, 000f423f => 00000000 (20000000 00000000) - subfo. 000f423f, ffffffff => fff0bdc0 (80000000 00000000) - subfo. ffffffff, 00000000 => 00000001 (40000000 00000000) - subfo. ffffffff, 000f423f => 000f4240 (40000000 00000000) - subfo. ffffffff, ffffffff => 00000000 (20000000 00000000) - - subfc. 00000000, 00000000 => 00000000 (20000000 20000000) - subfc. 00000000, 000f423f => 000f423f (40000000 20000000) - subfc. 00000000, ffffffff => ffffffff (80000000 20000000) - subfc. 000f423f, 00000000 => fff0bdc1 (80000000 00000000) - subfc. 000f423f, 000f423f => 00000000 (20000000 20000000) - subfc. 000f423f, ffffffff => fff0bdc0 (80000000 20000000) - subfc. ffffffff, 00000000 => 00000001 (40000000 00000000) - subfc. ffffffff, 000f423f => 000f4240 (40000000 00000000) - subfc. ffffffff, ffffffff => 00000000 (20000000 20000000) - - subfco. 00000000, 00000000 => 00000000 (20000000 20000000) - subfco. 00000000, 000f423f => 000f423f (40000000 20000000) - subfco. 00000000, ffffffff => ffffffff (80000000 20000000) - subfco. 000f423f, 00000000 => fff0bdc1 (80000000 00000000) - subfco. 000f423f, 000f423f => 00000000 (20000000 20000000) - subfco. 000f423f, ffffffff => fff0bdc0 (80000000 20000000) - subfco. ffffffff, 00000000 => 00000001 (40000000 00000000) - subfco. ffffffff, 000f423f => 000f4240 (40000000 00000000) - subfco. ffffffff, ffffffff => 00000000 (20000000 20000000) - -PPC integer arith insns with two args and carry: - adde 00000000, 00000000 => 00000000 (00000000 00000000) - adde 00000000, 000f423f => 000f423f (00000000 00000000) - adde 00000000, ffffffff => ffffffff (00000000 00000000) - adde 000f423f, 00000000 => 000f423f (00000000 00000000) - adde 000f423f, 000f423f => 001e847e (00000000 00000000) - adde 000f423f, ffffffff => 000f423e (00000000 20000000) - adde ffffffff, 00000000 => ffffffff (00000000 00000000) - adde ffffffff, 000f423f => 000f423e (00000000 20000000) - adde ffffffff, ffffffff => fffffffe (00000000 20000000) - adde 00000000, 00000000 => 00000001 (00000000 00000000) - adde 00000000, 000f423f => 000f4240 (00000000 00000000) - adde 00000000, ffffffff => 00000000 (00000000 20000000) - adde 000f423f, 00000000 => 000f4240 (00000000 00000000) - adde 000f423f, 000f423f => 001e847f (00000000 00000000) - adde 000f423f, ffffffff => 000f423f (00000000 20000000) - adde ffffffff, 00000000 => 00000000 (00000000 20000000) - adde ffffffff, 000f423f => 000f423f (00000000 20000000) - adde ffffffff, ffffffff => ffffffff (00000000 20000000) - - addeo 00000000, 00000000 => 00000000 (00000000 00000000) - addeo 00000000, 000f423f => 000f423f (00000000 00000000) - addeo 00000000, ffffffff => ffffffff (00000000 00000000) - addeo 000f423f, 00000000 => 000f423f (00000000 00000000) - addeo 000f423f, 000f423f => 001e847e (00000000 00000000) - addeo 000f423f, ffffffff => 000f423e (00000000 20000000) - addeo ffffffff, 00000000 => ffffffff (00000000 00000000) - addeo ffffffff, 000f423f => 000f423e (00000000 20000000) - addeo ffffffff, ffffffff => fffffffe (00000000 20000000) - addeo 00000000, 00000000 => 00000001 (00000000 00000000) - addeo 00000000, 000f423f => 000f4240 (00000000 00000000) - addeo 00000000, ffffffff => 00000000 (00000000 20000000) - addeo 000f423f, 00000000 => 000f4240 (00000000 00000000) - addeo 000f423f, 000f423f => 001e847f (00000000 00000000) - addeo 000f423f, ffffffff => 000f423f (00000000 20000000) - addeo ffffffff, 00000000 => 00000000 (00000000 20000000) - addeo ffffffff, 000f423f => 000f423f (00000000 20000000) - addeo ffffffff, ffffffff => ffffffff (00000000 20000000) - - subfe 00000000, 00000000 => ffffffff (00000000 00000000) - subfe 00000000, 000f423f => 000f423e (00000000 20000000) - subfe 00000000, ffffffff => fffffffe (00000000 20000000) - subfe 000f423f, 00000000 => fff0bdc0 (00000000 00000000) - subfe 000f423f, 000f423f => ffffffff (00000000 00000000) - subfe 000f423f, ffffffff => fff0bdbf (00000000 20000000) - subfe ffffffff, 00000000 => 00000000 (00000000 00000000) - subfe ffffffff, 000f423f => 000f423f (00000000 00000000) - subfe ffffffff, ffffffff => ffffffff (00000000 00000000) - subfe 00000000, 00000000 => 00000000 (00000000 20000000) - subfe 00000000, 000f423f => 000f423f (00000000 20000000) - subfe 00000000, ffffffff => ffffffff (00000000 20000000) - subfe 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subfe 000f423f, 000f423f => 00000000 (00000000 20000000) - subfe 000f423f, ffffffff => fff0bdc0 (00000000 20000000) - subfe ffffffff, 00000000 => 00000001 (00000000 00000000) - subfe ffffffff, 000f423f => 000f4240 (00000000 00000000) - subfe ffffffff, ffffffff => 00000000 (00000000 20000000) - - subfeo 00000000, 00000000 => ffffffff (00000000 00000000) - subfeo 00000000, 000f423f => 000f423e (00000000 20000000) - subfeo 00000000, ffffffff => fffffffe (00000000 20000000) - subfeo 000f423f, 00000000 => fff0bdc0 (00000000 00000000) - subfeo 000f423f, 000f423f => ffffffff (00000000 00000000) - subfeo 000f423f, ffffffff => fff0bdbf (00000000 20000000) - subfeo ffffffff, 00000000 => 00000000 (00000000 00000000) - subfeo ffffffff, 000f423f => 000f423f (00000000 00000000) - subfeo ffffffff, ffffffff => ffffffff (00000000 00000000) - subfeo 00000000, 00000000 => 00000000 (00000000 20000000) - subfeo 00000000, 000f423f => 000f423f (00000000 20000000) - subfeo 00000000, ffffffff => ffffffff (00000000 20000000) - subfeo 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subfeo 000f423f, 000f423f => 00000000 (00000000 20000000) - subfeo 000f423f, ffffffff => fff0bdc0 (00000000 20000000) - subfeo ffffffff, 00000000 => 00000001 (00000000 00000000) - subfeo ffffffff, 000f423f => 000f4240 (00000000 00000000) - subfeo ffffffff, ffffffff => 00000000 (00000000 20000000) - -PPC integer arith insns with two args and carry with flags update: - adde. 00000000, 00000000 => 00000000 (20000000 00000000) - adde. 00000000, 000f423f => 000f423f (40000000 00000000) - adde. 00000000, ffffffff => ffffffff (80000000 00000000) - adde. 000f423f, 00000000 => 000f423f (40000000 00000000) - adde. 000f423f, 000f423f => 001e847e (40000000 00000000) - adde. 000f423f, ffffffff => 000f423e (40000000 20000000) - adde. ffffffff, 00000000 => ffffffff (80000000 00000000) - adde. ffffffff, 000f423f => 000f423e (40000000 20000000) - adde. ffffffff, ffffffff => fffffffe (80000000 20000000) - adde. 00000000, 00000000 => 00000001 (40000000 00000000) - adde. 00000000, 000f423f => 000f4240 (40000000 00000000) - adde. 00000000, ffffffff => 00000000 (20000000 20000000) - adde. 000f423f, 00000000 => 000f4240 (40000000 00000000) - adde. 000f423f, 000f423f => 001e847f (40000000 00000000) - adde. 000f423f, ffffffff => 000f423f (40000000 20000000) - adde. ffffffff, 00000000 => 00000000 (20000000 20000000) - adde. ffffffff, 000f423f => 000f423f (40000000 20000000) - adde. ffffffff, ffffffff => ffffffff (80000000 20000000) - - addeo. 00000000, 00000000 => 00000000 (20000000 00000000) - addeo. 00000000, 000f423f => 000f423f (40000000 00000000) - addeo. 00000000, ffffffff => ffffffff (80000000 00000000) - addeo. 000f423f, 00000000 => 000f423f (40000000 00000000) - addeo. 000f423f, 000f423f => 001e847e (40000000 00000000) - addeo. 000f423f, ffffffff => 000f423e (40000000 20000000) - addeo. ffffffff, 00000000 => ffffffff (80000000 00000000) - addeo. ffffffff, 000f423f => 000f423e (40000000 20000000) - addeo. ffffffff, ffffffff => fffffffe (80000000 20000000) - addeo. 00000000, 00000000 => 00000001 (40000000 00000000) - addeo. 00000000, 000f423f => 000f4240 (40000000 00000000) - addeo. 00000000, ffffffff => 00000000 (20000000 20000000) - addeo. 000f423f, 00000000 => 000f4240 (40000000 00000000) - addeo. 000f423f, 000f423f => 001e847f (40000000 00000000) - addeo. 000f423f, ffffffff => 000f423f (40000000 20000000) - addeo. ffffffff, 00000000 => 00000000 (20000000 20000000) - addeo. ffffffff, 000f423f => 000f423f (40000000 20000000) - addeo. ffffffff, ffffffff => ffffffff (80000000 20000000) - - subfe. 00000000, 00000000 => ffffffff (80000000 00000000) - subfe. 00000000, 000f423f => 000f423e (40000000 20000000) - subfe. 00000000, ffffffff => fffffffe (80000000 20000000) - subfe. 000f423f, 00000000 => fff0bdc0 (80000000 00000000) - subfe. 000f423f, 000f423f => ffffffff (80000000 00000000) - subfe. 000f423f, ffffffff => fff0bdbf (80000000 20000000) - subfe. ffffffff, 00000000 => 00000000 (20000000 00000000) - subfe. ffffffff, 000f423f => 000f423f (40000000 00000000) - subfe. ffffffff, ffffffff => ffffffff (80000000 00000000) - subfe. 00000000, 00000000 => 00000000 (20000000 20000000) - subfe. 00000000, 000f423f => 000f423f (40000000 20000000) - subfe. 00000000, ffffffff => ffffffff (80000000 20000000) - subfe. 000f423f, 00000000 => fff0bdc1 (80000000 00000000) - subfe. 000f423f, 000f423f => 00000000 (20000000 20000000) - subfe. 000f423f, ffffffff => fff0bdc0 (80000000 20000000) - subfe. ffffffff, 00000000 => 00000001 (40000000 00000000) - subfe. ffffffff, 000f423f => 000f4240 (40000000 00000000) - subfe. ffffffff, ffffffff => 00000000 (20000000 20000000) - - subfeo. 00000000, 00000000 => ffffffff (80000000 00000000) - subfeo. 00000000, 000f423f => 000f423e (40000000 20000000) - subfeo. 00000000, ffffffff => fffffffe (80000000 20000000) - subfeo. 000f423f, 00000000 => fff0bdc0 (80000000 00000000) - subfeo. 000f423f, 000f423f => ffffffff (80000000 00000000) - subfeo. 000f423f, ffffffff => fff0bdbf (80000000 20000000) - subfeo. ffffffff, 00000000 => 00000000 (20000000 00000000) - subfeo. ffffffff, 000f423f => 000f423f (40000000 00000000) - subfeo. ffffffff, ffffffff => ffffffff (80000000 00000000) - subfeo. 00000000, 00000000 => 00000000 (20000000 20000000) - subfeo. 00000000, 000f423f => 000f423f (40000000 20000000) - subfeo. 00000000, ffffffff => ffffffff (80000000 20000000) - subfeo. 000f423f, 00000000 => fff0bdc1 (80000000 00000000) - subfeo. 000f423f, 000f423f => 00000000 (20000000 20000000) - subfeo. 000f423f, ffffffff => fff0bdc0 (80000000 20000000) - subfeo. ffffffff, 00000000 => 00000001 (40000000 00000000) - subfeo. ffffffff, 000f423f => 000f4240 (40000000 00000000) - subfeo. ffffffff, ffffffff => 00000000 (20000000 20000000) - -PPC integer logical insns with two args: - and 00000000, 00000000 => 00000000 (00000000 00000000) - and 00000000, 000f423f => 00000000 (00000000 00000000) - and 00000000, ffffffff => 00000000 (00000000 00000000) - and 000f423f, 00000000 => 00000000 (00000000 00000000) - and 000f423f, 000f423f => 000f423f (00000000 00000000) - and 000f423f, ffffffff => 000f423f (00000000 00000000) - and ffffffff, 00000000 => 00000000 (00000000 00000000) - and ffffffff, 000f423f => 000f423f (00000000 00000000) - and ffffffff, ffffffff => ffffffff (00000000 00000000) - - andc 00000000, 00000000 => 00000000 (00000000 00000000) - andc 00000000, 000f423f => 00000000 (00000000 00000000) - andc 00000000, ffffffff => 00000000 (00000000 00000000) - andc 000f423f, 00000000 => 000f423f (00000000 00000000) - andc 000f423f, 000f423f => 00000000 (00000000 00000000) - andc 000f423f, ffffffff => 00000000 (00000000 00000000) - andc ffffffff, 00000000 => ffffffff (00000000 00000000) - andc ffffffff, 000f423f => fff0bdc0 (00000000 00000000) - andc ffffffff, ffffffff => 00000000 (00000000 00000000) - - eqv 00000000, 00000000 => ffffffff (00000000 00000000) - eqv 00000000, 000f423f => fff0bdc0 (00000000 00000000) - eqv 00000000, ffffffff => 00000000 (00000000 00000000) - eqv 000f423f, 00000000 => fff0bdc0 (00000000 00000000) - eqv 000f423f, 000f423f => ffffffff (00000000 00000000) - eqv 000f423f, ffffffff => 000f423f (00000000 00000000) - eqv ffffffff, 00000000 => 00000000 (00000000 00000000) - eqv ffffffff, 000f423f => 000f423f (00000000 00000000) - eqv ffffffff, ffffffff => ffffffff (00000000 00000000) - - nand 00000000, 00000000 => ffffffff (00000000 00000000) - nand 00000000, 000f423f => ffffffff (00000000 00000000) - nand 00000000, ffffffff => ffffffff (00000000 00000000) - nand 000f423f, 00000000 => ffffffff (00000000 00000000) - nand 000f423f, 000f423f => fff0bdc0 (00000000 00000000) - nand 000f423f, ffffffff => fff0bdc0 (00000000 00000000) - nand ffffffff, 00000000 => ffffffff (00000000 00000000) - nand ffffffff, 000f423f => fff0bdc0 (00000000 00000000) - nand ffffffff, ffffffff => 00000000 (00000000 00000000) - - nor 00000000, 00000000 => ffffffff (00000000 00000000) - nor 00000000, 000f423f => fff0bdc0 (00000000 00000000) - nor 00000000, ffffffff => 00000000 (00000000 00000000) - nor 000f423f, 00000000 => fff0bdc0 (00000000 00000000) - nor 000f423f, 000f423f => fff0bdc0 (00000000 00000000) - nor 000f423f, ffffffff => 00000000 (00000000 00000000) - nor ffffffff, 00000000 => 00000000 (00000000 00000000) - nor ffffffff, 000f423f => 00000000 (00000000 00000000) - nor ffffffff, ffffffff => 00000000 (00000000 00000000) - - or 00000000, 00000000 => 00000000 (00000000 00000000) - or 00000000, 000f423f => 000f423f (00000000 00000000) - or 00000000, ffffffff => ffffffff (00000000 00000000) - or 000f423f, 00000000 => 000f423f (00000000 00000000) - or 000f423f, 000f423f => 000f423f (00000000 00000000) - or 000f423f, ffffffff => ffffffff (00000000 00000000) - or ffffffff, 00000000 => ffffffff (00000000 00000000) - or ffffffff, 000f423f => ffffffff (00000000 00000000) - or ffffffff, ffffffff => ffffffff (00000000 00000000) - - orc 00000000, 00000000 => ffffffff (00000000 00000000) - orc 00000000, 000f423f => fff0bdc0 (00000000 00000000) - orc 00000000, ffffffff => 00000000 (00000000 00000000) - orc 000f423f, 00000000 => ffffffff (00000000 00000000) - orc 000f423f, 000f423f => ffffffff (00000000 00000000) - orc 000f423f, ffffffff => 000f423f (00000000 00000000) - orc ffffffff, 00000000 => ffffffff (00000000 00000000) - orc ffffffff, 000f423f => ffffffff (00000000 00000000) - orc ffffffff, ffffffff => ffffffff (00000000 00000000) - - xor 00000000, 00000000 => 00000000 (00000000 00000000) - xor 00000000, 000f423f => 000f423f (00000000 00000000) - xor 00000000, ffffffff => ffffffff (00000000 00000000) - xor 000f423f, 00000000 => 000f423f (00000000 00000000) - xor 000f423f, 000f423f => 00000000 (00000000 00000000) - xor 000f423f, ffffffff => fff0bdc0 (00000000 00000000) - xor ffffffff, 00000000 => ffffffff (00000000 00000000) - xor ffffffff, 000f423f => fff0bdc0 (00000000 00000000) - xor ffffffff, ffffffff => 00000000 (00000000 00000000) - - slw 00000000, 00000000 => 00000000 (00000000 00000000) - slw 00000000, 000f423f => 00000000 (00000000 00000000) - slw 00000000, ffffffff => 00000000 (00000000 00000000) - slw 000f423f, 00000000 => 000f423f (00000000 00000000) - slw 000f423f, 000f423f => 00000000 (00000000 00000000) - slw 000f423f, ffffffff => 00000000 (00000000 00000000) - slw ffffffff, 00000000 => ffffffff (00000000 00000000) - slw ffffffff, 000f423f => 00000000 (00000000 00000000) - slw ffffffff, ffffffff => 00000000 (00000000 00000000) - - sraw 00000000, 00000000 => 00000000 (00000000 00000000) - sraw 00000000, 000f423f => 00000000 (00000000 00000000) - sraw 00000000, ffffffff => 00000000 (00000000 00000000) - sraw 000f423f, 00000000 => 000f423f (00000000 00000000) - sraw 000f423f, 000f423f => 00000000 (00000000 00000000) - sraw 000f423f, ffffffff => 00000000 (00000000 00000000) - sraw ffffffff, 00000000 => ffffffff (00000000 00000000) - sraw ffffffff, 000f423f => ffffffff (00000000 20000000) - sraw ffffffff, ffffffff => ffffffff (00000000 20000000) - - srw 00000000, 00000000 => 00000000 (00000000 00000000) - srw 00000000, 000f423f => 00000000 (00000000 00000000) - srw 00000000, ffffffff => 00000000 (00000000 00000000) - srw 000f423f, 00000000 => 000f423f (00000000 00000000) - srw 000f423f, 000f423f => 00000000 (00000000 00000000) - srw 000f423f, ffffffff => 00000000 (00000000 00000000) - srw ffffffff, 00000000 => ffffffff (00000000 00000000) - srw ffffffff, 000f423f => 00000000 (00000000 00000000) - srw ffffffff, ffffffff => 00000000 (00000000 00000000) - -PPC integer logical insns with two args with flags update: - and. 00000000, 00000000 => 00000000 (20000000 00000000) - and. 00000000, 000f423f => 00000000 (20000000 00000000) - and. 00000000, ffffffff => 00000000 (20000000 00000000) - and. 000f423f, 00000000 => 00000000 (20000000 00000000) - and. 000f423f, 000f423f => 000f423f (40000000 00000000) - and. 000f423f, ffffffff => 000f423f (40000000 00000000) - and. ffffffff, 00000000 => 00000000 (20000000 00000000) - and. ffffffff, 000f423f => 000f423f (40000000 00000000) - and. ffffffff, ffffffff => ffffffff (80000000 00000000) - - andc. 00000000, 00000000 => 00000000 (20000000 00000000) - andc. 00000000, 000f423f => 00000000 (20000000 00000000) - andc. 00000000, ffffffff => 00000000 (20000000 00000000) - andc. 000f423f, 00000000 => 000f423f (40000000 00000000) - andc. 000f423f, 000f423f => 00000000 (20000000 00000000) - andc. 000f423f, ffffffff => 00000000 (20000000 00000000) - andc. ffffffff, 00000000 => ffffffff (80000000 00000000) - andc. ffffffff, 000f423f => fff0bdc0 (80000000 00000000) - andc. ffffffff, ffffffff => 00000000 (20000000 00000000) - - eqv. 00000000, 00000000 => ffffffff (80000000 00000000) - eqv. 00000000, 000f423f => fff0bdc0 (80000000 00000000) - eqv. 00000000, ffffffff => 00000000 (20000000 00000000) - eqv. 000f423f, 00000000 => fff0bdc0 (80000000 00000000) - eqv. 000f423f, 000f423f => ffffffff (80000000 00000000) - eqv. 000f423f, ffffffff => 000f423f (40000000 00000000) - eqv. ffffffff, 00000000 => 00000000 (20000000 00000000) - eqv. ffffffff, 000f423f => 000f423f (40000000 00000000) - eqv. ffffffff, ffffffff => ffffffff (80000000 00000000) - - nand. 00000000, 00000000 => ffffffff (80000000 00000000) - nand. 00000000, 000f423f => ffffffff (80000000 00000000) - nand. 00000000, ffffffff => ffffffff (80000000 00000000) - nand. 000f423f, 00000000 => ffffffff (80000000 00000000) - nand. 000f423f, 000f423f => fff0bdc0 (80000000 00000000) - nand. 000f423f, ffffffff => fff0bdc0 (80000000 00000000) - nand. ffffffff, 00000000 => ffffffff (80000000 00000000) - nand. ffffffff, 000f423f => fff0bdc0 (80000000 00000000) - nand. ffffffff, ffffffff => 00000000 (20000000 00000000) - - nor. 00000000, 00000000 => ffffffff (80000000 00000000) - nor. 00000000, 000f423f => fff0bdc0 (80000000 00000000) - nor. 00000000, ffffffff => 00000000 (20000000 00000000) - nor. 000f423f, 00000000 => fff0bdc0 (80000000 00000000) - nor. 000f423f, 000f423f => fff0bdc0 (80000000 00000000) - nor. 000f423f, ffffffff => 00000000 (20000000 00000000) - nor. ffffffff, 00000000 => 00000000 (20000000 00000000) - nor. ffffffff, 000f423f => 00000000 (20000000 00000000) - nor. ffffffff, ffffffff => 00000000 (20000000 00000000) - - or. 00000000, 00000000 => 00000000 (20000000 00000000) - or. 00000000, 000f423f => 000f423f (40000000 00000000) - or. 00000000, ffffffff => ffffffff (80000000 00000000) - or. 000f423f, 00000000 => 000f423f (40000000 00000000) - or. 000f423f, 000f423f => 000f423f (40000000 00000000) - or. 000f423f, ffffffff => ffffffff (80000000 00000000) - or. ffffffff, 00000000 => ffffffff (80000000 00000000) - or. ffffffff, 000f423f => ffffffff (80000000 00000000) - or. ffffffff, ffffffff => ffffffff (80000000 00000000) - - orc. 00000000, 00000000 => ffffffff (80000000 00000000) - orc. 00000000, 000f423f => fff0bdc0 (80000000 00000000) - orc. 00000000, ffffffff => 00000000 (20000000 00000000) - orc. 000f423f, 00000000 => ffffffff (80000000 00000000) - orc. 000f423f, 000f423f => ffffffff (80000000 00000000) - orc. 000f423f, ffffffff => 000f423f (40000000 00000000) - orc. ffffffff, 00000000 => ffffffff (80000000 00000000) - orc. ffffffff, 000f423f => ffffffff (80000000 00000000) - orc. ffffffff, ffffffff => ffffffff (80000000 00000000) - - xor. 00000000, 00000000 => 00000000 (20000000 00000000) - xor. 00000000, 000f423f => 000f423f (40000000 00000000) - xor. 00000000, ffffffff => ffffffff (80000000 00000000) - xor. 000f423f, 00000000 => 000f423f (40000000 00000000) - xor. 000f423f, 000f423f => 00000000 (20000000 00000000) - xor. 000f423f, ffffffff => fff0bdc0 (80000000 00000000) - xor. ffffffff, 00000000 => ffffffff (80000000 00000000) - xor. ffffffff, 000f423f => fff0bdc0 (80000000 00000000) - xor. ffffffff, ffffffff => 00000000 (20000000 00000000) - - slw. 00000000, 00000000 => 00000000 (20000000 00000000) - slw. 00000000, 000f423f => 00000000 (20000000 00000000) - slw. 00000000, ffffffff => 00000000 (20000000 00000000) - slw. 000f423f, 00000000 => 000f423f (40000000 00000000) - slw. 000f423f, 000f423f => 00000000 (20000000 00000000) - slw. 000f423f, ffffffff => 00000000 (20000000 00000000) - slw. ffffffff, 00000000 => ffffffff (80000000 00000000) - slw. ffffffff, 000f423f => 00000000 (20000000 00000000) - slw. ffffffff, ffffffff => 00000000 (20000000 00000000) - - sraw. 00000000, 00000000 => 00000000 (20000000 00000000) - sraw. 00000000, 000f423f => 00000000 (20000000 00000000) - sraw. 00000000, ffffffff => 00000000 (20000000 00000000) - sraw. 000f423f, 00000000 => 000f423f (40000000 00000000) - sraw. 000f423f, 000f423f => 00000000 (20000000 00000000) - sraw. 000f423f, ffffffff => 00000000 (20000000 00000000) - sraw. ffffffff, 00000000 => ffffffff (80000000 00000000) - sraw. ffffffff, 000f423f => ffffffff (80000000 20000000) - sraw. ffffffff, ffffffff => ffffffff (80000000 20000000) - - srw. 00000000, 00000000 => 00000000 (20000000 00000000) - srw. 00000000, 000f423f => 00000000 (20000000 00000000) - srw. 00000000, ffffffff => 00000000 (20000000 00000000) - srw. 000f423f, 00000000 => 000f423f (40000000 00000000) - srw. 000f423f, 000f423f => 00000000 (20000000 00000000) - srw. 000f423f, ffffffff => 00000000 (20000000 00000000) - srw. ffffffff, 00000000 => ffffffff (80000000 00000000) - srw. ffffffff, 000f423f => 00000000 (20000000 00000000) - srw. ffffffff, ffffffff => 00000000 (20000000 00000000) - -PPC integer compare insns (two args): - cmp 00000000, 00000000 => 00000000 (00200000 00000000) - cmp 00000000, 000f423f => 00000000 (00800000 00000000) - cmp 00000000, ffffffff => 00000000 (00400000 00000000) - cmp 000f423f, 00000000 => 00000000 (00400000 00000000) - cmp 000f423f, 000f423f => 00000000 (00200000 00000000) - cmp 000f423f, ffffffff => 00000000 (00400000 00000000) - cmp ffffffff, 00000000 => 00000000 (00800000 00000000) - cmp ffffffff, 000f423f => 00000000 (00800000 00000000) - cmp ffffffff, ffffffff => 00000000 (00200000 00000000) - - cmpl 00000000, 00000000 => 00000000 (00200000 00000000) - cmpl 00000000, 000f423f => 00000000 (00800000 00000000) - cmpl 00000000, ffffffff => 00000000 (00800000 00000000) - cmpl 000f423f, 00000000 => 00000000 (00400000 00000000) - cmpl 000f423f, 000f423f => 00000000 (00200000 00000000) - cmpl 000f423f, ffffffff => 00000000 (00800000 00000000) - cmpl ffffffff, 00000000 => 00000000 (00400000 00000000) - cmpl ffffffff, 000f423f => 00000000 (00400000 00000000) - cmpl ffffffff, ffffffff => 00000000 (00200000 00000000) - -PPC integer compare with immediate insns (two args): - cmpi 00000000, 00000000 => 00000000 (00200000 00000000) - cmpi 00000000, 000003e7 => 00000000 (00800000 00000000) - cmpi 00000000, 0000ffff => 00000000 (00400000 00000000) - cmpi 000f423f, 00000000 => 00000000 (00400000 00000000) - cmpi 000f423f, 000003e7 => 00000000 (00400000 00000000) - cmpi 000f423f, 0000ffff => 00000000 (00400000 00000000) - cmpi ffffffff, 00000000 => 00000000 (00800000 00000000) - cmpi ffffffff, 000003e7 => 00000000 (00800000 00000000) - cmpi ffffffff, 0000ffff => 00000000 (00200000 00000000) - - cmpli 00000000, 00000000 => 00000000 (00200000 00000000) - cmpli 00000000, 000003e7 => 00000000 (00800000 00000000) - cmpli 00000000, 0000ffff => 00000000 (00800000 00000000) - cmpli 000f423f, 00000000 => 00000000 (00400000 00000000) - cmpli 000f423f, 000003e7 => 00000000 (00400000 00000000) - cmpli 000f423f, 0000ffff => 00000000 (00400000 00000000) - cmpli ffffffff, 00000000 => 00000000 (00400000 00000000) - cmpli ffffffff, 000003e7 => 00000000 (00400000 00000000) - cmpli ffffffff, 0000ffff => 00000000 (00400000 00000000) - -PPC integer arith insns - with one register + one 16 bits immediate args: - addi 00000000, 00000000 => 00000000 (00000000 00000000) - addi 00000000, 000003e7 => 000003e7 (00000000 00000000) - addi 00000000, 0000ffff => ffffffff (00000000 00000000) - addi 000f423f, 00000000 => 000f423f (00000000 00000000) - addi 000f423f, 000003e7 => 000f4626 (00000000 00000000) - addi 000f423f, 0000ffff => 000f423e (00000000 00000000) - addi ffffffff, 00000000 => ffffffff (00000000 00000000) - addi ffffffff, 000003e7 => 000003e6 (00000000 00000000) - addi ffffffff, 0000ffff => fffffffe (00000000 00000000) - - addic 00000000, 00000000 => 00000000 (00000000 00000000) - addic 00000000, 000003e7 => 000003e7 (00000000 00000000) - addic 00000000, 0000ffff => ffffffff (00000000 00000000) - addic 000f423f, 00000000 => 000f423f (00000000 00000000) - addic 000f423f, 000003e7 => 000f4626 (00000000 00000000) - addic 000f423f, 0000ffff => 000f423e (00000000 20000000) - addic ffffffff, 00000000 => ffffffff (00000000 00000000) - addic ffffffff, 000003e7 => 000003e6 (00000000 20000000) - addic ffffffff, 0000ffff => fffffffe (00000000 20000000) - - addis 00000000, 00000000 => 00000000 (00000000 00000000) - addis 00000000, 000003e7 => 03e70000 (00000000 00000000) - addis 00000000, 0000ffff => ffff0000 (00000000 00000000) - addis 000f423f, 00000000 => 000f423f (00000000 00000000) - addis 000f423f, 000003e7 => 03f6423f (00000000 00000000) - addis 000f423f, 0000ffff => 000e423f (00000000 00000000) - addis ffffffff, 00000000 => ffffffff (00000000 00000000) - addis ffffffff, 000003e7 => 03e6ffff (00000000 00000000) - addis ffffffff, 0000ffff => fffeffff (00000000 00000000) - - mulli 00000000, 00000000 => 00000000 (00000000 00000000) - mulli 00000000, 000003e7 => 00000000 (00000000 00000000) - mulli 00000000, 0000ffff => 00000000 (00000000 00000000) - mulli 000f423f, 00000000 => 00000000 (00000000 00000000) - mulli 000f423f, 000003e7 => 3b8b83d9 (00000000 00000000) - mulli 000f423f, 0000ffff => fff0bdc1 (00000000 00000000) - mulli ffffffff, 00000000 => 00000000 (00000000 00000000) - mulli ffffffff, 000003e7 => fffffc19 (00000000 00000000) - mulli ffffffff, 0000ffff => 00000001 (00000000 00000000) - - subfic 00000000, 00000000 => 00000000 (00000000 20000000) - subfic 00000000, 000003e7 => 000003e7 (00000000 20000000) - subfic 00000000, 0000ffff => ffffffff (00000000 20000000) - subfic 000f423f, 00000000 => fff0bdc1 (00000000 00000000) - subfic 000f423f, 000003e7 => fff0c1a8 (00000000 00000000) - subfic 000f423f, 0000ffff => fff0bdc0 (00000000 20000000) - subfic ffffffff, 00000000 => 00000001 (00000000 00000000) - subfic ffffffff, 000003e7 => 000003e8 (00000000 00000000) - subfic ffffffff, 0000ffff => 00000000 (00000000 20000000) - -PPC integer arith insns - with one register + one 16 bits immediate args with flags update: - addic. 00000000, 00000000 => 00000000 (20000000 00000000) - addic. 00000000, 000003e7 => 000003e7 (40000000 00000000) - addic. 00000000, 0000ffff => ffffffff (80000000 00000000) - addic. 000f423f, 00000000 => 000f423f (40000000 00000000) - addic. 000f423f, 000003e7 => 000f4626 (40000000 00000000) - addic. 000f423f, 0000ffff => 000f423e (40000000 20000000) - addic. ffffffff, 00000000 => ffffffff (80000000 00000000) - addic. ffffffff, 000003e7 => 000003e6 (40000000 20000000) - addic. ffffffff, 0000ffff => fffffffe (80000000 20000000) - -PPC integer logical insns - with one register + one 16 bits immediate args: - ori 00000000, 00000000 => 00000000 (00000000 00000000) - ori 00000000, 000003e7 => 000003e7 (00000000 00000000) - ori 00000000, 0000ffff => 0000ffff (00000000 00000000) - ori 000f423f, 00000000 => 000f423f (00000000 00000000) - ori 000f423f, 000003e7 => 000f43ff (00000000 00000000) - ori 000f423f, 0000ffff => 000fffff (00000000 00000000) - ori ffffffff, 00000000 => ffffffff (00000000 00000000) - ori ffffffff, 000003e7 => ffffffff (00000000 00000000) - ori ffffffff, 0000ffff => ffffffff (00000000 00000000) - - oris 00000000, 00000000 => 00000000 (00000000 00000000) - oris 00000000, 000003e7 => 03e70000 (00000000 00000000) - oris 00000000, 0000ffff => ffff0000 (00000000 00000000) - oris 000f423f, 00000000 => 000f423f (00000000 00000000) - oris 000f423f, 000003e7 => 03ef423f (00000000 00000000) - oris 000f423f, 0000ffff => ffff423f (00000000 00000000) - oris ffffffff, 00000000 => ffffffff (00000000 00000000) - oris ffffffff, 000003e7 => ffffffff (00000000 00000000) - oris ffffffff, 0000ffff => ffffffff (00000000 00000000) - - xori 00000000, 00000000 => 00000000 (00000000 00000000) - xori 00000000, 000003e7 => 000003e7 (00000000 00000000) - xori 00000000, 0000ffff => 0000ffff (00000000 00000000) - xori 000f423f, 00000000 => 000f423f (00000000 00000000) - xori 000f423f, 000003e7 => 000f41d8 (00000000 00000000) - xori 000f423f, 0000ffff => 000fbdc0 (00000000 00000000) - xori ffffffff, 00000000 => ffffffff (00000000 00000000) - xori ffffffff, 000003e7 => fffffc18 (00000000 00000000) - xori ffffffff, 0000ffff => ffff0000 (00000000 00000000) - - xoris 00000000, 00000000 => 00000000 (00000000 00000000) - xoris 00000000, 000003e7 => 03e70000 (00000000 00000000) - xoris 00000000, 0000ffff => ffff0000 (00000000 00000000) - xoris 000f423f, 00000000 => 000f423f (00000000 00000000) - xoris 000f423f, 000003e7 => 03e8423f (00000000 00000000) - xoris 000f423f, 0000ffff => fff0423f (00000000 00000000) - xoris ffffffff, 00000000 => ffffffff (00000000 00000000) - xoris ffffffff, 000003e7 => fc18ffff (00000000 00000000) - xoris ffffffff, 0000ffff => 0000ffff (00000000 00000000) - -PPC integer logical insns - with one register + one 16 bits immediate args with flags update: - andi. 00000000, 00000000 => 00000000 (20000000 00000000) - andi. 00000000, 000003e7 => 00000000 (20000000 00000000) - andi. 00000000, 0000ffff => 00000000 (20000000 00000000) - andi. 000f423f, 00000000 => 00000000 (20000000 00000000) - andi. 000f423f, 000003e7 => 00000227 (40000000 00000000) - andi. 000f423f, 0000ffff => 0000423f (40000000 00000000) - andi. ffffffff, 00000000 => 00000000 (20000000 00000000) - andi. ffffffff, 000003e7 => 000003e7 (40000000 00000000) - andi. ffffffff, 0000ffff => 0000ffff (40000000 00000000) - - andis. 00000000, 00000000 => 00000000 (20000000 00000000) - andis. 00000000, 000003e7 => 00000000 (20000000 00000000) - andis. 00000000, 0000ffff => 00000000 (20000000 00000000) - andis. 000f423f, 00000000 => 00000000 (20000000 00000000) - andis. 000f423f, 000003e7 => 00070000 (40000000 00000000) - andis. 000f423f, 0000ffff => 000f0000 (40000000 00000000) - andis. ffffffff, 00000000 => 00000000 (20000000 00000000) - andis. ffffffff, 000003e7 => 03e70000 (40000000 00000000) - andis. ffffffff, 0000ffff => ffff0000 (80000000 00000000) - -PPC condition register logical insns - two operands: - crand 00000000, 00000000 => ffff0000 (00000000 00000000) - crand 00000000, 000f423f => ffff0000 (00000000 00000000) - crand 00000000, ffffffff => ffff0000 (00000000 00000000) - crand 000f423f, 00000000 => ffff0000 (00000000 00000000) - crand 000f423f, 000f423f => ffff0000 (00000000 00000000) - crand 000f423f, ffffffff => ffff0000 (00000000 00000000) - crand ffffffff, 00000000 => ffff0000 (00000000 00000000) - crand ffffffff, 000f423f => ffff0000 (00000000 00000000) - crand ffffffff, ffffffff => ffff0000 (00000000 00000000) - - crandc 00000000, 00000000 => ffff0000 (00000000 00000000) - crandc 00000000, 000f423f => ffff0000 (00000000 00000000) - crandc 00000000, ffffffff => ffff0000 (00000000 00000000) - crandc 000f423f, 00000000 => ffff0000 (00000000 00000000) - crandc 000f423f, 000f423f => ffff0000 (00000000 00000000) - crandc 000f423f, ffffffff => ffff0000 (00000000 00000000) - crandc ffffffff, 00000000 => ffff0000 (00000000 00000000) - crandc ffffffff, 000f423f => ffff0000 (00000000 00000000) - crandc ffffffff, ffffffff => ffff0000 (00000000 00000000) - - creqv 00000000, 00000000 => ffff0000 (00004000 00000000) - creqv 00000000, 000f423f => ffff0000 (00004000 00000000) - creqv 00000000, ffffffff => ffff0000 (00004000 00000000) - creqv 000f423f, 00000000 => ffff0000 (00004000 00000000) - creqv 000f423f, 000f423f => ffff0000 (00004000 00000000) - creqv 000f423f, ffffffff => ffff0000 (00004000 00000000) - creqv ffffffff, 00000000 => ffff0000 (00004000 00000000) - creqv ffffffff, 000f423f => ffff0000 (00004000 00000000) - creqv ffffffff, ffffffff => ffff0000 (00004000 00000000) - - crnand 00000000, 00000000 => ffff0000 (00004000 00000000) - crnand 00000000, 000f423f => ffff0000 (00004000 00000000) - crnand 00000000, ffffffff => ffff0000 (00004000 00000000) - crnand 000f423f, 00000000 => ffff0000 (00004000 00000000) - crnand 000f423f, 000f423f => ffff0000 (00004000 00000000) - crnand 000f423f, ffffffff => ffff0000 (00004000 00000000) - crnand ffffffff, 00000000 => ffff0000 (00004000 00000000) - crnand ffffffff, 000f423f => ffff0000 (00004000 00000000) - crnand ffffffff, ffffffff => ffff0000 (00004000 00000000) - - crnor 00000000, 00000000 => ffff0000 (00004000 00000000) - crnor 00000000, 000f423f => ffff0000 (00004000 00000000) - crnor 00000000, ffffffff => ffff0000 (00004000 00000000) - crnor 000f423f, 00000000 => ffff0000 (00004000 00000000) - crnor 000f423f, 000f423f => ffff0000 (00004000 00000000) - crnor 000f423f, ffffffff => ffff0000 (00004000 00000000) - crnor ffffffff, 00000000 => ffff0000 (00004000 00000000) - crnor ffffffff, 000f423f => ffff0000 (00004000 00000000) - crnor ffffffff, ffffffff => ffff0000 (00004000 00000000) - - cror 00000000, 00000000 => ffff0000 (00000000 00000000) - cror 00000000, 000f423f => ffff0000 (00000000 00000000) - cror 00000000, ffffffff => ffff0000 (00000000 00000000) - cror 000f423f, 00000000 => ffff0000 (00000000 00000000) - cror 000f423f, 000f423f => ffff0000 (00000000 00000000) - cror 000f423f, ffffffff => ffff0000 (00000000 00000000) - cror ffffffff, 00000000 => ffff0000 (00000000 00000000) - cror ffffffff, 000f423f => ffff0000 (00000000 00000000) - cror ffffffff, ffffffff => ffff0000 (00000000 00000000) - - crorc 00000000, 00000000 => ffff0000 (00004000 00000000) - crorc 00000000, 000f423f => ffff0000 (00004000 00000000) - crorc 00000000, ffffffff => ffff0000 (00004000 00000000) - crorc 000f423f, 00000000 => ffff0000 (00004000 00000000) - crorc 000f423f, 000f423f => ffff0000 (00004000 00000000) - crorc 000f423f, ffffffff => ffff0000 (00004000 00000000) - crorc ffffffff, 00000000 => ffff0000 (00004000 00000000) - crorc ffffffff, 000f423f => ffff0000 (00004000 00000000) - crorc ffffffff, ffffffff => ffff0000 (00004000 00000000) - - crxor 00000000, 00000000 => ffff0000 (00000000 00000000) - crxor 00000000, 000f423f => ffff0000 (00000000 00000000) - crxor 00000000, ffffffff => ffff0000 (00000000 00000000) - crxor 000f423f, 00000000 => ffff0000 (00000000 00000000) - crxor 000f423f, 000f423f => ffff0000 (00000000 00000000) - crxor 000f423f, ffffffff => ffff0000 (00000000 00000000) - crxor ffffffff, 00000000 => ffff0000 (00000000 00000000) - crxor ffffffff, 000f423f => ffff0000 (00000000 00000000) - crxor ffffffff, ffffffff => ffff0000 (00000000 00000000) - -PPC integer arith insns with one arg and carry: - addme 00000000 => ffffffff (00000000 00000000) - addme 000f423f => 000f423e (00000000 20000000) - addme ffffffff => fffffffe (00000000 20000000) - addme 00000000 => 00000000 (00000000 20000000) - addme 000f423f => 000f423f (00000000 20000000) - addme ffffffff => ffffffff (00000000 20000000) - - addmeo 00000000 => ffffffff (00000000 00000000) - addmeo 000f423f => 000f423e (00000000 20000000) - addmeo ffffffff => fffffffe (00000000 20000000) - addmeo 00000000 => 00000000 (00000000 20000000) - addmeo 000f423f => 000f423f (00000000 20000000) - addmeo ffffffff => ffffffff (00000000 20000000) - - addze 00000000 => 00000000 (00000000 00000000) - addze 000f423f => 000f423f (00000000 00000000) - addze ffffffff => ffffffff (00000000 00000000) - addze 00000000 => 00000001 (00000000 00000000) - addze 000f423f => 000f4240 (00000000 00000000) - addze ffffffff => 00000000 (00000000 20000000) - - addzeo 00000000 => 00000000 (00000000 00000000) - addzeo 000f423f => 000f423f (00000000 00000000) - addzeo ffffffff => ffffffff (00000000 00000000) - addzeo 00000000 => 00000001 (00000000 00000000) - addzeo 000f423f => 000f4240 (00000000 00000000) - addzeo ffffffff => 00000000 (00000000 20000000) - - subfme 00000000 => fffffffe (00000000 20000000) - subfme 000f423f => fff0bdbf (00000000 20000000) - subfme ffffffff => ffffffff (00000000 00000000) - subfme 00000000 => ffffffff (00000000 20000000) - subfme 000f423f => fff0bdc0 (00000000 20000000) - subfme ffffffff => 00000000 (00000000 20000000) - - subfmeo 00000000 => fffffffe (00000000 20000000) - subfmeo 000f423f => fff0bdbf (00000000 20000000) - subfmeo ffffffff => ffffffff (00000000 00000000) - subfmeo 00000000 => ffffffff (00000000 20000000) - subfmeo 000f423f => fff0bdc0 (00000000 20000000) - subfmeo ffffffff => 00000000 (00000000 20000000) - - subfze 00000000 => ffffffff (00000000 00000000) - subfze 000f423f => fff0bdc0 (00000000 00000000) - subfze ffffffff => 00000000 (00000000 00000000) - subfze 00000000 => 00000000 (00000000 20000000) - subfze 000f423f => fff0bdc1 (00000000 00000000) - subfze ffffffff => 00000001 (00000000 00000000) - - subfzeo 00000000 => ffffffff (00000000 00000000) - subfzeo 000f423f => fff0bdc0 (00000000 00000000) - subfzeo ffffffff => 00000000 (00000000 00000000) - subfzeo 00000000 => 00000000 (00000000 20000000) - subfzeo 000f423f => fff0bdc1 (00000000 00000000) - subfzeo ffffffff => 00000001 (00000000 00000000) - -PPC integer arith insns with one arg and carry with flags update: - addme. 00000000 => ffffffff (80000000 00000000) - addme. 000f423f => 000f423e (40000000 20000000) - addme. ffffffff => fffffffe (80000000 20000000) - addme. 00000000 => 00000000 (20000000 20000000) - addme. 000f423f => 000f423f (40000000 20000000) - addme. ffffffff => ffffffff (80000000 20000000) - - addmeo. 00000000 => ffffffff (80000000 00000000) - addmeo. 000f423f => 000f423e (40000000 20000000) - addmeo. ffffffff => fffffffe (80000000 20000000) - addmeo. 00000000 => 00000000 (20000000 20000000) - addmeo. 000f423f => 000f423f (40000000 20000000) - addmeo. ffffffff => ffffffff (80000000 20000000) - - addze. 00000000 => 00000000 (20000000 00000000) - addze. 000f423f => 000f423f (40000000 00000000) - addze. ffffffff => ffffffff (80000000 00000000) - addze. 00000000 => 00000001 (40000000 00000000) - addze. 000f423f => 000f4240 (40000000 00000000) - addze. ffffffff => 00000000 (20000000 20000000) - - addzeo. 00000000 => 00000000 (20000000 00000000) - addzeo. 000f423f => 000f423f (40000000 00000000) - addzeo. ffffffff => ffffffff (80000000 00000000) - addzeo. 00000000 => 00000001 (40000000 00000000) - addzeo. 000f423f => 000f4240 (40000000 00000000) - addzeo. ffffffff => 00000000 (20000000 20000000) - - subfme. 00000000 => fffffffe (80000000 20000000) - subfme. 000f423f => fff0bdbf (80000000 20000000) - subfme. ffffffff => ffffffff (80000000 00000000) - subfme. 00000000 => ffffffff (80000000 20000000) - subfme. 000f423f => fff0bdc0 (80000000 20000000) - subfme. ffffffff => 00000000 (20000000 20000000) - - subfmeo. 00000000 => fffffffe (80000000 20000000) - subfmeo. 000f423f => fff0bdbf (80000000 20000000) - subfmeo. ffffffff => ffffffff (80000000 00000000) - subfmeo. 00000000 => ffffffff (80000000 20000000) - subfmeo. 000f423f => fff0bdc0 (80000000 20000000) - subfmeo. ffffffff => 00000000 (20000000 20000000) - - subfze. 00000000 => ffffffff (80000000 00000000) - subfze. 000f423f => fff0bdc0 (80000000 00000000) - subfze. ffffffff => 00000000 (20000000 00000000) - subfze. 00000000 => 00000000 (20000000 20000000) - subfze. 000f423f => fff0bdc1 (80000000 00000000) - subfze. ffffffff => 00000001 (40000000 00000000) - - subfzeo. 00000000 => ffffffff (80000000 00000000) - subfzeo. 000f423f => fff0bdc0 (80000000 00000000) - subfzeo. ffffffff => 00000000 (20000000 00000000) - subfzeo. 00000000 => 00000000 (20000000 20000000) - subfzeo. 000f423f => fff0bdc1 (80000000 00000000) - subfzeo. ffffffff => 00000001 (40000000 00000000) - -PPC integer logical insns with one arg: - cntlzw 00000000 => 00000020 (00000000 00000000) - cntlzw 000f423f => 0000000c (00000000 00000000) - cntlzw ffffffff => 00000000 (00000000 00000000) - - extsb 00000000 => 00000000 (00000000 00000000) - extsb 000f423f => 0000003f (00000000 00000000) - extsb ffffffff => ffffffff (00000000 00000000) - - extsh 00000000 => 00000000 (00000000 00000000) - extsh 000f423f => 0000423f (00000000 00000000) - extsh ffffffff => ffffffff (00000000 00000000) - - neg 00000000 => 00000000 (00000000 00000000) - neg 000f423f => fff0bdc1 (00000000 00000000) - neg ffffffff => 00000001 (00000000 00000000) - - nego 00000000 => 00000000 (00000000 00000000) - nego 000f423f => fff0bdc1 (00000000 00000000) - nego ffffffff => 00000001 (00000000 00000000) - -PPC integer logical insns with one arg with flags update: - cntlzw. 00000000 => 00000020 (40000000 00000000) - cntlzw. 000f423f => 0000000c (40000000 00000000) - cntlzw. ffffffff => 00000000 (20000000 00000000) - - extsb. 00000000 => 00000000 (20000000 00000000) - extsb. 000f423f => 0000003f (40000000 00000000) - extsb. ffffffff => ffffffff (80000000 00000000) - - extsh. 00000000 => 00000000 (20000000 00000000) - extsh. 000f423f => 0000423f (40000000 00000000) - extsh. ffffffff => ffffffff (80000000 00000000) - - neg. 00000000 => 00000000 (20000000 00000000) - neg. 000f423f => fff0bdc1 (80000000 00000000) - neg. ffffffff => 00000001 (40000000 00000000) - - nego. 00000000 => 00000000 (20000000 00000000) - nego. 000f423f => fff0bdc1 (80000000 00000000) - nego. ffffffff => 00000001 (40000000 00000000) - -PPC logical insns with special forms: - rlwimi 00000000, 0, 0, 0 => 00000001 (00000000 00000000) - rlwimi 00000000, 0, 0, 31 => 00000000 (00000000 00000000) - rlwimi 00000000, 0, 31, 0 => 00000000 (00000000 00000000) - rlwimi 00000000, 0, 31, 31 => 00000000 (00000000 00000000) - rlwimi 00000000, 31, 0, 0 => 00000000 (00000000 00000000) - rlwimi 00000000, 31, 0, 31 => 00000000 (00000000 00000000) - rlwimi 00000000, 31, 31, 0 => 00000000 (00000000 00000000) - rlwimi 00000000, 31, 31, 31 => 00000000 (00000000 00000000) - rlwimi 000f423f, 0, 0, 0 => 00000000 (00000000 00000000) - rlwimi 000f423f, 0, 0, 31 => 000f423f (00000000 00000000) - rlwimi 000f423f, 0, 31, 0 => 000f423f (00000000 00000000) - rlwimi 000f423f, 0, 31, 31 => 000f423f (00000000 00000000) - rlwimi 000f423f, 31, 0, 0 => 800f423f (00000000 00000000) - rlwimi 000f423f, 31, 0, 31 => 8007a11f (00000000 00000000) - rlwimi 000f423f, 31, 31, 0 => 8007a11f (00000000 00000000) - rlwimi 000f423f, 31, 31, 31 => 8007a11f (00000000 00000000) - rlwimi ffffffff, 0, 0, 0 => 8007a11f (00000000 00000000) - rlwimi ffffffff, 0, 0, 31 => ffffffff (00000000 00000000) - rlwimi ffffffff, 0, 31, 0 => ffffffff (00000000 00000000) - rlwimi ffffffff, 0, 31, 31 => ffffffff (00000000 00000000) - rlwimi ffffffff, 31, 0, 0 => ffffffff (00000000 00000000) - rlwimi ffffffff, 31, 0, 31 => ffffffff (00000000 00000000) - rlwimi ffffffff, 31, 31, 0 => ffffffff (00000000 00000000) - rlwimi ffffffff, 31, 31, 31 => ffffffff (00000000 00000000) - - rlwinm 00000000, 0, 0, 0 => 00000000 (00000000 00000000) - rlwinm 00000000, 0, 0, 31 => 00000000 (00000000 00000000) - rlwinm 00000000, 0, 31, 0 => 00000000 (00000000 00000000) - rlwinm 00000000, 0, 31, 31 => 00000000 (00000000 00000000) - rlwinm 00000000, 31, 0, 0 => 00000000 (00000000 00000000) - rlwinm 00000000, 31, 0, 31 => 00000000 (00000000 00000000) - rlwinm 00000000, 31, 31, 0 => 00000000 (00000000 00000000) - rlwinm 00000000, 31, 31, 31 => 00000000 (00000000 00000000) - rlwinm 000f423f, 0, 0, 0 => 00000000 (00000000 00000000) - rlwinm 000f423f, 0, 0, 31 => 000f423f (00000000 00000000) - rlwinm 000f423f, 0, 31, 0 => 00000001 (00000000 00000000) - rlwinm 000f423f, 0, 31, 31 => 00000001 (00000000 00000000) - rlwinm 000f423f, 31, 0, 0 => 80000000 (00000000 00000000) - rlwinm 000f423f, 31, 0, 31 => 8007a11f (00000000 00000000) - rlwinm 000f423f, 31, 31, 0 => 80000001 (00000000 00000000) - rlwinm 000f423f, 31, 31, 31 => 00000001 (00000000 00000000) - rlwinm ffffffff, 0, 0, 0 => 80000000 (00000000 00000000) - rlwinm ffffffff, 0, 0, 31 => ffffffff (00000000 00000000) - rlwinm ffffffff, 0, 31, 0 => 80000001 (00000000 00000000) - rlwinm ffffffff, 0, 31, 31 => 00000001 (00000000 00000000) - rlwinm ffffffff, 31, 0, 0 => 80000000 (00000000 00000000) - rlwinm ffffffff, 31, 0, 31 => ffffffff (00000000 00000000) - rlwinm ffffffff, 31, 31, 0 => 80000001 (00000000 00000000) - rlwinm ffffffff, 31, 31, 31 => 00000001 (00000000 00000000) - - rlwnm 00000000, 00000000, 0, 0 => 00000000 (00000000 00000000) - rlwnm 00000000, 00000000, 0, 31 => 00000000 (00000000 00000000) - rlwnm 00000000, 00000000, 31, 0 => 00000000 (00000000 00000000) - rlwnm 00000000, 00000000, 31, 31 => 00000000 (00000000 00000000) - rlwnm 00000000, 000f423f, 0, 0 => 00000000 (00000000 00000000) - rlwnm 00000000, 000f423f, 0, 31 => 00000000 (00000000 00000000) - rlwnm 00000000, 000f423f, 31, 0 => 00000000 (00000000 00000000) - rlwnm 00000000, 000f423f, 31, 31 => 00000000 (00000000 00000000) - rlwnm 00000000, ffffffff, 0, 0 => 00000000 (00000000 00000000) - rlwnm 00000000, ffffffff, 0, 31 => 00000000 (00000000 00000000) - rlwnm 00000000, ffffffff, 31, 0 => 00000000 (00000000 00000000) - rlwnm 00000000, ffffffff, 31, 31 => 00000000 (00000000 00000000) - rlwnm 000f423f, 00000000, 0, 0 => 00000000 (00000000 00000000) - rlwnm 000f423f, 00000000, 0, 31 => 000f423f (00000000 00000000) - rlwnm 000f423f, 00000000, 31, 0 => 00000001 (00000000 00000000) - rlwnm 000f423f, 00000000, 31, 31 => 00000001 (00000000 00000000) - rlwnm 000f423f, 000f423f, 0, 0 => 80000000 (00000000 00000000) - rlwnm 000f423f, 000f423f, 0, 31 => 8007a11f (00000000 00000000) - rlwnm 000f423f, 000f423f, 31, 0 => 80000001 (00000000 00000000) - rlwnm 000f423f, 000f423f, 31, 31 => 00000001 (00000000 00000000) - rlwnm 000f423f, ffffffff, 0, 0 => 80000000 (00000000 00000000) - rlwnm 000f423f, ffffffff, 0, 31 => 8007a11f (00000000 00000000) - rlwnm 000f423f, ffffffff, 31, 0 => 80000001 (00000000 00000000) - rlwnm 000f423f, ffffffff, 31, 31 => 00000001 (00000000 00000000) - rlwnm ffffffff, 00000000, 0, 0 => 80000000 (00000000 00000000) - rlwnm ffffffff, 00000000, 0, 31 => ffffffff (00000000 00000000) - rlwnm ffffffff, 00000000, 31, 0 => 80000001 (00000000 00000000) - rlwnm ffffffff, 00000000, 31, 31 => 00000001 (00000000 00000000) - rlwnm ffffffff, 000f423f, 0, 0 => 80000000 (00000000 00000000) - rlwnm ffffffff, 000f423f, 0, 31 => ffffffff (00000000 00000000) - rlwnm ffffffff, 000f423f, 31, 0 => 80000001 (00000000 00000000) - rlwnm ffffffff, 000f423f, 31, 31 => 00000001 (00000000 00000000) - rlwnm ffffffff, ffffffff, 0, 0 => 80000000 (00000000 00000000) - rlwnm ffffffff, ffffffff, 0, 31 => ffffffff (00000000 00000000) - rlwnm ffffffff, ffffffff, 31, 0 => 80000001 (00000000 00000000) - rlwnm ffffffff, ffffffff, 31, 31 => 00000001 (00000000 00000000) - - srawi 00000000, 0 => 00000000 (00000000 00000000) - srawi 00000000, 31 => 00000000 (00000000 00000000) - srawi 000f423f, 0 => 000f423f (00000000 00000000) - srawi 000f423f, 31 => 00000000 (00000000 00000000) - srawi ffffffff, 0 => ffffffff (00000000 00000000) - srawi ffffffff, 31 => ffffffff (00000000 20000000) - - mfcr (00000000) => 00000000 (00000000 00000000) - mfcr (000f423f) => 000f423f (000f423f 00000000) - mfcr (ffffffff) => ffffffff (ffffffff 00000000) - - mfspr: 00000000 -> mtxer -> mfxer => 00000000 - mfspr: 000f423f -> mtxer -> mfxer => 0000003f - mfspr: ffffffff -> mtxer -> mfxer => e000007f - mfspr: 00000000 -> mtlr -> mflr => 00000000 - mfspr: 000f423f -> mtlr -> mflr => 000f423f - mfspr: ffffffff -> mtlr -> mflr => ffffffff - mfspr: 00000000 -> mtctr -> mfctr => 00000000 - mfspr: 000f423f -> mtctr -> mfctr => 000f423f - mfspr: ffffffff -> mtctr -> mfctr => ffffffff - - -PPC logical insns with special forms with flags update: - rlwimi. 00000000, 0, 0, 0 => 20000000 (40000000 00000000) - rlwimi. 00000000, 0, 0, 31 => 00000000 (20000000 00000000) - rlwimi. 00000000, 0, 31, 0 => 00000000 (20000000 00000000) - rlwimi. 00000000, 0, 31, 31 => 00000000 (20000000 00000000) - rlwimi. 00000000, 31, 0, 0 => 00000000 (20000000 00000000) - rlwimi. 00000000, 31, 0, 31 => 00000000 (20000000 00000000) - rlwimi. 00000000, 31, 31, 0 => 00000000 (20000000 00000000) - rlwimi. 00000000, 31, 31, 31 => 00000000 (20000000 00000000) - rlwimi. 000f423f, 0, 0, 0 => 00000000 (20000000 00000000) - rlwimi. 000f423f, 0, 0, 31 => 000f423f (40000000 00000000) - rlwimi. 000f423f, 0, 31, 0 => 000f423f (40000000 00000000) - rlwimi. 000f423f, 0, 31, 31 => 000f423f (40000000 00000000) - rlwimi. 000f423f, 31, 0, 0 => 800f423f (80000000 00000000) - rlwimi. 000f423f, 31, 0, 31 => 8007a11f (80000000 00000000) - rlwimi. 000f423f, 31, 31, 0 => 8007a11f (80000000 00000000) - rlwimi. 000f423f, 31, 31, 31 => 8007a11f (80000000 00000000) - rlwimi. ffffffff, 0, 0, 0 => 8007a11f (80000000 00000000) - rlwimi. ffffffff, 0, 0, 31 => ffffffff (80000000 00000000) - rlwimi. ffffffff, 0, 31, 0 => ffffffff (80000000 00000000) - rlwimi. ffffffff, 0, 31, 31 => ffffffff (80000000 00000000) - rlwimi. ffffffff, 31, 0, 0 => ffffffff (80000000 00000000) - rlwimi. ffffffff, 31, 0, 31 => ffffffff (80000000 00000000) - rlwimi. ffffffff, 31, 31, 0 => ffffffff (80000000 00000000) - rlwimi. ffffffff, 31, 31, 31 => ffffffff (80000000 00000000) - - rlwinm. 00000000, 0, 0, 0 => 00000000 (20000000 00000000) - rlwinm. 00000000, 0, 0, 31 => 00000000 (20000000 00000000) - rlwinm. 00000000, 0, 31, 0 => 00000000 (20000000 00000000) - rlwinm. 00000000, 0, 31, 31 => 00000000 (20000000 00000000) - rlwinm. 00000000, 31, 0, 0 => 00000000 (20000000 00000000) - rlwinm. 00000000, 31, 0, 31 => 00000000 (20000000 00000000) - rlwinm. 00000000, 31, 31, 0 => 00000000 (20000000 00000000) - rlwinm. 00000000, 31, 31, 31 => 00000000 (20000000 00000000) - rlwinm. 000f423f, 0, 0, 0 => 00000000 (20000000 00000000) - rlwinm. 000f423f, 0, 0, 31 => 000f423f (40000000 00000000) - rlwinm. 000f423f, 0, 31, 0 => 00000001 (40000000 00000000) - rlwinm. 000f423f, 0, 31, 31 => 00000001 (40000000 00000000) - rlwinm. 000f423f, 31, 0, 0 => 80000000 (80000000 00000000) - rlwinm. 000f423f, 31, 0, 31 => 8007a11f (80000000 00000000) - rlwinm. 000f423f, 31, 31, 0 => 80000001 (80000000 00000000) - rlwinm. 000f423f, 31, 31, 31 => 00000001 (40000000 00000000) - rlwinm. ffffffff, 0, 0, 0 => 80000000 (80000000 00000000) - rlwinm. ffffffff, 0, 0, 31 => ffffffff (80000000 00000000) - rlwinm. ffffffff, 0, 31, 0 => 80000001 (80000000 00000000) - rlwinm. ffffffff, 0, 31, 31 => 00000001 (40000000 00000000) - rlwinm. ffffffff, 31, 0, 0 => 80000000 (80000000 00000000) - rlwinm. ffffffff, 31, 0, 31 => ffffffff (80000000 00000000) - rlwinm. ffffffff, 31, 31, 0 => 80000001 (80000000 00000000) - rlwinm. ffffffff, 31, 31, 31 => 00000001 (40000000 00000000) - - rlwnm. 00000000, 00000000, 0, 0 => 00000000 (20000000 00000000) - rlwnm. 00000000, 00000000, 0, 31 => 00000000 (20000000 00000000) - rlwnm. 00000000, 00000000, 31, 0 => 00000000 (20000000 00000000) - rlwnm. 00000000, 00000000, 31, 31 => 00000000 (20000000 00000000) - rlwnm. 00000000, 000f423f, 0, 0 => 00000000 (20000000 00000000) - rlwnm. 00000000, 000f423f, 0, 31 => 00000000 (20000000 00000000) - rlwnm. 00000000, 000f423f, 31, 0 => 00000000 (20000000 00000000) - rlwnm. 00000000, 000f423f, 31, 31 => 00000000 (20000000 00000000) - rlwnm. 00000000, ffffffff, 0, 0 => 00000000 (20000000 00000000) - rlwnm. 00000000, ffffffff, 0, 31 => 00000000 (20000000 00000000) - rlwnm. 00000000, ffffffff, 31, 0 => 00000000 (20000000 00000000) - rlwnm. 00000000, ffffffff, 31, 31 => 00000000 (20000000 00000000) - rlwnm. 000f423f, 00000000, 0, 0 => 00000000 (20000000 00000000) - rlwnm. 000f423f, 00000000, 0, 31 => 000f423f (40000000 00000000) - rlwnm. 000f423f, 00000000, 31, 0 => 00000001 (40000000 00000000) - rlwnm. 000f423f, 00000000, 31, 31 => 00000001 (40000000 00000000) - rlwnm. 000f423f, 000f423f, 0, 0 => 80000000 (80000000 00000000) - rlwnm. 000f423f, 000f423f, 0, 31 => 8007a11f (80000000 00000000) - rlwnm. 000f423f, 000f423f, 31, 0 => 80000001 (80000000 00000000) - rlwnm. 000f423f, 000f423f, 31, 31 => 00000001 (40000000 00000000) - rlwnm. 000f423f, ffffffff, 0, 0 => 80000000 (80000000 00000000) - rlwnm. 000f423f, ffffffff, 0, 31 => 8007a11f (80000000 00000000) - rlwnm. 000f423f, ffffffff, 31, 0 => 80000001 (80000000 00000000) - rlwnm. 000f423f, ffffffff, 31, 31 => 00000001 (40000000 00000000) - rlwnm. ffffffff, 00000000, 0, 0 => 80000000 (80000000 00000000) - rlwnm. ffffffff, 00000000, 0, 31 => ffffffff (80000000 00000000) - rlwnm. ffffffff, 00000000, 31, 0 => 80000001 (80000000 00000000) - rlwnm. ffffffff, 00000000, 31, 31 => 00000001 (40000000 00000000) - rlwnm. ffffffff, 000f423f, 0, 0 => 80000000 (80000000 00000000) - rlwnm. ffffffff, 000f423f, 0, 31 => ffffffff (80000000 00000000) - rlwnm. ffffffff, 000f423f, 31, 0 => 80000001 (80000000 00000000) - rlwnm. ffffffff, 000f423f, 31, 31 => 00000001 (40000000 00000000) - rlwnm. ffffffff, ffffffff, 0, 0 => 80000000 (80000000 00000000) - rlwnm. ffffffff, ffffffff, 0, 31 => ffffffff (80000000 00000000) - rlwnm. ffffffff, ffffffff, 31, 0 => 80000001 (80000000 00000000) - rlwnm. ffffffff, ffffffff, 31, 31 => 00000001 (40000000 00000000) - - srawi. 00000000, 0 => 00000000 (20000000 00000000) - srawi. 00000000, 31 => 00000000 (20000000 00000000) - srawi. 000f423f, 0 => 000f423f (40000000 00000000) - srawi. 000f423f, 31 => 00000000 (20000000 00000000) - srawi. ffffffff, 0 => ffffffff (80000000 00000000) - srawi. ffffffff, 31 => ffffffff (80000000 20000000) - - mcrf 0, 0 (00000000) => (00000000 00000000) - mcrf 0, 7 (00000000) => (00000000 00000000) - mcrf 7, 0 (00000000) => (00000000 00000000) - mcrf 7, 7 (00000000) => (00000000 00000000) - mcrf 0, 0 (000f423f) => (000f423f 00000000) - mcrf 0, 7 (000f423f) => (f00f423f 00000000) - mcrf 7, 0 (000f423f) => (000f4230 00000000) - mcrf 7, 7 (000f423f) => (000f423f 00000000) - mcrf 0, 0 (ffffffff) => (ffffffff 00000000) - mcrf 0, 7 (ffffffff) => (ffffffff 00000000) - mcrf 7, 0 (ffffffff) => (ffffffff 00000000) - mcrf 7, 7 (ffffffff) => (ffffffff 00000000) - - mcrxr 0 (00000000) => (00000000 00000000) - mcrxr 1 (00000000) => (00000000 00000000) - mcrxr 2 (00000000) => (00000000 00000000) - mcrxr 3 (00000000) => (00000000 00000000) - mcrxr 4 (00000000) => (00000000 00000000) - mcrxr 5 (00000000) => (00000000 00000000) - mcrxr 6 (00000000) => (00000000 00000000) - mcrxr 7 (00000000) => (00000000 00000000) - mcrxr 0 (10000000) => (00000000 00000000) - mcrxr 1 (10000000) => (00000000 00000000) - mcrxr 2 (10000000) => (00000000 00000000) - mcrxr 3 (10000000) => (00000000 00000000) - mcrxr 4 (10000000) => (00000000 00000000) - mcrxr 5 (10000000) => (00000000 00000000) - mcrxr 6 (10000000) => (00000000 00000000) - mcrxr 7 (10000000) => (00000000 00000000) - mcrxr 0 (20000000) => (20000000 00000000) - mcrxr 1 (20000000) => (02000000 00000000) - mcrxr 2 (20000000) => (00200000 00000000) - mcrxr 3 (20000000) => (00020000 00000000) - mcrxr 4 (20000000) => (00002000 00000000) - mcrxr 5 (20000000) => (00000200 00000000) - mcrxr 6 (20000000) => (00000020 00000000) - mcrxr 7 (20000000) => (00000002 00000000) - mcrxr 0 (30000000) => (20000000 00000000) - mcrxr 1 (30000000) => (02000000 00000000) - mcrxr 2 (30000000) => (00200000 00000000) - mcrxr 3 (30000000) => (00020000 00000000) - mcrxr 4 (30000000) => (00002000 00000000) - mcrxr 5 (30000000) => (00000200 00000000) - mcrxr 6 (30000000) => (00000020 00000000) - mcrxr 7 (30000000) => (00000002 00000000) - mcrxr 0 (40000000) => (40000000 00000000) - mcrxr 1 (40000000) => (04000000 00000000) - mcrxr 2 (40000000) => (00400000 00000000) - mcrxr 3 (40000000) => (00040000 00000000) - mcrxr 4 (40000000) => (00004000 00000000) - mcrxr 5 (40000000) => (00000400 00000000) - mcrxr 6 (40000000) => (00000040 00000000) - mcrxr 7 (40000000) => (00000004 00000000) - mcrxr 0 (50000000) => (40000000 00000000) - mcrxr 1 (50000000) => (04000000 00000000) - mcrxr 2 (50000000) => (00400000 00000000) - mcrxr 3 (50000000) => (00040000 00000000) - mcrxr 4 (50000000) => (00004000 00000000) - mcrxr 5 (50000000) => (00000400 00000000) - mcrxr 6 (50000000) => (00000040 00000000) - mcrxr 7 (50000000) => (00000004 00000000) - mcrxr 0 (60000000) => (60000000 00000000) - mcrxr 1 (60000000) => (06000000 00000000) - mcrxr 2 (60000000) => (00600000 00000000) - mcrxr 3 (60000000) => (00060000 00000000) - mcrxr 4 (60000000) => (00006000 00000000) - mcrxr 5 (60000000) => (00000600 00000000) - mcrxr 6 (60000000) => (00000060 00000000) - mcrxr 7 (60000000) => (00000006 00000000) - mcrxr 0 (70000000) => (60000000 00000000) - mcrxr 1 (70000000) => (06000000 00000000) - mcrxr 2 (70000000) => (00600000 00000000) - mcrxr 3 (70000000) => (00060000 00000000) - mcrxr 4 (70000000) => (00006000 00000000) - mcrxr 5 (70000000) => (00000600 00000000) - mcrxr 6 (70000000) => (00000060 00000000) - mcrxr 7 (70000000) => (00000006 00000000) - mcrxr 0 (80000000) => (80000000 00000000) - mcrxr 1 (80000000) => (08000000 00000000) - mcrxr 2 (80000000) => (00800000 00000000) - mcrxr 3 (80000000) => (00080000 00000000) - mcrxr 4 (80000000) => (00008000 00000000) - mcrxr 5 (80000000) => (00000800 00000000) - mcrxr 6 (80000000) => (00000080 00000000) - mcrxr 7 (80000000) => (00000008 00000000) - mcrxr 0 (90000000) => (80000000 00000000) - mcrxr 1 (90000000) => (08000000 00000000) - mcrxr 2 (90000000) => (00800000 00000000) - mcrxr 3 (90000000) => (00080000 00000000) - mcrxr 4 (90000000) => (00008000 00000000) - mcrxr 5 (90000000) => (00000800 00000000) - mcrxr 6 (90000000) => (00000080 00000000) - mcrxr 7 (90000000) => (00000008 00000000) - mcrxr 0 (a0000000) => (a0000000 00000000) - mcrxr 1 (a0000000) => (0a000000 00000000) - mcrxr 2 (a0000000) => (00a00000 00000000) - mcrxr 3 (a0000000) => (000a0000 00000000) - mcrxr 4 (a0000000) => (0000a000 00000000) - mcrxr 5 (a0000000) => (00000a00 00000000) - mcrxr 6 (a0000000) => (000000a0 00000000) - mcrxr 7 (a0000000) => (0000000a 00000000) - mcrxr 0 (b0000000) => (a0000000 00000000) - mcrxr 1 (b0000000) => (0a000000 00000000) - mcrxr 2 (b0000000) => (00a00000 00000000) - mcrxr 3 (b0000000) => (000a0000 00000000) - mcrxr 4 (b0000000) => (0000a000 00000000) - mcrxr 5 (b0000000) => (00000a00 00000000) - mcrxr 6 (b0000000) => (000000a0 00000000) - mcrxr 7 (b0000000) => (0000000a 00000000) - mcrxr 0 (c0000000) => (c0000000 00000000) - mcrxr 1 (c0000000) => (0c000000 00000000) - mcrxr 2 (c0000000) => (00c00000 00000000) - mcrxr 3 (c0000000) => (000c0000 00000000) - mcrxr 4 (c0000000) => (0000c000 00000000) - mcrxr 5 (c0000000) => (00000c00 00000000) - mcrxr 6 (c0000000) => (000000c0 00000000) - mcrxr 7 (c0000000) => (0000000c 00000000) - mcrxr 0 (d0000000) => (c0000000 00000000) - mcrxr 1 (d0000000) => (0c000000 00000000) - mcrxr 2 (d0000000) => (00c00000 00000000) - mcrxr 3 (d0000000) => (000c0000 00000000) - mcrxr 4 (d0000000) => (0000c000 00000000) - mcrxr 5 (d0000000) => (00000c00 00000000) - mcrxr 6 (d0000000) => (000000c0 00000000) - mcrxr 7 (d0000000) => (0000000c 00000000) - mcrxr 0 (e0000000) => (e0000000 00000000) - mcrxr 1 (e0000000) => (0e000000 00000000) - mcrxr 2 (e0000000) => (00e00000 00000000) - mcrxr 3 (e0000000) => (000e0000 00000000) - mcrxr 4 (e0000000) => (0000e000 00000000) - mcrxr 5 (e0000000) => (00000e00 00000000) - mcrxr 6 (e0000000) => (000000e0 00000000) - mcrxr 7 (e0000000) => (0000000e 00000000) - mcrxr 0 (f0000000) => (e0000000 00000000) - mcrxr 1 (f0000000) => (0e000000 00000000) - mcrxr 2 (f0000000) => (00e00000 00000000) - mcrxr 3 (f0000000) => (000e0000 00000000) - mcrxr 4 (f0000000) => (0000e000 00000000) - mcrxr 5 (f0000000) => (00000e00 00000000) - mcrxr 6 (f0000000) => (000000e0 00000000) - mcrxr 7 (f0000000) => (0000000e 00000000) - - mtcrf 0, 00000000 => (00000000 00000000) - mtcrf 99, 00000000 => (00000000 00000000) - mtcrf 198, 00000000 => (00000000 00000000) - mtcrf 0, 000f423f => (00000000 00000000) - mtcrf 99, 000f423f => (0000003f 00000000) - mtcrf 198, 000f423f => (00000230 00000000) - mtcrf 0, ffffffff => (00000000 00000000) - mtcrf 99, ffffffff => (0ff000ff 00000000) - mtcrf 198, ffffffff => (ff000ff0 00000000) - -PPC integer load insns - with one register + one 16 bits immediate args with flags update: - lbz 0, (00000000) => 00000000, (00000000 00000000) - lbz 4, (000f423f) => 00000000, (00000000 00000000) - lbz 8, (ffffffff) => 000000ff, (00000000 00000000) - lbz -8, (00000000) => 00000000 (00000000 00000000) - lbz -4, (000f423f) => 00000000 (00000000 00000000) - lbz 0, (ffffffff) => 000000ff (00000000 00000000) - - lbzu 0, (00000000) => 00000000, (00000000 00000000) - lbzu 4, (000f423f) => 00000000, (00000000 00000000) - lbzu 8, (ffffffff) => 000000ff, (00000000 00000000) - lbzu -8, (00000000) => 00000000 (00000000 00000000) - lbzu -4, (000f423f) => 00000000 (00000000 00000000) - lbzu 0, (ffffffff) => 000000ff (00000000 00000000) - - lha 0, (00000000) => 00000000, (00000000 00000000) - lha 4, (000f423f) => 0000000f, (00000000 00000000) - lha 8, (ffffffff) => ffffffff, (00000000 00000000) - lha -8, (00000000) => 00000000 (00000000 00000000) - lha -4, (000f423f) => 0000000f (00000000 00000000) - lha 0, (ffffffff) => ffffffff (00000000 00000000) - - lhau 0, (00000000) => 00000000, (00000000 00000000) - lhau 4, (000f423f) => 0000000f, (00000000 00000000) - lhau 8, (ffffffff) => ffffffff, (00000000 00000000) - lhau -8, (00000000) => 00000000 (00000000 00000000) - lhau -4, (000f423f) => 0000000f (00000000 00000000) - lhau 0, (ffffffff) => ffffffff (00000000 00000000) - - lhz 0, (00000000) => 00000000, (00000000 00000000) - lhz 4, (000f423f) => 0000000f, (00000000 00000000) - lhz 8, (ffffffff) => 0000ffff, (00000000 00000000) - lhz -8, (00000000) => 00000000 (00000000 00000000) - lhz -4, (000f423f) => 0000000f (00000000 00000000) - lhz 0, (ffffffff) => 0000ffff (00000000 00000000) - - lhzu 0, (00000000) => 00000000, (00000000 00000000) - lhzu 4, (000f423f) => 0000000f, (00000000 00000000) - lhzu 8, (ffffffff) => 0000ffff, (00000000 00000000) - lhzu -8, (00000000) => 00000000 (00000000 00000000) - lhzu -4, (000f423f) => 0000000f (00000000 00000000) - lhzu 0, (ffffffff) => 0000ffff (00000000 00000000) - - lwz 0, (00000000) => 00000000, (00000000 00000000) - lwz 4, (000f423f) => 000f423f, (00000000 00000000) - lwz 8, (ffffffff) => ffffffff, (00000000 00000000) - lwz -8, (00000000) => 00000000 (00000000 00000000) - lwz -4, (000f423f) => 000f423f (00000000 00000000) - lwz 0, (ffffffff) => ffffffff (00000000 00000000) - - lwzu 0, (00000000) => 00000000, (00000000 00000000) - lwzu 4, (000f423f) => 000f423f, (00000000 00000000) - lwzu 8, (ffffffff) => ffffffff, (00000000 00000000) - lwzu -8, (00000000) => 00000000 (00000000 00000000) - lwzu -4, (000f423f) => 000f423f (00000000 00000000) - lwzu 0, (ffffffff) => ffffffff (00000000 00000000) - -PPC integer load insns with two register args: - lbzx 0 (00000000) => 00000000 (00000000 00000000) - lbzx 4 (000f423f) => 00000000 (00000000 00000000) - lbzx 8 (ffffffff) => 000000ff (00000000 00000000) - - lbzux 0 (00000000) => 00000000 (00000000 00000000) - lbzux 4 (000f423f) => 00000000 (00000000 00000000) - lbzux 8 (ffffffff) => 000000ff (00000000 00000000) - - lhax 0 (00000000) => 00000000 (00000000 00000000) - lhax 4 (000f423f) => 0000000f (00000000 00000000) - lhax 8 (ffffffff) => ffffffff (00000000 00000000) - - lhaux 0 (00000000) => 00000000 (00000000 00000000) - lhaux 4 (000f423f) => 0000000f (00000000 00000000) - lhaux 8 (ffffffff) => ffffffff (00000000 00000000) - - lhzx 0 (00000000) => 00000000 (00000000 00000000) - lhzx 4 (000f423f) => 0000000f (00000000 00000000) - lhzx 8 (ffffffff) => 0000ffff (00000000 00000000) - - lhzux 0 (00000000) => 00000000 (00000000 00000000) - lhzux 4 (000f423f) => 0000000f (00000000 00000000) - lhzux 8 (ffffffff) => 0000ffff (00000000 00000000) - - lwzx 0 (00000000) => 00000000 (00000000 00000000) - lwzx 4 (000f423f) => 000f423f (00000000 00000000) - lwzx 8 (ffffffff) => ffffffff (00000000 00000000) - - lwzux 0 (00000000) => 00000000 (00000000 00000000) - lwzux 4 (000f423f) => 000f423f (00000000 00000000) - lwzux 8 (ffffffff) => ffffffff (00000000 00000000) - -PPC integer store insns - with one register + one 16 bits immediate args with flags update: - stb 00000000, 0 => 00000000, (00000000 00000000) - stb 000f423f, 4 => 3f000000, (00000000 00000000) - stb ffffffff, 8 => ff000000, (00000000 00000000) - stb 00000000, -8 => 00000000, (00000000 00000000) - stb 000f423f, -4 => 3f000000, (00000000 00000000) - stb ffffffff, 0 => ff000000, (00000000 00000000) - - stbu 00000000, 0 => 00000000, (00000000 00000000) - stbu 000f423f, 4 => 3f000000, (00000000 00000000) - stbu ffffffff, 8 => ff000000, (00000000 00000000) - stbu 00000000, -8 => 00000000, (00000000 00000000) - stbu 000f423f, -4 => 3f000000, (00000000 00000000) - stbu ffffffff, 0 => ff000000, (00000000 00000000) - - sth 00000000, 0 => 00000000, (00000000 00000000) - sth 000f423f, 4 => 423f0000, (00000000 00000000) - sth ffffffff, 8 => ffff0000, (00000000 00000000) - sth 00000000, -8 => 00000000, (00000000 00000000) - sth 000f423f, -4 => 423f0000, (00000000 00000000) - sth ffffffff, 0 => ffff0000, (00000000 00000000) - - sthu 00000000, 0 => 00000000, (00000000 00000000) - sthu 000f423f, 4 => 423f0000, (00000000 00000000) - sthu ffffffff, 8 => ffff0000, (00000000 00000000) - sthu 00000000, -8 => 00000000, (00000000 00000000) - sthu 000f423f, -4 => 423f0000, (00000000 00000000) - sthu ffffffff, 0 => ffff0000, (00000000 00000000) - - stw 00000000, 0 => 00000000, (00000000 00000000) - stw 000f423f, 4 => 000f423f, (00000000 00000000) - stw ffffffff, 8 => ffffffff, (00000000 00000000) - stw 00000000, -8 => 00000000, (00000000 00000000) - stw 000f423f, -4 => 000f423f, (00000000 00000000) - stw ffffffff, 0 => ffffffff, (00000000 00000000) - - stwu 00000000, 0 => 00000000, (00000000 00000000) - stwu 000f423f, 4 => 000f423f, (00000000 00000000) - stwu ffffffff, 8 => ffffffff, (00000000 00000000) - stwu 00000000, -8 => 00000000, (00000000 00000000) - stwu 000f423f, -4 => 000f423f, (00000000 00000000) - stwu ffffffff, 0 => ffffffff, (00000000 00000000) - -PPC integer store insns with three register args: - stbx 00000000, 0 => 00000000, (00000000 00000000) - stbx 000f423f, 4 => 3f000000, (00000000 00000000) - stbx ffffffff, 8 => ff000000, (00000000 00000000) - - stbux 00000000, 0 => 00000000, (00000000 00000000) - stbux 000f423f, 4 => 3f000000, (00000000 00000000) - stbux ffffffff, 8 => ff000000, (00000000 00000000) - - sthx 00000000, 0 => 00000000, (00000000 00000000) - sthx 000f423f, 4 => 423f0000, (00000000 00000000) - sthx ffffffff, 8 => ffff0000, (00000000 00000000) - - sthux 00000000, 0 => 00000000, (00000000 00000000) - sthux 000f423f, 4 => 423f0000, (00000000 00000000) - sthux ffffffff, 8 => ffff0000, (00000000 00000000) - - stwx 00000000, 0 => 00000000, (00000000 00000000) - stwx 000f423f, 4 => 000f423f, (00000000 00000000) - stwx ffffffff, 8 => ffffffff, (00000000 00000000) - - stwux 00000000, 0 => 00000000, (00000000 00000000) - stwux 000f423f, 4 => 000f423f, (00000000 00000000) - stwux ffffffff, 8 => ffffffff, (00000000 00000000) - PPC altivec integer arith insns with three args: vmhaddshs: 0102030405060708090a0b0c0e0d0e0f, 0102030405060708090a0b0c0e0d0e0f, 0102030405060708090a0b0c0e0d0e0f vmhaddshs: => 010403160538076a09ad0c000f970f9a (00000000) @@ -4617,4 +3019,4 @@ Altivec float special insns: vctsxs: ffbfffff ( nan), 18 => 00000000 ( 0.000000e+00) (00000000) vctsxs: ffbfffff ( nan), 27 => 00000000 ( 0.000000e+00) (00000000) -All done. Tested 315 different instructions +All done. Tested 161 different instructions -- 2.47.2