content: -- This file has been generated by specsgen. Do not modify by hand!
  
  module Unison.Target.Mips.SpecsGen.AlignedPairs (alignedPairs)
         where
  import Unison.Target.Mips.SpecsGen.MipsInstructionDecl
  alignedPairs i ([], [])
    | i `elem`
        [Break16, DERET, DERET_MM, DERET_MMR6, EHB, EHB_MM, EHB_MMR6, ERET,
         ERETNC, ERETNC_MMR6, ERET_MM, ERET_MMR6, ERet, JrRa16, JrcRa16,
         LoadGPDisp, NOP, PAUSE, PAUSE_MM, PAUSE_MMR6, RetRA, RetRA16,
         RetRA_NOP, SSNOP, SSNOP_MM, SSNOP_MMR6, TLBINV, TLBINVF, TLBP,
         TLBP_MM, TLBR, TLBR_MM, TLBWI, TLBWI_MM, TLBWR, TLBWR_MM, TRAP,
         WAIT]
      = []
  alignedPairs i ([], [_])
    | i `elem` [BPOSGE32_PSEUDO, IMPLICIT_DEF, LOAD_STACK_GUARD] = []
  alignedPairs i ([], [_]) | i `elem` [CLOBBER_RA] = []
  alignedPairs i ([], [_])
    | i `elem`
        [MFHI, MFHI16_MM, MFHI64, MFHI_MM, MFLO, MFLO16_MM, MFLO64,
         MFLO_MM]
      = []
  alignedPairs i ([], [_])
    | i `elem` [DI, DI_MM, DI_MMR6, EI, EI_MM, EI_MMR6] = []
  alignedPairs i ([], [_, _])
    | i `elem` [DMFC2_OCTEON, DMTC2_OCTEON] = []
  alignedPairs i ([], [_]) | i `elem` [Mfhi16, Mflo16] = []
  alignedPairs i ([_], [_]) | i `elem` [MFHI_DSP, MFLO_DSP] = []
  alignedPairs i ([_], [_])
    | i `elem` [MFHI_DSP_MM, MFLO_DSP_MM] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [EXTPDP_MM, EXTP_MM, EXTR_RS_W_MM, EXTR_R_W_MM, EXTR_S_H_MM,
         EXTR_W_MM]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [EXTPDPV_MM, EXTPV_MM, EXTRV_RS_W_MM, EXTRV_R_W_MM, EXTRV_S_H_MM,
         EXTRV_W_MM]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [EXTP, EXTPDP, EXTPDPV, EXTPV, EXTRV_RS_W, EXTRV_R_W, EXTRV_S_H,
         EXTRV_W, EXTR_RS_W, EXTR_R_W, EXTR_S_H, EXTR_W]
      = []
  alignedPairs i ([_, _], []) | i `elem` [SYNCI, SYNCI_MMR6] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [LB, LB64, LBE, LBE_MM, LBE_MMR6, LBU16_MM, LBUE_MMR6, LBU_MMR6,
         LB_MM, LB_MMR6, LBu, LBu64, LBuE, LBuE_MM, LBu_MM, LBu_fi,
         LBu_fi_source_fi, LD, LDC1, LDC164, LDC1_MM, LDC1_fi,
         LDC1_fi_source_fi, LDC2, LDC2_R6, LDC3, LEA_ADDiu, LEA_ADDiu64,
         LEA_ADDiu_MM, LEA_ADDiu_source, LH, LH64, LHE, LHE_MM, LHU16_MM,
         LH_MM, LH_fi, LHu, LHu64, LHuE, LHuE_MM, LHu_MM, LHu_fi, LL, LLD,
         LLD_R6, LLE, LLE_MM, LLE_MMR6, LL_MM, LL_R6, LOAD_ACC128,
         LOAD_ACC64, LOAD_ACC64DSP, LOAD_CCOND_DSP, LW, LW16_MM, LW64, LWC1,
         LWC1_MM, LWC1_fi, LWC1_fi_source_fi, LWC2, LWC2_R6, LWC3, LWE,
         LWE_MM, LWE_MMR6, LWM16_MM, LWM16_MMR6, LWM32_MM, LWM_MM, LWU_MM,
         LW_MM, LW_MMR6, LW_fi, LW_fi_source_fi, LWu, LoadAddrReg32,
         LoadAddrReg64, Ulh, Ulhu, Ulw]
      = []
  alignedPairs i ([_, _], [_, _]) | i `elem` [LWP_MM] = []
  alignedPairs i ([_, _], [_]) | i `elem` [AddiuRxRyOffMemX16] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [LD_B, LD_D, LD_H, LD_W] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem`
        [LbRxRyOffMemX16, LbuRxRyOffMemX16, LhRxRyOffMemX16,
         LhuRxRyOffMemX16, LwRxRyOffMemX16]
      = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [CACHE, CACHEE, CACHEE_MM, CACHEE_MMR6, CACHE_MM, CACHE_MMR6,
         CACHE_R6, PREF, PREFE, PREFE_MM, PREFE_MMR6, PREF_MM, PREF_MMR6,
         PREF_R6]
      = []
  alignedPairs i ([_, _, src], [src'])
    | i `elem`
        [LDL, LDR, LWL, LWL64, LWLE, LWLE_MM, LWL_MM, LWR, LWR64, LWRE,
         LWRE_MM, LWR_MM, SWLE, SWRE]
      = [(src, src')]
  alignedPairs i ([_], []) | i `elem` [ADJCALLSTACKDOWN] = []
  alignedPairs i ([_, _], []) | i `elem` [ADJCALLSTACKUP] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [LDXC1, LDXC164, LUXC1, LUXC164, LUXC1_MM, LWXC1, LWXC1_MM]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem` [LBUX, LBUX_MM, LHX, LHX_MM, LWX, LWXS_MM, LWX_MM] = []
  alignedPairs i ([_, _, _], []) | i `elem` [PREFX_MM] = []
  alignedPairs i ([_, _], []) | i `elem` [CTCMSA] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem` [PseudoPICK_PH, PseudoPICK_QB] = []
  alignedPairs i ([_], [])
    | i `elem`
        [BREAK16_MM, BREAK16_MMR6, SDBBP, SDBBP16_MM, SDBBP16_MMR6,
         SDBBP_MM, SDBBP_MMR6, SDBBP_R6, SYSCALL, SYSCALL_MM, WAIT_MM,
         WAIT_MMR6]
      = []
  alignedPairs i ([_, _], [])
    | i `elem` [BREAK, BREAK_MM, BREAK_MMR6] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem`
        [PseudoSELECTFP_F_D32, PseudoSELECTFP_F_D64, PseudoSELECTFP_F_I,
         PseudoSELECTFP_F_I64, PseudoSELECTFP_F_S, PseudoSELECTFP_T_D32,
         PseudoSELECTFP_T_D64, PseudoSELECTFP_T_I, PseudoSELECTFP_T_I64,
         PseudoSELECTFP_T_S, PseudoSELECT_D32, PseudoSELECT_D64,
         PseudoSELECT_I, PseudoSELECT_I64, PseudoSELECT_S]
      = []
  alignedPairs i ([_], [_]) | i `elem` [CFCMSA] = []
  alignedPairs i ([_, _], []) | i `elem` [BC2EQZ, BC2NEZ] = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [BC1F, BC1FL, BC1F_MM, BC1F_NOP, BC1T, BC1TL, BC1T_MM, BC1T_NOP]
      = []
  alignedPairs i ([fd_in, _, _], [fd_in'])
    | i `elem`
        [MADDF_D, MADDF_D_MMR6, MADDF_S, MADDF_S_MMR6, MSUBF_D,
         MSUBF_D_MMR6, MSUBF_S, MSUBF_S_MMR6, SEL_D, SEL_D_MMR6, SEL_S,
         SEL_S_MMR6]
      = [(fd_in, fd_in')]
  alignedPairs i ([_, _, _], [_])
    | i `elem`
        [MADD_D32, MADD_D32_MM, MADD_D64, MADD_S, MADD_S_MM, MSUB_D32,
         MSUB_D32_MM, MSUB_D64, MSUB_S, MSUB_S_MM, NMADD_D32, NMADD_D32_MM,
         NMADD_D64, NMADD_S, NMADD_S_MM, NMSUB_D32, NMSUB_D32_MM, NMSUB_D64,
         NMSUB_S, NMSUB_S_MM]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [CEIL_L_D64, CEIL_L_S, CEIL_W_D32, CEIL_W_D64, CEIL_W_MM, CEIL_W_S,
         CEIL_W_S_MM, CLASS_D, CLASS_D_MMR6, CLASS_S, CLASS_S_MMR6,
         CVT_D32_S, CVT_D32_W, CVT_D32_W_MM, CVT_D64_L, CVT_D64_S,
         CVT_D64_W, CVT_D_S_MM, CVT_L_D64, CVT_L_D64_MM, CVT_L_S,
         CVT_L_S_MM, CVT_S_D32, CVT_S_D32_MM, CVT_S_D64, CVT_S_L, CVT_S_W,
         CVT_S_W_MM, CVT_W_D32, CVT_W_D64, CVT_W_MM, CVT_W_S, CVT_W_S_MM,
         FABS_D32, FABS_D64, FABS_MM, FABS_S, FABS_S_MM, FLOOR_L_D64,
         FLOOR_L_S, FLOOR_W_D32, FLOOR_W_D64, FLOOR_W_MM, FLOOR_W_S,
         FLOOR_W_S_MM, FMOV_D32, FMOV_D32_MM, FMOV_D64, FMOV_S, FMOV_S_MM,
         FNEG_D32, FNEG_D64, FNEG_MM, FNEG_S, FNEG_S_MM, FSQRT_D32,
         FSQRT_D64, FSQRT_MM, FSQRT_S, FSQRT_S_MM, MOVE_D, MOVE_F,
         PseudoCVT_D32_W, PseudoCVT_D64_L, PseudoCVT_D64_W, PseudoCVT_S_L,
         PseudoCVT_S_W, RINT_D, RINT_D_MMR6, RINT_S, RINT_S_MMR6,
         ROUND_L_D64, ROUND_L_S, ROUND_W_D32, ROUND_W_D64, ROUND_W_MM,
         ROUND_W_S, ROUND_W_S_MM, TRUNC_L_D64, TRUNC_L_S, TRUNC_W_D32,
         TRUNC_W_D64, TRUNC_W_MM, TRUNC_W_S, TRUNC_W_S_MM]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [ABS_D_MMR6, ABS_S_MMR6, CEIL_L_D_MMR6, CEIL_L_S_MMR6,
         CEIL_W_D_MMR6, CEIL_W_S_MMR6, CVT_D_L_MMR6, CVT_D_S_MMR6,
         CVT_D_W_MMR6, CVT_L_D_MMR6, CVT_L_S_MMR6, CVT_S_D_MMR6,
         CVT_S_L_MMR6, CVT_S_W_MMR6, CVT_W_D_MMR6, CVT_W_S_MMR6,
         FLOOR_L_D_MMR6, FLOOR_L_S_MMR6, FLOOR_W_D_MMR6, FLOOR_W_S_MMR6,
         FMOV_D_MMR6, FMOV_S_MMR6, FNEG_D_MMR6, FNEG_S_MMR6, RECIP_D_MMR6,
         RECIP_S_MMR6, ROUND_L_D_MMR6, ROUND_L_S_MMR6, ROUND_W_D_MMR6,
         ROUND_W_S_MMR6, RSQRT_D_MMR6, RSQRT_S_MMR6, SQRT_D_MMR6,
         SQRT_S_MMR6, TRUNC_L_D_MMR6, TRUNC_L_S_MMR6, TRUNC_W_D_MMR6,
         TRUNC_W_S_MMR6]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [CFC1, CFC1_MM, DMFC1, MFC1, MFC1_MM, MFHC1_D32, MFHC1_D64,
         MFHC1_MM]
      = []
  alignedPairs i ([_], [_])
    | i `elem` [FILL_FD_PSEUDO, FILL_FW_PSEUDO] = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [SDXC1, SDXC164, SUXC1, SUXC164, SUXC1_MM, SWXC1, SWXC1_MM]
      = []
  alignedPairs i ([_, _, f], [f'])
    | i `elem`
        [MOVF_D32, MOVF_D32_MM, MOVF_D64, MOVF_S, MOVF_S_MM, MOVT_D32,
         MOVT_D32_MM, MOVT_D64, MOVT_S, MOVT_S_MM]
      = [(f, f')]
  alignedPairs i ([_, _], [])
    | i `elem`
        [C_EQ_D32, C_EQ_D64, C_EQ_S, C_F_D32, C_F_D64, C_F_S, C_LE_D32,
         C_LE_D64, C_LE_S, C_LT_D32, C_LT_D64, C_LT_S, C_NGE_D32, C_NGE_D64,
         C_NGE_S, C_NGLE_D32, C_NGLE_D64, C_NGLE_S, C_NGL_D32, C_NGL_D64,
         C_NGL_S, C_NGT_D32, C_NGT_D64, C_NGT_S, C_OLE_D32, C_OLE_D64,
         C_OLE_S, C_OLT_D32, C_OLT_D64, C_OLT_S, C_SEQ_D32, C_SEQ_D64,
         C_SEQ_S, C_SF_D32, C_SF_D64, C_SF_S, C_UEQ_D32, C_UEQ_D64, C_UEQ_S,
         C_ULE_D32, C_ULE_D64, C_ULE_S, C_ULT_D32, C_ULT_D64, C_ULT_S,
         C_UN_D32, C_UN_D64, C_UN_S]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [CMP_AF_D_MMR6, CMP_AF_S_MMR6, CMP_EQ_D, CMP_EQ_D_MMR6, CMP_EQ_S,
         CMP_EQ_S_MMR6, CMP_F_D, CMP_F_S, CMP_LE_D, CMP_LE_D_MMR6, CMP_LE_S,
         CMP_LE_S_MMR6, CMP_LT_D, CMP_LT_D_MMR6, CMP_LT_S, CMP_LT_S_MMR6,
         CMP_SAF_D, CMP_SAF_D_MMR6, CMP_SAF_S, CMP_SAF_S_MMR6, CMP_SEQ_D,
         CMP_SEQ_D_MMR6, CMP_SEQ_S, CMP_SEQ_S_MMR6, CMP_SLE_D,
         CMP_SLE_D_MMR6, CMP_SLE_S, CMP_SLE_S_MMR6, CMP_SLT_D,
         CMP_SLT_D_MMR6, CMP_SLT_S, CMP_SLT_S_MMR6, CMP_SUEQ_D,
         CMP_SUEQ_D_MMR6, CMP_SUEQ_S, CMP_SUEQ_S_MMR6, CMP_SULE_D,
         CMP_SULE_D_MMR6, CMP_SULE_S, CMP_SULE_S_MMR6, CMP_SULT_D,
         CMP_SULT_D_MMR6, CMP_SULT_S, CMP_SULT_S_MMR6, CMP_SUN_D,
         CMP_SUN_D_MMR6, CMP_SUN_S, CMP_SUN_S_MMR6, CMP_UEQ_D,
         CMP_UEQ_D_MMR6, CMP_UEQ_S, CMP_UEQ_S_MMR6, CMP_ULE_D,
         CMP_ULE_D_MMR6, CMP_ULE_S, CMP_ULE_S_MMR6, CMP_ULT_D,
         CMP_ULT_D_MMR6, CMP_ULT_S, CMP_ULT_S_MMR6, CMP_UN_D, CMP_UN_D_MMR6,
         CMP_UN_S, CMP_UN_S_MMR6, FADD_D32, FADD_D64, FADD_MM, FADD_S,
         FADD_S_MM, FDIV_D32, FDIV_D64, FDIV_MM, FDIV_S, FDIV_S_MM,
         FMUL_D32, FMUL_D64, FMUL_MM, FMUL_S, FMUL_S_MM, FSUB_D32, FSUB_D64,
         FSUB_MM, FSUB_S, FSUB_S_MM, MAXA_D, MAXA_D_MMR6, MAXA_S,
         MAXA_S_MMR6, MAX_D, MAX_D_MMR6, MAX_S, MAX_S_MMR6, MINA_D,
         MINA_D_MMR6, MINA_S, MINA_S_MMR6, MIN_D, MIN_D_MMR6, MIN_S,
         MIN_S_MMR6, SELENZ_D_MMR6, SELENZ_S_MMR6, SELEQZ_D, SELEQZ_D_MMR6,
         SELEQZ_S, SELEQZ_S_MMR6, SELNEZ_D, SELNEZ_S]
      = []
  alignedPairs i ([_, _, _], [])
    | i `elem` [FCMP_D32, FCMP_D32_MM, FCMP_D64, FCMP_S32, FCMP_S32_MM]
      = []
  alignedPairs i ([_, _, f], [f'])
    | i `elem`
        [MOVN_I64_D64, MOVN_I64_S, MOVN_I_D32, MOVN_I_D32_MM, MOVN_I_D64,
         MOVN_I_S, MOVN_I_S_MM, MOVZ_I64_D64, MOVZ_I64_S, MOVZ_I_D32,
         MOVZ_I_D32_MM, MOVZ_I_D64, MOVZ_I_S, MOVZ_I_S_MM]
      = [(f, f')]
  alignedPairs i ([fs_in, _], [fs_in'])
    | i `elem` [MTHC1_D32, MTHC1_D64, MTHC1_MM] = [(fs_in, fs_in')]
  alignedPairs i ([_, _], [_])
    | i `elem`
        [FADD_D_MMR6, FADD_S_MMR6, FDIV_D_MMR6, FDIV_S_MMR6, FMUL_D_MMR6,
         FMUL_S_MMR6, FSUB_D_MMR6, FSUB_S_MMR6]
      = []
  alignedPairs i ([_, _], []) | i `elem` [BC1EQZ, BC1NEZ] = []
  alignedPairs i ([_, _, _, _], [])
    | i `elem` [Register_class_decl_dummy] = []
  alignedPairs i ([_], [_])
    | i `elem` [PseudoMFHI, PseudoMFHI64, PseudoMFLO, PseudoMFLO64] =
      []
  alignedPairs i ([_], [])
    | i `elem`
        [CFI_INSTRUCTION, EH_LABEL, GC_LABEL, LIFETIME_END, LIFETIME_START]
      = []
  alignedPairs i ([_, _, _, _, _, _], [_])
    | i `elem` [PATCHPOINT] = []
  alignedPairs i ([_, _, _], []) | i `elem` [STACKMAP] = []
  alignedPairs i ([_], [])
    | i `elem`
        [ADDIUSP_MM, AddiuSpImm16, AddiuSpImmX16, Bteqz16, BteqzX16,
         Btnez16, BtnezX16, Constant32, JRADDIUSP, JRCADDIUSP_MMR6, Jal16,
         JalB16]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [ADDIUR1SP_MM, LI16_MM, LI16_MMR6, REPL_PH, REPL_PH_MM, REPL_QB]
      = []
  alignedPairs i ([_], [_])
    | i `elem` [ADDIUPC, ADDIUPC_MM, ALUIPC, AUIPC, LDPC, LWPC, LWUPC]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [ADDIUPC_MMR6, ALUIPC_MMR6, AUIPC_MMR6, LWPC_MMR6, REPL_QB_MM]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [AddiuRxImmX16, AddiuRxPcImmX16, LiRxImm16, LiRxImmAlignX16,
         LiRxImmX16]
      = []
  alignedPairs i ([_, _], [_]) | i `elem` [LwConstant32] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [LwRxPcTcp16, LwRxPcTcpX16] = []
  alignedPairs i ([_], [])
    | i `elem` [ADDiu_negsp, ADDiu_sp, Bimm16, BimmX16] = []
  alignedPairs i ([_], [_])
    | i `elem` [LUI_MMR6, LUi, LUi64, LUi_MM, LUi_source] = []
  alignedPairs i ([_], [_])
    | i `elem` [LoadAddrImm32, LoadImm32] = []
  alignedPairs i ([_], [_])
    | i `elem` [LoadAddrImm64, LoadImm64] = []
  alignedPairs i ([_, _], [_]) | i `elem` [BeqImm, BneImm] = []
  alignedPairs i ([_, _], [_, _]) | i `elem` [GotPrologue16] = []
  alignedPairs i ([_, _, _], [_]) | i `elem` [SUBREG_TO_REG] = []
  alignedPairs i ([_, _, _], []) | i `elem` [CONSTPOOL_ENTRY] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [BuildPairF64, BuildPairF64_64] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [PseudoMTLOHI, PseudoMTLOHI64, PseudoMTLOHI_DSP] = []
  alignedPairs i ([_], [_]) | i `elem` [RDDSP] = []
  alignedPairs i ([_], [_]) | i `elem` [RDDSP_MM] = []
  alignedPairs i ([_], [])
    | i `elem`
        [B, B16_MM, BAL, BALC, BALC_MMR6, BAL_BR, BC, BC16_MMR6, BC_MMR6,
         BPOSGE32, B_MMR6_Pseudo, B_MM_Pseudo, B_NOP]
      = []
  alignedPairs i ([_, _], [_]) | i `elem` [LWGP_MM, LWSP_MM] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem`
        [ATOMIC_CMP_SWAP_I16, ATOMIC_CMP_SWAP_I32, ATOMIC_CMP_SWAP_I64,
         ATOMIC_CMP_SWAP_I8]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [ATOMIC_LOAD_ADD_I16, ATOMIC_LOAD_ADD_I32, ATOMIC_LOAD_ADD_I64,
         ATOMIC_LOAD_ADD_I8, ATOMIC_LOAD_AND_I16, ATOMIC_LOAD_AND_I32,
         ATOMIC_LOAD_AND_I64, ATOMIC_LOAD_AND_I8, ATOMIC_LOAD_NAND_I16,
         ATOMIC_LOAD_NAND_I32, ATOMIC_LOAD_NAND_I64, ATOMIC_LOAD_NAND_I8,
         ATOMIC_LOAD_OR_I16, ATOMIC_LOAD_OR_I32, ATOMIC_LOAD_OR_I64,
         ATOMIC_LOAD_OR_I8, ATOMIC_LOAD_SUB_I16, ATOMIC_LOAD_SUB_I32,
         ATOMIC_LOAD_SUB_I64, ATOMIC_LOAD_SUB_I8, ATOMIC_LOAD_XOR_I16,
         ATOMIC_LOAD_XOR_I32, ATOMIC_LOAD_XOR_I64, ATOMIC_LOAD_XOR_I8,
         ATOMIC_SWAP_I16, ATOMIC_SWAP_I32, ATOMIC_SWAP_I64, ATOMIC_SWAP_I8]
      = []
  alignedPairs i ([_], [_]) | i `elem` [MoveR3216] = []
  alignedPairs i ([_], [_])
    | i `elem` [RDHWR, RDHWR64, RDHWR_MM, RDPGPR_MMR6] = []
  alignedPairs i ([rd, _], [rd'])
    | i `elem` [ADDIUS5_MM] = [(rd, rd')]
  alignedPairs i ([rd, _, _, _], [rd'])
    | i `elem`
        [SelTBteqZCmpi, SelTBteqZSlti, SelTBteqZSltiu, SelTBtneZCmpi,
         SelTBtneZSlti, SelTBtneZSltiu]
      = [(rd, rd')]
  alignedPairs i ([rd, _, _, _], [rd'])
    | i `elem`
        [SelTBteqZCmp, SelTBteqZSlt, SelTBteqZSltu, SelTBtneZCmp,
         SelTBtneZSlt, SelTBtneZSltu]
      = [(rd, rd')]
  alignedPairs i ([rd, _, _], [rd'])
    | i `elem` [SelBeqZ, SelBneZ] = [(rd, rd')]
  alignedPairs i ([_, _], [_])
    | i `elem` [DMFC0, DMFC2, MFC0, MFC2] = []
  alignedPairs i ([_], [])
    | i `elem`
        [JALR16_MM, JALR64Pseudo, JALRC16_MMR6, JALRPseudo, JALRPseudo_NOP,
         JALRS16_MM, JR, JR16_MM, JR64, JRC16_MM, JRC16_MMR6, JR_HB,
         JR_HB_R6, JR_MM, JalOneReg, JumpLinkReg16, MTHI, MTHI64, MTHI_MM,
         MTLO, MTLO64, MTLO_MM, MTM0, MTM1, MTM2, MTP0, MTP1, MTP2,
         PseudoIndirectBranch, PseudoIndirectBranch64,
         PseudoIndirectBranch_NOP, PseudoReturn, PseudoReturn64,
         PseudoReturn_NOP, TAILCALL64_R, TAILCALL_R]
      = []
  alignedPairs i ([_], [_])
    | i `elem` [MTHI_DSP, MTHI_DSP_MM, MTLO_DSP, MTLO_DSP_MM] = []
  alignedPairs i ([_], [_])
    | i `elem`
        [CLO, CLO_MM, CLO_R6, CLZ, CLZ_MM, CLZ_R6, DCLO, DCLO_R6, DCLZ,
         DCLZ_R6, DPOP, JALR, JALR64, JALRS_MM, JALR_HB, JALR_MM, JalTwoReg,
         MOVE16_MM, MOVE16_MMR6, POP, RADDU_W_QB]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [ABSQ_S_PH_MM, ABSQ_S_QB_MMR2, ABSQ_S_W_MM, CLO_MMR6, CLZ_MMR6,
         NOT16_MM, NOT16_MMR6, PRECEQU_PH_QBLA_MM, PRECEQU_PH_QBL_MM,
         PRECEQU_PH_QBRA_MM, PRECEQU_PH_QBR_MM, PRECEQ_W_PHL_MM,
         PRECEQ_W_PHR_MM, PRECEU_PH_QBLA_MM, PRECEU_PH_QBL_MM,
         PRECEU_PH_QBRA_MM, PRECEU_PH_QBR_MM, RADDU_W_QB_MM, REPLV_PH_MM,
         REPLV_QB_MM, WRPGPR_MMR6, WSBH_MMR6]
      = []
  alignedPairs i ([_], [_])
    | i `elem` [FILL_B, FILL_D, FILL_H, FILL_W] = []
  alignedPairs i ([_, acin], [acin'])
    | i `elem` [MTHLIP, MTHLIP_MM, SHILOV, SHILOV_MM] = [(acin, acin')]
  alignedPairs i ([_, _, f], [f'])
    | i `elem`
        [MOVF_I, MOVF_I64, MOVF_I_MM, MOVT_I, MOVT_I64, MOVT_I_MM]
      = [(f, f')]
  alignedPairs i ([_, _], [_])
    | i `elem` [ADDIUR2_MM, ANDI16_MM, ANDI16_MMR6] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [AUI_MMR6, DAUI_MM64R6] = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [BGEImmMacro, BGELImmMacro, BGEUImmMacro, BGEULImmMacro,
         BGTImmMacro, BGTLImmMacro, BGTUImmMacro, BGTULImmMacro,
         BLEImmMacro, BLELImmMacro, BLEUImmMacro, BLEULImmMacro,
         BLTImmMacro, BLTLImmMacro, BLTUImmMacro, BLTULImmMacro]
      = []
  alignedPairs i ([_, _], [_]) | i `elem` [SEQi, SNEi] = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [TEQI, TEQI_MM, TGEI, TGEIU, TGEIU_MM, TGEI_MM, TLTI, TLTIU_MM,
         TLTI_MM, TNEI, TNEI_MM, TTLTIU]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [ADDIU_MMR6, ADDi, ADDi_MM, ADDiu, ADDiu_MM, ANDI_MMR6, ANDi,
         ANDi64, ANDi_MM, DADDi, DADDiu, ORI_MMR6, ORi, ORi64, ORi_MM, SLTi,
         SLTi64, SLTi_MM, SLTiu, SLTiu64, SLTiu_MM, XORI_MMR6, XORi, XORi64,
         XORi_MM]
      = []
  alignedPairs i ([_, _], []) | i `elem` [WRDSP] = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [BEQZ16_MM, BEQZC, BEQZC16_MMR6, BEQZC_MM, BGEZ, BGEZ64, BGEZAL,
         BGEZALL, BGEZALS_MM, BGEZAL_MM, BGEZL, BGEZ_MM, BGEZ_NOP, BGTZ,
         BGTZ64, BGTZL, BGTZ_MM, BGTZ_NOP, BLEZ, BLEZ64, BLEZL, BLEZ_MM,
         BLEZ_NOP, BLTZ, BLTZ64, BLTZAL, BLTZALL, BLTZALS_MM, BLTZAL_MM,
         BLTZL, BLTZ_MM, BLTZ_NOP, BNEZ16_MM, BNEZC, BNEZC16_MMR6, BNEZC_MM]
      = []
  alignedPairs i ([_, _, _], [])
    | i `elem` [BBIT0, BBIT032, BBIT1, BBIT132] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem` [CINS, CINS32, EXTS, EXTS32] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem`
        [DEXT, DEXTM, DEXTM_MM64R6, DEXTU, DEXTU_MM64R6, DEXT_MM64R6, EXT,
         EXT_MM]
      = []
  alignedPairs i ([_, _, _, src], [src'])
    | i `elem` [DINS, DINSM, DINSU, INS, INS_MM] = [(src, src')]
  alignedPairs i ([_, _], [])
    | i `elem`
        [CMPU_EQ_QB, CMPU_LE_QB, CMPU_LT_QB, CMP_EQ_PH, CMP_LE_PH,
         CMP_LT_PH, DMULT, DMULTu, DSDIV, DSDivMacro, DUDIV, DUDivMacro,
         MADD, MADDU, MADDU_MM, MADD_MM, MSUB, MSUBU, MSUBU_MM, MSUB_MM,
         MULT, MULT_MM, MULTu, MULTu_MM, SDIV, SDIV_MM, SDivMacro, UDIV,
         UDIV_MM, UDivMacro]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [MULTU_DSP, MULTU_DSP_MM, MULT_DSP, MULT_DSP_MM, PseudoDMULT,
         PseudoDMULTu, PseudoDSDIV, PseudoDUDIV, PseudoMULT, PseudoMULTu,
         PseudoSDIV, PseudoUDIV]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [PseudoCMPU_EQ_QB, PseudoCMPU_LE_QB, PseudoCMPU_LT_QB,
         PseudoCMP_EQ_PH, PseudoCMP_LE_PH, PseudoCMP_LT_PH]
      = []
  alignedPairs i ([_, _], [_, _]) | i `elem` [MOVEP_MM] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [ADD, ADDQH_PH, ADDQH_PH_MMR2, ADDQH_R_PH, ADDQH_R_PH_MMR2,
         ADDQH_R_W, ADDQH_R_W_MMR2, ADDQH_W, ADDQH_W_MMR2, ADDQ_PH,
         ADDQ_PH_MM, ADDQ_S_PH, ADDQ_S_PH_MM, ADDQ_S_W, ADDQ_S_W_MM, ADDSC,
         ADDSC_MM, ADDU16_MM, ADDU16_MMR6, ADDUH_QB, ADDUH_QB_MMR2,
         ADDUH_R_QB, ADDUH_R_QB_MMR2, ADDU_MMR6, ADDU_PH, ADDU_PH_MMR2,
         ADDU_QB, ADDU_QB_MM, ADDU_S_PH, ADDU_S_PH_MMR2, ADDU_S_QB,
         ADDU_S_QB_MM, ADDWC, ADDWC_MM, ADD_MM, ADD_MMR6, ADDu, ADDu_MM,
         AND, AND64, AND_MM, AND_MMR6, BADDu, CMPGDU_EQ_QB, CMPGDU_LE_QB,
         CMPGDU_LT_QB, CMPGU_EQ_QB, CMPGU_LE_QB, CMPGU_LT_QB, DADD, DADDu,
         DDIV, DDIVU, DDIVU_MM64R6, DDIV_MM64R6, DIV, DIVU, DIVU_MMR6,
         DIV_MMR6, DMOD, DMODU, DMODU_MM64R6, DMOD_MM64R6, DMUH, DMUHU,
         DMUL, DMULU, DMUL_R6, DSUB, DSUBu, MOD, MODSUB, MODU, MODU_MMR6,
         MOD_MMR6, MUH, MUHU, MUHU_MMR6, MUH_MMR6, MUL, MULEQ_S_W_PHL,
         MULEQ_S_W_PHL_MM, MULEQ_S_W_PHR, MULEQ_S_W_PHR_MM, MULEU_S_PH_QBL,
         MULEU_S_PH_QBL_MM, MULEU_S_PH_QBR, MULEU_S_PH_QBR_MM, MULQ_RS_PH,
         MULQ_RS_PH_MM, MULQ_RS_W, MULQ_RS_W_MMR2, MULQ_S_PH,
         MULQ_S_PH_MMR2, MULQ_S_W, MULQ_S_W_MMR2, MULU, MULU_MMR6, MUL_MM,
         MUL_MMR6, MUL_PH, MUL_PH_MMR2, MUL_R6, MUL_S_PH, MUL_S_PH_MMR2,
         NOR, NOR64, NOR_MM, NOR_MMR6, OR, OR64, OR_MM, OR_MMR6, PACKRL_PH,
         PACKRL_PH_MM, PICK_PH, PICK_PH_MM, PICK_QB, PICK_QB_MM,
         PRECRQU_S_QB_PH, PRECRQU_S_QB_PH_MM, PRECRQ_PH_W, PRECRQ_PH_W_MM,
         PRECRQ_QB_PH, PRECRQ_QB_PH_MM, PRECRQ_RS_PH_W, PRECRQ_RS_PH_W_MM,
         PRECR_QB_PH, PRECR_QB_PH_MMR2, SELEQZ, SELEQZ64, SELEQZ_MMR6,
         SELNEZ, SELNEZ64, SELNEZ_MMR6, SEQ, SLT, SLT64, SLT_MM, SLTu,
         SLTu64, SLTu_MM, SNE, SUB, SUBQH_PH, SUBQH_PH_MMR2, SUBQH_R_PH,
         SUBQH_R_PH_MMR2, SUBQH_R_W, SUBQH_R_W_MMR2, SUBQH_W, SUBQH_W_MMR2,
         SUBQ_PH, SUBQ_PH_MM, SUBQ_S_PH, SUBQ_S_PH_MM, SUBQ_S_W,
         SUBQ_S_W_MM, SUBU16_MM, SUBU16_MMR6, SUBUH_QB, SUBUH_QB_MMR2,
         SUBUH_R_QB, SUBUH_R_QB_MMR2, SUBU_MMR6, SUBU_PH, SUBU_PH_MMR2,
         SUBU_QB, SUBU_QB_MM, SUBU_S_PH, SUBU_S_PH_MMR2, SUBU_S_QB,
         SUBU_S_QB_MM, SUB_MM, SUB_MMR6, SUBu, SUBu_MM, V3MULU, VMM0, VMULU,
         XOR, XOR64, XOR_MM, XOR_MMR6]
      = []
  alignedPairs i ([_, rt], [rt'])
    | i `elem`
        [AND16_MM, AND16_MMR6, OR16_MM, OR16_MMR6, XOR16_MM, XOR16_MMR6]
      = [(rt, rt')]
  alignedPairs i ([_, _, f], [f'])
    | i `elem`
        [MOVN_I64_I, MOVN_I64_I64, MOVN_I_I, MOVN_I_I64, MOVN_I_MM,
         MOVZ_I64_I, MOVZ_I64_I64, MOVZ_I_I, MOVZ_I_I64, MOVZ_I_MM]
      = [(f, f')]
  alignedPairs i ([_, _, acin], [acin'])
    | i `elem`
        [DPAQX_SA_W_PH, DPAQX_SA_W_PH_MMR2, DPAQX_S_W_PH,
         DPAQX_S_W_PH_MMR2, DPAQ_SA_L_W, DPAQ_SA_L_W_MM, DPAQ_S_W_PH,
         DPAQ_S_W_PH_MM, DPAU_H_QBL, DPAU_H_QBL_MM, DPAU_H_QBR,
         DPAU_H_QBR_MM, DPAX_W_PH, DPAX_W_PH_MMR2, DPA_W_PH, DPA_W_PH_MMR2,
         DPSQX_SA_W_PH, DPSQX_SA_W_PH_MMR2, DPSQX_S_W_PH, DPSQX_S_W_PH_MMR2,
         DPSQ_SA_L_W, DPSQ_SA_L_W_MM, DPSQ_S_W_PH, DPSQ_S_W_PH_MM,
         DPSU_H_QBL, DPSU_H_QBL_MM, DPSU_H_QBR, DPSU_H_QBR_MM, DPSX_W_PH,
         DPSX_W_PH_MMR2, DPS_W_PH, DPS_W_PH_MMR2, MADDU_DSP, MADDU_DSP_MM,
         MADD_DSP, MADD_DSP_MM, MAQ_SA_W_PHL, MAQ_SA_W_PHL_MM, MAQ_SA_W_PHR,
         MAQ_SA_W_PHR_MM, MAQ_S_W_PHL, MAQ_S_W_PHL_MM, MAQ_S_W_PHR,
         MAQ_S_W_PHR_MM, MSUBU_DSP, MSUBU_DSP_MM, MSUB_DSP, MSUB_DSP_MM,
         MULSAQ_S_W_PH, MULSA_W_PH, PseudoMADD, PseudoMADDU, PseudoMSUB,
         PseudoMSUBU]
      = [(acin, acin')]
  alignedPairs i ([_, _, _], [_])
    | i `elem` [ALIGN, ALIGN_MMR6, DALIGN, DALIGN_MM64R6] = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [TEQ, TEQ_MM, TGE, TGEU, TGEU_MM, TGE_MM, TLT, TLTU, TLTU_MM,
         TLT_MM, TNE, TNE_MM]
      = []
  alignedPairs i ([_, _, _], [])
    | i `elem` [DROLImm, DRORImm, NORImm, ROLImm, RORImm] = []
  alignedPairs i ([_, _, _], [_])
    | i `elem` [DLSA_R6, LSA_MMR6, LSA_R6] = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [BEQ, BEQ64, BEQC, BEQL, BEQ_MM, BEQ_NOP, BGE, BGEC, BGEL, BGEU,
         BGEUC, BGEUL, BGT, BGTL, BGTU, BGTUL, BLE, BLEL, BLEU, BLEUL, BLT,
         BLTC, BLTL, BLTU, BLTUC, BLTUL, BNE, BNE64, BNEC, BNEL, BNE_MM,
         BNE_NOP, BNVC, BOVC]
      = []
  alignedPairs i ([_, _, _], [])
    | i `elem` [DROL, DROR, ROL, ROR] = []
  alignedPairs i ([_, _, _], [_]) | i `elem` [DLSA, LSA] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [SHLL_PH_MM, SHLL_QB_MM, SHLL_S_PH_MM, SHLL_S_W_MM, SHRA_PH_MM,
         SHRA_QB_MMR2, SHRA_R_PH_MM, SHRA_R_QB_MMR2, SHRA_R_W_MM,
         SHRL_PH_MMR2, SHRL_QB_MM]
      = []
  alignedPairs i ([_, _, src], [src'])
    | i `elem`
        [APPEND, BALIGN, PRECR_SRA_PH_W, PRECR_SRA_PH_W_MMR2,
         PRECR_SRA_R_PH_W, PRECR_SRA_R_PH_W_MMR2, PREPEND, PREPEND_MMR2]
      = [(src, src')]
  alignedPairs i ([_, _], [_]) | i `elem` [RDHWR_MMR6] = []
  alignedPairs i ([_], [_])
    | i `elem` [CTC1, CTC1_MM, DMTC1, MTC1, MTC1_MM] = []
  alignedPairs i ([_], [_])
    | i `elem`
        [ABSQ_S_PH, ABSQ_S_QB, ABSQ_S_W, BITREV, BITSWAP, BITSWAP_MMR6,
         DBITSWAP, DSBH, DSHD, DSLL64_32, LOAD, LOAD_D, LOAD_F, MOVE,
         PRECEQU_PH_QBL, PRECEQU_PH_QBLA, PRECEQU_PH_QBR, PRECEQU_PH_QBRA,
         PRECEQ_W_PHL, PRECEQ_W_PHR, PRECEU_PH_QBL, PRECEU_PH_QBLA,
         PRECEU_PH_QBR, PRECEU_PH_QBRA, REPLV_PH, REPLV_QB, SEB, SEB64,
         SEB_MM, SEB_MMR6, SEH, SEH64, SEH_MM, SEH_MMR6, SLL64_32, SLL64_64,
         STORE, STORE_D, STORE_F, WSBH, WSBH_MM]
      = []
  alignedPairs i ([_, _], [])
    | i `elem` [SDC1_sp, SWC1_sp, SW_sp] = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [SB, SB16_MM, SB16_MMR6, SB64, SBE, SBE_MM, SBE_MMR6, SB_MM,
         SB_MMR6, SB_fi, SCE_MMR6, SD, SDC1, SDC164, SDC1_MM, SDC2, SDC2_R6,
         SDC3, SDL, SDR, SH, SH16_MM, SH16_MMR6, SH64, SHE, SHE_MM,
         SHE_MMR6, SH_MM, SH_MMR6, SH_fi, STORE_ACC128, STORE_ACC64,
         STORE_ACC64DSP, STORE_CCOND_DSP, SW, SW16_MM, SW16_MMR6, SW64,
         SWC1, SWC1_MM, SWC1_fi, SWC2, SWC2_R6, SWC3, SWE, SWE_MM, SWE_MMR6,
         SWL, SWL64, SWLE_MM, SWL_MM, SWL_fi, SWM16_MM, SWM16_MMR6,
         SWM32_MM, SWM_MM, SWR, SWR64, SWRE_MM, SWR_MM, SWR_fi, SW_MM,
         SW_MMR6, SW_fi]
      = []
  alignedPairs i ([rt, _, _], [rt'])
    | i `elem` [SC, SCD, SCD_R6, SCE, SCE_MM, SC_MM, SC_R6] =
      [(rt, rt')]
  alignedPairs i ([_, _], [_]) | i `elem` [AUI, DAUI] = []
  alignedPairs i ([rt, _], [rt'])
    | i `elem` [DAHI, DAHI_MM64R6, DATI, DATI_MM64R6] = [(rt, rt')]
  alignedPairs i ([_, _], []) | i `elem` [WRDSP_MM] = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [BEQZALC, BEQZALC_MMR6, BGEZALC, BGEZALC_MMR6, BGEZC, BGTZALC,
         BGTZALC_MMR6, BGTZC, BLEZALC, BLEZALC_MMR6, BLEZC, BLTZALC,
         BLTZALC_MMR6, BLTZC, BNEZALC, BNEZALC_MMR6, JIALC, JIALC_MMR6, JIC,
         JIC_MMR6]
      = []
  alignedPairs i ([_, _, _], []) | i `elem` [SWSP_MM, SWSP_MMR6] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [DROTRV, DSLLV, DSRAV, DSRLV, ROTRV, ROTRV_MM, SHLLV_PH_MM,
         SHLLV_QB_MM, SHLLV_S_PH_MM, SHLLV_S_W_MM, SHRAV_PH_MM,
         SHRAV_QB_MMR2, SHRAV_R_PH_MM, SHRAV_R_QB_MMR2, SHRAV_R_W_MM,
         SHRLV_PH_MMR2, SHRLV_QB_MM, SLLV, SLLV_MM, SRAV, SRAV_MM, SRLV,
         SRLV_MM]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [SHLLV_PH, SHLLV_QB, SHLLV_S_PH, SHLLV_S_W, SHLL_PH, SHLL_QB,
         SHLL_S_PH, SHLL_S_W, SHRAV_PH, SHRAV_QB, SHRAV_R_PH, SHRAV_R_QB,
         SHRAV_R_W, SHRA_PH, SHRA_QB, SHRA_R_PH, SHRA_R_QB, SHRA_R_W,
         SHRLV_PH, SHRLV_QB, SHRL_PH, SHRL_QB]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem` [DMTC0, DMTC2, MTC0, MTC2] = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [DROTR, DROTR32, DSLL, DSLL32, DSRA, DSRA32, DSRL, DSRL32, ROTR,
         ROTR_MM, SLL, SLL16_MM, SLL16_MMR6, SLL_MM, SLL_MMR6, SRA, SRA_MM,
         SRL, SRL16_MM, SRL16_MMR6, SRL_MM]
      = []
  alignedPairs i ([_, _, _, _], []) | i `elem` [SWP_MM] = []
  alignedPairs i ([_], []) | i `elem` [JrcRx16] = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [BeqzRxImm16, BeqzRxImmX16, BnezRxImm16, BnezRxImmX16, CmpiRxImm16,
         CmpiRxImmX16, SltiRxImm16, SltiRxImmX16, SltiuRxImm16,
         SltiuRxImmX16]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem` [SltiCCRxImmX16, SltiuCCRxImmX16] = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [BteqzT8CmpiX16, BteqzT8SltiX16, BteqzT8SltiuX16, BtnezT8CmpiX16,
         BtnezT8SltiX16, BtnezT8SltiuX16]
      = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [CmpRxRy16, DivRxRy16, DivuRxRy16, MultRxRy16, MultuRxRy16,
         SltRxRy16, SltuRxRy16]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem` [SltCCRxRy16, SltuCCRxRy16] = []
  alignedPairs i ([rx, _], [rx'])
    | i `elem`
        [AndRxRxRy16, OrRxRxRy16, SllvRxRy16, SravRxRy16, SrlvRxRy16,
         XorRxRxRy16]
      = [(rx, rx')]
  alignedPairs i ([_, _], [_])
    | i `elem`
        [AdduRxRyRz16, MultRxRyRz16, MultuRxRyRz16, SltuRxRyRz16,
         SubuRxRyRz16]
      = []
  alignedPairs i ([_, _, _], [])
    | i `elem`
        [BteqzT8CmpX16, BteqzT8SltX16, BteqzT8SltuX16, BtnezT8CmpX16,
         BtnezT8SltX16, BtnezT8SltuX16, SwRxSpImmX16]
      = []
  alignedPairs i ([rx_], [rx_'])
    | i `elem` [SebRx16, SehRx16] = [(rx_, rx_')]
  alignedPairs i ([rx_, _], [rx_'])
    | i `elem` [AddiuRxRxImm16, AddiuRxRxImmX16] = [(rx_, rx_')]
  alignedPairs i ([_], [_]) | i `elem` [NegRxRy16, NotRxRy16] = []
  alignedPairs i ([_, _, _, _], [])
    | i `elem` [SbRxRyOffMemX16, ShRxRyOffMemX16, SwRxRyOffMemX16] = []
  alignedPairs i ([_, _], [_]) | i `elem` [LwRxSpImmX16] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [SllX16, SraX16, SrlX16] = []
  alignedPairs i ([_], [_]) | i `elem` [Move32R16] = []
  alignedPairs i ([_], [_])
    | i `elem` [LDI_B, LDI_D, LDI_H, LDI_W] = []
  alignedPairs i ([_, acin], [acin'])
    | i `elem` [SHILO, SHILO_MM] = [(acin, acin')]
  alignedPairs i ([_, _], [])
    | i `elem` [MIPSeh_return32, MIPSeh_return64] = []
  alignedPairs i ([_], [_])
    | i `elem`
        [COPY, LBu_fi_demat_fi, LBu_fi_remat_fi, LDC1_fi_demat_fi,
         LDC1_fi_remat_fi, LEA_ADDiu_demat, LEA_ADDiu_remat, LUi_demat,
         LUi_remat, LWC1_fi_demat_fi, LWC1_fi_remat_fi, LW_fi_demat_fi,
         LW_fi_remat_fi]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem` [ExtractElementF64, ExtractElementF64_64] = []
  alignedPairs i ([_, _], [_]) | i `elem` [COPY_TO_REGCLASS] = []
  alignedPairs i ([src, _], [src'])
    | i `elem` [INSV, INSV_MM] = [(src, src')]
  alignedPairs i ([_, _, _], [_])
    | i `elem` [LONG_BRANCH_ADDiu, LONG_BRANCH_DADDiu] = []
  alignedPairs i ([_], []) | i `elem` [SYNC, SYNC_MM, SYNC_MMR6] = []
  alignedPairs i ([_, _], [_]) | i `elem` [EXTRACT_SUBREG] = []
  alignedPairs i ([supersrc, _, _], [supersrc'])
    | i `elem` [INSERT_SUBREG] = [(supersrc, supersrc')]
  alignedPairs i ([_, _], [_]) | i `elem` [REG_SEQUENCE] = []
  alignedPairs i ([_, _], []) | i `elem` [LOCAL_ESCAPE] = []
  alignedPairs i ([_], [])
    | i `elem` [J, JAL, JALS_MM, JALX, JALX_MM, JAL_MM, J_MM, TAILCALL]
      = []
  alignedPairs i ([_, _], [_]) | i `elem` [LONG_BRANCH_LUi] = []
  alignedPairs i ([_], [])
    | i `elem`
        [BUNDLE, DBG_VALUE, INLINEASM, KILL, PHI, Restore16, RestoreX16,
         STATEPOINT, Save16, SaveX16]
      = []
  alignedPairs i ([_], [_]) | i `elem` [FAULTING_LOAD_OP] = []
  alignedPairs i ([_, _, _], [])
    | i `elem` [ST_B, ST_D, ST_H, ST_W] = []
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem`
        [INSERT_B_VIDX64_PSEUDO, INSERT_B_VIDX_PSEUDO,
         INSERT_D_VIDX64_PSEUDO, INSERT_D_VIDX_PSEUDO, INSERT_FD_PSEUDO,
         INSERT_FD_VIDX64_PSEUDO, INSERT_FD_VIDX_PSEUDO, INSERT_FW_PSEUDO,
         INSERT_FW_VIDX64_PSEUDO, INSERT_FW_VIDX_PSEUDO,
         INSERT_H_VIDX64_PSEUDO, INSERT_H_VIDX_PSEUDO,
         INSERT_W_VIDX64_PSEUDO, INSERT_W_VIDX_PSEUDO]
      = [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _, _], [wd_in'])
    | i `elem` [INSVE_B, INSVE_D, INSVE_H, INSVE_W] = [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem` [INSERT_B, INSERT_D, INSERT_H, INSERT_W] =
      [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem`
        [BINSLI_B, BINSLI_D, BINSLI_H, BINSLI_W, BINSRI_B, BINSRI_D,
         BINSRI_H, BINSRI_W]
      = [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem` [SLDI_B, SLDI_D, SLDI_H, SLDI_W] = [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem` [SLD_B, SLD_D, SLD_H, SLD_W] = [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem` [BMNZI_B, BMZI_B, BSELI_B] = [(wd_in, wd_in')]
  alignedPairs i ([wd_in, _, _], [wd_in'])
    | i `elem`
        [BINSL_B, BINSL_D, BINSL_H, BINSL_W, BINSR_B, BINSR_D, BINSR_H,
         BINSR_W, BMNZ_V, BMZ_V, BSEL_D_PSEUDO, BSEL_FD_PSEUDO,
         BSEL_FW_PSEUDO, BSEL_H_PSEUDO, BSEL_V, BSEL_W_PSEUDO, DPADD_S_D,
         DPADD_S_H, DPADD_S_W, DPADD_U_D, DPADD_U_H, DPADD_U_W, DPSUB_S_D,
         DPSUB_S_H, DPSUB_S_W, DPSUB_U_D, DPSUB_U_H, DPSUB_U_W, FMADD_D,
         FMADD_W, FMSUB_D, FMSUB_W, MADDR_Q_H, MADDR_Q_W, MADDV_B, MADDV_D,
         MADDV_H, MADDV_W, MADD_Q_H, MADD_Q_W, MSUBR_Q_H, MSUBR_Q_W,
         MSUBV_B, MSUBV_D, MSUBV_H, MSUBV_W, MSUB_Q_H, MSUB_Q_W, VSHF_B,
         VSHF_D, VSHF_H, VSHF_W]
      = [(wd_in, wd_in')]
  alignedPairs i ([_], [_])
    | i `elem`
        [SNZ_B_PSEUDO, SNZ_D_PSEUDO, SNZ_H_PSEUDO, SNZ_V_PSEUDO,
         SNZ_W_PSEUDO, SZ_B_PSEUDO, SZ_D_PSEUDO, SZ_H_PSEUDO, SZ_V_PSEUDO,
         SZ_W_PSEUDO]
      = []
  alignedPairs i ([_], [_])
    | i `elem`
        [FABS_D, FABS_W, FCLASS_D, FCLASS_W, FEXP2_D_1_PSEUDO,
         FEXP2_W_1_PSEUDO, FEXUPL_D, FEXUPL_W, FEXUPR_D, FEXUPR_W,
         FFINT_S_D, FFINT_S_W, FFINT_U_D, FFINT_U_W, FFQL_D, FFQL_W, FFQR_D,
         FFQR_W, FLOG2_D, FLOG2_W, FRCP_D, FRCP_W, FRINT_D, FRINT_W,
         FRSQRT_D, FRSQRT_W, FSQRT_D, FSQRT_W, FTINT_S_D, FTINT_S_W,
         FTINT_U_D, FTINT_U_W, FTRUNC_S_D, FTRUNC_S_W, FTRUNC_U_D,
         FTRUNC_U_W, MOVE_V, NLOC_B, NLOC_D, NLOC_H, NLOC_W, NLZC_B, NLZC_D,
         NLZC_H, NLZC_W, PCNT_B, PCNT_D, PCNT_H, PCNT_W]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [ADDVI_B, ADDVI_D, ADDVI_H, ADDVI_W, CEQI_B, CEQI_D, CEQI_H,
         CEQI_W, CLEI_S_B, CLEI_S_D, CLEI_S_H, CLEI_S_W, CLEI_U_B, CLEI_U_D,
         CLEI_U_H, CLEI_U_W, CLTI_S_B, CLTI_S_D, CLTI_S_H, CLTI_S_W,
         CLTI_U_B, CLTI_U_D, CLTI_U_H, CLTI_U_W, MAXI_S_B, MAXI_S_D,
         MAXI_S_H, MAXI_S_W, MAXI_U_B, MAXI_U_D, MAXI_U_H, MAXI_U_W,
         MINI_S_B, MINI_S_D, MINI_S_H, MINI_S_W, MINI_U_B, MINI_U_D,
         MINI_U_H, MINI_U_W, SUBVI_B, SUBVI_D, SUBVI_H, SUBVI_W]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [BCLRI_B, BCLRI_D, BCLRI_H, BCLRI_W, BNEGI_B, BNEGI_D, BNEGI_H,
         BNEGI_W, BSETI_B, BSETI_D, BSETI_H, BSETI_W, SAT_S_B, SAT_S_D,
         SAT_S_H, SAT_S_W, SAT_U_B, SAT_U_D, SAT_U_H, SAT_U_W, SLLI_B,
         SLLI_D, SLLI_H, SLLI_W, SRAI_B, SRAI_D, SRAI_H, SRAI_W, SRARI_B,
         SRARI_D, SRARI_H, SRARI_W, SRLI_B, SRLI_D, SRLI_H, SRLI_W, SRLRI_B,
         SRLRI_D, SRLRI_H, SRLRI_W]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [COPY_S_B, COPY_S_D, COPY_S_H, COPY_S_W, COPY_U_B, COPY_U_H,
         COPY_U_W]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [COPY_FD_PSEUDO, COPY_FW_PSEUDO, SPLATI_B, SPLATI_D, SPLATI_H,
         SPLATI_W]
      = []
  alignedPairs i ([_, _], [_])
    | i `elem` [SPLAT_B, SPLAT_D, SPLAT_H, SPLAT_W] = []
  alignedPairs i ([_, _], [_])
    | i `elem` [ANDI_B, NORI_B, ORI_B, SHF_B, SHF_H, SHF_W, XORI_B] =
      []
  alignedPairs i ([_, _], [_])
    | i `elem`
        [ADDS_A_B, ADDS_A_D, ADDS_A_H, ADDS_A_W, ADDS_S_B, ADDS_S_D,
         ADDS_S_H, ADDS_S_W, ADDS_U_B, ADDS_U_D, ADDS_U_H, ADDS_U_W, ADDV_B,
         ADDV_D, ADDV_H, ADDV_W, ADD_A_B, ADD_A_D, ADD_A_H, ADD_A_W, AND_V,
         AND_V_D_PSEUDO, AND_V_H_PSEUDO, AND_V_W_PSEUDO, ASUB_S_B, ASUB_S_D,
         ASUB_S_H, ASUB_S_W, ASUB_U_B, ASUB_U_D, ASUB_U_H, ASUB_U_W,
         AVER_S_B, AVER_S_D, AVER_S_H, AVER_S_W, AVER_U_B, AVER_U_D,
         AVER_U_H, AVER_U_W, AVE_S_B, AVE_S_D, AVE_S_H, AVE_S_W, AVE_U_B,
         AVE_U_D, AVE_U_H, AVE_U_W, BCLR_B, BCLR_D, BCLR_H, BCLR_W, BNEG_B,
         BNEG_D, BNEG_H, BNEG_W, BSET_B, BSET_D, BSET_H, BSET_W, CEQ_B,
         CEQ_D, CEQ_H, CEQ_W, CLE_S_B, CLE_S_D, CLE_S_H, CLE_S_W, CLE_U_B,
         CLE_U_D, CLE_U_H, CLE_U_W, CLT_S_B, CLT_S_D, CLT_S_H, CLT_S_W,
         CLT_U_B, CLT_U_D, CLT_U_H, CLT_U_W, DIV_S_B, DIV_S_D, DIV_S_H,
         DIV_S_W, DIV_U_B, DIV_U_D, DIV_U_H, DIV_U_W, DOTP_S_D, DOTP_S_H,
         DOTP_S_W, DOTP_U_D, DOTP_U_H, DOTP_U_W, FADD_D, FADD_W, FCAF_D,
         FCAF_W, FCEQ_D, FCEQ_W, FCLE_D, FCLE_W, FCLT_D, FCLT_W, FCNE_D,
         FCNE_W, FCOR_D, FCOR_W, FCUEQ_D, FCUEQ_W, FCULE_D, FCULE_W,
         FCULT_D, FCULT_W, FCUNE_D, FCUNE_W, FCUN_D, FCUN_W, FDIV_D, FDIV_W,
         FEXDO_H, FEXDO_W, FEXP2_D, FEXP2_W, FMAX_A_D, FMAX_A_W, FMAX_D,
         FMAX_W, FMIN_A_D, FMIN_A_W, FMIN_D, FMIN_W, FMUL_D, FMUL_W, FSAF_D,
         FSAF_W, FSEQ_D, FSEQ_W, FSLE_D, FSLE_W, FSLT_D, FSLT_W, FSNE_D,
         FSNE_W, FSOR_D, FSOR_W, FSUB_D, FSUB_W, FSUEQ_D, FSUEQ_W, FSULE_D,
         FSULE_W, FSULT_D, FSULT_W, FSUNE_D, FSUNE_W, FSUN_D, FSUN_W, FTQ_H,
         FTQ_W, HADD_S_D, HADD_S_H, HADD_S_W, HADD_U_D, HADD_U_H, HADD_U_W,
         HSUB_S_D, HSUB_S_H, HSUB_S_W, HSUB_U_D, HSUB_U_H, HSUB_U_W,
         ILVEV_B, ILVEV_D, ILVEV_H, ILVEV_W, ILVL_B, ILVL_D, ILVL_H, ILVL_W,
         ILVOD_B, ILVOD_D, ILVOD_H, ILVOD_W, ILVR_B, ILVR_D, ILVR_H, ILVR_W,
         MAX_A_B, MAX_A_D, MAX_A_H, MAX_A_W, MAX_S_B, MAX_S_D, MAX_S_H,
         MAX_S_W, MAX_U_B, MAX_U_D, MAX_U_H, MAX_U_W, MIN_A_B, MIN_A_D,
         MIN_A_H, MIN_A_W, MIN_S_B, MIN_S_D, MIN_S_H, MIN_S_W, MIN_U_B,
         MIN_U_D, MIN_U_H, MIN_U_W, MOD_S_B, MOD_S_D, MOD_S_H, MOD_S_W,
         MOD_U_B, MOD_U_D, MOD_U_H, MOD_U_W, MULR_Q_H, MULR_Q_W, MULV_B,
         MULV_D, MULV_H, MULV_W, MUL_Q_H, MUL_Q_W, NOR_V, NOR_V_D_PSEUDO,
         NOR_V_H_PSEUDO, NOR_V_W_PSEUDO, OR_V, OR_V_D_PSEUDO, OR_V_H_PSEUDO,
         OR_V_W_PSEUDO, PCKEV_B, PCKEV_D, PCKEV_H, PCKEV_W, PCKOD_B,
         PCKOD_D, PCKOD_H, PCKOD_W, SLL_B, SLL_D, SLL_H, SLL_W, SRAR_B,
         SRAR_D, SRAR_H, SRAR_W, SRA_B, SRA_D, SRA_H, SRA_W, SRLR_B, SRLR_D,
         SRLR_H, SRLR_W, SRL_B, SRL_D, SRL_H, SRL_W, SUBSUS_U_B, SUBSUS_U_D,
         SUBSUS_U_H, SUBSUS_U_W, SUBSUU_S_B, SUBSUU_S_D, SUBSUU_S_H,
         SUBSUU_S_W, SUBS_S_B, SUBS_S_D, SUBS_S_H, SUBS_S_W, SUBS_U_B,
         SUBS_U_D, SUBS_U_H, SUBS_U_W, SUBV_B, SUBV_D, SUBV_H, SUBV_W,
         XOR_V, XOR_V_D_PSEUDO, XOR_V_H_PSEUDO, XOR_V_W_PSEUDO]
      = []
  alignedPairs i ([_, _], [])
    | i `elem`
        [BNZ_B, BNZ_D, BNZ_H, BNZ_V, BNZ_W, BZ_B, BZ_D, BZ_H, BZ_V, BZ_W]
      = []
  alignedPairs _ _ = []
  
  