1 /* Warning: automatically generated code */ 2 #ifndef FIRM_IR_OPCODES_H 3 #define FIRM_IR_OPCODES_H 4 5 /** The opcodes of the libFirm predefined operations. 6 * @ingroup ir_op 7 */ 8 typedef enum ir_opcode { 9 iro_ASM, 10 iro_Add, 11 iro_Alloc, 12 iro_Anchor, 13 iro_And, 14 iro_Bad, 15 iro_Block, 16 iro_Borrow, 17 iro_Bound, 18 iro_Builtin, 19 iro_Call, 20 iro_Carry, 21 iro_Cast, 22 iro_Cmp, 23 iro_Cond, 24 iro_Confirm, 25 iro_Const, 26 iro_Conv, 27 iro_CopyB, 28 iro_Deleted, 29 iro_Div, 30 iro_Dummy, 31 iro_End, 32 iro_Eor, 33 iro_Free, 34 iro_IJmp, 35 iro_Id, 36 iro_InstOf, 37 iro_Jmp, 38 iro_Load, 39 iro_Minus, 40 iro_Mod, 41 iro_Mul, 42 iro_Mulh, 43 iro_Mux, 44 iro_NoMem, 45 iro_Not, 46 iro_Or, 47 iro_Phi, 48 iro_Pin, 49 iro_Proj, 50 iro_Raise, 51 iro_Return, 52 iro_Rotl, 53 iro_Sel, 54 iro_Shl, 55 iro_Shr, 56 iro_Shrs, 57 iro_Start, 58 iro_Store, 59 iro_Sub, 60 iro_Switch, 61 iro_SymConst, 62 iro_Sync, 63 iro_Tuple, 64 iro_Unknown, 65 iro_First = iro_ASM, 66 iro_Last = iro_Unknown, 67 beo_First, 68 /* backend specific nodes */ 69 beo_Spill = beo_First, 70 beo_Reload, 71 beo_Perm, 72 beo_MemPerm, 73 beo_Copy, 74 beo_Keep, 75 beo_CopyKeep, 76 beo_Call, 77 beo_Return, 78 beo_AddSP, 79 beo_SubSP, 80 beo_IncSP, 81 beo_Start, 82 beo_FrameAddr, 83 /* last backend node number */ 84 beo_Last = beo_FrameAddr, 85 iro_MaxOpcode 86 } ir_opcode; 87 88 89 /** 90 * @ingroup ASM 91 * ASM opcode 92 */ 93 FIRM_API ir_op *op_ASM; 94 /** 95 * @ingroup Add 96 * Add opcode 97 */ 98 FIRM_API ir_op *op_Add; 99 /** 100 * @ingroup Alloc 101 * Alloc opcode 102 */ 103 FIRM_API ir_op *op_Alloc; 104 /** 105 * @ingroup Anchor 106 * Anchor opcode 107 */ 108 FIRM_API ir_op *op_Anchor; 109 /** 110 * @ingroup And 111 * And opcode 112 */ 113 FIRM_API ir_op *op_And; 114 /** 115 * @ingroup Bad 116 * Bad opcode 117 */ 118 FIRM_API ir_op *op_Bad; 119 /** 120 * @ingroup Block 121 * Block opcode 122 */ 123 FIRM_API ir_op *op_Block; 124 /** 125 * @ingroup Borrow 126 * Borrow opcode 127 */ 128 FIRM_API ir_op *op_Borrow; 129 /** 130 * @ingroup Bound 131 * Bound opcode 132 */ 133 FIRM_API ir_op *op_Bound; 134 /** 135 * @ingroup Builtin 136 * Builtin opcode 137 */ 138 FIRM_API ir_op *op_Builtin; 139 /** 140 * @ingroup Call 141 * Call opcode 142 */ 143 FIRM_API ir_op *op_Call; 144 /** 145 * @ingroup Carry 146 * Carry opcode 147 */ 148 FIRM_API ir_op *op_Carry; 149 /** 150 * @ingroup Cast 151 * Cast opcode 152 */ 153 FIRM_API ir_op *op_Cast; 154 /** 155 * @ingroup Cmp 156 * Cmp opcode 157 */ 158 FIRM_API ir_op *op_Cmp; 159 /** 160 * @ingroup Cond 161 * Cond opcode 162 */ 163 FIRM_API ir_op *op_Cond; 164 /** 165 * @ingroup Confirm 166 * Confirm opcode 167 */ 168 FIRM_API ir_op *op_Confirm; 169 /** 170 * @ingroup Const 171 * Const opcode 172 */ 173 FIRM_API ir_op *op_Const; 174 /** 175 * @ingroup Conv 176 * Conv opcode 177 */ 178 FIRM_API ir_op *op_Conv; 179 /** 180 * @ingroup CopyB 181 * CopyB opcode 182 */ 183 FIRM_API ir_op *op_CopyB; 184 /** 185 * @ingroup Deleted 186 * Deleted opcode 187 */ 188 FIRM_API ir_op *op_Deleted; 189 /** 190 * @ingroup Div 191 * Div opcode 192 */ 193 FIRM_API ir_op *op_Div; 194 /** 195 * @ingroup Dummy 196 * Dummy opcode 197 */ 198 FIRM_API ir_op *op_Dummy; 199 /** 200 * @ingroup End 201 * End opcode 202 */ 203 FIRM_API ir_op *op_End; 204 /** 205 * @ingroup Eor 206 * Eor opcode 207 */ 208 FIRM_API ir_op *op_Eor; 209 /** 210 * @ingroup Free 211 * Free opcode 212 */ 213 FIRM_API ir_op *op_Free; 214 /** 215 * @ingroup IJmp 216 * IJmp opcode 217 */ 218 FIRM_API ir_op *op_IJmp; 219 /** 220 * @ingroup Id 221 * Id opcode 222 */ 223 FIRM_API ir_op *op_Id; 224 /** 225 * @ingroup InstOf 226 * InstOf opcode 227 */ 228 FIRM_API ir_op *op_InstOf; 229 /** 230 * @ingroup Jmp 231 * Jmp opcode 232 */ 233 FIRM_API ir_op *op_Jmp; 234 /** 235 * @ingroup Load 236 * Load opcode 237 */ 238 FIRM_API ir_op *op_Load; 239 /** 240 * @ingroup Minus 241 * Minus opcode 242 */ 243 FIRM_API ir_op *op_Minus; 244 /** 245 * @ingroup Mod 246 * Mod opcode 247 */ 248 FIRM_API ir_op *op_Mod; 249 /** 250 * @ingroup Mul 251 * Mul opcode 252 */ 253 FIRM_API ir_op *op_Mul; 254 /** 255 * @ingroup Mulh 256 * Mulh opcode 257 */ 258 FIRM_API ir_op *op_Mulh; 259 /** 260 * @ingroup Mux 261 * Mux opcode 262 */ 263 FIRM_API ir_op *op_Mux; 264 /** 265 * @ingroup NoMem 266 * NoMem opcode 267 */ 268 FIRM_API ir_op *op_NoMem; 269 /** 270 * @ingroup Not 271 * Not opcode 272 */ 273 FIRM_API ir_op *op_Not; 274 /** 275 * @ingroup Or 276 * Or opcode 277 */ 278 FIRM_API ir_op *op_Or; 279 /** 280 * @ingroup Phi 281 * Phi opcode 282 */ 283 FIRM_API ir_op *op_Phi; 284 /** 285 * @ingroup Pin 286 * Pin opcode 287 */ 288 FIRM_API ir_op *op_Pin; 289 /** 290 * @ingroup Proj 291 * Proj opcode 292 */ 293 FIRM_API ir_op *op_Proj; 294 /** 295 * @ingroup Raise 296 * Raise opcode 297 */ 298 FIRM_API ir_op *op_Raise; 299 /** 300 * @ingroup Return 301 * Return opcode 302 */ 303 FIRM_API ir_op *op_Return; 304 /** 305 * @ingroup Rotl 306 * Rotl opcode 307 */ 308 FIRM_API ir_op *op_Rotl; 309 /** 310 * @ingroup Sel 311 * Sel opcode 312 */ 313 FIRM_API ir_op *op_Sel; 314 /** 315 * @ingroup Shl 316 * Shl opcode 317 */ 318 FIRM_API ir_op *op_Shl; 319 /** 320 * @ingroup Shr 321 * Shr opcode 322 */ 323 FIRM_API ir_op *op_Shr; 324 /** 325 * @ingroup Shrs 326 * Shrs opcode 327 */ 328 FIRM_API ir_op *op_Shrs; 329 /** 330 * @ingroup Start 331 * Start opcode 332 */ 333 FIRM_API ir_op *op_Start; 334 /** 335 * @ingroup Store 336 * Store opcode 337 */ 338 FIRM_API ir_op *op_Store; 339 /** 340 * @ingroup Sub 341 * Sub opcode 342 */ 343 FIRM_API ir_op *op_Sub; 344 /** 345 * @ingroup Switch 346 * Switch opcode 347 */ 348 FIRM_API ir_op *op_Switch; 349 /** 350 * @ingroup SymConst 351 * SymConst opcode 352 */ 353 FIRM_API ir_op *op_SymConst; 354 /** 355 * @ingroup Sync 356 * Sync opcode 357 */ 358 FIRM_API ir_op *op_Sync; 359 /** 360 * @ingroup Tuple 361 * Tuple opcode 362 */ 363 FIRM_API ir_op *op_Tuple; 364 /** 365 * @ingroup Unknown 366 * Unknown opcode 367 */ 368 FIRM_API ir_op *op_Unknown; 369 370 371 /** 372 * @ingroup ASM 373 * Returns opcode for ASM nodes. 374 */ 375 FIRM_API ir_op *get_op_ASM(void); 376 /** 377 * @ingroup Add 378 * Returns opcode for Add nodes. 379 */ 380 FIRM_API ir_op *get_op_Add(void); 381 /** 382 * @ingroup Alloc 383 * Returns opcode for Alloc nodes. 384 */ 385 FIRM_API ir_op *get_op_Alloc(void); 386 /** 387 * @ingroup Anchor 388 * Returns opcode for Anchor nodes. 389 */ 390 FIRM_API ir_op *get_op_Anchor(void); 391 /** 392 * @ingroup And 393 * Returns opcode for And nodes. 394 */ 395 FIRM_API ir_op *get_op_And(void); 396 /** 397 * @ingroup Bad 398 * Returns opcode for Bad nodes. 399 */ 400 FIRM_API ir_op *get_op_Bad(void); 401 /** 402 * @ingroup Block 403 * Returns opcode for Block nodes. 404 */ 405 FIRM_API ir_op *get_op_Block(void); 406 /** 407 * @ingroup Borrow 408 * Returns opcode for Borrow nodes. 409 */ 410 FIRM_API ir_op *get_op_Borrow(void); 411 /** 412 * @ingroup Bound 413 * Returns opcode for Bound nodes. 414 */ 415 FIRM_API ir_op *get_op_Bound(void); 416 /** 417 * @ingroup Builtin 418 * Returns opcode for Builtin nodes. 419 */ 420 FIRM_API ir_op *get_op_Builtin(void); 421 /** 422 * @ingroup Call 423 * Returns opcode for Call nodes. 424 */ 425 FIRM_API ir_op *get_op_Call(void); 426 /** 427 * @ingroup Carry 428 * Returns opcode for Carry nodes. 429 */ 430 FIRM_API ir_op *get_op_Carry(void); 431 /** 432 * @ingroup Cast 433 * Returns opcode for Cast nodes. 434 */ 435 FIRM_API ir_op *get_op_Cast(void); 436 /** 437 * @ingroup Cmp 438 * Returns opcode for Cmp nodes. 439 */ 440 FIRM_API ir_op *get_op_Cmp(void); 441 /** 442 * @ingroup Cond 443 * Returns opcode for Cond nodes. 444 */ 445 FIRM_API ir_op *get_op_Cond(void); 446 /** 447 * @ingroup Confirm 448 * Returns opcode for Confirm nodes. 449 */ 450 FIRM_API ir_op *get_op_Confirm(void); 451 /** 452 * @ingroup Const 453 * Returns opcode for Const nodes. 454 */ 455 FIRM_API ir_op *get_op_Const(void); 456 /** 457 * @ingroup Conv 458 * Returns opcode for Conv nodes. 459 */ 460 FIRM_API ir_op *get_op_Conv(void); 461 /** 462 * @ingroup CopyB 463 * Returns opcode for CopyB nodes. 464 */ 465 FIRM_API ir_op *get_op_CopyB(void); 466 /** 467 * @ingroup Deleted 468 * Returns opcode for Deleted nodes. 469 */ 470 FIRM_API ir_op *get_op_Deleted(void); 471 /** 472 * @ingroup Div 473 * Returns opcode for Div nodes. 474 */ 475 FIRM_API ir_op *get_op_Div(void); 476 /** 477 * @ingroup Dummy 478 * Returns opcode for Dummy nodes. 479 */ 480 FIRM_API ir_op *get_op_Dummy(void); 481 /** 482 * @ingroup End 483 * Returns opcode for End nodes. 484 */ 485 FIRM_API ir_op *get_op_End(void); 486 /** 487 * @ingroup Eor 488 * Returns opcode for Eor nodes. 489 */ 490 FIRM_API ir_op *get_op_Eor(void); 491 /** 492 * @ingroup Free 493 * Returns opcode for Free nodes. 494 */ 495 FIRM_API ir_op *get_op_Free(void); 496 /** 497 * @ingroup IJmp 498 * Returns opcode for IJmp nodes. 499 */ 500 FIRM_API ir_op *get_op_IJmp(void); 501 /** 502 * @ingroup Id 503 * Returns opcode for Id nodes. 504 */ 505 FIRM_API ir_op *get_op_Id(void); 506 /** 507 * @ingroup InstOf 508 * Returns opcode for InstOf nodes. 509 */ 510 FIRM_API ir_op *get_op_InstOf(void); 511 /** 512 * @ingroup Jmp 513 * Returns opcode for Jmp nodes. 514 */ 515 FIRM_API ir_op *get_op_Jmp(void); 516 /** 517 * @ingroup Load 518 * Returns opcode for Load nodes. 519 */ 520 FIRM_API ir_op *get_op_Load(void); 521 /** 522 * @ingroup Minus 523 * Returns opcode for Minus nodes. 524 */ 525 FIRM_API ir_op *get_op_Minus(void); 526 /** 527 * @ingroup Mod 528 * Returns opcode for Mod nodes. 529 */ 530 FIRM_API ir_op *get_op_Mod(void); 531 /** 532 * @ingroup Mul 533 * Returns opcode for Mul nodes. 534 */ 535 FIRM_API ir_op *get_op_Mul(void); 536 /** 537 * @ingroup Mulh 538 * Returns opcode for Mulh nodes. 539 */ 540 FIRM_API ir_op *get_op_Mulh(void); 541 /** 542 * @ingroup Mux 543 * Returns opcode for Mux nodes. 544 */ 545 FIRM_API ir_op *get_op_Mux(void); 546 /** 547 * @ingroup NoMem 548 * Returns opcode for NoMem nodes. 549 */ 550 FIRM_API ir_op *get_op_NoMem(void); 551 /** 552 * @ingroup Not 553 * Returns opcode for Not nodes. 554 */ 555 FIRM_API ir_op *get_op_Not(void); 556 /** 557 * @ingroup Or 558 * Returns opcode for Or nodes. 559 */ 560 FIRM_API ir_op *get_op_Or(void); 561 /** 562 * @ingroup Phi 563 * Returns opcode for Phi nodes. 564 */ 565 FIRM_API ir_op *get_op_Phi(void); 566 /** 567 * @ingroup Pin 568 * Returns opcode for Pin nodes. 569 */ 570 FIRM_API ir_op *get_op_Pin(void); 571 /** 572 * @ingroup Proj 573 * Returns opcode for Proj nodes. 574 */ 575 FIRM_API ir_op *get_op_Proj(void); 576 /** 577 * @ingroup Raise 578 * Returns opcode for Raise nodes. 579 */ 580 FIRM_API ir_op *get_op_Raise(void); 581 /** 582 * @ingroup Return 583 * Returns opcode for Return nodes. 584 */ 585 FIRM_API ir_op *get_op_Return(void); 586 /** 587 * @ingroup Rotl 588 * Returns opcode for Rotl nodes. 589 */ 590 FIRM_API ir_op *get_op_Rotl(void); 591 /** 592 * @ingroup Sel 593 * Returns opcode for Sel nodes. 594 */ 595 FIRM_API ir_op *get_op_Sel(void); 596 /** 597 * @ingroup Shl 598 * Returns opcode for Shl nodes. 599 */ 600 FIRM_API ir_op *get_op_Shl(void); 601 /** 602 * @ingroup Shr 603 * Returns opcode for Shr nodes. 604 */ 605 FIRM_API ir_op *get_op_Shr(void); 606 /** 607 * @ingroup Shrs 608 * Returns opcode for Shrs nodes. 609 */ 610 FIRM_API ir_op *get_op_Shrs(void); 611 /** 612 * @ingroup Start 613 * Returns opcode for Start nodes. 614 */ 615 FIRM_API ir_op *get_op_Start(void); 616 /** 617 * @ingroup Store 618 * Returns opcode for Store nodes. 619 */ 620 FIRM_API ir_op *get_op_Store(void); 621 /** 622 * @ingroup Sub 623 * Returns opcode for Sub nodes. 624 */ 625 FIRM_API ir_op *get_op_Sub(void); 626 /** 627 * @ingroup Switch 628 * Returns opcode for Switch nodes. 629 */ 630 FIRM_API ir_op *get_op_Switch(void); 631 /** 632 * @ingroup SymConst 633 * Returns opcode for SymConst nodes. 634 */ 635 FIRM_API ir_op *get_op_SymConst(void); 636 /** 637 * @ingroup Sync 638 * Returns opcode for Sync nodes. 639 */ 640 FIRM_API ir_op *get_op_Sync(void); 641 /** 642 * @ingroup Tuple 643 * Returns opcode for Tuple nodes. 644 */ 645 FIRM_API ir_op *get_op_Tuple(void); 646 /** 647 * @ingroup Unknown 648 * Returns opcode for Unknown nodes. 649 */ 650 FIRM_API ir_op *get_op_Unknown(void); 651 652 #endif 653