Lines Matching refs:RTX

282 #define GET_CODE(RTX)	    ((enum rtx_code) (RTX)->code)  argument
283 #define PUT_CODE(RTX, CODE) ((RTX)->code = (CODE)) argument
285 #define GET_MODE(RTX) ((enum machine_mode) (RTX)->mode) argument
286 #define PUT_MODE(RTX, MODE) ((RTX)->mode = (MODE)) argument
396 #define RTL_CHECK1(RTX, N, C1) __extension__ \ argument
397 (*({ rtx const _rtx = (RTX); const int _n = (N); \
407 #define RTL_CHECK2(RTX, N, C1, C2) __extension__ \ argument
408 (*({ rtx const _rtx = (RTX); const int _n = (N); \
419 #define RTL_CHECKC1(RTX, N, C) __extension__ \ argument
420 (*({ rtx const _rtx = (RTX); const int _n = (N); \
426 #define RTL_CHECKC2(RTX, N, C1, C2) __extension__ \ argument
427 (*({ rtx const _rtx = (RTX); const int _n = (N); \
441 #define XWINT(RTX, N) __extension__ \ argument
442 (*({ rtx const _rtx = (RTX); const int _n = (N); \
452 #define XCWINT(RTX, N, C) __extension__ \ argument
453 (*({ rtx const _rtx = (RTX); \
459 #define XCMWINT(RTX, N, C, M) __extension__ \ argument
460 (*({ rtx const _rtx = (RTX); \
466 #define XCNMPRV(RTX, C, M) __extension__ \ argument
467 ({ rtx const _rtx = (RTX); \
497 #define RTL_CHECK1(RTX, N, C1) ((RTX)->u.fld[N]) argument
498 #define RTL_CHECK2(RTX, N, C1, C2) ((RTX)->u.fld[N]) argument
499 #define RTL_CHECKC1(RTX, N, C) ((RTX)->u.fld[N]) argument
500 #define RTL_CHECKC2(RTX, N, C1, C2) ((RTX)->u.fld[N]) argument
502 #define XWINT(RTX, N) ((RTX)->u.hwint[N]) argument
503 #define XCWINT(RTX, N, C) ((RTX)->u.hwint[N]) argument
504 #define XCMWINT(RTX, N, C, M) ((RTX)->u.hwint[N]) argument
505 #define XCNMWINT(RTX, N, C, M) ((RTX)->u.hwint[N]) argument
506 #define XCNMPRV(RTX, C, M) (&(RTX)->u.rv) argument
513 #define RTX_FLAG(RTX, FLAG) ((RTX)->FLAG) argument
516 #define RTL_FLAG_CHECK1(NAME, RTX, C1) __extension__ \ argument
517 ({ rtx const _rtx = (RTX); \
523 #define RTL_FLAG_CHECK2(NAME, RTX, C1, C2) __extension__ \ argument
524 ({ rtx const _rtx = (RTX); \
530 #define RTL_FLAG_CHECK3(NAME, RTX, C1, C2, C3) __extension__ \ argument
531 ({ rtx const _rtx = (RTX); \
538 #define RTL_FLAG_CHECK4(NAME, RTX, C1, C2, C3, C4) __extension__ \ argument
539 ({ rtx const _rtx = (RTX); \
546 #define RTL_FLAG_CHECK5(NAME, RTX, C1, C2, C3, C4, C5) __extension__ \ argument
547 ({ rtx const _rtx = (RTX); \
555 #define RTL_FLAG_CHECK6(NAME, RTX, C1, C2, C3, C4, C5, C6) \ argument
557 ({ rtx const _rtx = (RTX); \
565 #define RTL_FLAG_CHECK7(NAME, RTX, C1, C2, C3, C4, C5, C6, C7) \ argument
567 ({ rtx const _rtx = (RTX); \
576 #define RTL_FLAG_CHECK8(NAME, RTX, C1, C2, C3, C4, C5, C6, C7, C8) \ argument
578 ({ rtx const _rtx = (RTX); \
594 #define RTL_FLAG_CHECK1(NAME, RTX, C1) (RTX) argument
595 #define RTL_FLAG_CHECK2(NAME, RTX, C1, C2) (RTX) argument
596 #define RTL_FLAG_CHECK3(NAME, RTX, C1, C2, C3) (RTX) argument
597 #define RTL_FLAG_CHECK4(NAME, RTX, C1, C2, C3, C4) (RTX) argument
598 #define RTL_FLAG_CHECK5(NAME, RTX, C1, C2, C3, C4, C5) (RTX) argument
599 #define RTL_FLAG_CHECK6(NAME, RTX, C1, C2, C3, C4, C5, C6) (RTX) argument
600 #define RTL_FLAG_CHECK7(NAME, RTX, C1, C2, C3, C4, C5, C6, C7) (RTX) argument
601 #define RTL_FLAG_CHECK8(NAME, RTX, C1, C2, C3, C4, C5, C6, C7, C8) (RTX) argument
604 #define XINT(RTX, N) (RTL_CHECK2 (RTX, N, 'i', 'n').rt_int) argument
605 #define XSTR(RTX, N) (RTL_CHECK2 (RTX, N, 's', 'S').rt_str) argument
606 #define XEXP(RTX, N) (RTL_CHECK2 (RTX, N, 'e', 'u').rt_rtx) argument
607 #define XVEC(RTX, N) (RTL_CHECK2 (RTX, N, 'E', 'V').rt_rtvec) argument
608 #define XMODE(RTX, N) (RTL_CHECK1 (RTX, N, 'M').rt_type) argument
609 #define XBITMAP(RTX, N) (RTL_CHECK1 (RTX, N, 'b').rt_bit) argument
610 #define XTREE(RTX, N) (RTL_CHECK1 (RTX, N, 't').rt_tree) argument
611 #define XBBDEF(RTX, N) (RTL_CHECK1 (RTX, N, 'B').rt_bb) argument
612 #define XTMPL(RTX, N) (RTL_CHECK1 (RTX, N, 'T').rt_str) argument
614 #define XVECEXP(RTX, N, M) RTVEC_ELT (XVEC (RTX, N), M) argument
615 #define XVECLEN(RTX, N) GET_NUM_ELEM (XVEC (RTX, N)) argument
620 #define X0INT(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_int) argument
621 #define X0UINT(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_uint) argument
622 #define X0STR(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_str) argument
623 #define X0EXP(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_rtx) argument
624 #define X0VEC(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_rtvec) argument
625 #define X0MODE(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_type) argument
626 #define X0BITMAP(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_bit) argument
627 #define X0TREE(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_tree) argument
628 #define X0BBDEF(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_bb) argument
629 #define X0ADVFLAGS(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_addr_diff_vec_flags) argument
630 #define X0CSELIB(RTX, N) (RTL_CHECK1 (RTX, N, '0').rt_cselib) argument
631 #define X0MEMATTR(RTX, N) (RTL_CHECKC1 (RTX, N, MEM).rt_mem) argument
632 #define X0REGATTR(RTX, N) (RTL_CHECKC1 (RTX, N, REG).rt_reg) argument
635 #define X0ANY(RTX, N) RTL_CHECK1 (RTX, N, '0') argument
637 #define XCINT(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_int) argument
638 #define XCUINT(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_uint) argument
639 #define XCSTR(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_str) argument
640 #define XCEXP(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_rtx) argument
641 #define XCVEC(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_rtvec) argument
642 #define XCMODE(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_type) argument
643 #define XCBITMAP(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_bit) argument
644 #define XCTREE(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_tree) argument
645 #define XCBBDEF(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_bb) argument
646 #define XCCSELIB(RTX, N, C) (RTL_CHECKC1 (RTX, N, C).rt_cselib) argument
648 #define XCVECEXP(RTX, N, M, C) RTVEC_ELT (XCVEC (RTX, N, C), M) argument
649 #define XCVECLEN(RTX, N, C) GET_NUM_ELEM (XCVEC (RTX, N, C)) argument
651 #define XC2EXP(RTX, N, C1, C2) (RTL_CHECKC2 (RTX, N, C1, C2).rt_rtx) argument
679 #define RTX_FRAME_RELATED_P(RTX) \ argument
680 (RTL_FLAG_CHECK5("RTX_FRAME_RELATED_P", (RTX), INSN, CALL_INSN, \
684 #define INSN_DELETED_P(RTX) \ argument
685 (RTL_FLAG_CHECK6("INSN_DELETED_P", (RTX), INSN, CALL_INSN, JUMP_INSN, \
689 #define CONST_OR_PURE_CALL_P(RTX) \ argument
690 (RTL_FLAG_CHECK3("CONST_OR_PURE_CALL_P", (RTX), CALL_INSN, NOTE, \
694 #define SIBLING_CALL_P(RTX) \ argument
695 (RTL_FLAG_CHECK1("SIBLING_CALL_P", (RTX), CALL_INSN)->jump)
698 #define INSN_ANNULLED_BRANCH_P(RTX) \ argument
699 (RTL_FLAG_CHECK3("INSN_ANNULLED_BRANCH_P", (RTX), JUMP_INSN, CALL_INSN, INSN)->unchanging)
705 #define INSN_FROM_TARGET_P(RTX) \ argument
706 (RTL_FLAG_CHECK3("INSN_FROM_TARGET_P", (RTX), INSN, JUMP_INSN, CALL_INSN)->in_struct)
710 #define ADDR_DIFF_VEC_FLAGS(RTX) X0ADVFLAGS(RTX, 4) argument
714 #define CSELIB_VAL_PTR(RTX) X0CSELIB(RTX, 0) argument
829 #define LABEL_NAME(RTX) XCSTR (RTX, 7, CODE_LABEL) argument
833 #define LABEL_NUSES(RTX) XCINT (RTX, 4, CODE_LABEL) argument
907 #define REGNO(RTX) XCUINT (RTX, 0, REG) argument
908 #define ORIGINAL_REGNO(RTX) X0UINT (RTX, 1) argument
912 #define REG_FUNCTION_VALUE_P(RTX) \ argument
913 (RTL_FLAG_CHECK2("REG_FUNCTION_VALUE_P", (RTX), REG, PARALLEL)->return_val)
916 #define REG_USERVAR_P(RTX) \ argument
917 (RTL_FLAG_CHECK1("REG_USERVAR_P", (RTX), REG)->volatil)
920 #define REG_POINTER(RTX) \ argument
921 (RTL_FLAG_CHECK1("REG_POINTER", (RTX), REG)->frame_related)
924 #define MEM_POINTER(RTX) \ argument
925 (RTL_FLAG_CHECK1("MEM_POINTER", (RTX), MEM)->frame_related)
934 #define INTVAL(RTX) XCWINT(RTX, 0, CONST_INT) argument
947 #define CONST_VECTOR_ELT(RTX, N) XCVECEXP (RTX, 0, N, CONST_VECTOR) argument
950 #define CONST_VECTOR_NUNITS(RTX) XCVECLEN (RTX, 0, CONST_VECTOR) argument
955 #define SUBREG_REG(RTX) XCEXP (RTX, 0, SUBREG) argument
956 #define SUBREG_BYTE(RTX) XCUINT (RTX, 1, SUBREG) argument
991 #define SUBREG_PROMOTED_VAR_P(RTX) \ argument
992 (RTL_FLAG_CHECK1("SUBREG_PROMOTED", (RTX), SUBREG)->in_struct)
994 #define SUBREG_PROMOTED_UNSIGNED_SET(RTX, VAL) \ argument
996 rtx const _rtx = RTL_FLAG_CHECK1("SUBREG_PROMOTED_UNSIGNED_SET", (RTX), SUBREG); \
1004 #define SUBREG_PROMOTED_UNSIGNED_P(RTX) \ argument
1005 ((RTL_FLAG_CHECK1("SUBREG_PROMOTED_UNSIGNED_P", (RTX), SUBREG)->volatil) \
1006 ? -1 : (RTX)->unchanging)
1010 #define ASM_OPERANDS_TEMPLATE(RTX) XCSTR (RTX, 0, ASM_OPERANDS) argument
1011 #define ASM_OPERANDS_OUTPUT_CONSTRAINT(RTX) XCSTR (RTX, 1, ASM_OPERANDS) argument
1012 #define ASM_OPERANDS_OUTPUT_IDX(RTX) XCINT (RTX, 2, ASM_OPERANDS) argument
1013 #define ASM_OPERANDS_INPUT_VEC(RTX) XCVEC (RTX, 3, ASM_OPERANDS) argument
1014 #define ASM_OPERANDS_INPUT_CONSTRAINT_VEC(RTX) XCVEC (RTX, 4, ASM_OPERANDS) argument
1015 #define ASM_OPERANDS_INPUT(RTX, N) XCVECEXP (RTX, 3, N, ASM_OPERANDS) argument
1016 #define ASM_OPERANDS_INPUT_LENGTH(RTX) XCVECLEN (RTX, 3, ASM_OPERANDS) argument
1017 #define ASM_OPERANDS_INPUT_CONSTRAINT_EXP(RTX, N) \ argument
1018 XCVECEXP (RTX, 4, N, ASM_OPERANDS)
1019 #define ASM_OPERANDS_INPUT_CONSTRAINT(RTX, N) \ argument
1020 XSTR (XCVECEXP (RTX, 4, N, ASM_OPERANDS), 0)
1021 #define ASM_OPERANDS_INPUT_MODE(RTX, N) \ argument
1022 GET_MODE (XCVECEXP (RTX, 4, N, ASM_OPERANDS))
1024 #define ASM_OPERANDS_SOURCE_LOCATION(RTX) XCUINT (RTX, 5, ASM_OPERANDS) argument
1026 #define ASM_OPERANDS_SOURCE_FILE(RTX) XCSTR (RTX, 5, ASM_OPERANDS) argument
1027 #define ASM_OPERANDS_SOURCE_LINE(RTX) XCINT (RTX, 6, ASM_OPERANDS) argument
1031 #define MEM_READONLY_P(RTX) \ argument
1032 (RTL_FLAG_CHECK1("MEM_READONLY_P", (RTX), MEM)->unchanging)
1037 #define MEM_KEEP_ALIAS_SET_P(RTX) \ argument
1038 (RTL_FLAG_CHECK1("MEM_KEEP_ALIAS_SET_P", (RTX), MEM)->jump)
1041 #define MEM_VOLATILE_P(RTX) \ argument
1042 (RTL_FLAG_CHECK3("MEM_VOLATILE_P", (RTX), MEM, ASM_OPERANDS, \
1048 #define MEM_IN_STRUCT_P(RTX) \ argument
1049 (RTL_FLAG_CHECK1("MEM_IN_STRUCT_P", (RTX), MEM)->in_struct)
1053 #define MEM_SCALAR_P(RTX) \ argument
1054 (RTL_FLAG_CHECK1("MEM_SCALAR_P", (RTX), MEM)->return_val)
1057 #define MEM_NOTRAP_P(RTX) \ argument
1058 (RTL_FLAG_CHECK1("MEM_NOTRAP_P", (RTX), MEM)->call)
1064 #define MEM_SET_IN_STRUCT_P(RTX, VAL) \ argument
1068 MEM_IN_STRUCT_P (RTX) = 1; \
1069 MEM_SCALAR_P (RTX) = 0; \
1073 MEM_IN_STRUCT_P (RTX) = 0; \
1074 MEM_SCALAR_P (RTX) = 1; \
1080 #define MEM_ATTRS(RTX) X0MEMATTR (RTX, 1) argument
1084 #define REG_ATTRS(RTX) X0REGATTR (RTX, 2) argument
1092 #define MEM_ALIAS_SET(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->alias) argument
1096 #define MEM_EXPR(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->expr) argument
1100 #define MEM_OFFSET(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->offset) argument
1104 #define MEM_SIZE(RTX) \ argument
1105 (MEM_ATTRS (RTX) != 0 ? MEM_ATTRS (RTX)->size \
1106 : GET_MODE (RTX) != BLKmode ? GEN_INT (GET_MODE_SIZE (GET_MODE (RTX))) \
1111 #define MEM_ALIGN(RTX) \ argument
1112 (MEM_ATTRS (RTX) != 0 ? MEM_ATTRS (RTX)->align \
1113 : (STRICT_ALIGNMENT && GET_MODE (RTX) != BLKmode \
1114 ? GET_MODE_ALIGNMENT (GET_MODE (RTX)) : BITS_PER_UNIT))
1118 #define REG_EXPR(RTX) (REG_ATTRS (RTX) == 0 ? 0 : REG_ATTRS (RTX)->decl) argument
1122 #define REG_OFFSET(RTX) (REG_ATTRS (RTX) == 0 ? 0 : REG_ATTRS (RTX)->offset) argument
1136 #define LABEL_OUTSIDE_LOOP_P(RTX) \ argument
1137 (RTL_FLAG_CHECK1("LABEL_OUTSIDE_LOOP_P", (RTX), LABEL_REF)->in_struct)
1141 #define LABEL_REF_NONLOCAL_P(RTX) \ argument
1142 (RTL_FLAG_CHECK2("LABEL_REF_NONLOCAL_P", (RTX), LABEL_REF, \
1146 #define LABEL_PRESERVE_P(RTX) \ argument
1147 (RTL_FLAG_CHECK2("LABEL_PRESERVE_P", (RTX), CODE_LABEL, NOTE)->in_struct)
1151 #define SCHED_GROUP_P(RTX) \ argument
1152 (RTL_FLAG_CHECK3("SCHED_GROUP_P", (RTX), INSN, JUMP_INSN, CALL_INSN \
1157 #define SET_DEST(RTX) XC2EXP(RTX, 0, SET, CLOBBER) argument
1158 #define SET_SRC(RTX) XCEXP(RTX, 1, SET) argument
1159 #define SET_IS_RETURN_P(RTX) \ argument
1160 (RTL_FLAG_CHECK1("SET_IS_RETURN_P", (RTX), SET)->jump)
1163 #define TRAP_CONDITION(RTX) XCEXP (RTX, 0, TRAP_IF) argument
1164 #define TRAP_CODE(RTX) XCEXP (RTX, 1, TRAP_IF) argument
1169 #define COND_EXEC_TEST(RTX) XCEXP (RTX, 0, COND_EXEC) argument
1170 #define COND_EXEC_CODE(RTX) XCEXP (RTX, 1, COND_EXEC) argument
1174 #define CONSTANT_POOL_ADDRESS_P(RTX) \ argument
1175 (RTL_FLAG_CHECK1("CONSTANT_POOL_ADDRESS_P", (RTX), SYMBOL_REF)->unchanging)
1179 #define TREE_CONSTANT_POOL_ADDRESS_P(RTX) \ argument
1181 (RTX), SYMBOL_REF)->frame_related)
1184 #define SYMBOL_REF_FLAG(RTX) \ argument
1185 (RTL_FLAG_CHECK1("SYMBOL_REF_FLAG", (RTX), SYMBOL_REF)->volatil)
1189 #define SYMBOL_REF_USED(RTX) \ argument
1190 (RTL_FLAG_CHECK1("SYMBOL_REF_USED", (RTX), SYMBOL_REF)->used)
1193 #define SYMBOL_REF_WEAK(RTX) \ argument
1194 (RTL_FLAG_CHECK1("SYMBOL_REF_WEAK", (RTX), SYMBOL_REF)->return_val)
1197 #define SYMBOL_REF_DECL(RTX) X0TREE ((RTX), 2) argument
1206 #define SYMBOL_REF_FLAGS(RTX) X0INT ((RTX), 1) argument
1213 #define SYMBOL_REF_FUNCTION_P(RTX) \ argument
1214 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_FUNCTION) != 0)
1217 #define SYMBOL_REF_LOCAL_P(RTX) \ argument
1218 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_LOCAL) != 0)
1221 #define SYMBOL_REF_SMALL_P(RTX) \ argument
1222 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_SMALL) != 0)
1226 #define SYMBOL_REF_TLS_MODEL(RTX) \ argument
1227 ((enum tls_model) ((SYMBOL_REF_FLAGS (RTX) >> SYMBOL_FLAG_TLS_SHIFT) & 7))
1230 #define SYMBOL_REF_EXTERNAL_P(RTX) \ argument
1231 ((SYMBOL_REF_FLAGS (RTX) & SYMBOL_FLAG_EXTERNAL) != 0)