1bf215546Sopenharmony_ci#ifndef ISA_XML 2bf215546Sopenharmony_ci#define ISA_XML 3bf215546Sopenharmony_ci 4bf215546Sopenharmony_ci/* Autogenerated file, DO NOT EDIT manually! 5bf215546Sopenharmony_ci 6bf215546Sopenharmony_ciThis file was generated by the rules-ng-ng headergen tool in this git repository: 7bf215546Sopenharmony_cihttp://0x04.net/cgit/index.cgi/rules-ng-ng 8bf215546Sopenharmony_cigit clone git://0x04.net/rules-ng-ng 9bf215546Sopenharmony_ci 10bf215546Sopenharmony_ciThe rules-ng-ng source files this header was generated from are: 11bf215546Sopenharmony_ci- isa.xml ( 38205 bytes, from 2020-01-10 14:36:29) 12bf215546Sopenharmony_ci- copyright.xml ( 1597 bytes, from 2018-02-10 13:09:26) 13bf215546Sopenharmony_ci 14bf215546Sopenharmony_ciCopyright (C) 2012-2020 by the following authors: 15bf215546Sopenharmony_ci- Wladimir J. van der Laan <laanwj@gmail.com> 16bf215546Sopenharmony_ci- Christian Gmeiner <christian.gmeiner@gmail.com> 17bf215546Sopenharmony_ci- Lucas Stach <l.stach@pengutronix.de> 18bf215546Sopenharmony_ci- Russell King <rmk@arm.linux.org.uk> 19bf215546Sopenharmony_ci 20bf215546Sopenharmony_ciPermission is hereby granted, free of charge, to any person obtaining a 21bf215546Sopenharmony_cicopy of this software and associated documentation files (the "Software"), 22bf215546Sopenharmony_cito deal in the Software without restriction, including without limitation 23bf215546Sopenharmony_cithe rights to use, copy, modify, merge, publish, distribute, sub license, 24bf215546Sopenharmony_ciand/or sell copies of the Software, and to permit persons to whom the 25bf215546Sopenharmony_ciSoftware is furnished to do so, subject to the following conditions: 26bf215546Sopenharmony_ci 27bf215546Sopenharmony_ciThe above copyright notice and this permission notice (including the 28bf215546Sopenharmony_cinext paragraph) shall be included in all copies or substantial portions 29bf215546Sopenharmony_ciof the Software. 30bf215546Sopenharmony_ci 31bf215546Sopenharmony_ciTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 32bf215546Sopenharmony_ciIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 33bf215546Sopenharmony_ciFITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 34bf215546Sopenharmony_ciTHE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 35bf215546Sopenharmony_ciLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 36bf215546Sopenharmony_ciFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 37bf215546Sopenharmony_ciDEALINGS IN THE SOFTWARE. 38bf215546Sopenharmony_ci*/ 39bf215546Sopenharmony_ci 40bf215546Sopenharmony_ci 41bf215546Sopenharmony_ci#define INST_OPCODE_NOP 0x00000000 42bf215546Sopenharmony_ci#define INST_OPCODE_ADD 0x00000001 43bf215546Sopenharmony_ci#define INST_OPCODE_MAD 0x00000002 44bf215546Sopenharmony_ci#define INST_OPCODE_MUL 0x00000003 45bf215546Sopenharmony_ci#define INST_OPCODE_DST 0x00000004 46bf215546Sopenharmony_ci#define INST_OPCODE_DP3 0x00000005 47bf215546Sopenharmony_ci#define INST_OPCODE_DP4 0x00000006 48bf215546Sopenharmony_ci#define INST_OPCODE_DSX 0x00000007 49bf215546Sopenharmony_ci#define INST_OPCODE_DSY 0x00000008 50bf215546Sopenharmony_ci#define INST_OPCODE_MOV 0x00000009 51bf215546Sopenharmony_ci#define INST_OPCODE_MOVAR 0x0000000a 52bf215546Sopenharmony_ci#define INST_OPCODE_MOVAF 0x0000000b 53bf215546Sopenharmony_ci#define INST_OPCODE_RCP 0x0000000c 54bf215546Sopenharmony_ci#define INST_OPCODE_RSQ 0x0000000d 55bf215546Sopenharmony_ci#define INST_OPCODE_LITP 0x0000000e 56bf215546Sopenharmony_ci#define INST_OPCODE_SELECT 0x0000000f 57bf215546Sopenharmony_ci#define INST_OPCODE_SET 0x00000010 58bf215546Sopenharmony_ci#define INST_OPCODE_EXP 0x00000011 59bf215546Sopenharmony_ci#define INST_OPCODE_LOG 0x00000012 60bf215546Sopenharmony_ci#define INST_OPCODE_FRC 0x00000013 61bf215546Sopenharmony_ci#define INST_OPCODE_CALL 0x00000014 62bf215546Sopenharmony_ci#define INST_OPCODE_RET 0x00000015 63bf215546Sopenharmony_ci#define INST_OPCODE_BRANCH 0x00000016 64bf215546Sopenharmony_ci#define INST_OPCODE_TEXKILL 0x00000017 65bf215546Sopenharmony_ci#define INST_OPCODE_TEXLD 0x00000018 66bf215546Sopenharmony_ci#define INST_OPCODE_TEXLDB 0x00000019 67bf215546Sopenharmony_ci#define INST_OPCODE_TEXLDD 0x0000001a 68bf215546Sopenharmony_ci#define INST_OPCODE_TEXLDL 0x0000001b 69bf215546Sopenharmony_ci#define INST_OPCODE_TEXLDPCF 0x0000001c 70bf215546Sopenharmony_ci#define INST_OPCODE_REP 0x0000001d 71bf215546Sopenharmony_ci#define INST_OPCODE_ENDREP 0x0000001e 72bf215546Sopenharmony_ci#define INST_OPCODE_LOOP 0x0000001f 73bf215546Sopenharmony_ci#define INST_OPCODE_ENDLOOP 0x00000020 74bf215546Sopenharmony_ci#define INST_OPCODE_SQRT 0x00000021 75bf215546Sopenharmony_ci#define INST_OPCODE_SIN 0x00000022 76bf215546Sopenharmony_ci#define INST_OPCODE_COS 0x00000023 77bf215546Sopenharmony_ci#define INST_OPCODE_BRANCH2 0x00000024 78bf215546Sopenharmony_ci#define INST_OPCODE_FLOOR 0x00000025 79bf215546Sopenharmony_ci#define INST_OPCODE_CEIL 0x00000026 80bf215546Sopenharmony_ci#define INST_OPCODE_SIGN 0x00000027 81bf215546Sopenharmony_ci#define INST_OPCODE_ADDLO 0x00000028 82bf215546Sopenharmony_ci#define INST_OPCODE_MULLO 0x00000029 83bf215546Sopenharmony_ci#define INST_OPCODE_BARRIER 0x0000002a 84bf215546Sopenharmony_ci#define INST_OPCODE_SWIZZLE 0x0000002b 85bf215546Sopenharmony_ci#define INST_OPCODE_I2I 0x0000002c 86bf215546Sopenharmony_ci#define INST_OPCODE_I2F 0x0000002d 87bf215546Sopenharmony_ci#define INST_OPCODE_F2I 0x0000002e 88bf215546Sopenharmony_ci#define INST_OPCODE_F2IRND 0x0000002f 89bf215546Sopenharmony_ci#define INST_OPCODE_F2I7 0x00000030 90bf215546Sopenharmony_ci#define INST_OPCODE_CMP 0x00000031 91bf215546Sopenharmony_ci#define INST_OPCODE_LOAD 0x00000032 92bf215546Sopenharmony_ci#define INST_OPCODE_STORE 0x00000033 93bf215546Sopenharmony_ci#define INST_OPCODE_COPYSIGN 0x00000034 94bf215546Sopenharmony_ci#define INST_OPCODE_GETEXP 0x00000035 95bf215546Sopenharmony_ci#define INST_OPCODE_GETMANT 0x00000036 96bf215546Sopenharmony_ci#define INST_OPCODE_NAN 0x00000037 97bf215546Sopenharmony_ci#define INST_OPCODE_NEXTAFTER 0x00000038 98bf215546Sopenharmony_ci#define INST_OPCODE_ROUNDEVEN 0x00000039 99bf215546Sopenharmony_ci#define INST_OPCODE_ROUNDAWAY 0x0000003a 100bf215546Sopenharmony_ci#define INST_OPCODE_IADDSAT 0x0000003b 101bf215546Sopenharmony_ci#define INST_OPCODE_IMULLO0 0x0000003c 102bf215546Sopenharmony_ci#define INST_OPCODE_IMULLO1 0x0000003d 103bf215546Sopenharmony_ci#define INST_OPCODE_IMULLOSAT0 0x0000003e 104bf215546Sopenharmony_ci#define INST_OPCODE_IMULLOSAT1 0x0000003f 105bf215546Sopenharmony_ci#define INST_OPCODE_IMULHI0 0x00000040 106bf215546Sopenharmony_ci#define INST_OPCODE_IMULHI1 0x00000041 107bf215546Sopenharmony_ci#define INST_OPCODE_IMUL0 0x00000042 108bf215546Sopenharmony_ci#define INST_OPCODE_IMUL1 0x00000043 109bf215546Sopenharmony_ci#define INST_OPCODE_IDIV0 0x00000044 110bf215546Sopenharmony_ci#define INST_OPCODE_IDIV1 0x00000045 111bf215546Sopenharmony_ci#define INST_OPCODE_IDIV2 0x00000046 112bf215546Sopenharmony_ci#define INST_OPCODE_IDIV3 0x00000047 113bf215546Sopenharmony_ci#define INST_OPCODE_IMOD0 0x00000048 114bf215546Sopenharmony_ci#define INST_OPCODE_TEXELFETCH 0x00000049 115bf215546Sopenharmony_ci#define INST_OPCODE_IMOD2 0x0000004a 116bf215546Sopenharmony_ci#define INST_OPCODE_IMOD3 0x0000004b 117bf215546Sopenharmony_ci#define INST_OPCODE_IMADLO0 0x0000004c 118bf215546Sopenharmony_ci#define INST_OPCODE_IMADLO1 0x0000004d 119bf215546Sopenharmony_ci#define INST_OPCODE_IMADLOSAT0 0x0000004e 120bf215546Sopenharmony_ci#define INST_OPCODE_IMADLOSAT1 0x0000004f 121bf215546Sopenharmony_ci#define INST_OPCODE_IMADHI0 0x00000050 122bf215546Sopenharmony_ci#define INST_OPCODE_IMADHI1 0x00000051 123bf215546Sopenharmony_ci#define INST_OPCODE_IMADHISAT0 0x00000052 124bf215546Sopenharmony_ci#define INST_OPCODE_IMADHISAT1 0x00000053 125bf215546Sopenharmony_ci#define INST_OPCODE_HALFADD 0x00000054 126bf215546Sopenharmony_ci#define INST_OPCODE_HALFADDINC 0x00000055 127bf215546Sopenharmony_ci#define INST_OPCODE_MOVAI 0x00000056 128bf215546Sopenharmony_ci#define INST_OPCODE_IABS 0x00000057 129bf215546Sopenharmony_ci#define INST_OPCODE_LEADZERO 0x00000058 130bf215546Sopenharmony_ci#define INST_OPCODE_LSHIFT 0x00000059 131bf215546Sopenharmony_ci#define INST_OPCODE_RSHIFT 0x0000005a 132bf215546Sopenharmony_ci#define INST_OPCODE_ROTATE 0x0000005b 133bf215546Sopenharmony_ci#define INST_OPCODE_OR 0x0000005c 134bf215546Sopenharmony_ci#define INST_OPCODE_AND 0x0000005d 135bf215546Sopenharmony_ci#define INST_OPCODE_XOR 0x0000005e 136bf215546Sopenharmony_ci#define INST_OPCODE_NOT 0x0000005f 137bf215546Sopenharmony_ci#define INST_OPCODE_BITSELECT 0x00000060 138bf215546Sopenharmony_ci#define INST_OPCODE_POPCOUNT 0x00000061 139bf215546Sopenharmony_ci#define INST_OPCODE_STOREB 0x00000062 140bf215546Sopenharmony_ci#define INST_OPCODE_RGB2YUV 0x00000063 141bf215546Sopenharmony_ci#define INST_OPCODE_DIV 0x00000064 142bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_ADD 0x00000065 143bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_XCHG 0x00000066 144bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_CMP_XCHG 0x00000067 145bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_MIN 0x00000068 146bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_MAX 0x00000069 147bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_OR 0x0000006a 148bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_AND 0x0000006b 149bf215546Sopenharmony_ci#define INST_OPCODE_ATOM_XOR 0x0000006c 150bf215546Sopenharmony_ci#define INST_OPCODE_BIT_REV 0x0000006d 151bf215546Sopenharmony_ci#define INST_OPCODE_BYTE_REV 0x0000006e 152bf215546Sopenharmony_ci#define INST_OPCODE_TEXLDLPCF 0x0000006f 153bf215546Sopenharmony_ci#define INST_OPCODE_TEXLDGPCF 0x00000070 154bf215546Sopenharmony_ci#define INST_OPCODE_PACK 0x00000071 155bf215546Sopenharmony_ci#define INST_OPCODE_CONV 0x00000072 156bf215546Sopenharmony_ci#define INST_OPCODE_DP2 0x00000073 157bf215546Sopenharmony_ci#define INST_OPCODE_NORM_DP2 0x00000074 158bf215546Sopenharmony_ci#define INST_OPCODE_NORM_DP3 0x00000075 159bf215546Sopenharmony_ci#define INST_OPCODE_NORM_DP4 0x00000076 160bf215546Sopenharmony_ci#define INST_OPCODE_NORM_MUL 0x00000077 161bf215546Sopenharmony_ci#define INST_OPCODE_STORE_ATTR 0x00000078 162bf215546Sopenharmony_ci#define INST_OPCODE_LOAD_ATTR 0x00000079 163bf215546Sopenharmony_ci#define INST_OPCODE_EMIT 0x0000007a 164bf215546Sopenharmony_ci#define INST_OPCODE_RESTART 0x0000007b 165bf215546Sopenharmony_ci#define INST_OPCODE_NOP7C 0x0000007c 166bf215546Sopenharmony_ci#define INST_OPCODE_NOP7D 0x0000007d 167bf215546Sopenharmony_ci#define INST_OPCODE_NOP7E 0x0000007e 168bf215546Sopenharmony_ci#define INST_OPCODE_NOP7F 0x0000007f 169bf215546Sopenharmony_ci#define INST_CONDITION_TRUE 0x00000000 170bf215546Sopenharmony_ci#define INST_CONDITION_GT 0x00000001 171bf215546Sopenharmony_ci#define INST_CONDITION_LT 0x00000002 172bf215546Sopenharmony_ci#define INST_CONDITION_GE 0x00000003 173bf215546Sopenharmony_ci#define INST_CONDITION_LE 0x00000004 174bf215546Sopenharmony_ci#define INST_CONDITION_EQ 0x00000005 175bf215546Sopenharmony_ci#define INST_CONDITION_NE 0x00000006 176bf215546Sopenharmony_ci#define INST_CONDITION_AND 0x00000007 177bf215546Sopenharmony_ci#define INST_CONDITION_OR 0x00000008 178bf215546Sopenharmony_ci#define INST_CONDITION_XOR 0x00000009 179bf215546Sopenharmony_ci#define INST_CONDITION_NOT 0x0000000a 180bf215546Sopenharmony_ci#define INST_CONDITION_NZ 0x0000000b 181bf215546Sopenharmony_ci#define INST_CONDITION_GEZ 0x0000000c 182bf215546Sopenharmony_ci#define INST_CONDITION_GZ 0x0000000d 183bf215546Sopenharmony_ci#define INST_CONDITION_LEZ 0x0000000e 184bf215546Sopenharmony_ci#define INST_CONDITION_LZ 0x0000000f 185bf215546Sopenharmony_ci#define INST_RGROUP_TEMP 0x00000000 186bf215546Sopenharmony_ci#define INST_RGROUP_INTERNAL 0x00000001 187bf215546Sopenharmony_ci#define INST_RGROUP_UNIFORM_0 0x00000002 188bf215546Sopenharmony_ci#define INST_RGROUP_UNIFORM_1 0x00000003 189bf215546Sopenharmony_ci#define INST_RGROUP_TEMP_FP 0x00000004 190bf215546Sopenharmony_ci#define INST_RGROUP_IMMEDIATE 0x00000007 191bf215546Sopenharmony_ci#define INST_AMODE_DIRECT 0x00000000 192bf215546Sopenharmony_ci#define INST_AMODE_ADD_A_X 0x00000001 193bf215546Sopenharmony_ci#define INST_AMODE_ADD_A_Y 0x00000002 194bf215546Sopenharmony_ci#define INST_AMODE_ADD_A_Z 0x00000003 195bf215546Sopenharmony_ci#define INST_AMODE_ADD_A_W 0x00000004 196bf215546Sopenharmony_ci#define INST_SWIZ_COMP_X 0x00000000 197bf215546Sopenharmony_ci#define INST_SWIZ_COMP_Y 0x00000001 198bf215546Sopenharmony_ci#define INST_SWIZ_COMP_Z 0x00000002 199bf215546Sopenharmony_ci#define INST_SWIZ_COMP_W 0x00000003 200bf215546Sopenharmony_ci#define INST_TYPE_F32 0x00000000 201bf215546Sopenharmony_ci#define INST_TYPE_S32 0x00000001 202bf215546Sopenharmony_ci#define INST_TYPE_S8 0x00000002 203bf215546Sopenharmony_ci#define INST_TYPE_U16 0x00000003 204bf215546Sopenharmony_ci#define INST_TYPE_F16 0x00000004 205bf215546Sopenharmony_ci#define INST_TYPE_S16 0x00000005 206bf215546Sopenharmony_ci#define INST_TYPE_U32 0x00000006 207bf215546Sopenharmony_ci#define INST_TYPE_U8 0x00000007 208bf215546Sopenharmony_ci#define INST_ROUND_MODE_DEFAULT 0x00000000 209bf215546Sopenharmony_ci#define INST_ROUND_MODE_RTZ 0x00000001 210bf215546Sopenharmony_ci#define INST_ROUND_MODE_RTNE 0x00000002 211bf215546Sopenharmony_ci#define INST_COMPS_X 0x00000001 212bf215546Sopenharmony_ci#define INST_COMPS_Y 0x00000002 213bf215546Sopenharmony_ci#define INST_COMPS_Z 0x00000004 214bf215546Sopenharmony_ci#define INST_COMPS_W 0x00000008 215bf215546Sopenharmony_ci#define INST_SWIZ_X__MASK 0x00000003 216bf215546Sopenharmony_ci#define INST_SWIZ_X__SHIFT 0 217bf215546Sopenharmony_ci#define INST_SWIZ_X(x) (((x) << INST_SWIZ_X__SHIFT) & INST_SWIZ_X__MASK) 218bf215546Sopenharmony_ci#define INST_SWIZ_Y__MASK 0x0000000c 219bf215546Sopenharmony_ci#define INST_SWIZ_Y__SHIFT 2 220bf215546Sopenharmony_ci#define INST_SWIZ_Y(x) (((x) << INST_SWIZ_Y__SHIFT) & INST_SWIZ_Y__MASK) 221bf215546Sopenharmony_ci#define INST_SWIZ_Z__MASK 0x00000030 222bf215546Sopenharmony_ci#define INST_SWIZ_Z__SHIFT 4 223bf215546Sopenharmony_ci#define INST_SWIZ_Z(x) (((x) << INST_SWIZ_Z__SHIFT) & INST_SWIZ_Z__MASK) 224bf215546Sopenharmony_ci#define INST_SWIZ_W__MASK 0x000000c0 225bf215546Sopenharmony_ci#define INST_SWIZ_W__SHIFT 6 226bf215546Sopenharmony_ci#define INST_SWIZ_W(x) (((x) << INST_SWIZ_W__SHIFT) & INST_SWIZ_W__MASK) 227bf215546Sopenharmony_ci#define VIV_ISA_WORD_0 0x00000000 228bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_OPCODE__MASK 0x0000003f 229bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_OPCODE__SHIFT 0 230bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_OPCODE(x) (((x) << VIV_ISA_WORD_0_OPCODE__SHIFT) & VIV_ISA_WORD_0_OPCODE__MASK) 231bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_COND__MASK 0x000007c0 232bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_COND__SHIFT 6 233bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_COND(x) (((x) << VIV_ISA_WORD_0_COND__SHIFT) & VIV_ISA_WORD_0_COND__MASK) 234bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_SAT 0x00000800 235bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_USE 0x00001000 236bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_AMODE__MASK 0x0000e000 237bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_AMODE__SHIFT 13 238bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_AMODE(x) (((x) << VIV_ISA_WORD_0_DST_AMODE__SHIFT) & VIV_ISA_WORD_0_DST_AMODE__MASK) 239bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_REG__MASK 0x007f0000 240bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_REG__SHIFT 16 241bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_REG(x) (((x) << VIV_ISA_WORD_0_DST_REG__SHIFT) & VIV_ISA_WORD_0_DST_REG__MASK) 242bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_COMPS__MASK 0x07800000 243bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_COMPS__SHIFT 23 244bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_DST_COMPS(x) (((x) << VIV_ISA_WORD_0_DST_COMPS__SHIFT) & VIV_ISA_WORD_0_DST_COMPS__MASK) 245bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_TEX_ID__MASK 0xf8000000 246bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_TEX_ID__SHIFT 27 247bf215546Sopenharmony_ci#define VIV_ISA_WORD_0_TEX_ID(x) (((x) << VIV_ISA_WORD_0_TEX_ID__SHIFT) & VIV_ISA_WORD_0_TEX_ID__MASK) 248bf215546Sopenharmony_ci 249bf215546Sopenharmony_ci#define VIV_ISA_WORD_1 0x00000004 250bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TEX_AMODE__MASK 0x00000007 251bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TEX_AMODE__SHIFT 0 252bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TEX_AMODE(x) (((x) << VIV_ISA_WORD_1_TEX_AMODE__SHIFT) & VIV_ISA_WORD_1_TEX_AMODE__MASK) 253bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_RMODE__MASK 0x00000003 254bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_RMODE__SHIFT 0 255bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_RMODE(x) (((x) << VIV_ISA_WORD_1_RMODE__SHIFT) & VIV_ISA_WORD_1_RMODE__MASK) 256bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_PMODE 0x00000004 257bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TEX_SWIZ__MASK 0x000007f8 258bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TEX_SWIZ__SHIFT 3 259bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TEX_SWIZ(x) (((x) << VIV_ISA_WORD_1_TEX_SWIZ__SHIFT) & VIV_ISA_WORD_1_TEX_SWIZ__MASK) 260bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_USE 0x00000800 261bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_REG__MASK 0x001ff000 262bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_REG__SHIFT 12 263bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_REG(x) (((x) << VIV_ISA_WORD_1_SRC0_REG__SHIFT) & VIV_ISA_WORD_1_SRC0_REG__MASK) 264bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_TYPE_BIT2 0x00200000 265bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_SWIZ__MASK 0x3fc00000 266bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_SWIZ__SHIFT 22 267bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_SWIZ(x) (((x) << VIV_ISA_WORD_1_SRC0_SWIZ__SHIFT) & VIV_ISA_WORD_1_SRC0_SWIZ__MASK) 268bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_NEG 0x40000000 269bf215546Sopenharmony_ci#define VIV_ISA_WORD_1_SRC0_ABS 0x80000000 270bf215546Sopenharmony_ci 271bf215546Sopenharmony_ci#define VIV_ISA_WORD_2 0x00000008 272bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC0_AMODE__MASK 0x00000007 273bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC0_AMODE__SHIFT 0 274bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC0_AMODE(x) (((x) << VIV_ISA_WORD_2_SRC0_AMODE__SHIFT) & VIV_ISA_WORD_2_SRC0_AMODE__MASK) 275bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC0_RGROUP__MASK 0x00000038 276bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC0_RGROUP__SHIFT 3 277bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC0_RGROUP(x) (((x) << VIV_ISA_WORD_2_SRC0_RGROUP__SHIFT) & VIV_ISA_WORD_2_SRC0_RGROUP__MASK) 278bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_USE 0x00000040 279bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_REG__MASK 0x0000ff80 280bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_REG__SHIFT 7 281bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_REG(x) (((x) << VIV_ISA_WORD_2_SRC1_REG__SHIFT) & VIV_ISA_WORD_2_SRC1_REG__MASK) 282bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_OPCODE_BIT6 0x00010000 283bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_SWIZ__MASK 0x01fe0000 284bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_SWIZ__SHIFT 17 285bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_SWIZ(x) (((x) << VIV_ISA_WORD_2_SRC1_SWIZ__SHIFT) & VIV_ISA_WORD_2_SRC1_SWIZ__MASK) 286bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_NEG 0x02000000 287bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_ABS 0x04000000 288bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_AMODE__MASK 0x38000000 289bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_AMODE__SHIFT 27 290bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_SRC1_AMODE(x) (((x) << VIV_ISA_WORD_2_SRC1_AMODE__SHIFT) & VIV_ISA_WORD_2_SRC1_AMODE__MASK) 291bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_TYPE_BIT01__MASK 0xc0000000 292bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_TYPE_BIT01__SHIFT 30 293bf215546Sopenharmony_ci#define VIV_ISA_WORD_2_TYPE_BIT01(x) (((x) << VIV_ISA_WORD_2_TYPE_BIT01__SHIFT) & VIV_ISA_WORD_2_TYPE_BIT01__MASK) 294bf215546Sopenharmony_ci 295bf215546Sopenharmony_ci#define VIV_ISA_WORD_3 0x0000000c 296bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC1_RGROUP__MASK 0x00000007 297bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC1_RGROUP__SHIFT 0 298bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC1_RGROUP(x) (((x) << VIV_ISA_WORD_3_SRC1_RGROUP__SHIFT) & VIV_ISA_WORD_3_SRC1_RGROUP__MASK) 299bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_IMM__MASK 0x003fff80 300bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_IMM__SHIFT 7 301bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_IMM(x) (((x) << VIV_ISA_WORD_3_SRC2_IMM__SHIFT) & VIV_ISA_WORD_3_SRC2_IMM__MASK) 302bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_USE 0x00000008 303bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_REG__MASK 0x00001ff0 304bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_REG__SHIFT 4 305bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_REG(x) (((x) << VIV_ISA_WORD_3_SRC2_REG__SHIFT) & VIV_ISA_WORD_3_SRC2_REG__MASK) 306bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SEL_BIT0 0x00002000 307bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_SWIZ__MASK 0x003fc000 308bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_SWIZ__SHIFT 14 309bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_SWIZ(x) (((x) << VIV_ISA_WORD_3_SRC2_SWIZ__SHIFT) & VIV_ISA_WORD_3_SRC2_SWIZ__MASK) 310bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_NEG 0x00400000 311bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_ABS 0x00800000 312bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SEL_BIT1 0x01000000 313bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_AMODE__MASK 0x0e000000 314bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_AMODE__SHIFT 25 315bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_AMODE(x) (((x) << VIV_ISA_WORD_3_SRC2_AMODE__SHIFT) & VIV_ISA_WORD_3_SRC2_AMODE__MASK) 316bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_RGROUP__MASK 0x70000000 317bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_RGROUP__SHIFT 28 318bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_SRC2_RGROUP(x) (((x) << VIV_ISA_WORD_3_SRC2_RGROUP__SHIFT) & VIV_ISA_WORD_3_SRC2_RGROUP__MASK) 319bf215546Sopenharmony_ci#define VIV_ISA_WORD_3_DST_FULL 0x80000000 320bf215546Sopenharmony_ci 321bf215546Sopenharmony_ci 322bf215546Sopenharmony_ci#endif /* ISA_XML */ 323