# A32 conditional instructions
#
#  Copyright (c) 2019 Linaro, Ltd
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, see <http://www.gnu.org/licenses/>.

#
# This file is processed by scripts/decodetree.py
#
# All of the insn that have a COND field in insn[31:28] are here.
# All insns that have 0xf in insn[31:28] are in a32-uncond.decode.
#

&empty
&s_rrr_shi       s rd rn rm shim shty
&s_rrr_shr       s rn rd rm rs shty
&s_rri_rot       s rn rd imm rot
&s_rrrr          s rd rn rm ra
&rrrr            rd rn rm ra
&rrr_rot         rd rn rm rot
&rrr             rd rn rm
&rr              rd rm
&ri              rd imm
&r               rm
&i               imm
&msr_reg         rn r mask
&mrs_reg         rd r
&msr_bank        rn r sysm
&mrs_bank        rd r sysm
&ldst_rr         p w u rn rt rm shimm shtype
&ldst_ri         p w u rn rt imm
&ldst_block      rn i b u w list
&strex           rn rd rt rt2 imm
&ldrex           rn rt rt2 imm
&bfx             rd rn lsb widthm1
&bfi             rd rn lsb msb
&sat             rd rn satimm imm sh
&pkh             rd rn rm imm tb
&mcr             cp opc1 crn crm opc2 rt
&mcrr            cp opc1 crm rt rt2

# Data-processing (register)

@s_rrr_shi       ---- ... .... s:1 rn:4 rd:4 shim:5 shty:2 . rm:4 \
                 &s_rrr_shi
@s_rxr_shi       ---- ... .... s:1 .... rd:4 shim:5 shty:2 . rm:4 \
                 &s_rrr_shi rn=0
@S_xrr_shi       ---- ... .... .   rn:4 .... shim:5 shty:2 . rm:4 \
                 &s_rrr_shi s=1 rd=0

AND_rrri         .... 000 0000 . .... .... ..... .. 0 ....    @s_rrr_shi
EOR_rrri         .... 000 0001 . .... .... ..... .. 0 ....    @s_rrr_shi
SUB_rrri         .... 000 0010 . .... .... ..... .. 0 ....    @s_rrr_shi
RSB_rrri         .... 000 0011 . .... .... ..... .. 0 ....    @s_rrr_shi
ADD_rrri         .... 000 0100 . .... .... ..... .. 0 ....    @s_rrr_shi
ADC_rrri         .... 000 0101 . .... .... ..... .. 0 ....    @s_rrr_shi
SBC_rrri         .... 000 0110 . .... .... ..... .. 0 ....    @s_rrr_shi
RSC_rrri         .... 000 0111 . .... .... ..... .. 0 ....    @s_rrr_shi
TST_xrri         .... 000 1000 1 .... 0000 ..... .. 0 ....    @S_xrr_shi
TEQ_xrri         .... 000 1001 1 .... 0000 ..... .. 0 ....    @S_xrr_shi
CMP_xrri         .... 000 1010 1 .... 0000 ..... .. 0 ....    @S_xrr_shi
CMN_xrri         .... 000 1011 1 .... 0000 ..... .. 0 ....    @S_xrr_shi
ORR_rrri         .... 000 1100 . .... .... ..... .. 0 ....    @s_rrr_shi
MOV_rxri         .... 000 1101 . 0000 .... ..... .. 0 ....    @s_rxr_shi
BIC_rrri         .... 000 1110 . .... .... ..... .. 0 ....    @s_rrr_shi
MVN_rxri         .... 000 1111 . 0000 .... ..... .. 0 ....    @s_rxr_shi

%imm16           16:4 0:12
@mov16           ---- .... .... .... rd:4 ............        &ri imm=%imm16

MOVW             .... 0011 0000 .... .... ............        @mov16
MOVT             .... 0011 0100 .... .... ............        @mov16

# Data-processing (register-shifted register)

@s_rrr_shr       ---- ... .... s:1 rn:4 rd:4 rs:4 . shty:2 . rm:4 \
                 &s_rrr_shr
@s_rxr_shr       ---- ... .... s:1 .... rd:4 rs:4 . shty:2 . rm:4 \
                 &s_rrr_shr rn=0
@S_xrr_shr       ---- ... .... .   rn:4 .... rs:4 . shty:2 . rm:4 \
                 &s_rrr_shr rd=0 s=1

