Lines Matching refs:Insn

282 static DecodeStatus DecodeBitfieldMaskOperand(MCInst &Inst, unsigned Insn,
285 static DecodeStatus DecodeCopMemInstruction(MCInst &Inst, unsigned Insn,
289 DecodeAddrMode2IdxInstruction(MCInst &Inst, unsigned Insn, uint64_t Address,
291 static DecodeStatus DecodeSORegMemOperand(MCInst &Inst, unsigned Insn,
294 static DecodeStatus DecodeAddrMode3Instruction(MCInst &Inst, unsigned Insn,
297 static DecodeStatus DecodeTSBInstruction(MCInst &Inst, unsigned Insn,
300 static DecodeStatus DecodeSORegImmOperand(MCInst &Inst, unsigned Insn,
303 static DecodeStatus DecodeSORegRegOperand(MCInst &Inst, unsigned Insn,
308 DecodeMemMultipleWritebackInstruction(MCInst &Inst, unsigned Insn,
311 static DecodeStatus DecodeT2MOVTWInstruction(MCInst &Inst, unsigned Insn,
314 static DecodeStatus DecodeArmMOVTWInstruction(MCInst &Inst, unsigned Insn,
317 static DecodeStatus DecodeSMLAInstruction(MCInst &Inst, unsigned Insn,
320 static DecodeStatus DecodeHINTInstruction(MCInst &Inst, unsigned Insn,
323 static DecodeStatus DecodeCPSInstruction(MCInst &Inst, unsigned Insn,
326 static DecodeStatus DecodeTSTInstruction(MCInst &Inst, unsigned Insn,
329 static DecodeStatus DecodeSETPANInstruction(MCInst &Inst, unsigned Insn,
332 static DecodeStatus DecodeT2CPSInstruction(MCInst &Inst, unsigned Insn,
335 static DecodeStatus DecodeT2HintSpaceInstruction(MCInst &Inst, unsigned Insn,
350 static DecodeStatus DecodeT2BInstruction(MCInst &Inst, unsigned Insn,
353 static DecodeStatus DecodeBranchImmInstruction(MCInst &Inst, unsigned Insn,
395 static DecodeStatus DecodeMVEVADCInstruction(MCInst &Inst, unsigned Insn,
413 static DecodeStatus DecodeTBLInstruction(MCInst &Inst, unsigned Insn,
416 static DecodeStatus DecodePostIdxReg(MCInst &Inst, unsigned Insn,
419 static DecodeStatus DecodeMveAddrModeRQ(MCInst &Inst, unsigned Insn,
423 static DecodeStatus DecodeMveAddrModeQ(MCInst &Inst, unsigned Insn,
426 static DecodeStatus DecodeCoprocessor(MCInst &Inst, unsigned Insn,
429 static DecodeStatus DecodeMemBarrierOption(MCInst &Inst, unsigned Insn,
432 static DecodeStatus DecodeInstSyncBarrierOption(MCInst &Inst, unsigned Insn,
435 static DecodeStatus DecodeMSRMask(MCInst &Inst, unsigned Insn, uint64_t Address,
437 static DecodeStatus DecodeBankedReg(MCInst &Inst, unsigned Insn,
440 static DecodeStatus DecodeDoubleRegLoad(MCInst &Inst, unsigned Insn,
443 static DecodeStatus DecodeDoubleRegStore(MCInst &Inst, unsigned Insn,
446 static DecodeStatus DecodeLDRPreImm(MCInst &Inst, unsigned Insn,
449 static DecodeStatus DecodeLDRPreReg(MCInst &Inst, unsigned Insn,
452 static DecodeStatus DecodeSTRPreImm(MCInst &Inst, unsigned Insn,
455 static DecodeStatus DecodeSTRPreReg(MCInst &Inst, unsigned Insn,
458 static DecodeStatus DecodeVLD1LN(MCInst &Inst, unsigned Insn, uint64_t Address,
460 static DecodeStatus DecodeVLD2LN(MCInst &Inst, unsigned Insn, uint64_t Address,
462 static DecodeStatus DecodeVLD3LN(MCInst &Inst, unsigned Insn, uint64_t Address,
464 static DecodeStatus DecodeVLD4LN(MCInst &Inst, unsigned Insn, uint64_t Address,
466 static DecodeStatus DecodeVST1LN(MCInst &Inst, unsigned Insn, uint64_t Address,
468 static DecodeStatus DecodeVST2LN(MCInst &Inst, unsigned Insn, uint64_t Address,
470 static DecodeStatus DecodeVST3LN(MCInst &Inst, unsigned Insn, uint64_t Address,
472 static DecodeStatus DecodeVST4LN(MCInst &Inst, unsigned Insn, uint64_t Address,
474 static DecodeStatus DecodeVMOVSRR(MCInst &Inst, unsigned Insn, uint64_t Address,
476 static DecodeStatus DecodeVMOVRRS(MCInst &Inst, unsigned Insn, uint64_t Address,
478 static DecodeStatus DecodeSwap(MCInst &Inst, unsigned Insn, uint64_t Address,
480 static DecodeStatus DecodeVCVTD(MCInst &Inst, unsigned Insn, uint64_t Address,
482 static DecodeStatus DecodeVCVTQ(MCInst &Inst, unsigned Insn, uint64_t Address,
484 static DecodeStatus DecodeVCVTImmOperand(MCInst &Inst, unsigned Insn,
491 static DecodeStatus DecodeThumbAddSpecialReg(MCInst &Inst, uint16_t Insn,
521 static DecodeStatus DecodeT2LoadImm8(MCInst &Inst, unsigned Insn,
524 static DecodeStatus DecodeT2LoadImm12(MCInst &Inst, unsigned Insn,
527 static DecodeStatus DecodeT2LoadT(MCInst &Inst, unsigned Insn, uint64_t Address,
529 static DecodeStatus DecodeT2LoadLabel(MCInst &Inst, unsigned Insn,
564 static DecodeStatus DecodeThumbAddSPReg(MCInst &Inst, uint16_t Insn,
567 static DecodeStatus DecodeThumbCPS(MCInst &Inst, uint16_t Insn,
570 static DecodeStatus DecodeQADDInstruction(MCInst &Inst, unsigned Insn,
573 static DecodeStatus DecodeThumbBLXOffset(MCInst &Inst, unsigned Insn,
595 static DecodeStatus DecodeT2LDRDPreInstruction(MCInst &Inst, unsigned Insn,
598 static DecodeStatus DecodeT2STRDPreInstruction(MCInst &Inst, unsigned Insn,
629 static DecodeStatus DecodeLOLoop(MCInst &Inst, unsigned Insn, uint64_t Address,
634 static DecodeStatus DecodeVSCCLRM(MCInst &Inst, unsigned Insn, uint64_t Address,
655 static DecodeStatus DecodeVSTRVLDR_SYSREG(MCInst &Inst, unsigned Insn,
678 static DecodeStatus DecodeMVEVMOVQtoDReg(MCInst &Inst, unsigned Insn,
681 static DecodeStatus DecodeMVEVMOVDRegtoQ(MCInst &Inst, unsigned Insn,
684 static DecodeStatus DecodeMVEVCVTt1fp(MCInst &Inst, unsigned Insn,
691 static DecodeStatus DecodeMVEVCMP(MCInst &Inst, unsigned Insn, uint64_t Address,
693 static DecodeStatus DecodeMveVCTP(MCInst &Inst, unsigned Insn, uint64_t Address,
695 static DecodeStatus DecodeMVEVPNOT(MCInst &Inst, unsigned Insn,
699 DecodeMVEOverlappingLongShift(MCInst &Inst, unsigned Insn, uint64_t Address,
701 static DecodeStatus DecodeT2AddSubSPImm(MCInst &Inst, unsigned Insn,
716 uint32_t Insn, in checkDecodedInstruction() argument
722 uint32_t Cond = (Insn >> 28) & 0xF; in checkDecodedInstruction()
798 uint32_t Insn = in getARMInstruction() local
803 decodeInstruction(DecoderTableARM32, MI, Insn, Address, this, STI); in getARMInstruction()
806 return checkDecodedInstruction(MI, Size, Address, CS, Insn, Result); in getARMInstruction()
822 Result = decodeInstruction(Table.P, MI, Insn, Address, this, STI); in getARMInstruction()
834 decodeInstruction(DecoderTableCoProc32, MI, Insn, Address, this, STI); in getARMInstruction()
837 return checkDecodedInstruction(MI, Size, Address, CS, Insn, Result); in getARMInstruction()
1861 static DecodeStatus DecodeCopMemInstruction(MCInst &Inst, unsigned Insn, in DecodeCopMemInstruction() argument
1866 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeCopMemInstruction()
1867 unsigned CRd = fieldFromInstruction(Insn, 12, 4); in DecodeCopMemInstruction()
1868 unsigned coproc = fieldFromInstruction(Insn, 8, 4); in DecodeCopMemInstruction()
1869 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeCopMemInstruction()
1870 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeCopMemInstruction()
1871 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeCopMemInstruction()
2041 DecodeAddrMode2IdxInstruction(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeAddrMode2IdxInstruction() argument
2045 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeAddrMode2IdxInstruction()
2046 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeAddrMode2IdxInstruction()
2047 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeAddrMode2IdxInstruction()
2048 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeAddrMode2IdxInstruction()
2049 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeAddrMode2IdxInstruction()
2050 unsigned reg = fieldFromInstruction(Insn, 25, 1); in DecodeAddrMode2IdxInstruction()
2051 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeAddrMode2IdxInstruction()
2052 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeAddrMode2IdxInstruction()
2095 if (!fieldFromInstruction(Insn, 23, 1)) in DecodeAddrMode2IdxInstruction()
2112 switch( fieldFromInstruction(Insn, 5, 2)) { in DecodeAddrMode2IdxInstruction()
2128 unsigned amt = fieldFromInstruction(Insn, 7, 5); in DecodeAddrMode2IdxInstruction()
2190 static DecodeStatus DecodeTSBInstruction(MCInst &Inst, unsigned Insn, in DecodeTSBInstruction() argument
2203 static DecodeStatus DecodeAddrMode3Instruction(MCInst &Inst, unsigned Insn, in DecodeAddrMode3Instruction() argument
2208 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeAddrMode3Instruction()
2209 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeAddrMode3Instruction()
2210 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeAddrMode3Instruction()
2211 unsigned type = fieldFromInstruction(Insn, 22, 1); in DecodeAddrMode3Instruction()
2212 unsigned imm = fieldFromInstruction(Insn, 8, 4); in DecodeAddrMode3Instruction()
2213 unsigned U = ((~fieldFromInstruction(Insn, 23, 1)) & 1) << 8; in DecodeAddrMode3Instruction()
2214 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeAddrMode3Instruction()
2215 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeAddrMode3Instruction()
2216 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeAddrMode3Instruction()
2247 if (!type && fieldFromInstruction(Insn, 8, 4)) in DecodeAddrMode3Instruction()
2395 static DecodeStatus DecodeRFEInstruction(MCInst &Inst, unsigned Insn, in DecodeRFEInstruction() argument
2400 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeRFEInstruction()
2401 unsigned mode = fieldFromInstruction(Insn, 23, 2); in DecodeRFEInstruction()
2425 static DecodeStatus DecodeQADDInstruction(MCInst &Inst, unsigned Insn, in DecodeQADDInstruction() argument
2430 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeQADDInstruction()
2431 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeQADDInstruction()
2432 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeQADDInstruction()
2433 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeQADDInstruction()
2436 return DecodeCPSInstruction(Inst, Insn, Address, Decoder); in DecodeQADDInstruction()
2450 DecodeMemMultipleWritebackInstruction(MCInst &Inst, unsigned Insn, in DecodeMemMultipleWritebackInstruction() argument
2455 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeMemMultipleWritebackInstruction()
2456 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeMemMultipleWritebackInstruction()
2457 unsigned reglist = fieldFromInstruction(Insn, 0, 16); in DecodeMemMultipleWritebackInstruction()
2515 if (fieldFromInstruction(Insn, 20, 1) == 0) { in DecodeMemMultipleWritebackInstruction()
2517 if (!(fieldFromInstruction(Insn, 22, 1) == 1 && in DecodeMemMultipleWritebackInstruction()
2518 fieldFromInstruction(Insn, 20, 1) == 0)) in DecodeMemMultipleWritebackInstruction()
2522 MCOperand::createImm(fieldFromInstruction(Insn, 0, 4))); in DecodeMemMultipleWritebackInstruction()
2526 return DecodeRFEInstruction(Inst, Insn, Address, Decoder); in DecodeMemMultipleWritebackInstruction()
2542 static DecodeStatus DecodeHINTInstruction(MCInst &Inst, unsigned Insn, in DecodeHINTInstruction() argument
2545 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeHINTInstruction()
2546 unsigned imm8 = fieldFromInstruction(Insn, 0, 8); in DecodeHINTInstruction()
2565 static DecodeStatus DecodeCPSInstruction(MCInst &Inst, unsigned Insn, in DecodeCPSInstruction() argument
2568 unsigned imod = fieldFromInstruction(Insn, 18, 2); in DecodeCPSInstruction()
2569 unsigned M = fieldFromInstruction(Insn, 17, 1); in DecodeCPSInstruction()
2570 unsigned iflags = fieldFromInstruction(Insn, 6, 3); in DecodeCPSInstruction()
2571 unsigned mode = fieldFromInstruction(Insn, 0, 5); in DecodeCPSInstruction()
2577 if (fieldFromInstruction(Insn, 5, 1) != 0 || in DecodeCPSInstruction()
2578 fieldFromInstruction(Insn, 16, 1) != 0 || in DecodeCPSInstruction()
2579 fieldFromInstruction(Insn, 20, 8) != 0x10) in DecodeCPSInstruction()
2613 static DecodeStatus DecodeT2CPSInstruction(MCInst &Inst, unsigned Insn, in DecodeT2CPSInstruction() argument
2616 unsigned imod = fieldFromInstruction(Insn, 9, 2); in DecodeT2CPSInstruction()
2617 unsigned M = fieldFromInstruction(Insn, 8, 1); in DecodeT2CPSInstruction()
2618 unsigned iflags = fieldFromInstruction(Insn, 5, 3); in DecodeT2CPSInstruction()
2619 unsigned mode = fieldFromInstruction(Insn, 0, 5); in DecodeT2CPSInstruction()
2646 int imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2CPSInstruction()
2657 DecodeT2HintSpaceInstruction(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeT2HintSpaceInstruction() argument
2659 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2HintSpaceInstruction()
2681 static DecodeStatus DecodeT2MOVTWInstruction(MCInst &Inst, unsigned Insn, in DecodeT2MOVTWInstruction() argument
2686 unsigned Rd = fieldFromInstruction(Insn, 8, 4); in DecodeT2MOVTWInstruction()
2689 imm |= (fieldFromInstruction(Insn, 0, 8) << 0); in DecodeT2MOVTWInstruction()
2690 imm |= (fieldFromInstruction(Insn, 12, 3) << 8); in DecodeT2MOVTWInstruction()
2691 imm |= (fieldFromInstruction(Insn, 16, 4) << 12); in DecodeT2MOVTWInstruction()
2692 imm |= (fieldFromInstruction(Insn, 26, 1) << 11); in DecodeT2MOVTWInstruction()
2706 static DecodeStatus DecodeArmMOVTWInstruction(MCInst &Inst, unsigned Insn, in DecodeArmMOVTWInstruction() argument
2711 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeArmMOVTWInstruction()
2712 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeArmMOVTWInstruction()
2715 imm |= (fieldFromInstruction(Insn, 0, 12) << 0); in DecodeArmMOVTWInstruction()
2716 imm |= (fieldFromInstruction(Insn, 16, 4) << 12); in DecodeArmMOVTWInstruction()
2734 static DecodeStatus DecodeSMLAInstruction(MCInst &Inst, unsigned Insn, in DecodeSMLAInstruction() argument
2739 unsigned Rd = fieldFromInstruction(Insn, 16, 4); in DecodeSMLAInstruction()
2740 unsigned Rn = fieldFromInstruction(Insn, 0, 4); in DecodeSMLAInstruction()
2741 unsigned Rm = fieldFromInstruction(Insn, 8, 4); in DecodeSMLAInstruction()
2742 unsigned Ra = fieldFromInstruction(Insn, 12, 4); in DecodeSMLAInstruction()
2743 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSMLAInstruction()
2746 return DecodeCPSInstruction(Inst, Insn, Address, Decoder); in DecodeSMLAInstruction()
2763 static DecodeStatus DecodeTSTInstruction(MCInst &Inst, unsigned Insn, in DecodeTSTInstruction() argument
2768 unsigned Pred = fieldFromInstruction(Insn, 28, 4); in DecodeTSTInstruction()
2769 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeTSTInstruction()
2770 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeTSTInstruction()
2773 return DecodeSETPANInstruction(Inst, Insn, Address, Decoder); in DecodeTSTInstruction()
2785 static DecodeStatus DecodeSETPANInstruction(MCInst &Inst, unsigned Insn, in DecodeSETPANInstruction() argument
2790 unsigned Imm = fieldFromInstruction(Insn, 9, 1); in DecodeSETPANInstruction()
2801 if (fieldFromInstruction(Insn, 20,12) != 0xf11 || in DecodeSETPANInstruction()
2802 fieldFromInstruction(Insn, 4,4) != 0) in DecodeSETPANInstruction()
2804 if (fieldFromInstruction(Insn, 10,10) != 0 || in DecodeSETPANInstruction()
2805 fieldFromInstruction(Insn, 0,4) != 0) in DecodeSETPANInstruction()
2883 static DecodeStatus DecodeT2BInstruction(MCInst &Inst, unsigned Insn, in DecodeT2BInstruction() argument
2894 unsigned S = fieldFromInstruction(Insn, 26, 1); in DecodeT2BInstruction()
2895 unsigned J1 = fieldFromInstruction(Insn, 13, 1); in DecodeT2BInstruction()
2896 unsigned J2 = fieldFromInstruction(Insn, 11, 1); in DecodeT2BInstruction()
2899 unsigned imm10 = fieldFromInstruction(Insn, 16, 10); in DecodeT2BInstruction()
2900 unsigned imm11 = fieldFromInstruction(Insn, 0, 11); in DecodeT2BInstruction()
2910 static DecodeStatus DecodeBranchImmInstruction(MCInst &Inst, unsigned Insn, in DecodeBranchImmInstruction() argument
2915 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeBranchImmInstruction()
2916 unsigned imm = fieldFromInstruction(Insn, 0, 24) << 2; in DecodeBranchImmInstruction()
2920 imm |= fieldFromInstruction(Insn, 24, 1) << 1; in DecodeBranchImmInstruction()
2958 static DecodeStatus DecodeVLDInstruction(MCInst &Inst, unsigned Insn, in DecodeVLDInstruction() argument
2963 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLDInstruction()
2964 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLDInstruction()
2965 unsigned wb = fieldFromInstruction(Insn, 16, 4); in DecodeVLDInstruction()
2966 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLDInstruction()
2967 Rn |= fieldFromInstruction(Insn, 4, 2) << 4; in DecodeVLDInstruction()
2968 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLDInstruction()
3235 static DecodeStatus DecodeVLDST1Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST1Instruction() argument
3238 unsigned type = fieldFromInstruction(Insn, 8, 4); in DecodeVLDST1Instruction()
3239 unsigned align = fieldFromInstruction(Insn, 4, 2); in DecodeVLDST1Instruction()
3244 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST1Instruction()
3245 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST1Instruction()
3246 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST1Instruction()
3249 static DecodeStatus DecodeVLDST2Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST2Instruction() argument
3252 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLDST2Instruction()
3255 unsigned type = fieldFromInstruction(Insn, 8, 4); in DecodeVLDST2Instruction()
3256 unsigned align = fieldFromInstruction(Insn, 4, 2); in DecodeVLDST2Instruction()
3260 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST2Instruction()
3261 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST2Instruction()
3262 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST2Instruction()
3265 static DecodeStatus DecodeVLDST3Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST3Instruction() argument
3268 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLDST3Instruction()
3271 unsigned align = fieldFromInstruction(Insn, 4, 2); in DecodeVLDST3Instruction()
3274 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST3Instruction()
3275 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST3Instruction()
3276 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST3Instruction()
3279 static DecodeStatus DecodeVLDST4Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST4Instruction() argument
3282 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLDST4Instruction()
3285 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST4Instruction()
3286 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST4Instruction()
3287 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST4Instruction()
3290 static DecodeStatus DecodeVSTInstruction(MCInst &Inst, unsigned Insn, in DecodeVSTInstruction() argument
3295 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVSTInstruction()
3296 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVSTInstruction()
3297 unsigned wb = fieldFromInstruction(Insn, 16, 4); in DecodeVSTInstruction()
3298 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVSTInstruction()
3299 Rn |= fieldFromInstruction(Insn, 4, 2) << 4; in DecodeVSTInstruction()
3300 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVSTInstruction()
3561 static DecodeStatus DecodeVLD1DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD1DupInstruction() argument
3566 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD1DupInstruction()
3567 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD1DupInstruction()
3568 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD1DupInstruction()
3569 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD1DupInstruction()
3570 unsigned align = fieldFromInstruction(Insn, 4, 1); in DecodeVLD1DupInstruction()
3571 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLD1DupInstruction()
3609 static DecodeStatus DecodeVLD2DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD2DupInstruction() argument
3614 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD2DupInstruction()
3615 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD2DupInstruction()
3616 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD2DupInstruction()
3617 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD2DupInstruction()
3618 unsigned align = fieldFromInstruction(Insn, 4, 1); in DecodeVLD2DupInstruction()
3619 unsigned size = 1 << fieldFromInstruction(Insn, 6, 2); in DecodeVLD2DupInstruction()
3658 static DecodeStatus DecodeVLD3DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD3DupInstruction() argument
3663 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD3DupInstruction()
3664 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD3DupInstruction()
3665 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD3DupInstruction()
3666 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD3DupInstruction()
3667 unsigned inc = fieldFromInstruction(Insn, 5, 1) + 1; in DecodeVLD3DupInstruction()
3694 static DecodeStatus DecodeVLD4DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD4DupInstruction() argument
3699 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD4DupInstruction()
3700 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD4DupInstruction()
3701 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD4DupInstruction()
3702 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD4DupInstruction()
3703 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLD4DupInstruction()
3704 unsigned inc = fieldFromInstruction(Insn, 5, 1) + 1; in DecodeVLD4DupInstruction()
3705 unsigned align = fieldFromInstruction(Insn, 4, 1); in DecodeVLD4DupInstruction()
3747 static DecodeStatus DecodeVMOVModImmInstruction(MCInst &Inst, unsigned Insn, in DecodeVMOVModImmInstruction() argument
3752 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVMOVModImmInstruction()
3753 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVMOVModImmInstruction()
3754 unsigned imm = fieldFromInstruction(Insn, 0, 4); in DecodeVMOVModImmInstruction()
3755 imm |= fieldFromInstruction(Insn, 16, 3) << 4; in DecodeVMOVModImmInstruction()
3756 imm |= fieldFromInstruction(Insn, 24, 1) << 7; in DecodeVMOVModImmInstruction()
3757 imm |= fieldFromInstruction(Insn, 8, 4) << 8; in DecodeVMOVModImmInstruction()
3758 imm |= fieldFromInstruction(Insn, 5, 1) << 12; in DecodeVMOVModImmInstruction()
3759 unsigned Q = fieldFromInstruction(Insn, 6, 1); in DecodeVMOVModImmInstruction()
3793 static DecodeStatus DecodeMVEModImmInstruction(MCInst &Inst, unsigned Insn, in DecodeMVEModImmInstruction() argument
3798 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEModImmInstruction()
3799 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEModImmInstruction()
3800 unsigned cmode = fieldFromInstruction(Insn, 8, 4); in DecodeMVEModImmInstruction()
3801 unsigned imm = fieldFromInstruction(Insn, 0, 4); in DecodeMVEModImmInstruction()
3802 imm |= fieldFromInstruction(Insn, 16, 3) << 4; in DecodeMVEModImmInstruction()
3803 imm |= fieldFromInstruction(Insn, 28, 1) << 7; in DecodeMVEModImmInstruction()
3805 imm |= fieldFromInstruction(Insn, 5, 1) << 12; in DecodeMVEModImmInstruction()
3822 static DecodeStatus DecodeMVEVADCInstruction(MCInst &Inst, unsigned Insn, in DecodeMVEVADCInstruction() argument
3827 unsigned Qd = fieldFromInstruction(Insn, 13, 3); in DecodeMVEVADCInstruction()
3828 Qd |= fieldFromInstruction(Insn, 22, 1) << 3; in DecodeMVEVADCInstruction()
3833 unsigned Qn = fieldFromInstruction(Insn, 17, 3); in DecodeMVEVADCInstruction()
3834 Qn |= fieldFromInstruction(Insn, 7, 1) << 3; in DecodeMVEVADCInstruction()
3837 unsigned Qm = fieldFromInstruction(Insn, 1, 3); in DecodeMVEVADCInstruction()
3838 Qm |= fieldFromInstruction(Insn, 5, 1) << 3; in DecodeMVEVADCInstruction()
3841 if (!fieldFromInstruction(Insn, 12, 1)) // I bit clear => need input FPSCR in DecodeMVEVADCInstruction()
3848 static DecodeStatus DecodeVSHLMaxInstruction(MCInst &Inst, unsigned Insn, in DecodeVSHLMaxInstruction() argument
3853 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVSHLMaxInstruction()
3854 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVSHLMaxInstruction()
3855 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVSHLMaxInstruction()
3856 Rm |= fieldFromInstruction(Insn, 5, 1) << 4; in DecodeVSHLMaxInstruction()
3857 unsigned size = fieldFromInstruction(Insn, 18, 2); in DecodeVSHLMaxInstruction()
3896 static DecodeStatus DecodeTBLInstruction(MCInst &Inst, unsigned Insn, in DecodeTBLInstruction() argument
3901 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeTBLInstruction()
3902 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeTBLInstruction()
3903 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeTBLInstruction()
3904 Rn |= fieldFromInstruction(Insn, 7, 1) << 4; in DecodeTBLInstruction()
3905 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeTBLInstruction()
3906 Rm |= fieldFromInstruction(Insn, 5, 1) << 4; in DecodeTBLInstruction()
3907 unsigned op = fieldFromInstruction(Insn, 6, 1); in DecodeTBLInstruction()
3933 static DecodeStatus DecodeThumbAddSpecialReg(MCInst &Inst, uint16_t Insn, in DecodeThumbAddSpecialReg() argument
3938 unsigned dst = fieldFromInstruction(Insn, 8, 3); in DecodeThumbAddSpecialReg()
3939 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeThumbAddSpecialReg()
4066 static DecodeStatus DecodeT2LoadShift(MCInst &Inst, unsigned Insn, in DecodeT2LoadShift() argument
4071 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadShift()
4072 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadShift()
4107 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadShift()
4141 unsigned addrmode = fieldFromInstruction(Insn, 4, 2); in DecodeT2LoadShift()
4142 addrmode |= fieldFromInstruction(Insn, 0, 4) << 2; in DecodeT2LoadShift()
4143 addrmode |= fieldFromInstruction(Insn, 16, 4) << 6; in DecodeT2LoadShift()
4150 static DecodeStatus DecodeT2LoadImm8(MCInst &Inst, unsigned Insn, in DecodeT2LoadImm8() argument
4155 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadImm8()
4156 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadImm8()
4157 unsigned U = fieldFromInstruction(Insn, 9, 1); in DecodeT2LoadImm8()
4158 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2LoadImm8()
4161 unsigned add = fieldFromInstruction(Insn, 9, 1); in DecodeT2LoadImm8()
4195 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadImm8()
4235 static DecodeStatus DecodeT2LoadImm12(MCInst &Inst, unsigned Insn, in DecodeT2LoadImm12() argument
4240 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadImm12()
4241 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadImm12()
4242 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeT2LoadImm12()
4277 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadImm12()
4316 static DecodeStatus DecodeT2LoadT(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeT2LoadT() argument
4320 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadT()
4321 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadT()
4322 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2LoadT()
4345 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadT()
4355 static DecodeStatus DecodeT2LoadLabel(MCInst &Inst, unsigned Insn, in DecodeT2LoadLabel() argument
4360 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadLabel()
4361 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeT2LoadLabel()
4362 int imm = fieldFromInstruction(Insn, 0, 12); in DecodeT2LoadLabel()
4596 static DecodeStatus DecodeT2LdStPre(MCInst &Inst, unsigned Insn, in DecodeT2LdStPre() argument
4601 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LdStPre()
4602 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LdStPre()
4603 unsigned addr = fieldFromInstruction(Insn, 0, 8); in DecodeT2LdStPre()
4604 addr |= fieldFromInstruction(Insn, 9, 1) << 8; in DecodeT2LdStPre()
4606 unsigned load = fieldFromInstruction(Insn, 20, 1); in DecodeT2LdStPre()
4636 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LdStPre()
4685 static DecodeStatus DecodeThumbAddSPImm(MCInst &Inst, uint16_t Insn, in DecodeThumbAddSPImm() argument
4688 unsigned imm = fieldFromInstruction(Insn, 0, 7); in DecodeThumbAddSPImm()
4697 static DecodeStatus DecodeThumbAddSPReg(MCInst &Inst, uint16_t Insn, in DecodeThumbAddSPReg() argument
4703 unsigned Rdm = fieldFromInstruction(Insn, 0, 3); in DecodeThumbAddSPReg()
4704 Rdm |= fieldFromInstruction(Insn, 7, 1) << 3; in DecodeThumbAddSPReg()
4712 unsigned Rm = fieldFromInstruction(Insn, 3, 4); in DecodeThumbAddSPReg()
4723 static DecodeStatus DecodeThumbCPS(MCInst &Inst, uint16_t Insn, in DecodeThumbCPS() argument
4726 unsigned imod = fieldFromInstruction(Insn, 4, 1) | 0x2; in DecodeThumbCPS()
4727 unsigned flags = fieldFromInstruction(Insn, 0, 3); in DecodeThumbCPS()
4735 static DecodeStatus DecodePostIdxReg(MCInst &Inst, unsigned Insn, in DecodePostIdxReg() argument
4739 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodePostIdxReg()
4740 unsigned add = fieldFromInstruction(Insn, 4, 1); in DecodePostIdxReg()
4749 static DecodeStatus DecodeMveAddrModeRQ(MCInst &Inst, unsigned Insn, in DecodeMveAddrModeRQ() argument
4753 unsigned Rn = fieldFromInstruction(Insn, 3, 4); in DecodeMveAddrModeRQ()
4754 unsigned Qm = fieldFromInstruction(Insn, 0, 3); in DecodeMveAddrModeRQ()
4765 static DecodeStatus DecodeMveAddrModeQ(MCInst &Inst, unsigned Insn, in DecodeMveAddrModeQ() argument
4769 unsigned Qm = fieldFromInstruction(Insn, 8, 3); in DecodeMveAddrModeQ()
4770 int imm = fieldFromInstruction(Insn, 0, 7); in DecodeMveAddrModeQ()
4775 if(!fieldFromInstruction(Insn, 7, 1)) { in DecodeMveAddrModeQ()
4829 static DecodeStatus DecodeThumbTableBranch(MCInst &Inst, unsigned Insn, in DecodeThumbTableBranch() argument
4836 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeThumbTableBranch()
4837 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeThumbTableBranch()
4847 static DecodeStatus DecodeThumb2BCCInstruction(MCInst &Inst, unsigned Insn, in DecodeThumb2BCCInstruction() argument
4852 unsigned pred = fieldFromInstruction(Insn, 22, 4); in DecodeThumb2BCCInstruction()
4854 unsigned opc = fieldFromInstruction(Insn, 4, 28); in DecodeThumb2BCCInstruction()
4869 unsigned imm = fieldFromInstruction(Insn, 0, 4); in DecodeThumb2BCCInstruction()
4873 unsigned brtarget = fieldFromInstruction(Insn, 0, 11) << 1; in DecodeThumb2BCCInstruction()
4874 brtarget |= fieldFromInstruction(Insn, 11, 1) << 19; in DecodeThumb2BCCInstruction()
4875 brtarget |= fieldFromInstruction(Insn, 13, 1) << 18; in DecodeThumb2BCCInstruction()
4876 brtarget |= fieldFromInstruction(Insn, 16, 6) << 12; in DecodeThumb2BCCInstruction()
4877 brtarget |= fieldFromInstruction(Insn, 26, 1) << 20; in DecodeThumb2BCCInstruction()
5091 static DecodeStatus DecodeDoubleRegLoad(MCInst &Inst, unsigned Insn, in DecodeDoubleRegLoad() argument
5096 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeDoubleRegLoad()
5097 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeDoubleRegLoad()
5098 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeDoubleRegLoad()
5113 static DecodeStatus DecodeDoubleRegStore(MCInst &Inst, unsigned Insn, in DecodeDoubleRegStore() argument
5118 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeDoubleRegStore()
5119 unsigned Rt = fieldFromInstruction(Insn, 0, 4); in DecodeDoubleRegStore()
5120 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeDoubleRegStore()
5121 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeDoubleRegStore()
5139 static DecodeStatus DecodeLDRPreImm(MCInst &Inst, unsigned Insn, in DecodeLDRPreImm() argument
5144 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeLDRPreImm()
5145 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeLDRPreImm()
5146 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeLDRPreImm()
5147 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeLDRPreImm()
5148 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeLDRPreImm()
5149 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeLDRPreImm()
5165 static DecodeStatus DecodeLDRPreReg(MCInst &Inst, unsigned Insn, in DecodeLDRPreReg() argument
5170 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeLDRPreReg()
5171 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeLDRPreReg()
5172 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeLDRPreReg()
5173 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeLDRPreReg()
5174 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeLDRPreReg()
5175 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeLDRPreReg()
5176 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeLDRPreReg()
5193 static DecodeStatus DecodeSTRPreImm(MCInst &Inst, unsigned Insn, in DecodeSTRPreImm() argument
5198 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeSTRPreImm()
5199 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeSTRPreImm()
5200 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeSTRPreImm()
5201 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeSTRPreImm()
5202 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeSTRPreImm()
5203 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSTRPreImm()
5219 static DecodeStatus DecodeSTRPreReg(MCInst &Inst, unsigned Insn, in DecodeSTRPreReg() argument
5224 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeSTRPreReg()
5225 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeSTRPreReg()
5226 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeSTRPreReg()
5227 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeSTRPreReg()
5228 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeSTRPreReg()
5229 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSTRPreReg()
5245 static DecodeStatus DecodeVLD1LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVLD1LN() argument
5249 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD1LN()
5250 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD1LN()
5251 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD1LN()
5252 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD1LN()
5253 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD1LN()
5261 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD1LN()
5263 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD1LN()
5266 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD1LN()
5268 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD1LN()
5269 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD1LN()
5273 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD1LN()
5275 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD1LN()
5277 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVLD1LN()
5312 static DecodeStatus DecodeVST1LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVST1LN() argument
5316 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST1LN()
5317 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST1LN()
5318 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST1LN()
5319 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST1LN()
5320 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST1LN()
5328 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST1LN()
5330 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST1LN()
5333 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST1LN()
5335 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST1LN()
5336 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST1LN()
5340 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST1LN()
5342 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST1LN()
5344 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVST1LN()
5377 static DecodeStatus DecodeVLD2LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVLD2LN() argument
5381 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD2LN()
5382 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD2LN()
5383 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD2LN()
5384 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD2LN()
5385 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD2LN()
5394 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD2LN()
5395 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD2LN()
5399 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD2LN()
5400 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD2LN()
5402 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD2LN()
5406 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD2LN()
5408 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD2LN()
5409 if (fieldFromInstruction(Insn, 4, 1) != 0) in DecodeVLD2LN()
5411 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD2LN()
5444 static DecodeStatus DecodeVST2LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVST2LN() argument
5448 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST2LN()
5449 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST2LN()
5450 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST2LN()
5451 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST2LN()
5452 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST2LN()
5461 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST2LN()
5462 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST2LN()
5466 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST2LN()
5467 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST2LN()
5469 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST2LN()
5473 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST2LN()
5475 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST2LN()
5476 if (fieldFromInstruction(Insn, 4, 1) != 0) in DecodeVST2LN()
5478 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST2LN()
5507 static DecodeStatus DecodeVLD3LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVLD3LN() argument
5511 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD3LN()
5512 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD3LN()
5513 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD3LN()
5514 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD3LN()
5515 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD3LN()
5524 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD3LN()
5526 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD3LN()
5529 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD3LN()
5531 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD3LN()
5532 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD3LN()
5536 if (fieldFromInstruction(Insn, 4, 2)) in DecodeVLD3LN()
5538 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD3LN()
5539 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD3LN()
5577 static DecodeStatus DecodeVST3LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVST3LN() argument
5581 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST3LN()
5582 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST3LN()
5583 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST3LN()
5584 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST3LN()
5585 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST3LN()
5594 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST3LN()
5596 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST3LN()
5599 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST3LN()
5601 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST3LN()
5602 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST3LN()
5606 if (fieldFromInstruction(Insn, 4, 2)) in DecodeVST3LN()
5608 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST3LN()
5609 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST3LN()
5640 static DecodeStatus DecodeVLD4LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVLD4LN() argument
5644 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD4LN()
5645 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD4LN()
5646 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD4LN()
5647 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD4LN()
5648 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD4LN()
5657 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD4LN()
5659 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD4LN()
5662 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD4LN()
5664 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD4LN()
5665 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD4LN()
5669 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVLD4LN()
5675 align = 4 << fieldFromInstruction(Insn, 4, 2); break; in DecodeVLD4LN()
5678 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD4LN()
5679 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD4LN()
5721 static DecodeStatus DecodeVST4LN(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVST4LN() argument
5725 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST4LN()
5726 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST4LN()
5727 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST4LN()
5728 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST4LN()
5729 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST4LN()
5738 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST4LN()
5740 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST4LN()
5743 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST4LN()
5745 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST4LN()
5746 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST4LN()
5750 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVST4LN()
5756 align = 4 << fieldFromInstruction(Insn, 4, 2); break; in DecodeVST4LN()
5759 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST4LN()
5760 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST4LN()
5793 static DecodeStatus DecodeVMOVSRR(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVMOVSRR() argument
5796 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeVMOVSRR()
5797 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeVMOVSRR()
5798 unsigned Rm = fieldFromInstruction(Insn, 5, 1); in DecodeVMOVSRR()
5799 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeVMOVSRR()
5800 Rm |= fieldFromInstruction(Insn, 0, 4) << 1; in DecodeVMOVSRR()
5819 static DecodeStatus DecodeVMOVRRS(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVMOVRRS() argument
5822 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeVMOVRRS()
5823 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeVMOVRRS()
5824 unsigned Rm = fieldFromInstruction(Insn, 5, 1); in DecodeVMOVRRS()
5825 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeVMOVRRS()
5826 Rm |= fieldFromInstruction(Insn, 0, 4) << 1; in DecodeVMOVRRS()
5845 static DecodeStatus DecodeIT(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeIT() argument
5848 unsigned pred = fieldFromInstruction(Insn, 4, 4); in DecodeIT()
5849 unsigned mask = fieldFromInstruction(Insn, 0, 4); in DecodeIT()
5874 static DecodeStatus DecodeT2LDRDPreInstruction(MCInst &Inst, unsigned Insn, in DecodeT2LDRDPreInstruction() argument
5879 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LDRDPreInstruction()
5880 unsigned Rt2 = fieldFromInstruction(Insn, 8, 4); in DecodeT2LDRDPreInstruction()
5881 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LDRDPreInstruction()
5882 unsigned addr = fieldFromInstruction(Insn, 0, 8); in DecodeT2LDRDPreInstruction()
5883 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeT2LDRDPreInstruction()
5884 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeT2LDRDPreInstruction()
5885 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeT2LDRDPreInstruction()
5911 static DecodeStatus DecodeT2STRDPreInstruction(MCInst &Inst, unsigned Insn, in DecodeT2STRDPreInstruction() argument
5916 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2STRDPreInstruction()
5917 unsigned Rt2 = fieldFromInstruction(Insn, 8, 4); in DecodeT2STRDPreInstruction()
5918 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2STRDPreInstruction()
5919 unsigned addr = fieldFromInstruction(Insn, 0, 8); in DecodeT2STRDPreInstruction()
5920 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeT2STRDPreInstruction()
5921 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeT2STRDPreInstruction()
5922 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeT2STRDPreInstruction()
5946 static DecodeStatus DecodeT2Adr(MCInst &Inst, uint32_t Insn, uint64_t Address, in DecodeT2Adr() argument
5948 unsigned sign1 = fieldFromInstruction(Insn, 21, 1); in DecodeT2Adr()
5949 unsigned sign2 = fieldFromInstruction(Insn, 23, 1); in DecodeT2Adr()
5951 const unsigned Rd = fieldFromInstruction(Insn, 8, 4); in DecodeT2Adr()
5955 unsigned Val = fieldFromInstruction(Insn, 0, 8); in DecodeT2Adr()
5956 Val |= fieldFromInstruction(Insn, 12, 3) << 8; in DecodeT2Adr()
5957 Val |= fieldFromInstruction(Insn, 26, 1) << 11; in DecodeT2Adr()
5983 static DecodeStatus DecodeSwap(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeSwap() argument
5985 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeSwap()
5986 unsigned Rt2 = fieldFromInstruction(Insn, 0, 4); in DecodeSwap()
5987 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeSwap()
5988 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSwap()
5991 return DecodeCPSInstruction(Inst, Insn, Address, Decoder); in DecodeSwap()
6010 static DecodeStatus DecodeVCVTD(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVCVTD() argument
6016 unsigned Vd = (fieldFromInstruction(Insn, 12, 4) << 0); in DecodeVCVTD()
6017 Vd |= (fieldFromInstruction(Insn, 22, 1) << 4); in DecodeVCVTD()
6018 unsigned Vm = (fieldFromInstruction(Insn, 0, 4) << 0); in DecodeVCVTD()
6019 Vm |= (fieldFromInstruction(Insn, 5, 1) << 4); in DecodeVCVTD()
6020 unsigned imm = fieldFromInstruction(Insn, 16, 6); in DecodeVCVTD()
6021 unsigned cmode = fieldFromInstruction(Insn, 8, 4); in DecodeVCVTD()
6022 unsigned op = fieldFromInstruction(Insn, 5, 1); in DecodeVCVTD()
6055 return DecodeVMOVModImmInstruction(Inst, Insn, Address, Decoder); in DecodeVCVTD()
6069 static DecodeStatus DecodeVCVTQ(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVCVTQ() argument
6075 unsigned Vd = (fieldFromInstruction(Insn, 12, 4) << 0); in DecodeVCVTQ()
6076 Vd |= (fieldFromInstruction(Insn, 22, 1) << 4); in DecodeVCVTQ()
6077 unsigned Vm = (fieldFromInstruction(Insn, 0, 4) << 0); in DecodeVCVTQ()
6078 Vm |= (fieldFromInstruction(Insn, 5, 1) << 4); in DecodeVCVTQ()
6079 unsigned imm = fieldFromInstruction(Insn, 16, 6); in DecodeVCVTQ()
6080 unsigned cmode = fieldFromInstruction(Insn, 8, 4); in DecodeVCVTQ()
6081 unsigned op = fieldFromInstruction(Insn, 5, 1); in DecodeVCVTQ()
6114 return DecodeVMOVModImmInstruction(Inst, Insn, Address, Decoder); in DecodeVCVTQ()
6129 DecodeNEONComplexLane64Instruction(MCInst &Inst, unsigned Insn, in DecodeNEONComplexLane64Instruction() argument
6132 unsigned Vd = (fieldFromInstruction(Insn, 12, 4) << 0); in DecodeNEONComplexLane64Instruction()
6133 Vd |= (fieldFromInstruction(Insn, 22, 1) << 4); in DecodeNEONComplexLane64Instruction()
6134 unsigned Vn = (fieldFromInstruction(Insn, 16, 4) << 0); in DecodeNEONComplexLane64Instruction()
6135 Vn |= (fieldFromInstruction(Insn, 7, 1) << 4); in DecodeNEONComplexLane64Instruction()
6136 unsigned Vm = (fieldFromInstruction(Insn, 0, 4) << 0); in DecodeNEONComplexLane64Instruction()
6137 Vm |= (fieldFromInstruction(Insn, 5, 1) << 4); in DecodeNEONComplexLane64Instruction()
6138 unsigned q = (fieldFromInstruction(Insn, 6, 1) << 0); in DecodeNEONComplexLane64Instruction()
6139 unsigned rotate = (fieldFromInstruction(Insn, 20, 2) << 0); in DecodeNEONComplexLane64Instruction()
6326 static DecodeStatus DecodeLOLoop(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeLOLoop() argument
6333 unsigned Imm = fieldFromInstruction(Insn, 11, 1) | in DecodeLOLoop()
6334 fieldFromInstruction(Insn, 1, 10) << 1; in DecodeLOLoop()
6353 DecoderGPRRegisterClass(Inst, fieldFromInstruction(Insn, 16, 4), in DecodeLOLoop()
6364 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeLOLoop()
6370 if ((Insn & ~SBZMask) != CanonicalLCTP) in DecodeLOLoop()
6372 if (Insn != CanonicalLCTP) in DecodeLOLoop()
6379 fieldFromInstruction(Insn, 16, 4), in DecodeLOLoop()
6441 static DecodeStatus DecodeVSCCLRM(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVSCCLRM() argument
6448 unsigned reglist = (fieldFromInstruction(Insn, 1, 7) << 1) | in DecodeVSCCLRM()
6449 (fieldFromInstruction(Insn, 12, 4) << 8) | in DecodeVSCCLRM()
6450 (fieldFromInstruction(Insn, 22, 1) << 12); in DecodeVSCCLRM()
6455 unsigned reglist = fieldFromInstruction(Insn, 0, 8) | in DecodeVSCCLRM()
6456 (fieldFromInstruction(Insn, 22, 1) << 8) | in DecodeVSCCLRM()
6457 (fieldFromInstruction(Insn, 12, 4) << 9); in DecodeVSCCLRM()
6782 static DecodeStatus DecodeMVEVMOVQtoDReg(MCInst &Inst, unsigned Insn, in DecodeMVEVMOVQtoDReg() argument
6786 unsigned Rt = fieldFromInstruction(Insn, 0, 4); in DecodeMVEVMOVQtoDReg()
6787 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeMVEVMOVQtoDReg()
6788 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEVMOVQtoDReg()
6789 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEVMOVQtoDReg()
6790 unsigned index = fieldFromInstruction(Insn, 4, 1); in DecodeMVEVMOVQtoDReg()
6806 static DecodeStatus DecodeMVEVMOVDRegtoQ(MCInst &Inst, unsigned Insn, in DecodeMVEVMOVDRegtoQ() argument
6810 unsigned Rt = fieldFromInstruction(Insn, 0, 4); in DecodeMVEVMOVDRegtoQ()
6811 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeMVEVMOVDRegtoQ()
6812 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEVMOVDRegtoQ()
6813 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEVMOVDRegtoQ()
6814 unsigned index = fieldFromInstruction(Insn, 4, 1); in DecodeMVEVMOVDRegtoQ()
6833 DecodeMVEOverlappingLongShift(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMVEOverlappingLongShift() argument
6837 unsigned RdaLo = fieldFromInstruction(Insn, 17, 3) << 1; in DecodeMVEOverlappingLongShift()
6838 unsigned RdaHi = fieldFromInstruction(Insn, 9, 3) << 1; in DecodeMVEOverlappingLongShift()
6839 unsigned Rm = fieldFromInstruction(Insn, 12, 4); in DecodeMVEOverlappingLongShift()
6847 unsigned Rda = fieldFromInstruction(Insn, 16, 4); in DecodeMVEOverlappingLongShift()
6874 if (fieldFromInstruction (Insn, 6, 3) != 4) in DecodeMVEOverlappingLongShift()
6904 unsigned Saturate = fieldFromInstruction(Insn, 7, 1); in DecodeMVEOverlappingLongShift()
6912 static DecodeStatus DecodeMVEVCVTt1fp(MCInst &Inst, unsigned Insn, in DecodeMVEVCVTt1fp() argument
6916 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEVCVTt1fp()
6917 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEVCVTt1fp()
6918 unsigned Qm = ((fieldFromInstruction(Insn, 5, 1) << 3) | in DecodeMVEVCVTt1fp()
6919 fieldFromInstruction(Insn, 1, 3)); in DecodeMVEVCVTt1fp()
6920 unsigned imm6 = fieldFromInstruction(Insn, 16, 6); in DecodeMVEVCVTt1fp()
6933 static DecodeStatus DecodeMVEVCMP(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMVEVCMP() argument
6937 unsigned Qn = fieldFromInstruction(Insn, 17, 3); in DecodeMVEVCMP()
6944 fc = fieldFromInstruction(Insn, 12, 1) << 2 | in DecodeMVEVCMP()
6945 fieldFromInstruction(Insn, 7, 1) | in DecodeMVEVCMP()
6946 fieldFromInstruction(Insn, 5, 1) << 1; in DecodeMVEVCMP()
6947 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeMVEVCMP()
6951 fc = fieldFromInstruction(Insn, 12, 1) << 2 | in DecodeMVEVCMP()
6952 fieldFromInstruction(Insn, 7, 1) | in DecodeMVEVCMP()
6953 fieldFromInstruction(Insn, 0, 1) << 1; in DecodeMVEVCMP()
6954 unsigned Qm = fieldFromInstruction(Insn, 5, 1) << 4 | in DecodeMVEVCMP()
6955 fieldFromInstruction(Insn, 1, 3); in DecodeMVEVCMP()
6970 static DecodeStatus DecodeMveVCTP(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMveVCTP() argument
6974 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeMveVCTP()
6980 static DecodeStatus DecodeMVEVPNOT(MCInst &Inst, unsigned Insn, in DecodeMVEVPNOT() argument
6989 static DecodeStatus DecodeT2AddSubSPImm(MCInst &Inst, unsigned Insn, in DecodeT2AddSubSPImm() argument
6992 const unsigned Rd = fieldFromInstruction(Insn, 8, 4); in DecodeT2AddSubSPImm()
6993 const unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2AddSubSPImm()
6994 const unsigned Imm12 = fieldFromInstruction(Insn, 26, 1) << 11 | in DecodeT2AddSubSPImm()
6995 fieldFromInstruction(Insn, 12, 3) << 8 | in DecodeT2AddSubSPImm()
6996 fieldFromInstruction(Insn, 0, 8); in DecodeT2AddSubSPImm()
6997 const unsigned TypeT3 = fieldFromInstruction(Insn, 25, 1); in DecodeT2AddSubSPImm()
6998 unsigned sign1 = fieldFromInstruction(Insn, 21, 1); in DecodeT2AddSubSPImm()
6999 unsigned sign2 = fieldFromInstruction(Insn, 23, 1); in DecodeT2AddSubSPImm()
7000 unsigned S = fieldFromInstruction(Insn, 20, 1); in DecodeT2AddSubSPImm()