PowerISA Opcode Map
Reverse lookup instructions by their hexadecimal encoding.
| Opcode | Mnemonic | Syntax | Format | Name |
|---|---|---|---|---|
| 0xFC000348 | xsmsubqp | xsmsubqp VRT,VRA,VRB | X-form | VSX Scalar Multiply-Subtract Quad-Precision |
| 0xFC000348 | xsmsubqpo | xsmsubqpo VRT,VRA,VRB | X-form | VSX Scalar Multiply-Subtract Quad-Precision (Overflow) |
| 0xF0000180 | xsmuldp | xsmuldp XT,XA,XB | XX3-form | VSX Scalar Multiply Double-Precision |
| 0xFC000048 | xsmulqp | xsmulqp vD, vA, vB | X-form | VSX Scalar Multiply Quad-Precision |
| 0xF0000080 | xsmulsp | xsmulsp XT, XA, XB | XX3-form | VSX Scalar Multiply Single-Precision |
| 0xF00005A4 | xsnabsdp | xsnabsdp XT,XB | XX2-form | VSX Scalar Negative Absolute Double-Precision |
| 0xF00005E4 | xsnegdp | xsnegdp XT, XB | XX2-form | VSX Scalar Negate Double-Precision |
| 0xFC100648 | xsnegqp | xsnegqp vD, vB | X-form | VSX Scalar Negate Quad-Precision |
| 0xF0000508 | xsnmaddadp | xsnmaddadp XT,XA,XB | XX3-form | VSX Scalar Negative Multiply-Add Double-Precision Type-A |
| 0xF0000408 | xsnmaddasp | xsnmaddasp XT,XA,XB | XX3-form | VSX Scalar Negative Multiply-Add Single-Precision Type-A |
| 0xF0000548 | xsnmaddmdp | xsnmaddmdp VRT, VRA, VRB, VRC | XX3-form | VSX Scalar Negative Multiply-Add Type-M Double-Precision |
| 0xFC000388 | xsnmaddqp | xsnmaddqp VRT,VRA,VRB | X-form | VSX Scalar Negative Multiply-Add Quad-Precision |
| 0xFC000388 | xsnmaddqpo | xsnmaddqpo VRT,VRA,VRB | X-form | VSX Scalar Negative Multiply-Add Quad-Precision (Overflow) |
| 0xF0000588 | xsnmsubadp | xsnmsubadp XT,XA,XB | XX3-form | VSX Scalar Negative Multiply-Subtract Type-A Double-Precision |
| 0xF0000488 | xsnmsubasp | xsnmsubasp XT,XA,XB | XX3-form | VSX Scalar Negative Multiply-Subtract Type-A Single-Precision |
| 0xF00004C8 | xsnmsubmsp | xsnmsubmsp XT,XA,XB | XX3-form | VSX Scalar Negative Multiply-Subtract Type-M Single-Precision |
| 0xFC0003C8 | xsnmsubqp | xsnmsubqp VRT,VRA,VRB | X-form | VSX Scalar Negative Multiply-Subtract Quad-Precision |
| 0xF0000124 | xsrdpi | xsrdpi VRT, VRA | X-form | Round to Floating-Point Integer (Double-Precision) |
| 0xF00001AC | xsrdpic | xsrdpic XT,XB | XX2-form | VSX Scalar Round to Double-Precision Integer Exact using Current rounding mode |
| 0xF00001E4 | xsrdpim | xsrdpim XT,XB | XX2-form | VSX Scalar Round to Double-Precision Integer using round toward -Infinity |
| 0xF00001A4 | xsrdpip | xsrdpip XT,XB | XX2-form | VSX Scalar Round to Double-Precision Integer using round toward +Infinity |
| 0xF0000164 | xsrdpiz | xsrdpiz XT,XB | XX2-form | VSX Scalar Round to Double-Precision Integer |
| 0xF0000168 | xsredp | xsredp XT,XB | XX2-form | Vector Scalar Reciprocal Estimate Double Precision |
| 0xF0000068 | xsresp | xsresp XT,XB | XX2-form | VSX Scalar Reciprocal Estimate Single-Precision |
| 0xFC0003C4 | xsrintqp | xsrintqp vD, vB | X-form | VSX Scalar Round to Integer Quad-Precision |
| 0xFC00000A | xsrqpi | xsrqpi vD, vB, R | Z23-form | VSX Scalar Round Quad-Precision to Integer |
| 0xFC00000B | xsrqpix | xsrqpix vD, vB, R | Z23-form | VSX Scalar Round Quad-Precision to Integer Extended |
| 0xFC00004A | xsrqpxp | xsrqpxp R, VRT, VRB, RMC | Z23-form | VSX Scalar Round Quad-Precision to Extended-Precision |
| 0xF0000464 | xsrsp | xsrsp XT,XB | X-form | VSX Scalar Round to Single-Precision |
| 0xF0000128 | xsrsqrtedp | xsrsqrtedp XT,XB | XX2-form | Double-Precision XX2-form Scalar Reciprocal Square Root Estimate |
| 0xF0000028 | xsrsqrtesp | xsrsqrtesp XT,XB | XX2-form | VSX Scalar Reciprocal Square Root Estimate (Single-Precision) |
| 0xF000012C | xssqrtdp | xssqrtdp XT, XB | XX2-form | VSX Scalar Square Root Double-Precision |
| 0xFC1B0648 | xssqrtqp | xssqrtqp vD, vB | X-form | VSX Scalar Square Root Quad-Precision |
| 0xFC1B0648 | xssqrtqpo | xssqrtqpo vD, vB | X-form | VSX Scalar Square Root Quad-Precision Odd |
| 0xF000002C | xssqrtsp | xssqrtsp XT,XB | XX2-form | VSX Scalar Square Root Single-Precision |
| 0xF0000140 | xssubdp | xssubdp XT,XA,XB | XX3-form | VSX Scalar Subtract Double-Precision |
| 0xFC000408 | xssubqp | xssubqp VRT,VRA,VRB | X-form | VSX Scalar Subtract Quad-Precision |
| 0xFC000408 | xssubqpo | xssubqpo VRT,VRA,VRB | X-form | VSX Scalar Subtract Quad-Precision Odd |
| 0xF0000040 | xssubsp | xssubsp XT, XA, XB | XX3-form | VSX Scalar Subtract Single-Precision |
| 0xF00001E8 | xstdivdp | xstdivdp BF,XA,XB | XX3-form | VSX Scalar Test for software Divide Double-Precision |
| 0xF00001A8 | xstsqrtdp | xstsqrtdp BF,XB | XX2-form | VSX Scalar Test for software Square Root, Double-Precision |
| 0xF00005A8 | xststdcdp | xststdcdp BF, XB, DCM | XX2-form | VSX Scalar Test Data Class Double-Precision |
| 0xFC000588 | xststdcqp | xststdcqp BF, vB, DCM | X-form | VSX Scalar Test Data Class Quad-Precision |
| 0xF00004A8 | xststdcsp | xststdcsp BF, vB, DCM | XX2-form | VSX Scalar Test Data Class Single-Precision |
| 0xF000056C | xsxexpdp | xsxexpdp XT, XB | XX2-form | VSX Scalar Extract Exponent Double-Precision |
| 0xF001056C | xsxsigdp | xsxsigdp XT, XB | XX2-form | VSX Scalar Extract Significand Double-Precision |
| 0xFC120648 | xsxsigqp | xsxsigqp VRT, VRA | X-form | VSX Scalar Extract Significand Quad-Precision |
| 0xF0000764 | xvabsdp | xvabsdp XT, XB | XX2-form | VSX Vector Absolute Value Double-Precision |
| 0xF0000664 | xvabssp | xvabssp XT, XB | XX2-form | VSX Vector Absolute Value Single-Precision |
| 0xF0000300 | xvadddp | xvadddp XT, XA, XB | XX3-form | VSX Vector Add Double-Precision |
| 0xF0000200 | xvaddsp | xvaddsp XT, XA, XB | XX3-form | VSX Vector Add Single-Precision |
| 0xEC000198 | xvbf16ger2 | xvbf16ger2 AT, XA, XB | XX3-form | VSX Vector BFloat16 GER (Rank-2 Update) |
| 0xF0000318 | xvcmpeqdp | xvcmpeqdp XT,XA,XB | XX3-form | VSX Vector Compare Equal Double-Precision |
| 0xF0000318 | xvcmpeqdp. | xvcmpeqdp. XT,XA,XB | XX3-form | VSX Vector Compare Equal Double-Precision (Record) |
| 0xF0000218 | xvcmpeqsp | xvcmpeqsp XT,XA,XB | XX3-form | VSX Vector Compare Equal Single-Precision |
| 0xF0000218 | xvcmpeqsp. | xvcmpeqsp. XT,XA,XB | XX3-form | VSX Vector Compare Equal Single-Precision (Record) |
| 0xF0000398 | xvcmpgedp | xvcmpgedp XT,XA,XB | XX3-form | VSX Vector Compare Greater or Equal Double-Precision |
| 0xF0000398 | xvcmpgedp. | xvcmpgedp. XT,XA,XB | XX3-form | VSX Vector Compare Greater or Equal Double-Precision (Record) |
| 0xF0000298 | xvcmpgesp | xvcmpgesp XT,XA,XB | XX3-form | VSX Vector Compare Greater or Equal Single-Precision |
| 0xF0000298 | xvcmpgesp. | xvcmpgesp. XT,XA,XB | XX3-form | VSX Vector Compare Greater or Equal Single-Precision (Record) |
| 0xF0000358 | xvcmpgtdp | xvcmpgtdp XT,XA,XB | XX3-form | VSX Vector Compare Greater Than Double-Precision |
| 0xF0000358 | xvcmpgtdp. | xvcmpgtdp. XT,XA,XB | XX3-form | VSX Vector Compare Greater Than Double-Precision (Record) |
| 0xF0000258 | xvcmpgtsp | xvcmpgtsp XT,XA,XB | XX3-form | VSX Vector Compare Greater Than Single-Precision |
| 0xF0000258 | xvcmpgtsp. | xvcmpgtsp. XT,XA,XB | XX3-form | VSX Vector Compare Greater Than Single-Precision (Record) |
| 0xF0000780 | xvcpsgndp | xvcpsgndp XT,XA,XB | XX3-form | VSX Vector Copy Sign Double-Precision |
| 0xF010076C | xvcvbf16spn | xvcvbf16spn XT,XB | XX2-form | VSX Vector Convert bfloat16 to Single-Precision format Non-signaling |
| 0xF0000624 | xvcvdpsp | xvcvdpsp XT, XB | XX2-form | Vector Convert Double-Precision to Single-Precision |
| 0xF0000760 | xvcvdpsxds | xvcvdpsxds XT, XB | XX2-form | VSX Vector Convert Double-Precision to Signed Doubleword for- mat XX2-form |
| 0xF0000360 | xvcvdpsxws | xvcvdpsxws XT,XB | X-form | Vector Convert Double-Precision to Signed Word format with round to zero |
| 0xF0000720 | xvcvdpuxds | xvcvdpuxds XT, XB | XX2-form | Vector Convert Double-Precision to Unsigned Doubleword with Round to Zero |
| 0xF0000320 | xvcvdpuxws | xvcvdpuxws XT,XB | XX2-form | Vector Convert Double-Precision to Unsigned Word format with round to zero |
| 0xF018076C | xvcvhpsp | xvcvhpsp XT, XB | XX2-form | VSX Vector Convert Half-Precision to Single |
| 0xF011076C | xvcvspbf16 | xvcvspbf16 XT,XB | XX2-form | Vector Convert Single-Precision to bfloat16 Format |
| 0xF0000724 | xvcvspdp | xvcvspdp XT, XB | XX2-form | VSX Vector Convert Single to Double |
| 0xF019076C | xvcvsphp | xvcvsphp XT, XB | XX2-form | Vector Convert Single-Precision to Half-Precision format XX2-form |
| 0xF0000660 | xvcvspsxds | xvcvspsxds XT, XB | XX2-form | Vector Convert with round to zero Single-Precision to Signed Doubleword format XX2-form |
| 0xF0000260 | xvcvspsxws | xvcvspsxws XT,XB | XX2-form | Vector Convert with round to zero Single-Precision to Signed Word format |
| 0xF0000620 | xvcvspuxds | xvcvspuxds XT,XB | XX2-form | Vector Convert with round to zero Single-Precision to Unsigned Doubleword format |
| 0xF0000220 | xvcvspuxws | xvcvspuxws XT,XB | XX2-form | Vector Convert with round to zero Single-Precision to Unsigned Word format |
| 0xF00007E0 | xvcvsxddp | xvcvsxddp XT,XB | XX2-form | VSX Vector Convert with round Signed Doubleword to Double-Precision format |
| 0xF00006E0 | xvcvsxdsp | xvcvsxdsp XT,XB | XX2-form | VSX Vector Convert with round Signed Doubleword to Single-Precision format |
| 0xF00003E0 | xvcvsxwdp | xvcvsxwdp XT,XB | XX2-form | VSX Vector Convert Signed Word to Double-Precision format XX2-form |
| 0xF00002E0 | xvcvsxwsp | xvcvsxwsp XT, XB | XX2-form | VSX Vector Convert with round Signed Word to Single-Precision format |
| 0xF00007A0 | xvcvuxddp | xvcvuxddp VRT, VRA, VRB | XX2-form | VSX Vector Convert with round Unsigned Doubleword to Double-Precision format |
| 0xF00006A0 | xvcvuxdsp | xvcvuxdsp VS32,VS64 | XX2-form | VSX Vector Convert with round Unsigned Doubleword to Single-Precision format |
| 0xF00002A0 | xvcvuxwsp | xvcvuxwsp XT, XB | XX2-form | VSX Vector Convert Unsigned Word to Single |
| 0xF00003C0 | xvdivdp | xvdivdp XT, XA, XB | XX3-form | VSX Vector Divide Double-Precision |
| 0xF00002C0 | xvdivsp | xvdivsp XT, XA, XB | XX3-form | VSX Vector Divide Single-Precision |
| 0xEC000098 | xvf16ger2 | xvf16ger2 AT, XA, XB | XX3-form | VSX Vector Float16 GER (Rank-2 Update) |
| 0xEC000490 | xvf16ger2pn | xvf16ger2pn AT,XA,XB | XX3-form | VSX Vector 16-bit Floating-Point GER (rank-2 update) Positive multiply, Negative accumulate |
| 0xEC0000D8 | xvf32ger | xvf32ger AT, XA, XB | XX3-form | VSX Vector Float32 GER (Rank-1 Update) |
| 0xEC0001D8 | xvf64ger | xvf64ger AT, XA, XB | XX3-form | VSX Vector Float64 GER (Rank-1 Update) |
| 0xEC0007D0 | xvf64gernn | xvf64gernn AT,XAp,XB | XX3-form | VSX Vector 64-bit Floating-Point GER (rank-1 update) Negative multiply, Negative accumulate XX3-form |
| 0xEC000258 | xvi16ger2 | xvi16ger2 AT, XA, XB | XX3-form | VSX Vector Integer 16-bit GER (Rank-2 Update) |
| 0xEC000158 | xvi16ger2s | xvi16ger2s AT, XA, XB | XX3-form | VSX Vector Integer 16-bit GER (Rank-2 Update) Saturate |
| 0xEC000118 | xvi4ger8 | xvi4ger8 AT, XA, XB | XX3-form | VSX Vector Integer 4-bit GER (Rank-8 Update) |
| 0xEC000110 | xvi4ger8pp | xvi4ger8pp AT, XA, XB | XX3-form | VSX Vector Integer 4-bit GER (Rank-8 Update) Plus/Plus |
| 0xEC000018 | xvi8ger4 | xvi8ger4 AT, XA, XB | XX3-form | VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) |
| 0xEC000010 | xvi8ger4pp | xvi8ger4pp AT, XA, XB | XX3-form | VSX Vector Integer 8-bit GER (Rank-4 Update) Plus/Plus |
| 0xEC000318 | xvi8ger4spp | xvi8ger4spp AT,XA,XB | XX3-form | VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) with Saturation Positive multiply, Positive accumulate |