AND_rrrr         .... 000 0000 . .... .... .... 0 .. 1 ....   @s_rrr_shr
EOR_rrrr         .... 000 0001 . .... .... .... 0 .. 1 ....   @s_rrr_shr
SUB_rrrr         .... 000 0010 . .... .... .... 0 .. 1 ....   @s_rrr_shr
RSB_rrrr         .... 000 0011 . .... .... .... 0 .. 1 ....   @s_rrr_shr
ADD_rrrr         .... 000 0100 . .... .... .... 0 .. 1 ....   @s_rrr_shr
ADC_rrrr         .... 000 0101 . .... .... .... 0 .. 1 ....   @s_rrr_shr
SBC_rrrr         .... 000 0110 . .... .... .... 0 .. 1 ....   @s_rrr_shr
RSC_rrrr         .... 000 0111 . .... .... .... 0 .. 1 ....   @s_rrr_shr
TST_xrrr         .... 000 1000 1 .... 0000 .... 0 .. 1 ....   @S_xrr_shr
TEQ_xrrr         .... 000 1001 1 .... 0000 .... 0 .. 1 ....   @S_xrr_shr
CMP_xrrr         .... 000 1010 1 .... 0000 .... 0 .. 1 ....   @S_xrr_shr
CMN_xrrr         .... 000 1011 1 .... 0000 .... 0 .. 1 ....   @S_xrr_shr
ORR_rrrr         .... 000 1100 . .... .... .... 0 .. 1 ....   @s_rrr_shr
MOV_rxrr         .... 000 1101 . 0000 .... .... 0 .. 1 ....   @s_rxr_shr
BIC_rrrr         .... 000 1110 . .... .... .... 0 .. 1 ....   @s_rrr_shr
MVN_rxrr         .... 000 1111 . 0000 .... .... 0 .. 1 ....   @s_rxr_shr

# Data-processing (immediate)

%a32extrot       8:4 !function=times_2

@s_rri_rot       ---- ... .... s:1 rn:4 rd:4 .... imm:8 \
                 &s_rri_rot rot=%a32extrot
@s_rxi_rot       ---- ... .... s:1 .... rd:4 .... imm:8 \
                 &s_rri_rot rot=%a32extrot rn=0
@S_xri_rot       ---- ... .... .   rn:4 .... .... imm:8 \
                 &s_rri_rot rot=%a32extrot rd=0 s=1

AND_rri          .... 001 0000 . .... .... ............       @s_rri_rot
EOR_rri          .... 001 0001 . .... .... ............       @s_rri_rot
SUB_rri          .... 001 0010 . .... .... ............       @s_rri_rot
RSB_rri          .... 001 0011 . .... .... ............       @s_rri_rot
ADD_rri          .... 001 0100 . .... .... ............       @s_rri_rot
ADC_rri          .... 001 0101 . .... .... ............       @s_rri_rot
SBC_rri          .... 001 0110 . .... .... ............       @s_rri_rot
RSC_rri          .... 001 0111 . .... .... ............       @s_rri_rot
TST_xri          .... 001 1000 1 .... 0000 ............       @S_xri_rot
TEQ_xri          .... 001 1001 1 .... 0000 ............       @S_xri_rot
CMP_xri          .... 001 1010 1 .... 0000 ............       @S_xri_rot
CMN_xri          .... 001 1011 1 .... 0000 ............       @S_xri_rot
ORR_rri          .... 001 1100 . .... .... ............       @s_rri_rot
MOV_rxi          .... 001 1101 . 0000 .... ............       @s_rxi_rot
BIC_rri          .... 001 1110 . .... .... ............       @s_rri_rot
MVN_rxi          .... 001 1111 . 0000 .... ............       @s_rxi_rot

# Multiply and multiply accumulate

@s_rdamn         ---- .... ... s:1 rd:4 ra:4 rm:4 .... rn:4   &s_rrrr
@s_rd0mn         ---- .... ... s:1 rd:4 .... rm:4 .... rn:4   &s_rrrr ra=0
@rdamn           ---- .... ... .   rd:4 ra:4 rm:4 .... rn:4   &rrrr
@rd0mn           ---- .... ... .   rd:4 .... rm:4 .... rn:4   &rrrr ra=0

