Lines Matching refs:RTX

251 #define GET_CODE(RTX)	    ((enum rtx_code) (RTX)->code)  argument
252 #define PUT_CODE(RTX, CODE) ((RTX)->code = (CODE)) argument
254 #define GET_MODE(RTX) ((enum machine_mode) (RTX)->mode) argument
255 #define PUT_MODE(RTX, MODE) ((RTX)->mode = (MODE)) argument
305 #define RTL_CHECK1(RTX, N, C1) __extension__ \ argument
306 (*({ rtx const _rtx = (RTX); const int _n = (N); \
316 #define RTL_CHECK2(RTX, N, C1, C2) __extension__ \ argument
317 (*({ rtx const _rtx = (RTX); const int _n = (N); \
328 #define RTL_CHECKC1(RTX, N, C) __extension__ \ argument
329 (*({ rtx const _rtx = (RTX); const int _n = (N); \
335 #define RTL_CHECKC2(RTX, N, C1, C2) __extension__ \ argument
336 (*({ rtx const _rtx = (RTX); const int _n = (N); \
350 #define XWINT(RTX, N) __extension__ \ argument
351 (*({ rtx const _rtx = (RTX); const int _n = (N); \
361 #define XCWINT(RTX, N, C) __extension__ \ argument
362 (*({ rtx const _rtx = (RTX); \
389 #define RTL_CHECK1(RTX, N, C1) ((RTX)->u.fld[N]) argument
390 #define RTL_CHECK2(RTX, N, C1, C2) ((RTX)->u.fld[N]) argument
391 #define RTL_CHECKC1(RTX, N, C) ((RTX)->u.fld[N]) argument
392 #define RTL_CHECKC2(RTX, N, C1, C2) ((RTX)->u.fld[N]) argument
394 #define XWINT(RTX, N) ((RTX)->u.hwint[N]) argument
395 #define XCWINT(RTX, N, C) ((RTX)->u.hwint[N]) argument
402 #define RTX_FLAG(RTX, FLAG) ((RTX)->FLAG) argument
405 #define RTL_FLAG_CHECK1(NAME, RTX, C1) __extension__ \ argument
406 ({ rtx const _rtx = (RTX); \
412 #define RTL_FLAG_CHECK2(NAME, RTX, C1, C2) __extension__ \ argument
413 ({ rtx const _rtx = (RTX); \
419 #define RTL_FLAG_CHECK3(NAME, RTX, C1, C2, C3) __extension__ \ argument
420 ({ rtx const _rtx = (RTX); \
427 #define RTL_FLAG_CHECK4(NAME, RTX, C1, C2, C3, C4) __extension__ \ argument
428 ({ rtx const _rtx = (RTX); \
435 #define RTL_FLAG_CHECK5(NAME, RTX, C1, C2, C3, C4, C5) __extension__ \ argument
436 ({ rtx const _rtx = (RTX); \
444 #define RTL_FLAG_CHECK6(NAME, RTX, C1, C2, C3, C4, C5, C6) \ argument
446 ({ rtx const _rtx = (RTX); \
454 #define RTL_FLAG_CHECK7(NAME, RTX, C1, C2, C3, C4, C5, C6, C7) \ argument
456 ({ rtx const _rtx = (RTX); \
465 #define RTL_FLAG_CHECK8(NAME, RTX, C1, C2, C3, C4, C5, C6, C7, C8) \ argument
467 ({ rtx const _rtx = (RTX); \
483 #define RTL_FLAG_CHECK1(NAME, RTX, C1) (RTX) argument
484 #define RTL_FLAG_CHECK2(NAME, RTX, C1, C2) (RTX) argument
485 #define RTL_FLAG_CHECK3(NAME, RTX, C1, C2, C3) (RTX) argument
486 #define RTL_FLAG_CHECK4(NAME, RTX, C1, C2, C3, C4) (RTX) argument
487 #define RTL_FLAG_CHECK5(NAME, RTX, C1, C2, C3, C4, C5) (RTX) argument
488 #define RTL_FLAG_CHECK6(NAME, RTX, C1, C2, C3, C4, C5, C6) (RTX) argument
489 #define RTL_FLAG_CHECK7(NAME, RTX, C1, C2, C3, C4, C5, C6, C7) (RTX) argument
490 #define RTL_FLAG_CHECK8(NAME, RTX, C1, C2, C3, C4, C5, C6, C7, C8) (RTX) argument
493 #define CLEAR_RTX_FLAGS(RTX) \ argument
495 rtx const _rtx = (RTX); \
506 #define XINT(RTX, N) (RTL_CHECK2 (RTX, N, 'i', 'n').rtint) argument
507 #define XSTR(RTX, N) (RTL_CHECK2 (RTX, N, 's', 'S').rtstr) argument
508 #define XEXP(RTX, N) (RTL_CHECK2 (RTX, N, 'e', 'u').rtx) argument
509 #define XVEC(RTX, N) (RTL_CHECK2 (RTX, N, 'E', 'V').rtvec) argument
510 #define XMODE(RTX, N) (RTL_CHECK1 (RTX, N, 'M').rttype) argument
511 #define XBITMAP(RTX, N) (RTL_CHECK1 (RTX, N, 'b').rtbit) argument
512 #define XTREE(RTX, N) (RTL_CHECK1 (RTX, N, 't').rttree) argument
513 #define XBBDEF(RTX, N) (RTL_CHECK1 (RTX, N, 'B').bb) argument
514 #define XTMPL(RTX, N) (RTL_CHECK1 (RTX, N, 'T').rtstr) argument
516 #define XVECEXP(RTX, N, M) RTVEC_ELT (XVEC (RTX, N), M) argument
517 #define XVECLEN(RTX, N) GET_NUM_ELEM (XVEC (RTX, N)) argument
522 #define X0INT(RTX, N) (RTL_CHECK1 (RTX, N, '0').rtint) argument
523 #define X0UINT(RTX, N) (RTL_CHECK1 (RTX, N, '0').rtuint) argument
524 #define X0STR(RTX, N) (RTL_CHECK1 (RTX, N, '0').rtstr) argument
525 #define X0EXP(RTX, N) (RTL_CHECK1 (RTX, N, '0').rtx) argument
526 #define X0VEC(RTX, N) (RTL_CHECK1 (RTX, N, '0').rtvec) argument
527 #define X0MODE(RTX, N) (RTL_CHECK1 (RTX, N, '0').rttype) argument
528 #define X0BITMAP(RTX, N) (RTL_CHECK1 (RTX, N, '0').rtbit) argument
529 #define X0TREE(RTX, N) (RTL_CHECK1 (RTX, N, '0').rttree) argument
530 #define X0BBDEF(RTX, N) (RTL_CHECK1 (RTX, N, '0').bb) argument
531 #define X0ADVFLAGS(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_addr_diff_vec_flags) argument
532 #define X0CSELIB(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_cselib) argument
533 #define X0MEMATTR(RTX, N) (RTL_CHECKC1 (RTX, N, MEM).rtmem) argument
534 #define X0REGATTR(RTX, N) (RTL_CHECKC1 (RTX, N, REG).rtreg) argument
537 #define X0ANY(RTX, N) RTL_CHECK1 (RTX, N, '0') argument
539 #define XCINT(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rtint) argument
540 #define XCUINT(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rtuint) argument
541 #define XCSTR(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rtstr) argument
542 #define XCEXP(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rtx) argument
543 #define XCVEC(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rtvec) argument
544 #define XCMODE(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rttype) argument
545 #define XCBITMAP(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rtbit) argument
546 #define XCTREE(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rttree) argument
547 #define XCBBDEF(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).bb) argument
548 #define XCADVFLAGS(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_addr_diff_vec_flags) argument
549 #define XCCSELIB(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_cselib) argument
551 #define XCVECEXP(RTX, N, M, C) RTVEC_ELT (XCVEC (RTX, N, C), M) argument
552 #define XCVECLEN(RTX, N, C) GET_NUM_ELEM (XCVEC (RTX, N, C)) argument
554 #define XC2EXP(RTX, N, C1, C2) (RTL_CHECKC2 (RTX, N, C1, C2).rtx) argument
585 #define RTX_INTEGRATED_P(RTX) \ argument
586 (RTL_FLAG_CHECK8("RTX_INTEGRATED_P", (RTX), INSN, CALL_INSN, \
589 #define RTX_UNCHANGING_P(RTX) \ argument
590 (RTL_FLAG_CHECK3("RTX_UNCHANGING_P", (RTX), REG, MEM, CONCAT)->unchanging)
591 #define RTX_FRAME_RELATED_P(RTX) \ argument
592 (RTL_FLAG_CHECK5("RTX_FRAME_RELATED_P", (RTX), INSN, CALL_INSN, \
596 #define INSN_DELETED_P(RTX) \ argument
597 (RTL_FLAG_CHECK6("INSN_DELETED_P", (RTX), INSN, CALL_INSN, JUMP_INSN, \
601 #define CONST_OR_PURE_CALL_P(RTX) \ argument
602 (RTL_FLAG_CHECK3("CONST_OR_PURE_CALL_P", (RTX), CALL_INSN, NOTE, \
606 #define SIBLING_CALL_P(RTX) \ argument
607 (RTL_FLAG_CHECK1("SIBLING_CALL_P", (RTX), CALL_INSN)->jump)
610 #define INSN_ANNULLED_BRANCH_P(RTX) \ argument
611 (RTL_FLAG_CHECK3("INSN_ANNULLED_BRANCH_P", (RTX), JUMP_INSN, CALL_INSN, INSN)->unchanging)
615 #define INSN_DEAD_CODE_P(RTX) \ argument
616 (RTL_FLAG_CHECK3("INSN_DEAD_CODE_P", (RTX), INSN, CALL_INSN, JUMP_INSN)->in_struct)
622 #define INSN_FROM_TARGET_P(RTX) \ argument
623 (RTL_FLAG_CHECK3("INSN_FROM_TARGET_P", (RTX), INSN, JUMP_INSN, CALL_INSN)->in_struct)
625 #define ADDR_DIFF_VEC_FLAGS(RTX) X0ADVFLAGS(RTX, 4) argument
627 #define CSELIB_VAL_PTR(RTX) X0CSELIB(RTX, 0) argument
931 #define LABEL_NAME(RTX) XCSTR (RTX, 7, CODE_LABEL) argument
935 #define LABEL_NUSES(RTX) XCINT (RTX, 4, CODE_LABEL) argument
988 #define ADDRESSOF_REGNO(RTX) XCUINT (RTX, 1, ADDRESSOF) argument
991 #define ADDRESSOF_DECL(RTX) XCTREE (RTX, 2, ADDRESSOF) argument
1013 #define CONTAINING_INSN(RTX) XCEXP (RTX, 2, LABEL_REF) argument
1019 #define REGNO(RTX) XCUINT (RTX, 0, REG) argument
1020 #define ORIGINAL_REGNO(RTX) X0UINT (RTX, 1) argument
1024 #define REG_FUNCTION_VALUE_P(RTX) \ argument
1025 (RTL_FLAG_CHECK2("REG_FUNCTION_VALUE_P", (RTX), REG, PARALLEL)->integrated)
1028 #define REG_USERVAR_P(RTX) \ argument
1029 (RTL_FLAG_CHECK1("REG_USERVAR_P", (RTX), REG)->volatil)
1032 #define REG_POINTER(RTX) \ argument
1033 (RTL_FLAG_CHECK1("REG_POINTER", (RTX), REG)->frame_related)
1043 #define INTVAL(RTX) XCWINT(RTX, 0, CONST_INT) argument
1055 #define CONST_VECTOR_ELT(RTX, N) XCVECEXP (RTX, 0, N, CONST_VECTOR) argument
1058 #define CONST_VECTOR_NUNITS(RTX) XCVECLEN (RTX, 0, CONST_VECTOR) argument
1063 #define SUBREG_REG(RTX) XCEXP (RTX, 0, SUBREG) argument
1064 #define SUBREG_BYTE(RTX) XCUINT (RTX, 1, SUBREG) argument
1082 #define SUBREG_PROMOTED_VAR_P(RTX) \ argument
1083 (RTL_FLAG_CHECK1("SUBREG_PROMOTED", (RTX), SUBREG)->in_struct)
1085 #define SUBREG_PROMOTED_UNSIGNED_SET(RTX, VAL) \ argument
1087 rtx const _rtx = RTL_FLAG_CHECK1("SUBREG_PROMOTED_UNSIGNED_SET", (RTX), SUBREG); \
1095 #define SUBREG_PROMOTED_UNSIGNED_P(RTX) \ argument
1096 ((RTL_FLAG_CHECK1("SUBREG_PROMOTED_UNSIGNED_P", (RTX), SUBREG)->volatil) \
1097 ? -1 : (RTX)->unchanging)
1101 #define ASM_OPERANDS_TEMPLATE(RTX) XCSTR (RTX, 0, ASM_OPERANDS) argument
1102 #define ASM_OPERANDS_OUTPUT_CONSTRAINT(RTX) XCSTR (RTX, 1, ASM_OPERANDS) argument
1103 #define ASM_OPERANDS_OUTPUT_IDX(RTX) XCINT (RTX, 2, ASM_OPERANDS) argument
1104 #define ASM_OPERANDS_INPUT_VEC(RTX) XCVEC (RTX, 3, ASM_OPERANDS) argument
1105 #define ASM_OPERANDS_INPUT_CONSTRAINT_VEC(RTX) XCVEC (RTX, 4, ASM_OPERANDS) argument
1106 #define ASM_OPERANDS_INPUT(RTX, N) XCVECEXP (RTX, 3, N, ASM_OPERANDS) argument
1107 #define ASM_OPERANDS_INPUT_LENGTH(RTX) XCVECLEN (RTX, 3, ASM_OPERANDS) argument
1108 #define ASM_OPERANDS_INPUT_CONSTRAINT_EXP(RTX, N) \ argument
1109 XCVECEXP (RTX, 4, N, ASM_OPERANDS)
1110 #define ASM_OPERANDS_INPUT_CONSTRAINT(RTX, N) \ argument
1111 XSTR (XCVECEXP (RTX, 4, N, ASM_OPERANDS), 0)
1112 #define ASM_OPERANDS_INPUT_MODE(RTX, N) \ argument
1113 GET_MODE (XCVECEXP (RTX, 4, N, ASM_OPERANDS))
1114 #define ASM_OPERANDS_SOURCE_FILE(RTX) XCSTR (RTX, 5, ASM_OPERANDS) argument
1115 #define ASM_OPERANDS_SOURCE_LINE(RTX) XCINT (RTX, 6, ASM_OPERANDS) argument
1120 #define MEM_KEEP_ALIAS_SET_P(RTX) \ argument
1121 (RTL_FLAG_CHECK1("MEM_KEEP_ALIAS_SET_P", (RTX), MEM)->jump)
1124 #define MEM_VOLATILE_P(RTX) \ argument
1125 (RTL_FLAG_CHECK3("MEM_VOLATILE_P", (RTX), MEM, ASM_OPERANDS, \
1131 #define MEM_IN_STRUCT_P(RTX) \ argument
1132 (RTL_FLAG_CHECK1("MEM_IN_STRUCT_P", (RTX), MEM)->in_struct)
1136 #define MEM_SCALAR_P(RTX) \ argument
1137 (RTL_FLAG_CHECK1("MEM_SCALAR_P", (RTX), MEM)->frame_related)
1140 #define MEM_NOTRAP_P(RTX) \ argument
1141 (RTL_FLAG_CHECK1("MEM_NOTRAP_P", (RTX), MEM)->call)
1147 #define MEM_SET_IN_STRUCT_P(RTX, VAL) \ argument
1151 MEM_IN_STRUCT_P (RTX) = 1; \
1152 MEM_SCALAR_P (RTX) = 0; \
1156 MEM_IN_STRUCT_P (RTX) = 0; \
1157 MEM_SCALAR_P (RTX) = 1; \
1163 #define MEM_ATTRS(RTX) X0MEMATTR (RTX, 1) argument
1167 #define REG_ATTRS(RTX) X0REGATTR (RTX, 2) argument
1175 #define MEM_ALIAS_SET(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->alias) argument
1179 #define MEM_EXPR(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->expr) argument
1183 #define MEM_OFFSET(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->offset) argument
1187 #define MEM_SIZE(RTX) \ argument
1188 (MEM_ATTRS (RTX) != 0 ? MEM_ATTRS (RTX)->size \
1189 : GET_MODE (RTX) != BLKmode ? GEN_INT (GET_MODE_SIZE (GET_MODE (RTX))) \
1194 #define MEM_ALIGN(RTX) \ argument
1195 (MEM_ATTRS (RTX) != 0 ? MEM_ATTRS (RTX)->align \
1196 : (STRICT_ALIGNMENT && GET_MODE (RTX) != BLKmode \
1197 ? GET_MODE_ALIGNMENT (GET_MODE (RTX)) : BITS_PER_UNIT))
1201 #define REG_EXPR(RTX) (REG_ATTRS (RTX) == 0 ? 0 : REG_ATTRS (RTX)->decl) argument
1205 #define REG_OFFSET(RTX) (REG_ATTRS (RTX) == 0 ? 0 : REG_ATTRS (RTX)->offset) argument
1219 #define LABEL_OUTSIDE_LOOP_P(RTX) \ argument
1220 (RTL_FLAG_CHECK1("LABEL_OUTSIDE_LOOP_P", (RTX), LABEL_REF)->in_struct)
1224 #define LABEL_REF_NONLOCAL_P(RTX) \ argument
1225 (RTL_FLAG_CHECK2("LABEL_REF_NONLOCAL_P", (RTX), LABEL_REF, \
1229 #define LABEL_PRESERVE_P(RTX) \ argument
1230 (RTL_FLAG_CHECK2("LABEL_PRESERVE_P", (RTX), CODE_LABEL, NOTE)->in_struct)
1233 #define REG_LOOP_TEST_P(RTX) \ argument
1234 (RTL_FLAG_CHECK1("REG_LOOP_TEST_P", (RTX), REG)->in_struct)
1238 #define SCHED_GROUP_P(RTX) \ argument
1239 (RTL_FLAG_CHECK3("SCHED_GROUP_P", (RTX), INSN, JUMP_INSN, CALL_INSN \
1244 #define SET_DEST(RTX) XC2EXP(RTX, 0, SET, CLOBBER) argument
1245 #define SET_SRC(RTX) XCEXP(RTX, 1, SET) argument
1246 #define SET_IS_RETURN_P(RTX) \ argument
1247 (RTL_FLAG_CHECK1("SET_IS_RETURN_P", (RTX), SET)->jump)
1250 #define TRAP_CONDITION(RTX) XCEXP (RTX, 0, TRAP_IF) argument
1251 #define TRAP_CODE(RTX) XCEXP (RTX, 1, TRAP_IF) argument
1256 #define COND_EXEC_TEST(RTX) XCEXP (RTX, 0, COND_EXEC) argument
1257 #define COND_EXEC_CODE(RTX) XCEXP (RTX, 1, COND_EXEC) argument
1261 #define CONSTANT_POOL_ADDRESS_P(RTX) \ argument
1262 (RTL_FLAG_CHECK1("CONSTANT_POOL_ADDRESS_P", (RTX), SYMBOL_REF)->unchanging)
1266 #define TREE_CONSTANT_POOL_ADDRESS_P(RTX) \ argument
1268 (RTX), SYMBOL_REF)->frame_related)
1271 #define SYMBOL_REF_FLAG(RTX) \ argument
1272 (RTL_FLAG_CHECK1("SYMBOL_REF_FLAG", (RTX), SYMBOL_REF)->volatil)
1276 #define SYMBOL_REF_USED(RTX) \ argument
1277 (RTL_FLAG_CHECK1("SYMBOL_REF_USED", (RTX), SYMBOL_REF)->used)
1280 #define SYMBOL_REF_WEAK(RTX) \ argument
1281 (RTL_FLAG_CHECK1("SYMBOL_REF_WEAK", (RTX), SYMBOL_REF)->integrated)
1284 #define SYMBOL_REF_DECL(RTX) X0TREE ((RTX), 2) argument
1293 #define SYMBOL_REF_FLAGS(RTX) X0INT ((RTX), 1) argument
1300 #define SYMBOL_REF_FUNCTION_P(RTX) \ argument
1301 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_FUNCTION) != 0)
1304 #define SYMBOL_REF_LOCAL_P(RTX) \ argument
1305 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_LOCAL) != 0)
1308 #define SYMBOL_REF_SMALL_P(RTX) \ argument
1309 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_SMALL) != 0)
1313 #define SYMBOL_REF_TLS_MODEL(RTX) \ argument
1314 ((enum tls_model) ((SYMBOL_REF_FLAGS (RTX) >> SYMBOL_FLAG_TLS_SHIFT) & 7))
1317 #define SYMBOL_REF_EXTERNAL_P(RTX) \ argument
1318 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_EXTERNAL) != 0)