Lines Matching refs:Insn

251 static DecodeStatus DecodeBitfieldMaskOperand(MCInst &Inst, unsigned Insn,
253 static DecodeStatus DecodeCopMemInstruction(MCInst &Inst, unsigned Insn,
256 unsigned Insn,
259 static DecodeStatus DecodeSORegMemOperand(MCInst &Inst, unsigned Insn,
261 static DecodeStatus DecodeAddrMode3Instruction(MCInst &Inst,unsigned Insn,
263 static DecodeStatus DecodeSORegImmOperand(MCInst &Inst, unsigned Insn,
265 static DecodeStatus DecodeSORegRegOperand(MCInst &Inst, unsigned Insn,
269 unsigned Insn,
272 static DecodeStatus DecodeT2MOVTWInstruction(MCInst &Inst, unsigned Insn,
274 static DecodeStatus DecodeArmMOVTWInstruction(MCInst &Inst, unsigned Insn,
276 static DecodeStatus DecodeSMLAInstruction(MCInst &Inst, unsigned Insn,
278 static DecodeStatus DecodeHINTInstruction(MCInst &Inst, unsigned Insn,
280 static DecodeStatus DecodeCPSInstruction(MCInst &Inst, unsigned Insn,
282 static DecodeStatus DecodeTSTInstruction(MCInst &Inst, unsigned Insn,
284 static DecodeStatus DecodeSETPANInstruction(MCInst &Inst, unsigned Insn,
286 static DecodeStatus DecodeT2CPSInstruction(MCInst &Inst, unsigned Insn,
296 static DecodeStatus DecodeT2BInstruction(MCInst &Inst, unsigned Insn,
298 static DecodeStatus DecodeBranchImmInstruction(MCInst &Inst,unsigned Insn,
326 static DecodeStatus DecodeMVEVADCInstruction(MCInst &Inst, unsigned Insn,
338 static DecodeStatus DecodeTBLInstruction(MCInst &Inst, unsigned Insn,
340 static DecodeStatus DecodePostIdxReg(MCInst &Inst, unsigned Insn,
342 static DecodeStatus DecodeMveAddrModeRQ(MCInst &Inst, unsigned Insn,
345 static DecodeStatus DecodeMveAddrModeQ(MCInst &Inst, unsigned Insn,
347 static DecodeStatus DecodeCoprocessor(MCInst &Inst, unsigned Insn,
349 static DecodeStatus DecodeMemBarrierOption(MCInst &Inst, unsigned Insn,
351 static DecodeStatus DecodeInstSyncBarrierOption(MCInst &Inst, unsigned Insn,
353 static DecodeStatus DecodeMSRMask(MCInst &Inst, unsigned Insn,
355 static DecodeStatus DecodeBankedReg(MCInst &Inst, unsigned Insn,
357 static DecodeStatus DecodeDoubleRegLoad(MCInst &Inst, unsigned Insn,
359 static DecodeStatus DecodeDoubleRegStore(MCInst &Inst, unsigned Insn,
361 static DecodeStatus DecodeLDRPreImm(MCInst &Inst, unsigned Insn,
363 static DecodeStatus DecodeLDRPreReg(MCInst &Inst, unsigned Insn,
365 static DecodeStatus DecodeSTRPreImm(MCInst &Inst, unsigned Insn,
367 static DecodeStatus DecodeSTRPreReg(MCInst &Inst, unsigned Insn,
369 static DecodeStatus DecodeVLD1LN(MCInst &Inst, unsigned Insn,
371 static DecodeStatus DecodeVLD2LN(MCInst &Inst, unsigned Insn,
373 static DecodeStatus DecodeVLD3LN(MCInst &Inst, unsigned Insn,
375 static DecodeStatus DecodeVLD4LN(MCInst &Inst, unsigned Insn,
377 static DecodeStatus DecodeVST1LN(MCInst &Inst, unsigned Insn,
379 static DecodeStatus DecodeVST2LN(MCInst &Inst, unsigned Insn,
381 static DecodeStatus DecodeVST3LN(MCInst &Inst, unsigned Insn,
383 static DecodeStatus DecodeVST4LN(MCInst &Inst, unsigned Insn,
385 static DecodeStatus DecodeVMOVSRR(MCInst &Inst, unsigned Insn,
387 static DecodeStatus DecodeVMOVRRS(MCInst &Inst, unsigned Insn,
389 static DecodeStatus DecodeSwap(MCInst &Inst, unsigned Insn,
391 static DecodeStatus DecodeVCVTD(MCInst &Inst, unsigned Insn,
393 static DecodeStatus DecodeVCVTQ(MCInst &Inst, unsigned Insn,
395 static DecodeStatus DecodeVCVTImmOperand(MCInst &Inst, unsigned Insn,
402 static DecodeStatus DecodeThumbAddSpecialReg(MCInst &Inst, uint16_t Insn,
422 static DecodeStatus DecodeT2LoadImm8(MCInst &Inst, unsigned Insn,
424 static DecodeStatus DecodeT2LoadImm12(MCInst &Inst, unsigned Insn,
426 static DecodeStatus DecodeT2LoadT(MCInst &Inst, unsigned Insn,
428 static DecodeStatus DecodeT2LoadLabel(MCInst &Inst, unsigned Insn,
456 static DecodeStatus DecodeThumbAddSPReg(MCInst &Inst, uint16_t Insn,
458 static DecodeStatus DecodeThumbCPS(MCInst &Inst, uint16_t Insn,
460 static DecodeStatus DecodeQADDInstruction(MCInst &Inst, unsigned Insn,
462 static DecodeStatus DecodeThumbBLXOffset(MCInst &Inst, unsigned Insn,
478 static DecodeStatus DecodeT2LDRDPreInstruction(MCInst &Inst,unsigned Insn,
480 static DecodeStatus DecodeT2STRDPreInstruction(MCInst &Inst,unsigned Insn,
505 static DecodeStatus DecodeLOLoop(MCInst &Inst, unsigned Insn, uint64_t Address,
510 static DecodeStatus DecodeVSCCLRM(MCInst &Inst, unsigned Insn, uint64_t Address,
530 static DecodeStatus DecodeVSTRVLDR_SYSREG(MCInst &Inst, unsigned Insn,
550 static DecodeStatus DecodeMVEVMOVQtoDReg(MCInst &Inst, unsigned Insn,
553 static DecodeStatus DecodeMVEVMOVDRegtoQ(MCInst &Inst, unsigned Insn,
556 static DecodeStatus DecodeMVEVCVTt1fp(MCInst &Inst, unsigned Insn,
561 static DecodeStatus DecodeMVEVCMP(MCInst &Inst, unsigned Insn,
563 static DecodeStatus DecodeMveVCTP(MCInst &Inst, unsigned Insn,
565 static DecodeStatus DecodeMVEVPNOT(MCInst &Inst, unsigned Insn,
567 static DecodeStatus DecodeMVEOverlappingLongShift(MCInst &Inst, unsigned Insn,
570 static DecodeStatus DecodeT2AddSubSPImm(MCInst &Inst, unsigned Insn,
584 uint32_t Insn, in checkDecodedInstruction() argument
590 uint32_t Cond = (Insn >> 28) & 0xF; in checkDecodedInstruction()
639 uint32_t Insn = in getARMInstruction() local
644 decodeInstruction(DecoderTableARM32, MI, Insn, Address, this, STI); in getARMInstruction()
647 return checkDecodedInstruction(MI, Size, Address, CS, Insn, Result); in getARMInstruction()
663 Result = decodeInstruction(Table.P, MI, Insn, Address, this, STI); in getARMInstruction()
675 decodeInstruction(DecoderTableCoProc32, MI, Insn, Address, this, STI); in getARMInstruction()
678 return checkDecodedInstruction(MI, Size, Address, CS, Insn, Result); in getARMInstruction()
1665 static DecodeStatus DecodeCopMemInstruction(MCInst &Inst, unsigned Insn, in DecodeCopMemInstruction() argument
1669 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeCopMemInstruction()
1670 unsigned CRd = fieldFromInstruction(Insn, 12, 4); in DecodeCopMemInstruction()
1671 unsigned coproc = fieldFromInstruction(Insn, 8, 4); in DecodeCopMemInstruction()
1672 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeCopMemInstruction()
1673 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeCopMemInstruction()
1674 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeCopMemInstruction()
1844 DecodeAddrMode2IdxInstruction(MCInst &Inst, unsigned Insn, in DecodeAddrMode2IdxInstruction() argument
1848 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeAddrMode2IdxInstruction()
1849 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeAddrMode2IdxInstruction()
1850 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeAddrMode2IdxInstruction()
1851 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeAddrMode2IdxInstruction()
1852 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeAddrMode2IdxInstruction()
1853 unsigned reg = fieldFromInstruction(Insn, 25, 1); in DecodeAddrMode2IdxInstruction()
1854 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeAddrMode2IdxInstruction()
1855 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeAddrMode2IdxInstruction()
1898 if (!fieldFromInstruction(Insn, 23, 1)) in DecodeAddrMode2IdxInstruction()
1915 switch( fieldFromInstruction(Insn, 5, 2)) { in DecodeAddrMode2IdxInstruction()
1931 unsigned amt = fieldFromInstruction(Insn, 7, 5); in DecodeAddrMode2IdxInstruction()
1993 DecodeAddrMode3Instruction(MCInst &Inst, unsigned Insn, in DecodeAddrMode3Instruction() argument
1997 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeAddrMode3Instruction()
1998 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeAddrMode3Instruction()
1999 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeAddrMode3Instruction()
2000 unsigned type = fieldFromInstruction(Insn, 22, 1); in DecodeAddrMode3Instruction()
2001 unsigned imm = fieldFromInstruction(Insn, 8, 4); in DecodeAddrMode3Instruction()
2002 unsigned U = ((~fieldFromInstruction(Insn, 23, 1)) & 1) << 8; in DecodeAddrMode3Instruction()
2003 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeAddrMode3Instruction()
2004 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeAddrMode3Instruction()
2005 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeAddrMode3Instruction()
2036 if (!type && fieldFromInstruction(Insn, 8, 4)) in DecodeAddrMode3Instruction()
2184 static DecodeStatus DecodeRFEInstruction(MCInst &Inst, unsigned Insn, in DecodeRFEInstruction() argument
2188 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeRFEInstruction()
2189 unsigned mode = fieldFromInstruction(Insn, 23, 2); in DecodeRFEInstruction()
2213 static DecodeStatus DecodeQADDInstruction(MCInst &Inst, unsigned Insn, in DecodeQADDInstruction() argument
2217 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeQADDInstruction()
2218 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeQADDInstruction()
2219 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeQADDInstruction()
2220 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeQADDInstruction()
2223 return DecodeCPSInstruction(Inst, Insn, Address, Decoder); in DecodeQADDInstruction()
2237 unsigned Insn, in DecodeMemMultipleWritebackInstruction() argument
2241 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeMemMultipleWritebackInstruction()
2242 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeMemMultipleWritebackInstruction()
2243 unsigned reglist = fieldFromInstruction(Insn, 0, 16); in DecodeMemMultipleWritebackInstruction()
2301 if (fieldFromInstruction(Insn, 20, 1) == 0) { in DecodeMemMultipleWritebackInstruction()
2303 if (!(fieldFromInstruction(Insn, 22, 1) == 1 && in DecodeMemMultipleWritebackInstruction()
2304 fieldFromInstruction(Insn, 20, 1) == 0)) in DecodeMemMultipleWritebackInstruction()
2308 MCOperand::createImm(fieldFromInstruction(Insn, 0, 4))); in DecodeMemMultipleWritebackInstruction()
2312 return DecodeRFEInstruction(Inst, Insn, Address, Decoder); in DecodeMemMultipleWritebackInstruction()
2328 static DecodeStatus DecodeHINTInstruction(MCInst &Inst, unsigned Insn, in DecodeHINTInstruction() argument
2330 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeHINTInstruction()
2331 unsigned imm8 = fieldFromInstruction(Insn, 0, 8); in DecodeHINTInstruction()
2350 static DecodeStatus DecodeCPSInstruction(MCInst &Inst, unsigned Insn, in DecodeCPSInstruction() argument
2352 unsigned imod = fieldFromInstruction(Insn, 18, 2); in DecodeCPSInstruction()
2353 unsigned M = fieldFromInstruction(Insn, 17, 1); in DecodeCPSInstruction()
2354 unsigned iflags = fieldFromInstruction(Insn, 6, 3); in DecodeCPSInstruction()
2355 unsigned mode = fieldFromInstruction(Insn, 0, 5); in DecodeCPSInstruction()
2361 if (fieldFromInstruction(Insn, 5, 1) != 0 || in DecodeCPSInstruction()
2362 fieldFromInstruction(Insn, 16, 1) != 0 || in DecodeCPSInstruction()
2363 fieldFromInstruction(Insn, 20, 8) != 0x10) in DecodeCPSInstruction()
2397 static DecodeStatus DecodeT2CPSInstruction(MCInst &Inst, unsigned Insn, in DecodeT2CPSInstruction() argument
2399 unsigned imod = fieldFromInstruction(Insn, 9, 2); in DecodeT2CPSInstruction()
2400 unsigned M = fieldFromInstruction(Insn, 8, 1); in DecodeT2CPSInstruction()
2401 unsigned iflags = fieldFromInstruction(Insn, 5, 3); in DecodeT2CPSInstruction()
2402 unsigned mode = fieldFromInstruction(Insn, 0, 5); in DecodeT2CPSInstruction()
2429 int imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2CPSInstruction()
2439 static DecodeStatus DecodeT2MOVTWInstruction(MCInst &Inst, unsigned Insn, in DecodeT2MOVTWInstruction() argument
2443 unsigned Rd = fieldFromInstruction(Insn, 8, 4); in DecodeT2MOVTWInstruction()
2446 imm |= (fieldFromInstruction(Insn, 0, 8) << 0); in DecodeT2MOVTWInstruction()
2447 imm |= (fieldFromInstruction(Insn, 12, 3) << 8); in DecodeT2MOVTWInstruction()
2448 imm |= (fieldFromInstruction(Insn, 16, 4) << 12); in DecodeT2MOVTWInstruction()
2449 imm |= (fieldFromInstruction(Insn, 26, 1) << 11); in DecodeT2MOVTWInstruction()
2463 static DecodeStatus DecodeArmMOVTWInstruction(MCInst &Inst, unsigned Insn, in DecodeArmMOVTWInstruction() argument
2467 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeArmMOVTWInstruction()
2468 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeArmMOVTWInstruction()
2471 imm |= (fieldFromInstruction(Insn, 0, 12) << 0); in DecodeArmMOVTWInstruction()
2472 imm |= (fieldFromInstruction(Insn, 16, 4) << 12); in DecodeArmMOVTWInstruction()
2490 static DecodeStatus DecodeSMLAInstruction(MCInst &Inst, unsigned Insn, in DecodeSMLAInstruction() argument
2494 unsigned Rd = fieldFromInstruction(Insn, 16, 4); in DecodeSMLAInstruction()
2495 unsigned Rn = fieldFromInstruction(Insn, 0, 4); in DecodeSMLAInstruction()
2496 unsigned Rm = fieldFromInstruction(Insn, 8, 4); in DecodeSMLAInstruction()
2497 unsigned Ra = fieldFromInstruction(Insn, 12, 4); in DecodeSMLAInstruction()
2498 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSMLAInstruction()
2501 return DecodeCPSInstruction(Inst, Insn, Address, Decoder); in DecodeSMLAInstruction()
2518 static DecodeStatus DecodeTSTInstruction(MCInst &Inst, unsigned Insn, in DecodeTSTInstruction() argument
2522 unsigned Pred = fieldFromInstruction(Insn, 28, 4); in DecodeTSTInstruction()
2523 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeTSTInstruction()
2524 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeTSTInstruction()
2527 return DecodeSETPANInstruction(Inst, Insn, Address, Decoder); in DecodeTSTInstruction()
2539 static DecodeStatus DecodeSETPANInstruction(MCInst &Inst, unsigned Insn, in DecodeSETPANInstruction() argument
2543 unsigned Imm = fieldFromInstruction(Insn, 9, 1); in DecodeSETPANInstruction()
2554 if (fieldFromInstruction(Insn, 20,12) != 0xf11 || in DecodeSETPANInstruction()
2555 fieldFromInstruction(Insn, 4,4) != 0) in DecodeSETPANInstruction()
2557 if (fieldFromInstruction(Insn, 10,10) != 0 || in DecodeSETPANInstruction()
2558 fieldFromInstruction(Insn, 0,4) != 0) in DecodeSETPANInstruction()
2633 DecodeT2BInstruction(MCInst &Inst, unsigned Insn, in DecodeT2BInstruction() argument
2643 unsigned S = fieldFromInstruction(Insn, 26, 1); in DecodeT2BInstruction()
2644 unsigned J1 = fieldFromInstruction(Insn, 13, 1); in DecodeT2BInstruction()
2645 unsigned J2 = fieldFromInstruction(Insn, 11, 1); in DecodeT2BInstruction()
2648 unsigned imm10 = fieldFromInstruction(Insn, 16, 10); in DecodeT2BInstruction()
2649 unsigned imm11 = fieldFromInstruction(Insn, 0, 11); in DecodeT2BInstruction()
2660 DecodeBranchImmInstruction(MCInst &Inst, unsigned Insn, in DecodeBranchImmInstruction() argument
2664 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeBranchImmInstruction()
2665 unsigned imm = fieldFromInstruction(Insn, 0, 24) << 2; in DecodeBranchImmInstruction()
2669 imm |= fieldFromInstruction(Insn, 24, 1) << 1; in DecodeBranchImmInstruction()
2706 static DecodeStatus DecodeVLDInstruction(MCInst &Inst, unsigned Insn, in DecodeVLDInstruction() argument
2710 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLDInstruction()
2711 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLDInstruction()
2712 unsigned wb = fieldFromInstruction(Insn, 16, 4); in DecodeVLDInstruction()
2713 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLDInstruction()
2714 Rn |= fieldFromInstruction(Insn, 4, 2) << 4; in DecodeVLDInstruction()
2715 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLDInstruction()
2982 static DecodeStatus DecodeVLDST1Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST1Instruction() argument
2984 unsigned type = fieldFromInstruction(Insn, 8, 4); in DecodeVLDST1Instruction()
2985 unsigned align = fieldFromInstruction(Insn, 4, 2); in DecodeVLDST1Instruction()
2990 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST1Instruction()
2991 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST1Instruction()
2992 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST1Instruction()
2995 static DecodeStatus DecodeVLDST2Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST2Instruction() argument
2997 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLDST2Instruction()
3000 unsigned type = fieldFromInstruction(Insn, 8, 4); in DecodeVLDST2Instruction()
3001 unsigned align = fieldFromInstruction(Insn, 4, 2); in DecodeVLDST2Instruction()
3005 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST2Instruction()
3006 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST2Instruction()
3007 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST2Instruction()
3010 static DecodeStatus DecodeVLDST3Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST3Instruction() argument
3012 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLDST3Instruction()
3015 unsigned align = fieldFromInstruction(Insn, 4, 2); in DecodeVLDST3Instruction()
3018 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST3Instruction()
3019 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST3Instruction()
3020 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST3Instruction()
3023 static DecodeStatus DecodeVLDST4Instruction(MCInst &Inst, unsigned Insn, in DecodeVLDST4Instruction() argument
3025 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLDST4Instruction()
3028 unsigned load = fieldFromInstruction(Insn, 21, 1); in DecodeVLDST4Instruction()
3029 return load ? DecodeVLDInstruction(Inst, Insn, Address, Decoder) in DecodeVLDST4Instruction()
3030 : DecodeVSTInstruction(Inst, Insn, Address, Decoder); in DecodeVLDST4Instruction()
3033 static DecodeStatus DecodeVSTInstruction(MCInst &Inst, unsigned Insn, in DecodeVSTInstruction() argument
3037 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVSTInstruction()
3038 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVSTInstruction()
3039 unsigned wb = fieldFromInstruction(Insn, 16, 4); in DecodeVSTInstruction()
3040 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVSTInstruction()
3041 Rn |= fieldFromInstruction(Insn, 4, 2) << 4; in DecodeVSTInstruction()
3042 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVSTInstruction()
3303 static DecodeStatus DecodeVLD1DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD1DupInstruction() argument
3307 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD1DupInstruction()
3308 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD1DupInstruction()
3309 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD1DupInstruction()
3310 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD1DupInstruction()
3311 unsigned align = fieldFromInstruction(Insn, 4, 1); in DecodeVLD1DupInstruction()
3312 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLD1DupInstruction()
3350 static DecodeStatus DecodeVLD2DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD2DupInstruction() argument
3354 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD2DupInstruction()
3355 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD2DupInstruction()
3356 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD2DupInstruction()
3357 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD2DupInstruction()
3358 unsigned align = fieldFromInstruction(Insn, 4, 1); in DecodeVLD2DupInstruction()
3359 unsigned size = 1 << fieldFromInstruction(Insn, 6, 2); in DecodeVLD2DupInstruction()
3398 static DecodeStatus DecodeVLD3DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD3DupInstruction() argument
3402 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD3DupInstruction()
3403 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD3DupInstruction()
3404 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD3DupInstruction()
3405 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD3DupInstruction()
3406 unsigned inc = fieldFromInstruction(Insn, 5, 1) + 1; in DecodeVLD3DupInstruction()
3433 static DecodeStatus DecodeVLD4DupInstruction(MCInst &Inst, unsigned Insn, in DecodeVLD4DupInstruction() argument
3437 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD4DupInstruction()
3438 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD4DupInstruction()
3439 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD4DupInstruction()
3440 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD4DupInstruction()
3441 unsigned size = fieldFromInstruction(Insn, 6, 2); in DecodeVLD4DupInstruction()
3442 unsigned inc = fieldFromInstruction(Insn, 5, 1) + 1; in DecodeVLD4DupInstruction()
3443 unsigned align = fieldFromInstruction(Insn, 4, 1); in DecodeVLD4DupInstruction()
3486 DecodeVMOVModImmInstruction(MCInst &Inst, unsigned Insn, in DecodeVMOVModImmInstruction() argument
3490 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVMOVModImmInstruction()
3491 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVMOVModImmInstruction()
3492 unsigned imm = fieldFromInstruction(Insn, 0, 4); in DecodeVMOVModImmInstruction()
3493 imm |= fieldFromInstruction(Insn, 16, 3) << 4; in DecodeVMOVModImmInstruction()
3494 imm |= fieldFromInstruction(Insn, 24, 1) << 7; in DecodeVMOVModImmInstruction()
3495 imm |= fieldFromInstruction(Insn, 8, 4) << 8; in DecodeVMOVModImmInstruction()
3496 imm |= fieldFromInstruction(Insn, 5, 1) << 12; in DecodeVMOVModImmInstruction()
3497 unsigned Q = fieldFromInstruction(Insn, 6, 1); in DecodeVMOVModImmInstruction()
3532 DecodeMVEModImmInstruction(MCInst &Inst, unsigned Insn, in DecodeMVEModImmInstruction() argument
3536 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEModImmInstruction()
3537 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEModImmInstruction()
3538 unsigned cmode = fieldFromInstruction(Insn, 8, 4); in DecodeMVEModImmInstruction()
3539 unsigned imm = fieldFromInstruction(Insn, 0, 4); in DecodeMVEModImmInstruction()
3540 imm |= fieldFromInstruction(Insn, 16, 3) << 4; in DecodeMVEModImmInstruction()
3541 imm |= fieldFromInstruction(Insn, 28, 1) << 7; in DecodeMVEModImmInstruction()
3543 imm |= fieldFromInstruction(Insn, 5, 1) << 12; in DecodeMVEModImmInstruction()
3560 static DecodeStatus DecodeMVEVADCInstruction(MCInst &Inst, unsigned Insn, in DecodeMVEVADCInstruction() argument
3564 unsigned Qd = fieldFromInstruction(Insn, 13, 3); in DecodeMVEVADCInstruction()
3565 Qd |= fieldFromInstruction(Insn, 22, 1) << 3; in DecodeMVEVADCInstruction()
3570 unsigned Qn = fieldFromInstruction(Insn, 17, 3); in DecodeMVEVADCInstruction()
3571 Qn |= fieldFromInstruction(Insn, 7, 1) << 3; in DecodeMVEVADCInstruction()
3574 unsigned Qm = fieldFromInstruction(Insn, 1, 3); in DecodeMVEVADCInstruction()
3575 Qm |= fieldFromInstruction(Insn, 5, 1) << 3; in DecodeMVEVADCInstruction()
3578 if (!fieldFromInstruction(Insn, 12, 1)) // I bit clear => need input FPSCR in DecodeMVEVADCInstruction()
3585 static DecodeStatus DecodeVSHLMaxInstruction(MCInst &Inst, unsigned Insn, in DecodeVSHLMaxInstruction() argument
3589 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVSHLMaxInstruction()
3590 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVSHLMaxInstruction()
3591 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVSHLMaxInstruction()
3592 Rm |= fieldFromInstruction(Insn, 5, 1) << 4; in DecodeVSHLMaxInstruction()
3593 unsigned size = fieldFromInstruction(Insn, 18, 2); in DecodeVSHLMaxInstruction()
3628 static DecodeStatus DecodeTBLInstruction(MCInst &Inst, unsigned Insn, in DecodeTBLInstruction() argument
3632 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeTBLInstruction()
3633 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeTBLInstruction()
3634 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeTBLInstruction()
3635 Rn |= fieldFromInstruction(Insn, 7, 1) << 4; in DecodeTBLInstruction()
3636 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeTBLInstruction()
3637 Rm |= fieldFromInstruction(Insn, 5, 1) << 4; in DecodeTBLInstruction()
3638 unsigned op = fieldFromInstruction(Insn, 6, 1); in DecodeTBLInstruction()
3664 static DecodeStatus DecodeThumbAddSpecialReg(MCInst &Inst, uint16_t Insn, in DecodeThumbAddSpecialReg() argument
3668 unsigned dst = fieldFromInstruction(Insn, 8, 3); in DecodeThumbAddSpecialReg()
3669 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeThumbAddSpecialReg()
3788 static DecodeStatus DecodeT2LoadShift(MCInst &Inst, unsigned Insn, in DecodeT2LoadShift() argument
3792 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadShift()
3793 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadShift()
3828 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadShift()
3862 unsigned addrmode = fieldFromInstruction(Insn, 4, 2); in DecodeT2LoadShift()
3863 addrmode |= fieldFromInstruction(Insn, 0, 4) << 2; in DecodeT2LoadShift()
3864 addrmode |= fieldFromInstruction(Insn, 16, 4) << 6; in DecodeT2LoadShift()
3871 static DecodeStatus DecodeT2LoadImm8(MCInst &Inst, unsigned Insn, in DecodeT2LoadImm8() argument
3875 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadImm8()
3876 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadImm8()
3877 unsigned U = fieldFromInstruction(Insn, 9, 1); in DecodeT2LoadImm8()
3878 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2LoadImm8()
3881 unsigned add = fieldFromInstruction(Insn, 9, 1); in DecodeT2LoadImm8()
3915 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadImm8()
3955 static DecodeStatus DecodeT2LoadImm12(MCInst &Inst, unsigned Insn, in DecodeT2LoadImm12() argument
3959 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadImm12()
3960 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadImm12()
3961 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeT2LoadImm12()
3996 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadImm12()
4035 static DecodeStatus DecodeT2LoadT(MCInst &Inst, unsigned Insn, in DecodeT2LoadT() argument
4039 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LoadT()
4040 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadT()
4041 unsigned imm = fieldFromInstruction(Insn, 0, 8); in DecodeT2LoadT()
4064 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LoadT()
4074 static DecodeStatus DecodeT2LoadLabel(MCInst &Inst, unsigned Insn, in DecodeT2LoadLabel() argument
4078 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LoadLabel()
4079 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeT2LoadLabel()
4080 int imm = fieldFromInstruction(Insn, 0, 12); in DecodeT2LoadLabel()
4311 static DecodeStatus DecodeT2LdStPre(MCInst &Inst, unsigned Insn, in DecodeT2LdStPre() argument
4315 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LdStPre()
4316 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LdStPre()
4317 unsigned addr = fieldFromInstruction(Insn, 0, 8); in DecodeT2LdStPre()
4318 addr |= fieldFromInstruction(Insn, 9, 1) << 8; in DecodeT2LdStPre()
4320 unsigned load = fieldFromInstruction(Insn, 20, 1); in DecodeT2LdStPre()
4350 return DecodeT2LoadLabel(Inst, Insn, Address, Decoder); in DecodeT2LdStPre()
4398 static DecodeStatus DecodeThumbAddSPImm(MCInst &Inst, uint16_t Insn, in DecodeThumbAddSPImm() argument
4400 unsigned imm = fieldFromInstruction(Insn, 0, 7); in DecodeThumbAddSPImm()
4409 static DecodeStatus DecodeThumbAddSPReg(MCInst &Inst, uint16_t Insn, in DecodeThumbAddSPReg() argument
4414 unsigned Rdm = fieldFromInstruction(Insn, 0, 3); in DecodeThumbAddSPReg()
4415 Rdm |= fieldFromInstruction(Insn, 7, 1) << 3; in DecodeThumbAddSPReg()
4423 unsigned Rm = fieldFromInstruction(Insn, 3, 4); in DecodeThumbAddSPReg()
4434 static DecodeStatus DecodeThumbCPS(MCInst &Inst, uint16_t Insn, in DecodeThumbCPS() argument
4436 unsigned imod = fieldFromInstruction(Insn, 4, 1) | 0x2; in DecodeThumbCPS()
4437 unsigned flags = fieldFromInstruction(Insn, 0, 3); in DecodeThumbCPS()
4445 static DecodeStatus DecodePostIdxReg(MCInst &Inst, unsigned Insn, in DecodePostIdxReg() argument
4448 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodePostIdxReg()
4449 unsigned add = fieldFromInstruction(Insn, 4, 1); in DecodePostIdxReg()
4458 static DecodeStatus DecodeMveAddrModeRQ(MCInst &Inst, unsigned Insn, in DecodeMveAddrModeRQ() argument
4461 unsigned Rn = fieldFromInstruction(Insn, 3, 4); in DecodeMveAddrModeRQ()
4462 unsigned Qm = fieldFromInstruction(Insn, 0, 3); in DecodeMveAddrModeRQ()
4473 static DecodeStatus DecodeMveAddrModeQ(MCInst &Inst, unsigned Insn, in DecodeMveAddrModeQ() argument
4476 unsigned Qm = fieldFromInstruction(Insn, 8, 3); in DecodeMveAddrModeQ()
4477 int imm = fieldFromInstruction(Insn, 0, 7); in DecodeMveAddrModeQ()
4482 if(!fieldFromInstruction(Insn, 7, 1)) { in DecodeMveAddrModeQ()
4535 DecodeThumbTableBranch(MCInst &Inst, unsigned Insn, in DecodeThumbTableBranch() argument
4541 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeThumbTableBranch()
4542 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeThumbTableBranch()
4553 DecodeThumb2BCCInstruction(MCInst &Inst, unsigned Insn, in DecodeThumb2BCCInstruction() argument
4557 unsigned pred = fieldFromInstruction(Insn, 22, 4); in DecodeThumb2BCCInstruction()
4559 unsigned opc = fieldFromInstruction(Insn, 4, 28); in DecodeThumb2BCCInstruction()
4574 unsigned imm = fieldFromInstruction(Insn, 0, 4); in DecodeThumb2BCCInstruction()
4578 unsigned brtarget = fieldFromInstruction(Insn, 0, 11) << 1; in DecodeThumb2BCCInstruction()
4579 brtarget |= fieldFromInstruction(Insn, 11, 1) << 19; in DecodeThumb2BCCInstruction()
4580 brtarget |= fieldFromInstruction(Insn, 13, 1) << 18; in DecodeThumb2BCCInstruction()
4581 brtarget |= fieldFromInstruction(Insn, 16, 6) << 12; in DecodeThumb2BCCInstruction()
4582 brtarget |= fieldFromInstruction(Insn, 26, 1) << 20; in DecodeThumb2BCCInstruction()
4774 static DecodeStatus DecodeDoubleRegLoad(MCInst &Inst, unsigned Insn, in DecodeDoubleRegLoad() argument
4778 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeDoubleRegLoad()
4779 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeDoubleRegLoad()
4780 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeDoubleRegLoad()
4795 static DecodeStatus DecodeDoubleRegStore(MCInst &Inst, unsigned Insn, in DecodeDoubleRegStore() argument
4800 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeDoubleRegStore()
4801 unsigned Rt = fieldFromInstruction(Insn, 0, 4); in DecodeDoubleRegStore()
4802 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeDoubleRegStore()
4803 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeDoubleRegStore()
4821 static DecodeStatus DecodeLDRPreImm(MCInst &Inst, unsigned Insn, in DecodeLDRPreImm() argument
4825 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeLDRPreImm()
4826 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeLDRPreImm()
4827 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeLDRPreImm()
4828 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeLDRPreImm()
4829 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeLDRPreImm()
4830 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeLDRPreImm()
4846 static DecodeStatus DecodeLDRPreReg(MCInst &Inst, unsigned Insn, in DecodeLDRPreReg() argument
4850 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeLDRPreReg()
4851 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeLDRPreReg()
4852 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeLDRPreReg()
4853 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeLDRPreReg()
4854 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeLDRPreReg()
4855 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeLDRPreReg()
4856 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeLDRPreReg()
4873 static DecodeStatus DecodeSTRPreImm(MCInst &Inst, unsigned Insn, in DecodeSTRPreImm() argument
4877 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeSTRPreImm()
4878 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeSTRPreImm()
4879 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeSTRPreImm()
4880 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeSTRPreImm()
4881 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeSTRPreImm()
4882 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSTRPreImm()
4898 static DecodeStatus DecodeSTRPreReg(MCInst &Inst, unsigned Insn, in DecodeSTRPreReg() argument
4902 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeSTRPreReg()
4903 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeSTRPreReg()
4904 unsigned imm = fieldFromInstruction(Insn, 0, 12); in DecodeSTRPreReg()
4905 imm |= fieldFromInstruction(Insn, 16, 4) << 13; in DecodeSTRPreReg()
4906 imm |= fieldFromInstruction(Insn, 23, 1) << 12; in DecodeSTRPreReg()
4907 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSTRPreReg()
4923 static DecodeStatus DecodeVLD1LN(MCInst &Inst, unsigned Insn, in DecodeVLD1LN() argument
4927 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD1LN()
4928 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD1LN()
4929 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD1LN()
4930 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD1LN()
4931 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD1LN()
4939 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD1LN()
4941 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD1LN()
4944 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD1LN()
4946 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD1LN()
4947 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD1LN()
4951 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD1LN()
4953 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD1LN()
4955 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVLD1LN()
4990 static DecodeStatus DecodeVST1LN(MCInst &Inst, unsigned Insn, in DecodeVST1LN() argument
4994 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST1LN()
4995 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST1LN()
4996 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST1LN()
4997 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST1LN()
4998 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST1LN()
5006 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST1LN()
5008 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST1LN()
5011 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST1LN()
5013 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST1LN()
5014 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST1LN()
5018 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST1LN()
5020 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST1LN()
5022 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVST1LN()
5055 static DecodeStatus DecodeVLD2LN(MCInst &Inst, unsigned Insn, in DecodeVLD2LN() argument
5059 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD2LN()
5060 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD2LN()
5061 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD2LN()
5062 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD2LN()
5063 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD2LN()
5072 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD2LN()
5073 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD2LN()
5077 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD2LN()
5078 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD2LN()
5080 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD2LN()
5084 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD2LN()
5086 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD2LN()
5087 if (fieldFromInstruction(Insn, 4, 1) != 0) in DecodeVLD2LN()
5089 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD2LN()
5122 static DecodeStatus DecodeVST2LN(MCInst &Inst, unsigned Insn, in DecodeVST2LN() argument
5126 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST2LN()
5127 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST2LN()
5128 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST2LN()
5129 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST2LN()
5130 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST2LN()
5139 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST2LN()
5140 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST2LN()
5144 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST2LN()
5145 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST2LN()
5147 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST2LN()
5151 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST2LN()
5153 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST2LN()
5154 if (fieldFromInstruction(Insn, 4, 1) != 0) in DecodeVST2LN()
5156 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST2LN()
5185 static DecodeStatus DecodeVLD3LN(MCInst &Inst, unsigned Insn, in DecodeVLD3LN() argument
5189 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD3LN()
5190 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD3LN()
5191 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD3LN()
5192 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD3LN()
5193 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD3LN()
5202 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD3LN()
5204 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD3LN()
5207 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD3LN()
5209 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD3LN()
5210 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD3LN()
5214 if (fieldFromInstruction(Insn, 4, 2)) in DecodeVLD3LN()
5216 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD3LN()
5217 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD3LN()
5255 static DecodeStatus DecodeVST3LN(MCInst &Inst, unsigned Insn, in DecodeVST3LN() argument
5259 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST3LN()
5260 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST3LN()
5261 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST3LN()
5262 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST3LN()
5263 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST3LN()
5272 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST3LN()
5274 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST3LN()
5277 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST3LN()
5279 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST3LN()
5280 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST3LN()
5284 if (fieldFromInstruction(Insn, 4, 2)) in DecodeVST3LN()
5286 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST3LN()
5287 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST3LN()
5318 static DecodeStatus DecodeVLD4LN(MCInst &Inst, unsigned Insn, in DecodeVLD4LN() argument
5322 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVLD4LN()
5323 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVLD4LN()
5324 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVLD4LN()
5325 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVLD4LN()
5326 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVLD4LN()
5335 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD4LN()
5337 index = fieldFromInstruction(Insn, 5, 3); in DecodeVLD4LN()
5340 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVLD4LN()
5342 index = fieldFromInstruction(Insn, 6, 2); in DecodeVLD4LN()
5343 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVLD4LN()
5347 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVLD4LN()
5353 align = 4 << fieldFromInstruction(Insn, 4, 2); break; in DecodeVLD4LN()
5356 index = fieldFromInstruction(Insn, 7, 1); in DecodeVLD4LN()
5357 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVLD4LN()
5399 static DecodeStatus DecodeVST4LN(MCInst &Inst, unsigned Insn, in DecodeVST4LN() argument
5403 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeVST4LN()
5404 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeVST4LN()
5405 unsigned Rd = fieldFromInstruction(Insn, 12, 4); in DecodeVST4LN()
5406 Rd |= fieldFromInstruction(Insn, 22, 1) << 4; in DecodeVST4LN()
5407 unsigned size = fieldFromInstruction(Insn, 10, 2); in DecodeVST4LN()
5416 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST4LN()
5418 index = fieldFromInstruction(Insn, 5, 3); in DecodeVST4LN()
5421 if (fieldFromInstruction(Insn, 4, 1)) in DecodeVST4LN()
5423 index = fieldFromInstruction(Insn, 6, 2); in DecodeVST4LN()
5424 if (fieldFromInstruction(Insn, 5, 1)) in DecodeVST4LN()
5428 switch (fieldFromInstruction(Insn, 4, 2)) { in DecodeVST4LN()
5434 align = 4 << fieldFromInstruction(Insn, 4, 2); break; in DecodeVST4LN()
5437 index = fieldFromInstruction(Insn, 7, 1); in DecodeVST4LN()
5438 if (fieldFromInstruction(Insn, 6, 1)) in DecodeVST4LN()
5471 static DecodeStatus DecodeVMOVSRR(MCInst &Inst, unsigned Insn, in DecodeVMOVSRR() argument
5474 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeVMOVSRR()
5475 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeVMOVSRR()
5476 unsigned Rm = fieldFromInstruction(Insn, 5, 1); in DecodeVMOVSRR()
5477 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeVMOVSRR()
5478 Rm |= fieldFromInstruction(Insn, 0, 4) << 1; in DecodeVMOVSRR()
5497 static DecodeStatus DecodeVMOVRRS(MCInst &Inst, unsigned Insn, in DecodeVMOVRRS() argument
5500 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeVMOVRRS()
5501 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeVMOVRRS()
5502 unsigned Rm = fieldFromInstruction(Insn, 5, 1); in DecodeVMOVRRS()
5503 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeVMOVRRS()
5504 Rm |= fieldFromInstruction(Insn, 0, 4) << 1; in DecodeVMOVRRS()
5523 static DecodeStatus DecodeIT(MCInst &Inst, unsigned Insn, in DecodeIT() argument
5526 unsigned pred = fieldFromInstruction(Insn, 4, 4); in DecodeIT()
5527 unsigned mask = fieldFromInstruction(Insn, 0, 4); in DecodeIT()
5553 DecodeT2LDRDPreInstruction(MCInst &Inst, unsigned Insn, in DecodeT2LDRDPreInstruction() argument
5557 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2LDRDPreInstruction()
5558 unsigned Rt2 = fieldFromInstruction(Insn, 8, 4); in DecodeT2LDRDPreInstruction()
5559 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2LDRDPreInstruction()
5560 unsigned addr = fieldFromInstruction(Insn, 0, 8); in DecodeT2LDRDPreInstruction()
5561 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeT2LDRDPreInstruction()
5562 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeT2LDRDPreInstruction()
5563 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeT2LDRDPreInstruction()
5590 DecodeT2STRDPreInstruction(MCInst &Inst, unsigned Insn, in DecodeT2STRDPreInstruction() argument
5594 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeT2STRDPreInstruction()
5595 unsigned Rt2 = fieldFromInstruction(Insn, 8, 4); in DecodeT2STRDPreInstruction()
5596 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2STRDPreInstruction()
5597 unsigned addr = fieldFromInstruction(Insn, 0, 8); in DecodeT2STRDPreInstruction()
5598 unsigned W = fieldFromInstruction(Insn, 21, 1); in DecodeT2STRDPreInstruction()
5599 unsigned U = fieldFromInstruction(Insn, 23, 1); in DecodeT2STRDPreInstruction()
5600 unsigned P = fieldFromInstruction(Insn, 24, 1); in DecodeT2STRDPreInstruction()
5624 static DecodeStatus DecodeT2Adr(MCInst &Inst, uint32_t Insn, in DecodeT2Adr() argument
5626 unsigned sign1 = fieldFromInstruction(Insn, 21, 1); in DecodeT2Adr()
5627 unsigned sign2 = fieldFromInstruction(Insn, 23, 1); in DecodeT2Adr()
5629 const unsigned Rd = fieldFromInstruction(Insn, 8, 4); in DecodeT2Adr()
5633 unsigned Val = fieldFromInstruction(Insn, 0, 8); in DecodeT2Adr()
5634 Val |= fieldFromInstruction(Insn, 12, 3) << 8; in DecodeT2Adr()
5635 Val |= fieldFromInstruction(Insn, 26, 1) << 11; in DecodeT2Adr()
5661 static DecodeStatus DecodeSwap(MCInst &Inst, unsigned Insn, in DecodeSwap() argument
5663 unsigned Rt = fieldFromInstruction(Insn, 12, 4); in DecodeSwap()
5664 unsigned Rt2 = fieldFromInstruction(Insn, 0, 4); in DecodeSwap()
5665 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeSwap()
5666 unsigned pred = fieldFromInstruction(Insn, 28, 4); in DecodeSwap()
5669 return DecodeCPSInstruction(Inst, Insn, Address, Decoder); in DecodeSwap()
5688 static DecodeStatus DecodeVCVTD(MCInst &Inst, unsigned Insn, in DecodeVCVTD() argument
5694 unsigned Vd = (fieldFromInstruction(Insn, 12, 4) << 0); in DecodeVCVTD()
5695 Vd |= (fieldFromInstruction(Insn, 22, 1) << 4); in DecodeVCVTD()
5696 unsigned Vm = (fieldFromInstruction(Insn, 0, 4) << 0); in DecodeVCVTD()
5697 Vm |= (fieldFromInstruction(Insn, 5, 1) << 4); in DecodeVCVTD()
5698 unsigned imm = fieldFromInstruction(Insn, 16, 6); in DecodeVCVTD()
5699 unsigned cmode = fieldFromInstruction(Insn, 8, 4); in DecodeVCVTD()
5700 unsigned op = fieldFromInstruction(Insn, 5, 1); in DecodeVCVTD()
5733 return DecodeVMOVModImmInstruction(Inst, Insn, Address, Decoder); in DecodeVCVTD()
5747 static DecodeStatus DecodeVCVTQ(MCInst &Inst, unsigned Insn, in DecodeVCVTQ() argument
5753 unsigned Vd = (fieldFromInstruction(Insn, 12, 4) << 0); in DecodeVCVTQ()
5754 Vd |= (fieldFromInstruction(Insn, 22, 1) << 4); in DecodeVCVTQ()
5755 unsigned Vm = (fieldFromInstruction(Insn, 0, 4) << 0); in DecodeVCVTQ()
5756 Vm |= (fieldFromInstruction(Insn, 5, 1) << 4); in DecodeVCVTQ()
5757 unsigned imm = fieldFromInstruction(Insn, 16, 6); in DecodeVCVTQ()
5758 unsigned cmode = fieldFromInstruction(Insn, 8, 4); in DecodeVCVTQ()
5759 unsigned op = fieldFromInstruction(Insn, 5, 1); in DecodeVCVTQ()
5792 return DecodeVMOVModImmInstruction(Inst, Insn, Address, Decoder); in DecodeVCVTQ()
5807 unsigned Insn, in DecodeNEONComplexLane64Instruction() argument
5810 unsigned Vd = (fieldFromInstruction(Insn, 12, 4) << 0); in DecodeNEONComplexLane64Instruction()
5811 Vd |= (fieldFromInstruction(Insn, 22, 1) << 4); in DecodeNEONComplexLane64Instruction()
5812 unsigned Vn = (fieldFromInstruction(Insn, 16, 4) << 0); in DecodeNEONComplexLane64Instruction()
5813 Vn |= (fieldFromInstruction(Insn, 7, 1) << 4); in DecodeNEONComplexLane64Instruction()
5814 unsigned Vm = (fieldFromInstruction(Insn, 0, 4) << 0); in DecodeNEONComplexLane64Instruction()
5815 Vm |= (fieldFromInstruction(Insn, 5, 1) << 4); in DecodeNEONComplexLane64Instruction()
5816 unsigned q = (fieldFromInstruction(Insn, 6, 1) << 0); in DecodeNEONComplexLane64Instruction()
5817 unsigned rotate = (fieldFromInstruction(Insn, 20, 2) << 0); in DecodeNEONComplexLane64Instruction()
6003 static DecodeStatus DecodeLOLoop(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeLOLoop() argument
6010 unsigned Imm = fieldFromInstruction(Insn, 11, 1) | in DecodeLOLoop()
6011 fieldFromInstruction(Insn, 1, 10) << 1; in DecodeLOLoop()
6030 DecoderGPRRegisterClass(Inst, fieldFromInstruction(Insn, 16, 4), in DecodeLOLoop()
6041 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeLOLoop()
6047 if ((Insn & ~SBZMask) != CanonicalLCTP) in DecodeLOLoop()
6049 if (Insn != CanonicalLCTP) in DecodeLOLoop()
6056 fieldFromInstruction(Insn, 16, 4), in DecodeLOLoop()
6115 static DecodeStatus DecodeVSCCLRM(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeVSCCLRM() argument
6122 unsigned reglist = (fieldFromInstruction(Insn, 1, 7) << 1) | in DecodeVSCCLRM()
6123 (fieldFromInstruction(Insn, 12, 4) << 8) | in DecodeVSCCLRM()
6124 (fieldFromInstruction(Insn, 22, 1) << 12); in DecodeVSCCLRM()
6129 unsigned reglist = fieldFromInstruction(Insn, 0, 8) | in DecodeVSCCLRM()
6130 (fieldFromInstruction(Insn, 22, 1) << 8) | in DecodeVSCCLRM()
6131 (fieldFromInstruction(Insn, 12, 4) << 9); in DecodeVSCCLRM()
6453 static DecodeStatus DecodeMVEVMOVQtoDReg(MCInst &Inst, unsigned Insn, in DecodeMVEVMOVQtoDReg() argument
6456 unsigned Rt = fieldFromInstruction(Insn, 0, 4); in DecodeMVEVMOVQtoDReg()
6457 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeMVEVMOVQtoDReg()
6458 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEVMOVQtoDReg()
6459 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEVMOVQtoDReg()
6460 unsigned index = fieldFromInstruction(Insn, 4, 1); in DecodeMVEVMOVQtoDReg()
6476 static DecodeStatus DecodeMVEVMOVDRegtoQ(MCInst &Inst, unsigned Insn, in DecodeMVEVMOVDRegtoQ() argument
6479 unsigned Rt = fieldFromInstruction(Insn, 0, 4); in DecodeMVEVMOVDRegtoQ()
6480 unsigned Rt2 = fieldFromInstruction(Insn, 16, 4); in DecodeMVEVMOVDRegtoQ()
6481 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEVMOVDRegtoQ()
6482 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEVMOVDRegtoQ()
6483 unsigned index = fieldFromInstruction(Insn, 4, 1); in DecodeMVEVMOVDRegtoQ()
6502 MCInst &Inst, unsigned Insn, uint64_t Address, const void *Decoder) { in DecodeMVEOverlappingLongShift() argument
6505 unsigned RdaLo = fieldFromInstruction(Insn, 17, 3) << 1; in DecodeMVEOverlappingLongShift()
6506 unsigned RdaHi = fieldFromInstruction(Insn, 9, 3) << 1; in DecodeMVEOverlappingLongShift()
6507 unsigned Rm = fieldFromInstruction(Insn, 12, 4); in DecodeMVEOverlappingLongShift()
6515 unsigned Rda = fieldFromInstruction(Insn, 16, 4); in DecodeMVEOverlappingLongShift()
6542 if (fieldFromInstruction (Insn, 6, 3) != 4) in DecodeMVEOverlappingLongShift()
6572 unsigned Saturate = fieldFromInstruction(Insn, 7, 1); in DecodeMVEOverlappingLongShift()
6580 static DecodeStatus DecodeMVEVCVTt1fp(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMVEVCVTt1fp() argument
6583 unsigned Qd = ((fieldFromInstruction(Insn, 22, 1) << 3) | in DecodeMVEVCVTt1fp()
6584 fieldFromInstruction(Insn, 13, 3)); in DecodeMVEVCVTt1fp()
6585 unsigned Qm = ((fieldFromInstruction(Insn, 5, 1) << 3) | in DecodeMVEVCVTt1fp()
6586 fieldFromInstruction(Insn, 1, 3)); in DecodeMVEVCVTt1fp()
6587 unsigned imm6 = fieldFromInstruction(Insn, 16, 6); in DecodeMVEVCVTt1fp()
6600 static DecodeStatus DecodeMVEVCMP(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMVEVCMP() argument
6604 unsigned Qn = fieldFromInstruction(Insn, 17, 3); in DecodeMVEVCMP()
6611 fc = fieldFromInstruction(Insn, 12, 1) << 2 | in DecodeMVEVCMP()
6612 fieldFromInstruction(Insn, 7, 1) | in DecodeMVEVCMP()
6613 fieldFromInstruction(Insn, 5, 1) << 1; in DecodeMVEVCMP()
6614 unsigned Rm = fieldFromInstruction(Insn, 0, 4); in DecodeMVEVCMP()
6618 fc = fieldFromInstruction(Insn, 12, 1) << 2 | in DecodeMVEVCMP()
6619 fieldFromInstruction(Insn, 7, 1) | in DecodeMVEVCMP()
6620 fieldFromInstruction(Insn, 0, 1) << 1; in DecodeMVEVCMP()
6621 unsigned Qm = fieldFromInstruction(Insn, 5, 1) << 4 | in DecodeMVEVCMP()
6622 fieldFromInstruction(Insn, 1, 3); in DecodeMVEVCMP()
6637 static DecodeStatus DecodeMveVCTP(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMveVCTP() argument
6641 unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeMveVCTP()
6647 static DecodeStatus DecodeMVEVPNOT(MCInst &Inst, unsigned Insn, uint64_t Address, in DecodeMVEVPNOT() argument
6655 static DecodeStatus DecodeT2AddSubSPImm(MCInst &Inst, unsigned Insn, in DecodeT2AddSubSPImm() argument
6657 const unsigned Rd = fieldFromInstruction(Insn, 8, 4); in DecodeT2AddSubSPImm()
6658 const unsigned Rn = fieldFromInstruction(Insn, 16, 4); in DecodeT2AddSubSPImm()
6659 const unsigned Imm12 = fieldFromInstruction(Insn, 26, 1) << 11 | in DecodeT2AddSubSPImm()
6660 fieldFromInstruction(Insn, 12, 3) << 8 | in DecodeT2AddSubSPImm()
6661 fieldFromInstruction(Insn, 0, 8); in DecodeT2AddSubSPImm()
6662 const unsigned TypeT3 = fieldFromInstruction(Insn, 25, 1); in DecodeT2AddSubSPImm()
6663 unsigned sign1 = fieldFromInstruction(Insn, 21, 1); in DecodeT2AddSubSPImm()
6664 unsigned sign2 = fieldFromInstruction(Insn, 23, 1); in DecodeT2AddSubSPImm()
6665 unsigned S = fieldFromInstruction(Insn, 20, 1); in DecodeT2AddSubSPImm()