# **********************************************************
# Copyright (c) 2016-2022 ARM Limited. All rights reserved.
# **********************************************************

# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice,
#   this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright notice,
#   this list of conditions and the following disclaimer in the documentation
#   and/or other materials provided with the distribution.
#
# * Neither the name of ARM Limited nor the names of its contributors may be
#   used to endorse or promote products derived from this software without
#   specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL ARM LIMITED OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
# DAMAGE.

# See header comments in codec_v80.txt and opnd_defs.txt to understand how
# instructions are defined for the purposes of decode and encode code
# generation.

# Instruction definitions:

1101101011000001000110xxxxxxxxxx  n   1027 PAUTH     autda       x0 : x0 x5sp
1101101011000001000111xxxxxxxxxx  n   690  PAUTH     autdb       x0 : x0 x5sp
110110101100000100111011111xxxxx  n   1028 PAUTH    autdza       x0 : x0
110110101100000100111111111xxxxx  n   1029 PAUTH    autdzb       x0 : x0
1101101011000001000100xxxxxxxxxx  n   1030 PAUTH     autia       x0 : x0 x5sp
11010101000000110010000110011111  n   24   PAUTH autia1716   impx17 : impx17 impx16
11010101000000110010001110111111  n   1031 PAUTH   autiasp   impx30 : impx30 impsp
11010101000000110010001110011111  n   1032 PAUTH    autiaz   impx30 : impx30
1101101011000001000101xxxxxxxxxx  n   1033 PAUTH     autib       x0 : x0 x5sp
11010101000000110010000111011111  n   25   PAUTH autib1716   impx17 : impx17 impx16
11010101000000110010001111111111  n   681  PAUTH   autibsp   impx30 : impx30 impsp
11010101000000110010001111011111  n   1034 PAUTH    autibz   impx30 : impx30
110110101100000100110011111xxxxx  n   1035 PAUTH    autiza       x0 : x0
110110101100000100110111111xxxxx  n   1036 PAUTH    autizb       x0 : x0
1101011100111111000010xxxxxxxxxx  n   782  PAUTH     blraa   impx30 : x5 x0sp
1101011000111111000010xxxxx11111  n   682  PAUTH    blraaz   impx30 : x5
1101011100111111000011xxxxxxxxxx  n   1037 PAUTH     blrab   impx30 : x5 x0sp
1101011000111111000011xxxxx11111  n   1038 PAUTH    blrabz   impx30 : x5
1101011100011111000010xxxxxxxxxx  n   683  PAUTH      braa          : x5 x0sp
1101011000011111000010xxxxx11111  n   1039 PAUTH     braaz          : x5
1101011100011111000011xxxxxxxxxx  n   1040 PAUTH      brab          : x5 x0sp
1101011000011111000011xxxxx11111  n   1041 PAUTH     brabz          : x5
11010110100111110000101111111111  n   1054 PAUTH    eretaa          : impx30 impsp
11010110100111110000111111111111  n   1055 PAUTH    eretab          : impx30 impsp
0x101110xx0xxxxx111x01xxxxxxxxxx  n   944  BASE     fcadd      dq0 : dq0 dq5 dq16 imm1_ew_12 hs_sz
0x101110xx0xxxxx110xx1xxxxxxxxxx  n   945  BASE     fcmla      dq0 : dq0 dq5 dq16 imm2_nesw_11 hs_sz
0x101111xxxxxxxx0xx1x0xxxxxxxxxx  n   945  BASE     fcmla      dq0 : dq0 dq5 dq16 vindex_HS_2lane imm2_nesw_13 hs_sz
0001111001111110000000xxxxxxxxxx  n   1057 JSCVT   fjcvtzs       w0 : d5
1x11100010111111110000xxxxxxxxxx  n   796  LRCPC     ldapr   wx0_30 : mem0
0011100010111111110000xxxxxxxxxx  n   797  LRCPC    ldaprb       w0 : mem0
0111100010111111110000xxxxxxxxxx  n   798  LRCPC    ldaprh       w0 : mem0
111110000x1xxxxxxxxx11xxxxxxxxxx  n   1052 PAUTH     ldraa  x0 x5sp : mem_s_imm9 x5sp mem_s_imm9_off
111110000x1xxxxxxxxx01xxxxxxxxxx  n   1052 PAUTH     ldraa       x0 : mem_s_imm9
111110001x1xxxxxxxxx11xxxxxxxxxx  n   1053 PAUTH     ldrab  x0 x5sp : mem_s_imm9 x5sp mem_s_imm9_off
111110001x1xxxxxxxxx01xxxxxxxxxx  n   1053 PAUTH     ldrab       x0 : mem_s_imm9
1101101011000001000010xxxxxxxxxx  n   687  PAUTH     pacda       x0 : x0 x5sp
1101101011000001000011xxxxxxxxxx  n   1042 PAUTH     pacdb       x0 : x0 x5sp
110110101100000100101011111xxxxx  n   1043 PAUTH    pacdza       x0 : x0
110110101100000100101111111xxxxx  n   1044 PAUTH    pacdzb       x0 : x0
10011010110xxxxx001100xxxxxxxxxx  n   1045 PAUTH     pacga       x0 : x5 x16sp
1101101011000001000000xxxxxxxxxx  n   688  PAUTH     pacia       x0 : x0 x5sp
11010101000000110010000100011111  n   1046 PAUTH pacia1716   impx17 : impx17 impx16
11010101000000110010001100111111  n   1047 PAUTH   paciasp   impx30 : impx30 impsp
11010101000000110010001100011111  n   1048 PAUTH    paciaz   impx30 : impx30
1101101011000001000001xxxxxxxxxx  n   689  PAUTH     pacib       x0 : x0 x5sp
11010101000000110010000101011111  n   1049 PAUTH pacib1716   impx17 : impx17 impx16
11010101000000110010001101111111  n   680  PAUTH   pacibsp   impx30 : impx30 impsp
11010101000000110010001101011111  n   1050 PAUTH    pacibz   impx30 : impx30
110110101100000100100011111xxxxx  n   684  PAUTH    paciza       x0 : x0
110110101100000100100111111xxxxx  n   1051 PAUTH    pacizb       x0 : x0
11010110010111110000101111111111  n   679  PAUTH     retaa          : impx30 impsp
11010110010111110000111111111111  n   1056 PAUTH     retab          : impx30 impsp
110110101100000101000111111xxxxx  n   686  PAUTH     xpacd       x0 : x0
110110101100000101000011111xxxxx  n   685  PAUTH     xpaci       x0 : x0
11010101000000110010000011111111  n   561  PAUTH   xpaclri   impx30 : impx30