MUL              .... 0000 000 . .... 0000 .... 1001 ....     @s_rd0mn
MLA              .... 0000 001 . .... .... .... 1001 ....     @s_rdamn
UMAAL            .... 0000 010 0 .... .... .... 1001 ....     @rdamn
MLS              .... 0000 011 0 .... .... .... 1001 ....     @rdamn
UMULL            .... 0000 100 . .... .... .... 1001 ....     @s_rdamn
UMLAL            .... 0000 101 . .... .... .... 1001 ....     @s_rdamn
SMULL            .... 0000 110 . .... .... .... 1001 ....     @s_rdamn
SMLAL            .... 0000 111 . .... .... .... 1001 ....     @s_rdamn

# Saturating addition and subtraction

@rndm            ---- .... .... rn:4 rd:4 .... .... rm:4      &rrr

QADD             .... 0001 0000 .... .... 0000 0101 ....      @rndm
QSUB             .... 0001 0010 .... .... 0000 0101 ....      @rndm
QDADD            .... 0001 0100 .... .... 0000 0101 ....      @rndm
QDSUB            .... 0001 0110 .... .... 0000 0101 ....      @rndm

# Halfword multiply and multiply accumulate

SMLABB           .... 0001 0000 .... .... .... 1000 ....      @rdamn
SMLABT           .... 0001 0000 .... .... .... 1100 ....      @rdamn
SMLATB           .... 0001 0000 .... .... .... 1010 ....      @rdamn
SMLATT           .... 0001 0000 .... .... .... 1110 ....      @rdamn
SMLAWB           .... 0001 0010 .... .... .... 1000 ....      @rdamn
SMULWB           .... 0001 0010 .... 0000 .... 1010 ....      @rd0mn
SMLAWT           .... 0001 0010 .... .... .... 1100 ....      @rdamn
SMULWT           .... 0001 0010 .... 0000 .... 1110 ....      @rd0mn
SMLALBB          .... 0001 0100 .... .... .... 1000 ....      @rdamn
SMLALBT          .... 0001 0100 .... .... .... 1100 ....      @rdamn
SMLALTB          .... 0001 0100 .... .... .... 1010 ....      @rdamn
SMLALTT          .... 0001 0100 .... .... .... 1110 ....      @rdamn
SMULBB           .... 0001 0110 .... 0000 .... 1000 ....      @rd0mn
SMULBT           .... 0001 0110 .... 0000 .... 1100 ....      @rd0mn
SMULTB           .... 0001 0110 .... 0000 .... 1010 ....      @rd0mn
SMULTT           .... 0001 0110 .... 0000 .... 1110 ....      @rd0mn

# MSR (immediate) and hints

&msr_i           r mask rot imm
@msr_i           ---- .... .... mask:4 .... rot:4 imm:8       &msr_i

{
  {
    YIELD        ---- 0011 0010 0000 1111 ---- 0000 0001
    WFE          ---- 0011 0010 0000 1111 ---- 0000 0010
    WFI          ---- 0011 0010 0000 1111 ---- 0000 0011

    # TODO: Implement SEV, SEVL; may help SMP performance.
    # SEV        ---- 0011 0010 0000 1111 ---- 0000 0100
    # SEVL       ---- 0011 0010 0000 1111 ---- 0000 0101

    # The canonical nop ends in 00000000, but the whole of the
    # rest of the space executes as nop if otherwise unsupported.
    NOP          ---- 0011 0010 0000 1111 ---- ---- ----
  }
  # Note mask = 0 is covered by NOP
  MSR_imm        .... 0011 0010 .... 1111 .... .... ....      @msr_i r=0
}
MSR_imm          .... 0011 0110 .... 1111 .... .... ....      @msr_i r=1

# Cyclic Redundancy Check

CRC32B           .... 0001 0000 .... .... 0000 0100 ....      @rndm
CRC32H           .... 0001 0010 .... .... 0000 0100 ....      @rndm
CRC32W           .... 0001 0100 .... .... 0000 0100 ....      @rndm
CRC32CB          .... 0001 0000 .... .... 0010 0100 ....      @rndm
CRC32CH          .... 0001 0010 .... .... 0010 0100 ....      @rndm
CRC32CW          .... 0001 0100 .... .... 0010 0100 ....      @rndm

