#include "tn_list.h"#include "register.h"#include "symtab.h"#include "targ_isa_enums.h"#include "op.h"#include "tn_targ.h"

Go to the source code of this file.
Data Types | |
| type | tn |
Defines | |
| #define | TN_NUM_MAX INT32_MAX |
| #define | TN_CONSTANT 0x0001 |
| #define | TN_HAS_VALUE 0x0002 |
| #define | TN_LABEL 0x0004 |
| #define | TN_TAG 0x0008 |
| #define | TN_SYMBOL 0x0010 |
| #define | TN_FLOAT 0x0020 |
| #define | TN_DEDICATED 0x0040 |
| #define | TN_FPU_INT 0x0080 |
| #define | TN_GLOBAL_REG 0x0100 |
| #define | TN_IF_CONV_COND 0x0200 |
| #define | TN_REMATERIALIZABLE 0x0400 |
| #define | TN_GRA_HOMEABLE 0x0800 |
| #define | TN_ENUM 0x1000 |
| #define | TN_GRA_CANNOT_SPLIT 0x2000 |
| #define | CAN_USE_TN(x) (x) |
| #define | TN_flags(t) (CAN_USE_TN(t)->flags) |
| #define | Set_TN_flags(t, x) (CAN_USE_TN(t)->flags = (x)) |
| #define | TN_is_constant(r) (TN_flags(r) & TN_CONSTANT) |
| #define | Set_TN_is_constant(r) (TN_flags(r) |= TN_CONSTANT) |
| #define | TN_is_register(r) (!TN_is_constant(r)) |
| #define | TN_relocs(t) (CAN_USE_TN(t)->relocs) |
| #define | Set_TN_relocs(t, x) (CAN_USE_TN(t)->relocs = (x)) |
| #define | TN_size(t) (CAN_USE_TN(t)->size+0) |
| #define | Set_TN_size(t, x) (CAN_USE_TN(t)->size = (x)) |
| #define | TN_number(t) (CAN_USE_REG_TN(t)->u1.reg_tn.number+0) |
| #define | Set_TN_number(t, x) (CAN_USE_REG_TN(t)->u1.reg_tn.number = (x)) |
| #define | TN_class_reg(t) (CAN_USE_REG_TN(t)->u1.reg_tn.class_reg) |
| #define | Set_TN_class_reg(t, x) (CAN_USE_REG_TN(t)->u1.reg_tn.class_reg = (x)) |
| #define | TN_register(t) (CLASS_REG_PAIR_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg)+0) |
| #define | Set_TN_register(t, x) (Set_CLASS_REG_PAIR_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg,(x))) |
| #define | TN_register_class(t) (CLASS_REG_PAIR_rclass(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg)) |
| #define | Set_TN_register_class(t, x) (Set_CLASS_REG_PAIR_rclass(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg,(x))) |
| #define | TN_register_and_class(t) (CLASS_REG_PAIR_class_n_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg)+0) |
| #define | Set_TN_register_and_class(t, x) (Set_CLASS_REG_PAIR_class_n_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg,(x))) |
| #define | TN_save_creg(t) (CAN_USE_REG_TN(t)->u1.reg_tn.save_creg) |
| #define | TN_save_reg(t) (CLASS_REG_PAIR_reg(TN_save_creg(t))+0) |
| #define | TN_save_rclass(t) (CLASS_REG_PAIR_rclass(TN_save_creg(t))) |
| #define | Set_TN_save_creg(t, x) (CAN_USE_REG_TN(t)->u1.reg_tn.save_creg = (x)) |
| #define | TN_is_save_reg(t) (!CLASS_REG_PAIR_EqualP(TN_save_creg(t),CLASS_REG_PAIR_undef)) |
| #define | TN_spill(t) (CAN_USE_TN(t)->u2.u3.spill) |
| #define | Set_TN_spill(t, x) (CAN_USE_TN(t)->u2.u3.spill = (x)) |
| #define | TN_spill_is_valid(t) (TN_is_register(t) && !(TN_is_rematerializable(t) || TN_is_gra_homeable(t))) |
| #define | TN_has_spill(t) (TN_spill_is_valid(t) && (TN_spill(t) != NULL)) |
| #define | TN_value(t) (CAN_USE_TN(t)->u1.value) |
| #define | Set_TN_value(t, x) (CAN_USE_TN(t)->u1.value = (x)) |
| #define | TN_offset(t) (CAN_USE_TN(t)->u1.offset) |
| #define | Set_TN_offset(t, x) (CAN_USE_TN(t)->u1.offset = (x)) |
| #define | TN_label(t) (CAN_USE_TN(t)->u2.label) |
| #define | Set_TN_label(t, x) (CAN_USE_TN(t)->u2.label = (x)) |
| #define | TN_enum(t) (CAN_USE_TN(t)->u2.ecv) |
| #define | Set_TN_enum(t, x) (CAN_USE_TN(t)->u2.ecv = (x)) |
| #define | TN_var(t) (CAN_USE_TN(t)->u2.var) |
| #define | Set_TN_var(t, x) (CAN_USE_TN(t)->u2.var = (x)) |
| #define | TN_home(t) (CAN_USE_TN(t)->u2.u3.home) |
| #define | Set_TN_home(t, x) (CAN_USE_TN(t)->u2.u3.home = (x)) |
| #define | TN_has_value(r) (TN_flags(r) & TN_HAS_VALUE) |
| #define | Set_TN_has_value(r) (TN_flags(r) |= TN_HAS_VALUE) |
| #define | TN_is_label(r) (TN_flags(r) & TN_LABEL) |
| #define | Set_TN_is_label(r) (TN_flags(r) |= TN_LABEL) |
| #define | TN_is_tag(r) (TN_flags(r) & TN_TAG) |
| #define | Set_TN_is_tag(r) (TN_flags(r) |= TN_TAG) |
| #define | TN_is_symbol(r) (TN_flags(r) & TN_SYMBOL) |
| #define | Set_TN_is_symbol(r) (TN_flags(r) |= TN_SYMBOL) |
| #define | TN_is_enum(r) (TN_flags(r) & TN_ENUM) |
| #define | Set_TN_is_enum(r) (TN_flags(r) |= TN_ENUM) |
| #define | TN_is_float(x) (TN_flags(x) & TN_FLOAT) |
| #define | Set_TN_is_float(x) (TN_flags(x) |= TN_FLOAT) |
| #define | TN_is_fpu_int(x) (TN_flags(x) & TN_FPU_INT) |
| #define | Set_TN_is_fpu_int(x) (TN_flags(x) |= TN_FPU_INT) |
| #define | Reset_TN_is_fpu_int(x) (TN_flags(x) &= ~TN_FPU_INT) |
| #define | TN_is_global_reg(x) (TN_flags(x) & TN_GLOBAL_REG) |
| #define | Set_TN_is_global_reg(x) (TN_flags(x) |= TN_GLOBAL_REG) |
| #define | Reset_TN_is_global_reg(x) (TN_flags(x) &= ~TN_GLOBAL_REG) |
| #define | TN_is_dedicated(r) (TN_flags(r) & TN_DEDICATED) |
| #define | Set_TN_is_dedicated(r) (TN_flags(r) |= TN_DEDICATED) |
| #define | Reset_TN_is_dedicated(r) (TN_flags(r)&= ~TN_DEDICATED) |
| #define | TN_is_if_conv_cond(r) (TN_flags(r) & TN_IF_CONV_COND) |
| #define | Set_TN_is_if_conv_cond(r) (TN_flags(r) |= TN_IF_CONV_COND) |
| #define | Reset_TN_is_if_conv_cond(r) (TN_flags(r) &= ~TN_IF_CONV_COND) |
| #define | TN_is_rematerializable(r) (TN_flags(r) & TN_REMATERIALIZABLE) |
| #define | Set_TN_is_rematerializable(r) (TN_flags(r) |= TN_REMATERIALIZABLE) |
| #define | Reset_TN_is_rematerializable(r) (TN_flags(r) &= ~TN_REMATERIALIZABLE) |
| #define | TN_is_gra_homeable(r) (TN_flags(r) & TN_GRA_HOMEABLE) |
| #define | Set_TN_is_gra_homeable(r) (TN_flags(r) |= TN_GRA_HOMEABLE) |
| #define | Reset_TN_is_gra_homeable(r) (TN_flags(r) &= ~TN_GRA_HOMEABLE) |
| #define | TN_is_gra_cannot_split(r) (TN_flags(r) & TN_GRA_CANNOT_SPLIT) |
| #define | Set_TN_is_gra_cannot_split(r) (TN_flags(r) |= TN_GRA_CANNOT_SPLIT) |
| #define | TN_is_sp_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_sp) |
| #define | TN_is_gp_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_gp) |
| #define | TN_is_ep_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_ep) |
| #define | TN_is_fp_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_fp) |
| #define | TN_is_ra_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_ra) |
| #define | TN_is_zero_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_zero) |
| #define | TN_is_static_link_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_static_link) |
| #define | TN_is_pfs_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_pfs) |
| #define | TN_is_lc_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_lc) |
| #define | TN_is_ec_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_ec) |
| #define | TN_is_true_pred(r) (TN_register_and_class(r) == CLASS_AND_REG_true) |
| #define | TN_is_fzero_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_fzero) |
| #define | TN_is_fone_reg(r) (TN_register_and_class(r) == CLASS_AND_REG_fone) |
| #define | TN_is_reloc_gprel16(r) (TN_relocs(r) == TN_RELOC_GPREL16) |
| #define | Set_TN_is_reloc_gprel16(r) Set_TN_relocs(r,TN_RELOC_GPREL16) |
| #define | TN_is_reloc_low16(r) (TN_relocs(r) == TN_RELOC_LOW16) |
| #define | Set_TN_is_reloc_low16(r) Set_TN_relocs(r,TN_RELOC_LOW16) |
| #define | TN_is_reloc_high16(r) (TN_relocs(r) == TN_RELOC_HIGH16) |
| #define | Set_TN_is_reloc_high16(r) Set_TN_relocs(r,TN_RELOC_HIGH16) |
| #define | TN_is_reloc_higher(r) (TN_relocs(r) == TN_RELOC_HIGHER) |
| #define | Set_TN_is_reloc_higher(r) Set_TN_relocs(r,TN_RELOC_HIGHER) |
| #define | TN_is_reloc_highest(r) (TN_relocs(r) == TN_RELOC_HIGHEST) |
| #define | Set_TN_is_reloc_highest(r) Set_TN_relocs(r,TN_RELOC_HIGHEST) |
| #define | TN_is_reloc_got_disp(r) (TN_relocs(r) == TN_RELOC_GOT_DISP) |
| #define | Set_TN_is_reloc_got_disp(r) Set_TN_relocs(r,TN_RELOC_GOT_DISP) |
| #define | TN_is_reloc_got_page(r) (TN_relocs(r) == TN_RELOC_GOT_PAGE) |
| #define | Set_TN_is_reloc_got_page(r) Set_TN_relocs(r,TN_RELOC_GOT_PAGE) |
| #define | TN_is_reloc_got_ofst(r) (TN_relocs(r) == TN_RELOC_GOT_OFST) |
| #define | Set_TN_is_reloc_got_ofst(r) Set_TN_relocs(r,TN_RELOC_GOT_OFST) |
| #define | TN_is_reloc_call16(r) (TN_relocs(r) == TN_RELOC_CALL16) |
| #define | Set_TN_is_reloc_call16(r) Set_TN_relocs(r,TN_RELOC_CALL16) |
| #define | TN_is_reloc_got_hi16(r) (TN_relocs(r) == TN_RELOC_GOT_HI16) |
| #define | Set_TN_is_reloc_got_hi16(r) Set_TN_relocs(r,TN_RELOC_GOT_HI16) |
| #define | TN_is_reloc_got_lo16(r) (TN_relocs(r) == TN_RELOC_GOT_LO16) |
| #define | Set_TN_is_reloc_got_lo16(r) Set_TN_relocs(r,TN_RELOC_GOT_LO16) |
| #define | TN_is_reloc_call_hi16(r) (TN_relocs(r) == TN_RELOC_CALL_HI16) |
| #define | Set_TN_is_reloc_call_hi16(r) Set_TN_relocs(r,TN_RELOC_CALL_HI16) |
| #define | TN_is_reloc_call_lo16(r) (TN_relocs(r) == TN_RELOC_CALL_LO16) |
| #define | Set_TN_is_reloc_call_lo16(r) Set_TN_relocs(r,TN_RELOC_CALL_LO16) |
| #define | TN_is_reloc_neg(r) (TN_relocs(r) == TN_RELOC_NEG) |
| #define | Set_TN_is_reloc_neg(r) Set_TN_relocs(r,TN_RELOC_NEG) |
| #define | TN_is_reloc_gpsub(r) (TN_relocs(r) == TN_RELOC_GPSUB) |
| #define | Set_TN_is_reloc_gpsub(r) Set_TN_relocs(r,TN_RELOC_GPSUB) |
| #define | TN_is_reloc_lo_gpsub(r) (TN_relocs(r) == TN_RELOC_LO_GPSUB) |
| #define | Set_TN_is_reloc_lo_gpsub(r) Set_TN_relocs(r,TN_RELOC_LO_GPSUB) |
| #define | TN_is_reloc_hi_gpsub(r) (TN_relocs(r) == TN_RELOC_HI_GPSUB) |
| #define | Set_TN_is_reloc_hi_gpsub(r) Set_TN_relocs(r,TN_RELOC_HI_GPSUB) |
| #define | TN_is_reloc_gpident(r) (TN_relocs(r) == TN_RELOC_GPIDENT) |
| #define | Set_TN_is_reloc_gpident(r) Set_TN_relocs(r,TN_RELOC_GPIDENT) |
| #define | TN_is_reloc_lo_gpident(r) (TN_relocs(r) == TN_RELOC_LO_GPIDENT) |
| #define | Set_TN_is_reloc_lo_gpident(r) Set_TN_relocs(r,TN_RELOC_LO_GPIDENT) |
| #define | TN_is_reloc_hi_gpident(r) (TN_relocs(r) == TN_RELOC_HI_GPIDENT) |
| #define | Set_TN_is_reloc_hi_gpident(r) Set_TN_relocs(r,TN_RELOC_HI_GPIDENT) |
| #define | TN_is_reloc_ia_imm14(r) (TN_relocs(r) == TN_RELOC_IA_IMM14) |
| #define | Set_TN_is_reloc_ia_imm14(r) Set_TN_relocs(r,TN_RELOC_IA_IMM14) |
| #define | TN_is_reloc_ia_imm22(r) (TN_relocs(r) == TN_RELOC_IA_IMM22) |
| #define | Set_TN_is_reloc_ia_imm22(r) Set_TN_relocs(r,TN_RELOC_IA_IMM22) |
| #define | TN_is_reloc_ia_pcrel(r) (TN_relocs(r) == TN_RELOC_IA_PCREL) |
| #define | Set_TN_is_reloc_ia_pcrel(r) Set_TN_relocs(r,TN_RELOC_IA_PCREL) |
| #define | TN_is_reloc_ia_gprel22(r) (TN_relocs(r) == TN_RELOC_IA_GPREL22) |
| #define | Set_TN_is_reloc_ia_gprel22(r) Set_TN_relocs(r,TN_RELOC_IA_GPREL22) |
| #define | TN_is_reloc_ia_ltoff22(r) (TN_relocs(r) == TN_RELOC_IA_LTOFF22) |
| #define | Set_TN_is_reloc_ia_ltoff22(r) Set_TN_relocs(r,TN_RELOC_IA_LTOFF22) |
| #define | TN_is_reloc_ia_ltoff_fptr(r) (TN_relocs(r) == TN_RELOC_IA_LTOFF_FPTR) |
| #define | Set_TN_is_reloc_ia_ltoff_fptr(r) Set_TN_relocs(r,TN_RELOC_IA_LTOFF_FPTR) |
| #define | TNvec(i) TN_Vec[i] |
Typedefs | |
| typedef struct tn | TN |
| typedef INT32 | TN_NUM |
| typedef mINT32 | mTN_NUM |
Enumerations | |
| enum | TN_RELOCS { TN_RELOC_NONE = 0x00, TN_RELOC_GPREL16 = 0x01, TN_RELOC_LOW16 = 0x02, TN_RELOC_HIGH16 = 0x03, TN_RELOC_HIGHER = 0x04, TN_RELOC_HIGHEST = 0x05, TN_RELOC_GOT_DISP = 0x06, TN_RELOC_GOT_PAGE = 0x07, TN_RELOC_GOT_OFST = 0x08, TN_RELOC_CALL16 = 0x09, TN_RELOC_GOT_HI16 = 0x0a, TN_RELOC_GOT_LO16 = 0x0b, TN_RELOC_CALL_HI16 = 0x0c, TN_RELOC_CALL_LO16 = 0x0d, TN_RELOC_NEG = 0x0e, TN_RELOC_GPSUB = 0x0f, TN_RELOC_LO_GPSUB = 0x10, TN_RELOC_HI_GPSUB = 0x11, TN_RELOC_GPIDENT = 0x12, TN_RELOC_LO_GPIDENT = 0x13, TN_RELOC_HI_GPIDENT = 0x14, TN_RELOC_IA_IMM14 = 0x20, TN_RELOC_IA_IMM22 = 0x21, TN_RELOC_IA_PCREL = 0x22, TN_RELOC_IA_GPREL22 = 0x23, TN_RELOC_IA_LTOFF22 = 0x24, TN_RELOC_IA_LTOFF_FPTR = 0x25 } |
| enum | DEF_KIND { VAL_KNOWN, VAL_UNKNOWN, VAL_COND_DEF, VAL_COND_USE } |
Functions/Subroutines | |
| TN * | CAN_USE_REG_TN (const TN *t) |
| BOOL | TN_is_zero (const TN *r) |
| BOOL | TN_is_const_reg (const TN *r) |
| void | Init_Dedicated_TNs (void) |
| void | Init_TNs_For_PU (void) |
| void | Init_TNs_For_REGION (void) |
| TN * | Gen_Register_TN (ISA_REGISTER_CLASS rclass, INT size) |
| TN * | Build_Dedicated_TN (ISA_REGISTER_CLASS rclass, REGISTER reg, INT size) |
| BOOL | TNs_Are_Equivalent (TN *tn1, TN *tn2) |
| TN * | Build_RCLASS_TN (ISA_REGISTER_CLASS rclass) |
| TN * | Build_TN_Like (TN *tn) |
| TN * | Build_TN_Of_Mtype (TYPE_ID mtype) |
| TN * | Dup_TN (TN *tn) |
| TN * | Dup_TN_Even_If_Dedicated (TN *tn) |
| BOOL | TN_Is_Allocatable (const TN *tn) |
| void | TN_Allocate_Register (TN *tn, REGISTER reg) |
| BOOL | TN_is_dedicated_class_and_reg (TN *tn, UINT16 class_n_reg) |
| TN * | Gen_Literal_TN (INT64 val, INT size) |
| TN * | Gen_Literal_TN_Ex (INT64 val) |
| TN * | Gen_Unique_Literal_TN (INT64 ivalue, INT size) |
| TN * | Gen_Literal_TN_Of_Mtype (INT64 val, TYPE_ID mtype) |
| TN * | Gen_Enum_TN (ISA_ENUM_CLASS_VALUE ecv) |
| TN * | Gen_Symbol_TN (ST *s, INT64 offset, INT32 relocs) |
| TN * | Gen_Label_TN (LABEL_IDX lab, INT64 offset) |
| TN * | Gen_Tag_TN (LABEL_IDX tag) |
| TN * | Gen_Adjusted_TN (TN *tn, INT64 adjust) |
| void | fPrint_TN (FILE *f, const char *fmt, TN *tn) |
| void | Print_TN (TN *tn, BOOL verbose) |
| void | Print_TN_List (FILE *, TN_LIST *) |
| void | Print_TNs (void) |
| TN * | Find_TN_with_Matching_Register (TN *tn0, TN_LIST *list) |
| struct op * | TN_Reaching_Value_At_Op (TN *tn, struct op *op, DEF_KIND *kind, BOOL reaching_def) |
| BOOL | TN_Value_At_Op (TN *tn, struct op *use_op, INT64 *val) |
| BOOL | Potential_Immediate_TN_Expr (TOP opcode, struct tn *tn1, INT32 disp) |
| BOOL | Is_OP_Cond (OP *op) |
Variables | |
| TN_NUM | Last_Dedicated_TN |
| TN_NUM | First_Regular_TN |
| TN_NUM | Last_TN |
| TN_NUM | First_REGION_TN |
| TN ** | TN_Vec |
| TN * | Zero_TN |
| TN * | FP_TN |
| TN * | SP_TN |
| TN * | RA_TN |
| TN * | Ep_TN |
| TN * | GP_TN |
| TN * | Pfs_TN |
| TN * | LC_TN |
| TN * | EC_TN |
| TN * | True_TN |
| TN * | FZero_TN |
| TN * | FOne_TN |
| #define Reset_TN_is_dedicated | ( | r | ) | (TN_flags(r)&= ~TN_DEDICATED) |
| #define Reset_TN_is_fpu_int | ( | x | ) | (TN_flags(x) &= ~TN_FPU_INT) |
Definition at line 477 of file tn.h.
Referenced by Expand_Composed_Load(), Expand_Expr(), and Expand_Misaligned_Load().
| #define Reset_TN_is_global_reg | ( | x | ) | (TN_flags(x) &= ~TN_GLOBAL_REG) |
Definition at line 480 of file tn.h.
Referenced by Dup_TN(), Init_TNs_For_PU(), Init_TNs_For_REGION(), Localize_TNs_For_BB(), and Rename_TNs_For_BB().
| #define Reset_TN_is_gra_homeable | ( | r | ) | (TN_flags(r) &= ~TN_GRA_HOMEABLE) |
Definition at line 495 of file tn.h.
Referenced by CGSPILL_Get_TN_Spill_Location(), CG_LOOP::Determine_Unroll_Factor(), Expand_Load(), Get_Local_TN_For_Global(), mark_tn_live_into_BB(), and unroll_names_init_tn().
| #define Reset_TN_is_if_conv_cond | ( | r | ) | (TN_flags(r) &= ~TN_IF_CONV_COND) |
| #define Reset_TN_is_rematerializable | ( | r | ) | (TN_flags(r) &= ~TN_REMATERIALIZABLE) |
Definition at line 491 of file tn.h.
Referenced by Analyze_Spilling_Live_Range(), CGSPILL_Force_Rematerialization_For_BB(), and Spill_Live_Range().
| #define Set_TN_class_reg | ( | t, | |||
| x | ) | (CAN_USE_REG_TN(t)->u1.reg_tn.class_reg = (x)) |
Definition at line 426 of file tn.h.
Referenced by KEY_SCH::Assign_Register(), and Lookup_Register_TN().
| #define Set_TN_enum | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u2.ecv = (x)) |
Definition at line 455 of file tn.h.
Referenced by CGTARG_Perform_THR_Code_Generation(), and Gen_Enum_TN().
| #define Set_TN_has_value | ( | r | ) | (TN_flags(r) |= TN_HAS_VALUE) |
| #define Set_TN_home | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u2.u3.home = (x)) |
Definition at line 459 of file tn.h.
Referenced by Analyze_Spilling_Live_Range(), CGSPILL_Attach_Const_Remat(), CGSPILL_Attach_Intconst_Remat(), CGSPILL_Attach_Lda_Remat(), CGSPILL_Force_Rematerialization_For_BB(), CGSPILL_Get_TN_Spill_Location(), CG_LOOP::Determine_Unroll_Factor(), Exp_Ldst(), Expand_Copy(), Expand_Expr(), Expand_Load(), Get_Local_TN_For_Global(), Handle_LDA(), mark_tn_live_into_BB(), PREG_To_TN(), Spill_Live_Range(), and unroll_names_init_tn().
| #define Set_TN_is_constant | ( | r | ) | (TN_flags(r) |= TN_CONSTANT) |
Definition at line 405 of file tn.h.
Referenced by Gen_Enum_TN(), Gen_Label_TN(), Gen_Literal_TN(), Gen_Symbol_TN(), Gen_Tag_TN(), and Gen_Unique_Literal_TN().
| #define Set_TN_is_dedicated | ( | r | ) | (TN_flags(r) |= TN_DEDICATED) |
Definition at line 482 of file tn.h.
Referenced by KEY_SCH::Assign_Register(), CGPREP_Dup_TN(), Create_Dedicated_TN(), KEY_SCH::Gen_PKE(), SWP_REG_ASSIGNMENT::Get_Control_Predicate(), Lookup_Register_TN(), Make_Dedicated_Save_TN(), and Spill_Live_Range().
| #define Set_TN_is_enum | ( | r | ) | (TN_flags(r) |= TN_ENUM) |
| #define Set_TN_is_float | ( | x | ) | (TN_flags(x) |= TN_FLOAT) |
| #define Set_TN_is_fpu_int | ( | x | ) | (TN_flags(x) |= TN_FPU_INT) |
| #define Set_TN_is_global_reg | ( | x | ) | (TN_flags(x) |= TN_GLOBAL_REG) |
Definition at line 479 of file tn.h.
Referenced by SCHED_DFLOW_MGR::Add_Defs_Live_In(), SCHED_DFLOW_MGR::Add_Defs_Live_Out(), AND_Predicate_To_OP(), Check_If_TN_Is_Global(), Create_Chance_For_MLBR(), EDGE_PROFILE::Gen_Call_BB(), GTN_UNIVERSE_Add_TN(), Localize_Any_Global_TNs(), Localize_Global_Param_Reg(), Localize_Global_Return_Reg(), Localize_Global_Return_Reg_Def(), IF_CONVERTOR::Merge_Area(), EDGE_PROFILE::Prepare_Instrument(), Spill_Global_Register(), and TN_LIST_Mark_Is_Global().
| #define Set_TN_is_gra_cannot_split | ( | r | ) | (TN_flags(r) |= TN_GRA_CANNOT_SPLIT) |
| #define Set_TN_is_gra_homeable | ( | r | ) | (TN_flags(r) |= TN_GRA_HOMEABLE) |
| #define Set_TN_is_if_conv_cond | ( | r | ) | (TN_flags(r) |= TN_IF_CONV_COND) |
Definition at line 486 of file tn.h.
Referenced by DB_Rename_Cond_TN(), and DB_Rename_Cond_TN_OPs().
| #define Set_TN_is_label | ( | r | ) | (TN_flags(r) |= TN_LABEL) |
| #define Set_TN_is_reloc_call16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_CALL16) |
| #define Set_TN_is_reloc_call_hi16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_CALL_HI16) |
| #define Set_TN_is_reloc_call_lo16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_CALL_LO16) |
| #define Set_TN_is_reloc_got_disp | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GOT_DISP) |
| #define Set_TN_is_reloc_got_hi16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GOT_HI16) |
| #define Set_TN_is_reloc_got_lo16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GOT_LO16) |
| #define Set_TN_is_reloc_got_ofst | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GOT_OFST) |
| #define Set_TN_is_reloc_got_page | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GOT_PAGE) |
| #define Set_TN_is_reloc_gpident | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GPIDENT) |
| #define Set_TN_is_reloc_gprel16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GPREL16) |
| #define Set_TN_is_reloc_gpsub | ( | r | ) | Set_TN_relocs(r,TN_RELOC_GPSUB) |
| #define Set_TN_is_reloc_hi_gpident | ( | r | ) | Set_TN_relocs(r,TN_RELOC_HI_GPIDENT) |
| #define Set_TN_is_reloc_hi_gpsub | ( | r | ) | Set_TN_relocs(r,TN_RELOC_HI_GPSUB) |
| #define Set_TN_is_reloc_high16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_HIGH16) |
| #define Set_TN_is_reloc_higher | ( | r | ) | Set_TN_relocs(r,TN_RELOC_HIGHER) |
| #define Set_TN_is_reloc_highest | ( | r | ) | Set_TN_relocs(r,TN_RELOC_HIGHEST) |
| #define Set_TN_is_reloc_ia_gprel22 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_IA_GPREL22) |
| #define Set_TN_is_reloc_ia_imm14 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_IA_IMM14) |
| #define Set_TN_is_reloc_ia_imm22 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_IA_IMM22) |
| #define Set_TN_is_reloc_ia_ltoff22 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_IA_LTOFF22) |
| #define Set_TN_is_reloc_ia_ltoff_fptr | ( | r | ) | Set_TN_relocs(r,TN_RELOC_IA_LTOFF_FPTR) |
| #define Set_TN_is_reloc_ia_pcrel | ( | r | ) | Set_TN_relocs(r,TN_RELOC_IA_PCREL) |
| #define Set_TN_is_reloc_lo_gpident | ( | r | ) | Set_TN_relocs(r,TN_RELOC_LO_GPIDENT) |
| #define Set_TN_is_reloc_lo_gpsub | ( | r | ) | Set_TN_relocs(r,TN_RELOC_LO_GPSUB) |
| #define Set_TN_is_reloc_low16 | ( | r | ) | Set_TN_relocs(r,TN_RELOC_LOW16) |
| #define Set_TN_is_reloc_neg | ( | r | ) | Set_TN_relocs(r,TN_RELOC_NEG) |
| #define Set_TN_is_rematerializable | ( | r | ) | (TN_flags(r) |= TN_REMATERIALIZABLE) |
Definition at line 490 of file tn.h.
Referenced by CGSPILL_Attach_Const_Remat(), CGSPILL_Attach_Intconst_Remat(), CGSPILL_Attach_Lda_Remat(), Expand_Expr(), Handle_LDA(), and PREG_To_TN().
| #define Set_TN_is_symbol | ( | r | ) | (TN_flags(r) |= TN_SYMBOL) |
| #define Set_TN_is_tag | ( | r | ) | (TN_flags(r) |= TN_TAG) |
| #define Set_TN_label | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u2.label = (x)) |
Definition at line 453 of file tn.h.
Referenced by CG_Instrument_Arcs(), EDGE_PROFILE::Change_Tgt_Label(), and REGION::Edge_Splitting().
| #define Set_TN_number | ( | t, | |||
| x | ) | (CAN_USE_REG_TN(t)->u1.reg_tn.number = (x)) |
Definition at line 424 of file tn.h.
Referenced by Create_Dedicated_TN(), Dup_TN(), and Gen_Register_TN().
| #define Set_TN_offset | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u1.offset = (x)) |
| #define Set_TN_register | ( | t, | |||
| x | ) | (Set_CLASS_REG_PAIR_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg,(x))) |
Definition at line 429 of file tn.h.
Referenced by Convert_Regs(), Create_Dedicated_TN(), Fixup_Rotating_Register_TN(), SWP_REG_ASSIGNMENT::Get_Control_Predicate(), Get_Local_TN_For_Global(), Init_TNs_For_PU(), Pop_Stack(), Pop_Stack_Reg(), Repair_Call_BB(), Repair_Entry_BB(), Scan_Region_BB_For_Referenced_TNs(), Setup_GP_TN_For_PU(), Spill_Live_Range(), Swap(), and TN_Allocate_Register().
| #define Set_TN_register_and_class | ( | t, | |||
| x | ) | (Set_CLASS_REG_PAIR_class_n_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg,(x))) |
Definition at line 437 of file tn.h.
Referenced by CGPREP_Dup_TN(), KEY_SCH::Gen_PKE(), and Make_Dedicated_Save_TN().
| #define Set_TN_register_class | ( | t, | |||
| x | ) | (Set_CLASS_REG_PAIR_rclass(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg,(x))) |
Definition at line 433 of file tn.h.
Referenced by Create_Dedicated_TN(), Gen_Register_TN(), Modify_16bit_TNs(), r_assemble_op(), and REGISTER_CLASS_OP_Update_Mapping().
| #define Set_TN_save_creg | ( | t, | |||
| x | ) | (CAN_USE_REG_TN(t)->u1.reg_tn.save_creg = (x)) |
Definition at line 442 of file tn.h.
Referenced by Generate_Entry(), Generate_Exit(), Init_Callee_Saved_Regs_for_REGION(), Make_Dedicated_Save_TN(), and Spill_Prolog_Epilog_Save_LUNIT().
| #define Set_TN_size | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->size = (x)) |
Definition at line 422 of file tn.h.
Referenced by Adjust_GP_Entry(), Check_If_TN_Is_Global(), Create_Dedicated_TN(), Create_TN_Pair(), Gen_Enum_TN(), Gen_Label_TN(), Gen_Literal_TN(), Gen_Register_TN(), Gen_Symbol_TN(), Gen_Tag_TN(), Gen_Unique_Literal_TN(), Generate_Entry(), Init_Dedicated_TNs(), Spill_Global_Register(), and Target_Unique_Exit().
| #define Set_TN_spill | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u2.u3.spill = (x)) |
Definition at line 445 of file tn.h.
Referenced by Add_Spill_Load_Before_Use(), CGSPILL_Get_TN_Spill_Location(), LRANGE_MGR::Create_Duplicate(), Dup_TN(), Generate_Entry(), Generate_Exit(), Get_Local_TN_For_Global(), GRA_Spill(), Init_TNs_For_PU(), Init_TNs_For_REGION(), LUNIT_Spill(), Make_Dedicated_Save_TN(), Spill_Global_Register(), and Spill_Live_Range().
| #define Set_TN_value | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u1.value = (x)) |
Definition at line 449 of file tn.h.
Referenced by Gen_Unique_Literal_TN(), KEY_SCH::Peeling_For_Known_Trip(), and Set_Frame_Len().
| #define Set_TN_var | ( | t, | |||
| x | ) | (CAN_USE_TN(t)->u2.var = (x)) |
| #define TN_class_reg | ( | t | ) | (CAN_USE_REG_TN(t)->u1.reg_tn.class_reg) |
Definition at line 425 of file tn.h.
Referenced by Analyze_OP_For_Unwind_Info(), Generate_Entry(), Generate_Exit(), Has_Matching_Load_In_BB(), Has_Matching_Store_In_BB(), Init_Callee_Saved_Regs_for_REGION(), and TN_Is_Unwind_Reg().
| #define TN_enum | ( | t | ) | (CAN_USE_TN(t)->u2.ecv) |
Definition at line 454 of file tn.h.
Referenced by CGTARG_Dependence_Required(), CGTARG_Is_OP_Advanced_Load(), CGTARG_Is_OP_Check_Load(), CGTARG_Is_OP_Speculative_Load(), CGTARG_LOOP_Optimize(), CGTARG_Return_Enum_TN(), Change_ld_Form(), Combine_L1_L2_Prefetches(), KEY_SCH::Emit_TN(), Expand_Load(), Is_Potential_Load_Or_Store(), OP_Interferes_With_Vector(), OP_is_shared_memory(), r_apply_l_const(), r_assemble_binary(), Search_For_Previous_Enum(), sPrint_TN(), and Verify_Operand().
| #define TN_flags | ( | t | ) | (CAN_USE_TN(t)->flags) |
| #define TN_FPU_INT 0x0080 |
| #define TN_has_spill | ( | t | ) | (TN_spill_is_valid(t) && (TN_spill(t) != NULL)) |
Definition at line 447 of file tn.h.
Referenced by CGSPILL_OP_Spill_Location(), EBO_hash_op(), Find_BB_TNs(), iadd_special_case(), Spill_Live_Range(), store_sequence(), and sxt_sequence().
| #define TN_has_value | ( | r | ) | (TN_flags(r) & TN_HAS_VALUE) |
Definition at line 462 of file tn.h.
Referenced by addr_base_offset(), addr_subtract(), Adjust_Addr_TNs(), CG_DEP_Mem_Ops_Offsets_Overlap(), CGTARG_Copy_Operand(), CGTARG_Is_OP_Addr_Incr(), CGTARG_LOOP_Optimize(), Check_loadbw_execute(), KEY_SCH::Construct_addr_vector(), CIO_RWTRAN::Copy_Ops_To_Epilog(), copy_simplification(), Count_Loop_Interation(), EBO_bit_length(), EBO_Copy_Operand(), EBO_Load_Execution(), KEY_SCH::Emit_TN(), Exp_COPY(), Exp_Deposit_Bits(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Select_And_Condition(), Exp_Spadjust(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_64Bit_Branch(), Expand_64Bit_Shift(), Expand_Abs(), Expand_Add(), Expand_Binary_And(), Expand_Binary_And_Or(), Expand_Binary_Complement(), Expand_Binary_Or(), Expand_Binary_Xor(), Expand_Branch(), Expand_C3_aadda(), Expand_C3_DMULA(), Expand_C3_Mode0(), Expand_C3_Mode1(), Expand_C3_Mode10(), Expand_C3_Mode11(), Expand_C3_Mode2(), Expand_C3_Mode3(), Expand_C3_Mode4(), Expand_C3_Mode5(), Expand_C3_Mode6(), Expand_C3_Mode7(), Expand_C3_Mode8(), Expand_C3_Mode9(), Expand_C3_mul(), Expand_C3_MULA(), Expand_C3_MULA_A(), Expand_C3_MULA_AR(), Expand_C3_MVFS(), Expand_C3_SAVE_DACC(), Expand_C3_shlafa_i(), Expand_Compare_And_Select(), Expand_Convert_Length(), Expand_Equal(), Expand_Expr(), Expand_Greater(), Expand_Greater_Equal(), Expand_High_Multiply(), Expand_Immediate(), Expand_Int_Cmp(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Lda(), Expand_Left_Rotate(), Expand_Less(), Expand_Less_Equal(), Expand_Load(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_Mtype_Immediate(), Expand_Multiply(), Expand_Neg(), Expand_Not_Equal(), Expand_Rrotate(), Expand_Select(), Expand_Set_CircBuf(), Expand_Shift(), Expand_Split_BOP(), Expand_Split_Branch(), Expand_Split_Int_Cmp(), Expand_Split_Leading_Zeros(), Expand_Split_Select(), Expand_Split_Shift(), Expand_Split_UOP(), Expand_Store(), Expand_Sub(), Expand_TN_Pair(), Gen_Adjusted_TN(), Gen_Second_Immd_Op(), Get_TN_Range(), Get_TN_Value(), Handle_ALLOCA(), KEY_SCH::Handle_Ldst_Addiu(), imm_sll(), imm_sra(), imm_srl(), Init_OPSCH_For_BB(), List_Based_Fwd::Is_OP_Better(), Priority_Selector::Is_OP_Better(), Is_Pointer(), Is_Violate_Issue_Rule(), CIO_RWTRAN::Mark_Op_For_Epilog(), Modify_16bit_Ops(), Modify_Asm_String(), OP_Base_Offset_TNs(), OP_Offset_Within_Limit(), Perform_Post_GCM_Steps(), Pick_Compare_TOP(), CIO_RWTRAN::Predicate_Write(), Propagate_16bit_Info(), r_apply_l_const(), r_assemble_binary(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), Repl_Size16_Instr::Replace_LDU(), Search_For_Previous_Constant(), Similar_Ptr_Offset_ok(), Special_Sequence(), Special_Store_Load_Sequence(), sPrint_TN(), test_is_replaced(), TN_Can_Use_Constant_Value(), TN_is_zero(), TN_Value_At_Op(), Vector_Can_Add_Op(), Verify_Operand(), and CIO_RWTRAN::Write_Removal().
| #define TN_home | ( | t | ) | (CAN_USE_TN(t)->u2.u3.home) |
Definition at line 458 of file tn.h.
Referenced by Add_Spill_Load_Before_Use(), CGSPILL_Cost_Estimate(), CGSPILL_Force_Rematerialization_For_BB(), CGSPILL_Get_TN_Spill_Location(), CGSPILL_Load_From_Memory(), CGSPILL_Store_To_Memory(), CGTARG_TN_For_Asm_Operand(), CG_LOOP::Determine_Unroll_Factor(), Exp_Select_And_Condition(), Expand_Copy(), Expand_Float_Div_By_Const(), Expand_Load(), Expand_Multiply(), Find_BB_TNs(), Is_Aliased_With_Home(), Is_Pointer(), Load_Has_Valid_Vaddr(), Memory_OP_References_Stack(), OP_Refs_Home(), Rematerializable_IntConst(), Spill_Homeable_TN(), Spill_Live_Range(), and TN_Can_Use_Constant_Value().
| #define TN_is_constant | ( | r | ) | (TN_flags(r) & TN_CONSTANT) |
Definition at line 404 of file tn.h.
Referenced by Add_Fail_TNs(), addr_base_offset(), addr_subtract(), Adjust_BBSCH(), Append_Succ(), Assign_Registers(), Assign_Registers_For_OP(), At_Unallocated_Op_Definition(), Can_OP_Move(), CG_DEP_Can_OP_Move_Across_Call(), CG_DEP_Prune_Dependence_Arcs(), CGSPILL_OP_Spill_Location(), CGTARG_Copy_Operand(), CGTARG_Dependence_Required(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Countdown_Loop(), CGTARG_Generate_Remainder_Branch(), CGTARG_LOOP_Optimize(), CGTARG_Process_Asm_m_constraint(), Check_HB_For_PQS_Suitability(), Constant_Operand1(), Convert_Goto_To_If(), copy_simplification(), PARTITION_GRAPH::Copy_To(), Count_Loop_Interation(), LOOP_DCE::Dead_Code_Elimination(), Dependent_Between_OPs(), CG_LOOP::Determine_SWP_Unroll_Factor(), CG_LOOP::Determine_Unroll_Factor(), CG_LOOP::Determine_Unroll_Fully(), Do_Non_Copy(), Dup_TN(), EBO_Complement_Predicate(), EBO_hash_op(), Emit_Loop_Note(), KEY_SCH::Emit_TN(), HB_Schedule::Estimate_Reg_Cost_For_OP(), Exp_COPY(), Exp_Deposit_Bits(), Exp_Intrinsic_Call(), Exp_Spadjust(), Expand_32Bit_Int_Greater(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_Abs(), Expand_Add(), Expand_Binary_And(), Expand_Binary_Complement(), Expand_Binary_Or(), Expand_Binary_Xor(), Expand_Branch(), Expand_Divide(), Expand_DivRem(), Expand_Equal(), Expand_Greater(), Expand_Greater_Equal(), Expand_High_Multiply(), Expand_Immediate(), Expand_Int_Greater(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Lda(), Expand_Left_Rotate(), Expand_Less(), Expand_Less_Equal(), Expand_Load(), Expand_Madd(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Mod(), Expand_Mtype_Immediate(), Expand_Multiply(), Expand_Neg(), Expand_Not_Equal(), Expand_Recip(), Expand_Recip_Sqrt(), Expand_Rem(), Expand_Rrotate(), Expand_Select(), Expand_Shift(), Expand_Sqrt(), Expand_Store(), Expand_Sub(), Expand_TN_Pair(), Find_BB_TNs(), LOOP_RCE::Find_Chain(), Find_Global_TNs(), find_previous_constant(), Find_Reaching_Def(), Gen_Adjusted_TN(), KEY_SCH::Gen_PKE(), Get_64Bit_High_Addr(), Get_TN_Range(), Get_TN_Value(), iadd_special_case(), Init_OP_no_ci_alias(), HB_Schedule::Init_Register_Map(), Is_OP_Spill_Load(), Is_OP_Spill_Store(), Is_Pointer(), LOOP_INVAR_CODE_MOTION::It_Is_Constant_TN(), LOOP_INVAR_CODE_MOTION::Live_Out_Of_Loop(), Localize_or_Replace_Dedicated_TNs(), Localize_TNs_For_BB(), KEY_SCH::Loop_Peeling(), KEY_SCH::Loop_Preconditioning(), LOOPINFO_Trip_Count(), LRA_examine_last_op_needs(), Map_Operands(), Modify_Asm_String(), OP_Has_Restrictions(), OP_is_copy(), OP_Refs_TN_Reg(), OP_To_Move(), CIO_RWTRAN::Predicate_Write(), put_TN_comment(), r_assemble_binary(), r_assemble_list(), RECUR_OP_DESC::RECUR_OP_DESC(), Rename_TNs_For_BB(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), Repl_Size16_Instr::Replace_Restricted_Imm_OP(), shl_add_sequence(), Spill_Live_Range(), sPrint_TN(), TN_Is_Allocatable(), Repl_Size16_Instr::Tn_Is_Reloc_TN(), TN_Value_At_Op(), Unroll_Do_Loop(), Unroll_Do_Loop_Fully(), unroll_guard_unrolled_body(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), unroll_multi_make_remainder_loop(), Unroll_Replicate_Body(), Update_GRA_Live_Sets(), Update_Live_Use_Counts(), Update_Liveness(), HB_Schedule::Update_Regs_For_OP(), FAVOR_DELAY_HEUR::Upward_Code_Motion_Inc_Live_Range_Greatly(), and Verify_Operand().
| #define TN_is_dedicated | ( | r | ) | (TN_flags(r) & TN_DEDICATED) |
Definition at line 481 of file tn.h.
Referenced by SLOT_ORDER_CMP::_is_loop_variant(), AND_Predicate_To_OP(), SCHED_DFLOW_MGR::Are_Defs_Live_Out(), Assign_Registers(), BB_Split_Entry_Glue(), BB_Split_Exit_Glue(), CG_LOOP::Build_CG_LOOP_Info(), Build_Cyclic_Arcs(), Can_OP_Move(), CG_DEP_Call_Aliases(), CG_DEP_Can_OP_Move_Across_Call(), CG_LOOP_OP_is_live(), CGPREP_Dup_TN(), CGTARG_Add_Implict_Operands(), CGTARG_Adjust_Latency(), CGTARG_Dependence_Required(), CGTARG_Gen_Dedicated_Subclass_TN(), CGTARG_TN_For_Asm_Operand(), Check_If_Dedicated_TN_Is_Global(), Check_If_TN_Is_Global(), CIO_RWTRAN::CIO_Copy_Remove(), SCHEDULER::Collect_And_Analyse_Other_Than_Dep_Constraints(), Complement_Copy(), Complement_TN_Reference(), Compute_Livethrough_Set(), Convert_While_Loop_to_Fully_Predicated_Form(), Create_LR_For_TN(), LOOP_DCE::Dead_Code_Elimination(), defop_get_reg_for_tn(), delete_memory_op(), Detect_SWP_Constraints(), CG_LOOP::Determine_Unroll_Factor(), Dup_TN(), Dup_TN_Even_If_Dedicated(), Exp_COPY(), Expand_32Bit_Int_Equal(), Expand_32Bit_Int_Greater_Equal(), Expand_32Bit_Int_Not_Equal(), Expand_Bool_Comparison(), Expand_Cmov(), Expand_Fast_Power_Of_2_Rem(), Expand_Float_To_Int_Ceil(), Expand_Int_Cmp_With_Branch(), Expand_Int_Equal(), Expand_Int_Greater_Equal(), Expand_Int_Not_Equal(), Expand_Int_To_Long_Double(), Expand_Load(), Expand_Max(), Expand_Min(), Expand_non_SSE2_Float_Select(), Expand_Power_Of_2_Divide(), Expand_Split_Abs(), Expand_Split_Int_Cmp(), Expand_Split_Load(), Expand_Split_Select(), Expand_Split_Shift(), Expand_Unsigned_Float_To_Int_m32(), Expand_Unsigned_Long_To_Float(), Find_BB_TNs(), Find_Global_TNs(), Generate_Copy_TNs(), Generate_Entry(), Get_Copied_Save_TN(), Get_Possibly_Wired_Reference(), GRA_LIVE_TN_Live_Into_BB(), GRA_LIVE_TN_Live_Outof_BB(), Handle_ASM(), Handle_INTRINSIC_CALL(), Handle_STID(), has_assigned_reg(), HB_Schedule::Init_Register_Map(), Insert_Spills_Of_Globals(), Is_Function_Value(), Localize_or_Replace_Dedicated_TNs(), LRA_examine_last_op_needs(), MSCHED_Real_OP(), OP_Has_Restrictions(), OP_Is_Copy_From_Save_TN(), Preallocate_Single_Register_Subclasses(), Predicate_Block(), PREG_To_TN(), Prune_Regout_Deps(), CG_LOOP::Recompute_Liveness(), RECUR_OP_DESC::RECUR_OP_DESC(), Region_Boundary_Fixup(), KEY_SCH::register_allocation_init(), Remove_Invariant_Predicates(), Remove_Non_Definite_Dependence(), KEY_SCH::rename_invariants(), Rename_Locals(), Rename_TNs_For_BB(), FAVOR_DELAY_HEUR::Renaming_Is_Profitable(), Scan_Complement_BB_For_Referenced_TNs(), Scan_Region_BB_For_Referenced_TNs(), Set_OP_omega(), Setup_Live_Ranges(), Special_Sequence(), Split_BB(), SWP_Is_Variant(), SWP_OP_vector::SWP_OP_vector(), SWP_Rename_TNs(), TN_DU_MAP::TN_DU_MAP(), tn_has_live_def_into_BB(), TN_Is_Allocatable(), TN_is_const_reg(), TN_is_dedicated_class_and_reg(), TN_live_out_of(), tn_registers_identical(), KEY_SCH::tn_renaming(), TN_To_PREG(), Unroll_Make_Remainder_Loop(), unroll_names_init_tn(), unroll_remove_notations(), and CG_LOOP::Verify().
| #define TN_is_ec_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_ec) |
| #define TN_is_enum | ( | r | ) | (TN_flags(r) & TN_ENUM) |
Definition at line 470 of file tn.h.
Referenced by CGTARG_Dependence_Required(), CGTARG_Is_OP_Advanced_Load(), CGTARG_Is_OP_Check_Load(), CGTARG_Is_OP_Speculative_Load(), CGTARG_Return_Enum_TN(), KEY_SCH::Emit_TN(), Modify_16bit_Ops(), r_apply_l_const(), r_assemble_binary(), Repl_Size16_Instr::Replace_ADDI(), Search_For_Previous_Enum(), sPrint_TN(), and Verify_Operand().
| #define TN_is_ep_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_ep) |
Definition at line 555 of file tn.h.
Referenced by Find_Call_Addr_Load(), and Localize_or_Replace_Dedicated_TNs().
| #define TN_is_float | ( | x | ) | (TN_flags(x) & TN_FLOAT) |
Definition at line 473 of file tn.h.
Referenced by Add_Float_Stores(), adjust_arc_for_rw_elim(), LRANGE::Calculate_Priority(), CGSPILL_Get_TN_Spill_Location(), CGTARG_Analyze_Compare(), CGTARG_Compute_PRC_INFO(), Do_Build_Recovery_Block(), Find_BB_TNs(), Insert_CHK(), Insert_Spills_Of_Globals(), Local_Insert_CHK(), LRANGE_Spill(), LUNIT_Spill(), Machine_Reg_To_FD(), OP_Is_Float_Mem(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), PREG_To_TN(), RECUR_OP_DESC::RECUR_OP_DESC(), SCHEDULER::Renaming(), CIO_RWTRAN::Replace_Tn(), Spill_Global_Register(), Spill_Live_Range(), Target_Unique_Exit(), and TN_To_Assigned_PREG().
| #define TN_is_fone_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_fone) |
| #define TN_is_fp_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_fp) |
| #define TN_is_fpu_int | ( | x | ) | (TN_flags(x) & TN_FPU_INT) |
Definition at line 475 of file tn.h.
Referenced by Constant_Operand0(), Constant_Operand1(), delete_memory_op(), and Find_BB_TNs().
| #define TN_is_fzero_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_fzero) |
| #define TN_is_global_reg | ( | x | ) | (TN_flags(x) & TN_GLOBAL_REG) |
Definition at line 478 of file tn.h.
Referenced by Add_Fail_TNs(), Adjust_BBSCH(), Adjust_Qualifying_Predicate(), Alloc_Stack_Reg(), Append_Succ(), Assign_Registers_For_OP(), BB_Live_Def_Union1(), BB_Live_Use_Union1(), CG_LOOP::Build_CG_LOOP_Info(), Build_Cyclic_Arcs(), Can_Do_Safe_Predicate_Movement(), Can_OP_Move(), CG_DEP_Prune_Dependence_Arcs(), Check_BB_For_HB_Suitability(), Check_HB_For_PQS_Suitability(), Check_If_TN_Is_Global(), CIO_RWTRAN::CICSE_Transform(), cmovable_op(), Complement_TN_Reference(), Compute_Livethrough_Set(), Convert_Goto_To_If(), copy_simplification(), Create_LRANGEs(), LOOP_DCE::Dead_Code_Elimination(), Detect_Multiply_Defined_GTNs(), CG_LOOP::Determine_Unroll_Factor(), dp::dump_tn_stl_set(), EBO_Fix_Same_Res_Op(), EBO_tn_available(), KEY_SCH::Emit_TN(), Find_BB_TNs(), find_duplicate_mem_op(), Generate_Copy_TNs(), GRA_LIVE_Add_Defreach_In_GTN(), GRA_LIVE_Add_Defreach_Out_GTN(), GRA_LIVE_Add_Live_Def_GTN(), GRA_LIVE_Add_Live_In_GTN(), GRA_LIVE_Add_Live_Use_GTN(), GRA_LIVE_Remove_Defreach_In_GTN(), GRA_LIVE_Remove_Defreach_Out_GTN(), GRA_LIVE_Remove_Live_Def_GTN(), GRA_LIVE_Remove_Live_In_GTN(), GRA_LIVE_Remove_Live_Out_GTN(), GRA_LIVE_Remove_Live_Use_GTN(), GRA_LIVE_TN_Live_Into_BB(), GRA_LIVE_TN_Live_Outof_BB(), GRA_Remove_Predicates_Save_Restore(), GTN_Live_Out_From_BB(), GTN_TN_SET_Print(), GTN_UNIVERSE_Add_TN(), GTN_UNIVERSE_TN_int(), Identify_and_delete_incr(), HB_Schedule::Init_Register_Map(), Insert_Spills_Of_Globals(), Live_Init(), LOOP_INVAR_CODE_MOTION::Live_Out_Of_Loop(), Localize_TNs_For_BB(), LRA_Allocate_Registers(), mark_tn_live_into_BB(), Needs_Rename(), OP_To_Move(), Predicate_Block(), CG_LOOP::Recompute_Liveness(), LOOP_RCE::Redundant_Copy_Elimination(), Rename_Locals(), Rename_TNs_For_BB(), Setup_Live_Ranges(), Special_Sequence(), sPrint_TN(), IF_CONVERTOR::Suitable_For_If_Conv(), TN_BB_LIST_MAP_Process_Pairs(), tn_info_use(), TN_live_out_of(), dp::tn_num(), Union1D_BB_Defreach_In(), Union1D_BB_Live_Out(), Unroll_Dowhile_Loop(), unroll_multi_bb(), unroll_names_init(), Update_GRA_Live_Sets(), Update_Live_Use_Counts(), Update_Liveness(), and FAVOR_DELAY_HEUR::Upward_Code_Motion_Inc_Live_Range_Greatly().
| #define TN_is_gp_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_gp) |
| #define TN_is_gra_cannot_split | ( | r | ) | (TN_flags(r) & TN_GRA_CANNOT_SPLIT) |
| #define TN_is_gra_homeable | ( | r | ) | (TN_flags(r) & TN_GRA_HOMEABLE) |
Definition at line 493 of file tn.h.
Referenced by Add_Spill_Load_Before_Use(), Analyze_Spilling_Live_Range(), CGSPILL_Get_TN_Spill_Location(), CGSPILL_Insert_Ops_After_Last_Def(), CGSPILL_Insert_Ops_Before_First_Use(), CGSPILL_Load_From_Memory(), CG_LOOP::Determine_Unroll_Factor(), Dup_TN(), EBO_tn_available(), Expand_Load(), Find_BB_TNs(), Gen_quad_preg(), Get_Local_TN_For_Global(), Load_From_Home(), LUNIT_Spill(), Mark_Defreach_Out_Recur(), Mark_Reloadable_Live_Ranges(), mark_tn_live_into_BB(), OP_Has_Restrictions(), PREG_To_TN(), REGION_Entry_PREG_Whirl(), REGION_Exit_PREG_Whirl(), Spill_Live_Range(), Store_To_Home(), and unroll_names_init_tn().
| #define TN_is_if_conv_cond | ( | r | ) | (TN_flags(r) & TN_IF_CONV_COND) |
| #define TN_is_label | ( | r | ) | (TN_flags(r) & TN_LABEL) |
Definition at line 464 of file tn.h.
Referenced by addr_subtract(), Adjust_Opnd_Name(), BBlist_Fall_Thru_Pred(), BBlist_Fall_Thru_Succ(), Branch_Skips_First_Op(), Build_CFG(), CG_Instrument_Arcs(), CG_LOOP_Append_BB_To_Prolog(), CGTARG_Branch_Info(), EDGE_PROFILE::Change_Tgt_Label(), Check_Br16(), LOOP_DCE::Dead_Code_Elimination(), EBO_Adjust_Pred_Branch_Target(), KEY_SCH::Emit_TN(), Expand_Split_Branch(), Fill_From_Successor(), Find_BB_TNs(), Fixup_Long_Branches(), Gen_Adjusted_TN(), Get_Br_Op_Tgt_Label(), Get_Op_Label(), Get_Recovery_BB(), Get_TN_Range(), Initialize_BB_Info(), Merge_Blocks(), IF_CONVERTOR::Merge_Blocks(), OP_refs_x87(), put_TN_comment(), r_apply_l_const(), r_assemble_binary(), REGION_Exit_Whirl_Labels(), Remove_Explicit_Branch(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_BR(), IF_CONVERTOR::Set_Fall_Thru(), sPrint_TN(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), and Verify_Operand().
| #define TN_is_lc_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_lc) |
| #define TN_is_pfs_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_pfs) |
| #define TN_is_ra_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_ra) |
| #define TN_is_register | ( | r | ) | (!TN_is_constant(r)) |
Definition at line 406 of file tn.h.
Referenced by SLOT_ORDER_CMP::_is_loop_variant(), Add_Bkwd_REG_Arcs(), add_gtn_use_arc(), HB_Schedule::Add_OP_To_Sched_Vector(), adjust_reganti_latency(), Alloc_Stack_Reg(), Analyze_Spilling_Live_Range(), AND_Predicate_To_OP(), Assign_Prolog_Temps(), KEY_SCH::Assign_Register(), Assign_Registers(), BB_Verify_Reg_Alloc(), CG_LOOP::Build_CG_LOOP_Info(), Build_Cyclic_Arcs(), Build_Fde_For_Proc(), Build_Outgoing_Edges(), Build_TN_Like(), Can_Def_Be_Moved(), Can_Mem_Op_Be_Moved(), Can_Use_Be_Moved(), CAN_USE_REG_TN(), CG_LOOP_DEF::CG_LOOP_DEF(), CG_LOOP_OP_is_live(), CGTARG_Add_Implict_Operands(), CGTARG_Adjust_Latency(), Check_loadbw_execute(), Check_No_Use_Between(), CIO_RWTRAN::CICSE_Transform(), CIO_RWTRAN::CIO_Copy_Remove(), cmovable_op(), PARTITION_GRAPH::Collect_Info(), GRA_PARA_REGION::Collect_Reg_Used_And_Def_For_BBs(), KEY_SCH::Collect_Sched_Info(), Compute_Livethrough_Set(), Compute_Reg_State(), Consistency_Check(), Convert_Imm_Add(), Convert_OP_to_base_update_form(), Count_Copies_Needed(), Create_GRA_BB_Call_Spill_Block(), Create_TN_Pair(), Create_Unique_Defs_For_TNs(), decode_and(), defop_for_op(), defop_for_tn(), Defs_Can_Be_Merged(), delete_gtn_use_arc(), delete_memory_op(), _tagRGN_CFG_PATH_INFO::Derive_RGN_CFG_PATH_INFO_from_BB_Node(), detach_gtn_use_arc(), Detect_GTNs(), Do_Build_Recovery_Block(), EBO_Copy_Operand(), EBO_Fold_Load_Duplicate(), EBO_Lea_Insertion(), EBO_Load_Execution(), Expand_64Bit_Branch(), Expand_TN_Pair(), Find_BB_TNs(), Find_Reaching_Def_Use_Set(), Fix_Recurrences_Before_Unrolling(), Gcov_BB_Prepend_Ops(), KEY_SCH::Gen_PKE(), Generate_Asm_String(), Generate_Copy_TNs(), Generate_Entry(), LRANGE_MGR::Get(), CG_LOOP_DEF::Get(), DAG_BUILDER::Get_Def_Use_OPs(), DAG_BUILDER::Get_Define_OPs(), get_representative_tn(), Get_TN_Assembly_Name(), Get_TN_Pair(), GRA_LIVE_Compute_Local_Info(), GRA_LIVE_Detect_GTNs_In_Set(), GRA_LIVE_Init_BB_End(), GTN_UNIVERSE_TN_int(), Handle_Asm(), Handle_ASM(), has_assigned_reg(), Induction_Variables_Removal(), Init_Load_Exec_Map(), Is_LR_Reloadable(), List_Based_Fwd::Is_OP_Better(), Is_Pointer(), is_xfer_depndnce_reqd(), Look_For_16bit_Ops(), PARTITION_GRAPH::Look_For_Partition(), LRA_Estimate_Fat_Points(), Mark_Reloadable_Live_Ranges(), Modify_16bit_Ops(), Modify_Asm_String(), Move_Spill_Loads_Stores(), OP_def_use_stack_regs(), OP_Defs_Reg(), OP_Has_Restrictions(), OP_Interferes_With_Vector(), OP_Refs_Reg(), OP_refs_x87(), OP_use_sp(), OPs_Are_Dependent(), Optimize_Copy_Usage(), Preallocate_Single_Register_Subclasses(), Predicate_Block(), EDGE_PROFILE::Prepare_Call_Init_Return_BB(), Propagate_16bit_Info(), Prune_Regout_Deps(), Redundancy_Elimination(), KEY_SCH::register_allocation_init(), REGISTER_CLASS_OP_Update_Mapping(), Rematerialize_GRF(), Remove_Invariant_Predicates(), Remove_LRs_For_OP(), Remove_Non_Definite_Dependence(), KEY_SCH::rename_invariants(), Rename_Locals(), KEY_SCH::rename_tn(), Repl_Size16_Instr::Replace_LdSt_OP(), Replace_TN_References(), Scan_Complement_BB_For_Referenced_TNs(), Scan_Region_BB_For_Referenced_TNs(), DAG_BUILDER::Set_Def_Use_OPs(), set_representative_tn(), DAG_BUILDER::Set_TN_BB_Bitset_Table(), Setup_Live_Ranges(), Special_Sequence(), SWP_Fixup(), SWP_Fixup_Rotating_Registers(), SWP_Is_Variant(), SWP_OP_vector::SWP_OP_vector(), SWP_Rename_TNs(), test_is_replaced(), Test_PRDB(), TN_2_DEFS_VECTOR_MAP::TN_2_DEFS_VECTOR_MAP(), TN_DU_MAP::TN_DU_MAP(), TN_is_const_reg(), TN_is_GFP(), TN_is_zero(), tn_registers_identical(), Unpropagate_Unusable_16bit_Info(), Unroll_Dowhile_Loop(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), unroll_names_get(), unroll_names_init(), unroll_remove_notations(), Update_Live_LRs_Vector(), DAG_BUILDER::Update_Max_TN_number(), SCHED_DFLOW_MGR::Upward_Sched_Interfere_Nested_Rgns_LiveRanges(), Usable_Registers(), Vector_Can_Add_Op(), BB_REGION::Verify(), Verify_Instruction(), and Verify_Operand().
| #define TN_is_reloc_call16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_CALL16) |
| #define TN_is_reloc_call_hi16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_CALL_HI16) |
| #define TN_is_reloc_call_lo16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_CALL_LO16) |
| #define TN_is_reloc_got_disp | ( | r | ) | (TN_relocs(r) == TN_RELOC_GOT_DISP) |
| #define TN_is_reloc_got_hi16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_GOT_HI16) |
| #define TN_is_reloc_got_lo16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_GOT_LO16) |
| #define TN_is_reloc_got_ofst | ( | r | ) | (TN_relocs(r) == TN_RELOC_GOT_OFST) |
| #define TN_is_reloc_got_page | ( | r | ) | (TN_relocs(r) == TN_RELOC_GOT_PAGE) |
| #define TN_is_reloc_gpident | ( | r | ) | (TN_relocs(r) == TN_RELOC_GPIDENT) |
| #define TN_is_reloc_gprel16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_GPREL16) |
| #define TN_is_reloc_gpsub | ( | r | ) | (TN_relocs(r) == TN_RELOC_GPSUB) |
| #define TN_is_reloc_hi_gpident | ( | r | ) | (TN_relocs(r) == TN_RELOC_HI_GPIDENT) |
| #define TN_is_reloc_hi_gpsub | ( | r | ) | (TN_relocs(r) == TN_RELOC_HI_GPSUB) |
| #define TN_is_reloc_high16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_HIGH16) |
Definition at line 590 of file tn.h.
Referenced by EBO_Lea_Insertion(), r_apply_l_const(), and r_assemble_binary().
| #define TN_is_reloc_higher | ( | r | ) | (TN_relocs(r) == TN_RELOC_HIGHER) |
Definition at line 592 of file tn.h.
Referenced by EBO_Lea_Insertion(), r_apply_l_const(), and r_assemble_binary().
| #define TN_is_reloc_highest | ( | r | ) | (TN_relocs(r) == TN_RELOC_HIGHEST) |
Definition at line 594 of file tn.h.
Referenced by EBO_Lea_Insertion(), r_apply_l_const(), and r_assemble_binary().
| #define TN_is_reloc_ia_gprel22 | ( | r | ) | (TN_relocs(r) == TN_RELOC_IA_GPREL22) |
| #define TN_is_reloc_ia_imm14 | ( | r | ) | (TN_relocs(r) == TN_RELOC_IA_IMM14) |
| #define TN_is_reloc_ia_imm22 | ( | r | ) | (TN_relocs(r) == TN_RELOC_IA_IMM22) |
| #define TN_is_reloc_ia_ltoff22 | ( | r | ) | (TN_relocs(r) == TN_RELOC_IA_LTOFF22) |
| #define TN_is_reloc_ia_ltoff_fptr | ( | r | ) | (TN_relocs(r) == TN_RELOC_IA_LTOFF_FPTR) |
| #define TN_is_reloc_ia_pcrel | ( | r | ) | (TN_relocs(r) == TN_RELOC_IA_PCREL) |
| #define TN_is_reloc_lo_gpident | ( | r | ) | (TN_relocs(r) == TN_RELOC_LO_GPIDENT) |
| #define TN_is_reloc_lo_gpsub | ( | r | ) | (TN_relocs(r) == TN_RELOC_LO_GPSUB) |
| #define TN_is_reloc_low16 | ( | r | ) | (TN_relocs(r) == TN_RELOC_LOW16) |
Definition at line 588 of file tn.h.
Referenced by EBO_Lea_Insertion(), r_apply_l_const(), and r_assemble_binary().
| #define TN_is_reloc_neg | ( | r | ) | (TN_relocs(r) == TN_RELOC_NEG) |
Definition at line 612 of file tn.h.
Referenced by EBO_Lea_Insertion(), r_apply_l_const(), and r_assemble_binary().
| #define TN_is_rematerializable | ( | r | ) | (TN_flags(r) & TN_REMATERIALIZABLE) |
Definition at line 489 of file tn.h.
Referenced by Add_Spill_Load_Before_Use(), Analyze_Spilling_Live_Range(), CGSPILL_Force_Rematerialization_For_BB(), Dup_TN(), Exp_Select_And_Condition(), Expand_Float_Divide(), Expand_Load(), Expand_Multiply(), find_previous_constant(), Gen_quad_preg(), Is_LR_Reloadable(), Is_Pointer(), Load_Has_Valid_Vaddr(), Mark_Reloadable_Live_Ranges(), Memory_OP_References_Stack(), PREG_To_TN(), REGION_Entry_PREG_Whirl(), REGION_Exit_PREG_Whirl(), Rematerializable_IntConst(), Spill_Live_Range(), TN_Can_Use_Constant_Value(), and TN_Value_At_Op().
| #define TN_is_save_reg | ( | t | ) | (!CLASS_REG_PAIR_EqualP(TN_save_creg(t),CLASS_REG_PAIR_undef)) |
Definition at line 443 of file tn.h.
Referenced by LRANGE::Allowed_Registers(), Analyze_OP_For_Unwind_Info(), Build_Fde_For_Proc(), CGTARG_Dependence_Required(), Choose_Avoiding_Neighbor_Preferences(), Choose_Best_Split(), Compute_Force_TNs(), Compute_Reg_State(), Consistency_Check(), copy_simplification(), LRANGE_MGR::Create_Complement(), Create_Sched_Est(), KEY_SCH::Emit_TN(), Estimate_BB_Length(), Estimate_Callee_Saves(), Find_First_Copy(), Find_Last_Copy(), Generate_Entry(), Generate_Exit(), Get_Copied_Save_TN(), Identify_Max_Colorable_Neighborhood(), LRANGE_Spill(), LUNIT_Spill(), OP_Is_Copy_From_Save_TN(), OP_Is_Copy_To_Save_TN(), op_is_needed_globally(), Save_TN_to_fd(), and sPrint_TN().
| #define TN_is_sp_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_sp) |
Definition at line 553 of file tn.h.
Referenced by Adjust_Entry(), Adjust_Exit(), CGTARG_Dependence_Required(), Init_OPSCH_For_BB(), OP_use_sp(), Perform_Post_GCM_Steps(), and Preallocate_Single_Register_Subclasses().
| #define TN_is_static_link_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_static_link) |
| #define TN_is_symbol | ( | r | ) | (TN_flags(r) & TN_SYMBOL) |
Definition at line 468 of file tn.h.
Referenced by addr_base_offset(), addr_subtract(), Build_Fde_For_Proc(), KEY_SCH::Build_OPR(), CGSPILL_OP_Spill_Location(), CGTARG_Can_Be_Speculative(), CGTARG_TN_For_Asm_Operand(), compare_bit(), Compose_Addr(), Compose_Addr_offset(), Compute_Reg_State(), Constant_Operand0(), Constant_Operand1(), EBO_Fold_Load_Duplicate(), EBO_hash_op(), EBO_Identify_Base_and_Offset(), EBO_Lea_Insertion(), KEY_SCH::Emit_Src_DDG(), KEY_SCH::Emit_TN(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Ldst(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_Add(), Expand_Const(), Expand_Immediate(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Load(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Mtype_Immediate(), Expand_Split_Load(), Expand_Split_Store(), Expand_Store(), Expand_Sub(), Find_Call_Addr_Load(), find_duplicate_mem_op(), find_index_and_offset(), Find_Spill_TN(), Fold_Constant_Expression(), Gen_Adjusted_TN(), Get_64Bit_High_Addr(), Get_TN_Range(), Get_TN_Value(), Get_Vector_Symbol(), iadd_special_case(), List_Based_Fwd::Is_OP_Better(), Priority_Selector::Is_OP_Better(), Is_OP_Spill_Load(), Is_OP_Spill_Store(), merge_memory_offsets(), Modify_Asm_String(), OP_Has_Restrictions(), Pick_Load_Instruction(), Pick_Store_Instruction(), Print_OP(), Print_OP_No_SrcLine(), put_TN_comment(), r_apply_l_const(), r_assemble_binary(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), Repl_Size16_Instr::Replace_Restricted_Imm_OP(), Search_For_Previous_Symbol(), shl_add_sequence(), Special_Sequence(), sPrint_OP(), sPrint_TN(), and TN_To_Index().
| #define TN_is_tag | ( | r | ) | (TN_flags(r) & TN_TAG) |
Definition at line 466 of file tn.h.
Referenced by KEY_SCH::Emit_TN(), Fixup_Long_Branches(), Get_TN_Range(), OP_has_implicit_interactions(), r_apply_l_const(), r_assemble_binary(), and sPrint_TN().
| #define TN_is_true_pred | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_true) |
Definition at line 563 of file tn.h.
Referenced by Add_Predicate_Valid_OP(), BB_Split_Entry_Glue(), Build_Outgoing_Edges(), Can_Do_Safe_Predicate_Movement(), CG_DEP_Prune_Dependence_Arcs(), CGTARG_Invert_Branch(), Check_BB_For_HB_Suitability(), CIO_RWTRAN::CIO_Copy_Remove(), PARTITION_GRAPH::Collect_Info(), Convert_While_Loop_to_Fully_Predicated_Form(), PARTITION_GRAPH::Copy_To(), defop_for_op(), Exp_Pred_Complement(), Exp_Pred_Copy(), Fix_Recurrences_Before_Unrolling(), DAG_BUILDER::Get_Def_Use_OPs(), DAG_BUILDER::Get_Define_OPs(), has_assigned_reg(), Initialize_BB_Info(), Is_There_OP_Dependence(), PARTITION_GRAPH::Look_For_Partition(), Negate_Branch(), OP_cond_def(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), r_assemble_list(), DAG_BUILDER::Set_Def_Use_OPs(), DAG_BUILDER::Set_TN_BB_Bitset_Table(), IF_CONVERTOR::Suitable_For_If_Conv(), SWP_Reorder_OPs(), TN_is_const_reg(), and DAG_BUILDER::Update_Max_TN_number().
| #define TN_is_zero_reg | ( | r | ) | (TN_register_and_class(r) == CLASS_AND_REG_zero) |
Definition at line 558 of file tn.h.
Referenced by CG_LOOP_Backpatch_Add(), CGPREP_Same_Res_Opnd(), GRA_PARA_REGION::Collect_Reg_Used_And_Def_For_BBs(), Detect_Post_Hazard(), EBO_Fix_Same_Res_Op(), Handle_ALLOCA(), Is_Non_Allocatable_Reg_Available(), Is_Pointer(), Localize_or_Replace_Dedicated_TNs(), Pick_Compare_TOP(), Similar_Ptr_Addrs_Match(), TN_is_const_reg(), TN_is_zero(), and TN_Value_At_Op().
| #define TN_label | ( | t | ) | (CAN_USE_TN(t)->u2.label) |
Definition at line 452 of file tn.h.
Referenced by addr_subtract(), BB_Can_Retarget_Branch(), BB_has_goto_bb(), BB_has_target_bb(), BB_Retarget_Branch(), BBlist_Fall_Thru_Pred(), BBlist_Fall_Thru_Succ(), Build_CFG(), CG_LOOP_Append_BB_To_Prolog(), EDGE_PROFILE::Change_Tgt_Label(), Check_Br16(), REGION::Edge_Splitting(), KEY_SCH::Emit_TN(), Expand_64Bit_Branch(), Expand_Ordered_Branch(), Expand_Split_Branch(), Find_Stub_BB(), Fixup_Long_Branches(), Gen_Adjusted_TN(), Gen_Label_TN(), Gen_Tag_TN(), Get_Br_Op_Tgt_Label(), Get_Op_Label(), Get_Recovery_BB(), Merge_Blocks(), IF_CONVERTOR::Merge_Blocks(), put_TN_comment(), r_apply_l_const(), r_assemble_binary(), REGION_Exit_Whirl_Labels(), Remove_Explicit_Branch(), Repl_Size16_Instr::Replace_BR(), IF_CONVERTOR::Set_Fall_Thru(), sPrint_TN(), unroll_multi_bb(), and Verify_Operand().
| #define TN_number | ( | t | ) | (CAN_USE_REG_TN(t)->u1.reg_tn.number+0) |
| #define TN_offset | ( | t | ) | (CAN_USE_TN(t)->u1.offset) |
Definition at line 450 of file tn.h.
Referenced by addr_base_offset(), addr_subtract(), Adjust_Addr_TNs(), Branch_Skips_First_Op(), Compose_Addr(), Compose_Addr_offset(), Constant_Operand0(), EBO_Adjust_Pred_Branch_Target(), EBO_Lea_Insertion(), KEY_SCH::Emit_TN(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Op(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_Abs(), Expand_Add(), Expand_Const(), Expand_Fast_Sqrt(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Load(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Neg(), Expand_Split_Load(), Expand_Split_Store(), Expand_Store(), Expand_Sub(), find_duplicate_mem_op(), Find_Stub_BB(), Fixup_Long_Branches(), Fold_Constant_Expression(), Gen_Adjusted_TN(), Gen_Label_TN(), Gen_Symbol_TN(), Get_64Bit_High_Addr(), Get_TN_Range(), Get_TN_Value(), iadd_special_case(), Initialize_BB_Info(), List_Based_Fwd::Is_OP_Better(), Priority_Selector::Is_OP_Better(), merge_memory_offsets(), Modify_Asm_String(), put_TN_comment(), r_apply_l_const(), r_assemble_binary(), r_assemble_op(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), Search_For_Previous_Symbol(), sPrint_TN(), and Verify_Operand().
| #define TN_register | ( | t | ) | (CLASS_REG_PAIR_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg)+0) |
| #define TN_register_and_class | ( | t | ) | (CLASS_REG_PAIR_class_n_reg(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg)+0) |
Definition at line 435 of file tn.h.
Referenced by Adjust_Entry(), Can_Be_Tail_Call(), CGPREP_Dup_TN(), CGTARG_Analyze_Branch(), CGTARG_Copy_Operand(), EBO_Copy_Operand(), KEY_SCH::Gen_PKE(), Handle_INTRINSIC_CALL(), Make_Dedicated_Save_TN(), op_defines_sp(), TN_is_dedicated_class_and_reg(), tn_registers_identical(), TNs_Are_Equivalent(), and Verify_Instruction().
| #define TN_register_class | ( | t | ) | (CLASS_REG_PAIR_rclass(CAN_USE_REG_TN(t)->u1.reg_tn.class_reg)) |
Definition at line 431 of file tn.h.
Referenced by Add_Fail_TNs(), Add_Float_Stores(), add_reg_assignment(), KEY_SCH::Addr_Generation(), Adjust_Entry(), adjust_reganti_latency(), Alloc_Regs_For_BB(), Alloc_Stack_Reg(), Allocate_Register(), Analyze_Spilling_Live_Range(), SCHED_DFLOW_MGR::Are_Defs_Live_Out(), Assign_Prolog_Temps(), KEY_SCH::Assign_Register(), Assign_Registers(), Assign_Registers_For_OP(), Assign_Temp_Regs(), Assign_Virtual_Register(), At_Unallocated_Op_Definition(), Avoid_RA_In_Call_Argument(), BB_Mov_Ops(), Build_Complement_Interference_Graph(), Build_Fde_For_Proc(), KEY_SCH::Build_OPR(), Build_TN_Like(), Can_Def_Be_Moved(), Can_Inst_Be_Moved(), Can_OP_Move(), Can_Use_Be_Moved(), CG_DEP_Can_OP_Move_Across_Call(), CG_DEP_Prune_Dependence_Arcs(), Cg_Dwarf_Process_PU(), CGEMIT_Call(), CGEMIT_Function_Prototype(), CGEMIT_Gen_Asm_Frame(), CGSPILL_Get_TN_Spill_Location(), CGSPILL_Prepend_Ops(), CGSPILL_TN_Can_Be_Spilled(), CGTARG_Adjust_Latency(), CGTARG_Dependence_Required(), CGTARG_Load_From_Memory(), CGTARG_Modified_Asm_Opnd_Name(), CGTARG_Store_To_Memory(), CGTARG_TN_For_Asm_Operand(), Check_HB_For_PQS_Suitability(), Check_If_Dedicated_TN_Is_Global(), Classes_Match(), PARTITION_GRAPH::Collect_Info(), GRA_PARA_REGION::Collect_Reg_Used_And_Def_For_BBs(), combine_adjacent_loads(), Complement_TN_Reference(), Compute_Livethrough_Set(), condition_redundant(), Constant_Operand0(), Constant_Operand1(), Convert_Imm_And(), copy_rf_sequence(), copy_simplification(), Copy_Tn_MapInfo(), PARTITION_GRAPH::Copy_To(), LRANGE_MGR::Create_Complement(), GRA_BB::Create_Global_Interferences(), Create_GRA_BB_Call_Spill_Block(), Create_LR_For_TN(), LRANGE_MGR::Create_Region(), Create_Sched_Est(), Create_Unwind_Descriptors(), defop_for_op(), defop_set(), delete_duplicate_op(), delete_memory_op(), delete_reload_across_dependency(), delete_subset_mem_op(), Detect_Post_Hazard(), Detect_Pre_Hazard(), Detect_SWP_Constraints(), dp::dump_rotate_info(), EBO_hash_op(), EETARG_Generate_PIC_Entry_Code(), KEY_SCH::Emit_TN(), Emit_Unwind_Directives_For_OP(), SWP_REG_ASSIGNMENT::Enough_Non_Rotating_Registers(), Estimate_BB_Length(), Estimate_Callee_Saves(), HB_Schedule::Estimate_Reg_Cost_For_OP(), Exp_COPY(), Exp_Indirect_Branch(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Load(), Exp_Store(), Expand_Bool_Comparison(), Expand_Expr(), Expand_Extract_Bits(), Expand_Float_Compares(), Expand_Float_To_Float(), Expand_Float_To_Long_m32(), Expand_Fxch(), Expand_Int_Comparison(), Expand_Int_To_Vect_Tas(), Expand_Load(), Expand_Logical_Not(), Expand_Long_To_Float_m32(), Expand_Max(), Expand_Min(), Expand_Select(), Expand_Split_Load(), Expand_Split_Store(), Expand_Sqrt(), Expand_Store(), Find_BB_TNs(), Find_Def_Of_TN(), find_duplicate_mem_op(), find_previous_constant(), Find_TN_with_Matching_Register(), Fix_LRA_Blues(), Fixup_Rotating_Register_TN(), Fold_Constant_Expression(), KEY_SCH::Gen_PKE(), Generate_Asm_String(), Generate_Entry(), Generate_Exit(), Get_Local_TN_For_Global(), SWP_REG_ASSIGNMENT::Get_Non_Rotating_Register_TN(), Get_Possibly_Wired_Reference(), get_representative_tn(), Get_Source_Of_Restore(), Get_TN_Assembly_Name(), GRA_LIVE_TN_Live_Into_BB(), GRA_LIVE_TN_Live_Outof_BB(), Handle_Asm(), Handle_ASM(), Handle_STID(), SCHEDULER::Identify_Actual_Argument_Defs(), Induction_Variables_Removal(), Init_Avail_Set(), Init_Callee_Saved_Regs_for_REGION(), Init_Live_LRs_Vector(), Init_Load_Exec_Map(), Is_Function_Value(), List_Based_Fwd::Is_OP_Better(), Priority_Selector::Is_OP_Better(), Is_There_OP_Dependence(), Is_TN_Last_Use(), is_xfer_depndnce_reqd(), Load_Execute_Format(), Localize_or_Replace_Dedicated_TNs(), PARTITION_GRAPH::Look_For_Partition(), LR_For_TN(), LRA_Allocate_Registers(), LRA_Compute_Register_Request(), LRA_Estimate_Fat_Points(), LRA_examine_last_op_needs(), Mark_Reloadable_Live_Ranges(), mark_tn_live_into_BB(), Mk_OP(), Modify_16bit_Ops(), Modify_16bit_TNs(), Modify_Asm_String(), Mtype_Of_TN(), Multi_Branch_Valid_OP(), OP_def_use_stack_regs(), OP_Defs_Reg(), OP_Has_Restrictions(), OP_Refs_Reg(), OP_Refs_TN_Reg(), OP_refs_x87(), OP_To_Move(), Op_Uses_TN(), Opnd_Tn_In_BB(), Perform_Post_GCM_Steps(), Preallocate_Single_Register_Subclasses(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), PREG_To_TN(), r_assemble_binary(), r_assemble_list(), CIO_RWTRAN::Read_CICSE_Candidate_Op(), Redundancy_Elimination(), Region_TN_Reference(), KEY_SCH::register_allocation_init(), REGISTER_CLASS_OP_Update_Mapping(), LOOP_INVAR_CODE_MOTION::Register_Para_Passing(), REGISTER_Pu_Begin(), REGISTER_Reset_FP(), Remove_Invariant_Predicates(), remove_unnecessary_anti_or_output_arcs(), Replace_TN_References(), Scan_Complement_BB_For_Referenced_TNs(), Scan_Region_BB_For_Referenced_TNs(), set_representative_tn(), Setup_Live_Ranges(), Special_Sequence(), Special_Store_Load_Sequence(), Spill_Live_Range(), sPrint_TN(), store_sequence(), SWP_Emit(), SWP_Exp_COPY(), SWP_Fixup(), SWP_Gather_Lifetime_Extents(), SWP_Gather_Lifetimes(), Target_Unique_Exit(), Test_PRDB(), TN_is_fcc_register(), TN_is_GFP(), TN_Is_Unwind_Reg(), TN_live_out_of(), TN_Reaching_Value_At_Op(), TN_To_Assigned_PREG(), TN_to_fd(), Unpropagate_Unusable_16bit_Info(), Update_Entry_For_TN(), Update_Live_LRs_Vector(), HB_Schedule::Update_Regs_For_OP(), Usable_Registers(), Vector_Can_Add_Op(), Vector_Is_Possible(), and Verify_Operand().
| #define TN_relocs | ( | t | ) | (CAN_USE_TN(t)->relocs) |
Definition at line 418 of file tn.h.
Referenced by Adjust_Opnd_Name(), CGEMIT_Relocs_In_Asm(), CGEMIT_Relocs_In_Object(), CGTARG_Is_Thread_Local_Memory_OP(), Constant_Operand0(), Exp_Immediate(), Exp_Immediate_Int(), Expand_Split_Load(), Expand_Split_Store(), find_duplicate_mem_op(), Fold_Constant_Expression(), Gen_Adjusted_TN(), Gen_Symbol_TN(), Get_64Bit_High_Addr(), Get_TN_Range(), merge_memory_offsets(), r_apply_l_const(), r_assemble_binary(), Search_For_Previous_Symbol(), sPrint_TN(), and Repl_Size16_Instr::Tn_Is_Reloc_TN().
| #define TN_save_creg | ( | t | ) | (CAN_USE_REG_TN(t)->u1.reg_tn.save_creg) |
Definition at line 439 of file tn.h.
Referenced by Analyze_OP_For_Unwind_Info(), Make_Dedicated_Save_TN(), and Spill_Prolog_Epilog_Save_LUNIT().
| #define TN_save_rclass | ( | t | ) | (CLASS_REG_PAIR_rclass(TN_save_creg(t))) |
Definition at line 441 of file tn.h.
Referenced by LRANGE::Allowed_Registers(), KEY_SCH::Emit_TN(), Epilog_restore_code(), LRANGE_Spill(), LUNIT_Spill(), Machine_Reg_To_FD(), Prolog_save_code(), Save_TN_to_fd(), and sPrint_TN().
| #define TN_save_reg | ( | t | ) | (CLASS_REG_PAIR_reg(TN_save_creg(t))+0) |
Definition at line 440 of file tn.h.
Referenced by LRANGE::Allowed_Registers(), Analyze_OP_For_Unwind_Info(), KEY_SCH::Emit_TN(), Epilog_restore_code(), Find_BB_TNs(), Identify_Max_Colorable_Neighborhood(), LRANGE_Spill(), LUNIT_Spill(), Machine_Reg_To_FD(), Prolog_save_code(), Save_TN_to_fd(), and sPrint_TN().
| #define TN_size | ( | t | ) | (CAN_USE_TN(t)->size+0) |
Definition at line 421 of file tn.h.
Referenced by Add_Float_Stores(), KEY_SCH::Adjust_incr(), KEY_SCH::Adjust_ofst(), Build_C3_INIT_PTR(), Build_TN_Like(), CGSPILL_Get_TN_Spill_Location(), CGTARG_Analyze_Compare(), CGTARG_Copy_Operand(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Countdown_Loop(), CGTARG_Generate_Remainder_Branch(), CGTARG_LOOP_Optimize(), CGTARG_Modified_Asm_Opnd_Name(), Check_If_TN_Is_Global(), Check_loadbw_execute(), Constant_Operand0(), Constant_Operand1(), Convert_Imm_Add(), Convert_Imm_And(), Convert_Imm_Mul(), Convert_Imm_Xor(), CIO_RWTRAN::Copy_Ops_To_Epilog(), Create_LR_For_TN(), delete_memory_op(), EBO_Can_Merge_Into_Offset(), EBO_Fold_Load_Duplicate(), KEY_SCH::Emit_TN(), Exp_COPY(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Ldst(), Exp_Select_And_Condition(), Expand_32Bit_Int_Equal(), Expand_32Bit_Int_Greater_Equal(), Expand_32Bit_Int_Not_Equal(), Expand_Extract_Bits(), Expand_Float_Compares(), Expand_Int_Cmp(), Expand_Int_Equal(), Expand_Int_Greater_Equal(), Expand_Int_Not_Equal(), Expand_Int_To_Int(), Expand_Int_To_Long_Double(), Expand_Load(), Expand_Logical_And(), Expand_Logical_Not(), Expand_Logical_Or(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Select(), Expand_Split_Load(), Expand_Split_Store(), Expand_Store(), Find_BB_TNs(), Fixup_Ldst_Offset(), Fold_Constant_Expression(), Gen_Adjusted_TN(), KEY_SCH::Gen_PKE(), Get_64Bit_High_Addr(), Handle_CONDBR(), Handle_LDID(), KEY_SCH::Handle_Ldst_Addiu(), Handle_STID(), KEY_SCH::Loop_Peeling(), LRA_Allocate_Registers(), merge_memory_offsets(), Modify_Asm_String(), Mtype_Of_TN(), KEY_SCH::Peeling_For_Unknown_Trip(), Pick_Compare_TOP(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), PREG_To_TN(), r_apply_l_const(), SCHEDULER::Renaming(), Search_For_Previous_Constant(), shladd(), Special_Sequence(), Special_Store_Load_Sequence(), sPrint_TN(), store_sequence(), Target_Unique_Exit(), Unroll_Do_Loop(), Unroll_Do_Loop_guard(), unroll_guard_unrolled_body(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), unroll_multi_make_remainder_loop(), Unroll_Replicate_Body(), and Verify_Operand().
| #define TN_spill | ( | t | ) | (CAN_USE_TN(t)->u2.u3.spill) |
Definition at line 444 of file tn.h.
Referenced by Add_Spill_Store_After_Def(), Analyze_Spilling_Live_Range(), Build_Fde_For_Proc(), CGSPILL_Get_TN_Spill_Location(), CGSPILL_OP_Spill_Location(), LRANGE_MGR::Create_Duplicate(), EBO_hash_op(), Gen_quad_preg(), GRA_Spill(), Is_LR_Reloadable(), Is_OP_Spill_Load(), Is_OP_Spill_Store(), Move_Spill_Loads_Stores(), REGION_Entry_PREG_Whirl(), REGION_Exit_PREG_Whirl(), Save_TN_to_fd(), Setup_Live_Ranges(), Spill_Global_Register(), Spill_Live_Range(), and TN_to_fd().
| #define TN_spill_is_valid | ( | t | ) | (TN_is_register(t) && !(TN_is_rematerializable(t) || TN_is_gra_homeable(t))) |
| #define TN_value | ( | t | ) | (CAN_USE_TN(t)->u1.value) |
Definition at line 448 of file tn.h.
Referenced by Add_To_Vector(), addr_base_offset(), addr_subtract(), Adjust_Addr_TNs(), KEY_SCH::Adjust_incr(), HB_Schedule::Adjust_Ldst_Offsets(), KEY_SCH::Adjust_ofst(), LRANGE::Allowed_Registers(), Apply_Back_Sub_Invariant(), KEY_SCH::Build_OPR(), CG_DEP_Address_Analyze(), CG_DEP_Mem_Ops_Offsets_Overlap(), CGTARG_Copy_Operand(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Countdown_Loop(), CGTARG_Generate_Remainder_Branch(), CGTARG_LOOP_Optimize(), CGTARG_Process_Asm_m_constraint(), Check_loadbw_execute(), Compose_Addr(), Compose_Addr_offset(), condition_optimization(), Constant_Operand0(), Constant_Operand1(), KEY_SCH::Construct_addr_vector(), Convert_OP_to_base_update_form(), CIO_RWTRAN::Copy_Ops_To_Epilog(), copy_simplification(), Count_Loop_Interation(), Delete_Unwanted_Prefetches(), CG_LOOP::Determine_Unroll_Factor(), CG_LOOP::Determine_Unroll_Fully(), EBO_bit_length(), EBO_Copy_Operand(), EBO_Fold_Load_Duplicate(), EBO_Lea_Insertion(), Emit_Loop_Note(), KEY_SCH::Emit_TN(), Exp_Deposit_Bits(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Select_And_Condition(), Exp_Simulated_Op(), Exp_Spadjust(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_64Bit_Cvtl(), Expand_64Bit_Shift(), Expand_Add(), Expand_Binary_And(), Expand_Binary_And_Or(), Expand_Binary_Or(), Expand_Binary_Xor(), Expand_Branch(), Expand_C3_aadda(), Expand_C3_DMULA(), Expand_C3_Mode0(), Expand_C3_Mode1(), Expand_C3_Mode10(), Expand_C3_Mode11(), Expand_C3_Mode2(), Expand_C3_Mode3(), Expand_C3_Mode4(), Expand_C3_Mode5(), Expand_C3_Mode6(), Expand_C3_Mode7(), Expand_C3_Mode8(), Expand_C3_Mode9(), Expand_C3_mul(), Expand_C3_MULA(), Expand_C3_MULA_A(), Expand_C3_MULA_AR(), Expand_C3_MVFS(), Expand_C3_ROUND(), Expand_C3_SAVE_DACC(), Expand_C3_shlafa_i(), Expand_Convert_Length(), Expand_Immediate(), Expand_Immediate_Into_Register(), Expand_Int_Cmp(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_Lda(), Expand_Left_Rotate(), Expand_Load(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Multiply(), Expand_Rrotate(), Expand_SET_ADDRSIZE(), Expand_Shift(), Expand_Split_BOP(), Expand_Split_Branch(), Expand_Split_Int_Cmp(), Expand_Split_Load(), Expand_Split_Select(), Expand_Split_Shift(), Expand_Split_Store(), Expand_Split_UOP(), Expand_Store(), Expand_Sub(), find_previous_constant(), Fixup_Ldst_Offset(), Fold_Constant_Expression(), Gen_Adjusted_TN(), Gen_Implicit_Prefetches(), Gen_Literal_TN(), KEY_SCH::Gen_PKE(), Gen_Second_Immd_Op(), Get_64Bit_High_Addr(), Get_TN_Range(), Get_TN_Value(), Handle_ALLOCA(), KEY_SCH::Handle_Ldst_Addiu(), Identify_and_delete_incr(), imm_sll(), imm_sra(), imm_srl(), Init_OP_no_ci_alias(), Interleave_Base_Update(), Is_Ldst_Addiu_Pair(), List_Based_Fwd::Is_OP_Better(), Priority_Selector::Is_OP_Better(), Is_Violate_Issue_Rule(), KEY_SCH::Loop_Peeling(), KEY_SCH::Loop_Preconditioning(), LOOPINFO_Trip_Count(), CIO_RWTRAN::Mark_Op_For_Epilog(), merge_memory_offsets(), Modify_16bit_Ops(), Modify_24bit_Muls(), Modify_Asm_String(), Null_Ptr_Deref_Spec(), OP_def_is_16bit(), Op_In_Working_Set(), OP_Interferes_With_Vector(), OP_is_copy(), OP_Offset_Within_Limit(), KEY_SCH::Peeling_For_Known_Trip(), Perform_Post_GCM_Steps(), Pick_Compare_TOP(), CIO_RWTRAN::Predicate_Write(), Propagate_16bit_Info(), r_apply_l_const(), r_assemble_binary(), r_assemble_op(), Readers_Reach(), Reback_Size32_Instr(), REGION_Entry_PREG_Whirl(), REGION_Exit_PREG_Whirl(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), Repl_Size16_Instr::Replace_LDU(), Repl_Size16_Instr::Replace_Restricted_Imm_OP(), Search_For_Previous_Constant(), shl_add_sequence(), Simulated_Op_Real_Inst_Words(), Special_Sequence(), Special_Store_Load_Sequence(), sPrint_TN(), test_is_replaced(), TN_Can_Use_Constant_Value(), TN_is_zero(), TN_Value_At_Op(), Unroll_Do_Loop(), Unroll_Do_Loop_Fully(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), unroll_multi_make_remainder_loop(), Unroll_Replicate_Body(), Update_preg_to_tn_array(), Vector_Can_Add_Op(), Vector_Offset_Value(), Verify_Operand(), and CIO_RWTRAN::Write_Removal().
| #define TN_var | ( | t | ) | (CAN_USE_TN(t)->u2.var) |
Definition at line 456 of file tn.h.
Referenced by addr_base_offset(), addr_subtract(), Adjust_Addr_TNs(), Adjust_Opnd_Name(), Analyze_OP_For_Unwind_Info(), Build_Fde_For_Proc(), KEY_SCH::Build_OPR(), CGEMIT_Call(), CGSPILL_OP_Spill_Location(), CGTARG_Can_Be_Speculative(), CGTARG_TN_For_Asm_Operand(), Compose_Addr(), Compose_Addr_offset(), Compute_Reg_State(), Constant_Operand0(), EBO_hash_op(), EBO_Lea_Insertion(), KEY_SCH::Emit_TN(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Op(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_Abs(), Expand_Add(), Expand_Const(), Expand_Fast_Sqrt(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Lda(), Expand_Load(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Neg(), Expand_Split_Load(), Expand_Split_Store(), Expand_Store(), Expand_Sub(), find_duplicate_mem_op(), Fold_Constant_Expression(), Gen_Adjusted_TN(), Get_64Bit_High_Addr(), Get_TN_Range(), Get_TN_Value(), Get_Vector_Symbol(), iadd_special_case(), List_Based_Fwd::Is_OP_Better(), Priority_Selector::Is_OP_Better(), Is_OP_Spill_Load(), Is_OP_Spill_Store(), merge_memory_offsets(), Modify_Asm_String(), OP_Has_Restrictions(), put_TN_comment(), r_apply_l_const(), r_assemble_binary(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), Search_For_Previous_Symbol(), sPrint_TN(), and TN_To_Index().
Definition at line 673 of file tn.h.
Referenced by Create_Dedicated_TN(), Create_Unique_Defs_For_TNs(), Dup_TN(), Gen_Register_TN(), Get_Memory_OP_Predicate_Info(), Init_TNs_For_PU(), Init_TNs_For_REGION(), Modify_16bit_TNs(), Print_TNs(), and Propagate_16bit_Info().
| enum DEF_KIND |
| enum TN_RELOCS |
| TN* Build_Dedicated_TN | ( | ISA_REGISTER_CLASS | rclass, | |
| REGISTER | reg, | |||
| INT | size | |||
| ) |
Definition at line 623 of file tnutil.cxx.
References DEFAULT_RCLASS_SIZE.
Referenced by Analyze_Spilling_Global_Register(), Assign_Registers_For_OP(), Can_OP_Move(), CGTARG_Gen_Dedicated_Subclass_TN(), CGTARG_TN_For_Asm_Operand(), Clock_TN(), Create_LR_For_TN(), Ctaid_TN(), Ebx_TN(), EETARG_High_Level_Procedure_Exit(), EETARG_Init_Entry_Exit_Code(), Exp_Call(), Exp_Intrinsic_Call(), Exp_Landingpadentry_Intrinsic(), Exp_Savexmms_Intrinsic(), Exp_Simulated_Op(), Expand_Extract_Bits(), Expand_Multiply(), EDGE_PROFILE::Gen_Call_BB(), Gen_Register_TN(), Gen_SWP_Branch(), Get_Float_Return_Reg_Sum(), Get_Return_Reg_Sum(), GRA_GRANT_Local_Register(), Handle_ASM(), Hilo_TN(), Init_Callee_Saved_Regs_for_REGION(), Init_Live_LRs_Vector(), Is_Non_Allocatable_Reg_Available(), Is_Reg_Available(), LR_For_TN(), LRANGE_Spill(), LUNIT_Spill(), Nctaid_TN(), Ntid_TN(), PREG_To_TN(), EDGE_PROFILE::Prepare_Call_Init_Return_BB(), Process_Group_Register_Reference(), Rflags_TN(), Rip_TN(), Scan_Complement_BB_For_Referenced_TNs(), Spill_Global_Register(), SWP_Loop_Init_Fini(), Tid_TN(), Unused_TN(), and X87_cw_TN().
| TN* Build_RCLASS_TN | ( | ISA_REGISTER_CLASS | rclass | ) | [inline] |
Definition at line 796 of file tn.h.
References Gen_Register_TN(), REGISTER_bit_size, and REGISTER_CLASS_last_register.
Referenced by Alloc_Result_TNs(), CGTARG_TN_For_Asm_Operand(), Check_Divide(), Convert_Regs(), EETARG_Save_Extra_Callee_Tns(), Exp_Call(), Exp_Indirect_Branch(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Expand_Abs(), Expand_Branch(), Expand_Compare_And_Select(), Expand_F10_Div_By_Const(), Expand_F10_Recip(), Expand_F4_Div_By_Const(), Expand_F4_Recip(), Expand_F8_Div_By_Const(), Expand_F8_Recip(), Expand_Float_Compares(), Expand_Float_To_Int(), Expand_Float_To_Int_Floor(), Expand_I4_I4_Divide(), Expand_Int_Comparison(), Expand_Integer_Divide_By_Constant(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F10_Divide(), Expand_Intel_Max_Thr_F4_Divide(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Divide(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F10_Divide(), Expand_Intel_Min_Lat_F4_Divide(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Divide(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_Mod(), Expand_Normalize_Logical(), Expand_Power_Of_2_Divide(), Expand_Power_Of_2_Rem(), Expand_Recip_Sqrt(), Expand_SGI_F10_Divide(), Expand_SGI_F4_Divide(), Expand_SGI_F8_Divide(), Expand_SGI_Sqrt(), Gen_Predicate_TN(), Generate_Entry(), Init_Callee_Saved_Regs_for_REGION(), Modify_16bit_Ops(), Pop_Stack(), Pop_Stack_Reg(), Repair_Call_BB(), Repair_Entry_BB(), and Swap().
Definition at line 803 of file tn.h.
References DevWarn, Gen_Register_TN(), rc, TN_flags, TN_FPU_INT, TN_is_register, TN_register_class, and TN_size.
Referenced by CGTARG_Generate_Branch_Cloop(), CIO_RWTRAN::CICSE_Transform(), Convert_Imm_Add(), Convert_Imm_Mul(), Convert_Regs(), Create_TN_Pair(), Exp_Deposit_Bits(), Exp_Deposit_Bits2(), Exp_Extract_Bits(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Ldst(), Exp_Prefetch(), Exp_Select_And_Condition(), Exp_Select_And_VLdid(), Exp_Set_Bits(), Expand_64Bit_Shift(), Expand_Abs(), Expand_Binary_Nor(), Expand_Branch(), Expand_Cmov(), Expand_Complex_Divide(), Expand_Complex_Multiply(), Expand_Constant_Multiply(), Expand_Convert_Length(), Expand_Divide(), Expand_DivRem(), Expand_Equal(), Expand_Expr(), Expand_Fast_Sqrt(), Expand_Float_To_Float_Floor(), Expand_Float_To_Float_Floorf(), Expand_Float_To_Int_Ceil(), Expand_Float_To_Int_Floor(), Expand_Greater(), Expand_Greater_Equal(), Expand_High_Multiply(), Expand_Int_Cmp_With_Branch(), Expand_Int_To_Float(), Expand_Int_To_Int(), Expand_Int_To_Long_Double(), Expand_Integer_Divide_By_Constant(), Expand_INTRN_ANINT(), Expand_Less(), Expand_Less_Equal(), Expand_Load(), Expand_Logical_And(), Expand_Logical_Or(), Expand_Long_Double_To_Int(), Expand_Madd(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_Mod(), Expand_Neg(), Expand_non_SSE2_Float_Floor(), Expand_non_SSE2_Float_Select(), Expand_Not_Equal(), Expand_Power_Of_2_Divide(), Expand_Recip(), Expand_Reduce_Add(), Expand_Reduce_Max(), Expand_Reduce_Min(), Expand_Reduce_Mpy(), Expand_Rem(), Expand_Replicate(), Expand_Select(), Expand_Shuffle(), Expand_Split_Abs(), Expand_Split_BOP(), Expand_Split_Branch(), Expand_Split_Int_Cmp(), Expand_Split_Load(), Expand_Split_Multiply(), Expand_Split_Select(), Expand_Split_Shift(), Expand_Split_Store(), Expand_Split_UOP(), Expand_Store(), Expand_Unsigned_Float_To_Int_m32(), Expand_Unsigned_Int_To_Float_m32(), Expand_Unsigned_Long_To_Float(), Extend_Dividend(), KEY_SCH::Gen_PKE(), Gen_Second_Immd_Op(), Generate_Copy_TNs(), Generate_Entry(), Generate_Exit(), Get_Complement_TN(), Handle_ALLOCA(), Handle_STID(), Init_Callee_Saved_Regs_for_REGION(), Localize_or_Replace_Dedicated_TNs(), Normalize_Operand(), KEY_SCH::Peeling_For_Unknown_Trip(), Preallocate_Single_Register_Subclasses(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), shladd(), Spill_Global_Register(), Unroll_Do_Loop(), unroll_guard_unrolled_body(), Unroll_Make_Remainder_Loop(), and unroll_multi_make_remainder_loop().
Definition at line 828 of file tn.h.
References Gen_Register_TN(), MTYPE_RegisterSize, rc, and Register_Class_For_Mtype().
Referenced by Adjust_Addr_TNs(), Allocate_Result_TN(), Apply_Back_Sub_Invariant(), CG_Instrument_Arcs(), CGTARG_Load_From_Memory(), CGTARG_Store_To_Memory(), CGTARG_TN_For_Asm_Operand(), Check_Divide(), Exp_Call(), Exp_Compare_and_Swap(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Ldst(), Exp_Select_And_Condition(), Exp_Spadjust(), Expand_32Bit_Int_Less_Equal(), Expand_64Bit_Abs(), Expand_64Bit_ALU_OP(), Expand_64Bit_Compare(), Expand_Abs(), Expand_Add(), Expand_Bool_Comparison(), Expand_Branch(), Expand_Composed_Load(), Expand_Composed_Store(), Expand_Const(), Expand_Constant_Multiply(), Expand_Convert_Length(), Expand_Count_Leading_Zeros(), Expand_Divide(), Expand_Extract_Bits(), Expand_F10_Div_By_Const(), Expand_F10_Recip(), Expand_F4_Div_By_Const(), Expand_F4_Recip(), Expand_F8_Div_By_Const(), Expand_F8_Recip(), Expand_Fast_Power_Of_2_Rem(), Expand_Float_Compares(), Expand_Float_Div_By_Pow2(), Expand_Float_To_Int(), Expand_Float_To_Int_Floor(), Expand_Float_To_Int_Trunc(), Expand_Float_To_Long_m32(), Expand_Flop(), Expand_High_Multiply(), Expand_I4_I4_Divide(), Expand_Immediate_Into_Register(), Expand_Int_Cmp(), Expand_Int_Less_Equal(), Expand_Int_To_Float(), Expand_Int_To_Int(), Expand_Int_To_Long_Double(), Expand_Integer_Divide_By_Constant(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F10_Divide(), Expand_Intel_Max_Thr_F4_Divide(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Divide(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F10_Divide(), Expand_Intel_Min_Lat_F4_Divide(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Divide(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_INTRN_ANINT(), Expand_Lda_Label(), Expand_Load(), Expand_Long_To_Float_m32(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Mod(), Expand_Mtype_Immediate_Into_Register(), Expand_Multiply(), Expand_Power_Of_2_Divide(), Expand_Power_Of_2_Mod(), Expand_Power_Of_2_Rem(), Expand_Recip_Sqrt(), Expand_Select(), Expand_SGI_F10_Divide(), Expand_SGI_F4_Divide(), Expand_SGI_F8_Divide(), Expand_SGI_Sqrt(), Expand_Split_Leading_Zeros(), Expand_Store(), Expand_Sub(), Expand_Unsigned_Float_To_Int_m32(), Expand_Unsigned_Int_To_Float_m32(), Expand_Vote(), Gen_Prolog_LDIMM64(), Get_64Bit_High_Addr(), Get_64Bit_High_TN(), Handle_ALLOCA(), Handle_LDID(), Handle_STID(), Load_82bit_Constant(), PREG_To_TN(), and Remove_Invariant_Predicates().
Definition at line 341 of file tnutil.cxx.
References Check_TN_Vec_Size(), Gen_TN(), Is_True, Last_TN, NULL, REGISTER_UNDEFINED, Reset_TN_is_global_reg, Set_TN_number, Set_TN_spill, TN_Allocate_Register, TN_is_constant, TN_is_dedicated, TN_is_gra_homeable, TN_is_rematerializable, TN_number, and TNvec.
Referenced by Apply_Back_Sub_Invariant(), Apply_Back_Sub_Variant(), Apply_Interleave(), BB_Move_Delay_Slot_Op(), Can_Be_Tail_Call(), CGSPILL_Force_Rematerialization_For_BB(), SCHEDULER::Commit_Schedule(), Create_Unique_Defs_For_TNs(), Dup_TN_Even_If_Dedicated(), EBO_Fix_Same_Res_Op(), REGION::Edge_Splitting(), Expand_Constant_Multiply(), Get_Local_TN_For_Global(), Hoist_MOVL(), hoist_predicate_of_duplicate_complement(), Interleave_Base_Update(), Lookup_Register_TN(), LUNIT_Spill(), Needs_Rename(), KEY_SCH::New_live_in_tn(), Remove_Invariant_Predicates(), Rename_Locals(), Rename_TN_In_Range(), SCHEDULER::Renaming(), Special_Sequence(), KEY_SCH::tn_renaming(), and unroll_names_init_tn().
Definition at line 377 of file tnutil.cxx.
References Dup_TN(), REGISTER_UNDEFINED, Reset_TN_is_dedicated, TN_Allocate_Register, and TN_is_dedicated.
Referenced by BB_Split_Entry_Glue(), BB_Split_Exit_Glue(), CGPREP_Dup_TN(), Constant_Operand0(), LRANGE_MGR::Create_Duplicate(), delete_reload_across_dependency(), Expand_Max(), Expand_Min(), Expand_Statement(), Fix_Xfer_Dependences(), Localize_Global_Param_Reg(), Localize_Global_Return_Reg(), Localize_Global_Return_Reg_Def(), Make_Dedicated_Save_TN(), Spill_Live_Range(), and Target_Unique_Exit().
Definition at line 1244 of file tnutil.cxx.
References INT, NULL, r0, TN_register, and TN_register_class.
Referenced by Localize_or_Replace_Dedicated_TNs().
Definition at line 1075 of file tnutil.cxx.
References buf, FALSE, fprintf(), Is_True, s, sPrint_TN(), and strlen().
Definition at line 912 of file tnutil.cxx.
References EC_Unimplemented, ErrMsg(), FmtAssert, Gen_Label_TN(), Gen_Literal_TN(), Gen_Symbol_TN(), NULL, Targ_TN_Add(), TN_has_value, TN_is_constant, TN_is_label, TN_is_symbol, TN_label, TN_offset, TN_relocs, TN_size, TN_value, and TN_var.
Referenced by EBO_Adjust_Pred_Branch_Target(), Expand_Misaligned_Load(), and Fill_From_Successor().
| TN* Gen_Enum_TN | ( | ISA_ENUM_CLASS_VALUE | ecv | ) |
Definition at line 814 of file tnutil.cxx.
References Gen_TN(), Set_TN_enum, Set_TN_is_constant, Set_TN_is_enum, and Set_TN_size.
Referenced by CG_Instrument_Arcs(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Remainder_Branch(), CGTARG_Perform_THR_Code_Generation(), Change_ld_Form(), Combine_L1_L2_Prefetches(), Connect_Clones_with_CHK(), copy_rf_sequence(), Do_Build_Recovery_Block(), Exp_Call(), Exp_Indirect_Branch(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Pred_Compare(), Exp_Prefetch(), Exp_Return(), Expand_Bool_To_Int(), Expand_Branch(), Expand_Compare_And_Select(), Expand_Const(), Expand_F10_Div_By_Const(), Expand_F10_Recip(), Expand_F4_Div_By_Const(), Expand_F4_Recip(), Expand_F8_Div_By_Const(), Expand_F8_Recip(), Expand_Float_Compares(), Expand_Float_Div_By_Pow2(), Expand_Float_To_Float(), Expand_Float_To_Int(), Expand_Float_To_Int_Floor(), Expand_Flop(), Expand_I4_I4_Divide(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F10_Divide(), Expand_Intel_Max_Thr_F4_Divide(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Divide(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F10_Divide(), Expand_Intel_Min_Lat_F4_Divide(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Divide(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_Load(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_Recip_Sqrt(), Expand_SGI_F10_Divide(), Expand_SGI_F4_Divide(), Expand_SGI_F8_Divide(), Expand_SGI_Sqrt(), Expand_Store(), fadd_fmult(), fneg_sequence(), Force_Chk_Fail(), EDGE_PROFILE::Gen_Call_BB(), Gen_SWP_Branch(), Gen_SWP_Branch_Predict(), Insert_CHK(), Local_Insert_CHK(), Make_Branch_Conditional(), IF_CONVERTOR::Merge_Area(), REGION_STRIDE_PREFETCH::Mk_Prefetch_OP(), Optimize_Select(), Resolve_Conditional_Branch(), store_sequence(), and Undo_SWP_Branch().
Definition at line 873 of file tnutil.cxx.
References Gen_TN(), Pointer_Size, Set_TN_is_constant, Set_TN_is_label, Set_TN_size, TN_label, and TN_offset.
Referenced by Add_Goto_Op(), BB_Retarget_Branch(), Build_CFG(), Build_Recovery_Block(), CG_Instrument_Arcs(), Convert_Branch(), Create_Stub_BB(), EETARG_Generate_PIC_Entry_Code(), Exp_Intrinsic_Call(), Exp_Savexmms_Intrinsic(), Expand_64Bit_Branch(), Expand_Cmov(), Expand_Fast_Power_Of_2_Rem(), Expand_Int_Cmp_With_Branch(), Expand_Int_To_Long_Double(), Expand_Long_Double_To_Int(), Expand_non_SSE2_Float_Select(), Expand_Ordered_Branch(), Expand_Split_Abs(), Expand_Split_Branch(), Expand_Split_Int_Cmp(), Expand_Split_Select(), Expand_Split_Shift(), Expand_Unsigned_Int_To_Float_m32(), Expand_Unsigned_Long_To_Float(), Finalize_BB(), Fixup_Long_Branches(), Gen_Adjusted_TN(), Initialize_BB_Info(), Insert_CHK(), Insert_Goto_BB(), Local_Insert_CHK(), KEY_SCH::Loop_Peeling(), KEY_SCH::Peeling_For_Unknown_Trip(), REGION_Exit_Whirl_Labels(), Target_Cond_Branch(), Target_Logif_BB(), Unroll_Do_Loop_guard(), Unroll_Dowhile_Loop(), unroll_guard_unrolled_body(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), unroll_multi_make_remainder_loop(), and Unroll_Replicate_Body().
Definition at line 765 of file tnutil.cxx.
References Gen_TN(), Hash_Table, HASH_VALUE, INT, Is_True, MEM_pu_pool, NULL, Search_For_Previous_Constant(), Set_TN_has_value, Set_TN_is_constant, Set_TN_size, and TN_value.
Referenced by Add_PregTNs_To_BB(), Adjust_Addr_TNs(), KEY_SCH::Adjust_incr(), KEY_SCH::Adjust_ofst(), Apply_Back_Sub_Invariant(), Build_C3_VITERBI(), CG_Instrument_Arcs(), CGSPILL_Load_From_Memory(), CGTARG_Analyze_Branch(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Countdown_Loop(), CGTARG_Generate_Remainder_Branch(), CGTARG_Handle_Bundle_Hazard(), CGTARG_Load_From_Memory(), CGTARG_LOOP_Optimize(), CGTARG_Process_Asm_m_constraint(), CGTARG_Store_To_Memory(), CGTARG_TN_For_Asm_Operand(), Check_Divide(), compare_bit(), Compose_Addr(), Compose_Addr_offset(), condition_optimization(), Constant_Operand0(), Constant_Operand1(), Convert_Imm_Add(), Convert_Imm_And(), Convert_Imm_Cmp(), Convert_Imm_Mul(), Convert_Imm_Or(), Convert_Imm_Xor(), CIO_RWTRAN::Copy_Ops_To_Epilog(), delete_reload_across_dependency(), delete_subset_mem_op(), EBO_Fold_Load_Duplicate(), EBO_Lea_Insertion(), EETARG_Fixup_Entry_Code(), EETARG_Restore_Extra_Callee_Tns(), EETARG_Save_Pfs(), Exp_Call(), Exp_Compare_and_Swap(), Exp_Deposit_Bits(), Exp_Deposit_Bits2(), Exp_Extract_Bits(), Exp_Fetch_and_And(), Exp_Fetch_and_Or(), Exp_Fetch_and_Sub(), Exp_Fetch_and_Xor(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Ldst(), Exp_Noop(), Exp_Pred_Set(), Exp_Return(), Exp_Savexmms_Intrinsic(), Exp_Select_And_Condition(), Exp_Set_Bits(), Exp_Simulated_Op(), Exp_True_False_Preds_For_Block(), Expand_32Bit_Int_Equal(), Expand_32Bit_Int_Greater_Equal(), Expand_32Bit_Int_Less_Equal(), Expand_64Bit_Abs(), Expand_64Bit_ALU_OP(), Expand_64Bit_Branch(), Expand_64Bit_Cvtl(), Expand_64Bit_Load(), Expand_64Bit_Shift(), Expand_64Bit_Unary_OP(), Expand_Abs(), Expand_Add(), Expand_Binary_Complement(), Expand_Binary_Nor(), Expand_Bool_Comparison(), Expand_Bool_To_Int(), Expand_Branch(), Expand_C3_aadda(), Expand_C3_DMAC(), Expand_C3_DMAC_A(), Expand_C3_DMULT_A(), Expand_C3_FFTLD(), Expand_C3_FFTST(), Expand_C3_LD(), Expand_C3_LEAD(), Expand_C3_lead(), Expand_C3_MAC(), Expand_C3_MAC_A(), Expand_C3_MAC_AR(), Expand_C3_MAC_I(), Expand_C3_MACD(), Expand_C3_Mode1(), Expand_C3_Mode10(), Expand_C3_Mode11(), Expand_C3_Mode2(), Expand_C3_Mode3(), Expand_C3_Mode4(), Expand_C3_Mode5(), Expand_C3_Mode6(), Expand_C3_Mode7(), Expand_C3_Mode8(), Expand_C3_Mode9(), Expand_C3_mul(), Expand_C3_MULA_A(), Expand_C3_MULA_AR(), Expand_C3_MULA_I(), Expand_C3_nega(), Expand_C3_ROUND(), Expand_C3_SAADD_A(), Expand_C3_saadda_a(), Expand_C3_SAADDH_A(), Expand_C3_SADDHA(), Expand_C3_SADDHA_A(), Expand_C3_SAMULH_A(), Expand_C3_SAVE_DACC(), Expand_C3_shlafa_i(), Expand_C3_ST(), Expand_C3_subc(), Expand_Complex_Divide(), Expand_Complex_Multiply(), Expand_Composed_Load(), Expand_Composed_Store(), Expand_Const(), Expand_Constant_Multiply(), Expand_Convert_Length(), Expand_COPY_ADDR(), Expand_Copy_Extension(), Expand_Count_Leading_Zeros(), Expand_Divide(), Expand_DivRem(), Expand_Expr(), Expand_Extract_Bits(), Expand_Fast_Power_Of_2_Rem(), Expand_Float32_Const(), Expand_Float64_Const(), Expand_Float_Compares(), Expand_Float_Div_By_Pow2(), Expand_Float_To_Float(), Expand_Float_To_Int(), Expand_Float_To_Int_Ceil(), Expand_Float_To_Int_Floor(), Expand_Float_To_Int_Tas(), Expand_Float_To_Int_Trunc(), Expand_High_Multiply(), Expand_I4_I4_Divide(), Expand_Immediate(), Expand_INIT_ADDR(), Expand_Int_Cmp_With_Branch(), Expand_Int_Comparison(), Expand_Int_Equal(), Expand_Int_Greater_Equal(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Int_To_Float_Tas(), Expand_Int_To_Long_Double(), Expand_Int_To_Vect_Tas(), Expand_Integer_Divide_By_Constant(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_Lda_Label(), Expand_Left_Rotate(), Expand_Load(), Expand_Logical_And(), Expand_Logical_Not(), Expand_Logical_Or(), Expand_Long_Double_To_Int(), Expand_LONGLONG_Const(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Mod(), Expand_MPY_32(), Expand_MPY_32_16(), Expand_Multiply(), Expand_Multiply_Into_Shifts(), Expand_Neg(), Expand_non_SSE2_Float_Floor(), Expand_Normalize_Logical(), Expand_OP(), Expand_Power_Of_2_Divide(), Expand_Power_Of_2_Mod(), Expand_Power_Of_2_Rem(), Expand_Recip_Sqrt(), Expand_Reduce_Add(), Expand_Reduce_Max(), Expand_Reduce_Min(), Expand_Reduce_Mpy(), Expand_Rem(), Expand_Replicate(), Expand_Rrotate(), Expand_SAVE_ADDR(), Expand_Select(), Expand_SET_ADDRSIZE(), Expand_Set_CircBuf(), Expand_SGI_Sqrt(), Expand_Shift(), Expand_Shuffle(), Expand_Special_And_Immed(), Expand_Split_Abs(), Expand_Split_BOP(), Expand_Split_Branch(), Expand_Split_Cvtl(), Expand_Split_Int_Cmp(), Expand_Split_Leading_Zeros(), Expand_Split_Load(), Expand_Split_Multiply(), Expand_Split_Select(), Expand_Split_Shift(), Expand_Split_Store(), Expand_Split_UOP(), Expand_SSE3_Long_Double_To_Int(), Expand_Statement(), Expand_Store(), Expand_Sub(), Expand_Unsigned_Float_To_Int_m32(), Expand_Unsigned_Int_To_Float_m32(), Expand_Unsigned_Long_To_Float(), Expand_Vote(), Extend_Dividend(), Fixup_32_Bit_Op(), Fixup_Ldst_Offset(), Fold_Constant_Expression(), Gen_Adjusted_TN(), EDGE_PROFILE::Gen_Call_BB(), Gen_Implicit_Prefetches(), Gen_Literal_TN_Ex(), Gen_Literal_TN_Of_Mtype(), KEY_SCH::Gen_PKE(), Gen_Prolog_LDIMM64(), Gen_Second_Immd_Op(), Generate_Cmp_Ctrl_TN(), Generate_Extract(), Get_64Bit_High_Addr(), Get_64Bit_High_TN(), Get_Liternal_TN(), Handle_ALLOCA(), Handle_CONDBR(), Handle_DEALLOCA(), Handle_ILDBITS(), Handle_ILOAD(), Handle_ISTBITS(), Handle_ISTORE(), KEY_SCH::Handle_Ldst_Addiu(), Handle_STID(), Handle_Trap(), Insert_Stop_Bits(), Interleave_Base_Update(), Load_82bit_Constant(), KEY_SCH::Loop_Peeling(), GROUP_ASSEMBLE::MakeNop2Slot(), merge_memory_offsets(), REGION_STRIDE_PREFETCH::Mk_Add_OP(), move_ext_is_replaced(), Normalize_Operand(), Op_In_Working_Set(), OP_Replace_With_Noop(), Pad_Cycles_Before(), KEY_SCH::Peeling_For_Unknown_Trip(), REGION_STRIDE_PREFETCH::Phased_Multi_Stride_Ins(), Pick_Compare_TOP(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), r_assemble_op(), Reback_Size32_Instr(), Remove_Invariant_Predicates(), Repl_Size16_Instr::Replace_ADDI(), shl(), shladd(), Special_Sequence(), Store_To_Temp_Stack(), REGION_STRIDE_PREFETCH::Strong_Single_Stride_Ins(), SWP_Append_Noop(), SWP_Exp_COPY(), SWP_Loop_Init_Fini(), test_is_replaced(), Unroll_Do_Loop(), Unroll_Do_Loop_guard(), unroll_guard_unrolled_body(), Unroll_Make_Remainder_Loop(), unroll_multi_bb(), unroll_multi_make_remainder_loop(), Unroll_Replicate_Body(), and Vector_Is_Possible().
Definition at line 897 of file tn.h.
References Gen_Literal_TN(), INT32_MAX, and INT32_MIN.
Referenced by Exp_Ldst().
Definition at line 908 of file tn.h.
References Gen_Literal_TN(), and MTYPE_is_size_double.
Referenced by Expand_Add(), Expand_Binary_And(), Expand_Binary_Or(), Expand_Binary_Xor(), Expand_Bool_To_Int(), Expand_Divide(), Expand_Mod(), Expand_Multiply(), Expand_Shift(), and Expand_Sub().
| TN* Gen_Register_TN | ( | ISA_REGISTER_CLASS | rclass, | |
| INT | size | |||
| ) |
Definition at line 671 of file tnutil.cxx.
References Build_Dedicated_TN(), Check_TN_Vec_Size(), EC_TN_Size, ErrMsg(), FmtAssert, Gen_TN(), Is_True, Last_TN, REGISTER_CLASS_allocatable, REGISTER_CLASS_name, REGISTER_CLASS_register_count, REGISTER_MIN, REGISTER_SET_EmptyP(), Set_TN_is_float, Set_TN_number, Set_TN_register_class, Set_TN_size, and TNvec.
Referenced by Adjust_GP_Entry(), Build_C3_INIT_PTR(), Build_RCLASS_TN(), Build_TN_Like(), Build_TN_Of_Mtype(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Countdown_Loop(), CGTARG_Generate_Remainder_Branch(), EDGE_PROFILE::EDGE_PROFILE(), Exp_COPY(), Exp_Select_And_Condition(), Exp_True_False_Preds_For_Block(), Expand_Branch(), Expand_C3_DMAC(), Expand_C3_DMAC_A(), Expand_C3_FFTLD(), Expand_C3_FFTST(), Expand_C3_LD(), Expand_C3_Mode2(), Expand_C3_Mode8(), Expand_C3_mul(), Expand_C3_SAVE_ACC(), Expand_C3_SAVE_DACC(), Expand_C3_ST(), Expand_C3_subc(), Expand_COPY_ADDR(), Expand_Float_Compares(), Expand_High_Multiply(), Expand_INIT_ADDR(), Expand_Long_Double_To_Int(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_MPY_32(), Expand_MPY_32_16(), Expand_New_Call_To_OPs(), Expand_non_SSE2_Float_Floor(), Expand_SAVE_ADDR(), Expand_SET_ADDRSIZE(), Expand_Set_CircBuf(), EDGE_PROFILE::Gen_Call_BB(), Gen_Predicate_TN(), Generate_Entry(), Generate_Exit(), Handle_Call_Site(), Handle_STID(), Init_Callee_Saved_Regs_for_REGION(), REGION_STRIDE_PREFETCH::Phased_Multi_Stride_Ins(), EDGE_PROFILE::Prepare_Instrument(), Scan_Region_BB_For_Referenced_TNs(), REGION_STRIDE_PREFETCH::Strong_Single_Stride_Ins(), SWP_Loop_Init_Fini(), and unroll_multi_make_remainder_loop().
Definition at line 838 of file tnutil.cxx.
References Gen_TN(), HASH_SYMBOL, Hash_Table, INT, MEM_pu_pool, NULL, Pointer_Size, Search_For_Previous_Symbol(), Set_TN_is_constant, Set_TN_is_symbol, Set_TN_size, Set_TN_var, TN_offset, and TN_relocs.
Referenced by Adjust_Addr_TNs(), Adjust_GP_Entry(), CGSPILL_Cost_Estimate(), CGSPILL_Load_From_Memory(), CGTARG_TN_For_Asm_Operand(), Compose_Addr_offset(), Constant_Operand0(), EBO_Lea_Insertion(), EETARG_Generate_PIC_Entry_Code(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Ldst(), Exp_Savexmms_Intrinsic(), Exp_Select_And_Condition(), Expand_Abs(), Expand_Add(), Expand_Expr(), Expand_Fast_Sqrt(), Expand_Int_To_Long_Double(), Expand_Long_Double_To_Int(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Neg(), Expand_New_Call_To_OPs(), Expand_Recip(), Expand_Split_Load(), Expand_Split_Store(), Expand_Sub(), Expand_Unsigned_Int_To_Float_m32(), Fold_Constant_Expression(), Gen_Adjusted_TN(), EDGE_PROFILE::Gen_Call_BB(), Gen_Const_Symbol_TN(), Generate_Entry(), Get_64Bit_High_Addr(), Get_TN_For_Predefined_Symbol(), Handle_Call_Site(), Handle_INTRINSIC_CALL(), and merge_memory_offsets().
Definition at line 888 of file tnutil.cxx.
References Gen_TN(), Pointer_Size, Set_TN_is_constant, Set_TN_is_tag, Set_TN_size, and TN_label.
Referenced by Gen_SWP_Branch_Predict().
Definition at line 744 of file tnutil.cxx.
References Gen_TN(), Set_TN_has_value, Set_TN_is_constant, Set_TN_size, and Set_TN_value.
Referenced by Init_Entry_Exit_Code().
Definition at line 472 of file tnutil.cxx.
References Create_Dedicated_TN(), FOR_ALL_ISA_REGISTER_CLASS(), Last_Dedicated_TN, REGISTER_allocatable, REGISTER_c2movpat, REGISTER_CLASS_c2movpat, REGISTER_CLASS_ep, REGISTER_CLASS_fone, REGISTER_CLASS_fp, REGISTER_CLASS_fzero, REGISTER_CLASS_gp, REGISTER_CLASS_last_register, REGISTER_CLASS_lc, REGISTER_CLASS_pfs, REGISTER_CLASS_ra, REGISTER_CLASS_sp, REGISTER_CLASS_true, REGISTER_CLASS_zero, REGISTER_ep, REGISTER_fone, REGISTER_fp, REGISTER_fzero, REGISTER_gp, REGISTER_lc, REGISTER_MIN, REGISTER_pfs, REGISTER_ra, REGISTER_sp, REGISTER_true, REGISTER_zero, and Set_TN_size.
Referenced by CG_Init().
Definition at line 1173 of file tnutil.cxx.
References BZERO, First_Regular_TN, Hash_Table, Last_Dedicated_TN, Last_TN, NULL, REGISTER_gp, Reset_TN_is_global_reg, Set_TN_register, Set_TN_spill, and TNvec.
Referenced by CG_PU_Initialize().
Definition at line 1215 of file tnutil.cxx.
References First_REGION_TN, Last_Dedicated_TN, Last_TN, NULL, Reset_TN_is_global_reg, Set_TN_spill, and TNvec.
Referenced by CG_Region_Initialize().
Definition at line 1266 of file tnutil.cxx.
References BB_branch_op(), FALSE, Is_Delay_Slot_Op(), OP_bb, OP_cond_def(), OP_likely, and TRUE.
Definition at line 1956 of file tnutil.cxx.
References Evaluate_Operand_Range(), and INT64.
Referenced by Adjust_Addr_TNs().
Definition at line 1094 of file tnutil.cxx.
References buf, fprintf(), Is_True, s, sPrint_TN(), strlen(), and TFile.
Referenced by Allocate_Register(), CIO_RWTRAN::Backpatch_Op_In_Prolog(), Constant_Operand0(), Constant_Operand1(), Create_Unique_Defs_For_TNs(), DB_Trace_BB(), EBO_Fix_Same_Res_Op(), EBO_Remove_Unused_Ops(), Exp_Ldst(), Exp_OP(), Exp_Select_And_Condition(), Find_BB_TNs(), find_index_and_offset(), find_previous_constant(), Fold_Constant_Expression(), hoist_predicate_of_duplicate_complement(), Localize_or_Replace_Dedicated_TNs(), Print_BB_Info(), Print_LOOPINFO(), Print_OP_No_SrcLine(), Print_TNs(), CIO_RWTRAN::Replace_Tn(), Resolve_Conditional_Branch(), Special_Sequence(), tn_info_entry_dump(), TN_LIST_Print(), TN_live_out_of(), and CIO_RWTRAN::Trace_CICSE_Changes().
Definition at line 1103 of file tnutil.cxx.
References count, fPrint_TN(), fprintf(), INT, NULL, and tmp.
Referenced by REGION_Entry_PREG_Whirl(), and REGION_Exit_PREG_Whirl().
Definition at line 1136 of file tnutil.cxx.
References First_Regular_TN, fprintf(), Hash_Table, HASH_TABLE_SIZE, i, INT, Last_Dedicated_TN, Last_TN, NULL, p, Print_TN(), TFile, TNvec, and TRUE.
Referenced by Trace_TN().
Definition at line 840 of file tn.h.
References TN_is_constant, and TN_is_dedicated.
Referenced by Assign_Virtual_Register(), Build_Complement_Interference_Graph(), Complement_TN_Reference(), LRANGE_MGR::Create_Complement(), GRA_BB::Create_Global_Interferences(), Create_Live_BB_Sets(), Create_LRANGEs(), Do_Build_Recovery_Block(), Get_Possibly_Wired_Reference(), Look_For_16bit_Ops(), Make_Fine_Grained_Interferences(), Make_Target_Dependent_Region_Interferences(), Needs_Rename(), OP_Is_Copy_From_Save_TN(), Region_TN_Reference(), Scan_Region_BB_For_Referenced_TNs(), and TN_Allocate_Register().
Definition at line 575 of file tn.h.
References TN_is_dedicated, TN_is_fone_reg, TN_is_fzero_reg, TN_is_register, TN_is_true_pred, and TN_is_zero_reg.
Referenced by Add_Bkwd_REG_Arcs(), Append_Succ(), CG_LOOP::Build_CG_LOOP_Info(), Build_Cyclic_Arcs(), Build_Outgoing_Edges(), Can_Def_Be_Moved(), Can_Use_Be_Moved(), CG_LOOP_DEF::CG_LOOP_DEF(), CG_LOOP_OP_is_live(), CGTARG_Dependence_Required(), cmovable_op(), Collect_Results(), KEY_SCH::Collect_Sched_Info(), Convert_Goto_To_If(), copy_simplification(), Create_GRA_BB_Call_Spill_Block(), _tagRGN_CFG_PATH_INFO::Derive_RGN_CFG_PATH_INFO_from_BB_Node(), Detect_SWP_Constraints(), Do_Build_Recovery_Block(), Find_BB_TNs(), find_duplicate_op(), find_previous_constant(), Fix_Recurrences_Before_Unrolling(), KEY_SCH::Gen_Kernel_Info(), CG_LOOP_DEF::Get(), GRA_LIVE_Compute_Local_Info(), hoist_predicate_of_duplicate_complement(), Induction_Variables_Removal(), LOOP_INVAR_CODE_MOTION::It_Is_Constant_TN(), Live_Init(), OP_Refs_TN_Reg(), OPs_Are_Dependent(), Predicate_Block(), Rename_TNs_For_BB(), SWP_Emit(), TN_2_DEFS_VECTOR_MAP::TN_2_DEFS_VECTOR_MAP(), TN_DU_MAP::TN_DU_MAP(), Unroll_Make_Remainder_Loop(), FAVOR_DELAY_HEUR::Upward_Code_Motion_Inc_Live_Range_Greatly(), and SCHED_DFLOW_MGR::Upward_Sched_Interfere_Nested_Rgns_LiveRanges().
Definition at line 851 of file tn.h.
References TN_is_dedicated, and TN_register_and_class.
Referenced by Adjust_Entry().
Definition at line 569 of file tn.h.
References TN_has_value, TN_is_register, TN_is_zero_reg, and TN_value.
Referenced by BB_Split_Entry_Glue(), BB_Split_Exit_Glue(), Exp_Intrinsic_Op(), Exp_Prefetch(), Expand_Branch(), Handle_ALLOCA(), Null_Ptr_Deref_Spec(), and Pick_Compare_TOP().
| struct op* TN_Reaching_Value_At_Op | ( | TN * | tn, | |
| struct op * | op, | |||
| DEF_KIND * | kind, | |||
| BOOL | reaching_def | |||
| ) | [read] |
Definition at line 1294 of file tnutil.cxx.
References BB_call, BB_first_op, BB_last_op, BB_rotating_kernel, BB_Unique_Predecessor(), BB_Unique_Successor(), BBLIST_item, BOOL, FALSE, FOR_ALL_BB_OPs, FOR_ALL_BB_PREDS, FOR_ALL_BB_SUCCS, GRA_LIVE_Phase_Invoked, GRA_LIVE_TN_Live_Into_BB(), GRA_LIVE_TN_Live_Outof_BB(), INT, Is_OP_Cond(), live_in(), live_out(), MAX_BB_THRESHOLD, NULL, OP_bb, OP_Defs_Reg(), OP_Defs_TN(), OP_has_predicate, OP_next, OP_opnd, OP_PREDICATE_OPND, OP_prev, OP_Refs_Reg(), OP_Refs_TN(), p1, p2, rc, REG_LIVE_Into_BB(), REG_LIVE_Outof_BB(), REGISTER_UNDEFINED, TN_register, TN_register_class, TRUE, VAL_COND_DEF, VAL_COND_USE, VAL_KNOWN, and VAL_UNKNOWN.
Referenced by AND_Predicate_To_OP(), CGTARG_Analyze_Compare(), Check_BB_For_HB_Suitability(), PARTITION_GRAPH::Collect_Info(), PARTITION_GRAPH::Copy_To(), Create_Chance_For_MLBR(), PARTITION_GRAPH_NODE::Del_Related_TN(), Exp_True_False_Preds_For_Block(), Find_Def_Of_TN(), Find_Reaching_Def(), Is_Pointer(), PARTITION_GRAPH::Look_Partition_For_And_Type(), PARTITION_GRAPH::Look_Partition_For_Or_Type(), OP_Base_Offset_TNs(), Remove_Non_Definite_Dependence(), Similar_Ptr_Offset_ok(), TN_Value_At_Op(), and Unroll_Dowhile_Loop().
Definition at line 1736 of file tnutil.cxx.
References FALSE, INT, Lmt_DevWarn, OP_copy, OP_COPY_OPND, OP_iadd, OP_ior, OP_opnd, Rematerializable_IntConst(), TN_has_value, TN_is_constant, TN_is_rematerializable, TN_is_zero_reg, TN_Reaching_Value_At_Op(), TN_value, TRUE, and VAL_KNOWN.
Referenced by Check_Divide(), Convert_If_To_Goto(), Expand_Divide(), Expand_DivRem(), Expand_Mod(), Expand_Rem(), and Opcode_Heuristic().
Definition at line 771 of file tn.h.
References FALSE, REGISTER_UNDEFINED, TN_register, TN_register_and_class, and TRUE.
Referenced by addr_base_offset(), Analyze_Spilling_Live_Range(), CG_DEP_Mem_Ops_Offsets_Overlap(), CGPREP_Same_Res_Opnd(), CGTARG_Adjust_Latency(), CGTARG_Copy_Operand(), CGTARG_Dependence_Required(), CGTARG_Perform_THR_Code_Generation(), Check_No_Use_Between(), Compose_Addr(), Constant_Operand0(), Convert_Imm_Add(), Convert_Imm_Mul(), Convert_Regs(), copy_simplification(), Create_GRA_BB_Call_Spill_Block(), delete_reload_across_dependency(), Eager_Ptr_Deref_Spec(), EBO_Fold_Load_Duplicate(), EBO_Identify_Base_and_Offset(), EBO_Lea_Insertion(), EBO_Load_Execution(), find_index_and_offset(), Fold_Constant_Expression(), get_mem_dep(), hoist_predicate_of_duplicate_complement(), PARTITION_GRAPH::Look_Partition_For_And_Type(), PARTITION_GRAPH::Look_Partition_For_Or_Type(), Match_Chk_Ld(), move_ext_is_replaced(), CG_THR::OP_Has_Restrictions(), Op_In_Working_Set(), OP_Reads_Dedicated_TN(), OP_Writes_Dedicated_TN(), Preallocate_Single_Register_Subclasses(), Redundancy_Elimination(), Similar_Ptr_Addrs_Match(), Special_Sequence(), Spill_Live_Range(), and Verify_Instruction().
Definition at line 111 of file tnutil.cxx.
Referenced by Adjust_GP_Entry(), Expand_New_Call_To_OPs(), Generate_Entry(), and Handle_Call_Site().
Definition at line 178 of file tnutil.cxx.
Referenced by convert_stmt_list_to_OPs(), Convert_WHIRL_To_OPs(), Create_Unique_Defs_For_TNs(), and Init_TNs_For_REGION().
Definition at line 176 of file tnutil.cxx.
Referenced by Init_TNs_For_PU(), Modify_16bit_TNs(), Print_TNs(), and Propagate_16bit_Info().
Definition at line 120 of file tnutil.cxx.
Referenced by Constant_Operand0(), Constant_Operand1(), Expand_Const(), Expand_F10_Recip(), Expand_F4_Recip(), Expand_F8_Recip(), Expand_Float_Divide(), Expand_Float_To_Int_Floor(), Expand_I4_I4_Divide(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F10_Divide(), Expand_Intel_Max_Thr_F4_Divide(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Divide(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F10_Divide(), Expand_Intel_Min_Lat_F4_Divide(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Divide(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_SGI_F10_Divide(), Expand_SGI_F4_Divide(), and Expand_SGI_F8_Divide().
Definition at line 110 of file tnutil.cxx.
Referenced by Adjust_Entry(), Analyze_OP_For_Unwind_Info(), Build_Fde_For_Proc(), Cg_Dwarf_Process_PU(), CGEMIT_Gen_Asm_Frame(), Check_No_Use_Between(), Create_Unwind_Descriptors(), EBO_Lea_Insertion(), EETARG_Init_Entry_Exit_Code(), Emit_Unwind_Directives_For_OP(), Exp_Intrinsic_Call(), Exp_Ldst(), Exp_Savexmms_Intrinsic(), Expand_Float_To_Float(), Expand_Float_To_Int_Tas(), Expand_Int_To_Float_Tas(), Expand_Int_To_Long_Double(), Expand_Int_To_Vect_Tas(), Expand_Load(), Expand_Long_Double_To_Int(), Expand_non_SSE2_Float_Floor(), Expand_SSE3_Long_Double_To_Int(), Expand_Store(), Find_Spill_TN(), Generate_Entry(), Generate_Exit(), Modify_Asm_String(), r_assemble_op(), REGISTER_Reset_FP(), and Store_To_Temp_Stack().
Definition at line 119 of file tnutil.cxx.
Referenced by Constant_Operand0(), Constant_Operand1(), copy_simplification(), EBO_Remove_Unused_Ops(), Expand_Const(), Expand_F10_Div_By_Const(), Expand_F4_Div_By_Const(), Expand_F8_Div_By_Const(), Expand_I4_I4_Divide(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F10_Divide(), Expand_Intel_Max_Thr_F4_Divide(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Divide(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F10_Divide(), Expand_Intel_Min_Lat_F4_Divide(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Divide(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_Select(), Find_BB_TNs(), fneg_sequence(), Force_Chk_Fail(), LRA_Allocate_Registers(), and RECUR_OP_DESC::RECUR_OP_DESC().
Definition at line 112 of file tnutil.cxx.
Referenced by Adjust_GP_Entry(), Adjust_GP_Exit(), CGSPILL_Prepend_Ops(), Exp_Call(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Ldst(), Expand_Add(), Expand_Lda_Label(), Expand_New_Call_To_OPs(), EDGE_PROFILE::Gen_Call_BB(), Generate_Entry(), Generate_Exit(), Handle_Call_Site(), LOOP_INVAR_CODE_MOTION::It_Is_Constant_TN(), Live_Init(), SCHEDULER::OP_def_GP(), EDGE_PROFILE::Prepare_Instrument(), Process_New_OPs(), Setup_GP_TN_For_PU(), and Spill_Live_Range().
Definition at line 174 of file tnutil.cxx.
Referenced by Init_Dedicated_TNs(), Init_TNs_For_PU(), Init_TNs_For_REGION(), and Print_TNs().
Definition at line 171 of file tnutil.cxx.
Referenced by _tagRGN_CFG_PATH_INFO::_tagRGN_CFG_PATH_INFO(), Add_Fail_TNs(), Alloc_Regs_For_BB(), Can_OP_Move(), Check_HB_For_PQS_Suitability(), Check_TN_Vec_Size(), Create_Dedicated_TN(), Create_Unique_Defs_For_TNs(), LOOP_DCE::Dead_Code_Elimination(), Dup_TN(), EBO_Special_Start(), Fix_Recurrences_Before_Unrolling(), GCM_For_Loop(), Gen_Register_TN(), GRA_LIVE_Init_BB_Start(), GTN_TN_SET_Print(), GTN_UNIVERSE_Add_TN(), Induction_Variables_Removal(), LOOP_INVAR_CODE_MOTION::Init(), RGN_SUMMARY::Init_Def_Kill_Set(), Init_TNs_For_PU(), Init_TNs_For_REGION(), RGN_SUMMARY::Init_Use_TN_Set(), Modify_16bit_TNs(), OP_To_Move(), Print_TNs(), Propagate_16bit_Info(), LOOP_RCE::Redundant_Copy_Elimination(), KEY_SCH::register_allocation_init(), Remove_Invariant_Predicates(), RGN_SUM_PATH::RGN_SUM_PATH(), SWP_Fixup_Rotating_Registers(), SWP_OP_vector::SWP_OP_vector(), TN_BB_LIST_MAP_Add(), tn_info_entry_dump(), TN_MAP_Create(), and TN_MAP_Set().
Definition at line 121 of file tnutil.cxx.
Referenced by Adjust_LC_Entry(), Adjust_LC_Exit(), Adjust_LC_Setup_Code(), CGTARG_Generate_Branch_Cloop(), CGTARG_Generate_Remainder_Branch(), Gen_SWP_Branch(), Init_Callee_Saved_Regs_for_REGION(), and Undo_SWP_Branch().
Definition at line 117 of file tnutil.cxx.
Referenced by EETARG_Restore_Pfs(), Init_Callee_Saved_Regs_for_REGION(), and EDGE_PROFILE::Prepare_Instrument().
Definition at line 108 of file tnutil.cxx.
Referenced by LRANGE::Allowed_Registers(), Avoid_RA_In_Call_Argument(), Build_Fde_For_Proc(), CGEMIT_Gen_Asm_Frame(), Compute_Force_TNs(), Control_Register_Index(), EBO_Remove_Unused_Ops(), EETARG_Generate_PIC_Entry_Code(), Expand_Expr(), Expand_New_Call_To_OPs(), EDGE_PROFILE::Gen_Call_BB(), Generate_Entry(), Generate_Exit(), Handle_Call_Site(), Identify_Max_Colorable_Neighborhood(), Init_Callee_Saved_Regs_for_REGION(), Localize_Any_Global_TNs(), and Max_Colorable_LUNIT().
Definition at line 109 of file tnutil.cxx.
Referenced by Adjust_Entry(), Adjust_Exit(), Analyze_OP_For_Unwind_Info(), Assign_Prolog_Temps(), Cg_Dwarf_Process_PU(), CGEMIT_Gen_Asm_Frame(), Check_No_Use_Between(), EBO_Lea_Insertion(), EETARG_Generate_PIC_Entry_Code(), Emit_Unwind_Directives_For_OP(), Exp_Ldst(), Exp_Savexmms_Intrinsic(), Exp_Spadjust(), Expand_Float_To_Float(), Expand_Float_To_Int_Tas(), Expand_Int_To_Float_Tas(), Expand_Int_To_Long_Double(), Expand_Int_To_Vect_Tas(), Expand_Load(), Expand_Long_Double_To_Int(), Expand_non_SSE2_Float_Floor(), Expand_SSE3_Long_Double_To_Int(), Expand_Store(), Find_Spill_TN(), Generate_Entry(), Generate_Exit(), Handle_ALLOCA(), Handle_DEALLOCA(), Handle_INTRINSIC_CALL(), Live_Init(), LRA_Compute_Register_Request(), Modify_Asm_String(), OP_Has_Restrictions(), r_assemble_op(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_LdSt_OP(), and Store_To_Temp_Stack().
Definition at line 181 of file tnutil.cxx.
Definition at line 118 of file tnutil.cxx.
Referenced by add_to_hash_table(), Adjust_Entry(), Adjust_Exit(), AND_Predicate_To_OP(), EXIT_TARGET_INFO::Assign_Aux_Predicates(), BB_Split_Exit_Glue(), Build_Outgoing_Edges(), SCHEDULER::Can_Cntl_Spec_If_Converted_Code(), CG_DEP_Prune_Dependence_Arcs(), CGTARG_Generate_Branch_Cloop(), CGTARG_Handle_Bundle_Hazard(), CGTARG_Load_From_Memory(), CGTARG_Store_To_Memory(), Check_Divide(), IF_CONVERTOR::Check_If_Gen_Useless_Predicate(), CIO_RWTRAN::CICSE_Transform(), SCHEDULER::Commit_Schedule(), condition_optimization(), condition_redundant(), Constant_Operand0(), Convert_If_To_Goto(), Convert_While_Loop_to_Fully_Predicated_Form(), copy_simplification(), PARTITION_GRAPH::Copy_To(), delete_duplicate_op(), delete_reload_across_dependency(), CG_LOOP::Determine_SWP_Unroll_Factor(), PARTITION_GRAPH::Diff(), Do_Build_Recovery_Block(), EBO_Complement_Predicate(), EBO_Copy_Operand(), EBO_Copy_Predicate(), EBO_hash_op(), EBO_predicate_complements(), EBO_predicate_dominates(), EBO_Remove_Unused_Ops(), EETARG_Restore_Extra_Callee_Tns(), EETARG_Restore_Pfs(), EETARG_Save_Extra_Callee_Tns(), Exp_Call(), Exp_COPY(), Exp_Deposit_Bits(), Exp_Extract_Bits(), Exp_Immediate(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Noop(), Exp_OP(), Exp_Pred_Calc(), Exp_Pred_Compare(), Exp_Pred_Complement(), Exp_Pred_Set(), Exp_Prefetch(), Exp_Return(), Exp_Select_And_Condition(), Exp_Spadjust(), Exp_True_False_Preds_For_Block(), Expand_Abs(), Expand_Add(), Expand_Binary_And_Or(), Expand_Binary_Complement(), Expand_Bool_Comparison(), Expand_Bool_To_Int(), Expand_Branch(), Expand_Compare_And_Select(), Expand_Composed_Load(), Expand_Const(), Expand_Convert_Length(), Expand_Copy(), Expand_DivRem(), Expand_Expr(), Expand_F10_Div_By_Const(), Expand_F10_Recip(), Expand_F4_Div_By_Const(), Expand_F4_Recip(), Expand_F8_Div_By_Const(), Expand_F8_Recip(), Expand_F_To_G(), Expand_Float_Compares(), Expand_Float_Div_By_Pow2(), Expand_Float_To_Float(), Expand_Float_To_Int(), Expand_Float_To_Int_Floor(), Expand_Flop(), Expand_G_To_F(), Expand_High_Multiply(), Expand_I4_I4_Divide(), Expand_Int_Comparison(), Expand_Int_To_Float(), Expand_Integer_Divide_By_Constant(), Expand_Intel_F10_Sqrt(), Expand_Intel_Max_Thr_F10_Divide(), Expand_Intel_Max_Thr_F4_Divide(), Expand_Intel_Max_Thr_F4_Sqrt(), Expand_Intel_Max_Thr_F8_Divide(), Expand_Intel_Max_Thr_F8_Sqrt(), Expand_Intel_Min_Lat_F10_Divide(), Expand_Intel_Min_Lat_F4_Divide(), Expand_Intel_Min_Lat_F4_Sqrt(), Expand_Intel_Min_Lat_F8_Divide(), Expand_Intel_Min_Lat_F8_Sqrt(), Expand_Load(), Expand_Logical_And_Or(), Expand_Logical_Not(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_Misaligned_Load(), Expand_Misaligned_Store(), Expand_Mod(), Expand_Multiply(), Expand_Neg(), Expand_Normalize_Logical(), Expand_Power_Of_2_Divide(), Expand_Power_Of_2_Rem(), Expand_Recip_Sqrt(), Expand_Rem(), Expand_SGI_F10_Divide(), Expand_SGI_F4_Divide(), Expand_SGI_F8_Divide(), Expand_SGI_Sqrt(), Expand_Shift(), Expand_Special_And_Immed(), Expand_Store(), Expand_Sub(), Find_BB_Predicates(), Find_BB_TNs(), Fold_Constant_Expression(), EDGE_PROFILE::Gen_Call_BB(), Gen_Implicit_Prefetches(), IF_CONVERTOR::Gen_Para_Comp(), IF_CONVERTOR::Get_2_Pred_And_Erase(), IF_CONVERTOR::Get_Start_Node_Pred(), GRA_LIVE_Compute_Local_Info(), Hoist_MOVL(), Induction_Variables_Removal(), Init_OP_no_ci_alias(), PQS_MANAGER::Init_TN_OP_Info(), Insert_ORs_For_BB(), Insert_Predicates(), Insert_Stop_Bits(), Interleave_Base_Update(), Is_Control_Speculation_Gratuitous(), PARTITION_GRAPH::Is_Disjoint(), Load_82bit_Constant(), PARTITION_GRAPH::Look_Partition_For_And_Type(), PARTITION_GRAPH::Look_Partition_For_Or_Type(), LRA_Allocate_Registers(), PARTITION_GRAPH::Lub_Sum(), Make_Branch_Conditional(), Make_Fall_Thru_Goto(), GROUP_ASSEMBLE::MakeNop2Slot(), IF_CONVERTOR::Merge_Area(), REGION_STRIDE_PREFETCH::Mk_Add_OP(), REGION_STRIDE_PREFETCH::Mk_Prefetch_OP(), Negate_Branch(), OP_has_subset_predicate(), OP_has_subset_predicate_cyclic(), OP_Replace_With_Noop(), Optimize_Select(), Pad_Cycles_Before(), Perform_Post_GCM_Steps(), REGION_STRIDE_PREFETCH::Phased_Multi_Stride_Ins(), PQSCG_is_subset_of(), Predicate_Block(), EDGE_PROFILE::Prepare_Call_Init_Return_BB(), EDGE_PROFILE::Prepare_Instrument(), IF_CONV_AREA::Print(), Process_Group_Register_Reference(), IF_CONVERTOR::Record_Para_Comp_Info(), PARTITION_GRAPH::Reduce(), Remove_Invariant_Predicates(), Resolve_Conditional_Branch(), shl(), shladd(), REGION_STRIDE_PREFETCH::Strong_Single_Stride_Ins(), PARTITION_GRAPH::Sum(), SWP_Append_Noop(), SWP_Exp_COPY(), SWP_Loop_Init_Fini(), tn_info_def(), tn_info_use(), LOOP_INVAR_CODE_MOTION::Unique_Reaching_Def_Inside_Loop(), and Unroll_Dowhile_Loop().
Definition at line 116 of file tnutil.cxx.
Referenced by add_to_hash_table(), EXIT_TARGET_INFO::Assign_Aux_Predicates(), CGTARG_Copy_Operand(), CGTARG_Parallel_Compare(), CGTARG_Store_To_Memory(), Check_Br16(), Check_Divide(), compare_bit(), condition_optimization(), Constant_Operand0(), Constant_Operand1(), copy_simplification(), delete_duplicate_op(), delete_subset_mem_op(), Do_Build_Recovery_Block(), Do_Non_Copy(), EBO_Complement_Predicate(), EBO_Copy_Operand(), EBO_Copy_Predicate(), EBO_predicate_complements(), EBO_Remove_Unused_Ops(), Exp_COPY(), Exp_Generic_Pred_Calc(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Call(), Exp_Intrinsic_Op(), Exp_Ldst(), Exp_Pred_Calc(), Exp_Pred_Complement(), Exp_Pred_Copy(), Exp_Pred_Set(), Exp_Select_And_Condition(), Exp_True_False_Preds_For_Block(), Expand_32Bit_Int_Not_Equal(), Expand_64Bit_Cvtl(), Expand_64Bit_Load(), Expand_64Bit_Shift(), Expand_Abs(), Expand_Binary_Complement(), Expand_Bool_Comparison(), Expand_Bool_To_Int(), Expand_Branch(), Expand_C3_DMAC(), Expand_C3_DMAC_A(), Expand_C3_DMULT_A(), Expand_C3_Mode2(), Expand_C3_Mode8(), Expand_Const(), Expand_Constant_Multiply(), Expand_Convert_Length(), Expand_Copy(), Expand_Copy_Extension(), Expand_Divide(), Expand_DivRem(), Expand_Expr(), Expand_Float32_Const(), Expand_Float64_Const(), Expand_Float_Compares(), Expand_I4_I4_Divide(), Expand_Immediate(), Expand_Immediate_Into_Register(), Expand_Int_Compare(), Expand_Int_Comparison(), Expand_Int_Not_Equal(), Expand_Integer_Divide_By_Constant(), Expand_Logical_Not(), Expand_LONGLONG_Const(), Expand_Max(), Expand_Min(), Expand_MinMax(), Expand_Misaligned_Load(), Expand_Mod(), Expand_Multiply(), Expand_Multiply_Into_Shifts(), Expand_Neg(), Expand_Normalize_Logical(), Expand_Power_Of_2_Divide(), Expand_Power_Of_2_Rem(), Expand_Rem(), Expand_Select(), Expand_SET_ADDRSIZE(), Expand_Set_CircBuf(), Expand_Shift(), Expand_Small_Multiply(), Expand_Sub(), Find_BB_Predicates(), Find_BB_TNs(), Fold_Constant_Expression(), Force_Chk_Fail(), IF_CONVERTOR::Gen_Predicate_Assign(), Get_64Bit_High_TN(), Handle_CONDBR(), Handle_SELECT(), IF_CONVERTOR::Has_Para_Comp_Top(), LOOP_INVAR_CODE_MOTION::It_Is_Constant_TN(), KEY_SCH::Loop_Peeling(), LRA_Allocate_Registers(), Predicate_Block(), CIO_RWTRAN::Predicate_Write(), RECUR_OP_DESC::RECUR_OP_DESC(), Redundancy_Elimination(), Remove_Invariant_Predicates(), Repl_Size16_Instr::Replace_ADDI(), Repl_Size16_Instr::Replace_BR(), Repl_Size16_Instr::Replace_ResEqOper_OP(), Repl_Size16_Instr::Replace_Restricted_Imm_OP(), Resolve_Conditional_Branch(), shl_add_sequence(), shladd(), Special_Sequence(), SWP_Exp_COPY(), sxt_sequence(), Unroll_Do_Loop_guard(), unroll_guard_unrolled_body(), Unroll_Make_Remainder_Loop(), and unroll_multi_make_remainder_loop().
1.5.6