libFirm
nodes.h
1 /* Warning: Automatically generated file */
2 #ifndef FIRM_IR_NODES_H
3 #define FIRM_IR_NODES_H
4 
5 
6 
7 
11 typedef enum ir_opcode {
69 } ir_opcode;
70 
113 typedef enum {
116 } n_ASM;
117 
121 typedef enum {
125 } pn_ASM;
126 
127 
132 FIRM_API int is_ASM(const ir_node *node);
133 
135 FIRM_API ir_node *get_ASM_mem(const ir_node *node);
137 FIRM_API void set_ASM_mem(ir_node *node, ir_node *mem);
139 FIRM_API int get_ASM_n_inputs(ir_node const *node);
141 FIRM_API ir_node *get_ASM_input(ir_node const *node, int pos);
143 FIRM_API void set_ASM_input(ir_node *node, int pos, ir_node *input);
146 
148 FIRM_API ir_asm_constraint* get_ASM_constraints(const ir_node *node);
150 FIRM_API void set_ASM_constraints(ir_node *node, ir_asm_constraint* constraints);
151 
153 FIRM_API ident** get_ASM_clobbers(const ir_node *node);
155 FIRM_API void set_ASM_clobbers(ir_node *node, ident** clobbers);
156 
158 FIRM_API ident* get_ASM_text(const ir_node *node);
160 FIRM_API void set_ASM_text(ir_node *node, ident* text);
162 FIRM_API ir_op *op_ASM;
163 
165 FIRM_API ir_op *get_op_ASM(void);
166 
179 typedef enum {
183 } n_Add;
184 
193 FIRM_API ir_node *new_rd_Add(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
194 
202 FIRM_API ir_node *new_r_Add(ir_node *block, ir_node * irn_left, ir_node * irn_right);
203 
211 FIRM_API ir_node *new_d_Add(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
212 
219 FIRM_API ir_node *new_Add(ir_node * irn_left, ir_node * irn_right);
220 
225 FIRM_API int is_Add(const ir_node *node);
226 
228 FIRM_API ir_node *get_Add_left(const ir_node *node);
230 FIRM_API void set_Add_left(ir_node *node, ir_node *left);
232 FIRM_API ir_node *get_Add_right(const ir_node *node);
234 FIRM_API void set_Add_right(ir_node *node, ir_node *right);
236 FIRM_API ir_op *op_Add;
237 
239 FIRM_API ir_op *get_op_Add(void);
240 
258 FIRM_API ir_node *new_rd_Address(dbg_info *dbgi, ir_graph *irg, ir_entity* entity);
259 
266 FIRM_API ir_node *new_r_Address(ir_graph *irg, ir_entity* entity);
267 
274 FIRM_API ir_node *new_d_Address(dbg_info *dbgi, ir_entity* entity);
275 
281 FIRM_API ir_node *new_Address(ir_entity* entity);
282 
287 FIRM_API int is_Address(const ir_node *node);
288 
289 
291 FIRM_API ir_entity* get_Address_entity(const ir_node *node);
293 FIRM_API void set_Address_entity(ir_node *node, ir_entity* entity);
295 FIRM_API ir_op *op_Address;
296 
298 FIRM_API ir_op *get_op_Address(void);
299 
317 FIRM_API ir_node *new_rd_Align(dbg_info *dbgi, ir_graph *irg, ir_mode * mode, ir_type* type);
318 
326 FIRM_API ir_node *new_r_Align(ir_graph *irg, ir_mode * mode, ir_type* type);
327 
335 FIRM_API ir_node *new_d_Align(dbg_info *dbgi, ir_mode * mode, ir_type* type);
336 
343 FIRM_API ir_node *new_Align(ir_mode * mode, ir_type* type);
344 
349 FIRM_API int is_Align(const ir_node *node);
350 
351 
353 FIRM_API ir_type* get_Align_type(const ir_node *node);
355 FIRM_API void set_Align_type(ir_node *node, ir_type* type);
357 FIRM_API ir_op *op_Align;
358 
360 FIRM_API ir_op *get_op_Align(void);
361 
374 typedef enum {
378 } n_Alloc;
379 
383 typedef enum {
387 } pn_Alloc;
388 
398 FIRM_API ir_node *new_rd_Alloc(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_size, unsigned alignment);
399 
408 FIRM_API ir_node *new_r_Alloc(ir_node *block, ir_node * irn_mem, ir_node * irn_size, unsigned alignment);
409 
418 FIRM_API ir_node *new_d_Alloc(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_size, unsigned alignment);
419 
427 FIRM_API ir_node *new_Alloc(ir_node * irn_mem, ir_node * irn_size, unsigned alignment);
428 
433 FIRM_API int is_Alloc(const ir_node *node);
434 
436 FIRM_API ir_node *get_Alloc_mem(const ir_node *node);
438 FIRM_API void set_Alloc_mem(ir_node *node, ir_node *mem);
440 FIRM_API ir_node *get_Alloc_size(const ir_node *node);
442 FIRM_API void set_Alloc_size(ir_node *node, ir_node *size);
443 
445 FIRM_API unsigned get_Alloc_alignment(const ir_node *node);
447 FIRM_API void set_Alloc_alignment(ir_node *node, unsigned alignment);
449 FIRM_API ir_op *op_Alloc;
450 
452 FIRM_API ir_op *get_op_Alloc(void);
453 
471 typedef enum {
481 } n_Anchor;
482 
483 
488 FIRM_API int is_Anchor(const ir_node *node);
489 
491 FIRM_API ir_node *get_Anchor_end_block(const ir_node *node);
493 FIRM_API void set_Anchor_end_block(ir_node *node, ir_node *end_block);
495 FIRM_API ir_node *get_Anchor_start_block(const ir_node *node);
497 FIRM_API void set_Anchor_start_block(ir_node *node, ir_node *start_block);
499 FIRM_API ir_node *get_Anchor_end(const ir_node *node);
501 FIRM_API void set_Anchor_end(ir_node *node, ir_node *end);
503 FIRM_API ir_node *get_Anchor_start(const ir_node *node);
505 FIRM_API void set_Anchor_start(ir_node *node, ir_node *start);
507 FIRM_API ir_node *get_Anchor_frame(const ir_node *node);
509 FIRM_API void set_Anchor_frame(ir_node *node, ir_node *frame);
511 FIRM_API ir_node *get_Anchor_initial_mem(const ir_node *node);
513 FIRM_API void set_Anchor_initial_mem(ir_node *node, ir_node *initial_mem);
515 FIRM_API ir_node *get_Anchor_args(const ir_node *node);
517 FIRM_API void set_Anchor_args(ir_node *node, ir_node *args);
519 FIRM_API ir_node *get_Anchor_no_mem(const ir_node *node);
521 FIRM_API void set_Anchor_no_mem(ir_node *node, ir_node *no_mem);
523 FIRM_API ir_op *op_Anchor;
524 
526 FIRM_API ir_op *get_op_Anchor(void);
527 
540 typedef enum {
544 } n_And;
545 
554 FIRM_API ir_node *new_rd_And(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
555 
563 FIRM_API ir_node *new_r_And(ir_node *block, ir_node * irn_left, ir_node * irn_right);
564 
572 FIRM_API ir_node *new_d_And(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
573 
580 FIRM_API ir_node *new_And(ir_node * irn_left, ir_node * irn_right);
581 
586 FIRM_API int is_And(const ir_node *node);
587 
589 FIRM_API ir_node *get_And_left(const ir_node *node);
591 FIRM_API void set_And_left(ir_node *node, ir_node *left);
593 FIRM_API ir_node *get_And_right(const ir_node *node);
595 FIRM_API void set_And_right(ir_node *node, ir_node *right);
597 FIRM_API ir_op *op_And;
598 
600 FIRM_API ir_op *get_op_And(void);
601 
637 FIRM_API ir_node *new_rd_Bad(dbg_info *dbgi, ir_graph *irg, ir_mode * mode);
638 
645 FIRM_API ir_node *new_r_Bad(ir_graph *irg, ir_mode * mode);
646 
653 FIRM_API ir_node *new_d_Bad(dbg_info *dbgi, ir_mode * mode);
654 
660 FIRM_API ir_node *new_Bad(ir_mode * mode);
661 
666 FIRM_API int is_Bad(const ir_node *node);
667 
669 FIRM_API ir_op *op_Bad;
670 
672 FIRM_API ir_op *get_op_Bad(void);
673 
687 typedef enum {
690 } n_Bitcast;
691 
700 FIRM_API ir_node *new_rd_Bitcast(dbg_info *dbgi, ir_node *block, ir_node * irn_op, ir_mode * mode);
701 
709 FIRM_API ir_node *new_r_Bitcast(ir_node *block, ir_node * irn_op, ir_mode * mode);
710 
718 FIRM_API ir_node *new_d_Bitcast(dbg_info *dbgi, ir_node * irn_op, ir_mode * mode);
719 
726 FIRM_API ir_node *new_Bitcast(ir_node * irn_op, ir_mode * mode);
727 
732 FIRM_API int is_Bitcast(const ir_node *node);
733 
735 FIRM_API ir_node *get_Bitcast_op(const ir_node *node);
737 FIRM_API void set_Bitcast_op(ir_node *node, ir_node *op);
739 FIRM_API ir_op *op_Bitcast;
740 
742 FIRM_API ir_op *get_op_Bitcast(void);
743 
761 FIRM_API ir_node *new_rd_Block(dbg_info *dbgi, ir_graph *irg, int arity, ir_node *const * in);
762 
770 FIRM_API ir_node *new_r_Block(ir_graph *irg, int arity, ir_node *const * in);
771 
779 FIRM_API ir_node *new_d_Block(dbg_info *dbgi, int arity, ir_node *const * in);
780 
787 FIRM_API ir_node *new_Block(int arity, ir_node *const * in);
788 
793 FIRM_API int is_Block(const ir_node *node);
794 
796 FIRM_API int get_Block_n_cfgpreds(ir_node const *node);
798 FIRM_API ir_node *get_Block_cfgpred(ir_node const *node, int pos);
800 FIRM_API void set_Block_cfgpred(ir_node *node, int pos, ir_node *cfgpred);
803 
805 FIRM_API ir_entity* get_Block_entity(const ir_node *node);
807 FIRM_API void set_Block_entity(ir_node *node, ir_entity* entity);
809 FIRM_API ir_op *op_Block;
810 
812 FIRM_API ir_op *get_op_Block(void);
813 
826 typedef enum {
829 } n_Builtin;
830 
834 typedef enum {
837 } pn_Builtin;
838 
850 FIRM_API ir_node *new_rd_Builtin(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, int arity, ir_node *const * in, ir_builtin_kind kind, ir_type* type);
851 
862 FIRM_API ir_node *new_r_Builtin(ir_node *block, ir_node * irn_mem, int arity, ir_node *const * in, ir_builtin_kind kind, ir_type* type);
863 
874 FIRM_API ir_node *new_d_Builtin(dbg_info *dbgi, ir_node * irn_mem, int arity, ir_node *const * in, ir_builtin_kind kind, ir_type* type);
875 
885 FIRM_API ir_node *new_Builtin(ir_node * irn_mem, int arity, ir_node *const * in, ir_builtin_kind kind, ir_type* type);
886 
891 FIRM_API int is_Builtin(const ir_node *node);
892 
894 FIRM_API ir_node *get_Builtin_mem(const ir_node *node);
896 FIRM_API void set_Builtin_mem(ir_node *node, ir_node *mem);
898 FIRM_API int get_Builtin_n_params(ir_node const *node);
900 FIRM_API ir_node *get_Builtin_param(ir_node const *node, int pos);
902 FIRM_API void set_Builtin_param(ir_node *node, int pos, ir_node *param);
905 
907 FIRM_API ir_builtin_kind get_Builtin_kind(const ir_node *node);
909 FIRM_API void set_Builtin_kind(ir_node *node, ir_builtin_kind kind);
910 
912 FIRM_API ir_type* get_Builtin_type(const ir_node *node);
914 FIRM_API void set_Builtin_type(ir_node *node, ir_type* type);
916 FIRM_API ir_op *op_Builtin;
917 
919 FIRM_API ir_op *get_op_Builtin(void);
920 
936 typedef enum {
940 } n_Call;
941 
945 typedef enum {
951 } pn_Call;
952 
964 FIRM_API ir_node *new_rd_Call(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_ptr, int arity, ir_node *const * in, ir_type* type);
965 
976 FIRM_API ir_node *new_r_Call(ir_node *block, ir_node * irn_mem, ir_node * irn_ptr, int arity, ir_node *const * in, ir_type* type);
977 
988 FIRM_API ir_node *new_d_Call(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_ptr, int arity, ir_node *const * in, ir_type* type);
989 
999 FIRM_API ir_node *new_Call(ir_node * irn_mem, ir_node * irn_ptr, int arity, ir_node *const * in, ir_type* type);
1000 
1005 FIRM_API int is_Call(const ir_node *node);
1006 
1008 FIRM_API ir_node *get_Call_mem(const ir_node *node);
1010 FIRM_API void set_Call_mem(ir_node *node, ir_node *mem);
1012 FIRM_API ir_node *get_Call_ptr(const ir_node *node);
1014 FIRM_API void set_Call_ptr(ir_node *node, ir_node *ptr);
1016 FIRM_API int get_Call_n_params(ir_node const *node);
1018 FIRM_API ir_node *get_Call_param(ir_node const *node, int pos);
1020 FIRM_API void set_Call_param(ir_node *node, int pos, ir_node *param);
1023 
1025 FIRM_API ir_type* get_Call_type(const ir_node *node);
1027 FIRM_API void set_Call_type(ir_node *node, ir_type* type);
1029 FIRM_API ir_op *op_Call;
1030 
1032 FIRM_API ir_op *get_op_Call(void);
1033 
1047 typedef enum {
1051 } n_Cmp;
1052 
1062 FIRM_API ir_node *new_rd_Cmp(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right, ir_relation relation);
1063 
1072 FIRM_API ir_node *new_r_Cmp(ir_node *block, ir_node * irn_left, ir_node * irn_right, ir_relation relation);
1073 
1082 FIRM_API ir_node *new_d_Cmp(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right, ir_relation relation);
1083 
1091 FIRM_API ir_node *new_Cmp(ir_node * irn_left, ir_node * irn_right, ir_relation relation);
1092 
1097 FIRM_API int is_Cmp(const ir_node *node);
1098 
1100 FIRM_API ir_node *get_Cmp_left(const ir_node *node);
1102 FIRM_API void set_Cmp_left(ir_node *node, ir_node *left);
1104 FIRM_API ir_node *get_Cmp_right(const ir_node *node);
1106 FIRM_API void set_Cmp_right(ir_node *node, ir_node *right);
1107 
1109 FIRM_API ir_relation get_Cmp_relation(const ir_node *node);
1111 FIRM_API void set_Cmp_relation(ir_node *node, ir_relation relation);
1113 FIRM_API ir_op *op_Cmp;
1114 
1116 FIRM_API ir_op *get_op_Cmp(void);
1117 
1130 typedef enum {
1133 } n_Cond;
1134 
1138 typedef enum {
1142 } pn_Cond;
1143 
1151 FIRM_API ir_node *new_rd_Cond(dbg_info *dbgi, ir_node *block, ir_node * irn_selector);
1152 
1159 FIRM_API ir_node *new_r_Cond(ir_node *block, ir_node * irn_selector);
1160 
1167 FIRM_API ir_node *new_d_Cond(dbg_info *dbgi, ir_node * irn_selector);
1168 
1174 FIRM_API ir_node *new_Cond(ir_node * irn_selector);
1175 
1180 FIRM_API int is_Cond(const ir_node *node);
1181 
1183 FIRM_API ir_node *get_Cond_selector(const ir_node *node);
1185 FIRM_API void set_Cond_selector(ir_node *node, ir_node *selector);
1186 
1188 FIRM_API cond_jmp_predicate get_Cond_jmp_pred(const ir_node *node);
1190 FIRM_API void set_Cond_jmp_pred(ir_node *node, cond_jmp_predicate jmp_pred);
1192 FIRM_API ir_op *op_Cond;
1193 
1195 FIRM_API ir_op *get_op_Cond(void);
1196 
1217 typedef enum {
1221 } n_Confirm;
1222 
1232 FIRM_API ir_node *new_rd_Confirm(dbg_info *dbgi, ir_node *block, ir_node * irn_value, ir_node * irn_bound, ir_relation relation);
1233 
1242 FIRM_API ir_node *new_r_Confirm(ir_node *block, ir_node * irn_value, ir_node * irn_bound, ir_relation relation);
1243 
1252 FIRM_API ir_node *new_d_Confirm(dbg_info *dbgi, ir_node * irn_value, ir_node * irn_bound, ir_relation relation);
1253 
1261 FIRM_API ir_node *new_Confirm(ir_node * irn_value, ir_node * irn_bound, ir_relation relation);
1262 
1267 FIRM_API int is_Confirm(const ir_node *node);
1268 
1270 FIRM_API ir_node *get_Confirm_value(const ir_node *node);
1272 FIRM_API void set_Confirm_value(ir_node *node, ir_node *value);
1274 FIRM_API ir_node *get_Confirm_bound(const ir_node *node);
1276 FIRM_API void set_Confirm_bound(ir_node *node, ir_node *bound);
1277 
1279 FIRM_API ir_relation get_Confirm_relation(const ir_node *node);
1281 FIRM_API void set_Confirm_relation(ir_node *node, ir_relation relation);
1283 FIRM_API ir_op *op_Confirm;
1284 
1286 FIRM_API ir_op *get_op_Confirm(void);
1287 
1304 FIRM_API ir_node *new_rd_Const(dbg_info *dbgi, ir_graph *irg, ir_tarval* tarval);
1305 
1312 FIRM_API ir_node *new_r_Const(ir_graph *irg, ir_tarval* tarval);
1313 
1320 FIRM_API ir_node *new_d_Const(dbg_info *dbgi, ir_tarval* tarval);
1321 
1327 FIRM_API ir_node *new_Const(ir_tarval* tarval);
1328 
1333 FIRM_API int is_Const(const ir_node *node);
1334 
1335 
1337 FIRM_API ir_tarval* get_Const_tarval(const ir_node *node);
1339 FIRM_API void set_Const_tarval(ir_node *node, ir_tarval* tarval);
1341 FIRM_API ir_op *op_Const;
1342 
1344 FIRM_API ir_op *get_op_Const(void);
1345 
1358 typedef enum {
1361 } n_Conv;
1362 
1371 FIRM_API ir_node *new_rd_Conv(dbg_info *dbgi, ir_node *block, ir_node * irn_op, ir_mode * mode);
1372 
1380 FIRM_API ir_node *new_r_Conv(ir_node *block, ir_node * irn_op, ir_mode * mode);
1381 
1389 FIRM_API ir_node *new_d_Conv(dbg_info *dbgi, ir_node * irn_op, ir_mode * mode);
1390 
1397 FIRM_API ir_node *new_Conv(ir_node * irn_op, ir_mode * mode);
1398 
1403 FIRM_API int is_Conv(const ir_node *node);
1404 
1406 FIRM_API ir_node *get_Conv_op(const ir_node *node);
1408 FIRM_API void set_Conv_op(ir_node *node, ir_node *op);
1410 FIRM_API ir_op *op_Conv;
1411 
1413 FIRM_API ir_op *get_op_Conv(void);
1414 
1427 typedef enum {
1432 } n_CopyB;
1433 
1445 FIRM_API ir_node *new_rd_CopyB(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_dst, ir_node * irn_src, ir_type* type, ir_cons_flags flags);
1446 
1457 FIRM_API ir_node *new_r_CopyB(ir_node *block, ir_node * irn_mem, ir_node * irn_dst, ir_node * irn_src, ir_type* type, ir_cons_flags flags);
1458 
1469 FIRM_API ir_node *new_d_CopyB(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_dst, ir_node * irn_src, ir_type* type, ir_cons_flags flags);
1470 
1480 FIRM_API ir_node *new_CopyB(ir_node * irn_mem, ir_node * irn_dst, ir_node * irn_src, ir_type* type, ir_cons_flags flags);
1481 
1486 FIRM_API int is_CopyB(const ir_node *node);
1487 
1489 FIRM_API ir_node *get_CopyB_mem(const ir_node *node);
1491 FIRM_API void set_CopyB_mem(ir_node *node, ir_node *mem);
1493 FIRM_API ir_node *get_CopyB_dst(const ir_node *node);
1495 FIRM_API void set_CopyB_dst(ir_node *node, ir_node *dst);
1497 FIRM_API ir_node *get_CopyB_src(const ir_node *node);
1499 FIRM_API void set_CopyB_src(ir_node *node, ir_node *src);
1500 
1502 FIRM_API ir_type* get_CopyB_type(const ir_node *node);
1504 FIRM_API void set_CopyB_type(ir_node *node, ir_type* type);
1505 
1507 FIRM_API ir_volatility get_CopyB_volatility(const ir_node *node);
1509 FIRM_API void set_CopyB_volatility(ir_node *node, ir_volatility volatility);
1511 FIRM_API ir_op *op_CopyB;
1512 
1514 FIRM_API ir_op *get_op_CopyB(void);
1515 
1531 FIRM_API int is_Deleted(const ir_node *node);
1532 
1534 FIRM_API ir_op *op_Deleted;
1535 
1537 FIRM_API ir_op *get_op_Deleted(void);
1538 
1551 typedef enum {
1556 } n_Div;
1557 
1561 typedef enum {
1567 } pn_Div;
1568 
1579 FIRM_API ir_node *new_rd_Div(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
1580 
1590 FIRM_API ir_node *new_r_Div(ir_node *block, ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
1591 
1601 FIRM_API ir_node *new_d_Div(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
1602 
1611 FIRM_API ir_node *new_Div(ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
1612 
1617 FIRM_API int is_Div(const ir_node *node);
1618 
1620 FIRM_API ir_node *get_Div_mem(const ir_node *node);
1622 FIRM_API void set_Div_mem(ir_node *node, ir_node *mem);
1624 FIRM_API ir_node *get_Div_left(const ir_node *node);
1626 FIRM_API void set_Div_left(ir_node *node, ir_node *left);
1628 FIRM_API ir_node *get_Div_right(const ir_node *node);
1630 FIRM_API void set_Div_right(ir_node *node, ir_node *right);
1631 
1633 FIRM_API ir_mode* get_Div_resmode(const ir_node *node);
1635 FIRM_API void set_Div_resmode(ir_node *node, ir_mode* resmode);
1636 
1638 FIRM_API int get_Div_no_remainder(const ir_node *node);
1640 FIRM_API void set_Div_no_remainder(ir_node *node, int no_remainder);
1642 FIRM_API ir_op *op_Div;
1643 
1645 FIRM_API ir_op *get_op_Div(void);
1646 
1665 FIRM_API ir_node *new_rd_Dummy(dbg_info *dbgi, ir_graph *irg, ir_mode * mode);
1666 
1673 FIRM_API ir_node *new_r_Dummy(ir_graph *irg, ir_mode * mode);
1674 
1681 FIRM_API ir_node *new_d_Dummy(dbg_info *dbgi, ir_mode * mode);
1682 
1688 FIRM_API ir_node *new_Dummy(ir_mode * mode);
1689 
1694 FIRM_API int is_Dummy(const ir_node *node);
1695 
1697 FIRM_API ir_op *op_Dummy;
1698 
1700 FIRM_API ir_op *get_op_Dummy(void);
1701 
1720 FIRM_API ir_node *new_rd_End(dbg_info *dbgi, ir_graph *irg, int arity, ir_node *const * in);
1721 
1729 FIRM_API ir_node *new_r_End(ir_graph *irg, int arity, ir_node *const * in);
1730 
1738 FIRM_API ir_node *new_d_End(dbg_info *dbgi, int arity, ir_node *const * in);
1739 
1746 FIRM_API ir_node *new_End(int arity, ir_node *const * in);
1747 
1752 FIRM_API int is_End(const ir_node *node);
1753 
1755 FIRM_API int get_End_n_keepalives(ir_node const *node);
1757 FIRM_API ir_node *get_End_keepalive(ir_node const *node, int pos);
1759 FIRM_API void set_End_keepalive(ir_node *node, int pos, ir_node *keepalive);
1763 FIRM_API ir_op *op_End;
1764 
1766 FIRM_API ir_op *get_op_End(void);
1767 
1782 typedef enum {
1786 } n_Eor;
1787 
1796 FIRM_API ir_node *new_rd_Eor(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
1797 
1805 FIRM_API ir_node *new_r_Eor(ir_node *block, ir_node * irn_left, ir_node * irn_right);
1806 
1814 FIRM_API ir_node *new_d_Eor(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
1815 
1822 FIRM_API ir_node *new_Eor(ir_node * irn_left, ir_node * irn_right);
1823 
1828 FIRM_API int is_Eor(const ir_node *node);
1829 
1831 FIRM_API ir_node *get_Eor_left(const ir_node *node);
1833 FIRM_API void set_Eor_left(ir_node *node, ir_node *left);
1835 FIRM_API ir_node *get_Eor_right(const ir_node *node);
1837 FIRM_API void set_Eor_right(ir_node *node, ir_node *right);
1839 FIRM_API ir_op *op_Eor;
1840 
1842 FIRM_API ir_op *get_op_Eor(void);
1843 
1856 typedef enum {
1860 } n_Free;
1861 
1870 FIRM_API ir_node *new_rd_Free(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_ptr);
1871 
1879 FIRM_API ir_node *new_r_Free(ir_node *block, ir_node * irn_mem, ir_node * irn_ptr);
1880 
1888 FIRM_API ir_node *new_d_Free(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_ptr);
1889 
1896 FIRM_API ir_node *new_Free(ir_node * irn_mem, ir_node * irn_ptr);
1897 
1902 FIRM_API int is_Free(const ir_node *node);
1903 
1905 FIRM_API ir_node *get_Free_mem(const ir_node *node);
1907 FIRM_API void set_Free_mem(ir_node *node, ir_node *mem);
1909 FIRM_API ir_node *get_Free_ptr(const ir_node *node);
1911 FIRM_API void set_Free_ptr(ir_node *node, ir_node *ptr);
1913 FIRM_API ir_op *op_Free;
1914 
1916 FIRM_API ir_op *get_op_Free(void);
1917 
1932 typedef enum {
1935 } n_IJmp;
1936 
1944 FIRM_API ir_node *new_rd_IJmp(dbg_info *dbgi, ir_node *block, ir_node * irn_target);
1945 
1952 FIRM_API ir_node *new_r_IJmp(ir_node *block, ir_node * irn_target);
1953 
1960 FIRM_API ir_node *new_d_IJmp(dbg_info *dbgi, ir_node * irn_target);
1961 
1967 FIRM_API ir_node *new_IJmp(ir_node * irn_target);
1968 
1973 FIRM_API int is_IJmp(const ir_node *node);
1974 
1976 FIRM_API ir_node *get_IJmp_target(const ir_node *node);
1978 FIRM_API void set_IJmp_target(ir_node *node, ir_node *target);
1980 FIRM_API ir_op *op_IJmp;
1981 
1983 FIRM_API ir_op *get_op_IJmp(void);
1984 
2000 typedef enum {
2003 } n_Id;
2004 
2005 
2010 FIRM_API int is_Id(const ir_node *node);
2011 
2013 FIRM_API ir_node *get_Id_pred(const ir_node *node);
2015 FIRM_API void set_Id_pred(ir_node *node, ir_node *pred);
2017 FIRM_API ir_op *op_Id;
2018 
2020 FIRM_API ir_op *get_op_Id(void);
2021 
2037 FIRM_API ir_node *new_rd_Jmp(dbg_info *dbgi, ir_node *block);
2038 
2044 FIRM_API ir_node *new_r_Jmp(ir_node *block);
2045 
2051 FIRM_API ir_node *new_d_Jmp(dbg_info *dbgi);
2052 
2057 FIRM_API ir_node *new_Jmp(void);
2058 
2063 FIRM_API int is_Jmp(const ir_node *node);
2064 
2066 FIRM_API ir_op *op_Jmp;
2067 
2069 FIRM_API ir_op *get_op_Jmp(void);
2070 
2083 typedef enum {
2087 } n_Load;
2088 
2092 typedef enum {
2098 } pn_Load;
2099 
2111 FIRM_API ir_node *new_rd_Load(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_ptr, ir_mode* mode, ir_type* type, ir_cons_flags flags);
2112 
2123 FIRM_API ir_node *new_r_Load(ir_node *block, ir_node * irn_mem, ir_node * irn_ptr, ir_mode* mode, ir_type* type, ir_cons_flags flags);
2124 
2135 FIRM_API ir_node *new_d_Load(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_ptr, ir_mode* mode, ir_type* type, ir_cons_flags flags);
2136 
2146 FIRM_API ir_node *new_Load(ir_node * irn_mem, ir_node * irn_ptr, ir_mode* mode, ir_type* type, ir_cons_flags flags);
2147 
2152 FIRM_API int is_Load(const ir_node *node);
2153 
2155 FIRM_API ir_node *get_Load_mem(const ir_node *node);
2157 FIRM_API void set_Load_mem(ir_node *node, ir_node *mem);
2159 FIRM_API ir_node *get_Load_ptr(const ir_node *node);
2161 FIRM_API void set_Load_ptr(ir_node *node, ir_node *ptr);
2162 
2164 FIRM_API ir_mode* get_Load_mode(const ir_node *node);
2166 FIRM_API void set_Load_mode(ir_node *node, ir_mode* mode);
2167 
2169 FIRM_API ir_type* get_Load_type(const ir_node *node);
2171 FIRM_API void set_Load_type(ir_node *node, ir_type* type);
2172 
2174 FIRM_API ir_volatility get_Load_volatility(const ir_node *node);
2176 FIRM_API void set_Load_volatility(ir_node *node, ir_volatility volatility);
2177 
2179 FIRM_API ir_align get_Load_unaligned(const ir_node *node);
2181 FIRM_API void set_Load_unaligned(ir_node *node, ir_align unaligned);
2183 FIRM_API ir_op *op_Load;
2184 
2186 FIRM_API ir_op *get_op_Load(void);
2187 
2203 typedef enum {
2206 } n_Member;
2207 
2216 FIRM_API ir_node *new_rd_Member(dbg_info *dbgi, ir_node *block, ir_node * irn_ptr, ir_entity* entity);
2217 
2225 FIRM_API ir_node *new_r_Member(ir_node *block, ir_node * irn_ptr, ir_entity* entity);
2226 
2234 FIRM_API ir_node *new_d_Member(dbg_info *dbgi, ir_node * irn_ptr, ir_entity* entity);
2235 
2242 FIRM_API ir_node *new_Member(ir_node * irn_ptr, ir_entity* entity);
2243 
2248 FIRM_API int is_Member(const ir_node *node);
2249 
2251 FIRM_API ir_node *get_Member_ptr(const ir_node *node);
2253 FIRM_API void set_Member_ptr(ir_node *node, ir_node *ptr);
2254 
2256 FIRM_API ir_entity* get_Member_entity(const ir_node *node);
2258 FIRM_API void set_Member_entity(ir_node *node, ir_entity* entity);
2260 FIRM_API ir_op *op_Member;
2261 
2263 FIRM_API ir_op *get_op_Member(void);
2264 
2277 typedef enum {
2280 } n_Minus;
2281 
2289 FIRM_API ir_node *new_rd_Minus(dbg_info *dbgi, ir_node *block, ir_node * irn_op);
2290 
2297 FIRM_API ir_node *new_r_Minus(ir_node *block, ir_node * irn_op);
2298 
2305 FIRM_API ir_node *new_d_Minus(dbg_info *dbgi, ir_node * irn_op);
2306 
2312 FIRM_API ir_node *new_Minus(ir_node * irn_op);
2313 
2318 FIRM_API int is_Minus(const ir_node *node);
2319 
2321 FIRM_API ir_node *get_Minus_op(const ir_node *node);
2323 FIRM_API void set_Minus_op(ir_node *node, ir_node *op);
2325 FIRM_API ir_op *op_Minus;
2326 
2328 FIRM_API ir_op *get_op_Minus(void);
2329 
2349 typedef enum {
2354 } n_Mod;
2355 
2359 typedef enum {
2365 } pn_Mod;
2366 
2377 FIRM_API ir_node *new_rd_Mod(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
2378 
2388 FIRM_API ir_node *new_r_Mod(ir_node *block, ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
2389 
2399 FIRM_API ir_node *new_d_Mod(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
2400 
2409 FIRM_API ir_node *new_Mod(ir_node * irn_mem, ir_node * irn_left, ir_node * irn_right, int pinned);
2410 
2415 FIRM_API int is_Mod(const ir_node *node);
2416 
2418 FIRM_API ir_node *get_Mod_mem(const ir_node *node);
2420 FIRM_API void set_Mod_mem(ir_node *node, ir_node *mem);
2422 FIRM_API ir_node *get_Mod_left(const ir_node *node);
2424 FIRM_API void set_Mod_left(ir_node *node, ir_node *left);
2426 FIRM_API ir_node *get_Mod_right(const ir_node *node);
2428 FIRM_API void set_Mod_right(ir_node *node, ir_node *right);
2429 
2431 FIRM_API ir_mode* get_Mod_resmode(const ir_node *node);
2433 FIRM_API void set_Mod_resmode(ir_node *node, ir_mode* resmode);
2435 FIRM_API ir_op *op_Mod;
2436 
2438 FIRM_API ir_op *get_op_Mod(void);
2439 
2452 typedef enum {
2456 } n_Mul;
2457 
2466 FIRM_API ir_node *new_rd_Mul(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
2467 
2475 FIRM_API ir_node *new_r_Mul(ir_node *block, ir_node * irn_left, ir_node * irn_right);
2476 
2484 FIRM_API ir_node *new_d_Mul(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
2485 
2492 FIRM_API ir_node *new_Mul(ir_node * irn_left, ir_node * irn_right);
2493 
2498 FIRM_API int is_Mul(const ir_node *node);
2499 
2501 FIRM_API ir_node *get_Mul_left(const ir_node *node);
2503 FIRM_API void set_Mul_left(ir_node *node, ir_node *left);
2505 FIRM_API ir_node *get_Mul_right(const ir_node *node);
2507 FIRM_API void set_Mul_right(ir_node *node, ir_node *right);
2509 FIRM_API ir_op *op_Mul;
2510 
2512 FIRM_API ir_op *get_op_Mul(void);
2513 
2527 typedef enum {
2531 } n_Mulh;
2532 
2541 FIRM_API ir_node *new_rd_Mulh(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
2542 
2550 FIRM_API ir_node *new_r_Mulh(ir_node *block, ir_node * irn_left, ir_node * irn_right);
2551 
2559 FIRM_API ir_node *new_d_Mulh(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
2560 
2567 FIRM_API ir_node *new_Mulh(ir_node * irn_left, ir_node * irn_right);
2568 
2573 FIRM_API int is_Mulh(const ir_node *node);
2574 
2576 FIRM_API ir_node *get_Mulh_left(const ir_node *node);
2578 FIRM_API void set_Mulh_left(ir_node *node, ir_node *left);
2580 FIRM_API ir_node *get_Mulh_right(const ir_node *node);
2582 FIRM_API void set_Mulh_right(ir_node *node, ir_node *right);
2584 FIRM_API ir_op *op_Mulh;
2585 
2587 FIRM_API ir_op *get_op_Mulh(void);
2588 
2602 typedef enum {
2607 } n_Mux;
2608 
2618 FIRM_API ir_node *new_rd_Mux(dbg_info *dbgi, ir_node *block, ir_node * irn_sel, ir_node * irn_false, ir_node * irn_true);
2619 
2628 FIRM_API ir_node *new_r_Mux(ir_node *block, ir_node * irn_sel, ir_node * irn_false, ir_node * irn_true);
2629 
2638 FIRM_API ir_node *new_d_Mux(dbg_info *dbgi, ir_node * irn_sel, ir_node * irn_false, ir_node * irn_true);
2639 
2647 FIRM_API ir_node *new_Mux(ir_node * irn_sel, ir_node * irn_false, ir_node * irn_true);
2648 
2653 FIRM_API int is_Mux(const ir_node *node);
2654 
2656 FIRM_API ir_node *get_Mux_sel(const ir_node *node);
2658 FIRM_API void set_Mux_sel(ir_node *node, ir_node *sel);
2660 FIRM_API ir_node *get_Mux_false(const ir_node *node);
2662 FIRM_API void set_Mux_false(ir_node *node, ir_node *false_);
2664 FIRM_API ir_node *get_Mux_true(const ir_node *node);
2666 FIRM_API void set_Mux_true(ir_node *node, ir_node *true_);
2668 FIRM_API ir_op *op_Mux;
2669 
2671 FIRM_API ir_op *get_op_Mux(void);
2672 
2688 FIRM_API ir_node *new_rd_NoMem(dbg_info *dbgi, ir_graph *irg);
2689 
2695 FIRM_API ir_node *new_r_NoMem(ir_graph *irg);
2696 
2702 FIRM_API ir_node *new_d_NoMem(dbg_info *dbgi);
2703 
2708 FIRM_API ir_node *new_NoMem(void);
2709 
2714 FIRM_API int is_NoMem(const ir_node *node);
2715 
2717 FIRM_API ir_op *op_NoMem;
2718 
2720 FIRM_API ir_op *get_op_NoMem(void);
2721 
2734 typedef enum {
2737 } n_Not;
2738 
2746 FIRM_API ir_node *new_rd_Not(dbg_info *dbgi, ir_node *block, ir_node * irn_op);
2747 
2754 FIRM_API ir_node *new_r_Not(ir_node *block, ir_node * irn_op);
2755 
2762 FIRM_API ir_node *new_d_Not(dbg_info *dbgi, ir_node * irn_op);
2763 
2769 FIRM_API ir_node *new_Not(ir_node * irn_op);
2770 
2775 FIRM_API int is_Not(const ir_node *node);
2776 
2778 FIRM_API ir_node *get_Not_op(const ir_node *node);
2780 FIRM_API void set_Not_op(ir_node *node, ir_node *op);
2782 FIRM_API ir_op *op_Not;
2783 
2785 FIRM_API ir_op *get_op_Not(void);
2786 
2804 FIRM_API ir_node *new_rd_Offset(dbg_info *dbgi, ir_graph *irg, ir_mode * mode, ir_entity* entity);
2805 
2813 FIRM_API ir_node *new_r_Offset(ir_graph *irg, ir_mode * mode, ir_entity* entity);
2814 
2822 FIRM_API ir_node *new_d_Offset(dbg_info *dbgi, ir_mode * mode, ir_entity* entity);
2823 
2830 FIRM_API ir_node *new_Offset(ir_mode * mode, ir_entity* entity);
2831 
2836 FIRM_API int is_Offset(const ir_node *node);
2837 
2838 
2840 FIRM_API ir_entity* get_Offset_entity(const ir_node *node);
2842 FIRM_API void set_Offset_entity(ir_node *node, ir_entity* entity);
2844 FIRM_API ir_op *op_Offset;
2845 
2847 FIRM_API ir_op *get_op_Offset(void);
2848 
2861 typedef enum {
2865 } n_Or;
2866 
2875 FIRM_API ir_node *new_rd_Or(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
2876 
2884 FIRM_API ir_node *new_r_Or(ir_node *block, ir_node * irn_left, ir_node * irn_right);
2885 
2893 FIRM_API ir_node *new_d_Or(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
2894 
2901 FIRM_API ir_node *new_Or(ir_node * irn_left, ir_node * irn_right);
2902 
2907 FIRM_API int is_Or(const ir_node *node);
2908 
2910 FIRM_API ir_node *get_Or_left(const ir_node *node);
2912 FIRM_API void set_Or_left(ir_node *node, ir_node *left);
2914 FIRM_API ir_node *get_Or_right(const ir_node *node);
2916 FIRM_API void set_Or_right(ir_node *node, ir_node *right);
2918 FIRM_API ir_op *op_Or;
2919 
2921 FIRM_API ir_op *get_op_Or(void);
2922 
2943 FIRM_API ir_node *new_rd_Phi(dbg_info *dbgi, ir_node *block, int arity, ir_node *const * in, ir_mode * mode);
2944 
2953 FIRM_API ir_node *new_r_Phi(ir_node *block, int arity, ir_node *const * in, ir_mode * mode);
2954 
2963 FIRM_API ir_node *new_d_Phi(dbg_info *dbgi, int arity, ir_node *const * in, ir_mode * mode);
2964 
2972 FIRM_API ir_node *new_Phi(int arity, ir_node *const * in, ir_mode * mode);
2973 
2978 FIRM_API int is_Phi(const ir_node *node);
2979 
2981 FIRM_API int get_Phi_n_preds(ir_node const *node);
2983 FIRM_API ir_node *get_Phi_pred(ir_node const *node, int pos);
2985 FIRM_API void set_Phi_pred(ir_node *node, int pos, ir_node *pred);
2988 
2990 FIRM_API int get_Phi_loop(const ir_node *node);
2992 FIRM_API void set_Phi_loop(ir_node *node, int loop);
2994 FIRM_API ir_op *op_Phi;
2995 
2997 FIRM_API ir_op *get_op_Phi(void);
2998 
3013 typedef enum {
3016 } n_Pin;
3017 
3025 FIRM_API ir_node *new_rd_Pin(dbg_info *dbgi, ir_node *block, ir_node * irn_op);
3026 
3033 FIRM_API ir_node *new_r_Pin(ir_node *block, ir_node * irn_op);
3034 
3041 FIRM_API ir_node *new_d_Pin(dbg_info *dbgi, ir_node * irn_op);
3042 
3048 FIRM_API ir_node *new_Pin(ir_node * irn_op);
3049 
3054 FIRM_API int is_Pin(const ir_node *node);
3055 
3057 FIRM_API ir_node *get_Pin_op(const ir_node *node);
3059 FIRM_API void set_Pin_op(ir_node *node, ir_node *op);
3061 FIRM_API ir_op *op_Pin;
3062 
3064 FIRM_API ir_op *get_op_Pin(void);
3065 
3078 typedef enum {
3081 } n_Proj;
3082 
3091 FIRM_API ir_node *new_rd_Proj(dbg_info *dbgi, ir_node * irn_pred, ir_mode * mode, unsigned num);
3092 
3100 FIRM_API ir_node *new_r_Proj(ir_node * irn_pred, ir_mode * mode, unsigned num);
3101 
3110 FIRM_API ir_node *new_d_Proj(dbg_info *dbgi, ir_node * irn_pred, ir_mode * mode, unsigned num);
3111 
3119 FIRM_API ir_node *new_Proj(ir_node * irn_pred, ir_mode * mode, unsigned num);
3120 
3125 FIRM_API int is_Proj(const ir_node *node);
3126 
3128 FIRM_API ir_node *get_Proj_pred(const ir_node *node);
3130 FIRM_API void set_Proj_pred(ir_node *node, ir_node *pred);
3131 
3133 FIRM_API unsigned get_Proj_num(const ir_node *node);
3135 FIRM_API void set_Proj_num(ir_node *node, unsigned num);
3137 FIRM_API ir_op *op_Proj;
3138 
3140 FIRM_API ir_op *get_op_Proj(void);
3141 
3156 typedef enum {
3160 } n_Raise;
3161 
3165 typedef enum {
3169 } pn_Raise;
3170 
3179 FIRM_API ir_node *new_rd_Raise(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_exo_ptr);
3180 
3188 FIRM_API ir_node *new_r_Raise(ir_node *block, ir_node * irn_mem, ir_node * irn_exo_ptr);
3189 
3197 FIRM_API ir_node *new_d_Raise(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_exo_ptr);
3198 
3205 FIRM_API ir_node *new_Raise(ir_node * irn_mem, ir_node * irn_exo_ptr);
3206 
3211 FIRM_API int is_Raise(const ir_node *node);
3212 
3214 FIRM_API ir_node *get_Raise_mem(const ir_node *node);
3216 FIRM_API void set_Raise_mem(ir_node *node, ir_node *mem);
3218 FIRM_API ir_node *get_Raise_exo_ptr(const ir_node *node);
3220 FIRM_API void set_Raise_exo_ptr(ir_node *node, ir_node *exo_ptr);
3222 FIRM_API ir_op *op_Raise;
3223 
3225 FIRM_API ir_op *get_op_Raise(void);
3226 
3240 typedef enum {
3243 } n_Return;
3244 
3254 FIRM_API ir_node *new_rd_Return(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, int arity, ir_node *const * in);
3255 
3264 FIRM_API ir_node *new_r_Return(ir_node *block, ir_node * irn_mem, int arity, ir_node *const * in);
3265 
3274 FIRM_API ir_node *new_d_Return(dbg_info *dbgi, ir_node * irn_mem, int arity, ir_node *const * in);
3275 
3283 FIRM_API ir_node *new_Return(ir_node * irn_mem, int arity, ir_node *const * in);
3284 
3289 FIRM_API int is_Return(const ir_node *node);
3290 
3292 FIRM_API ir_node *get_Return_mem(const ir_node *node);
3294 FIRM_API void set_Return_mem(ir_node *node, ir_node *mem);
3296 FIRM_API int get_Return_n_ress(ir_node const *node);
3298 FIRM_API ir_node *get_Return_res(ir_node const *node, int pos);
3300 FIRM_API void set_Return_res(ir_node *node, int pos, ir_node *res);
3304 FIRM_API ir_op *op_Return;
3305 
3307 FIRM_API ir_op *get_op_Return(void);
3308 
3324 typedef enum {
3328 } n_Sel;
3329 
3339 FIRM_API ir_node *new_rd_Sel(dbg_info *dbgi, ir_node *block, ir_node * irn_ptr, ir_node * irn_index, ir_type* type);
3340 
3349 FIRM_API ir_node *new_r_Sel(ir_node *block, ir_node * irn_ptr, ir_node * irn_index, ir_type* type);
3350 
3359 FIRM_API ir_node *new_d_Sel(dbg_info *dbgi, ir_node * irn_ptr, ir_node * irn_index, ir_type* type);
3360 
3368 FIRM_API ir_node *new_Sel(ir_node * irn_ptr, ir_node * irn_index, ir_type* type);
3369 
3374 FIRM_API int is_Sel(const ir_node *node);
3375 
3377 FIRM_API ir_node *get_Sel_ptr(const ir_node *node);
3379 FIRM_API void set_Sel_ptr(ir_node *node, ir_node *ptr);
3381 FIRM_API ir_node *get_Sel_index(const ir_node *node);
3383 FIRM_API void set_Sel_index(ir_node *node, ir_node *index);
3384 
3386 FIRM_API ir_type* get_Sel_type(const ir_node *node);
3388 FIRM_API void set_Sel_type(ir_node *node, ir_type* type);
3390 FIRM_API ir_op *op_Sel;
3391 
3393 FIRM_API ir_op *get_op_Sel(void);
3394 
3411 typedef enum {
3415 } n_Shl;
3416 
3425 FIRM_API ir_node *new_rd_Shl(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
3426 
3434 FIRM_API ir_node *new_r_Shl(ir_node *block, ir_node * irn_left, ir_node * irn_right);
3435 
3443 FIRM_API ir_node *new_d_Shl(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
3444 
3451 FIRM_API ir_node *new_Shl(ir_node * irn_left, ir_node * irn_right);
3452 
3457 FIRM_API int is_Shl(const ir_node *node);
3458 
3460 FIRM_API ir_node *get_Shl_left(const ir_node *node);
3462 FIRM_API void set_Shl_left(ir_node *node, ir_node *left);
3464 FIRM_API ir_node *get_Shl_right(const ir_node *node);
3466 FIRM_API void set_Shl_right(ir_node *node, ir_node *right);
3468 FIRM_API ir_op *op_Shl;
3469 
3471 FIRM_API ir_op *get_op_Shl(void);
3472 
3489 typedef enum {
3493 } n_Shr;
3494 
3503 FIRM_API ir_node *new_rd_Shr(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
3504 
3512 FIRM_API ir_node *new_r_Shr(ir_node *block, ir_node * irn_left, ir_node * irn_right);
3513 
3521 FIRM_API ir_node *new_d_Shr(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
3522 
3529 FIRM_API ir_node *new_Shr(ir_node * irn_left, ir_node * irn_right);
3530 
3535 FIRM_API int is_Shr(const ir_node *node);
3536 
3538 FIRM_API ir_node *get_Shr_left(const ir_node *node);
3540 FIRM_API void set_Shr_left(ir_node *node, ir_node *left);
3542 FIRM_API ir_node *get_Shr_right(const ir_node *node);
3544 FIRM_API void set_Shr_right(ir_node *node, ir_node *right);
3546 FIRM_API ir_op *op_Shr;
3547 
3549 FIRM_API ir_op *get_op_Shr(void);
3550 
3568 typedef enum {
3572 } n_Shrs;
3573 
3582 FIRM_API ir_node *new_rd_Shrs(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
3583 
3591 FIRM_API ir_node *new_r_Shrs(ir_node *block, ir_node * irn_left, ir_node * irn_right);
3592 
3600 FIRM_API ir_node *new_d_Shrs(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
3601 
3608 FIRM_API ir_node *new_Shrs(ir_node * irn_left, ir_node * irn_right);
3609 
3614 FIRM_API int is_Shrs(const ir_node *node);
3615 
3617 FIRM_API ir_node *get_Shrs_left(const ir_node *node);
3619 FIRM_API void set_Shrs_left(ir_node *node, ir_node *left);
3621 FIRM_API ir_node *get_Shrs_right(const ir_node *node);
3623 FIRM_API void set_Shrs_right(ir_node *node, ir_node *right);
3625 FIRM_API ir_op *op_Shrs;
3626 
3628 FIRM_API ir_op *get_op_Shrs(void);
3629 
3647 FIRM_API ir_node *new_rd_Size(dbg_info *dbgi, ir_graph *irg, ir_mode * mode, ir_type* type);
3648 
3656 FIRM_API ir_node *new_r_Size(ir_graph *irg, ir_mode * mode, ir_type* type);
3657 
3665 FIRM_API ir_node *new_d_Size(dbg_info *dbgi, ir_mode * mode, ir_type* type);
3666 
3673 FIRM_API ir_node *new_Size(ir_mode * mode, ir_type* type);
3674 
3679 FIRM_API int is_Size(const ir_node *node);
3680 
3681 
3683 FIRM_API ir_type* get_Size_type(const ir_node *node);
3685 FIRM_API void set_Size_type(ir_node *node, ir_type* type);
3687 FIRM_API ir_op *op_Size;
3688 
3690 FIRM_API ir_op *get_op_Size(void);
3691 
3704 typedef enum {
3709 } pn_Start;
3710 
3717 FIRM_API ir_node *new_rd_Start(dbg_info *dbgi, ir_graph *irg);
3718 
3724 FIRM_API ir_node *new_r_Start(ir_graph *irg);
3725 
3731 FIRM_API ir_node *new_d_Start(dbg_info *dbgi);
3732 
3737 FIRM_API ir_node *new_Start(void);
3738 
3743 FIRM_API int is_Start(const ir_node *node);
3744 
3746 FIRM_API ir_op *op_Start;
3747 
3749 FIRM_API ir_op *get_op_Start(void);
3750 
3763 typedef enum {
3768 } n_Store;
3769 
3773 typedef enum {
3778 } pn_Store;
3779 
3791 FIRM_API ir_node *new_rd_Store(dbg_info *dbgi, ir_node *block, ir_node * irn_mem, ir_node * irn_ptr, ir_node * irn_value, ir_type* type, ir_cons_flags flags);
3792 
3803 FIRM_API ir_node *new_r_Store(ir_node *block, ir_node * irn_mem, ir_node * irn_ptr, ir_node * irn_value, ir_type* type, ir_cons_flags flags);
3804 
3815 FIRM_API ir_node *new_d_Store(dbg_info *dbgi, ir_node * irn_mem, ir_node * irn_ptr, ir_node * irn_value, ir_type* type, ir_cons_flags flags);
3816 
3826 FIRM_API ir_node *new_Store(ir_node * irn_mem, ir_node * irn_ptr, ir_node * irn_value, ir_type* type, ir_cons_flags flags);
3827 
3832 FIRM_API int is_Store(const ir_node *node);
3833 
3835 FIRM_API ir_node *get_Store_mem(const ir_node *node);
3837 FIRM_API void set_Store_mem(ir_node *node, ir_node *mem);
3839 FIRM_API ir_node *get_Store_ptr(const ir_node *node);
3841 FIRM_API void set_Store_ptr(ir_node *node, ir_node *ptr);
3843 FIRM_API ir_node *get_Store_value(const ir_node *node);
3845 FIRM_API void set_Store_value(ir_node *node, ir_node *value);
3846 
3848 FIRM_API ir_type* get_Store_type(const ir_node *node);
3850 FIRM_API void set_Store_type(ir_node *node, ir_type* type);
3851 
3853 FIRM_API ir_volatility get_Store_volatility(const ir_node *node);
3855 FIRM_API void set_Store_volatility(ir_node *node, ir_volatility volatility);
3856 
3858 FIRM_API ir_align get_Store_unaligned(const ir_node *node);
3860 FIRM_API void set_Store_unaligned(ir_node *node, ir_align unaligned);
3862 FIRM_API ir_op *op_Store;
3863 
3865 FIRM_API ir_op *get_op_Store(void);
3866 
3879 typedef enum {
3883 } n_Sub;
3884 
3893 FIRM_API ir_node *new_rd_Sub(dbg_info *dbgi, ir_node *block, ir_node * irn_left, ir_node * irn_right);
3894 
3902 FIRM_API ir_node *new_r_Sub(ir_node *block, ir_node * irn_left, ir_node * irn_right);
3903 
3911 FIRM_API ir_node *new_d_Sub(dbg_info *dbgi, ir_node * irn_left, ir_node * irn_right);
3912 
3919 FIRM_API ir_node *new_Sub(ir_node * irn_left, ir_node * irn_right);
3920 
3925 FIRM_API int is_Sub(const ir_node *node);
3926 
3928 FIRM_API ir_node *get_Sub_left(const ir_node *node);
3930 FIRM_API void set_Sub_left(ir_node *node, ir_node *left);
3932 FIRM_API ir_node *get_Sub_right(const ir_node *node);
3934 FIRM_API void set_Sub_right(ir_node *node, ir_node *right);
3936 FIRM_API ir_op *op_Sub;
3937 
3939 FIRM_API ir_op *get_op_Sub(void);
3940 
3956 typedef enum {
3959 } n_Switch;
3960 
3964 typedef enum {
3967 } pn_Switch;
3968 
3978 FIRM_API ir_node *new_rd_Switch(dbg_info *dbgi, ir_node *block, ir_node * irn_selector, unsigned n_outs, ir_switch_table* table);
3979 
3988 FIRM_API ir_node *new_r_Switch(ir_node *block, ir_node * irn_selector, unsigned n_outs, ir_switch_table* table);
3989 
3998 FIRM_API ir_node *new_d_Switch(dbg_info *dbgi, ir_node * irn_selector, unsigned n_outs, ir_switch_table* table);
3999 
4007 FIRM_API ir_node *new_Switch(ir_node * irn_selector, unsigned n_outs, ir_switch_table* table);
4008 
4013 FIRM_API int is_Switch(const ir_node *node);
4014 
4016 FIRM_API ir_node *get_Switch_selector(const ir_node *node);
4018 FIRM_API void set_Switch_selector(ir_node *node, ir_node *selector);
4019 
4021 FIRM_API unsigned get_Switch_n_outs(const ir_node *node);
4023 FIRM_API void set_Switch_n_outs(ir_node *node, unsigned n_outs);
4024 
4026 FIRM_API ir_switch_table* get_Switch_table(const ir_node *node);
4028 FIRM_API void set_Switch_table(ir_node *node, ir_switch_table* table);
4030 FIRM_API ir_op *op_Switch;
4031 
4033 FIRM_API ir_op *get_op_Switch(void);
4034 
4056 FIRM_API ir_node *new_rd_Sync(dbg_info *dbgi, ir_node *block, int arity, ir_node *const * in);
4057 
4065 FIRM_API ir_node *new_r_Sync(ir_node *block, int arity, ir_node *const * in);
4066 
4074 FIRM_API ir_node *new_d_Sync(dbg_info *dbgi, int arity, ir_node *const * in);
4075 
4082 FIRM_API ir_node *new_Sync(int arity, ir_node *const * in);
4083 
4088 FIRM_API int is_Sync(const ir_node *node);
4089 
4091 FIRM_API int get_Sync_n_preds(ir_node const *node);
4093 FIRM_API ir_node *get_Sync_pred(ir_node const *node, int pos);
4095 FIRM_API void set_Sync_pred(ir_node *node, int pos, ir_node *pred);
4099 FIRM_API ir_op *op_Sync;
4100 
4102 FIRM_API ir_op *get_op_Sync(void);
4103 
4128 FIRM_API ir_node *new_rd_Tuple(dbg_info *dbgi, ir_node *block, int arity, ir_node *const * in);
4129 
4137 FIRM_API ir_node *new_r_Tuple(ir_node *block, int arity, ir_node *const * in);
4138 
4146 FIRM_API ir_node *new_d_Tuple(dbg_info *dbgi, int arity, ir_node *const * in);
4147 
4154 FIRM_API ir_node *new_Tuple(int arity, ir_node *const * in);
4155 
4160 FIRM_API int is_Tuple(const ir_node *node);
4161 
4163 FIRM_API int get_Tuple_n_preds(ir_node const *node);
4165 FIRM_API ir_node *get_Tuple_pred(ir_node const *node, int pos);
4167 FIRM_API void set_Tuple_pred(ir_node *node, int pos, ir_node *pred);
4171 FIRM_API ir_op *op_Tuple;
4172 
4174 FIRM_API ir_op *get_op_Tuple(void);
4175 
4197 FIRM_API ir_node *new_rd_Unknown(dbg_info *dbgi, ir_graph *irg, ir_mode * mode);
4198 
4205 FIRM_API ir_node *new_r_Unknown(ir_graph *irg, ir_mode * mode);
4206 
4213 FIRM_API ir_node *new_d_Unknown(dbg_info *dbgi, ir_mode * mode);
4214 
4220 FIRM_API ir_node *new_Unknown(ir_mode * mode);
4221 
4226 FIRM_API int is_Unknown(const ir_node *node);
4227 
4229 FIRM_API ir_op *op_Unknown;
4230 
4232 FIRM_API ir_op *get_op_Unknown(void);
4233 
4240 FIRM_API int is_binop(const ir_node *node);
4244 FIRM_API int is_entconst(const ir_node *node);
4246 FIRM_API ir_entity* get_entconst_entity(const ir_node *node);
4248 FIRM_API void set_entconst_entity(ir_node *node, ir_entity* entity);
4253 FIRM_API int is_typeconst(const ir_node *node);
4255 FIRM_API ir_type* get_typeconst_type(const ir_node *node);
4257 FIRM_API void set_typeconst_type(ir_node *node, ir_type* type);
4258 
4259 
4262 #endif
ir_node * new_r_Not(ir_node *block, ir_node *irn_op)
Construct a Not node.
ir_op * get_op_Sel(void)
Returns opcode for Sel nodes.
void set_Shr_left(ir_node *node, ir_node *left)
Sets left input of a Shr node.
ir_node * get_CopyB_mem(const ir_node *node)
Returns mem input of a CopyB node.
ir_node * new_Sel(ir_node *irn_ptr, ir_node *irn_index, ir_type *type)
Construct a Sel node.
ir_node * new_d_Call(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_ptr, int arity, ir_node *const *in, ir_type *type)
Construct a Call node.
ir_node * get_Raise_exo_ptr(const ir_node *node)
Returns exo_ptr input of a Raise node.
ir_node * new_Bad(ir_mode *mode)
Construct a Bad node.
int is_And(const ir_node *node)
Test if node is a And.
ir_op * get_op_Mul(void)
Returns opcode for Mul nodes.
pn_Call
Projection numbers for result of Call node (use for Proj nodes)
Definition: nodes.h:945
ir_node * new_Free(ir_node *irn_mem, ir_node *irn_ptr)
Construct a Free node.
first operand
Definition: nodes.h:1048
ir_asm_constraint * get_ASM_constraints(const ir_node *node)
Returns constraints attribute of an ASM node.
ir_op * op_Switch
Switch opcode.
Definition: nodes.h:4030
ir_node * get_Store_ptr(const ir_node *node)
Returns ptr input of a Store node.
void set_Mod_right(ir_node *node, ir_node *right)
Sets right input of a Mod node.
ir_node * new_Shl(ir_node *irn_left, ir_node *irn_right)
Construct a Shl node.
ir_node * new_rd_Minus(dbg_info *dbgi, ir_node *block, ir_node *irn_op)
Construct a Minus node.
n_Div
Input numbers for Div node.
Definition: nodes.h:1551
ir_node * new_rd_Alloc(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_size, unsigned alignment)
Construct an Alloc node.
int is_Start(const ir_node *node)
Test if node is a Start.
ir_node * new_rd_Load(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags)
Construct a Load node.
ir_entity * get_entconst_entity(const ir_node *node)
Returns entity attribute of an entconst node.
ir_node ** get_Sync_pred_arr(ir_node *node)
Get an array of all Sync preds.
n_Shl
Input numbers for Shl node.
Definition: nodes.h:3411
ir_node * new_r_Pin(ir_node *block, ir_node *irn_op)
Construct a Pin node.
the tuple value from which a part is extracted
Definition: nodes.h:3079
int is_Div(const ir_node *node)
Test if node is a Div.
ir_node * new_Start(void)
Construct a Start node.
void set_Store_unaligned(ir_node *node, ir_align unaligned)
Sets unaligned attribute of a Store node.
int is_Switch(const ir_node *node)
Test if node is a Switch.
ir_node * new_d_Size(dbg_info *dbgi, ir_mode *mode, ir_type *type)
Construct a Size node.
ir_node * new_Add(ir_node *irn_left, ir_node *irn_right)
Construct an Add node.
ir_node * new_r_Call(ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, int arity, ir_node *const *in, ir_type *type)
Construct a Call node.
ir_op * get_op_Or(void)
Returns opcode for Or nodes.
ir_node * new_rd_Sel(dbg_info *dbgi, ir_node *block, ir_node *irn_ptr, ir_node *irn_index, ir_type *type)
Construct a Sel node.
ir_node * new_rd_Conv(dbg_info *dbgi, ir_node *block, ir_node *irn_op, ir_mode *mode)
Construct a Conv node.
control flow when exception occurred
Definition: nodes.h:2096
void set_Member_entity(ir_node *node, ir_entity *entity)
Sets entity attribute of a Member node.
int is_Confirm(const ir_node *node)
Test if node is a Confirm.
ir_op * op_Jmp
Jmp opcode.
Definition: nodes.h:2066
Definition: nodes.h:43
ir_op * op_Shl
Shl opcode.
Definition: nodes.h:3468
void set_Mod_resmode(ir_node *node, ir_mode *resmode)
Sets resmode attribute of a Mod node.
ir_node * new_rd_Builtin(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, int arity, ir_node *const *in, ir_builtin_kind kind, ir_type *type)
Construct a Builtin node.
pn_Start
Projection numbers for result of Start node (use for Proj nodes)
Definition: nodes.h:3704
value to store
Definition: nodes.h:3766
block the start node belongs to
Definition: nodes.h:473
ir_op * op_Eor
Eor opcode.
Definition: nodes.h:1839
n_Conv
Input numbers for Conv node.
Definition: nodes.h:1358
ir_type * get_Call_type(const ir_node *node)
Returns type attribute of a Call node.
ir_node * new_Load(ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags)
Construct a Load node.
ir_op * get_op_Raise(void)
Returns opcode for Raise nodes.
void set_Return_mem(ir_node *node, ir_node *mem)
Sets mem input of a Return node.
ir_op * get_op_Tuple(void)
Returns opcode for Tuple nodes.
ir_node * new_Eor(ir_node *irn_left, ir_node *irn_right)
Construct an Eor node.
memory result
Definition: nodes.h:2360
void set_CopyB_type(ir_node *node, ir_type *type)
Sets type attribute of a CopyB node.
input selector
Definition: nodes.h:3957
ir_node * new_r_Cond(ir_node *block, ir_node *irn_selector)
Construct a Cond node.
ir_node * get_Shrs_left(const ir_node *node)
Returns left input of a Shrs node.
n_And
Input numbers for And node.
Definition: nodes.h:540
ir_node * new_rd_Div(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Div node.
void set_Mul_right(ir_node *node, ir_node *right)
Sets right input of a Mul node.
ir_node * get_Shl_left(const ir_node *node)
Returns left input of a Shl node.
ir_op * op_Id
Id opcode.
Definition: nodes.h:2017
int get_Return_n_ress(ir_node const *node)
Get the number of Return ress.
ir_op * get_op_Alloc(void)
Returns opcode for Alloc nodes.
ir_op * op_Mod
Mod opcode.
Definition: nodes.h:2435
ir_op * get_op_Proj(void)
Returns opcode for Proj nodes.
ir_node * get_Anchor_initial_mem(const ir_node *node)
Returns initial_mem input of an Anchor node.
ir_node * new_rd_Mul(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Mul node.
ir_node * new_rd_Const(dbg_info *dbgi, ir_graph *irg, ir_tarval *tarval)
Construct a Const node.
ir_op * get_op_Dummy(void)
Returns opcode for Dummy nodes.
ir_node * new_r_IJmp(ir_node *block, ir_node *irn_target)
Construct an IJmp node.
Definition: nodes.h:28
first operand
Definition: nodes.h:2453
void set_Anchor_end_block(ir_node *node, ir_node *end_block)
Sets end_block input of an Anchor node.
ir_node * new_r_End(ir_graph *irg, int arity, ir_node *const *in)
Construct an End node.
ir_node * new_d_Store(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags)
Construct a Store node.
ir_op * op_Bitcast
Bitcast opcode.
Definition: nodes.h:739
int is_Phi(const ir_node *node)
Test if node is a Phi.
ir_node * new_rd_Sub(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Sub node.
ir_node * get_Member_ptr(const ir_node *node)
Returns ptr input of a Member node.
ir_op * op_Address
Address opcode.
Definition: nodes.h:295
void set_Confirm_value(ir_node *node, ir_node *value)
Sets value input of a Confirm node.
n_IJmp
Input numbers for IJmp node.
Definition: nodes.h:1932
void set_Shrs_right(ir_node *node, ir_node *right)
Sets right input of a Shrs node.
void set_IJmp_target(ir_node *node, ir_node *target)
Sets target input of an IJmp node.
ir_node * new_d_Sel(dbg_info *dbgi, ir_node *irn_ptr, ir_node *irn_index, ir_type *type)
Construct a Sel node.
ir_node * new_rd_Jmp(dbg_info *dbgi, ir_node *block)
Construct a Jmp node.
address to load from
Definition: nodes.h:2085
ir_node * get_Call_mem(const ir_node *node)
Returns mem input of a Call node.
ir_op * op_Alloc
Alloc opcode.
Definition: nodes.h:449
int is_ASM(const ir_node *node)
Test if node is a ASM.
control flow when no exception occurs
Definition: nodes.h:1564
ir_op * op_Const
Const opcode.
Definition: nodes.h:1341
void set_Phi_pred(ir_node *node, int pos, ir_node *pred)
Set the Phi pred with index pos.
ir_node * get_Store_mem(const ir_node *node)
Returns mem input of a Store node.
ir_node * new_Bitcast(ir_node *irn_op, ir_mode *mode)
Construct a Bitcast node.
second operand
Definition: nodes.h:1554
void set_ASM_input(ir_node *node, int pos, ir_node *input)
Set the ASM input with index pos.
end node of this ir_graph
Definition: nodes.h:474
ir_node * new_Proj(ir_node *irn_pred, ir_mode *mode, unsigned num)
Construct a Proj node.
ir_node * new_d_Offset(dbg_info *dbgi, ir_mode *mode, ir_entity *entity)
Construct an Offset node.
void set_Anchor_end(ir_node *node, ir_node *end)
Sets end input of an Anchor node.
Definition: nodes.h:36
int is_Tuple(const ir_node *node)
Test if node is a Tuple.
ir_node * new_r_Cmp(ir_node *block, ir_node *irn_left, ir_node *irn_right, ir_relation relation)
Construct a Cmp node.
ir_node * new_rd_Cmp(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right, ir_relation relation)
Construct a Cmp node.
ir_node * new_rd_Member(dbg_info *dbgi, ir_node *block, ir_node *irn_ptr, ir_entity *entity)
Construct a Member node.
n_Free
Input numbers for Free node.
Definition: nodes.h:1856
pn_Cond
Projection numbers for result of Cond node (use for Proj nodes)
Definition: nodes.h:1138
result of computation
Definition: nodes.h:1563
void set_Shl_left(ir_node *node, ir_node *left)
Sets left input of a Shl node.
ir_node * new_r_Const(ir_graph *irg, ir_tarval *tarval)
Construct a Const node.
memory dependency
Definition: nodes.h:114
ir_node * get_Call_ptr(const ir_node *node)
Returns ptr input of a Call node.
ir_node * get_Mux_false(const ir_node *node)
Returns false input of a Mux node.
ir_node * new_d_Raise(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_exo_ptr)
Construct a Raise node.
ir_node * new_Confirm(ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
Construct a Confirm node.
ir_node * get_Switch_selector(const ir_node *node)
Returns selector input of a Switch node.
ir_node * new_Const(ir_tarval *tarval)
Construct a Const node.
Definition: nodes.h:23
ir_node * new_r_Address(ir_graph *irg, ir_entity *entity)
Construct an Address node.
ir_op * get_op_NoMem(void)
Returns opcode for NoMem nodes.
Definition: nodes.h:50
ir_op * get_op_Sync(void)
Returns opcode for Sync nodes.
ir_op * op_Div
Div opcode.
Definition: nodes.h:1642
void set_Div_right(ir_node *node, ir_node *right)
Sets right input of a Div node.
Definition: nodes.h:56
ir_node * get_Bitcast_op(const ir_node *node)
Returns op input of a Bitcast node.
void set_Mul_left(ir_node *node, ir_node *left)
Sets left input of a Mul node.
void set_Switch_n_outs(ir_node *node, unsigned n_outs)
Sets n_outs attribute of a Switch node.
int is_Const(const ir_node *node)
Test if node is a Const.
ir_op * get_op_Anchor(void)
Returns opcode for Anchor nodes.
ir_node * new_rd_Mod(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Mod node.
n_ASM
Input numbers for ASM node.
Definition: nodes.h:113
n_Shrs
Input numbers for Shrs node.
Definition: nodes.h:3568
ir_op * op_Mul
Mul opcode.
Definition: nodes.h:2509
ir_op * op_ASM
ASM opcode.
Definition: nodes.h:162
ir_node * new_r_Bitcast(ir_node *block, ir_node *irn_op, ir_mode *mode)
Construct a Bitcast node.
ir_node * new_d_Const(dbg_info *dbgi, ir_tarval *tarval)
Construct a Const node.
ir_op * op_End
End opcode.
Definition: nodes.h:1763
ir_align get_Store_unaligned(const ir_node *node)
Returns unaligned attribute of a Store node.
void set_Sel_ptr(ir_node *node, ir_node *ptr)
Sets ptr input of a Sel node.
int is_Shrs(const ir_node *node)
Test if node is a Shrs.
Definition: nodes.h:51
ir_op * op_NoMem
NoMem opcode.
Definition: nodes.h:2717
Definition: nodes.h:39
ir_op * op_CopyB
CopyB opcode.
Definition: nodes.h:1511
ir_node * new_Align(ir_mode *mode, ir_type *type)
Construct an Align node.
ir_type * get_Sel_type(const ir_node *node)
Returns type attribute of a Sel node.
void set_Switch_selector(ir_node *node, ir_node *selector)
Sets selector input of a Switch node.
ir_node * get_Confirm_bound(const ir_node *node)
Returns bound input of a Confirm node.
ir_node * get_Store_value(const ir_node *node)
Returns value input of a Store node.
ir_node * new_r_Unknown(ir_graph *irg, ir_mode *mode)
Construct an Unknown node.
int is_Mul(const ir_node *node)
Test if node is a Mul.
selected if sel input is true
Definition: nodes.h:2605
ir_op * op_Mux
Mux opcode.
Definition: nodes.h:2668
ir_op * op_Bad
Bad opcode.
Definition: nodes.h:669
pointer to called code
Definition: nodes.h:938
ir_node * get_Free_mem(const ir_node *node)
Returns mem input of a Free node.
int is_Block(const ir_node *node)
Test if node is a Block.
ir_op * get_op_ASM(void)
Returns opcode for ASM nodes.
void set_Load_type(ir_node *node, ir_type *type)
Sets type attribute of a Load node.
ir_node * new_d_Tuple(dbg_info *dbgi, int arity, ir_node *const *in)
Construct a Tuple node.
second operand
Definition: nodes.h:2454
void set_Anchor_frame(ir_node *node, ir_node *frame)
Sets frame input of an Anchor node.
ir_node * get_Or_left(const ir_node *node)
Returns left input of an Or node.
ir_node * get_Anchor_start(const ir_node *node)
Returns start input of an Anchor node.
ir_node * new_Return(ir_node *irn_mem, int arity, ir_node *const *in)
Construct a Return node.
ir_node * new_r_Or(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an Or node.
ir_builtin_kind get_Builtin_kind(const ir_node *node)
Returns kind attribute of a Builtin node.
control flow when no exception occurs
Definition: nodes.h:948
ir_node * new_rd_Store(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags)
Construct a Store node.
second operand
Definition: nodes.h:3570
void set_Load_unaligned(ir_node *node, ir_align unaligned)
Sets unaligned attribute of a Load node.
Definition: nodes.h:57
pointer to object to select from
Definition: nodes.h:2204
ir_node * new_Div(ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Div node.
int get_Builtin_n_params(ir_node const *node)
Get the number of Builtin params.
ir_op * op_Cmp
Cmp opcode.
Definition: nodes.h:1113
memory result
Definition: nodes.h:122
ir_type * get_Align_type(const ir_node *node)
Returns type attribute of an Align node.
ir_node * get_Mux_sel(const ir_node *node)
Returns sel input of a Mux node.
ir_node * new_Pin(ir_node *irn_op)
Construct a Pin node.
memory dependency
Definition: nodes.h:937
ir_node * new_r_Tuple(ir_node *block, int arity, ir_node *const *in)
Construct a Tuple node.
ir_node * get_Alloc_size(const ir_node *node)
Returns size input of an Alloc node.
ir_op * op_Proj
Proj opcode.
Definition: nodes.h:3137
ir_node * new_rd_Proj(dbg_info *dbgi, ir_node *irn_pred, ir_mode *mode, unsigned num)
Construct a Proj node.
int is_Bad(const ir_node *node)
Test if node is a Bad.
ir_node * new_d_Alloc(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_size, unsigned alignment)
Construct an Alloc node.
ir_op * op_Deleted
Deleted opcode.
Definition: nodes.h:1534
ir_node * new_Offset(ir_mode *mode, ir_entity *entity)
Construct an Offset node.
block the end node belongs to
Definition: nodes.h:472
ir_node * get_Div_left(const ir_node *node)
Returns left input of a Div node.
Definition: nodes.h:52
ir_op * get_op_Shl(void)
Returns opcode for Shl nodes.
void set_Raise_mem(ir_node *node, ir_node *mem)
Sets mem input of a Raise node.
void set_Call_param(ir_node *node, int pos, ir_node *param)
Set the Call param with index pos.
ir_node * new_Alloc(ir_node *irn_mem, ir_node *irn_size, unsigned alignment)
Construct an Alloc node.
ir_node * get_Cmp_left(const ir_node *node)
Returns left input of a Cmp node.
ir_node * get_Mod_left(const ir_node *node)
Returns left input of a Mod node.
void set_CopyB_dst(ir_node *node, ir_node *dst)
Sets dst input of a CopyB node.
ir_node * new_Not(ir_node *irn_op)
Construct a Not node.
operand
Definition: nodes.h:1359
void set_Block_entity(ir_node *node, ir_entity *entity)
Sets entity attribute of a Block node.
source address
Definition: nodes.h:1430
int is_Not(const ir_node *node)
Test if node is a Not.
void set_Call_mem(ir_node *node, ir_node *mem)
Sets mem input of a Call node.
int is_Builtin(const ir_node *node)
Test if node is a Builtin.
void set_Div_left(ir_node *node, ir_node *left)
Sets left input of a Div node.
void set_Shl_right(ir_node *node, ir_node *right)
Sets right input of a Shl node.
ir_node * get_Anchor_end_block(const ir_node *node)
Returns end_block input of an Anchor node.
ir_node * new_d_Dummy(dbg_info *dbgi, ir_mode *mode)
Construct a Dummy node.
ir_op * get_op_Builtin(void)
Returns opcode for Builtin nodes.
ir_node * new_rd_Mulh(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Mulh node.
ir_node * new_IJmp(ir_node *irn_target)
Construct an IJmp node.
n_Pin
Input numbers for Pin node.
Definition: nodes.h:3013
Definition: nodes.h:45
ir_node * get_Alloc_mem(const ir_node *node)
Returns mem input of an Alloc node.
first operand
Definition: nodes.h:3490
ir_node * new_Cmp(ir_node *irn_left, ir_node *irn_right, ir_relation relation)
Construct a Cmp node.
ir_op * get_op_Block(void)
Returns opcode for Block nodes.
ir_op * get_op_IJmp(void)
Returns opcode for IJmp nodes.
ir_node * get_IJmp_target(const ir_node *node)
Returns target input of an IJmp node.
ir_node * new_d_Sub(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct a Sub node.
void set_ASM_text(ir_node *node, ident *text)
Sets text attribute of an ASM node.
pn_Div
Projection numbers for result of Div node (use for Proj nodes)
Definition: nodes.h:1561
ir_op * op_Phi
Phi opcode.
Definition: nodes.h:2994
ir_node * new_d_Member(dbg_info *dbgi, ir_node *irn_ptr, ir_entity *entity)
Construct a Member node.
void set_Free_mem(ir_node *node, ir_node *mem)
Sets mem input of a Free node.
ir_node * new_rd_End(dbg_info *dbgi, ir_graph *irg, int arity, ir_node *const *in)
Construct an End node.
ir_node * get_Shr_left(const ir_node *node)
Returns left input of a Shr node.
ir_node * new_r_Alloc(ir_node *block, ir_node *irn_mem, ir_node *irn_size, unsigned alignment)
Construct an Alloc node.
ir_node * new_d_End(dbg_info *dbgi, int arity, ir_node *const *in)
Construct an End node.
ir_node * new_r_Shr(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Shr node.
index to select
Definition: nodes.h:3326
ir_node * new_rd_And(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an And node.
n_Shr
Input numbers for Shr node.
Definition: nodes.h:3489
ir_node * get_Sub_right(const ir_node *node)
Returns right input of a Sub node.
void set_Mux_false(ir_node *node, ir_node *false_)
Sets false input of a Mux node.
ir_align get_Load_unaligned(const ir_node *node)
Returns unaligned attribute of a Load node.
ir_node * new_d_Phi(dbg_info *dbgi, int arity, ir_node *const *in, ir_mode *mode)
Construct a Phi node.
ir_switch_table * get_Switch_table(const ir_node *node)
Returns table attribute of a Switch node.
void set_Confirm_bound(ir_node *node, ir_node *bound)
Sets bound input of a Confirm node.
ir_type * get_Builtin_type(const ir_node *node)
Returns type attribute of a Builtin node.
ir_mode * get_Div_resmode(const ir_node *node)
Returns resmode attribute of a Div node.
ir_node * new_Mod(ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Mod node.
int is_Sub(const ir_node *node)
Test if node is a Sub.
ir_node * new_r_Proj(ir_node *irn_pred, ir_mode *mode, unsigned num)
Construct a Proj node.
ir_node * new_d_Mul(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct a Mul node.
int is_Call(const ir_node *node)
Test if node is a Call.
ir_op * get_op_Bad(void)
Returns opcode for Bad nodes.
first operand
Definition: nodes.h:2862
void set_Mod_mem(ir_node *node, ir_node *mem)
Sets mem input of a Mod node.
void set_And_left(ir_node *node, ir_node *left)
Sets left input of an And node.
ir_op * op_Mulh
Mulh opcode.
Definition: nodes.h:2584
second operand
Definition: nodes.h:3413
void set_Proj_pred(ir_node *node, ir_node *pred)
Sets pred input of a Proj node.
int is_Jmp(const ir_node *node)
Test if node is a Jmp.
ir_op * get_op_Offset(void)
Returns opcode for Offset nodes.
void set_Tuple_pred(ir_node *node, int pos, ir_node *pred)
Set the Tuple pred with index pos.
void set_Store_value(ir_node *node, ir_node *value)
Sets value input of a Store node.
void set_Add_left(ir_node *node, ir_node *left)
Sets left input of an Add node.
value to compare against
Definition: nodes.h:1219
ir_node * new_Jmp(void)
Construct a Jmp node.
struct ir_graph ir_graph
Procedure Graph.
Definition: firm_types.h:74
ir_node * new_And(ir_node *irn_left, ir_node *irn_right)
Construct an And node.
void set_Phi_loop(ir_node *node, int loop)
Sets loop attribute of a Phi node.
ir_node * new_d_IJmp(dbg_info *dbgi, ir_node *irn_target)
Construct an IJmp node.
void set_Alloc_alignment(ir_node *node, unsigned alignment)
Sets alignment attribute of an Alloc node.
start node of this ir_graph
Definition: nodes.h:475
second operand
Definition: nodes.h:1049
ir_node * new_r_Dummy(ir_graph *irg, ir_mode *mode)
Construct a Dummy node.
ir_op * op_Load
Load opcode.
Definition: nodes.h:2183
ir_node * new_r_Mulh(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Mulh node.
ir_op * op_IJmp
IJmp opcode.
Definition: nodes.h:1980
ir_node * new_Minus(ir_node *irn_op)
Construct a Minus node.
int is_End(const ir_node *node)
Test if node is a End.
ir_node * new_r_Shl(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Shl node.
initial memory
Definition: nodes.h:3705
ir_node * get_Anchor_end(const ir_node *node)
Returns end input of an Anchor node.
ir_node * new_r_Switch(ir_node *block, ir_node *irn_selector, unsigned n_outs, ir_switch_table *table)
Construct a Switch node.
ir_node * new_rd_Size(dbg_info *dbgi, ir_graph *irg, ir_mode *mode, ir_type *type)
Construct a Size node.
ir_node * new_End(int arity, ir_node *const *in)
Construct an End node.
ir_cons_flags
constrained flags for memory operations.
Definition: firm_types.h:186
ir_node * new_rd_Offset(dbg_info *dbgi, ir_graph *irg, ir_mode *mode, ir_entity *entity)
Construct an Offset node.
void set_Const_tarval(ir_node *node, ir_tarval *tarval)
Sets tarval attribute of a Const node.
ir_op * get_op_Id(void)
Returns opcode for Id nodes.
Definition: nodes.h:49
Definition: nodes.h:24
ir_node * new_rd_NoMem(dbg_info *dbgi, ir_graph *irg)
Construct a NoMem node.
ir_node * new_d_Pin(dbg_info *dbgi, ir_node *irn_op)
Construct a Pin node.
ir_node * new_Unknown(ir_mode *mode)
Construct an Unknown node.
control flow when exception occurred
Definition: nodes.h:949
ir_node * get_Return_mem(const ir_node *node)
Returns mem input of a Return node.
unsigned get_Proj_num(const ir_node *node)
Returns num attribute of a Proj node.
ir_op * op_Tuple
Tuple opcode.
Definition: nodes.h:4171
pointer to newly allocated memory
Definition: nodes.h:385
ir_type * get_typeconst_type(const ir_node *node)
Returns type attribute of a typeconst node.
n_Load
Input numbers for Load node.
Definition: nodes.h:2083
ir_node * new_r_Raise(ir_node *block, ir_node *irn_mem, ir_node *irn_exo_ptr)
Construct a Raise node.
ir_node * get_Builtin_param(ir_node const *node, int pos)
Get the Builtin param with index pos.
int is_Conv(const ir_node *node)
Test if node is a Conv.
ir_type * get_Store_type(const ir_node *node)
Returns type attribute of a Store node.
ir_node ** get_Block_cfgpred_arr(ir_node *node)
Get an array of all Block cfgpreds.
ir_op * get_op_Start(void)
Returns opcode for Start nodes.
first output
Definition: nodes.h:123
ir_node * new_d_Div(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Div node.
ir_node * new_r_Phi(ir_node *block, int arity, ir_node *const *in, ir_mode *mode)
Construct a Phi node.
first operand
Definition: nodes.h:1553
void set_ASM_clobbers(ir_node *node, ident **clobbers)
Sets clobbers attribute of an ASM node.
ir_node * new_d_Confirm(dbg_info *dbgi, ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
Construct a Confirm node.
void set_Builtin_type(ir_node *node, ir_type *type)
Sets type attribute of a Builtin node.
ident ** get_ASM_clobbers(const ir_node *node)
Returns clobbers attribute of an ASM node.
void set_Cmp_relation(ir_node *node, ir_relation relation)
Sets relation attribute of a Cmp node.
ir_node * new_r_Sub(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Sub node.
memory result
Definition: nodes.h:3774
ir_node * new_Shr(ir_node *irn_left, ir_node *irn_right)
Construct a Shr node.
n_Minus
Input numbers for Minus node.
Definition: nodes.h:2277
result of load operation
Definition: nodes.h:2094
ir_node * new_rd_Free(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_ptr)
Construct a Free node.
void set_Address_entity(ir_node *node, ir_entity *entity)
Sets entity attribute of an Address node.
ir_relation
Relations for comparing numbers.
Definition: firm_types.h:162
void set_entconst_entity(ir_node *node, ir_entity *entity)
Sets entity attribute of an entconst node.
void set_Sub_right(ir_node *node, ir_node *right)
Sets right input of a Sub node.
ir_node * get_Mod_mem(const ir_node *node)
Returns mem input of a Mod node.
ir_node * get_Cmp_right(const ir_node *node)
Returns right input of a Cmp node.
ir_node * get_Confirm_value(const ir_node *node)
Returns value input of a Confirm node.
ir_node * get_ASM_input(ir_node const *node, int pos)
Get the ASM input with index pos.
void set_Div_no_remainder(ir_node *node, int no_remainder)
Sets no_remainder attribute of a Div node.
ir_node * get_And_right(const ir_node *node)
Returns right input of an And node.
ir_op * op_Block
Block opcode.
Definition: nodes.h:809
ir_node * new_Address(ir_entity *entity)
Construct an Address node.
void set_Load_mode(ir_node *node, ir_mode *mode)
Sets mode attribute of a Load node.
void set_Pin_op(ir_node *node, ir_node *op)
Sets op input of a Pin node.
ir_op * get_op_Add(void)
Returns opcode for Add nodes.
value to express a constraint for
Definition: nodes.h:1218
ir_node * new_d_Cond(dbg_info *dbgi, ir_node *irn_selector)
Construct a Cond node.
n_Proj
Input numbers for Proj node.
Definition: nodes.h:3078
pn_Raise
Projection numbers for result of Raise node (use for Proj nodes)
Definition: nodes.h:3165
ir_node * get_Id_pred(const ir_node *node)
Returns pred input of an Id node.
void set_Eor_left(ir_node *node, ir_node *left)
Sets left input of an Eor node.
ir_node * get_ASM_mem(const ir_node *node)
Returns mem input of an ASM node.
void set_Alloc_size(ir_node *node, ir_node *size)
Sets size input of an Alloc node.
memory result
Definition: nodes.h:2093
void set_Load_mem(ir_node *node, ir_node *mem)
Sets mem input of a Load node.
ir_entity * get_Address_entity(const ir_node *node)
Returns entity attribute of an Address node.
int is_Pin(const ir_node *node)
Test if node is a Pin.
n_Not
Input numbers for Not node.
Definition: nodes.h:2734
void set_Switch_table(ir_node *node, ir_switch_table *table)
Sets table attribute of a Switch node.
Definition: nodes.h:12
ir_node * new_rd_Pin(dbg_info *dbgi, ir_node *block, ir_node *irn_op)
Construct a Pin node.
n_Member
Input numbers for Member node.
Definition: nodes.h:2203
ir_node * new_rd_Bitcast(dbg_info *dbgi, ir_node *block, ir_node *irn_op, ir_mode *mode)
Construct a Bitcast node.
void set_CopyB_src(ir_node *node, ir_node *src)
Sets src input of a CopyB node.
ir_node * new_rd_Dummy(dbg_info *dbgi, ir_graph *irg, ir_mode *mode)
Construct a Dummy node.
int is_Unknown(const ir_node *node)
Test if node is a Unknown.
ir_node * get_Shr_right(const ir_node *node)
Returns right input of a Shr node.
struct ir_op ir_op
Node Opcode.
Definition: firm_types.h:56
ir_op * get_op_Mux(void)
Returns opcode for Mux nodes.
ir_node * new_rd_Add(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an Add node.
int is_Anchor(const ir_node *node)
Test if node is a Anchor.
ir_op * get_op_Cond(void)
Returns opcode for Cond nodes.
ir_node * new_r_Sync(ir_node *block, int arity, ir_node *const *in)
Construct a Sync node.
control flow when exception occurred
Definition: nodes.h:3776
ir_node * new_Raise(ir_node *irn_mem, ir_node *irn_exo_ptr)
Construct a Raise node.
ir_node * new_r_Shrs(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Shrs node.
void set_Align_type(ir_node *node, ir_type *type)
Sets type attribute of an Align node.
ir_node * get_Div_right(const ir_node *node)
Returns right input of a Div node.
ir_op * op_Call
Call opcode.
Definition: nodes.h:1029
ir_node * new_rd_Call(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, int arity, ir_node *const *in, ir_type *type)
Construct a Call node.
void set_Conv_op(ir_node *node, ir_node *op)
Sets op input of a Conv node.
void set_Cond_jmp_pred(ir_node *node, cond_jmp_predicate jmp_pred)
Sets jmp_pred attribute of a Cond node.
void set_Anchor_args(ir_node *node, ir_node *args)
Sets args input of an Anchor node.
ir_op * get_op_Const(void)
Returns opcode for Const nodes.
void set_Store_ptr(ir_node *node, ir_node *ptr)
Sets ptr input of a Store node.
ir_node * new_Dummy(ir_mode *mode)
Construct a Dummy node.
struct ir_tarval ir_tarval
Target Machine Value.
Definition: firm_types.h:68
Definition: nodes.h:55
ir_op * get_op_Address(void)
Returns opcode for Address nodes.
void set_Call_type(ir_node *node, ir_type *type)
Sets type attribute of a Call node.
Definition: nodes.h:18
void set_Offset_entity(ir_node *node, ir_entity *entity)
Sets entity attribute of an Offset node.
pn_Switch
Projection numbers for result of Switch node (use for Proj nodes)
Definition: nodes.h:3964
Definition: nodes.h:19
ir_node * get_Tuple_pred(ir_node const *node, int pos)
Get the Tuple pred with index pos.
ir_node * get_Phi_pred(ir_node const *node, int pos)
Get the Phi pred with index pos.
pn_Alloc
Projection numbers for result of Alloc node (use for Proj nodes)
Definition: nodes.h:383
void set_Anchor_no_mem(ir_node *node, ir_node *no_mem)
Sets no_mem input of an Anchor node.
ir_op * get_op_Bitcast(void)
Returns opcode for Bitcast nodes.
ir_type * get_Size_type(const ir_node *node)
Returns type attribute of a Size node.
ir_node * get_Mulh_left(const ir_node *node)
Returns left input of a Mulh node.
ir_op * op_Start
Start opcode.
Definition: nodes.h:3746
ir_type * get_CopyB_type(const ir_node *node)
Returns type attribute of a CopyB node.
Definition: nodes.h:33
control flow when no exception occurs
Definition: nodes.h:2362
control flow if no other case matches
Definition: nodes.h:3965
int is_Align(const ir_node *node)
Test if node is a Align.
cond_jmp_predicate
A type to express conditional jump predictions.
Definition: firm_types.h:212
void set_Div_mem(ir_node *node, ir_node *mem)
Sets mem input of a Div node.
struct dbg_info dbg_info
Source Reference.
Definition: firm_types.h:40
ir_op * get_op_Phi(void)
Returns opcode for Phi nodes.
ir_op * get_op_Size(void)
Returns opcode for Size nodes.
struct ir_node ir_node
Procedure Graph Node.
Definition: firm_types.h:53
Definition: nodes.h:42
int get_Tuple_n_preds(ir_node const *node)
Get the number of Tuple preds.
ir_node * new_d_Start(dbg_info *dbgi)
Construct a Start node.
ir_volatility get_Load_volatility(const ir_node *node)
Returns volatility attribute of a Load node.
void set_Or_left(ir_node *node, ir_node *left)
Sets left input of an Or node.
int get_ASM_n_inputs(ir_node const *node)
Get the number of ASM inputs.
int is_Offset(const ir_node *node)
Test if node is a Offset.
void set_Builtin_kind(ir_node *node, ir_builtin_kind kind)
Sets kind attribute of a Builtin node.
void set_Not_op(ir_node *node, ir_node *op)
Sets op input of a Not node.
ir_node * get_CopyB_src(const ir_node *node)
Returns src input of a CopyB node.
n_Raise
Input numbers for Raise node.
Definition: nodes.h:3156
int is_Proj(const ir_node *node)
Test if node is a Proj.
second operand
Definition: nodes.h:2863
Definition: nodes.h:68
ir_op * op_Anchor
Anchor opcode.
Definition: nodes.h:523
second operand
Definition: nodes.h:3491
ir_node * new_d_Shl(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct a Shl node.
n_Cmp
Input numbers for Cmp node.
Definition: nodes.h:1047
ir_node * new_r_Member(ir_node *block, ir_node *irn_ptr, ir_entity *entity)
Construct a Member node.
void set_Return_res(ir_node *node, int pos, ir_node *res)
Set the Return res with index pos.
ir_node ** get_End_keepalive_arr(ir_node *node)
Get an array of all End keepalives.
ir_node * new_rd_Unknown(dbg_info *dbgi, ir_graph *irg, ir_mode *mode)
Construct an Unknown node.
n_Sel
Input numbers for Sel node.
Definition: nodes.h:3324
void set_Cond_selector(ir_node *node, ir_node *selector)
Sets selector input of a Cond node.
void set_Cmp_right(ir_node *node, ir_node *right)
Sets right input of a Cmp node.
void set_CopyB_mem(ir_node *node, ir_node *mem)
Sets mem input of a CopyB node.
int is_Sel(const ir_node *node)
Test if node is a Sel.
first operand
Definition: nodes.h:180
int is_Size(const ir_node *node)
Test if node is a Size.
ir_node * get_Anchor_frame(const ir_node *node)
Returns frame input of an Anchor node.
ir_node * new_r_Sel(ir_node *block, ir_node *irn_ptr, ir_node *irn_index, ir_type *type)
Construct a Sel node.
void set_Cmp_left(ir_node *node, ir_node *left)
Sets left input of a Cmp node.
ir_node * get_CopyB_dst(const ir_node *node)
Returns dst input of a CopyB node.
struct ir_mode ir_mode
SSA Value mode.
Definition: firm_types.h:59
ir_op * op_Cond
Cond opcode.
Definition: nodes.h:1192
ir_node * get_Mod_right(const ir_node *node)
Returns right input of a Mod node.
ir_node * new_r_Load(ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags)
Construct a Load node.
ir_node * new_d_Proj(dbg_info *dbgi, ir_node *irn_pred, ir_mode *mode, unsigned num)
Construct a Proj node.
ir_op * op_Align
Align opcode.
Definition: nodes.h:357
ir_entity * get_Member_entity(const ir_node *node)
Returns entity attribute of a Member node.
ir_node * get_Load_ptr(const ir_node *node)
Returns ptr input of a Load node.
ir_op * get_op_Load(void)
Returns opcode for Load nodes.
void set_Sync_pred(ir_node *node, int pos, ir_node *pred)
Set the Sync pred with index pos.
ir_op * op_Raise
Raise opcode.
Definition: nodes.h:3222
ir_node * get_Sub_left(const ir_node *node)
Returns left input of a Sub node.
ir_node ** get_Builtin_param_arr(ir_node *node)
Get an array of all Builtin params.
void set_Sel_type(ir_node *node, ir_type *type)
Sets type attribute of a Sel node.
Definition: nodes.h:62
ir_node * new_d_Add(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct an Add node.
memory dependency
Definition: nodes.h:3157
ir_node * get_Pin_op(const ir_node *node)
Returns op input of a Pin node.
ir_node * new_d_Not(dbg_info *dbgi, ir_node *irn_op)
Construct a Not node.
void set_Mulh_left(ir_node *node, ir_node *left)
Sets left input of a Mulh node.
pn_Builtin
Projection numbers for result of Builtin node (use for Proj nodes)
Definition: nodes.h:834
void set_Member_ptr(ir_node *node, ir_node *ptr)
Sets ptr input of a Member node.
ir_node * new_rd_Switch(dbg_info *dbgi, ir_node *block, ir_node *irn_selector, unsigned n_outs, ir_switch_table *table)
Construct a Switch node.
void set_Store_volatility(ir_node *node, ir_volatility volatility)
Sets volatility attribute of a Store node.
void set_Add_right(ir_node *node, ir_node *right)
Sets right input of an Add node.
ir_node * get_Eor_left(const ir_node *node)
Returns left input of an Eor node.
ir_node * new_rd_Shl(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Shl node.
int is_Deleted(const ir_node *node)
Test if node is a Deleted.
ir_node * new_CopyB(ir_node *irn_mem, ir_node *irn_dst, ir_node *irn_src, ir_type *type, ir_cons_flags flags)
Construct a CopyB node.
frame base pointer
Definition: nodes.h:3706
void set_Builtin_mem(ir_node *node, ir_node *mem)
Sets mem input of a Builtin node.
ir_node * new_rd_Address(dbg_info *dbgi, ir_graph *irg, ir_entity *entity)
Construct an Address node.
n_Bitcast
Input numbers for Bitcast node.
Definition: nodes.h:687
n_Mul
Input numbers for Mul node.
Definition: nodes.h:2452
ir_node * new_r_Align(ir_graph *irg, ir_mode *mode, ir_type *type)
Construct an Align node.
int get_Phi_n_preds(ir_node const *node)
Get the number of Phi preds.
memory result
Definition: nodes.h:384
int is_Bitcast(const ir_node *node)
Test if node is a Bitcast.
ir_op * op_Unknown
Unknown opcode.
Definition: nodes.h:4229
Definition: nodes.h:13
ir_node * new_d_Block(dbg_info *dbgi, int arity, ir_node *const *in)
Construct a Block node.
void set_Sel_index(ir_node *node, ir_node *index)
Sets index input of a Sel node.
ir_node * new_Conv(ir_node *irn_op, ir_mode *mode)
Construct a Conv node.
void set_Anchor_start_block(ir_node *node, ir_node *start_block)
Sets start_block input of an Anchor node.
ir_op * op_And
And opcode.
Definition: nodes.h:597
ir_node * new_r_Eor(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an Eor node.
ir_node * new_d_Shr(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct a Shr node.
void set_Div_resmode(ir_node *node, ir_mode *resmode)
Sets resmode attribute of a Div node.
int is_typeconst(const ir_node *node)
Test if node is a typeconst.
void set_Mod_left(ir_node *node, ir_node *left)
Sets left input of a Mod node.
ir_node * new_Size(ir_mode *mode, ir_type *type)
Construct a Size node.
Definition: nodes.h:64
ir_op * get_op_And(void)
Returns opcode for And nodes.
ir_node * new_Tuple(int arity, ir_node *const *in)
Construct a Tuple node.
ir_node * new_d_And(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct an And node.
ir_node * new_r_Bad(ir_graph *irg, ir_mode *mode)
Construct a Bad node.
void set_Mux_true(ir_node *node, ir_node *true_)
Sets true input of a Mux node.
ir_node * new_d_Mod(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Mod node.
operand
Definition: nodes.h:688
ir_node * get_End_keepalive(ir_node const *node, int pos)
Get the End keepalive with index pos.
ir_node * get_Call_param(ir_node const *node, int pos)
Get the Call param with index pos.
n_Or
Input numbers for Or node.
Definition: nodes.h:2861
ir_node * new_rd_Align(dbg_info *dbgi, ir_graph *irg, ir_mode *mode, ir_type *type)
Construct an Align node.
pn_ASM
Projection numbers for result of ASM node (use for Proj nodes)
Definition: nodes.h:121
ir_op * op_Minus
Minus opcode.
Definition: nodes.h:2325
ir_node ** get_ASM_input_arr(ir_node *node)
Get an array of all ASM inputs.
n_Builtin
Input numbers for Builtin node.
Definition: nodes.h:826
int get_Block_n_cfgpreds(ir_node const *node)
Get the number of Block cfgpreds.
const char ident
Identifier.
Definition: firm_types.h:50
int is_Cond(const ir_node *node)
Test if node is a Cond.
void set_Minus_op(ir_node *node, ir_node *op)
Sets op input of a Minus node.
second operand
Definition: nodes.h:1784
ir_node * get_Raise_mem(const ir_node *node)
Returns mem input of a Raise node.
destination address
Definition: nodes.h:1429
int is_binop(const ir_node *node)
Test if node is a binop.
ir_relation get_Cmp_relation(const ir_node *node)
Returns relation attribute of a Cmp node.
memory dependency
Definition: nodes.h:1428
void set_CopyB_volatility(ir_node *node, ir_volatility volatility)
Sets volatility attribute of a CopyB node.
ir_node * get_And_left(const ir_node *node)
Returns left input of an And node.
control flow to exception handler
Definition: nodes.h:3167
ir_mode * get_Load_mode(const ir_node *node)
Returns mode attribute of a Load node.
int is_Load(const ir_node *node)
Test if node is a Load.
memory dependency
Definition: nodes.h:2350
n_Mod
Input numbers for Mod node.
Definition: nodes.h:2349
ir_node * get_Free_ptr(const ir_node *node)
Returns ptr input of a Free node.
ir_op * get_op_Mod(void)
Returns opcode for Mod nodes.
ir_node * new_rd_Sync(dbg_info *dbgi, ir_node *block, int arity, ir_node *const *in)
Construct a Sync node.
ir_node * new_d_Mux(dbg_info *dbgi, ir_node *irn_sel, ir_node *irn_false, ir_node *irn_true)
Construct a Mux node.
ir_node * new_r_Free(ir_node *block, ir_node *irn_mem, ir_node *irn_ptr)
Construct a Free node.
ir_op * get_op_Member(void)
Returns opcode for Member nodes.
ir_op * get_op_Conv(void)
Returns opcode for Conv nodes.
void set_Sub_left(ir_node *node, ir_node *left)
Sets left input of a Sub node.
pointer to array to select from
Definition: nodes.h:3325
void set_typeconst_type(ir_node *node, ir_type *type)
Sets type attribute of a typeconst node.
void set_ASM_mem(ir_node *node, ir_node *mem)
Sets mem input of an ASM node.
ir_node * new_r_Start(ir_graph *irg)
Construct a Start node.
ir_node * new_Or(ir_node *irn_left, ir_node *irn_right)
Construct an Or node.
ir_node * new_d_Jmp(dbg_info *dbgi)
Construct a Jmp node.
memory result
Definition: nodes.h:835
ir_node * new_d_Return(dbg_info *dbgi, ir_node *irn_mem, int arity, ir_node *const *in)
Construct a Return node.
ir_op * get_op_Eor(void)
Returns opcode for Eor nodes.
Definition: nodes.h:25
n_Cond
Input numbers for Cond node.
Definition: nodes.h:1130
ir_node * get_Div_mem(const ir_node *node)
Returns mem input of a Div node.
tuple containing all results
Definition: nodes.h:947
ir_op * get_op_Cmp(void)
Returns opcode for Cmp nodes.
struct ir_switch_table ir_switch_table
A switch table mapping integer numbers to proj-numbers of a Switch-node.
Definition: firm_types.h:105
int is_Store(const ir_node *node)
Test if node is a Store.
memory dependency
Definition: nodes.h:3241
ir_op * op_Store
Store opcode.
Definition: nodes.h:3862
ir_op * get_op_Return(void)
Returns opcode for Return nodes.
second operand
Definition: nodes.h:3881
int is_CopyB(const ir_node *node)
Test if node is a CopyB.
int is_Shl(const ir_node *node)
Test if node is a Shl.
ir_op * get_op_Deleted(void)
Returns opcode for Deleted nodes.
ir_node * new_d_Conv(dbg_info *dbgi, ir_node *irn_op, ir_mode *mode)
Construct a Conv node.
ir_node * new_NoMem(void)
Construct a NoMem node.
void set_Load_volatility(ir_node *node, ir_volatility volatility)
Sets volatility attribute of a Load node.
ir_node * new_r_Block(ir_graph *irg, int arity, ir_node *const *in)
Construct a Block node.
n_Anchor
Input numbers for Anchor node.
Definition: nodes.h:471
void set_Load_ptr(ir_node *node, ir_node *ptr)
Sets ptr input of a Load node.
int is_Id(const ir_node *node)
Test if node is a Id.
void set_ASM_constraints(ir_node *node, ir_asm_constraint *constraints)
Sets constraints attribute of an ASM node.
ir_node ** get_Return_res_arr(ir_node *node)
Get an array of all Return ress.
void set_Free_ptr(ir_node *node, ir_node *ptr)
Sets ptr input of a Free node.
ir_node * new_d_Cmp(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right, ir_relation relation)
Construct a Cmp node.
ir_node * get_Not_op(const ir_node *node)
Returns op input of a Not node.
ir_op * get_op_Jmp(void)
Returns opcode for Jmp nodes.
n_Id
Input numbers for Id node.
Definition: nodes.h:2000
n_Call
Input numbers for Call node.
Definition: nodes.h:936
ir_node * new_d_Align(dbg_info *dbgi, ir_mode *mode, ir_type *type)
Construct an Align node.
ir_node * new_d_Free(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_ptr)
Construct a Free node.
ir_node * new_r_Return(ir_node *block, ir_node *irn_mem, int arity, ir_node *const *in)
Construct a Return node.
ir_opcode
The opcodes of the libFirm predefined operations.
Definition: nodes.h:11
ir_node * new_Block(int arity, ir_node *const *in)
Construct a Block node.
int is_Or(const ir_node *node)
Test if node is a Or.
void set_Store_mem(ir_node *node, ir_node *mem)
Sets mem input of a Store node.
ir_op * op_Or
Or opcode.
Definition: nodes.h:2918
control flow if operand is "true"
Definition: nodes.h:1140
ir_node * new_r_Minus(ir_node *block, ir_node *irn_op)
Construct a Minus node.
n_Return
Input numbers for Return node.
Definition: nodes.h:3240
first operand
Definition: nodes.h:1783
Definition: nodes.h:38
n_Confirm
Input numbers for Confirm node.
Definition: nodes.h:1217
int is_Mux(const ir_node *node)
Test if node is a Mux.
control flow when no exception occurs
Definition: nodes.h:2095
int is_Alloc(const ir_node *node)
Test if node is a Alloc.
ir_node * new_d_Eor(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct an Eor node.
ir_node * new_rd_Bad(dbg_info *dbgi, ir_graph *irg, ir_mode *mode)
Construct a Bad node.
Definition: nodes.h:34
ir_node * new_rd_Mux(dbg_info *dbgi, ir_node *block, ir_node *irn_sel, ir_node *irn_false, ir_node *irn_true)
Construct a Mux node.
argument proj of the start node
Definition: nodes.h:478
memory dependency
Definition: nodes.h:827
ir_node * get_Sel_index(const ir_node *node)
Returns index input of a Sel node.
ir_node * new_rd_Return(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, int arity, ir_node *const *in)
Construct a Return node.
int get_Div_no_remainder(const ir_node *node)
Returns no_remainder attribute of a Div node.
n_Mux
Input numbers for Mux node.
Definition: nodes.h:2602
void set_Builtin_param(ir_node *node, int pos, ir_node *param)
Set the Builtin param with index pos.
int get_End_n_keepalives(ir_node const *node)
Get the number of End keepalives.
ir_node * new_rd_Eor(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an Eor node.
ir_node * new_Switch(ir_node *irn_selector, unsigned n_outs, ir_switch_table *table)
Construct a Switch node.
ir_node * get_Mulh_right(const ir_node *node)
Returns right input of a Mulh node.
int is_Raise(const ir_node *node)
Test if node is a Raise.
ir_node * new_Shrs(ir_node *irn_left, ir_node *irn_right)
Construct a Shrs node.
ir_op * get_op_Not(void)
Returns opcode for Not nodes.
ir_tarval * get_Const_tarval(const ir_node *node)
Returns tarval attribute of a Const node.
ir_op * op_Sub
Sub opcode.
Definition: nodes.h:3936
memory dependency
Definition: nodes.h:1552
ir_node * new_rd_Confirm(dbg_info *dbgi, ir_node *block, ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
Construct a Confirm node.
ir_node * new_Mul(ir_node *irn_left, ir_node *irn_right)
Construct a Mul node.
void set_Block_cfgpred(ir_node *node, int pos, ir_node *cfgpred)
Set the Block cfgpred with index pos.
ir_op * op_Conv
Conv opcode.
Definition: nodes.h:1410
ir_node * new_r_Store(ir_node *block, ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags)
Construct a Store node.
ir_node * new_rd_Phi(dbg_info *dbgi, ir_node *block, int arity, ir_node *const *in, ir_mode *mode)
Construct a Phi node.
void set_Bitcast_op(ir_node *node, ir_node *op)
Sets op input of a Bitcast node.
ir_node ** get_Phi_pred_arr(ir_node *node)
Get an array of all Phi preds.
ir_type * get_Load_type(const ir_node *node)
Returns type attribute of a Load node.
int is_Sync(const ir_node *node)
Test if node is a Sync.
ir_entity * get_Block_entity(const ir_node *node)
Returns entity attribute of a Block node.
int is_Eor(const ir_node *node)
Test if node is a Eor.
ir_op * op_Confirm
Confirm opcode.
Definition: nodes.h:1283
ir_op * op_Not
Not opcode.
Definition: nodes.h:2782
first operand
Definition: nodes.h:3569
selected if sel input is false
Definition: nodes.h:2604
first operand
Definition: nodes.h:2528
ir_node * get_Mul_right(const ir_node *node)
Returns right input of a Mul node.
function arguments
Definition: nodes.h:3707
ir_node * get_Eor_right(const ir_node *node)
Returns right input of an Eor node.
ir_node * new_rd_Shrs(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Shrs node.
ir_node * new_r_And(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an And node.
n_Mulh
Input numbers for Mulh node.
Definition: nodes.h:2527
ir_volatility get_CopyB_volatility(const ir_node *node)
Returns volatility attribute of a CopyB node.
control flow when exception occurred
Definition: nodes.h:1565
ir_op * get_op_Free(void)
Returns opcode for Free nodes.
ir_op * op_Add
Add opcode.
Definition: nodes.h:236
the only NoMem node of this ir_graph
Definition: nodes.h:479
void set_Id_pred(ir_node *node, ir_node *pred)
Sets pred input of an Id node.
void set_End_keepalive(ir_node *node, int pos, ir_node *keepalive)
Set the End keepalive with index pos.
memory dependency
Definition: nodes.h:1857
ir_builtin_kind
Supported libFirm builtins.
Definition: firm_types.h:280
int is_Return(const ir_node *node)
Test if node is a Return.
ir_op * get_op_End(void)
Returns opcode for End nodes.
void set_Alloc_mem(ir_node *node, ir_node *mem)
Sets mem input of an Alloc node.
cond_jmp_predicate get_Cond_jmp_pred(const ir_node *node)
Returns jmp_pred attribute of a Cond node.
ir_op * op_Pin
Pin opcode.
Definition: nodes.h:3061
ir_node * get_Mul_left(const ir_node *node)
Returns left input of a Mul node.
n_Alloc
Input numbers for Alloc node.
Definition: nodes.h:374
ir_node * new_rd_CopyB(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_dst, ir_node *irn_src, ir_type *type, ir_cons_flags flags)
Construct a CopyB node.
void set_Proj_num(ir_node *node, unsigned num)
Sets num attribute of a Proj node.
control flow if operand is "false"
Definition: nodes.h:1139
ir_node * new_r_CopyB(ir_node *block, ir_node *irn_mem, ir_node *irn_dst, ir_node *irn_src, ir_type *type, ir_cons_flags flags)
Construct a CopyB node.
second operand
Definition: nodes.h:2529
ir_op * op_Return
Return opcode.
Definition: nodes.h:3304
int is_Cmp(const ir_node *node)
Test if node is a Cmp.
second operand
Definition: nodes.h:2352
ir_op * op_Shr
Shr opcode.
Definition: nodes.h:3546
int is_Minus(const ir_node *node)
Test if node is a Minus.
ir_node * new_r_Mul(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Mul node.
ir_node * new_d_Switch(dbg_info *dbgi, ir_node *irn_selector, unsigned n_outs, ir_switch_table *table)
Construct a Switch node.
ir_node * new_Member(ir_node *irn_ptr, ir_entity *entity)
Construct a Member node.
ir_op * op_Member
Member opcode.
Definition: nodes.h:2260
ir_node * new_Sync(int arity, ir_node *const *in)
Construct a Sync node.
memory result
Definition: nodes.h:1562
ir_node * new_r_Mod(ir_node *block, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Mod node.
ir_op * get_op_CopyB(void)
Returns opcode for CopyB nodes.
ir_node * new_rd_Raise(dbg_info *dbgi, ir_node *block, ir_node *irn_mem, ir_node *irn_exo_ptr)
Construct a Raise node.
ir_op * get_op_Minus(void)
Returns opcode for Minus nodes.
void set_Store_type(ir_node *node, ir_type *type)
Sets type attribute of a Store node.
ir_node * new_d_Builtin(dbg_info *dbgi, ir_node *irn_mem, int arity, ir_node *const *in, ir_builtin_kind kind, ir_type *type)
Construct a Builtin node.
ir_op * op_Dummy
Dummy opcode.
Definition: nodes.h:1697
ir_node * new_rd_Cond(dbg_info *dbgi, ir_node *block, ir_node *irn_selector)
Construct a Cond node.
int is_Mod(const ir_node *node)
Test if node is a Mod.
ir_op * get_op_Store(void)
Returns opcode for Store nodes.
ir_node * new_Sub(ir_node *irn_left, ir_node *irn_right)
Construct a Sub node.
first operand
Definition: nodes.h:2351
void set_Call_ptr(ir_node *node, ir_node *ptr)
Sets ptr input of a Call node.
n_Eor
Input numbers for Eor node.
Definition: nodes.h:1782
ir_node * new_d_Mulh(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct a Mulh node.
void set_Mulh_right(ir_node *node, ir_node *right)
Sets right input of a Mulh node.
ir_op * get_op_Sub(void)
Returns opcode for Sub nodes.
ir_node * new_r_Builtin(ir_node *block, ir_node *irn_mem, int arity, ir_node *const *in, ir_builtin_kind kind, ir_type *type)
Construct a Builtin node.
void set_Eor_right(ir_node *node, ir_node *right)
Sets right input of an Eor node.
ir_node * new_r_Offset(ir_graph *irg, ir_mode *mode, ir_entity *entity)
Construct an Offset node.
first operand
Definition: nodes.h:3412
ir_op * get_op_Mulh(void)
Returns opcode for Mulh nodes.
ir_node * new_d_Unknown(dbg_info *dbgi, ir_mode *mode)
Construct an Unknown node.
value making the output selection
Definition: nodes.h:2603
ir_node * get_Anchor_start_block(const ir_node *node)
Returns start_block input of an Anchor node.
ir_node * new_r_Div(ir_node *block, ir_node *irn_mem, ir_node *irn_left, ir_node *irn_right, int pinned)
Construct a Div node.
ir_op * get_op_Align(void)
Returns opcode for Align nodes.
ir_node * new_d_Sync(dbg_info *dbgi, int arity, ir_node *const *in)
Construct a Sync node.
first operand
Definition: nodes.h:541
condition parameter
Definition: nodes.h:1131
ir_node * get_Minus_op(const ir_node *node)
Returns op input of a Minus node.
ir_op * get_op_Shr(void)
Returns opcode for Shr nodes.
ir_node * new_r_Conv(ir_node *block, ir_node *irn_op, ir_mode *mode)
Construct a Conv node.
int is_Free(const ir_node *node)
Test if node is a Free.
ir_op * op_Size
Size opcode.
Definition: nodes.h:3687
frame of this ir_graph
Definition: nodes.h:476
memory dependency
Definition: nodes.h:375
the value which is returned unchanged
Definition: nodes.h:2001
ir_node * get_Proj_pred(const ir_node *node)
Returns pred input of a Proj node.
ir_entity * get_Offset_entity(const ir_node *node)
Returns entity attribute of an Offset node.
void set_Anchor_initial_mem(ir_node *node, ir_node *initial_mem)
Sets initial_mem input of an Anchor node.
A input/output constraint attribute.
Definition: firm_types.h:270
ir_node * get_Shl_right(const ir_node *node)
Returns right input of a Shl node.
ir_node * new_d_Bad(dbg_info *dbgi, ir_mode *mode)
Construct a Bad node.
ir_op * op_Sel
Sel opcode.
Definition: nodes.h:3390
ir_op * get_op_Confirm(void)
Returns opcode for Confirm nodes.
void set_Confirm_relation(ir_node *node, ir_relation relation)
Sets relation attribute of a Confirm node.
ir_node * new_r_NoMem(ir_graph *irg)
Construct a NoMem node.
ir_node * get_Sync_pred(ir_node const *node, int pos)
Get the Sync pred with index pos.
void set_Or_right(ir_node *node, ir_node *right)
Sets right input of an Or node.
control flow when no exception occurs
Definition: nodes.h:3775
ir_node * new_Cond(ir_node *irn_selector)
Construct a Cond node.
Definition: nodes.h:35
ir_relation get_Confirm_relation(const ir_node *node)
Returns relation attribute of a Confirm node.
ir_node * get_Builtin_mem(const ir_node *node)
Returns mem input of a Builtin node.
ir_node ** get_Call_param_arr(ir_node *node)
Get an array of all Call params.
int is_Dummy(const ir_node *node)
Test if node is a Dummy.
struct ir_entity ir_entity
Entity.
Definition: firm_types.h:83
void set_Raise_exo_ptr(ir_node *node, ir_node *exo_ptr)
Sets exo_ptr input of a Raise node.
memory dependency
Definition: nodes.h:3764
ir_node * new_d_Or(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct an Or node.
ir_node * new_r_Add(ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an Add node.
memory dependency
Definition: nodes.h:2084
int get_Phi_loop(const ir_node *node)
Returns loop attribute of a Phi node.
ir_node * new_r_Size(ir_graph *irg, ir_mode *mode, ir_type *type)
Construct a Size node.
operand
Definition: nodes.h:2735
int get_Call_n_params(ir_node const *node)
Get the number of Call params.
void set_And_right(ir_node *node, ir_node *right)
Sets right input of an And node.
ir_node * get_Or_right(const ir_node *node)
Returns right input of an Or node.
address to store to
Definition: nodes.h:3765
ir_node * new_rd_Not(dbg_info *dbgi, ir_node *block, ir_node *irn_op)
Construct a Not node.
ident * get_ASM_text(const ir_node *node)
Returns text attribute of an ASM node.
n_Sub
Input numbers for Sub node.
Definition: nodes.h:3879
ir_op * get_op_Div(void)
Returns opcode for Div nodes.
ir_node * new_d_CopyB(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_dst, ir_node *irn_src, ir_type *type, ir_cons_flags flags)
Construct a CopyB node.
size of the block in bytes
Definition: nodes.h:376
n_Add
Input numbers for Add node.
Definition: nodes.h:179
ir_op * get_op_Unknown(void)
Returns opcode for Unknown nodes.
ir_node * new_Store(ir_node *irn_mem, ir_node *irn_ptr, ir_node *irn_value, ir_type *type, ir_cons_flags flags)
Construct a Store node.
ir_node * get_Anchor_no_mem(const ir_node *node)
Returns no_mem input of an Anchor node.
initial memory of this ir_graph
Definition: nodes.h:477
ir_node * new_rd_IJmp(dbg_info *dbgi, ir_node *block, ir_node *irn_target)
Construct an IJmp node.
ir_node * get_Return_res(ir_node const *node, int pos)
Get the Return res with index pos.
value which is pinned
Definition: nodes.h:3014
second operand
Definition: nodes.h:542
void set_Anchor_start(ir_node *node, ir_node *start)
Sets start input of an Anchor node.
ir_node * get_Conv_op(const ir_node *node)
Returns op input of a Conv node.
Definition: nodes.h:47
ir_node * new_rd_Tuple(dbg_info *dbgi, ir_node *block, int arity, ir_node *const *in)
Construct a Tuple node.
int is_Mulh(const ir_node *node)
Test if node is a Mulh.
memory result
Definition: nodes.h:946
first operand
Definition: nodes.h:3880
ir_op * get_op_Call(void)
Returns opcode for Call nodes.
ir_op * op_Free
Free opcode.
Definition: nodes.h:1913
ir_node * get_Shrs_right(const ir_node *node)
Returns right input of a Shrs node.
Definition: nodes.h:44
pointer to exception object to be thrown
Definition: nodes.h:3158
Definition: nodes.h:59
int is_Add(const ir_node *node)
Test if node is a Add.
pn_Load
Projection numbers for result of Load node (use for Proj nodes)
Definition: nodes.h:2092
ir_node * new_r_Confirm(ir_node *block, ir_node *irn_value, ir_node *irn_bound, ir_relation relation)
Construct a Confirm node.
operand
Definition: nodes.h:2278
Definition: nodes.h:58
ir_node * new_rd_Start(dbg_info *dbgi, ir_graph *irg)
Construct a Start node.
ir_node * get_Block_cfgpred(ir_node const *node, int pos)
Get the Block cfgpred with index pos.
ir_node * get_Load_mem(const ir_node *node)
Returns mem input of a Load node.
unsigned get_Switch_n_outs(const ir_node *node)
Returns n_outs attribute of a Switch node.
ir_node * new_rd_Block(dbg_info *dbgi, ir_graph *irg, int arity, ir_node *const *in)
Construct a Block node.
ir_op * get_op_Pin(void)
Returns opcode for Pin nodes.
pointer to the object to free
Definition: nodes.h:1858
ir_node * new_Builtin(ir_node *irn_mem, int arity, ir_node *const *in, ir_builtin_kind kind, ir_type *type)
Construct a Builtin node.
memory result
Definition: nodes.h:3166
ir_op * op_Offset
Offset opcode.
Definition: nodes.h:2844
ir_op * get_op_Switch(void)
Returns opcode for Switch nodes.
void set_Size_type(ir_node *node, ir_type *type)
Sets type attribute of a Size node.
ir_node * new_rd_Shr(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct a Shr node.
ir_node * new_d_NoMem(dbg_info *dbgi)
Construct a NoMem node.
void set_Shrs_left(ir_node *node, ir_node *left)
Sets left input of a Shrs node.
ir_node * get_Sel_ptr(const ir_node *node)
Returns ptr input of a Sel node.
ir_node * get_Mux_true(const ir_node *node)
Returns true input of a Mux node.
ir_node * new_Mulh(ir_node *irn_left, ir_node *irn_right)
Construct a Mulh node.
n_Switch
Input numbers for Switch node.
Definition: nodes.h:3956
Definition: nodes.h:37
ir_node * new_d_Minus(dbg_info *dbgi, ir_node *irn_op)
Construct a Minus node.
ir_mode * get_Mod_resmode(const ir_node *node)
Returns resmode attribute of a Mod node.
ir_node * get_Anchor_args(const ir_node *node)
Returns args input of an Anchor node.
n_Store
Input numbers for Store node.
Definition: nodes.h:3763
ir_node * new_r_Mux(ir_node *block, ir_node *irn_sel, ir_node *irn_false, ir_node *irn_true)
Construct a Mux node.
result of computation
Definition: nodes.h:2361
ir_node * new_d_Load(dbg_info *dbgi, ir_node *irn_mem, ir_node *irn_ptr, ir_mode *mode, ir_type *type, ir_cons_flags flags)
Construct a Load node.
pn_Mod
Projection numbers for result of Mod node (use for Proj nodes)
Definition: nodes.h:2359
Definition: nodes.h:31
ir_node * get_Add_left(const ir_node *node)
Returns left input of an Add node.
ir_op * op_Sync
Sync opcode.
Definition: nodes.h:4099
ir_node * new_Call(ir_node *irn_mem, ir_node *irn_ptr, int arity, ir_node *const *in, ir_type *type)
Construct a Call node.
ir_node * new_d_Shrs(dbg_info *dbgi, ir_node *irn_left, ir_node *irn_right)
Construct a Shrs node.
ir_op * op_Builtin
Builtin opcode.
Definition: nodes.h:916
void set_Shr_right(ir_node *node, ir_node *right)
Sets right input of a Shr node.
int is_NoMem(const ir_node *node)
Test if node is a NoMem.
n_CopyB
Input numbers for CopyB node.
Definition: nodes.h:1427
ir_node * new_r_Jmp(ir_node *block)
Construct a Jmp node.
int is_entconst(const ir_node *node)
Test if node is a entconst.
target address of the jump
Definition: nodes.h:1933
struct ir_type ir_type
Type.
Definition: firm_types.h:71
ir_node ** get_Tuple_pred_arr(ir_node *node)
Get an array of all Tuple preds.
control flow when exception occurred
Definition: nodes.h:2363
ir_node * new_d_Address(dbg_info *dbgi, ir_entity *entity)
Construct an Address node.
pn_Store
Projection numbers for result of Store node (use for Proj nodes)
Definition: nodes.h:3773
ir_node * new_d_Bitcast(dbg_info *dbgi, ir_node *irn_op, ir_mode *mode)
Construct a Bitcast node.
ir_node * get_Cond_selector(const ir_node *node)
Returns selector input of a Cond node.
ir_node * new_Mux(ir_node *irn_sel, ir_node *irn_false, ir_node *irn_true)
Construct a Mux node.
int is_Member(const ir_node *node)
Test if node is a Member.
int is_Shr(const ir_node *node)
Test if node is a Shr.
unsigned get_Alloc_alignment(const ir_node *node)
Returns alignment attribute of an Alloc node.
ir_op * op_Shrs
Shrs opcode.
Definition: nodes.h:3625
int get_Sync_n_preds(ir_node const *node)
Get the number of Sync preds.
void set_Mux_sel(ir_node *node, ir_node *sel)
Sets sel input of a Mux node.
ir_op * get_op_Shrs(void)
Returns opcode for Shrs nodes.
int is_Address(const ir_node *node)
Test if node is a Address.
int is_IJmp(const ir_node *node)
Test if node is a IJmp.
ir_volatility get_Store_volatility(const ir_node *node)
Returns volatility attribute of a Store node.
ir_node * get_Add_right(const ir_node *node)
Returns right input of an Add node.
second operand
Definition: nodes.h:181
ir_node * new_rd_Or(dbg_info *dbgi, ir_node *block, ir_node *irn_left, ir_node *irn_right)
Construct an Or node.
ir_node * new_Phi(int arity, ir_node *const *in, ir_mode *mode)
Construct a Phi node.