# Miscellaneous instructions

%sysm            8:1 16:4
%imm16_8_0       8:12 0:4

@rm              ---- .... .... .... .... .... .... rm:4      &r
@rdm             ---- .... .... .... rd:4 .... .... rm:4      &rr
@i16             ---- .... .... .... .... .... .... ....      &i imm=%imm16_8_0

MRS_bank         ---- 0001 0 r:1 00 .... rd:4 001. 0000 0000  &mrs_bank %sysm
MSR_bank         ---- 0001 0 r:1 10 .... 1111 001. 0000 rn:4  &msr_bank %sysm

MRS_reg          ---- 0001 0 r:1 00 1111   rd:4 0000 0000 0000  &mrs_reg
MSR_reg          ---- 0001 0 r:1 10 mask:4 1111 0000 0000 rn:4  &msr_reg

BX               .... 0001 0010 1111 1111 1111 0001 ....      @rm
BXJ              .... 0001 0010 1111 1111 1111 0010 ....      @rm
BLX_r            .... 0001 0010 1111 1111 1111 0011 ....      @rm

CLZ              .... 0001 0110 1111 .... 1111 0001 ....      @rdm

ERET             ---- 0001 0110 0000 0000 0000 0110 1110

HLT              .... 0001 0000 .... .... .... 0111 ....      @i16
BKPT             .... 0001 0010 .... .... .... 0111 ....      @i16
HVC              .... 0001 0100 .... .... .... 0111 ....      @i16
SMC              ---- 0001 0110 0000 0000 0000 0111 imm:4     &i

# Load/Store Dual, Half, Signed Byte (register)

@ldst_rr_p1w     ---- ...1 u:1 . w:1 . rn:4 rt:4 .... .... rm:4 \
                 &ldst_rr p=1 shimm=0 shtype=0
@ldst_rr_pw0     ---- ...0 u:1 . 0   . rn:4 rt:4 .... .... rm:4 \
                 &ldst_rr p=0 w=0 shimm=0 shtype=0

STRH_rr          .... 000. .0.0 .... .... 0000 1011 ....      @ldst_rr_pw0
STRH_rr          .... 000. .0.0 .... .... 0000 1011 ....      @ldst_rr_p1w

LDRD_rr          .... 000. .0.0 .... .... 0000 1101 ....      @ldst_rr_pw0
LDRD_rr          .... 000. .0.0 .... .... 0000 1101 ....      @ldst_rr_p1w

STRD_rr          .... 000. .0.0 .... .... 0000 1111 ....      @ldst_rr_pw0
STRD_rr          .... 000. .0.0 .... .... 0000 1111 ....      @ldst_rr_p1w

LDRH_rr          .... 000. .0.1 .... .... 0000 1011 ....      @ldst_rr_pw0
LDRH_rr          .... 000. .0.1 .... .... 0000 1011 ....      @ldst_rr_p1w

LDRSB_rr         .... 000. .0.1 .... .... 0000 1101 ....      @ldst_rr_pw0
LDRSB_rr         .... 000. .0.1 .... .... 0000 1101 ....      @ldst_rr_p1w

LDRSH_rr         .... 000. .0.1 .... .... 0000 1111 ....      @ldst_rr_pw0
LDRSH_rr         .... 000. .0.1 .... .... 0000 1111 ....      @ldst_rr_p1w

# Note the unpriv load/stores use the previously invalid P=0, W=1 encoding,
# and act as normal post-indexed (P=0, W=0).
@ldst_rr_p0w1    ---- ...0 u:1 . 1   . rn:4 rt:4 .... .... rm:4 \
                 &ldst_rr p=0 w=0 shimm=0 shtype=0

STRHT_rr         .... 000. .0.0 .... .... 0000 1011 ....      @ldst_rr_p0w1
LDRHT_rr         .... 000. .0.1 .... .... 0000 1011 ....      @ldst_rr_p0w1
LDRSBT_rr        .... 000. .0.1 .... .... 0000 1101 ....      @ldst_rr_p0w1
LDRSHT_rr        .... 000. .0.1 .... .... 0000 1111 ....      @ldst_rr_p0w1

# Load/Store word and unsigned byte (register)

@ldst_rs_p1w     ---- ...1 u:1 . w:1 . rn:4 rt:4 shimm:5 shtype:2 . rm:4 \
                 &ldst_rr p=1
