1 /** 2 * Copyright 2024 Huawei Technologies Co., Ltd 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 #ifndef MINDSPORE_PI_JIT_OPCODE_DECLARE_H 17 #define MINDSPORE_PI_JIT_OPCODE_DECLARE_H 18 19 #include "pipeline/jit/pi/utils/opcode_util.h" 20 #include <opcode.h> 21 22 namespace mindspore { 23 namespace pijit { 24 25 #define ILLEGAL_OPCODE 0 26 27 #ifndef ASYNC_GEN_WRAP 28 #define ASYNC_GEN_WRAP ILLEGAL_OPCODE 29 #endif 30 #ifndef BEFORE_ASYNC_WITH 31 #define BEFORE_ASYNC_WITH ILLEGAL_OPCODE 32 #endif 33 #ifndef BEFORE_WITH 34 #define BEFORE_WITH ILLEGAL_OPCODE 35 #endif 36 #ifndef BEGIN_FINALLY 37 #define BEGIN_FINALLY ILLEGAL_OPCODE 38 #endif 39 #ifndef BINARY_ADD 40 #define BINARY_ADD ILLEGAL_OPCODE 41 #endif 42 #ifndef BINARY_AND 43 #define BINARY_AND ILLEGAL_OPCODE 44 #endif 45 #ifndef BINARY_FLOOR_DIVIDE 46 #define BINARY_FLOOR_DIVIDE ILLEGAL_OPCODE 47 #endif 48 #ifndef BINARY_LSHIFT 49 #define BINARY_LSHIFT ILLEGAL_OPCODE 50 #endif 51 #ifndef BINARY_MATRIX_MULTIPLY 52 #define BINARY_MATRIX_MULTIPLY ILLEGAL_OPCODE 53 #endif 54 #ifndef BINARY_MODULO 55 #define BINARY_MODULO ILLEGAL_OPCODE 56 #endif 57 #ifndef BINARY_MULTIPLY 58 #define BINARY_MULTIPLY ILLEGAL_OPCODE 59 #endif 60 #ifndef BINARY_OP 61 #define BINARY_OP ILLEGAL_OPCODE 62 #endif 63 #ifndef BINARY_OR 64 #define BINARY_OR ILLEGAL_OPCODE 65 #endif 66 #ifndef BINARY_POWER 67 #define BINARY_POWER ILLEGAL_OPCODE 68 #endif 69 #ifndef BINARY_RSHIFT 70 #define BINARY_RSHIFT ILLEGAL_OPCODE 71 #endif 72 #ifndef BINARY_SUBSCR 73 #define BINARY_SUBSCR ILLEGAL_OPCODE 74 #endif 75 #ifndef BINARY_SUBTRACT 76 #define BINARY_SUBTRACT ILLEGAL_OPCODE 77 #endif 78 #ifndef BINARY_TRUE_DIVIDE 79 #define BINARY_TRUE_DIVIDE ILLEGAL_OPCODE 80 #endif 81 #ifndef BINARY_XOR 82 #define BINARY_XOR ILLEGAL_OPCODE 83 #endif 84 #ifndef BREAK_LOOP 85 #define BREAK_LOOP ILLEGAL_OPCODE 86 #endif 87 #ifndef BUILD_CONST_KEY_MAP 88 #define BUILD_CONST_KEY_MAP ILLEGAL_OPCODE 89 #endif 90 #ifndef BUILD_LIST 91 #define BUILD_LIST ILLEGAL_OPCODE 92 #endif 93 #ifndef BUILD_LIST_UNPACK 94 #define BUILD_LIST_UNPACK ILLEGAL_OPCODE 95 #endif 96 #ifndef BUILD_MAP 97 #define BUILD_MAP ILLEGAL_OPCODE 98 #endif 99 #ifndef BUILD_MAP_UNPACK 100 #define BUILD_MAP_UNPACK ILLEGAL_OPCODE 101 #endif 102 #ifndef BUILD_MAP_UNPACK_WITH_CALL 103 #define BUILD_MAP_UNPACK_WITH_CALL ILLEGAL_OPCODE 104 #endif 105 #ifndef BUILD_SET 106 #define BUILD_SET ILLEGAL_OPCODE 107 #endif 108 #ifndef BUILD_SET_UNPACK 109 #define BUILD_SET_UNPACK ILLEGAL_OPCODE 110 #endif 111 #ifndef BUILD_SLICE 112 #define BUILD_SLICE ILLEGAL_OPCODE 113 #endif 114 #ifndef BUILD_STRING 115 #define BUILD_STRING ILLEGAL_OPCODE 116 #endif 117 #ifndef BUILD_TUPLE 118 #define BUILD_TUPLE ILLEGAL_OPCODE 119 #endif 120 #ifndef BUILD_TUPLE_UNPACK 121 #define BUILD_TUPLE_UNPACK ILLEGAL_OPCODE 122 #endif 123 #ifndef BUILD_TUPLE_UNPACK_WITH_CALL 124 #define BUILD_TUPLE_UNPACK_WITH_CALL ILLEGAL_OPCODE 125 #endif 126 #ifndef CACHE 127 #define CACHE ILLEGAL_OPCODE 128 #endif 129 #ifndef CALL 130 #define CALL ILLEGAL_OPCODE 131 #endif 132 #ifndef CALL_FINALLY 133 #define CALL_FINALLY ILLEGAL_OPCODE 134 #endif 135 #ifndef CALL_FUNCTION 136 #define CALL_FUNCTION ILLEGAL_OPCODE 137 #endif 138 #ifndef CALL_FUNCTION_EX 139 #define CALL_FUNCTION_EX ILLEGAL_OPCODE 140 #endif 141 #ifndef CALL_FUNCTION_KW 142 #define CALL_FUNCTION_KW ILLEGAL_OPCODE 143 #endif 144 #ifndef CALL_METHOD 145 #define CALL_METHOD ILLEGAL_OPCODE 146 #endif 147 #ifndef CHECK_EG_MATCH 148 #define CHECK_EG_MATCH ILLEGAL_OPCODE 149 #endif 150 #ifndef CHECK_EXC_MATCH 151 #define CHECK_EXC_MATCH ILLEGAL_OPCODE 152 #endif 153 #ifndef COMPARE_OP 154 #define COMPARE_OP ILLEGAL_OPCODE 155 #endif 156 #ifndef CONTAINS_OP 157 #define CONTAINS_OP ILLEGAL_OPCODE 158 #endif 159 #ifndef CONTINUE_LOOP 160 #define CONTINUE_LOOP ILLEGAL_OPCODE 161 #endif 162 #ifndef COPY 163 #define COPY ILLEGAL_OPCODE 164 #endif 165 #ifndef COPY_DICT_WITHOUT_KEYS 166 #define COPY_DICT_WITHOUT_KEYS ILLEGAL_OPCODE 167 #endif 168 #ifndef COPY_FREE_VARS 169 #define COPY_FREE_VARS ILLEGAL_OPCODE 170 #endif 171 #ifndef DELETE_ATTR 172 #define DELETE_ATTR ILLEGAL_OPCODE 173 #endif 174 #ifndef DELETE_DEREF 175 #define DELETE_DEREF ILLEGAL_OPCODE 176 #endif 177 #ifndef DELETE_FAST 178 #define DELETE_FAST ILLEGAL_OPCODE 179 #endif 180 #ifndef DELETE_GLOBAL 181 #define DELETE_GLOBAL ILLEGAL_OPCODE 182 #endif 183 #ifndef DELETE_NAME 184 #define DELETE_NAME ILLEGAL_OPCODE 185 #endif 186 #ifndef DELETE_SUBSCR 187 #define DELETE_SUBSCR ILLEGAL_OPCODE 188 #endif 189 #ifndef DICT_MERGE 190 #define DICT_MERGE ILLEGAL_OPCODE 191 #endif 192 #ifndef DICT_UPDATE 193 #define DICT_UPDATE ILLEGAL_OPCODE 194 #endif 195 #ifndef DUP_TOP 196 #define DUP_TOP ILLEGAL_OPCODE 197 #endif 198 #ifndef DUP_TOP_TWO 199 #define DUP_TOP_TWO ILLEGAL_OPCODE 200 #endif 201 #ifndef END_ASYNC_FOR 202 #define END_ASYNC_FOR ILLEGAL_OPCODE 203 #endif 204 #ifndef END_FINALLY 205 #define END_FINALLY ILLEGAL_OPCODE 206 #endif 207 #ifndef EXTENDED_ARG 208 #define EXTENDED_ARG ILLEGAL_OPCODE 209 #endif 210 #ifndef FOR_ITER 211 #define FOR_ITER ILLEGAL_OPCODE 212 #endif 213 #ifndef FORMAT_VALUE 214 #define FORMAT_VALUE ILLEGAL_OPCODE 215 #endif 216 #ifndef GEN_START 217 #define GEN_START ILLEGAL_OPCODE 218 #endif 219 #ifndef GET_AITER 220 #define GET_AITER ILLEGAL_OPCODE 221 #endif 222 #ifndef GET_ANEXT 223 #define GET_ANEXT ILLEGAL_OPCODE 224 #endif 225 #ifndef GET_AWAITABLE 226 #define GET_AWAITABLE ILLEGAL_OPCODE 227 #endif 228 #ifndef GET_ITER 229 #define GET_ITER ILLEGAL_OPCODE 230 #endif 231 #ifndef GET_LEN 232 #define GET_LEN ILLEGAL_OPCODE 233 #endif 234 #ifndef GET_YIELD_FROM_ITER 235 #define GET_YIELD_FROM_ITER ILLEGAL_OPCODE 236 #endif 237 #ifndef IMPORT_FROM 238 #define IMPORT_FROM ILLEGAL_OPCODE 239 #endif 240 #ifndef IMPORT_NAME 241 #define IMPORT_NAME ILLEGAL_OPCODE 242 #endif 243 #ifndef IMPORT_STAR 244 #define IMPORT_STAR ILLEGAL_OPCODE 245 #endif 246 #ifndef INPLACE_ADD 247 #define INPLACE_ADD ILLEGAL_OPCODE 248 #endif 249 #ifndef INPLACE_AND 250 #define INPLACE_AND ILLEGAL_OPCODE 251 #endif 252 #ifndef INPLACE_FLOOR_DIVIDE 253 #define INPLACE_FLOOR_DIVIDE ILLEGAL_OPCODE 254 #endif 255 #ifndef INPLACE_LSHIFT 256 #define INPLACE_LSHIFT ILLEGAL_OPCODE 257 #endif 258 #ifndef INPLACE_MATRIX_MULTIPLY 259 #define INPLACE_MATRIX_MULTIPLY ILLEGAL_OPCODE 260 #endif 261 #ifndef INPLACE_MODULO 262 #define INPLACE_MODULO ILLEGAL_OPCODE 263 #endif 264 #ifndef INPLACE_MULTIPLY 265 #define INPLACE_MULTIPLY ILLEGAL_OPCODE 266 #endif 267 #ifndef INPLACE_OR 268 #define INPLACE_OR ILLEGAL_OPCODE 269 #endif 270 #ifndef INPLACE_POWER 271 #define INPLACE_POWER ILLEGAL_OPCODE 272 #endif 273 #ifndef INPLACE_RSHIFT 274 #define INPLACE_RSHIFT ILLEGAL_OPCODE 275 #endif 276 #ifndef INPLACE_SUBTRACT 277 #define INPLACE_SUBTRACT ILLEGAL_OPCODE 278 #endif 279 #ifndef INPLACE_TRUE_DIVIDE 280 #define INPLACE_TRUE_DIVIDE ILLEGAL_OPCODE 281 #endif 282 #ifndef INPLACE_XOR 283 #define INPLACE_XOR ILLEGAL_OPCODE 284 #endif 285 #ifndef IS_OP 286 #define IS_OP ILLEGAL_OPCODE 287 #endif 288 #ifndef JUMP_ABSOLUTE 289 #define JUMP_ABSOLUTE ILLEGAL_OPCODE 290 #endif 291 #ifndef JUMP_BACKWARD 292 #define JUMP_BACKWARD ILLEGAL_OPCODE 293 #endif 294 #ifndef JUMP_BACKWARD_NO_INTERRUPT 295 #define JUMP_BACKWARD_NO_INTERRUPT ILLEGAL_OPCODE 296 #endif 297 #ifndef JUMP_FORWARD 298 #define JUMP_FORWARD ILLEGAL_OPCODE 299 #endif 300 #ifndef JUMP_IF_FALSE_OR_POP 301 #define JUMP_IF_FALSE_OR_POP ILLEGAL_OPCODE 302 #endif 303 #ifndef JUMP_IF_NOT_EXC_MATCH 304 #define JUMP_IF_NOT_EXC_MATCH ILLEGAL_OPCODE 305 #endif 306 #ifndef JUMP_IF_TRUE_OR_POP 307 #define JUMP_IF_TRUE_OR_POP ILLEGAL_OPCODE 308 #endif 309 #ifndef KW_NAMES 310 #define KW_NAMES ILLEGAL_OPCODE 311 #endif 312 #ifndef LIST_APPEND 313 #define LIST_APPEND ILLEGAL_OPCODE 314 #endif 315 #ifndef LIST_EXTEND 316 #define LIST_EXTEND ILLEGAL_OPCODE 317 #endif 318 #ifndef LIST_TO_TUPLE 319 #define LIST_TO_TUPLE ILLEGAL_OPCODE 320 #endif 321 #ifndef LOAD_ASSERTION_ERROR 322 #define LOAD_ASSERTION_ERROR ILLEGAL_OPCODE 323 #endif 324 #ifndef LOAD_ATTR 325 #define LOAD_ATTR ILLEGAL_OPCODE 326 #endif 327 #ifndef LOAD_BUILD_CLASS 328 #define LOAD_BUILD_CLASS ILLEGAL_OPCODE 329 #endif 330 #ifndef LOAD_CLASSDEREF 331 #define LOAD_CLASSDEREF ILLEGAL_OPCODE 332 #endif 333 #ifndef LOAD_CLOSURE 334 #define LOAD_CLOSURE ILLEGAL_OPCODE 335 #endif 336 #ifndef LOAD_CONST 337 #define LOAD_CONST ILLEGAL_OPCODE 338 #endif 339 #ifndef LOAD_DEREF 340 #define LOAD_DEREF ILLEGAL_OPCODE 341 #endif 342 #ifndef LOAD_FAST 343 #define LOAD_FAST ILLEGAL_OPCODE 344 #endif 345 #ifndef LOAD_GLOBAL 346 #define LOAD_GLOBAL ILLEGAL_OPCODE 347 #endif 348 #ifndef LOAD_METHOD 349 #define LOAD_METHOD ILLEGAL_OPCODE 350 #endif 351 #ifndef LOAD_NAME 352 #define LOAD_NAME ILLEGAL_OPCODE 353 #endif 354 #ifndef MAKE_CELL 355 #define MAKE_CELL ILLEGAL_OPCODE 356 #endif 357 #ifndef MAKE_FUNCTION 358 #define MAKE_FUNCTION ILLEGAL_OPCODE 359 #endif 360 #ifndef MAP_ADD 361 #define MAP_ADD ILLEGAL_OPCODE 362 #endif 363 #ifndef MATCH_CLASS 364 #define MATCH_CLASS ILLEGAL_OPCODE 365 #endif 366 #ifndef MATCH_KEYS 367 #define MATCH_KEYS ILLEGAL_OPCODE 368 #endif 369 #ifndef MATCH_MAPPING 370 #define MATCH_MAPPING ILLEGAL_OPCODE 371 #endif 372 #ifndef MATCH_SEQUENCE 373 #define MATCH_SEQUENCE ILLEGAL_OPCODE 374 #endif 375 #ifndef NOP 376 #define NOP ILLEGAL_OPCODE 377 #endif 378 #ifndef POP_BLOCK 379 #define POP_BLOCK ILLEGAL_OPCODE 380 #endif 381 #ifndef POP_EXCEPT 382 #define POP_EXCEPT ILLEGAL_OPCODE 383 #endif 384 #ifndef POP_FINALLY 385 #define POP_FINALLY ILLEGAL_OPCODE 386 #endif 387 #ifndef POP_JUMP_BACKWARD_IF_FALSE 388 #define POP_JUMP_BACKWARD_IF_FALSE ILLEGAL_OPCODE 389 #endif 390 #ifndef POP_JUMP_BACKWARD_IF_NONE 391 #define POP_JUMP_BACKWARD_IF_NONE ILLEGAL_OPCODE 392 #endif 393 #ifndef POP_JUMP_BACKWARD_IF_NOT_NONE 394 #define POP_JUMP_BACKWARD_IF_NOT_NONE ILLEGAL_OPCODE 395 #endif 396 #ifndef POP_JUMP_BACKWARD_IF_TRUE 397 #define POP_JUMP_BACKWARD_IF_TRUE ILLEGAL_OPCODE 398 #endif 399 #ifndef POP_JUMP_FORWARD_IF_FALSE 400 #define POP_JUMP_FORWARD_IF_FALSE ILLEGAL_OPCODE 401 #endif 402 #ifndef POP_JUMP_FORWARD_IF_NONE 403 #define POP_JUMP_FORWARD_IF_NONE ILLEGAL_OPCODE 404 #endif 405 #ifndef POP_JUMP_FORWARD_IF_NOT_NONE 406 #define POP_JUMP_FORWARD_IF_NOT_NONE ILLEGAL_OPCODE 407 #endif 408 #ifndef POP_JUMP_FORWARD_IF_TRUE 409 #define POP_JUMP_FORWARD_IF_TRUE ILLEGAL_OPCODE 410 #endif 411 #ifndef POP_JUMP_IF_FALSE 412 #define POP_JUMP_IF_FALSE ILLEGAL_OPCODE 413 #endif 414 #ifndef POP_JUMP_IF_TRUE 415 #define POP_JUMP_IF_TRUE ILLEGAL_OPCODE 416 #endif 417 #ifndef POP_TOP 418 #define POP_TOP ILLEGAL_OPCODE 419 #endif 420 #ifndef PRECALL 421 #define PRECALL ILLEGAL_OPCODE 422 #endif 423 #ifndef PREP_RERAISE_STAR 424 #define PREP_RERAISE_STAR ILLEGAL_OPCODE 425 #endif 426 #ifndef PRINT_EXPR 427 #define PRINT_EXPR ILLEGAL_OPCODE 428 #endif 429 #ifndef PUSH_EXC_INFO 430 #define PUSH_EXC_INFO ILLEGAL_OPCODE 431 #endif 432 #ifndef PUSH_NULL 433 #define PUSH_NULL ILLEGAL_OPCODE 434 #endif 435 #ifndef RAISE_VARARGS 436 #define RAISE_VARARGS ILLEGAL_OPCODE 437 #endif 438 #ifndef RERAISE 439 #define RERAISE ILLEGAL_OPCODE 440 #endif 441 #ifndef RESUME 442 #define RESUME ILLEGAL_OPCODE 443 #endif 444 #ifndef RETURN_GENERATOR 445 #define RETURN_GENERATOR ILLEGAL_OPCODE 446 #endif 447 #ifndef RETURN_VALUE 448 #define RETURN_VALUE ILLEGAL_OPCODE 449 #endif 450 #ifndef ROT_FOUR 451 #define ROT_FOUR ILLEGAL_OPCODE 452 #endif 453 #ifndef ROT_N 454 #define ROT_N ILLEGAL_OPCODE 455 #endif 456 #ifndef ROT_THREE 457 #define ROT_THREE ILLEGAL_OPCODE 458 #endif 459 #ifndef ROT_TWO 460 #define ROT_TWO ILLEGAL_OPCODE 461 #endif 462 #ifndef SEND 463 #define SEND ILLEGAL_OPCODE 464 #endif 465 #ifndef SET_ADD 466 #define SET_ADD ILLEGAL_OPCODE 467 #endif 468 #ifndef SETUP_ANNOTATIONS 469 #define SETUP_ANNOTATIONS ILLEGAL_OPCODE 470 #endif 471 #ifndef SETUP_ASYNC_WITH 472 #define SETUP_ASYNC_WITH ILLEGAL_OPCODE 473 #endif 474 #ifndef SET_UPDATE 475 #define SET_UPDATE ILLEGAL_OPCODE 476 #endif 477 #ifndef SETUP_EXCEPT 478 #define SETUP_EXCEPT ILLEGAL_OPCODE 479 #endif 480 #ifndef SETUP_FINALLY 481 #define SETUP_FINALLY ILLEGAL_OPCODE 482 #endif 483 #ifndef SETUP_LOOP 484 #define SETUP_LOOP ILLEGAL_OPCODE 485 #endif 486 #ifndef SETUP_WITH 487 #define SETUP_WITH ILLEGAL_OPCODE 488 #endif 489 #ifndef STORE_ATTR 490 #define STORE_ATTR ILLEGAL_OPCODE 491 #endif 492 #ifndef STORE_DEREF 493 #define STORE_DEREF ILLEGAL_OPCODE 494 #endif 495 #ifndef STORE_FAST 496 #define STORE_FAST ILLEGAL_OPCODE 497 #endif 498 #ifndef STORE_GLOBAL 499 #define STORE_GLOBAL ILLEGAL_OPCODE 500 #endif 501 #ifndef STORE_NAME 502 #define STORE_NAME ILLEGAL_OPCODE 503 #endif 504 #ifndef STORE_SUBSCR 505 #define STORE_SUBSCR ILLEGAL_OPCODE 506 #endif 507 #ifndef SWAP 508 #define SWAP ILLEGAL_OPCODE 509 #endif 510 #ifndef UNARY_INVERT 511 #define UNARY_INVERT ILLEGAL_OPCODE 512 #endif 513 #ifndef UNARY_NEGATIVE 514 #define UNARY_NEGATIVE ILLEGAL_OPCODE 515 #endif 516 #ifndef UNARY_NOT 517 #define UNARY_NOT ILLEGAL_OPCODE 518 #endif 519 #ifndef UNARY_POSITIVE 520 #define UNARY_POSITIVE ILLEGAL_OPCODE 521 #endif 522 #ifndef UNPACK_EX 523 #define UNPACK_EX ILLEGAL_OPCODE 524 #endif 525 #ifndef UNPACK_SEQUENCE 526 #define UNPACK_SEQUENCE ILLEGAL_OPCODE 527 #endif 528 #ifndef WITH_CLEANUP_FINISH 529 #define WITH_CLEANUP_FINISH ILLEGAL_OPCODE 530 #endif 531 #ifndef WITH_CLEANUP_START 532 #define WITH_CLEANUP_START ILLEGAL_OPCODE 533 #endif 534 #ifndef WITH_EXCEPT_START 535 #define WITH_EXCEPT_START ILLEGAL_OPCODE 536 #endif 537 #ifndef YIELD_FROM 538 #define YIELD_FROM ILLEGAL_OPCODE 539 #endif 540 #ifndef YIELD_VALUE 541 #define YIELD_VALUE ILLEGAL_OPCODE 542 #endif 543 544 } // namespace pijit 545 } // namespace mindspore 546 547 #endif // MINDSPORE_PI_JIT_OPCODE_DECLARE_H 548