Add an Xcode 8 project for SheepShaver that builds an x86 32-bit

application (since 64-bit doesn't work with current OS X) and uses
pre-built (by GCC) compiler JIT source files.
This commit is contained in:
Alexei Svitkine 2016-12-17 21:38:25 -05:00
parent 84dfc1e98d
commit 5538376dc8
10 changed files with 27570 additions and 2 deletions

View File

@ -20,6 +20,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/mman.h>
#include <fcntl.h>
@ -27,10 +28,10 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <mach/vm_prot.h>
#include <mach-o/loader.h>
#include <mach-o/fat.h>
#include <sys/stat.h>
static const char progname[] = "lowmem";
static const char *filename;

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ under newer versions of Xcode or Mac OS X.
To use it, you need the following:
1. A complete 'macemu' git checkout of SheepShaver and BasiliskII.
2. SDL installed as a framework in /Library/Frameworks/SDL.framework.
2. SDL 1.2 installed as a framework in /Library/Frameworks/SDL.framework.
3. You do not need to run autogen.sh / configure to use the Xcode
project. If you've done so already, you should remove or temporarily
move/rename src/Unix/config.h, as the presence of that file currently
@ -24,3 +24,17 @@ and build SheepShaver, resulting in a UB build containing SDL as a
private framework in the bundle. The result will be located in either
SheepShaver/src/MacOSX/build/Debug or SheepShaver/src/MacOSX/build/Release
directories, depending if you do a Debug or Release build.
There is also an Xcode 8 project file for use with Xcode 8 and newer
(e.g. 8.2 on 10.11 or 10.12). The main differences are:
1. This builds a i386 version of SheepShaver instead of Universal Binary.
This is because since PPC is not supported by Xcode 8 and newer versions of
OS X disallow having memory mapped at page zero for 64-bit applications,
which SheepShaver requires.
2. Since the SheepShaver JIT-generation compilation does not support Clang,
this build uses prebuilt and checked-in dyngen source files, rather than
building dungeon and generating them with it, as is done normally during the
SheepShaver build process.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
#if defined(__x86_64__)
#include "basic-dyngen-ops-x86_64.hpp"
#elif defined(__i386__)
#include "basic-dyngen-ops-x86_32.hpp"
#else
#error Unknown platform
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
#if defined(__x86_64__)
#include "ppc-dyngen-ops-x86_64.hpp"
#elif defined(__i386__)
#include "ppc-dyngen-ops-x86_32.hpp"
#else
#error Unknown platform
#endif

View File

@ -0,0 +1,305 @@
template void powerpc_cpu::execute_addition<operand_RA, operand_RB, operand_NONE, CA_BIT_0, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA, operand_RB, operand_NONE, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA, operand_RB, operand_XER_CA, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_or_0, operand_SIMM, operand_NONE, CA_BIT_0, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_addition<operand_RA, operand_SIMM, operand_NONE, CA_BIT_1, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_addition<operand_RA, operand_SIMM, operand_NONE, CA_BIT_1, OE_BIT_0, RC_BIT_1>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_or_0, operand_SIMM_shifted, operand_NONE, CA_BIT_0, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_addition<operand_RA, operand_MINUS_ONE, operand_XER_CA, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA, operand_ZERO, operand_XER_CA, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_and, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_andc, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_and, operand_RA, operand_RS, operand_UIMM, operand_NONE, OE_BIT_0, RC_BIT_1>(uint32);
template void powerpc_cpu::execute_generic_arith<op_and, operand_RA, operand_RS, operand_UIMM_shifted, operand_NONE, OE_BIT_0, RC_BIT_1>(uint32);
template void powerpc_cpu::execute_branch<operand_PC, immediate_value<(((0) ? 0 : 16) | ((0) ? 8 : 0) | ((0) ? 0 : 4) | ((0) ? 2 : 0))>, operand_LI, AA_BIT_G, LK_BIT_G>(uint32);
template void powerpc_cpu::execute_branch<operand_PC, operand_BO, operand_BD, AA_BIT_G, LK_BIT_G>(uint32);
template void powerpc_cpu::execute_branch<operand_CTR, operand_BO, operand_ZERO, AA_BIT_0, LK_BIT_G>(uint32);
template void powerpc_cpu::execute_branch<operand_LR, operand_BO, operand_ZERO, AA_BIT_0, LK_BIT_G>(uint32);
template void powerpc_cpu::execute_compare<operand_RB, int32>(uint32);
template void powerpc_cpu::execute_compare<operand_SIMM, int32>(uint32);
template void powerpc_cpu::execute_compare<operand_RB, uint32>(uint32);
template void powerpc_cpu::execute_compare<operand_UIMM, uint32>(uint32);
template void powerpc_cpu::execute_generic_arith<op_cntlzw, operand_RA, operand_RS, operand_NONE, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_cr_op<op_and>(uint32);
template void powerpc_cpu::execute_cr_op<op_andc>(uint32);
template void powerpc_cpu::execute_cr_op<op_eqv>(uint32);
template void powerpc_cpu::execute_cr_op<op_nand>(uint32);
template void powerpc_cpu::execute_cr_op<op_nor>(uint32);
template void powerpc_cpu::execute_cr_op<op_or>(uint32);
template void powerpc_cpu::execute_cr_op<op_orc>(uint32);
template void powerpc_cpu::execute_cr_op<op_xor>(uint32);
template void powerpc_cpu::execute_dcbz<operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_divide<true, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_divide<false, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_eqv, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_sign_extend_8_32, operand_RA, operand_RS, operand_NONE, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_sign_extend_16_32, operand_RA, operand_RS, operand_NONE, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fabs, operand_fp_RD, operand_fp_RB, operand_fp_NONE, operand_fp_NONE, RC_BIT_G, false>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fadd, operand_fp_RD, operand_fp_RA, operand_fp_RB, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<float, op_fadd, operand_fp_RD, operand_fp_RA, operand_fp_RB, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_compare<true>(uint32);
template void powerpc_cpu::execute_fp_compare<false>(uint32);
template void powerpc_cpu::execute_fp_int_convert<operand_FPSCR_RN, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_fp_int_convert<operand_ONE, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fdiv, operand_fp_RD, operand_fp_RA, operand_fp_RB, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<float, op_fdiv, operand_fp_RD, operand_fp_RA, operand_fp_RB, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fmadd, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<float, op_fmadd, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fnop, operand_fp_RD, operand_fp_RB, operand_fp_NONE, operand_fp_NONE, RC_BIT_G, false>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fmsub, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<float, op_fmsub, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fmul, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<float, op_fmul, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fnabs, operand_fp_RD, operand_fp_RB, operand_fp_NONE, operand_fp_NONE, RC_BIT_G, false>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fneg, operand_fp_RD, operand_fp_RB, operand_fp_NONE, operand_fp_NONE, RC_BIT_G, false>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fnmadd, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fnmadds, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fnmsub, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fnmsubs, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_round<RC_BIT_G>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fsel, operand_fp_RD, operand_fp_RA, operand_fp_RC, operand_fp_RB, RC_BIT_G, false>(uint32);
template void powerpc_cpu::execute_fp_arith<double, op_fsub, operand_fp_RD, operand_fp_RA, operand_fp_RB, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_fp_arith<float, op_fsub, operand_fp_RD, operand_fp_RA, operand_fp_RB, operand_fp_NONE, RC_BIT_G, true>(uint32);
template void powerpc_cpu::execute_icbi<operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_D, true, 1, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_D, true, 1, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_RB, true, 1, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, true, 1, false, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_D, true, true, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_D, true, true, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_RB, true, true, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_RB, true, true, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_D, true, false, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_D, true, false, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_RB, true, false, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_RB, true, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_sign_extend_16_32, operand_RA_or_0, operand_D, true, 2, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_sign_extend_16_32, operand_RA, operand_D, true, 2, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_sign_extend_16_32, operand_RA, operand_RB, true, 2, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_sign_extend_16_32, operand_RA_or_0, operand_RB, true, 2, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, true, 2, false, true>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_D, true, 2, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_D, true, 2, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_RB, true, 2, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, true, 2, false, false>(uint32);
template void powerpc_cpu::execute_loadstore_multiple<operand_RA_or_0, operand_D, true>(uint32);
template void powerpc_cpu::execute_load_string<operand_RA_or_0, true, operand_NB>(uint32);
template void powerpc_cpu::execute_load_string<operand_RA_or_0, false, operand_XER_COUNT>(uint32);
template void powerpc_cpu::execute_vector_load<operand_vD_V16QIm, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_vector_load<operand_vD_V8HIm, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_vector_load<operand_vD_V4SI, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_vector_load_for_shift<1>(uint32);
template void powerpc_cpu::execute_vector_load_for_shift<0>(uint32);
template void powerpc_cpu::execute_vector_load<operand_vD_V2DI, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_lwarx<operand_RA_or_0>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, true, 4, false, true>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_D, true, 4, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_D, true, 4, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_RB, true, 4, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, true, 4, false, false>(uint32);
template void powerpc_cpu::execute_generic_arith<op_nop, operand_RD, operand_CR, operand_NONE, operand_NONE, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_mffs<RC_BIT_G>(uint32);
template void powerpc_cpu::execute_mfspr<operand_SPR>(uint32);
template void powerpc_cpu::execute_mftbr<operand_TBR>(uint32);
template void powerpc_cpu::execute_mtfsb<immediate_value<0>, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_mtfsb<immediate_value<1>, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_mtfsf<operand_FM, operand_fp_dw_RB, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_mtfsfi<operand_IMM, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_mtspr<operand_SPR>(uint32);
template void powerpc_cpu::execute_multiply<true, true, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_multiply<true, false, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_smul, operand_RD, operand_RA, operand_SIMM, operand_NONE, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_multiply<false, true, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_nand, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_neg, operand_RD, operand_RA, operand_NONE, operand_NONE, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_nor, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_or, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_orc, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_or, operand_RA, operand_RS, operand_UIMM, operand_NONE, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_generic_arith<op_or, operand_RA, operand_RS, operand_UIMM_shifted, operand_NONE, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_rlwimi<operand_SH, operand_MASK, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_ppc_rlwinm, operand_RA, operand_RS, operand_SH, operand_MASK, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_ppc_rlwnm, operand_RA, operand_RS, operand_RB, operand_MASK, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_shift<op_shll, operand_RA, operand_RS, operand_RB, op_andi<0x3f>, CA_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_shift<op_shra, operand_RA, operand_RS, operand_RB, op_andi<0x3f>, CA_BIT_1, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_shift<op_shra, operand_RA, operand_RS, operand_SH, op_andi<0x1f>, CA_BIT_1, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_shift<op_shrl, operand_RA, operand_RS, operand_RB, op_andi<0x3f>, CA_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_D, false, 1, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_D, false, 1, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_RB, false, 1, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, false, 1, false, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_D, false, true, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_D, false, true, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_RB, false, true, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_RB, false, true, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_D, false, false, false>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_D, false, false, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA, operand_RB, false, false, true>(uint32);
template void powerpc_cpu::execute_fp_loadstore<operand_RA_or_0, operand_RB, false, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_D, false, 2, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, false, 2, false, true>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_D, false, 2, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_RB, false, 2, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, false, 2, false, false>(uint32);
template void powerpc_cpu::execute_loadstore_multiple<operand_RA_or_0, operand_D, false>(uint32);
template void powerpc_cpu::execute_store_string<operand_RA_or_0, true, operand_NB>(uint32);
template void powerpc_cpu::execute_store_string<operand_RA_or_0, false, operand_XER_COUNT>(uint32);
template void powerpc_cpu::execute_vector_store<operand_vD_V16QIm, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_vector_store<operand_vD_V8HIm, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_vector_store<operand_vD_V4SI, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_vector_store<operand_vD_V2DI, operand_RA_or_0, operand_RB>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_D, false, 4, false, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, false, 4, false, true>(uint32);
template void powerpc_cpu::execute_stwcx<operand_RA_or_0>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_D, false, 4, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA, operand_RB, false, 4, true, false>(uint32);
template void powerpc_cpu::execute_loadstore<op_nop, operand_RA_or_0, operand_RB, false, 4, false, false>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_compl, operand_RB, operand_ONE, CA_BIT_0, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_compl, operand_RB, operand_ONE, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_compl, operand_RB, operand_XER_CA, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_compl, operand_SIMM, operand_ONE, CA_BIT_1, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_compl, operand_XER_CA, operand_MINUS_ONE, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_addition<operand_RA_compl, operand_XER_CA, operand_ZERO, CA_BIT_1, OE_BIT_G, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_xor, operand_RA, operand_RS, operand_RB, operand_NONE, OE_BIT_0, RC_BIT_G>(uint32);
template void powerpc_cpu::execute_generic_arith<op_xor, operand_RA, operand_RS, operand_UIMM, operand_NONE, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_generic_arith<op_xor, operand_RA, operand_RS, operand_UIMM_shifted, operand_NONE, OE_BIT_0, RC_BIT_0>(uint32);
template void powerpc_cpu::execute_vector_arith<op_addcuw, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_fadds, operand_vD_V4SF, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V16QI_SAT<int8>, operand_vA_V16QI_SAT<int8>, operand_vB_V16QI_SAT<int8>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V8HI_SAT<int16>, operand_vA_V8HI_SAT<int16>, operand_vB_V8HI_SAT<int16>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add_64, operand_vD_V4SI_SAT<int32>, operand_vA_V4SI_SAT<int32>, operand_vB_V4SI_SAT<int32>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V16QI_SAT<uint8>, operand_vA_V16QI_SAT<uint8>, operand_vB_V16QI_SAT<uint8>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V8HI_SAT<uint16>, operand_vA_V8HI_SAT<uint16>, operand_vB_V8HI_SAT<uint16>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_add_64, operand_vD_V4SI_SAT<uint32>, operand_vA_V4SI_SAT<uint32>, operand_vB_V4SI_SAT<uint32>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_and_64, operand_vD_V2DI, operand_vA_V2DI, operand_vB_V2DI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_andc_64, operand_vD_V2DI, operand_vA_V2DI, operand_vB_V2DI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_avgsb, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_avgsh, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_avgsw, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_avgub, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_avguh, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_avguw, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_cvt_si2fp<int32>, operand_vD_V4SF, operand_vA_UIMM, operand_vB_V4SIs, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_cvt_si2fp<uint32>, operand_vD_V4SF, operand_vA_UIMM, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmpbfp, operand_vD_V4SI, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, vRC_BIT_G, 0>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_eq<float>, operand_vD_V4SI, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_eq<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_eq<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_eq<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_ge<float>, operand_vD_V4SI, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<float>, operand_vD_V4SI, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<int8>, operand_vD_V16QI, operand_vA_V16QIs, operand_vB_V16QIs, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<int16>, operand_vD_V8HI, operand_vA_V8HIs, operand_vB_V8HIs, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<int32>, operand_vD_V4SI, operand_vA_V4SIs, operand_vB_V4SIs, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cmp_gt<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, vRC_BIT_G, 1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_cvt_fp2si, operand_vD_V4SI_SAT<int32>, operand_vA_UIMM, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_cvt_fp2si, operand_vD_V4SI_SAT<uint32>, operand_vA_UIMM, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_exp2, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_log2, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vmaddfp, operand_vD_V4SF, operand_vA_V4SF, operand_vB_V4SF, operand_vC_V4SF, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<float>, operand_vD_V4SF, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<int8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<int16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<int32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_max<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_mhraddsh<0>, operand_vD_V8HI_SAT<int16>, operand_vA_V8HI_SAT<int16>, operand_vB_V8HI_SAT<int16>, operand_vC_V8HI_SAT<int16>, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_mhraddsh<0x4000>, operand_vD_V8HI_SAT<int16>, operand_vA_V8HI_SAT<int16>, operand_vB_V8HI_SAT<int16>, operand_vC_V8HI_SAT<int16>, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<float>, operand_vD_V4SF, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<int8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<int16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<int32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_min<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_mladduh, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_V8HI, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_merge<operand_vD_V16QIm, operand_vA_V16QIm, operand_vB_V16QIm, 0>(uint32);
template void powerpc_cpu::execute_vector_merge<operand_vD_V8HIm, operand_vA_V8HIm, operand_vB_V8HIm, 0>(uint32);
template void powerpc_cpu::execute_vector_merge<operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, 0>(uint32);
template void powerpc_cpu::execute_vector_merge<operand_vD_V16QIm, operand_vA_V16QIm, operand_vB_V16QIm, 1>(uint32);
template void powerpc_cpu::execute_vector_merge<operand_vD_V8HIm, operand_vA_V8HIm, operand_vB_V8HIm, 1>(uint32);
template void powerpc_cpu::execute_vector_merge<operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, 1>(uint32);
template void powerpc_cpu::execute_vector_arith_mixed<op_smul, operand_vD_V4SI, operand_vA_V16QI_SAT<int8>, operand_vB_V16QI_SAT<uint8>, operand_vC_V4SI>(uint32);
template void powerpc_cpu::execute_vector_arith_mixed<op_smul, operand_vD_V4SI, operand_vA_V8HI_SAT<int16>, operand_vB_V8HI_SAT<int16>, operand_vC_V4SI>(uint32);
template void powerpc_cpu::execute_vector_arith_mixed<op_smul_64, operand_vD_V4SI_SAT<int32>, operand_vA_V8HI_SAT<int16>, operand_vB_V8HI_SAT<int16>, operand_vC_V4SIs>(uint32);
template void powerpc_cpu::execute_vector_arith_mixed<op_mul, operand_vD_V4SI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_V4SI>(uint32);
template void powerpc_cpu::execute_vector_arith_mixed<op_mul, operand_vD_V4SI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_V4SI>(uint32);
template void powerpc_cpu::execute_vector_arith_mixed<op_mul, operand_vD_V4SI_SAT<uint32>, operand_vA_V8HI, operand_vB_V8HI, operand_vC_V4SI>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<0, op_smul, operand_vD_V8HIm, operand_vA_V16QIm_SAT<int8>, operand_vB_V16QIm_SAT<int8>, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<0, op_smul, operand_vD_V4SI, operand_vA_V8HIm_SAT<int16>, operand_vB_V8HIm_SAT<int16>, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<0, op_mul, operand_vD_V8HIm, operand_vA_V16QIm, operand_vB_V16QIm, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<0, op_mul, operand_vD_V4SI, operand_vA_V8HIm, operand_vB_V8HIm, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<1, op_smul, operand_vD_V8HIm, operand_vA_V16QIm_SAT<int8>, operand_vB_V16QIm_SAT<int8>, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<1, op_smul, operand_vD_V4SI, operand_vA_V8HIm_SAT<int16>, operand_vB_V8HIm_SAT<int16>, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<1, op_mul, operand_vD_V8HIm, operand_vA_V16QIm, operand_vB_V16QIm, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith_odd<1, op_mul, operand_vD_V4SI, operand_vA_V8HIm, operand_vB_V8HIm, operand_vC_NONE>(uint32);
template void powerpc_cpu::execute_vector_arith<op_vnmsubfp, operand_vD_V4SF, operand_vA_V4SF, operand_vB_V4SF, operand_vC_V4SF, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_nor_64, operand_vD_V2DI, operand_vA_V2DI, operand_vB_V2DI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_or_64, operand_vD_V2DI, operand_vA_V2DI, operand_vB_V2DI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V16QIm_SAT<int8>, operand_vA_V8HIm, operand_vB_V8HIm>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V16QIm_SAT<uint8>, operand_vA_V8HIm, operand_vB_V8HIm>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V8HIm_SAT<int16>, operand_vA_V4SI, operand_vB_V4SI>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V8HIm_SAT<uint16>, operand_vA_V4SI, operand_vB_V4SI>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V16QIm, operand_vA_V8HIm, operand_vB_V8HIm>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V16QIm_USAT<uint8>, operand_vA_V8HIm, operand_vB_V8HIm>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V8HIm, operand_vA_V4SI, operand_vB_V4SI>(uint32);
template void powerpc_cpu::execute_vector_pack<operand_vD_V8HIm_USAT<uint16>, operand_vA_V4SI, operand_vB_V4SI>(uint32);
template void powerpc_cpu::execute_vector_arith<op_fres, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_frsim, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_frsin, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_frsip, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_frsiz, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vrl<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vrl<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vrl<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_frsqrt, operand_vD_V4SF, operand_vA_NONE, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsel, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_V4SI, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_shift<-1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsl<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_shift_octet<-1, operand_vD_V16QIm, operand_vA_V16QIm, operand_vB_V16QIm, operand_SHB>(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsl<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_shift_octet<-1, operand_vD_V16QIm, operand_vA_V16QIm, operand_vB_NONE, operand_SHBO>(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsl<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_splat<op_nop, operand_vD_V16QI, operand_vB_V16QIm, false>(uint32);
template void powerpc_cpu::execute_vector_splat<op_nop, operand_vD_V8HI, operand_vB_V8HIm, false>(uint32);
template void powerpc_cpu::execute_vector_splat<op_sign_extend_5_32, operand_vD_V16QI, operand_vB_UIMM, true>(uint32);
template void powerpc_cpu::execute_vector_splat<op_sign_extend_5_32, operand_vD_V8HI, operand_vB_UIMM, true>(uint32);
template void powerpc_cpu::execute_vector_splat<op_sign_extend_5_32, operand_vD_V4SI, operand_vB_UIMM, true>(uint32);
template void powerpc_cpu::execute_vector_splat<op_nop, operand_vD_V4SI, operand_vB_V4SI, false>(uint32);
template void powerpc_cpu::execute_vector_shift<+1>(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsr<int8>, operand_vD_V16QI, operand_vA_V16QIs, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsr<int16>, operand_vD_V8HI, operand_vA_V8HIs, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsr<int32>, operand_vD_V4SI, operand_vA_V4SIs, operand_vB_V4SIs, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsr<uint8>, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsr<uint16>, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_shift_octet<+1, operand_vD_V16QIm, operand_vA_V16QIm, operand_vB_NONE, operand_SHBO>(uint32);
template void powerpc_cpu::execute_vector_arith<op_vsr<uint32>, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_subcuw, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_fsubs, operand_vD_V4SF, operand_vA_V4SF, operand_vB_V4SF, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V16QI_SAT<int8>, operand_vA_V16QI_SAT<int8>, operand_vB_V16QI_SAT<int8>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V8HI_SAT<int16>, operand_vA_V8HI_SAT<int16>, operand_vB_V8HI_SAT<int16>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub_64, operand_vD_V4SI_SAT<int32>, operand_vA_V4SI_SAT<int32>, operand_vB_V4SI_SAT<int32>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V16QI, operand_vA_V16QI, operand_vB_V16QI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V16QI_SAT<uint8>, operand_vA_V16QI_SAT<uint8>, operand_vB_V16QI_SAT<uint8>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V8HI, operand_vA_V8HI, operand_vB_V8HI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V8HI_SAT<uint16>, operand_vA_V8HI_SAT<uint16>, operand_vB_V8HI_SAT<uint16>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub, operand_vD_V4SI, operand_vA_V4SI, operand_vB_V4SI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_arith<op_sub_64, operand_vD_V4SI_SAT<uint32>, operand_vA_V4SI_SAT<uint32>, operand_vB_V4SI_SAT<uint32>, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);
template void powerpc_cpu::execute_vector_sum<1, operand_vD_V4SI_SAT<int32>, operand_vA_V4SIs, operand_vB_V4SIs>(uint32);
template void powerpc_cpu::execute_vector_sum<2, operand_vD_V4SI_SAT<int32>, operand_vA_V4SIs, operand_vB_V4SIs>(uint32);
template void powerpc_cpu::execute_vector_sum<4, operand_vD_V4SI_SAT<int32>, operand_vA_V16QIs, operand_vB_V4SIs>(uint32);
template void powerpc_cpu::execute_vector_sum<4, operand_vD_V4SI_SAT<int32>, operand_vA_V8HIs, operand_vB_V4SIs>(uint32);
template void powerpc_cpu::execute_vector_sum<4, operand_vD_V4SI_SAT<uint32>, operand_vA_V16QI, operand_vB_V4SI>(uint32);
template void powerpc_cpu::execute_vector_unpack_pixel<0>(uint32);
template void powerpc_cpu::execute_vector_unpack<0, operand_vD_V8HIms, operand_vB_V16QIms>(uint32);
template void powerpc_cpu::execute_vector_unpack<0, operand_vD_V4SIs, operand_vB_V8HIms>(uint32);
template void powerpc_cpu::execute_vector_unpack_pixel<1>(uint32);
template void powerpc_cpu::execute_vector_unpack<1, operand_vD_V8HIms, operand_vB_V16QIms>(uint32);
template void powerpc_cpu::execute_vector_unpack<1, operand_vD_V4SIs, operand_vB_V8HIms>(uint32);
template void powerpc_cpu::execute_vector_arith<op_xor_64, operand_vD_V2DI, operand_vA_V2DI, operand_vB_V2DI, operand_vC_NONE, fake_bit_field< bool, false >, 0 >(uint32);