@ldst_rs_pw0     ---- ...0 u:1 . 0   . rn:4 rt:4 shimm:5 shtype:2 . rm:4 \
                 &ldst_rr p=0 w=0

STR_rr           .... 011. .0.0 .... .... .... ...0 ....      @ldst_rs_pw0
STR_rr           .... 011. .0.0 .... .... .... ...0 ....      @ldst_rs_p1w
STRB_rr          .... 011. .1.0 .... .... .... ...0 ....      @ldst_rs_pw0
STRB_rr          .... 011. .1.0 .... .... .... ...0 ....      @ldst_rs_p1w

LDR_rr           .... 011. .0.1 .... .... .... ...0 ....      @ldst_rs_pw0
LDR_rr           .... 011. .0.1 .... .... .... ...0 ....      @ldst_rs_p1w
LDRB_rr          .... 011. .1.1 .... .... .... ...0 ....      @ldst_rs_pw0
LDRB_rr          .... 011. .1.1 .... .... .... ...0 ....      @ldst_rs_p1w

@ldst_rs_p0w1    ---- ...0 u:1 . 1   . rn:4 rt:4 shimm:5 shtype:2 . rm:4 \
                 &ldst_rr p=0 w=0

STRT_rr          .... 011. .0.0 .... .... .... ...0 ....      @ldst_rs_p0w1
STRBT_rr         .... 011. .1.0 .... .... .... ...0 ....      @ldst_rs_p0w1
LDRT_rr          .... 011. .0.1 .... .... .... ...0 ....      @ldst_rs_p0w1
LDRBT_rr         .... 011. .1.1 .... .... .... ...0 ....      @ldst_rs_p0w1

# Load/Store Dual, Half, Signed Byte (immediate)

%imm8s_8_0       8:4 0:4
@ldst_ri8_p1w    ---- ...1 u:1 . w:1 . rn:4 rt:4 .... .... .... \
                 &ldst_ri imm=%imm8s_8_0 p=1
@ldst_ri8_pw0    ---- ...0 u:1 . 0   . rn:4 rt:4 .... .... .... \
                 &ldst_ri imm=%imm8s_8_0 p=0 w=0

STRH_ri          .... 000. .1.0 .... .... .... 1011 ....      @ldst_ri8_pw0
STRH_ri          .... 000. .1.0 .... .... .... 1011 ....      @ldst_ri8_p1w

LDRD_ri_a32      .... 000. .1.0 .... .... .... 1101 ....      @ldst_ri8_pw0
LDRD_ri_a32      .... 000. .1.0 .... .... .... 1101 ....      @ldst_ri8_p1w

STRD_ri_a32      .... 000. .1.0 .... .... .... 1111 ....      @ldst_ri8_pw0
STRD_ri_a32      .... 000. .1.0 .... .... .... 1111 ....      @ldst_ri8_p1w

LDRH_ri          .... 000. .1.1 .... .... .... 1011 ....      @ldst_ri8_pw0
LDRH_ri          .... 000. .1.1 .... .... .... 1011 ....      @ldst_ri8_p1w

LDRSB_ri         .... 000. .1.1 .... .... .... 1101 ....      @ldst_ri8_pw0
LDRSB_ri         .... 000. .1.1 .... .... .... 1101 ....      @ldst_ri8_p1w

LDRSH_ri         .... 000. .1.1 .... .... .... 1111 ....      @ldst_ri8_pw0
LDRSH_ri         .... 000. .1.1 .... .... .... 1111 ....      @ldst_ri8_p1w

# Note the unpriv load/stores use the previously invalid P=0, W=1 encoding,
# and act as normal post-indexed (P=0, W=0).
@ldst_ri8_p0w1   ---- ...0 u:1 . 1   . rn:4 rt:4 .... .... .... \
                 &ldst_ri imm=%imm8s_8_0 p=0 w=0

STRHT_ri         .... 000. .1.0 .... .... .... 1011 ....      @ldst_ri8_p0w1
LDRHT_ri         .... 000. .1.1 .... .... .... 1011 ....      @ldst_ri8_p0w1
LDRSBT_ri        .... 000. .1.1 .... .... .... 1101 ....      @ldst_ri8_p0w1
LDRSHT_ri        .... 000. .1.1 .... .... .... 1111 ....      @ldst_ri8_p0w1

