diff options
Diffstat (limited to 'capstone/suite/MC/PowerPC')
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-encoding-bookII.s.cs | 24 | ||||
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-encoding-bookIII.s.cs | 35 | ||||
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-encoding-ext.s.cs | 535 | ||||
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-encoding-fp.s.cs | 110 | ||||
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-encoding-vmx.s.cs | 170 | ||||
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-encoding.s.cs | 202 | ||||
-rw-r--r-- | capstone/suite/MC/PowerPC/ppc64-operands.s.cs | 31 |
7 files changed, 1107 insertions, 0 deletions
diff --git a/capstone/suite/MC/PowerPC/ppc64-encoding-bookII.s.cs b/capstone/suite/MC/PowerPC/ppc64-encoding-bookII.s.cs new file mode 100644 index 000000000..cb8102169 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-encoding-bookII.s.cs @@ -0,0 +1,24 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME +0x7c,0x02,0x1f,0xac = icbi 2, 3 +0x7c,0x02,0x1a,0x2c = dcbt 2, 3 +0x7c,0x02,0x19,0xec = dcbtst 2, 3 +0x7c,0x02,0x1f,0xec = dcbz 2, 3 +0x7c,0x02,0x18,0x6c = dcbst 2, 3 +0x4c,0x00,0x01,0x2c = isync +0x7c,0x43,0x21,0x2d = stwcx. 2, 3, 4 +0x7c,0x43,0x21,0xad = stdcx. 2, 3, 4 +// 0x7c,0x40,0x04,0xac = sync 2 +0x7c,0x00,0x06,0xac = eieio +// 0x7c,0x40,0x00,0x7c = wait 2 +0x7c,0x02,0x18,0xac = dcbf 2, 3 +0x7c,0x43,0x20,0x28 = lwarx 2, 3, 4 +0x7c,0x43,0x20,0xa8 = ldarx 2, 3, 4 +0x7c,0x00,0x04,0xac = sync +// 0x7c,0x20,0x04,0xac = sync 1 +// 0x7c,0x40,0x04,0xac = sync 2 +// 0x7c,0x00,0x00,0x7c = wait 0 +// 0x7c,0x20,0x00,0x7c = wait 1 +// 0x7c,0x40,0x00,0x7c = wait 2 +0x7c,0x5b,0x1a,0xe6 = mftb 2, 123 +0x7c,0x4c,0x42,0xe6 = mftb 2, 268 +// 0x7c,0x4d,0x42,0xe6 = mftb 2, 269 diff --git a/capstone/suite/MC/PowerPC/ppc64-encoding-bookIII.s.cs b/capstone/suite/MC/PowerPC/ppc64-encoding-bookIII.s.cs new file mode 100644 index 000000000..53ab9cd44 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-encoding-bookIII.s.cs @@ -0,0 +1,35 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME +// 0x7c,0x80,0x01,0x24 = mtmsr 4, 0 +0x7c,0x81,0x01,0x24 = mtmsr 4, 1 +0x7c,0x80,0x00,0xa6 = mfmsr 4 +// 0x7c,0x80,0x01,0x64 = mtmsrd 4, 0 +0x7c,0x81,0x01,0x64 = mtmsrd 4, 1 +0x7c,0x90,0x42,0xa6 = mfspr 4, 272 +0x7c,0x91,0x42,0xa6 = mfspr 4, 273 +0x7c,0x92,0x42,0xa6 = mfspr 4, 274 +0x7c,0x93,0x42,0xa6 = mfspr 4, 275 +0x7c,0x90,0x43,0xa6 = mtspr 272, 4 +0x7c,0x91,0x43,0xa6 = mtspr 273, 4 +0x7c,0x92,0x43,0xa6 = mtspr 274, 4 +0x7c,0x93,0x43,0xa6 = mtspr 275, 4 +0x7c,0x90,0x43,0xa6 = mtspr 272, 4 +0x7c,0x91,0x43,0xa6 = mtspr 273, 4 +0x7c,0x92,0x43,0xa6 = mtspr 274, 4 +0x7c,0x93,0x43,0xa6 = mtspr 275, 4 +0x7c,0x98,0x43,0xa6 = mtspr 280, 4 +0x7c,0x96,0x02,0xa6 = mfspr 4, 22 +0x7c,0x96,0x03,0xa6 = mtspr 22, 4 +// 0x7c,0x9f,0x42,0xa6 = mfspr 4, 287 +0x7c,0x99,0x02,0xa6 = mfspr 4, 25 +0x7c,0x99,0x03,0xa6 = mtspr 25, 4 +0x7c,0x9a,0x02,0xa6 = mfspr 4, 26 +0x7c,0x9a,0x03,0xa6 = mtspr 26, 4 +0x7c,0x9b,0x02,0xa6 = mfspr 4, 27 +0x7c,0x9b,0x03,0xa6 = mtspr 27, 4 +0x7c,0x00,0x23,0x64 = slbie 4 +0x7c,0x80,0x2b,0x24 = slbmte 4, 5 +0x7c,0x80,0x2f,0x26 = slbmfee 4, 5 +0x7c,0x00,0x03,0xe4 = slbia +0x7c,0x00,0x04,0x6c = tlbsync +0x7c,0x00,0x22,0x24 = tlbiel 4 +// 0x7c,0x00,0x22,0x64 = tlbie 4,0 diff --git a/capstone/suite/MC/PowerPC/ppc64-encoding-ext.s.cs b/capstone/suite/MC/PowerPC/ppc64-encoding-ext.s.cs new file mode 100644 index 000000000..e13b4c407 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-encoding-ext.s.cs @@ -0,0 +1,535 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME +// 0x4d,0x82,0x00,0x20 = beqlr 0 +// 0x4d,0x86,0x00,0x20 = beqlr 1 +// 0x4d,0x8a,0x00,0x20 = beqlr 2 +// 0x4d,0x8e,0x00,0x20 = beqlr 3 +// 0x4d,0x92,0x00,0x20 = beqlr 4 +// 0x4d,0x96,0x00,0x20 = beqlr 5 +// 0x4d,0x9a,0x00,0x20 = beqlr 6 +// 0x4d,0x9e,0x00,0x20 = beqlr 7 +// 0x4d,0x80,0x00,0x20 = bclr 12, 0, 0 +// 0x4d,0x81,0x00,0x20 = bclr 12, 1, 0 +// 0x4d,0x82,0x00,0x20 = bclr 12, 2, 0 +// 0x4d,0x83,0x00,0x20 = bclr 12, 3, 0 +// 0x4d,0x83,0x00,0x20 = bclr 12, 3, 0 +// 0x4d,0x84,0x00,0x20 = bclr 12, 4, 0 +// 0x4d,0x85,0x00,0x20 = bclr 12, 5, 0 +// 0x4d,0x86,0x00,0x20 = bclr 12, 6, 0 +// 0x4d,0x87,0x00,0x20 = bclr 12, 7, 0 +// 0x4d,0x87,0x00,0x20 = bclr 12, 7, 0 +// 0x4d,0x88,0x00,0x20 = bclr 12, 8, 0 +// 0x4d,0x89,0x00,0x20 = bclr 12, 9, 0 +// 0x4d,0x8a,0x00,0x20 = bclr 12, 10, 0 +// 0x4d,0x8b,0x00,0x20 = bclr 12, 11, 0 +// 0x4d,0x8b,0x00,0x20 = bclr 12, 11, 0 +// 0x4d,0x8c,0x00,0x20 = bclr 12, 12, 0 +// 0x4d,0x8d,0x00,0x20 = bclr 12, 13, 0 +// 0x4d,0x8e,0x00,0x20 = bclr 12, 14, 0 +// 0x4d,0x8f,0x00,0x20 = bclr 12, 15, 0 +// 0x4d,0x8f,0x00,0x20 = bclr 12, 15, 0 +// 0x4d,0x90,0x00,0x20 = bclr 12, 16, 0 +// 0x4d,0x91,0x00,0x20 = bclr 12, 17, 0 +// 0x4d,0x92,0x00,0x20 = bclr 12, 18, 0 +// 0x4d,0x93,0x00,0x20 = bclr 12, 19, 0 +// 0x4d,0x93,0x00,0x20 = bclr 12, 19, 0 +// 0x4d,0x94,0x00,0x20 = bclr 12, 20, 0 +// 0x4d,0x95,0x00,0x20 = bclr 12, 21, 0 +// 0x4d,0x96,0x00,0x20 = bclr 12, 22, 0 +// 0x4d,0x97,0x00,0x20 = bclr 12, 23, 0 +// 0x4d,0x97,0x00,0x20 = bclr 12, 23, 0 +// 0x4d,0x98,0x00,0x20 = bclr 12, 24, 0 +// 0x4d,0x99,0x00,0x20 = bclr 12, 25, 0 +// 0x4d,0x9a,0x00,0x20 = bclr 12, 26, 0 +// 0x4d,0x9b,0x00,0x20 = bclr 12, 27, 0 +// 0x4d,0x9b,0x00,0x20 = bclr 12, 27, 0 +// 0x4d,0x9c,0x00,0x20 = bclr 12, 28, 0 +// 0x4d,0x9d,0x00,0x20 = bclr 12, 29, 0 +// 0x4d,0x9e,0x00,0x20 = bclr 12, 30, 0 +// 0x4d,0x9f,0x00,0x20 = bclr 12, 31, 0 +// 0x4d,0x9f,0x00,0x20 = bclr 12, 31, 0 +0x4e,0x80,0x00,0x20 = blr +0x4e,0x80,0x04,0x20 = bctr +0x4e,0x80,0x00,0x21 = blrl +0x4e,0x80,0x04,0x21 = bctrl +// 0x4d,0x82,0x00,0x20 = bclr 12, 2, 0 +// 0x4d,0x82,0x04,0x20 = bcctr 12, 2, 0 +// 0x4d,0x82,0x00,0x21 = bclrl 12, 2, 0 +// 0x4d,0x82,0x04,0x21 = bcctrl 12, 2, 0 +// 0x4d,0xe2,0x00,0x20 = bclr 15, 2, 0 +// 0x4d,0xe2,0x04,0x20 = bcctr 15, 2, 0 +// 0x4d,0xe2,0x00,0x21 = bclrl 15, 2, 0 +// 0x4d,0xe2,0x04,0x21 = bcctrl 15, 2, 0 +// 0x4d,0xc2,0x00,0x20 = bclr 14, 2, 0 +// 0x4d,0xc2,0x04,0x20 = bcctr 14, 2, 0 +// 0x4d,0xc2,0x00,0x21 = bclrl 14, 2, 0 +// 0x4d,0xc2,0x04,0x21 = bcctrl 14, 2, 0 +// 0x4c,0x82,0x00,0x20 = bclr 4, 2, 0 +// 0x4c,0x82,0x04,0x20 = bcctr 4, 2, 0 +// 0x4c,0x82,0x00,0x21 = bclrl 4, 2, 0 +// 0x4c,0x82,0x04,0x21 = bcctrl 4, 2, 0 +// 0x4c,0xe2,0x00,0x20 = bclr 7, 2, 0 +// 0x4c,0xe2,0x04,0x20 = bcctr 7, 2, 0 +// 0x4c,0xe2,0x00,0x21 = bclrl 7, 2, 0 +// 0x4c,0xe2,0x04,0x21 = bcctrl 7, 2, 0 +// 0x4c,0xc2,0x00,0x20 = bclr 6, 2, 0 +// 0x4c,0xc2,0x04,0x20 = bcctr 6, 2, 0 +// 0x4c,0xc2,0x00,0x21 = bclrl 6, 2, 0 +// 0x4c,0xc2,0x04,0x21 = bcctrl 6, 2, 0 +0x4e,0x00,0x00,0x20 = bdnzlr +0x4e,0x00,0x00,0x21 = bdnzlrl +0x4f,0x20,0x00,0x20 = bdnzlr+ +0x4f,0x20,0x00,0x21 = bdnzlrl+ +0x4f,0x00,0x00,0x20 = bdnzlr- +0x4f,0x00,0x00,0x21 = bdnzlrl- +// 0x4d,0x02,0x00,0x20 = bclr 8, 2, 0 +// 0x4d,0x02,0x00,0x21 = bclrl 8, 2, 0 +// 0x4c,0x02,0x00,0x20 = bclr 0, 2, 0 +// 0x4c,0x02,0x00,0x21 = bclrl 0, 2, 0 +0x4e,0x40,0x00,0x20 = bdzlr +0x4e,0x40,0x00,0x21 = bdzlrl +0x4f,0x60,0x00,0x20 = bdzlr+ +0x4f,0x60,0x00,0x21 = bdzlrl+ +0x4f,0x40,0x00,0x20 = bdzlr- +0x4f,0x40,0x00,0x21 = bdzlrl- +// 0x4d,0x42,0x00,0x20 = bclr 10, 2, 0 +// 0x4d,0x42,0x00,0x21 = bclrl 10, 2, 0 +// 0x4c,0x42,0x00,0x20 = bclr 2, 2, 0 +// 0x4c,0x42,0x00,0x21 = bclrl 2, 2, 0 +// 0x4d,0x88,0x00,0x20 = bltlr 2 +// 0x4d,0x80,0x00,0x20 = bltlr 0 +// 0x4d,0x88,0x04,0x20 = bltctr 2 +// 0x4d,0x80,0x04,0x20 = bltctr 0 +// 0x4d,0x88,0x00,0x21 = bltlrl 2 +// 0x4d,0x80,0x00,0x21 = bltlrl 0 +// 0x4d,0x88,0x04,0x21 = bltctrl 2 +// 0x4d,0x80,0x04,0x21 = bltctrl 0 +// 0x4d,0xe8,0x00,0x20 = bltlr+ 2 +// 0x4d,0xe0,0x00,0x20 = bltlr+ 0 +// 0x4d,0xe8,0x04,0x20 = bltctr+ 2 +// 0x4d,0xe0,0x04,0x20 = bltctr+ 0 +// 0x4d,0xe8,0x00,0x21 = bltlrl+ 2 +// 0x4d,0xe0,0x00,0x21 = bltlrl+ 0 +// 0x4d,0xe8,0x04,0x21 = bltctrl+ 2 +// 0x4d,0xe0,0x04,0x21 = bltctrl+ 0 +// 0x4d,0xc8,0x00,0x20 = bltlr- 2 +// 0x4d,0xc0,0x00,0x20 = bltlr- 0 +// 0x4d,0xc8,0x04,0x20 = bltctr- 2 +// 0x4d,0xc0,0x04,0x20 = bltctr- 0 +// 0x4d,0xc8,0x00,0x21 = bltlrl- 2 +// 0x4d,0xc0,0x00,0x21 = bltlrl- 0 +// 0x4d,0xc8,0x04,0x21 = bltctrl- 2 +// 0x4d,0xc0,0x04,0x21 = bltctrl- 0 +// 0x4c,0x89,0x00,0x20 = blelr 2 +// 0x4c,0x81,0x00,0x20 = blelr 0 +// 0x4c,0x89,0x04,0x20 = blectr 2 +// 0x4c,0x81,0x04,0x20 = blectr 0 +// 0x4c,0x89,0x00,0x21 = blelrl 2 +// 0x4c,0x81,0x00,0x21 = blelrl 0 +// 0x4c,0x89,0x04,0x21 = blectrl 2 +// 0x4c,0x81,0x04,0x21 = blectrl 0 +// 0x4c,0xe9,0x00,0x20 = blelr+ 2 +// 0x4c,0xe1,0x00,0x20 = blelr+ 0 +// 0x4c,0xe9,0x04,0x20 = blectr+ 2 +// 0x4c,0xe1,0x04,0x20 = blectr+ 0 +// 0x4c,0xe9,0x00,0x21 = blelrl+ 2 +// 0x4c,0xe1,0x00,0x21 = blelrl+ 0 +// 0x4c,0xe9,0x04,0x21 = blectrl+ 2 +// 0x4c,0xe1,0x04,0x21 = blectrl+ 0 +// 0x4c,0xc9,0x00,0x20 = blelr- 2 +// 0x4c,0xc1,0x00,0x20 = blelr- 0 +// 0x4c,0xc9,0x04,0x20 = blectr- 2 +// 0x4c,0xc1,0x04,0x20 = blectr- 0 +// 0x4c,0xc9,0x00,0x21 = blelrl- 2 +// 0x4c,0xc1,0x00,0x21 = blelrl- 0 +// 0x4c,0xc9,0x04,0x21 = blectrl- 2 +// 0x4c,0xc1,0x04,0x21 = blectrl- 0 +// 0x4d,0x8a,0x00,0x20 = beqlr 2 +// 0x4d,0x82,0x00,0x20 = beqlr 0 +// 0x4d,0x8a,0x04,0x20 = beqctr 2 +// 0x4d,0x82,0x04,0x20 = beqctr 0 +// 0x4d,0x8a,0x00,0x21 = beqlrl 2 +// 0x4d,0x82,0x00,0x21 = beqlrl 0 +// 0x4d,0x8a,0x04,0x21 = beqctrl 2 +// 0x4d,0x82,0x04,0x21 = beqctrl 0 +// 0x4d,0xea,0x00,0x20 = beqlr+ 2 +// 0x4d,0xe2,0x00,0x20 = beqlr+ 0 +// 0x4d,0xea,0x04,0x20 = beqctr+ 2 +// 0x4d,0xe2,0x04,0x20 = beqctr+ 0 +// 0x4d,0xea,0x00,0x21 = beqlrl+ 2 +// 0x4d,0xe2,0x00,0x21 = beqlrl+ 0 +// 0x4d,0xea,0x04,0x21 = beqctrl+ 2 +// 0x4d,0xe2,0x04,0x21 = beqctrl+ 0 +// 0x4d,0xca,0x00,0x20 = beqlr- 2 +// 0x4d,0xc2,0x00,0x20 = beqlr- 0 +// 0x4d,0xca,0x04,0x20 = beqctr- 2 +// 0x4d,0xc2,0x04,0x20 = beqctr- 0 +// 0x4d,0xca,0x00,0x21 = beqlrl- 2 +// 0x4d,0xc2,0x00,0x21 = beqlrl- 0 +// 0x4d,0xca,0x04,0x21 = beqctrl- 2 +// 0x4d,0xc2,0x04,0x21 = beqctrl- 0 +// 0x4c,0x88,0x00,0x20 = bgelr 2 +// 0x4c,0x80,0x00,0x20 = bgelr 0 +// 0x4c,0x88,0x04,0x20 = bgectr 2 +// 0x4c,0x80,0x04,0x20 = bgectr 0 +// 0x4c,0x88,0x00,0x21 = bgelrl 2 +// 0x4c,0x80,0x00,0x21 = bgelrl 0 +// 0x4c,0x88,0x04,0x21 = bgectrl 2 +// 0x4c,0x80,0x04,0x21 = bgectrl 0 +// 0x4c,0xe8,0x00,0x20 = bgelr+ 2 +// 0x4c,0xe0,0x00,0x20 = bgelr+ 0 +// 0x4c,0xe8,0x04,0x20 = bgectr+ 2 +// 0x4c,0xe0,0x04,0x20 = bgectr+ 0 +// 0x4c,0xe8,0x00,0x21 = bgelrl+ 2 +// 0x4c,0xe0,0x00,0x21 = bgelrl+ 0 +// 0x4c,0xe8,0x04,0x21 = bgectrl+ 2 +// 0x4c,0xe0,0x04,0x21 = bgectrl+ 0 +// 0x4c,0xc8,0x00,0x20 = bgelr- 2 +// 0x4c,0xc0,0x00,0x20 = bgelr- 0 +// 0x4c,0xc8,0x04,0x20 = bgectr- 2 +// 0x4c,0xc0,0x04,0x20 = bgectr- 0 +// 0x4c,0xc8,0x00,0x21 = bgelrl- 2 +// 0x4c,0xc0,0x00,0x21 = bgelrl- 0 +// 0x4c,0xc8,0x04,0x21 = bgectrl- 2 +// 0x4c,0xc0,0x04,0x21 = bgectrl- 0 +// 0x4d,0x89,0x00,0x20 = bgtlr 2 +// 0x4d,0x81,0x00,0x20 = bgtlr 0 +// 0x4d,0x89,0x04,0x20 = bgtctr 2 +// 0x4d,0x81,0x04,0x20 = bgtctr 0 +// 0x4d,0x89,0x00,0x21 = bgtlrl 2 +// 0x4d,0x81,0x00,0x21 = bgtlrl 0 +// 0x4d,0x89,0x04,0x21 = bgtctrl 2 +// 0x4d,0x81,0x04,0x21 = bgtctrl 0 +// 0x4d,0xe9,0x00,0x20 = bgtlr+ 2 +// 0x4d,0xe1,0x00,0x20 = bgtlr+ 0 +// 0x4d,0xe9,0x04,0x20 = bgtctr+ 2 +// 0x4d,0xe1,0x04,0x20 = bgtctr+ 0 +// 0x4d,0xe9,0x00,0x21 = bgtlrl+ 2 +// 0x4d,0xe1,0x00,0x21 = bgtlrl+ 0 +// 0x4d,0xe9,0x04,0x21 = bgtctrl+ 2 +// 0x4d,0xe1,0x04,0x21 = bgtctrl+ 0 +// 0x4d,0xc9,0x00,0x20 = bgtlr- 2 +// 0x4d,0xc1,0x00,0x20 = bgtlr- 0 +// 0x4d,0xc9,0x04,0x20 = bgtctr- 2 +// 0x4d,0xc1,0x04,0x20 = bgtctr- 0 +// 0x4d,0xc9,0x00,0x21 = bgtlrl- 2 +// 0x4d,0xc1,0x00,0x21 = bgtlrl- 0 +// 0x4d,0xc9,0x04,0x21 = bgtctrl- 2 +// 0x4d,0xc1,0x04,0x21 = bgtctrl- 0 +// 0x4c,0x88,0x00,0x20 = bgelr 2 +// 0x4c,0x80,0x00,0x20 = bgelr 0 +// 0x4c,0x88,0x04,0x20 = bgectr 2 +// 0x4c,0x80,0x04,0x20 = bgectr 0 +// 0x4c,0x88,0x00,0x21 = bgelrl 2 +// 0x4c,0x80,0x00,0x21 = bgelrl 0 +// 0x4c,0x88,0x04,0x21 = bgectrl 2 +// 0x4c,0x80,0x04,0x21 = bgectrl 0 +// 0x4c,0xe8,0x00,0x20 = bgelr+ 2 +// 0x4c,0xe0,0x00,0x20 = bgelr+ 0 +// 0x4c,0xe8,0x04,0x20 = bgectr+ 2 +// 0x4c,0xe0,0x04,0x20 = bgectr+ 0 +// 0x4c,0xe8,0x00,0x21 = bgelrl+ 2 +// 0x4c,0xe0,0x00,0x21 = bgelrl+ 0 +// 0x4c,0xe8,0x04,0x21 = bgectrl+ 2 +// 0x4c,0xe0,0x04,0x21 = bgectrl+ 0 +// 0x4c,0xc8,0x00,0x20 = bgelr- 2 +// 0x4c,0xc0,0x00,0x20 = bgelr- 0 +// 0x4c,0xc8,0x04,0x20 = bgectr- 2 +// 0x4c,0xc0,0x04,0x20 = bgectr- 0 +// 0x4c,0xc8,0x00,0x21 = bgelrl- 2 +// 0x4c,0xc0,0x00,0x21 = bgelrl- 0 +// 0x4c,0xc8,0x04,0x21 = bgectrl- 2 +// 0x4c,0xc0,0x04,0x21 = bgectrl- 0 +// 0x4c,0x8a,0x00,0x20 = bnelr 2 +// 0x4c,0x82,0x00,0x20 = bnelr 0 +// 0x4c,0x8a,0x04,0x20 = bnectr 2 +// 0x4c,0x82,0x04,0x20 = bnectr 0 +// 0x4c,0x8a,0x00,0x21 = bnelrl 2 +// 0x4c,0x82,0x00,0x21 = bnelrl 0 +// 0x4c,0x8a,0x04,0x21 = bnectrl 2 +// 0x4c,0x82,0x04,0x21 = bnectrl 0 +// 0x4c,0xea,0x00,0x20 = bnelr+ 2 +// 0x4c,0xe2,0x00,0x20 = bnelr+ 0 +// 0x4c,0xea,0x04,0x20 = bnectr+ 2 +// 0x4c,0xe2,0x04,0x20 = bnectr+ 0 +// 0x4c,0xea,0x00,0x21 = bnelrl+ 2 +// 0x4c,0xe2,0x00,0x21 = bnelrl+ 0 +// 0x4c,0xea,0x04,0x21 = bnectrl+ 2 +// 0x4c,0xe2,0x04,0x21 = bnectrl+ 0 +// 0x4c,0xca,0x00,0x20 = bnelr- 2 +// 0x4c,0xc2,0x00,0x20 = bnelr- 0 +// 0x4c,0xca,0x04,0x20 = bnectr- 2 +// 0x4c,0xc2,0x04,0x20 = bnectr- 0 +// 0x4c,0xca,0x00,0x21 = bnelrl- 2 +// 0x4c,0xc2,0x00,0x21 = bnelrl- 0 +// 0x4c,0xca,0x04,0x21 = bnectrl- 2 +// 0x4c,0xc2,0x04,0x21 = bnectrl- 0 +// 0x4c,0x89,0x00,0x20 = blelr 2 +// 0x4c,0x81,0x00,0x20 = blelr 0 +// 0x4c,0x89,0x04,0x20 = blectr 2 +// 0x4c,0x81,0x04,0x20 = blectr 0 +// 0x4c,0x89,0x00,0x21 = blelrl 2 +// 0x4c,0x81,0x00,0x21 = blelrl 0 +// 0x4c,0x89,0x04,0x21 = blectrl 2 +// 0x4c,0x81,0x04,0x21 = blectrl 0 +// 0x4c,0xe9,0x00,0x20 = blelr+ 2 +// 0x4c,0xe1,0x00,0x20 = blelr+ 0 +// 0x4c,0xe9,0x04,0x20 = blectr+ 2 +// 0x4c,0xe1,0x04,0x20 = blectr+ 0 +// 0x4c,0xe9,0x00,0x21 = blelrl+ 2 +// 0x4c,0xe1,0x00,0x21 = blelrl+ 0 +// 0x4c,0xe9,0x04,0x21 = blectrl+ 2 +// 0x4c,0xe1,0x04,0x21 = blectrl+ 0 +// 0x4c,0xc9,0x00,0x20 = blelr- 2 +// 0x4c,0xc1,0x00,0x20 = blelr- 0 +// 0x4c,0xc9,0x04,0x20 = blectr- 2 +// 0x4c,0xc1,0x04,0x20 = blectr- 0 +// 0x4c,0xc9,0x00,0x21 = blelrl- 2 +// 0x4c,0xc1,0x00,0x21 = blelrl- 0 +// 0x4c,0xc9,0x04,0x21 = blectrl- 2 +// 0x4c,0xc1,0x04,0x21 = blectrl- 0 +// 0x4d,0x8b,0x00,0x20 = bunlr 2 +// 0x4d,0x83,0x00,0x20 = bunlr 0 +// 0x4d,0x8b,0x04,0x20 = bunctr 2 +// 0x4d,0x83,0x04,0x20 = bunctr 0 +// 0x4d,0x8b,0x00,0x21 = bunlrl 2 +// 0x4d,0x83,0x00,0x21 = bunlrl 0 +// 0x4d,0x8b,0x04,0x21 = bunctrl 2 +// 0x4d,0x83,0x04,0x21 = bunctrl 0 +// 0x4d,0xeb,0x00,0x20 = bunlr+ 2 +// 0x4d,0xe3,0x00,0x20 = bunlr+ 0 +// 0x4d,0xeb,0x04,0x20 = bunctr+ 2 +// 0x4d,0xe3,0x04,0x20 = bunctr+ 0 +// 0x4d,0xeb,0x00,0x21 = bunlrl+ 2 +// 0x4d,0xe3,0x00,0x21 = bunlrl+ 0 +// 0x4d,0xeb,0x04,0x21 = bunctrl+ 2 +// 0x4d,0xe3,0x04,0x21 = bunctrl+ 0 +// 0x4d,0xcb,0x00,0x20 = bunlr- 2 +// 0x4d,0xc3,0x00,0x20 = bunlr- 0 +// 0x4d,0xcb,0x04,0x20 = bunctr- 2 +// 0x4d,0xc3,0x04,0x20 = bunctr- 0 +// 0x4d,0xcb,0x00,0x21 = bunlrl- 2 +// 0x4d,0xc3,0x00,0x21 = bunlrl- 0 +// 0x4d,0xcb,0x04,0x21 = bunctrl- 2 +// 0x4d,0xc3,0x04,0x21 = bunctrl- 0 +// 0x4c,0x8b,0x00,0x20 = bnulr 2 +// 0x4c,0x83,0x00,0x20 = bnulr 0 +// 0x4c,0x8b,0x04,0x20 = bnuctr 2 +// 0x4c,0x83,0x04,0x20 = bnuctr 0 +// 0x4c,0x8b,0x00,0x21 = bnulrl 2 +// 0x4c,0x83,0x00,0x21 = bnulrl 0 +// 0x4c,0x8b,0x04,0x21 = bnuctrl 2 +// 0x4c,0x83,0x04,0x21 = bnuctrl 0 +// 0x4c,0xeb,0x00,0x20 = bnulr+ 2 +// 0x4c,0xe3,0x00,0x20 = bnulr+ 0 +// 0x4c,0xeb,0x04,0x20 = bnuctr+ 2 +// 0x4c,0xe3,0x04,0x20 = bnuctr+ 0 +// 0x4c,0xeb,0x00,0x21 = bnulrl+ 2 +// 0x4c,0xe3,0x00,0x21 = bnulrl+ 0 +// 0x4c,0xeb,0x04,0x21 = bnuctrl+ 2 +// 0x4c,0xe3,0x04,0x21 = bnuctrl+ 0 +// 0x4c,0xcb,0x00,0x20 = bnulr- 2 +// 0x4c,0xc3,0x00,0x20 = bnulr- 0 +// 0x4c,0xcb,0x04,0x20 = bnuctr- 2 +// 0x4c,0xc3,0x04,0x20 = bnuctr- 0 +// 0x4c,0xcb,0x00,0x21 = bnulrl- 2 +// 0x4c,0xc3,0x00,0x21 = bnulrl- 0 +// 0x4c,0xcb,0x04,0x21 = bnuctrl- 2 +// 0x4c,0xc3,0x04,0x21 = bnuctrl- 0 +// 0x4d,0x8b,0x00,0x20 = bunlr 2 +// 0x4d,0x83,0x00,0x20 = bunlr 0 +// 0x4d,0x8b,0x04,0x20 = bunctr 2 +// 0x4d,0x83,0x04,0x20 = bunctr 0 +// 0x4d,0x8b,0x00,0x21 = bunlrl 2 +// 0x4d,0x83,0x00,0x21 = bunlrl 0 +// 0x4d,0x8b,0x04,0x21 = bunctrl 2 +// 0x4d,0x83,0x04,0x21 = bunctrl 0 +// 0x4d,0xeb,0x00,0x20 = bunlr+ 2 +// 0x4d,0xe3,0x00,0x20 = bunlr+ 0 +// 0x4d,0xeb,0x04,0x20 = bunctr+ 2 +// 0x4d,0xe3,0x04,0x20 = bunctr+ 0 +// 0x4d,0xeb,0x00,0x21 = bunlrl+ 2 +// 0x4d,0xe3,0x00,0x21 = bunlrl+ 0 +// 0x4d,0xeb,0x04,0x21 = bunctrl+ 2 +// 0x4d,0xe3,0x04,0x21 = bunctrl+ 0 +// 0x4d,0xcb,0x00,0x20 = bunlr- 2 +// 0x4d,0xc3,0x00,0x20 = bunlr- 0 +// 0x4d,0xcb,0x04,0x20 = bunctr- 2 +// 0x4d,0xc3,0x04,0x20 = bunctr- 0 +// 0x4d,0xcb,0x00,0x21 = bunlrl- 2 +// 0x4d,0xc3,0x00,0x21 = bunlrl- 0 +// 0x4d,0xcb,0x04,0x21 = bunctrl- 2 +// 0x4d,0xc3,0x04,0x21 = bunctrl- 0 +// 0x4c,0x8b,0x00,0x20 = bnulr 2 +// 0x4c,0x83,0x00,0x20 = bnulr 0 +// 0x4c,0x8b,0x04,0x20 = bnuctr 2 +// 0x4c,0x83,0x04,0x20 = bnuctr 0 +// 0x4c,0x8b,0x00,0x21 = bnulrl 2 +// 0x4c,0x83,0x00,0x21 = bnulrl 0 +// 0x4c,0x8b,0x04,0x21 = bnuctrl 2 +// 0x4c,0x83,0x04,0x21 = bnuctrl 0 +// 0x4c,0xeb,0x00,0x20 = bnulr+ 2 +// 0x4c,0xe3,0x00,0x20 = bnulr+ 0 +// 0x4c,0xeb,0x04,0x20 = bnuctr+ 2 +// 0x4c,0xe3,0x04,0x20 = bnuctr+ 0 +// 0x4c,0xeb,0x00,0x21 = bnulrl+ 2 +// 0x4c,0xe3,0x00,0x21 = bnulrl+ 0 +// 0x4c,0xeb,0x04,0x21 = bnuctrl+ 2 +// 0x4c,0xe3,0x04,0x21 = bnuctrl+ 0 +// 0x4c,0xcb,0x00,0x20 = bnulr- 2 +// 0x4c,0xc3,0x00,0x20 = bnulr- 0 +// 0x4c,0xcb,0x04,0x20 = bnuctr- 2 +// 0x4c,0xc3,0x04,0x20 = bnuctr- 0 +// 0x4c,0xcb,0x00,0x21 = bnulrl- 2 +// 0x4c,0xc3,0x00,0x21 = bnulrl- 0 +// 0x4c,0xcb,0x04,0x21 = bnuctrl- 2 +// 0x4c,0xc3,0x04,0x21 = bnuctrl- 0 +// 0x4c,0x42,0x12,0x42 = creqv 2, 2, 2 +// 0x4c,0x42,0x11,0x82 = crxor 2, 2, 2 +// 0x4c,0x43,0x1b,0x82 = cror 2, 3, 3 +// 0x4c,0x43,0x18,0x42 = crnor 2, 3, 3 +// 0x38,0x43,0xff,0x80 = addi 2, 3, -128 +// 0x3c,0x43,0xff,0x80 = addis 2, 3, -128 +// 0x30,0x43,0xff,0x80 = addic 2, 3, -128 +// 0x34,0x43,0xff,0x80 = addic. 2, 3, -128 +0x7c,0x44,0x18,0x50 = subf 2, 4, 3 +0x7c,0x44,0x18,0x51 = subf. 2, 4, 3 +0x7c,0x44,0x18,0x10 = subfc 2, 4, 3 +0x7c,0x44,0x18,0x11 = subfc. 2, 4, 3 +0x2d,0x23,0x00,0x80 = cmpdi 2, 3, 128 +// 0x2c,0x23,0x00,0x80 = cmpdi 0, 3, 128 +0x7d,0x23,0x20,0x00 = cmpd 2, 3, 4 +// 0x7c,0x23,0x20,0x00 = cmpd 0, 3, 4 +0x29,0x23,0x00,0x80 = cmpldi 2, 3, 128 +// 0x28,0x23,0x00,0x80 = cmpldi 0, 3, 128 +0x7d,0x23,0x20,0x40 = cmpld 2, 3, 4 +// 0x7c,0x23,0x20,0x40 = cmpld 0, 3, 4 +0x2d,0x03,0x00,0x80 = cmpwi 2, 3, 128 +// 0x2c,0x03,0x00,0x80 = cmpwi 0, 3, 128 +0x7d,0x03,0x20,0x00 = cmpw 2, 3, 4 +// 0x7c,0x03,0x20,0x00 = cmpw 0, 3, 4 +0x29,0x03,0x00,0x80 = cmplwi 2, 3, 128 +// 0x28,0x03,0x00,0x80 = cmplwi 0, 3, 128 +0x7d,0x03,0x20,0x40 = cmplw 2, 3, 4 +// 0x7c,0x03,0x20,0x40 = cmplw 0, 3, 4 +// 0x0e,0x03,0x00,0x04 = twi 16, 3, 4 +// 0x7e,0x03,0x20,0x08 = tw 16, 3, 4 +// 0x0a,0x03,0x00,0x04 = tdi 16, 3, 4 +// 0x7e,0x03,0x20,0x88 = td 16, 3, 4 +0x0e,0x83,0x00,0x04 = twi 20, 3, 4 +0x7e,0x83,0x20,0x08 = tw 20, 3, 4 +0x0a,0x83,0x00,0x04 = tdi 20, 3, 4 +0x7e,0x83,0x20,0x88 = td 20, 3, 4 +// 0x0c,0x83,0x00,0x04 = twi 4, 3, 4 +// 0x7c,0x83,0x20,0x08 = tw 4, 3, 4 +// 0x08,0x83,0x00,0x04 = tdi 4, 3, 4 +// 0x7c,0x83,0x20,0x88 = td 4, 3, 4 +0x0d,0x83,0x00,0x04 = twi 12, 3, 4 +0x7d,0x83,0x20,0x08 = tw 12, 3, 4 +0x09,0x83,0x00,0x04 = tdi 12, 3, 4 +0x7d,0x83,0x20,0x88 = td 12, 3, 4 +// 0x0d,0x03,0x00,0x04 = twi 8, 3, 4 +// 0x7d,0x03,0x20,0x08 = tw 8, 3, 4 +// 0x09,0x03,0x00,0x04 = tdi 8, 3, 4 +// 0x7d,0x03,0x20,0x88 = td 8, 3, 4 +0x0d,0x83,0x00,0x04 = twi 12, 3, 4 +0x7d,0x83,0x20,0x08 = tw 12, 3, 4 +0x09,0x83,0x00,0x04 = tdi 12, 3, 4 +0x7d,0x83,0x20,0x88 = td 12, 3, 4 +// 0x0f,0x03,0x00,0x04 = twi 24, 3, 4 +// 0x7f,0x03,0x20,0x08 = tw 24, 3, 4 +// 0x0b,0x03,0x00,0x04 = tdi 24, 3, 4 +// 0x7f,0x03,0x20,0x88 = td 24, 3, 4 +0x0e,0x83,0x00,0x04 = twi 20, 3, 4 +0x7e,0x83,0x20,0x08 = tw 20, 3, 4 +0x0a,0x83,0x00,0x04 = tdi 20, 3, 4 +0x7e,0x83,0x20,0x88 = td 20, 3, 4 +// 0x0c,0x43,0x00,0x04 = twi 2, 3, 4 +// 0x7c,0x43,0x20,0x08 = tw 2, 3, 4 +// 0x08,0x43,0x00,0x04 = tdi 2, 3, 4 +// 0x7c,0x43,0x20,0x88 = td 2, 3, 4 +0x0c,0xc3,0x00,0x04 = twi 6, 3, 4 +0x7c,0xc3,0x20,0x08 = tw 6, 3, 4 +0x08,0xc3,0x00,0x04 = tdi 6, 3, 4 +0x7c,0xc3,0x20,0x88 = td 6, 3, 4 +0x0c,0xa3,0x00,0x04 = twi 5, 3, 4 +0x7c,0xa3,0x20,0x08 = tw 5, 3, 4 +0x08,0xa3,0x00,0x04 = tdi 5, 3, 4 +0x7c,0xa3,0x20,0x88 = td 5, 3, 4 +// 0x0c,0x23,0x00,0x04 = twi 1, 3, 4 +// 0x7c,0x23,0x20,0x08 = tw 1, 3, 4 +// 0x08,0x23,0x00,0x04 = tdi 1, 3, 4 +// 0x7c,0x23,0x20,0x88 = td 1, 3, 4 +0x0c,0xa3,0x00,0x04 = twi 5, 3, 4 +0x7c,0xa3,0x20,0x08 = tw 5, 3, 4 +0x08,0xa3,0x00,0x04 = tdi 5, 3, 4 +0x7c,0xa3,0x20,0x88 = td 5, 3, 4 +0x0c,0xc3,0x00,0x04 = twi 6, 3, 4 +0x7c,0xc3,0x20,0x08 = tw 6, 3, 4 +0x08,0xc3,0x00,0x04 = tdi 6, 3, 4 +0x7c,0xc3,0x20,0x88 = td 6, 3, 4 +// 0x0f,0xe3,0x00,0x04 = twi 31, 3, 4 +// 0x7f,0xe3,0x20,0x08 = tw 31, 3, 4 +// 0x0b,0xe3,0x00,0x04 = tdi 31, 3, 4 +// 0x7f,0xe3,0x20,0x88 = td 31, 3, 4 +0x7f,0xe0,0x00,0x08 = trap +0x78,0x62,0x28,0xc4 = rldicr 2, 3, 5, 3 +0x78,0x62,0x28,0xc5 = rldicr. 2, 3, 5, 3 +0x78,0x62,0x4f,0x20 = rldicl 2, 3, 9, 60 +0x78,0x62,0x4f,0x21 = rldicl. 2, 3, 9, 60 +0x78,0x62,0xb9,0x4e = rldimi 2, 3, 55, 5 +0x78,0x62,0xb9,0x4f = rldimi. 2, 3, 55, 5 +// 0x78,0x62,0x20,0x00 = rldicl 2, 3, 4, 0 +// 0x78,0x62,0x20,0x01 = rldicl. 2, 3, 4, 0 +// 0x78,0x62,0xe0,0x02 = rldicl 2, 3, 60, 0 +// 0x78,0x62,0xe0,0x03 = rldicl. 2, 3, 60, 0 +// 0x78,0x62,0x20,0x10 = rldcl 2, 3, 4, 0 +// 0x78,0x62,0x20,0x11 = rldcl. 2, 3, 4, 0 +0x78,0x62,0x26,0xe4 = sldi 2, 3, 4 +0x78,0x62,0x26,0xe5 = rldicr. 2, 3, 4, 59 +0x78,0x62,0xe1,0x02 = rldicl 2, 3, 60, 4 +0x78,0x62,0xe1,0x03 = rldicl. 2, 3, 60, 4 +// 0x78,0x62,0x01,0x00 = rldicl 2, 3, 0, 4 +// 0x78,0x62,0x01,0x01 = rldicl. 2, 3, 0, 4 +0x78,0x62,0x06,0xe4 = rldicr 2, 3, 0, 59 +0x78,0x62,0x06,0xe5 = rldicr. 2, 3, 0, 59 +0x78,0x62,0x20,0x48 = rldic 2, 3, 4, 1 +0x78,0x62,0x20,0x49 = rldic. 2, 3, 4, 1 +0x54,0x62,0x28,0x06 = rlwinm 2, 3, 5, 0, 3 +0x54,0x62,0x28,0x07 = rlwinm. 2, 3, 5, 0, 3 +0x54,0x62,0x4f,0x3e = rlwinm 2, 3, 9, 28, 31 +0x54,0x62,0x4f,0x3f = rlwinm. 2, 3, 9, 28, 31 +0x50,0x62,0xd9,0x50 = rlwimi 2, 3, 27, 5, 8 +0x50,0x62,0xd9,0x51 = rlwimi. 2, 3, 27, 5, 8 +0x50,0x62,0xb9,0x50 = rlwimi 2, 3, 23, 5, 8 +0x50,0x62,0xb9,0x51 = rlwimi. 2, 3, 23, 5, 8 +// 0x54,0x62,0x20,0x3e = rlwinm 2, 3, 4, 0, 31 +// 0x54,0x62,0x20,0x3f = rlwinm. 2, 3, 4, 0, 31 +// 0x54,0x62,0xe0,0x3e = rlwinm 2, 3, 28, 0, 31 +// 0x54,0x62,0xe0,0x3f = rlwinm. 2, 3, 28, 0, 31 +// 0x5c,0x62,0x20,0x3e = rlwnm 2, 3, 4, 0, 31 +// 0x5c,0x62,0x20,0x3f = rlwnm. 2, 3, 4, 0, 31 +0x54,0x62,0x20,0x36 = slwi 2, 3, 4 +0x54,0x62,0x20,0x37 = rlwinm. 2, 3, 4, 0, 27 +0x54,0x62,0xe1,0x3e = srwi 2, 3, 4 +0x54,0x62,0xe1,0x3f = rlwinm. 2, 3, 28, 4, 31 +// 0x54,0x62,0x01,0x3e = rlwinm 2, 3, 0, 4, 31 +// 0x54,0x62,0x01,0x3f = rlwinm. 2, 3, 0, 4, 31 +0x54,0x62,0x00,0x36 = rlwinm 2, 3, 0, 0, 27 +0x54,0x62,0x00,0x37 = rlwinm. 2, 3, 0, 0, 27 +0x54,0x62,0x20,0x76 = rlwinm 2, 3, 4, 1, 27 +0x54,0x62,0x20,0x77 = rlwinm. 2, 3, 4, 1, 27 +// 0x7c,0x41,0x03,0xa6 = mtspr 1, 2 +// 0x7c,0x41,0x02,0xa6 = mfspr 2, 1 +0x7c,0x48,0x03,0xa6 = mtlr 2 +0x7c,0x48,0x02,0xa6 = mflr 2 +0x7c,0x49,0x03,0xa6 = mtctr 2 +0x7c,0x49,0x02,0xa6 = mfctr 2 +0x60,0x00,0x00,0x00 = nop +// 0x68,0x00,0x00,0x00 = xori 0, 0, 0 +0x38,0x40,0x00,0x80 = li 2, 128 +0x3c,0x40,0x00,0x80 = lis 2, 128 +0x7c,0x62,0x1b,0x78 = mr 2, 3 +0x7c,0x62,0x1b,0x79 = or. 2, 3, 3 +0x7c,0x62,0x18,0xf8 = nor 2, 3, 3 +0x7c,0x62,0x18,0xf9 = nor. 2, 3, 3 +0x7c,0x4f,0xf1,0x20 = mtcrf 255, 2 diff --git a/capstone/suite/MC/PowerPC/ppc64-encoding-fp.s.cs b/capstone/suite/MC/PowerPC/ppc64-encoding-fp.s.cs new file mode 100644 index 000000000..ace222dc6 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-encoding-fp.s.cs @@ -0,0 +1,110 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME +0xc0,0x44,0x00,0x80 = lfs 2, 128(4) +0x7c,0x43,0x24,0x2e = lfsx 2, 3, 4 +0xc4,0x44,0x00,0x80 = lfsu 2, 128(4) +0x7c,0x43,0x24,0x6e = lfsux 2, 3, 4 +0xc8,0x44,0x00,0x80 = lfd 2, 128(4) +0x7c,0x43,0x24,0xae = lfdx 2, 3, 4 +0xcc,0x44,0x00,0x80 = lfdu 2, 128(4) +0x7c,0x43,0x24,0xee = lfdux 2, 3, 4 +0x7c,0x43,0x26,0xae = lfiwax 2, 3, 4 +0x7c,0x43,0x26,0xee = lfiwzx 2, 3, 4 +0xd0,0x44,0x00,0x80 = stfs 2, 128(4) +0x7c,0x43,0x25,0x2e = stfsx 2, 3, 4 +0xd4,0x44,0x00,0x80 = stfsu 2, 128(4) +0x7c,0x43,0x25,0x6e = stfsux 2, 3, 4 +0xd8,0x44,0x00,0x80 = stfd 2, 128(4) +0x7c,0x43,0x25,0xae = stfdx 2, 3, 4 +0xdc,0x44,0x00,0x80 = stfdu 2, 128(4) +0x7c,0x43,0x25,0xee = stfdux 2, 3, 4 +0x7c,0x43,0x27,0xae = stfiwx 2, 3, 4 +0xfc,0x40,0x18,0x90 = fmr 2, 3 +0xfc,0x40,0x18,0x91 = fmr. 2, 3 +0xfc,0x40,0x18,0x50 = fneg 2, 3 +0xfc,0x40,0x18,0x51 = fneg. 2, 3 +0xfc,0x40,0x1a,0x10 = fabs 2, 3 +0xfc,0x40,0x1a,0x11 = fabs. 2, 3 +0xfc,0x40,0x19,0x10 = fnabs 2, 3 +0xfc,0x40,0x19,0x11 = fnabs. 2, 3 +0xfc,0x43,0x20,0x10 = fcpsgn 2, 3, 4 +0xfc,0x43,0x20,0x11 = fcpsgn. 2, 3, 4 +0xfc,0x43,0x20,0x2a = fadd 2, 3, 4 +0xfc,0x43,0x20,0x2b = fadd. 2, 3, 4 +0xec,0x43,0x20,0x2a = fadds 2, 3, 4 +0xec,0x43,0x20,0x2b = fadds. 2, 3, 4 +0xfc,0x43,0x20,0x28 = fsub 2, 3, 4 +0xfc,0x43,0x20,0x29 = fsub. 2, 3, 4 +0xec,0x43,0x20,0x28 = fsubs 2, 3, 4 +0xec,0x43,0x20,0x29 = fsubs. 2, 3, 4 +0xfc,0x43,0x01,0x32 = fmul 2, 3, 4 +0xfc,0x43,0x01,0x33 = fmul. 2, 3, 4 +0xec,0x43,0x01,0x32 = fmuls 2, 3, 4 +0xec,0x43,0x01,0x33 = fmuls. 2, 3, 4 +0xfc,0x43,0x20,0x24 = fdiv 2, 3, 4 +0xfc,0x43,0x20,0x25 = fdiv. 2, 3, 4 +0xec,0x43,0x20,0x24 = fdivs 2, 3, 4 +0xec,0x43,0x20,0x25 = fdivs. 2, 3, 4 +0xfc,0x40,0x18,0x2c = fsqrt 2, 3 +0xfc,0x40,0x18,0x2d = fsqrt. 2, 3 +0xec,0x40,0x18,0x2c = fsqrts 2, 3 +0xec,0x40,0x18,0x2d = fsqrts. 2, 3 +0xfc,0x40,0x18,0x30 = fre 2, 3 +0xfc,0x40,0x18,0x31 = fre. 2, 3 +0xec,0x40,0x18,0x30 = fres 2, 3 +0xec,0x40,0x18,0x31 = fres. 2, 3 +0xfc,0x40,0x18,0x34 = frsqrte 2, 3 +0xfc,0x40,0x18,0x35 = frsqrte. 2, 3 +0xec,0x40,0x18,0x34 = frsqrtes 2, 3 +0xec,0x40,0x18,0x35 = frsqrtes. 2, 3 +0xfc,0x43,0x29,0x3a = fmadd 2, 3, 4, 5 +0xfc,0x43,0x29,0x3b = fmadd. 2, 3, 4, 5 +0xec,0x43,0x29,0x3a = fmadds 2, 3, 4, 5 +0xec,0x43,0x29,0x3b = fmadds. 2, 3, 4, 5 +0xfc,0x43,0x29,0x38 = fmsub 2, 3, 4, 5 +0xfc,0x43,0x29,0x39 = fmsub. 2, 3, 4, 5 +0xec,0x43,0x29,0x38 = fmsubs 2, 3, 4, 5 +0xec,0x43,0x29,0x39 = fmsubs. 2, 3, 4, 5 +0xfc,0x43,0x29,0x3e = fnmadd 2, 3, 4, 5 +0xfc,0x43,0x29,0x3f = fnmadd. 2, 3, 4, 5 +0xec,0x43,0x29,0x3e = fnmadds 2, 3, 4, 5 +0xec,0x43,0x29,0x3f = fnmadds. 2, 3, 4, 5 +0xfc,0x43,0x29,0x3c = fnmsub 2, 3, 4, 5 +0xfc,0x43,0x29,0x3d = fnmsub. 2, 3, 4, 5 +0xec,0x43,0x29,0x3c = fnmsubs 2, 3, 4, 5 +0xec,0x43,0x29,0x3d = fnmsubs. 2, 3, 4, 5 +0xfc,0x40,0x18,0x18 = frsp 2, 3 +0xfc,0x40,0x18,0x19 = frsp. 2, 3 +0xfc,0x40,0x1e,0x5c = fctid 2, 3 +0xfc,0x40,0x1e,0x5d = fctid. 2, 3 +0xfc,0x40,0x1e,0x5e = fctidz 2, 3 +0xfc,0x40,0x1e,0x5f = fctidz. 2, 3 +0xfc,0x40,0x1f,0x5e = fctiduz 2, 3 +0xfc,0x40,0x1f,0x5f = fctiduz. 2, 3 +0xfc,0x40,0x18,0x1c = fctiw 2, 3 +0xfc,0x40,0x18,0x1d = fctiw. 2, 3 +0xfc,0x40,0x18,0x1e = fctiwz 2, 3 +0xfc,0x40,0x18,0x1f = fctiwz. 2, 3 +0xfc,0x40,0x19,0x1e = fctiwuz 2, 3 +0xfc,0x40,0x19,0x1f = fctiwuz. 2, 3 +0xfc,0x40,0x1e,0x9c = fcfid 2, 3 +0xfc,0x40,0x1e,0x9d = fcfid. 2, 3 +0xfc,0x40,0x1f,0x9c = fcfidu 2, 3 +0xfc,0x40,0x1f,0x9d = fcfidu. 2, 3 +0xec,0x40,0x1e,0x9c = fcfids 2, 3 +0xec,0x40,0x1e,0x9d = fcfids. 2, 3 +0xec,0x40,0x1f,0x9c = fcfidus 2, 3 +0xec,0x40,0x1f,0x9d = fcfidus. 2, 3 +0xfc,0x40,0x1b,0x10 = frin 2, 3 +0xfc,0x40,0x1b,0x11 = frin. 2, 3 +0xfc,0x40,0x1b,0x90 = frip 2, 3 +0xfc,0x40,0x1b,0x91 = frip. 2, 3 +0xfc,0x40,0x1b,0x50 = friz 2, 3 +0xfc,0x40,0x1b,0x51 = friz. 2, 3 +0xfc,0x40,0x1b,0xd0 = frim 2, 3 +0xfc,0x40,0x1b,0xd1 = frim. 2, 3 +0xfd,0x03,0x20,0x00 = fcmpu 2, 3, 4 +0xfc,0x43,0x29,0x2e = fsel 2, 3, 4, 5 +0xfc,0x43,0x29,0x2f = fsel. 2, 3, 4, 5 +0xfc,0x40,0x04,0x8e = mffs 2 +0xff,0xe0,0x00,0x8c = mtfsb0 31 +0xff,0xe0,0x00,0x4c = mtfsb1 31 diff --git a/capstone/suite/MC/PowerPC/ppc64-encoding-vmx.s.cs b/capstone/suite/MC/PowerPC/ppc64-encoding-vmx.s.cs new file mode 100644 index 000000000..087c082d4 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-encoding-vmx.s.cs @@ -0,0 +1,170 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME +0x7c,0x43,0x20,0x0e = lvebx 2, 3, 4 +0x7c,0x43,0x20,0x4e = lvehx 2, 3, 4 +0x7c,0x43,0x20,0x8e = lvewx 2, 3, 4 +0x7c,0x43,0x20,0xce = lvx 2, 3, 4 +0x7c,0x43,0x22,0xce = lvxl 2, 3, 4 +0x7c,0x43,0x21,0x0e = stvebx 2, 3, 4 +0x7c,0x43,0x21,0x4e = stvehx 2, 3, 4 +0x7c,0x43,0x21,0x8e = stvewx 2, 3, 4 +0x7c,0x43,0x21,0xce = stvx 2, 3, 4 +0x7c,0x43,0x23,0xce = stvxl 2, 3, 4 +0x7c,0x43,0x20,0x0c = lvsl 2, 3, 4 +0x7c,0x43,0x20,0x4c = lvsr 2, 3, 4 +0x10,0x43,0x23,0x0e = vpkpx 2, 3, 4 +0x10,0x43,0x21,0x8e = vpkshss 2, 3, 4 +0x10,0x43,0x21,0x0e = vpkshus 2, 3, 4 +0x10,0x43,0x21,0xce = vpkswss 2, 3, 4 +0x10,0x43,0x21,0x4e = vpkswus 2, 3, 4 +0x10,0x43,0x20,0x0e = vpkuhum 2, 3, 4 +0x10,0x43,0x20,0x8e = vpkuhus 2, 3, 4 +0x10,0x43,0x20,0x4e = vpkuwum 2, 3, 4 +0x10,0x43,0x20,0xce = vpkuwus 2, 3, 4 +0x10,0x40,0x1b,0x4e = vupkhpx 2, 3 +0x10,0x40,0x1a,0x0e = vupkhsb 2, 3 +0x10,0x40,0x1a,0x4e = vupkhsh 2, 3 +0x10,0x40,0x1b,0xce = vupklpx 2, 3 +0x10,0x40,0x1a,0x8e = vupklsb 2, 3 +0x10,0x40,0x1a,0xce = vupklsh 2, 3 +0x10,0x43,0x20,0x0c = vmrghb 2, 3, 4 +0x10,0x43,0x20,0x4c = vmrghh 2, 3, 4 +0x10,0x43,0x20,0x8c = vmrghw 2, 3, 4 +0x10,0x43,0x21,0x0c = vmrglb 2, 3, 4 +0x10,0x43,0x21,0x4c = vmrglh 2, 3, 4 +0x10,0x43,0x21,0x8c = vmrglw 2, 3, 4 +0x10,0x41,0x1a,0x0c = vspltb 2, 3, 1 +0x10,0x41,0x1a,0x4c = vsplth 2, 3, 1 +0x10,0x41,0x1a,0x8c = vspltw 2, 3, 1 +0x10,0x43,0x03,0x0c = vspltisb 2, 3 +0x10,0x43,0x03,0x4c = vspltish 2, 3 +0x10,0x43,0x03,0x8c = vspltisw 2, 3 +0x10,0x43,0x21,0x6b = vperm 2, 3, 4, 5 +0x10,0x43,0x21,0x6a = vsel 2, 3, 4, 5 +0x10,0x43,0x21,0xc4 = vsl 2, 3, 4 +0x10,0x43,0x21,0x6c = vsldoi 2, 3, 4, 5 +0x10,0x43,0x24,0x0c = vslo 2, 3, 4 +0x10,0x43,0x22,0xc4 = vsr 2, 3, 4 +0x10,0x43,0x24,0x4c = vsro 2, 3, 4 +0x10,0x43,0x21,0x80 = vaddcuw 2, 3, 4 +0x10,0x43,0x23,0x00 = vaddsbs 2, 3, 4 +0x10,0x43,0x23,0x40 = vaddshs 2, 3, 4 +0x10,0x43,0x23,0x80 = vaddsws 2, 3, 4 +0x10,0x43,0x20,0x00 = vaddubm 2, 3, 4 +0x10,0x43,0x20,0x40 = vadduhm 2, 3, 4 +0x10,0x43,0x20,0x80 = vadduwm 2, 3, 4 +0x10,0x43,0x22,0x00 = vaddubs 2, 3, 4 +0x10,0x43,0x22,0x40 = vadduhs 2, 3, 4 +0x10,0x43,0x22,0x80 = vadduws 2, 3, 4 +0x10,0x43,0x25,0x80 = vsubcuw 2, 3, 4 +0x10,0x43,0x27,0x00 = vsubsbs 2, 3, 4 +0x10,0x43,0x27,0x40 = vsubshs 2, 3, 4 +0x10,0x43,0x27,0x80 = vsubsws 2, 3, 4 +0x10,0x43,0x24,0x00 = vsububm 2, 3, 4 +0x10,0x43,0x24,0x40 = vsubuhm 2, 3, 4 +0x10,0x43,0x24,0x80 = vsubuwm 2, 3, 4 +0x10,0x43,0x26,0x00 = vsububs 2, 3, 4 +0x10,0x43,0x26,0x40 = vsubuhs 2, 3, 4 +0x10,0x43,0x26,0x80 = vsubuws 2, 3, 4 +0x10,0x43,0x23,0x08 = vmulesb 2, 3, 4 +0x10,0x43,0x23,0x48 = vmulesh 2, 3, 4 +0x10,0x43,0x22,0x08 = vmuleub 2, 3, 4 +0x10,0x43,0x22,0x48 = vmuleuh 2, 3, 4 +0x10,0x43,0x21,0x08 = vmulosb 2, 3, 4 +0x10,0x43,0x21,0x48 = vmulosh 2, 3, 4 +0x10,0x43,0x20,0x08 = vmuloub 2, 3, 4 +0x10,0x43,0x20,0x48 = vmulouh 2, 3, 4 +0x10,0x43,0x21,0x60 = vmhaddshs 2, 3, 4, 5 +0x10,0x43,0x21,0x61 = vmhraddshs 2, 3, 4, 5 +0x10,0x43,0x21,0x62 = vmladduhm 2, 3, 4, 5 +0x10,0x43,0x21,0x64 = vmsumubm 2, 3, 4, 5 +0x10,0x43,0x21,0x65 = vmsummbm 2, 3, 4, 5 +0x10,0x43,0x21,0x68 = vmsumshm 2, 3, 4, 5 +0x10,0x43,0x21,0x69 = vmsumshs 2, 3, 4, 5 +0x10,0x43,0x21,0x66 = vmsumuhm 2, 3, 4, 5 +0x10,0x43,0x21,0x67 = vmsumuhs 2, 3, 4, 5 +0x10,0x43,0x27,0x88 = vsumsws 2, 3, 4 +0x10,0x43,0x26,0x88 = vsum2sws 2, 3, 4 +0x10,0x43,0x27,0x08 = vsum4sbs 2, 3, 4 +0x10,0x43,0x26,0x48 = vsum4shs 2, 3, 4 +0x10,0x43,0x26,0x08 = vsum4ubs 2, 3, 4 +0x10,0x43,0x25,0x02 = vavgsb 2, 3, 4 +0x10,0x43,0x25,0x42 = vavgsh 2, 3, 4 +0x10,0x43,0x25,0x82 = vavgsw 2, 3, 4 +0x10,0x43,0x24,0x02 = vavgub 2, 3, 4 +0x10,0x43,0x24,0x42 = vavguh 2, 3, 4 +0x10,0x43,0x24,0x82 = vavguw 2, 3, 4 +0x10,0x43,0x21,0x02 = vmaxsb 2, 3, 4 +0x10,0x43,0x21,0x42 = vmaxsh 2, 3, 4 +0x10,0x43,0x21,0x82 = vmaxsw 2, 3, 4 +0x10,0x43,0x20,0x02 = vmaxub 2, 3, 4 +0x10,0x43,0x20,0x42 = vmaxuh 2, 3, 4 +0x10,0x43,0x20,0x82 = vmaxuw 2, 3, 4 +0x10,0x43,0x23,0x02 = vminsb 2, 3, 4 +0x10,0x43,0x23,0x42 = vminsh 2, 3, 4 +0x10,0x43,0x23,0x82 = vminsw 2, 3, 4 +0x10,0x43,0x22,0x02 = vminub 2, 3, 4 +0x10,0x43,0x22,0x42 = vminuh 2, 3, 4 +0x10,0x43,0x22,0x82 = vminuw 2, 3, 4 +0x10,0x43,0x20,0x06 = vcmpequb 2, 3, 4 +0x10,0x43,0x24,0x06 = vcmpequb. 2, 3, 4 +0x10,0x43,0x20,0x46 = vcmpequh 2, 3, 4 +0x10,0x43,0x24,0x46 = vcmpequh. 2, 3, 4 +0x10,0x43,0x20,0x86 = vcmpequw 2, 3, 4 +0x10,0x43,0x24,0x86 = vcmpequw. 2, 3, 4 +0x10,0x43,0x23,0x06 = vcmpgtsb 2, 3, 4 +0x10,0x43,0x27,0x06 = vcmpgtsb. 2, 3, 4 +0x10,0x43,0x23,0x46 = vcmpgtsh 2, 3, 4 +0x10,0x43,0x27,0x46 = vcmpgtsh. 2, 3, 4 +0x10,0x43,0x23,0x86 = vcmpgtsw 2, 3, 4 +0x10,0x43,0x27,0x86 = vcmpgtsw. 2, 3, 4 +0x10,0x43,0x22,0x06 = vcmpgtub 2, 3, 4 +0x10,0x43,0x26,0x06 = vcmpgtub. 2, 3, 4 +0x10,0x43,0x22,0x46 = vcmpgtuh 2, 3, 4 +0x10,0x43,0x26,0x46 = vcmpgtuh. 2, 3, 4 +0x10,0x43,0x22,0x86 = vcmpgtuw 2, 3, 4 +0x10,0x43,0x26,0x86 = vcmpgtuw. 2, 3, 4 +0x10,0x43,0x24,0x04 = vand 2, 3, 4 +0x10,0x43,0x24,0x44 = vandc 2, 3, 4 +0x10,0x43,0x25,0x04 = vnor 2, 3, 4 +0x10,0x43,0x24,0x84 = vor 2, 3, 4 +0x10,0x43,0x24,0xc4 = vxor 2, 3, 4 +0x10,0x43,0x20,0x04 = vrlb 2, 3, 4 +0x10,0x43,0x20,0x44 = vrlh 2, 3, 4 +0x10,0x43,0x20,0x84 = vrlw 2, 3, 4 +0x10,0x43,0x21,0x04 = vslb 2, 3, 4 +0x10,0x43,0x21,0x44 = vslh 2, 3, 4 +0x10,0x43,0x21,0x84 = vslw 2, 3, 4 +0x10,0x43,0x22,0x04 = vsrb 2, 3, 4 +0x10,0x43,0x22,0x44 = vsrh 2, 3, 4 +0x10,0x43,0x22,0x84 = vsrw 2, 3, 4 +0x10,0x43,0x23,0x04 = vsrab 2, 3, 4 +0x10,0x43,0x23,0x44 = vsrah 2, 3, 4 +0x10,0x43,0x23,0x84 = vsraw 2, 3, 4 +0x10,0x43,0x20,0x0a = vaddfp 2, 3, 4 +0x10,0x43,0x20,0x4a = vsubfp 2, 3, 4 +0x10,0x43,0x29,0x2e = vmaddfp 2, 3, 4, 5 +0x10,0x43,0x29,0x2f = vnmsubfp 2, 3, 4, 5 +0x10,0x43,0x24,0x0a = vmaxfp 2, 3, 4 +0x10,0x43,0x24,0x4a = vminfp 2, 3, 4 +0x10,0x44,0x1b,0xca = vctsxs 2, 3, 4 +0x10,0x44,0x1b,0x8a = vctuxs 2, 3, 4 +0x10,0x44,0x1b,0x4a = vcfsx 2, 3, 4 +0x10,0x44,0x1b,0x0a = vcfux 2, 3, 4 +0x10,0x40,0x1a,0xca = vrfim 2, 3 +0x10,0x40,0x1a,0x0a = vrfin 2, 3 +0x10,0x40,0x1a,0x8a = vrfip 2, 3 +0x10,0x40,0x1a,0x4a = vrfiz 2, 3 +0x10,0x43,0x23,0xc6 = vcmpbfp 2, 3, 4 +0x10,0x43,0x27,0xc6 = vcmpbfp. 2, 3, 4 +0x10,0x43,0x20,0xc6 = vcmpeqfp 2, 3, 4 +0x10,0x43,0x24,0xc6 = vcmpeqfp. 2, 3, 4 +0x10,0x43,0x21,0xc6 = vcmpgefp 2, 3, 4 +0x10,0x43,0x25,0xc6 = vcmpgefp. 2, 3, 4 +0x10,0x43,0x22,0xc6 = vcmpgtfp 2, 3, 4 +0x10,0x43,0x26,0xc6 = vcmpgtfp. 2, 3, 4 +0x10,0x40,0x19,0x8a = vexptefp 2, 3 +0x10,0x40,0x19,0xca = vlogefp 2, 3 +0x10,0x40,0x19,0x0a = vrefp 2, 3 +0x10,0x40,0x19,0x4a = vrsqrtefp 2, 3 +0x10,0x00,0x16,0x44 = mtvscr 2 +0x10,0x40,0x06,0x04 = mfvscr 2 diff --git a/capstone/suite/MC/PowerPC/ppc64-encoding.s.cs b/capstone/suite/MC/PowerPC/ppc64-encoding.s.cs new file mode 100644 index 000000000..8d6879368 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-encoding.s.cs @@ -0,0 +1,202 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, None +// 0x4c,0x8a,0x18,0x20 = bclr 4, 10, 3 +// 0x4c,0x8a,0x00,0x20 = bclr 4, 10, 0 +// 0x4c,0x8a,0x18,0x21 = bclrl 4, 10, 3 +// 0x4c,0x8a,0x00,0x21 = bclrl 4, 10, 0 +// 0x4c,0x8a,0x1c,0x20 = bcctr 4, 10, 3 +// 0x4c,0x8a,0x04,0x20 = bcctr 4, 10, 0 +// 0x4c,0x8a,0x1c,0x21 = bcctrl 4, 10, 3 +// 0x4c,0x8a,0x04,0x21 = bcctrl 4, 10, 0 +0x4c,0x43,0x22,0x02 = crand cr0eq, cr0un, cr1lt +0x4c,0x43,0x21,0xc2 = crnand cr0eq, cr0un, cr1lt +0x4c,0x43,0x23,0x82 = cror cr0eq, cr0un, cr1lt +0x4c,0x43,0x21,0x82 = crxor cr0eq, cr0un, cr1lt +0x4c,0x43,0x20,0x42 = crnor cr0eq, cr0un, cr1lt +0x4c,0x43,0x22,0x42 = creqv cr0eq, cr0un, cr1lt +0x4c,0x43,0x21,0x02 = crandc cr0eq, cr0un, cr1lt +0x4c,0x43,0x23,0x42 = crorc cr0eq, cr0un, cr1lt +0x4d,0x0c,0x00,0x00 = mcrf 2, 3 +0x44,0x00,0x00,0x22 = sc 1 +// 0x44,0x00,0x00,0x02 = sc 0 +0x88,0x44,0x00,0x80 = lbz 2, 128(4) +0x7c,0x43,0x20,0xae = lbzx 2, 3, 4 +0x8c,0x44,0x00,0x80 = lbzu 2, 128(4) +0x7c,0x43,0x20,0xee = lbzux 2, 3, 4 +0xa0,0x44,0x00,0x80 = lhz 2, 128(4) +0x7c,0x43,0x22,0x2e = lhzx 2, 3, 4 +0xa4,0x44,0x00,0x80 = lhzu 2, 128(4) +0x7c,0x43,0x22,0x6e = lhzux 2, 3, 4 +0xa8,0x44,0x00,0x80 = lha 2, 128(4) +0x7c,0x43,0x22,0xae = lhax 2, 3, 4 +0xac,0x44,0x00,0x80 = lhau 2, 128(4) +0x7c,0x43,0x22,0xee = lhaux 2, 3, 4 +0x80,0x44,0x00,0x80 = lwz 2, 128(4) +0x7c,0x43,0x20,0x2e = lwzx 2, 3, 4 +0x84,0x44,0x00,0x80 = lwzu 2, 128(4) +0x7c,0x43,0x20,0x6e = lwzux 2, 3, 4 +0xe8,0x44,0x00,0x82 = lwa 2, 128(4) +0x7c,0x43,0x22,0xaa = lwax 2, 3, 4 +0x7c,0x43,0x22,0xea = lwaux 2, 3, 4 +0xe8,0x44,0x00,0x80 = ld 2, 128(4) +0x7c,0x43,0x20,0x2a = ldx 2, 3, 4 +0xe8,0x44,0x00,0x81 = ldu 2, 128(4) +0x7c,0x43,0x20,0x6a = ldux 2, 3, 4 +0x98,0x44,0x00,0x80 = stb 2, 128(4) +0x7c,0x43,0x21,0xae = stbx 2, 3, 4 +0x9c,0x44,0x00,0x80 = stbu 2, 128(4) +0x7c,0x43,0x21,0xee = stbux 2, 3, 4 +0xb0,0x44,0x00,0x80 = sth 2, 128(4) +0x7c,0x43,0x23,0x2e = sthx 2, 3, 4 +0xb4,0x44,0x00,0x80 = sthu 2, 128(4) +0x7c,0x43,0x23,0x6e = sthux 2, 3, 4 +0x90,0x44,0x00,0x80 = stw 2, 128(4) +0x7c,0x43,0x21,0x2e = stwx 2, 3, 4 +0x94,0x44,0x00,0x80 = stwu 2, 128(4) +0x7c,0x43,0x21,0x6e = stwux 2, 3, 4 +0xf8,0x44,0x00,0x80 = std 2, 128(4) +0x7c,0x43,0x21,0x2a = stdx 2, 3, 4 +0xf8,0x44,0x00,0x81 = stdu 2, 128(4) +0x7c,0x43,0x21,0x6a = stdux 2, 3, 4 +0x7c,0x43,0x26,0x2c = lhbrx 2, 3, 4 +0x7c,0x43,0x27,0x2c = sthbrx 2, 3, 4 +0x7c,0x43,0x24,0x2c = lwbrx 2, 3, 4 +0x7c,0x43,0x25,0x2c = stwbrx 2, 3, 4 +0x7c,0x43,0x24,0x28 = ldbrx 2, 3, 4 +0x7c,0x43,0x25,0x28 = stdbrx 2, 3, 4 +0xb8,0x41,0x00,0x80 = lmw 2, 128(1) +0xbc,0x41,0x00,0x80 = stmw 2, 128(1) +0x38,0x43,0x00,0x80 = addi 2, 3, 128 +0x3c,0x43,0x00,0x80 = addis 2, 3, 128 +0x7c,0x43,0x22,0x14 = add 2, 3, 4 +0x7c,0x43,0x22,0x15 = add. 2, 3, 4 +0x7c,0x43,0x20,0x50 = subf 2, 3, 4 +0x7c,0x43,0x20,0x51 = subf. 2, 3, 4 +0x30,0x43,0x00,0x80 = addic 2, 3, 128 +0x34,0x43,0x00,0x80 = addic. 2, 3, 128 +0x20,0x43,0x00,0x04 = subfic 2, 3, 4 +0x7c,0x43,0x20,0x14 = addc 2, 3, 4 +0x7c,0x43,0x20,0x15 = addc. 2, 3, 4 +0x7c,0x43,0x20,0x10 = subfc 2, 3, 4 +0x7c,0x43,0x20,0x10 = subfc 2, 3, 4 +0x7c,0x43,0x21,0x14 = adde 2, 3, 4 +0x7c,0x43,0x21,0x15 = adde. 2, 3, 4 +0x7c,0x43,0x21,0x10 = subfe 2, 3, 4 +0x7c,0x43,0x21,0x11 = subfe. 2, 3, 4 +0x7c,0x43,0x01,0xd4 = addme 2, 3 +0x7c,0x43,0x01,0xd5 = addme. 2, 3 +0x7c,0x43,0x01,0xd0 = subfme 2, 3 +0x7c,0x43,0x01,0xd1 = subfme. 2, 3 +0x7c,0x43,0x01,0x94 = addze 2, 3 +0x7c,0x43,0x01,0x95 = addze. 2, 3 +0x7c,0x43,0x01,0x90 = subfze 2, 3 +0x7c,0x43,0x01,0x91 = subfze. 2, 3 +0x7c,0x43,0x00,0xd0 = neg 2, 3 +0x7c,0x43,0x00,0xd1 = neg. 2, 3 +0x1c,0x43,0x00,0x80 = mulli 2, 3, 128 +0x7c,0x43,0x20,0x96 = mulhw 2, 3, 4 +0x7c,0x43,0x20,0x97 = mulhw. 2, 3, 4 +0x7c,0x43,0x21,0xd6 = mullw 2, 3, 4 +0x7c,0x43,0x21,0xd7 = mullw. 2, 3, 4 +0x7c,0x43,0x20,0x16 = mulhwu 2, 3, 4 +0x7c,0x43,0x20,0x17 = mulhwu. 2, 3, 4 +0x7c,0x43,0x23,0xd6 = divw 2, 3, 4 +0x7c,0x43,0x23,0xd7 = divw. 2, 3, 4 +0x7c,0x43,0x23,0x96 = divwu 2, 3, 4 +0x7c,0x43,0x23,0x97 = divwu. 2, 3, 4 +0x7c,0x43,0x21,0xd2 = mulld 2, 3, 4 +0x7c,0x43,0x21,0xd3 = mulld. 2, 3, 4 +0x7c,0x43,0x20,0x92 = mulhd 2, 3, 4 +0x7c,0x43,0x20,0x93 = mulhd. 2, 3, 4 +0x7c,0x43,0x20,0x12 = mulhdu 2, 3, 4 +0x7c,0x43,0x20,0x13 = mulhdu. 2, 3, 4 +0x7c,0x43,0x23,0xd2 = divd 2, 3, 4 +0x7c,0x43,0x23,0xd3 = divd. 2, 3, 4 +0x7c,0x43,0x23,0x92 = divdu 2, 3, 4 +0x7c,0x43,0x23,0x93 = divdu. 2, 3, 4 +0x2d,0x23,0x00,0x80 = cmpdi 2, 3, 128 +0x7d,0x23,0x20,0x00 = cmpd 2, 3, 4 +0x29,0x23,0x00,0x80 = cmpldi 2, 3, 128 +0x7d,0x23,0x20,0x40 = cmpld 2, 3, 4 +0x2d,0x03,0x00,0x80 = cmpwi 2, 3, 128 +0x7d,0x03,0x20,0x00 = cmpw 2, 3, 4 +0x29,0x03,0x00,0x80 = cmplwi 2, 3, 128 +0x7d,0x03,0x20,0x40 = cmplw 2, 3, 4 +// 0x0c,0x43,0x00,0x04 = twi 2, 3, 4 +// 0x7c,0x43,0x20,0x08 = tw 2, 3, 4 +// 0x08,0x43,0x00,0x04 = tdi 2, 3, 4 +// 0x7c,0x43,0x20,0x88 = td 2, 3, 4 +0x7c,0x43,0x21,0x5e = isel r2, r3, r4, cr1gt +0x70,0x62,0x00,0x80 = andi. 2, 3, 128 +0x74,0x62,0x00,0x80 = andis. 2, 3, 128 +0x60,0x62,0x00,0x80 = ori 2, 3, 128 +0x64,0x62,0x00,0x80 = oris 2, 3, 128 +0x68,0x62,0x00,0x80 = xori 2, 3, 128 +0x6c,0x62,0x00,0x80 = xoris 2, 3, 128 +0x7c,0x62,0x20,0x38 = and 2, 3, 4 +0x7c,0x62,0x20,0x39 = and. 2, 3, 4 +0x7c,0x62,0x22,0x78 = xor 2, 3, 4 +0x7c,0x62,0x22,0x79 = xor. 2, 3, 4 +0x7c,0x62,0x23,0xb8 = nand 2, 3, 4 +0x7c,0x62,0x23,0xb9 = nand. 2, 3, 4 +0x7c,0x62,0x23,0x78 = or 2, 3, 4 +0x7c,0x62,0x23,0x79 = or. 2, 3, 4 +0x7c,0x62,0x20,0xf8 = nor 2, 3, 4 +0x7c,0x62,0x20,0xf9 = nor. 2, 3, 4 +0x7c,0x62,0x22,0x38 = eqv 2, 3, 4 +0x7c,0x62,0x22,0x39 = eqv. 2, 3, 4 +0x7c,0x62,0x20,0x78 = andc 2, 3, 4 +0x7c,0x62,0x20,0x79 = andc. 2, 3, 4 +0x7c,0x62,0x23,0x38 = orc 2, 3, 4 +0x7c,0x62,0x23,0x39 = orc. 2, 3, 4 +0x7c,0x62,0x07,0x74 = extsb 2, 3 +0x7c,0x62,0x07,0x75 = extsb. 2, 3 +0x7c,0x62,0x07,0x34 = extsh 2, 3 +0x7c,0x62,0x07,0x35 = extsh. 2, 3 +// 0x7c,0x62,0x00,0x34 = cntlzw 2, 3 +// 0x7c,0x62,0x00,0x35 = cntlzw. 2, 3 +0x7c,0x62,0x02,0xf4 = popcntw 2, 3 +0x7c,0x62,0x07,0xb4 = extsw 2, 3 +0x7c,0x62,0x07,0xb5 = extsw. 2, 3 +0x7c,0x62,0x00,0x74 = cntlzd 2, 3 +0x7c,0x62,0x00,0x75 = cntlzd. 2, 3 +0x7c,0x62,0x03,0xf4 = popcntd 2, 3 +0x54,0x62,0x21,0x4c = rlwinm 2, 3, 4, 5, 6 +0x54,0x62,0x21,0x4d = rlwinm. 2, 3, 4, 5, 6 +0x5c,0x62,0x21,0x4c = rlwnm 2, 3, 4, 5, 6 +0x5c,0x62,0x21,0x4d = rlwnm. 2, 3, 4, 5, 6 +0x50,0x62,0x21,0x4c = rlwimi 2, 3, 4, 5, 6 +0x50,0x62,0x21,0x4d = rlwimi. 2, 3, 4, 5, 6 +0x78,0x62,0x21,0x40 = rldicl 2, 3, 4, 5 +0x78,0x62,0x21,0x41 = rldicl. 2, 3, 4, 5 +0x78,0x62,0x21,0x44 = rldicr 2, 3, 4, 5 +0x78,0x62,0x21,0x45 = rldicr. 2, 3, 4, 5 +0x78,0x62,0x21,0x48 = rldic 2, 3, 4, 5 +0x78,0x62,0x21,0x49 = rldic. 2, 3, 4, 5 +0x78,0x62,0x21,0x50 = rldcl 2, 3, 4, 5 +0x78,0x62,0x21,0x51 = rldcl. 2, 3, 4, 5 +0x78,0x62,0x21,0x52 = rldcr 2, 3, 4, 5 +0x78,0x62,0x21,0x53 = rldcr. 2, 3, 4, 5 +0x78,0x62,0x21,0x4c = rldimi 2, 3, 4, 5 +0x78,0x62,0x21,0x4d = rldimi. 2, 3, 4, 5 +0x7c,0x62,0x20,0x30 = slw 2, 3, 4 +0x7c,0x62,0x20,0x31 = slw. 2, 3, 4 +0x7c,0x62,0x24,0x30 = srw 2, 3, 4 +0x7c,0x62,0x24,0x31 = srw. 2, 3, 4 +0x7c,0x62,0x26,0x70 = srawi 2, 3, 4 +0x7c,0x62,0x26,0x71 = srawi. 2, 3, 4 +0x7c,0x62,0x26,0x30 = sraw 2, 3, 4 +0x7c,0x62,0x26,0x31 = sraw. 2, 3, 4 +0x7c,0x62,0x20,0x36 = sld 2, 3, 4 +0x7c,0x62,0x20,0x37 = sld. 2, 3, 4 +0x7c,0x62,0x24,0x36 = srd 2, 3, 4 +0x7c,0x62,0x24,0x37 = srd. 2, 3, 4 +0x7c,0x62,0x26,0x74 = sradi 2, 3, 4 +0x7c,0x62,0x26,0x75 = sradi. 2, 3, 4 +0x7c,0x62,0x26,0x34 = srad 2, 3, 4 +0x7c,0x62,0x26,0x35 = srad. 2, 3, 4 +0x7c,0x58,0x93,0xa6 = mtspr 600, 2 +0x7c,0x58,0x92,0xa6 = mfspr 2, 600 +0x7c,0x47,0xb1,0x20 = mtcrf 123, 2 +0x7c,0x40,0x00,0x26 = mfcr 2 +0x7c,0x51,0x01,0x20 = mtocrf 16, 2 +0x7e,0x10,0x80,0x26 = mfocrf 16, 8 diff --git a/capstone/suite/MC/PowerPC/ppc64-operands.s.cs b/capstone/suite/MC/PowerPC/ppc64-operands.s.cs new file mode 100644 index 000000000..f4d352704 --- /dev/null +++ b/capstone/suite/MC/PowerPC/ppc64-operands.s.cs @@ -0,0 +1,31 @@ +# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME +0x7c,0x22,0x1a,0x14 = add 1, 2, 3 +0x7c,0x22,0x1a,0x14 = add 1, 2, 3 +0x7c,0x00,0x02,0x14 = add 0, 0, 0 +0x7f,0xff,0xfa,0x14 = add 31, 31, 31 +0x38,0x20,0x00,0x00 = li 1, 0 +0x38,0x22,0x00,0x00 = addi 1, 2, 0 +0x38,0x20,0x80,0x00 = li 1, -0x8000 +0x38,0x20,0x7f,0xff = li 1, 0x7fff +0x60,0x41,0x00,0x00 = ori 1, 2, 0 +0x60,0x41,0xff,0xff = ori 1, 2, 65535 +0x3c,0x20,0x00,0x00 = lis 1, 0 +0x3c,0x20,0xff,0xff = lis 1, -1 +0x80,0x20,0x00,0x00 = lwz 1, 0(0) +0x80,0x20,0x00,0x00 = lwz 1, 0(0) +0x80,0x3f,0x00,0x00 = lwz 1, 0(31) +0x80,0x3f,0x00,0x00 = lwz 1, 0(31) +0x80,0x22,0x80,0x00 = lwz 1, -32768(2) +0x80,0x22,0x7f,0xff = lwz 1, 32767(2) +0xe8,0x20,0x00,0x00 = ld 1, 0(0) +0xe8,0x20,0x00,0x00 = ld 1, 0(0) +0xe8,0x3f,0x00,0x00 = ld 1, 0(31) +0xe8,0x3f,0x00,0x00 = ld 1, 0(31) +0xe8,0x22,0x80,0x00 = ld 1, -32768(2) +0xe8,0x22,0x7f,0xfc = ld 1, 32764(2) +0xe8,0x22,0x00,0x04 = ld 1, 4(2) +0xe8,0x22,0xff,0xfc = ld 1, -4(2) +// 0x48,0x00,0x04,0x00 = b .+1024 +0x48,0x00,0x04,0x02 = ba 1024 +// 0x41,0x82,0x04,0x00 = beq 0, .+1024 +// 0x41,0x82,0x04,0x02 = beqa 0, 1024 |