mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-10 05:48:59 +02:00
* added some missing instructions and aliases, reordered them according
to how they appear in the ARM ARM o in particular, added the "unscaled offset" variants of instructions as separate opcodes (seems simpler than handling them as postfixes) git-svn-id: trunk@29832 -
This commit is contained in:
parent
f1b619a942
commit
c0548cadb0
@ -1,15 +1,37 @@
|
||||
{ don't edit, this file is generated from armins.dat }
|
||||
(
|
||||
'nop',
|
||||
'none',
|
||||
'b',
|
||||
'cb',
|
||||
'tb',
|
||||
'cbz',
|
||||
'cbnz',
|
||||
'tbz',
|
||||
'tbnz',
|
||||
'bl',
|
||||
'blr',
|
||||
'br',
|
||||
'ret',
|
||||
'brk',
|
||||
'hlt',
|
||||
'hvc',
|
||||
'smc',
|
||||
'svc',
|
||||
'eret',
|
||||
'dcps1',
|
||||
'dcps2',
|
||||
'dcps3',
|
||||
'drps',
|
||||
'dc',
|
||||
'at',
|
||||
'tlbi',
|
||||
'hint',
|
||||
'clrex',
|
||||
'dsb',
|
||||
'dmb',
|
||||
'isb',
|
||||
'ldr',
|
||||
'str',
|
||||
'ldur',
|
||||
'stur',
|
||||
'ldp',
|
||||
'stp',
|
||||
'ldnp',
|
||||
@ -17,40 +39,66 @@
|
||||
'ldtr',
|
||||
'sttr',
|
||||
'ldxr',
|
||||
'ldxp',
|
||||
'stxr',
|
||||
'stxp',
|
||||
'ldar',
|
||||
'stlr',
|
||||
'ldaxr',
|
||||
'stlxr',
|
||||
'stlxp',
|
||||
'ld1',
|
||||
'ld2',
|
||||
'ld3',
|
||||
'ld4',
|
||||
'st1',
|
||||
'st2',
|
||||
'st3',
|
||||
'st4',
|
||||
'ld1r',
|
||||
'ld2r',
|
||||
'ld3r',
|
||||
'ld4r',
|
||||
'prfm',
|
||||
'prfum',
|
||||
'add',
|
||||
'adc',
|
||||
'sub',
|
||||
'sbc',
|
||||
'cmp',
|
||||
'cmn',
|
||||
'mov',
|
||||
'and',
|
||||
'bic',
|
||||
'eor',
|
||||
'eon',
|
||||
'orr',
|
||||
'orn',
|
||||
'tst',
|
||||
'mvn',
|
||||
'movz',
|
||||
'movn',
|
||||
'movk',
|
||||
'mrs',
|
||||
'msr',
|
||||
'adrp',
|
||||
'adr',
|
||||
'bfm',
|
||||
'sbfm',
|
||||
'ubfm',
|
||||
'extr',
|
||||
'sxt',
|
||||
'uxt',
|
||||
'adc',
|
||||
'sbc',
|
||||
'bic',
|
||||
'eon',
|
||||
'asrv',
|
||||
'llslv',
|
||||
'lslv',
|
||||
'lsrv',
|
||||
'rorv',
|
||||
'madd',
|
||||
'msub',
|
||||
'smaddl',
|
||||
'smsubl',
|
||||
'smulh',
|
||||
'umaddl',
|
||||
'umsubl',
|
||||
'umulh',
|
||||
'sdiv',
|
||||
'udiv',
|
||||
'cls',
|
||||
'clz',
|
||||
'rbit',
|
||||
@ -63,33 +111,39 @@
|
||||
'csneg',
|
||||
'ccmn',
|
||||
'ccmp',
|
||||
'madd',
|
||||
'msub',
|
||||
'smaddl',
|
||||
'smsubl',
|
||||
'smulh',
|
||||
'umaddl',
|
||||
'umsubl',
|
||||
'umulh',
|
||||
'sdiv',
|
||||
'udiv',
|
||||
'neg',
|
||||
'nop',
|
||||
'yield',
|
||||
'wfe',
|
||||
'wfi',
|
||||
'sev',
|
||||
'sevl',
|
||||
'mov',
|
||||
'bfi',
|
||||
'bfxil',
|
||||
'sbfiz',
|
||||
'sbfx',
|
||||
'ubfiz',
|
||||
'ubfx',
|
||||
'asr',
|
||||
'lsl',
|
||||
'lsr',
|
||||
'ror',
|
||||
'cset',
|
||||
'csetm',
|
||||
'cinc',
|
||||
'cinv',
|
||||
'cneg',
|
||||
'sxt',
|
||||
'uxt',
|
||||
'neg',
|
||||
'ngc',
|
||||
'mvn',
|
||||
'mneg',
|
||||
'mul',
|
||||
'smnegl',
|
||||
'smull',
|
||||
'umnegl',
|
||||
'umull',
|
||||
'cset',
|
||||
'csetm',
|
||||
'cinc',
|
||||
'cinv',
|
||||
'cneg',
|
||||
'fmov',
|
||||
'fcvt',
|
||||
'fcvtas',
|
||||
@ -104,13 +158,13 @@
|
||||
'fcvtzu',
|
||||
'scvtf',
|
||||
'ucvtf',
|
||||
'fprinta',
|
||||
'fprinti',
|
||||
'fprintm',
|
||||
'fprintn',
|
||||
'fprintp',
|
||||
'fprintx',
|
||||
'fprintz',
|
||||
'frinta',
|
||||
'frinti',
|
||||
'frintm',
|
||||
'frintn',
|
||||
'frintp',
|
||||
'frintx',
|
||||
'frintz',
|
||||
'fabs',
|
||||
'fneg',
|
||||
'fsqrt',
|
||||
@ -130,5 +184,8 @@
|
||||
'fcmpe',
|
||||
'fccmp',
|
||||
'fcmmpe',
|
||||
'fcsel'
|
||||
'fcsel',
|
||||
'umov',
|
||||
'ins',
|
||||
'movi'
|
||||
);
|
||||
|
@ -130,5 +130,62 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE
|
||||
);
|
||||
|
@ -1,10 +1,15 @@
|
||||
[NOP]
|
||||
; invalid
|
||||
[NONE]
|
||||
|
||||
[B]
|
||||
|
||||
[CB]
|
||||
[CBZ]
|
||||
|
||||
[TB]
|
||||
[CBNZ]
|
||||
|
||||
[TBZ]
|
||||
|
||||
[TBNZ]
|
||||
|
||||
[BL]
|
||||
|
||||
@ -14,10 +19,50 @@
|
||||
|
||||
[RET]
|
||||
|
||||
[BRK]
|
||||
|
||||
[HLT]
|
||||
|
||||
[HVC]
|
||||
|
||||
[SMC]
|
||||
|
||||
[SVC]
|
||||
|
||||
[ERET]
|
||||
|
||||
[DCPS1]
|
||||
|
||||
[DCPS2]
|
||||
|
||||
[DCPS3]
|
||||
|
||||
[DRPS]
|
||||
|
||||
[DC]
|
||||
|
||||
[AT]
|
||||
|
||||
[TLBI]
|
||||
|
||||
[HINT]
|
||||
|
||||
[CLREX]
|
||||
|
||||
[DSB]
|
||||
|
||||
[DMB]
|
||||
|
||||
[ISB]
|
||||
|
||||
[LDR]
|
||||
|
||||
[STR]
|
||||
|
||||
[LDUR]
|
||||
|
||||
[STUR]
|
||||
|
||||
[LDP]
|
||||
|
||||
[STP]
|
||||
@ -32,8 +77,12 @@
|
||||
|
||||
[LDXR]
|
||||
|
||||
[LDXP]
|
||||
|
||||
[STXR]
|
||||
|
||||
[STXP]
|
||||
|
||||
[LDAR]
|
||||
|
||||
[STLR]
|
||||
@ -42,40 +91,64 @@
|
||||
|
||||
[STLXR]
|
||||
|
||||
[STLXP]
|
||||
|
||||
[LD1]
|
||||
|
||||
[LD2]
|
||||
|
||||
[LD3]
|
||||
|
||||
[LD4]
|
||||
|
||||
[ST1]
|
||||
|
||||
[ST2]
|
||||
|
||||
[ST3]
|
||||
|
||||
[ST4]
|
||||
|
||||
[LD1R]
|
||||
|
||||
[LD2R]
|
||||
|
||||
[LD3R]
|
||||
|
||||
[LD4R]
|
||||
|
||||
[PRFM]
|
||||
|
||||
[PRFUM]
|
||||
|
||||
[ADD]
|
||||
|
||||
[ADC]
|
||||
|
||||
[SUB]
|
||||
|
||||
[SBC]
|
||||
|
||||
[CMP]
|
||||
|
||||
[CMN]
|
||||
|
||||
[MOV]
|
||||
|
||||
[AND]
|
||||
|
||||
[BIC]
|
||||
|
||||
[EOR]
|
||||
|
||||
[EON]
|
||||
|
||||
[ORR]
|
||||
|
||||
[ORN]
|
||||
|
||||
[TST]
|
||||
|
||||
[MVN]
|
||||
[MOVZ]
|
||||
|
||||
[MOVN]
|
||||
|
||||
[MOVK]
|
||||
|
||||
[MRS]
|
||||
|
||||
[MSR]
|
||||
|
||||
[ADRP]
|
||||
|
||||
[ADR]
|
||||
@ -88,18 +161,42 @@
|
||||
|
||||
[EXTR]
|
||||
|
||||
[SXT]
|
||||
[ADC]
|
||||
|
||||
[UXT]
|
||||
[SBC]
|
||||
|
||||
[BIC]
|
||||
|
||||
[EON]
|
||||
|
||||
[ASRV]
|
||||
|
||||
[LLSLV]
|
||||
[LSLV]
|
||||
|
||||
[LSRV]
|
||||
|
||||
[RORV]
|
||||
|
||||
[MADD]
|
||||
|
||||
[MSUB]
|
||||
|
||||
[SMADDL]
|
||||
|
||||
[SMSUBL]
|
||||
|
||||
[SMULH]
|
||||
|
||||
[UMADDL]
|
||||
|
||||
[UMSUBL]
|
||||
|
||||
[UMULH]
|
||||
|
||||
[SDIV]
|
||||
|
||||
[UDIV]
|
||||
|
||||
[CLS]
|
||||
|
||||
[CLZ]
|
||||
@ -124,29 +221,33 @@
|
||||
|
||||
[CCMP]
|
||||
|
||||
[MADD]
|
||||
|
||||
[MSUB]
|
||||
|
||||
[SMADDL]
|
||||
|
||||
[SMSUBL]
|
||||
|
||||
[SMULH]
|
||||
|
||||
[UMADDL]
|
||||
|
||||
[UMSUBL]
|
||||
|
||||
[UMULH]
|
||||
|
||||
[SDIV]
|
||||
|
||||
[UDIV]
|
||||
|
||||
; Aliases
|
||||
; they are not generated by the compiler, they are only used for inline assembler
|
||||
[NEG]
|
||||
[NOP]
|
||||
|
||||
[YIELD]
|
||||
|
||||
[WFE]
|
||||
|
||||
[WFI]
|
||||
|
||||
[SEV]
|
||||
|
||||
[SEVL]
|
||||
|
||||
[MOV]
|
||||
|
||||
[BFI]
|
||||
|
||||
[BFXIL]
|
||||
|
||||
[SBFIZ]
|
||||
|
||||
[SBFX]
|
||||
|
||||
[UBFIZ]
|
||||
|
||||
[UBFX]
|
||||
|
||||
[ASR]
|
||||
|
||||
@ -156,18 +257,16 @@
|
||||
|
||||
[ROR]
|
||||
|
||||
[CSET]
|
||||
[SXT]
|
||||
|
||||
[CSETM]
|
||||
[UXT]
|
||||
|
||||
[CINC]
|
||||
|
||||
[CINV]
|
||||
|
||||
[CNEG]
|
||||
[NEG]
|
||||
|
||||
[NGC]
|
||||
|
||||
[MVN]
|
||||
|
||||
[MNEG]
|
||||
|
||||
[MUL]
|
||||
@ -180,6 +279,16 @@
|
||||
|
||||
[UMULL]
|
||||
|
||||
[CSET]
|
||||
|
||||
[CSETM]
|
||||
|
||||
[CINC]
|
||||
|
||||
[CINV]
|
||||
|
||||
[CNEG]
|
||||
|
||||
[FMOV]
|
||||
|
||||
[FCVT]
|
||||
@ -208,19 +317,19 @@
|
||||
|
||||
[UCVTF]
|
||||
|
||||
[FPRINTA]
|
||||
[FRINTA]
|
||||
|
||||
[FPRINTI]
|
||||
[FRINTI]
|
||||
|
||||
[FPRINTM]
|
||||
[FRINTM]
|
||||
|
||||
[FPRINTN]
|
||||
[FRINTN]
|
||||
|
||||
[FPRINTP]
|
||||
[FRINTP]
|
||||
|
||||
[FPRINTX]
|
||||
[FRINTX]
|
||||
|
||||
[FPRINTZ]
|
||||
[FRINTZ]
|
||||
|
||||
[FABS]
|
||||
|
||||
@ -262,3 +371,8 @@
|
||||
|
||||
[FCSEL]
|
||||
|
||||
[UMOV]
|
||||
|
||||
[INS]
|
||||
|
||||
[MOVI]
|
||||
|
@ -1,15 +1,37 @@
|
||||
{ don't edit, this file is generated from armins.dat }
|
||||
(
|
||||
A_NOP,
|
||||
A_NONE,
|
||||
A_B,
|
||||
A_CB,
|
||||
A_TB,
|
||||
A_CBZ,
|
||||
A_CBNZ,
|
||||
A_TBZ,
|
||||
A_TBNZ,
|
||||
A_BL,
|
||||
A_BLR,
|
||||
A_BR,
|
||||
A_RET,
|
||||
A_BRK,
|
||||
A_HLT,
|
||||
A_HVC,
|
||||
A_SMC,
|
||||
A_SVC,
|
||||
A_ERET,
|
||||
A_DCPS1,
|
||||
A_DCPS2,
|
||||
A_DCPS3,
|
||||
A_DRPS,
|
||||
A_DC,
|
||||
A_AT,
|
||||
A_TLBI,
|
||||
A_HINT,
|
||||
A_CLREX,
|
||||
A_DSB,
|
||||
A_DMB,
|
||||
A_ISB,
|
||||
A_LDR,
|
||||
A_STR,
|
||||
A_LDUR,
|
||||
A_STUR,
|
||||
A_LDP,
|
||||
A_STP,
|
||||
A_LDNP,
|
||||
@ -17,40 +39,66 @@ A_STNP,
|
||||
A_LDTR,
|
||||
A_STTR,
|
||||
A_LDXR,
|
||||
A_LDXP,
|
||||
A_STXR,
|
||||
A_STXP,
|
||||
A_LDAR,
|
||||
A_STLR,
|
||||
A_LDAXR,
|
||||
A_STLXR,
|
||||
A_STLXP,
|
||||
A_LD1,
|
||||
A_LD2,
|
||||
A_LD3,
|
||||
A_LD4,
|
||||
A_ST1,
|
||||
A_ST2,
|
||||
A_ST3,
|
||||
A_ST4,
|
||||
A_LD1R,
|
||||
A_LD2R,
|
||||
A_LD3R,
|
||||
A_LD4R,
|
||||
A_PRFM,
|
||||
A_PRFUM,
|
||||
A_ADD,
|
||||
A_ADC,
|
||||
A_SUB,
|
||||
A_SBC,
|
||||
A_CMP,
|
||||
A_CMN,
|
||||
A_MOV,
|
||||
A_AND,
|
||||
A_BIC,
|
||||
A_EOR,
|
||||
A_EON,
|
||||
A_ORR,
|
||||
A_ORN,
|
||||
A_TST,
|
||||
A_MVN,
|
||||
A_MOVZ,
|
||||
A_MOVN,
|
||||
A_MOVK,
|
||||
A_MRS,
|
||||
A_MSR,
|
||||
A_ADRP,
|
||||
A_ADR,
|
||||
A_BFM,
|
||||
A_SBFM,
|
||||
A_UBFM,
|
||||
A_EXTR,
|
||||
A_SXT,
|
||||
A_UXT,
|
||||
A_ADC,
|
||||
A_SBC,
|
||||
A_BIC,
|
||||
A_EON,
|
||||
A_ASRV,
|
||||
A_LLSLV,
|
||||
A_LSLV,
|
||||
A_LSRV,
|
||||
A_RORV,
|
||||
A_MADD,
|
||||
A_MSUB,
|
||||
A_SMADDL,
|
||||
A_SMSUBL,
|
||||
A_SMULH,
|
||||
A_UMADDL,
|
||||
A_UMSUBL,
|
||||
A_UMULH,
|
||||
A_SDIV,
|
||||
A_UDIV,
|
||||
A_CLS,
|
||||
A_CLZ,
|
||||
A_RBIT,
|
||||
@ -63,33 +111,39 @@ A_CSINV,
|
||||
A_CSNEG,
|
||||
A_CCMN,
|
||||
A_CCMP,
|
||||
A_MADD,
|
||||
A_MSUB,
|
||||
A_SMADDL,
|
||||
A_SMSUBL,
|
||||
A_SMULH,
|
||||
A_UMADDL,
|
||||
A_UMSUBL,
|
||||
A_UMULH,
|
||||
A_SDIV,
|
||||
A_UDIV,
|
||||
A_NEG,
|
||||
A_NOP,
|
||||
A_YIELD,
|
||||
A_WFE,
|
||||
A_WFI,
|
||||
A_SEV,
|
||||
A_SEVL,
|
||||
A_MOV,
|
||||
A_BFI,
|
||||
A_BFXIL,
|
||||
A_SBFIZ,
|
||||
A_SBFX,
|
||||
A_UBFIZ,
|
||||
A_UBFX,
|
||||
A_ASR,
|
||||
A_LSL,
|
||||
A_LSR,
|
||||
A_ROR,
|
||||
A_CSET,
|
||||
A_CSETM,
|
||||
A_CINC,
|
||||
A_CINV,
|
||||
A_CNEG,
|
||||
A_SXT,
|
||||
A_UXT,
|
||||
A_NEG,
|
||||
A_NGC,
|
||||
A_MVN,
|
||||
A_MNEG,
|
||||
A_MUL,
|
||||
A_SMNEGL,
|
||||
A_SMULL,
|
||||
A_UMNEGL,
|
||||
A_UMULL,
|
||||
A_CSET,
|
||||
A_CSETM,
|
||||
A_CINC,
|
||||
A_CINV,
|
||||
A_CNEG,
|
||||
A_FMOV,
|
||||
A_FCVT,
|
||||
A_FCVTAS,
|
||||
@ -104,13 +158,13 @@ A_FCVTZS,
|
||||
A_FCVTZU,
|
||||
A_SCVTF,
|
||||
A_UCVTF,
|
||||
A_FPRINTA,
|
||||
A_FPRINTI,
|
||||
A_FPRINTM,
|
||||
A_FPRINTN,
|
||||
A_FPRINTP,
|
||||
A_FPRINTX,
|
||||
A_FPRINTZ,
|
||||
A_FRINTA,
|
||||
A_FRINTI,
|
||||
A_FRINTM,
|
||||
A_FRINTN,
|
||||
A_FRINTP,
|
||||
A_FRINTX,
|
||||
A_FRINTZ,
|
||||
A_FABS,
|
||||
A_FNEG,
|
||||
A_FSQRT,
|
||||
@ -130,5 +184,8 @@ A_FCMP,
|
||||
A_FCMPE,
|
||||
A_FCCMP,
|
||||
A_FCMMPE,
|
||||
A_FCSEL
|
||||
A_FCSEL,
|
||||
A_UMOV,
|
||||
A_INS,
|
||||
A_MOVI
|
||||
);
|
||||
|
Loading…
Reference in New Issue
Block a user