# Load/Store word and unsigned byte (immediate)

@ldst_ri12_p1w   ---- ...1 u:1 . w:1 . rn:4 rt:4 imm:12       &ldst_ri p=1
@ldst_ri12_pw0   ---- ...0 u:1 . 0   . rn:4 rt:4 imm:12       &ldst_ri p=0 w=0

STR_ri           .... 010. .0.0 .... .... ............        @ldst_ri12_p1w
STR_ri           .... 010. .0.0 .... .... ............        @ldst_ri12_pw0
STRB_ri          .... 010. .1.0 .... .... ............        @ldst_ri12_p1w
STRB_ri          .... 010. .1.0 .... .... ............        @ldst_ri12_pw0

LDR_ri           .... 010. .0.1 .... .... ............        @ldst_ri12_p1w
LDR_ri           .... 010. .0.1 .... .... ............        @ldst_ri12_pw0
LDRB_ri          .... 010. .1.1 .... .... ............        @ldst_ri12_p1w
LDRB_ri          .... 010. .1.1 .... .... ............        @ldst_ri12_pw0

@ldst_ri12_p0w1  ---- ...0 u:1 . 1 . rn:4 rt:4 imm:12         &ldst_ri p=0 w=0

STRT_ri          .... 010. .0.0 .... .... ............        @ldst_ri12_p0w1
STRBT_ri         .... 010. .1.0 .... .... ............        @ldst_ri12_p0w1
LDRT_ri          .... 010. .0.1 .... .... ............        @ldst_ri12_p0w1
LDRBT_ri         .... 010. .1.1 .... .... ............        @ldst_ri12_p0w1

# Synchronization primitives

@swp             ---- .... .... rn:4 rt:4 .... .... rt2:4

SWP              .... 0001 0000 .... .... 0000 1001 ....      @swp
SWPB             .... 0001 0100 .... .... 0000 1001 ....      @swp

# Load/Store Exclusive and Load-Acquire/Store-Release
#
# Note rt2 for STREXD/LDREXD is set by the helper after checking rt is even.

@strex           ---- .... .... rn:4 rd:4 .... .... rt:4 \
                 &strex imm=0 rt2=15
@ldrex           ---- .... .... rn:4 rt:4 .... .... .... \
                 &ldrex imm=0 rt2=15
@stl             ---- .... .... rn:4 .... .... .... rt:4 \
                 &ldrex imm=0 rt2=15

STREX            .... 0001 1000 .... .... 1111 1001 ....      @strex
STREXD_a32       .... 0001 1010 .... .... 1111 1001 ....      @strex
STREXB           .... 0001 1100 .... .... 1111 1001 ....      @strex
STREXH           .... 0001 1110 .... .... 1111 1001 ....      @strex

STLEX            .... 0001 1000 .... .... 1110 1001 ....      @strex
STLEXD_a32       .... 0001 1010 .... .... 1110 1001 ....      @strex
STLEXB           .... 0001 1100 .... .... 1110 1001 ....      @strex
STLEXH           .... 0001 1110 .... .... 1110 1001 ....      @strex

STL              .... 0001 1000 .... 1111 1100 1001 ....      @stl
STLB             .... 0001 1100 .... 1111 1100 1001 ....      @stl
STLH             .... 0001 1110 .... 1111 1100 1001 ....      @stl

LDREX            .... 0001 1001 .... .... 1111 1001 1111      @ldrex
LDREXD_a32       .... 0001 1011 .... .... 1111 1001 1111      @ldrex
LDREXB           .... 0001 1101 .... .... 1111 1001 1111      @ldrex
LDREXH           .... 0001 1111 .... .... 1111 1001 1111      @ldrex

LDAEX            .... 0001 1001 .... .... 1110 1001 1111      @ldrex
LDAEXD_a32       .... 0001 1011 .... .... 1110 1001 1111      @ldrex
LDAEXB           .... 0001 1101 .... .... 1110 1001 1111      @ldrex
LDAEXH           .... 0001 1111 .... .... 1110 1001 1111      @ldrex

LDA              .... 0001 1001 .... .... 1100 1001 1111      @ldrex
LDAB             .... 0001 1101 .... .... 1100 1001 1111      @ldrex
LDAH             .... 0001 1111 .... .... 1100 1001 1111      @ldrex

# Media instructions

# usad8 is usada8 w/ ra=15
USADA8           ---- 0111 1000 rd:4 ra:4 rm:4 0001 rn:4

# ubfx and sbfx
@bfx             ---- .... ... widthm1:5 rd:4 lsb:5 ... rn:4  &bfx

SBFX             .... 0111 101 ..... .... ..... 101 ....      @bfx
UBFX             .... 0111 111 ..... .... ..... 101 ....      @bfx

# bfc is bfi w/ rn=15
BFCI             ---- 0111 110 msb:5 rd:4 lsb:5 001 rn:4      &bfi

# While we could get UDEF by not including this, add the pattern for
# documentation and to conflict with any other typos in this file.
UDF              1110 0111 1111 ---- ---- ---- 1111 ----

# Parallel addition and subtraction

SADD16           .... 0110 0001 .... .... 1111 0001 ....      @rndm
SASX             .... 0110 0001 .... .... 1111 0011 ....      @rndm
SSAX             .... 0110 0001 .... .... 1111 0101 ....      @rndm
SSUB16           .... 0110 0001 .... .... 1111 0111 ....      @rndm
SADD8            .... 0110 0001 .... .... 1111 1001 ....      @rndm
SSUB8            .... 0110 0001 .... .... 1111 1111 ....      @rndm

QADD16           .... 0110 0010 .... .... 1111 0001 ....      @rndm
QASX             .... 0110 0010 .... .... 1111 0011 ....      @rndm
QSAX             .... 0110 0010 .... .... 1111 0101 ....      @rndm
QSUB16           .... 0110 0010 .... .... 1111 0111 ....      @rndm
QADD8            .... 0110 0010 .... .... 1111 1001 ....      @rndm
QSUB8            .... 0110 0010 .... .... 1111 1111 ....      @rndm

SHADD16          .... 0110 0011 .... .... 1111 0001 ....      @rndm
SHASX            .... 0110 0011 .... .... 1111 0011 ....      @rndm
SHSAX            .... 0110 0011 .... .... 1111 0101 ....      @rndm
SHSUB16          .... 0110 0011 .... .... 1111 0111 ....      @rndm
SHADD8           .... 0110 0011 .... .... 1111 1001 ....      @rndm
SHSUB8           .... 0110 0011 .... .... 1111 1111 ....      @rndm

UADD16           .... 0110 0101 .... .... 1111 0001 ....      @rndm
UASX             .... 0110 0101 .... .... 1111 0011 ....      @rndm
USAX             .... 0110 0101 .... .... 1111 0101 ....      @rndm
USUB16           .... 0110 0101 .... .... 1111 0111 ....      @rndm
UADD8            .... 0110 0101 .... .... 1111 1001 ....      @rndm
USUB8            .... 0110 0101 .... .... 1111 1111 ....      @rndm

UQADD16          .... 0110 0110 .... .... 1111 0001 ....      @rndm
UQASX            .... 0110 0110 .... .... 1111 0011 ....      @rndm
UQSAX            .... 0110 0110 .... .... 1111 0101 ....      @rndm
UQSUB16          .... 0110 0110 .... .... 1111 0111 ....      @rndm
UQADD8           .... 0110 0110 .... .... 1111 1001 ....      @rndm
UQSUB8           .... 0110 0110 .... .... 1111 1111 ....      @rndm

UHADD16          .... 0110 0111 .... .... 1111 0001 ....      @rndm
UHASX            .... 0110 0111 .... .... 1111 0011 ....      @rndm
UHSAX            .... 0110 0111 .... .... 1111 0101 ....      @rndm
UHSUB16          .... 0110 0111 .... .... 1111 0111 ....      @rndm
UHADD8           .... 0110 0111 .... .... 1111 1001 ....      @rndm
UHSUB8           .... 0110 0111 .... .... 1111 1111 ....      @rndm

# Packing, unpacking, saturation, and reversal

PKH              ---- 0110 1000 rn:4 rd:4 imm:5 tb:1 01 rm:4  &pkh

@sat             ---- .... ... satimm:5  rd:4 imm:5 sh:1 .. rn:4  &sat
@sat16           ---- .... .... satimm:4 rd:4 .... .... rn:4 \
                 &sat imm=0 sh=0

SSAT             .... 0110 101. .... .... .... ..01 ....      @sat
USAT             .... 0110 111. .... .... .... ..01 ....      @sat

SSAT16           .... 0110 1010 .... .... 1111 0011 ....      @sat16
USAT16           .... 0110 1110 .... .... 1111 0011 ....      @sat16

@rrr_rot         ---- .... .... rn:4 rd:4 rot:2 ...... rm:4   &rrr_rot

SXTAB16          .... 0110 1000 .... .... ..00 0111 ....      @rrr_rot
SXTAB            .... 0110 1010 .... .... ..00 0111 ....      @rrr_rot
SXTAH            .... 0110 1011 .... .... ..00 0111 ....      @rrr_rot
UXTAB16          .... 0110 1100 .... .... ..00 0111 ....      @rrr_rot
UXTAB            .... 0110 1110 .... .... ..00 0111 ....      @rrr_rot
UXTAH            .... 0110 1111 .... .... ..00 0111 ....      @rrr_rot

SEL              .... 0110 1000 .... .... 1111 1011 ....      @rndm
REV              .... 0110 1011 1111 .... 1111 0011 ....      @rdm
REV16            .... 0110 1011 1111 .... 1111 1011 ....      @rdm
REVSH            .... 0110 1111 1111 .... 1111 1011 ....      @rdm
RBIT             .... 0110 1111 1111 .... 1111 0011 ....      @rdm

# Signed multiply, signed and unsigned divide

@rdmn            ---- .... .... rd:4 .... rm:4 .... rn:4      &rrr

SMLAD            .... 0111 0000 .... .... .... 0001 ....      @rdamn
SMLADX           .... 0111 0000 .... .... .... 0011 ....      @rdamn
SMLSD            .... 0111 0000 .... .... .... 0101 ....      @rdamn
SMLSDX           .... 0111 0000 .... .... .... 0111 ....      @rdamn

SDIV             .... 0111 0001 .... 1111 .... 0001 ....      @rdmn
UDIV             .... 0111 0011 .... 1111 .... 0001 ....      @rdmn

SMLALD           .... 0111 0100 .... .... .... 0001 ....      @rdamn
SMLALDX          .... 0111 0100 .... .... .... 0011 ....      @rdamn
SMLSLD           .... 0111 0100 .... .... .... 0101 ....      @rdamn
SMLSLDX          .... 0111 0100 .... .... .... 0111 ....      @rdamn

SMMLA            .... 0111 0101 .... .... .... 0001 ....      @rdamn
SMMLAR           .... 0111 0101 .... .... .... 0011 ....      @rdamn
SMMLS            .... 0111 0101 .... .... .... 1101 ....      @rdamn
SMMLSR           .... 0111 0101 .... .... .... 1111 ....      @rdamn

# Block data transfer

STM              ---- 100 b:1 i:1 u:1 w:1 0 rn:4 list:16   &ldst_block
LDM_a32          ---- 100 b:1 i:1 u:1 w:1 1 rn:4 list:16   &ldst_block

# Branch, branch with link

%imm26           0:s24  !function=times_4
@branch          ---- .... ........................           &i imm=%imm26

B                .... 1010 ........................           @branch
BL               .... 1011 ........................           @branch

# Coprocessor instructions

# We decode MCR, MCR, MRRC and MCRR only, because for QEMU the
# other coprocessor instructions always UNDEF.
# The trans_ functions for these will ignore cp values 8..13 for v7 or
# earlier, and 0..13 for v8 and later, because those areas of the
# encoding space may be used for other things, such as VFP or Neon.

@mcr             ---- .... opc1:3 . crn:4 rt:4 cp:4 opc2:3 . crm:4 &mcr
@mcrr            ---- .... .... rt2:4 rt:4 cp:4 opc1:4 crm:4       &mcrr

MCRR             .... 1100 0100 .... .... .... .... .... @mcrr
MRRC             .... 1100 0101 .... .... .... .... .... @mcrr

MCR              .... 1110 ... 0 .... .... .... ... 1 .... @mcr
MRC              .... 1110 ... 1 .... .... .... ... 1 .... @mcr

# Supervisor call

SVC              ---- 1111 imm:24                             &i
