Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
cwh_expr.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define DELETE_ARRAYEXP_WN   NULL

Enumerations

enum  FLAG { f_NONE = 0, f_T_PASSED = 1, f_T_SAVED = 2 }

Functions

WNcwh_expr_operand (WN **arrexp)
WNcwh_expr_address (FLAG flag)
WNcwh_expr_bincalc (OPERATOR op, WN *wn1, WN *wn2)
WNcwh_get_typed_operand (TYPE_ID ty, WN **arrexp)
OPCODE cwh_make_typed_opcode (OPERATOR op, TYPE_ID ty1, TYPE_ID ty2)
WNcwh_convert_to_ty (WN *wn, TYPE_ID ty)
WNcwh_wrap_cvtl (WN *wn, TYPE_ID ty)
TYPE_ID cwh_get_highest_type (WN *lhs, WN *rhs)
WNcwh_expr_temp (TY_IDX ty, WN *sz, FLAG flag)
void cwh_expr_compare (OPERATOR op, TY_IDX ty)
void cwh_expr_str_operand (W_node expr[2])
void cwh_expr_set_flags (ST *st, FLAG flag)
WNcwh_generate_bitmask (WN *len, TYPE_ID ty)
WNcwh_expr_extract_arrayexp (WN *node, WN **arrayexp)
WNcwh_expr_restore_arrayexp (WN *node, WN *arrayexp)
void cwh_expr_temp_set_pragma (ST *st)
WNcwh_expr_dispose_of_char (WN *wn)

Define Documentation


Enumeration Type Documentation

enum FLAG
Enumerator:
f_NONE 
f_T_PASSED 
f_T_SAVED 

Definition at line 55 of file cwh_expr.h.


Function Documentation

WN* cwh_expr_extract_arrayexp ( WN node,
WN **  arrayexp 
)

Definition at line 118 of file cwh_expr.cxx.

References DELETE_ARRAYEXP_WN, Full_arrayexp, NULL, OPR_ARRAYEXP, wn, WN_Delete, WN_DELETE_Tree(), WN_kid(), WN_kid0(), WN_kid_count(), and WNOPR.

Referenced by cwh_expr_operand(), fei_non_conform_store(), fei_nullify(), and fei_store().

Here is the call graph for this function:

WN* cwh_expr_operand ( WN **  arrexp)

Definition at line 913 of file cwh_expr.cxx.

References ADDR_item, cwh_addr_address_ST(), cwh_addr_is_array(), cwh_addr_is_section(), cwh_addr_load_ST(), cwh_addr_load_WN(), cwh_addr_offset(), cwh_expr_extract_arrayexp(), cwh_stk_get_class(), cwh_stk_get_TY(), cwh_stk_pop_ADDR(), cwh_stk_pop_DEREF(), cwh_stk_pop_PCONST(), cwh_stk_pop_ST(), cwh_stk_pop_WHIRL(), cwh_stk_pop_WN(), DELETE_ARRAYEXP_WN, DEREF_item, DevAssert, F90_Wrap_ARREXP(), FLD_item, Full_arrayexp, NULL, FLD_det::off, PCONST_item, ST_item, ST_item_whole_array, FLD_det::type, wn, WN_item, and WN_item_whole_array.

Referenced by cwh_addr_do_bounds_check(), cwh_ceiling_floor(), cwh_char_intrin(), cwh_do_tranformational(), cwh_dope_store_bound(), cwh_expr_address(), cwh_expr_binop(), cwh_expr_binop_shift(), cwh_expr_compare(), cwh_expr_compare_bitwise(), cwh_expr_compare_char(), cwh_expr_compare_logical(), cwh_get_typed_operand(), cwh_inline_allocate(), cwh_intrin_get_return_value(), cwh_intrin_ieee_intrin_call_helper(), cwh_intrin_ieee_intrin_helper(), cwh_intrin_popcnt_leadz_helper(), cwh_intrin_sync_intrin(), cwh_io_ioitem(), cwh_io_no_desc(), cwh_io_str_ioitem(), cwh_mp_region(), cwh_reorder(), cwh_stmt_assigned_goto(), cwh_stmt_call_helper(), cwh_stmt_character_icall(), cwh_stmt_character_store(), cwh_stmt_computed_goto(), cwh_stmt_select_case_char(), cwh_stmt_str_falsebr_util(), do_simple(), fei_abs(), fei_alloc(), fei_allocate(), fei_arith_goto(), fei_array_construct(), fei_array_dimen(), fei_assert(), fei_blocking_size(), fei_bneg(), fei_brtrue(), fei_close(), fei_co_array_dimen(), fei_control_list(), fei_cot(), fei_count(), fei_doloop(), fei_dot_product(), fei_dot_product_logical(), fei_dowhile(), fei_dv_def(), fei_dv_deref(), fei_exponent(), fei_exponentiate(), fei_fission(), fei_fpclass(), fei_free(), fei_fuse(), fei_ibits(), fei_ieee_sign_xfer(), fei_ieee_trunc(), fei_if(), fei_imag(), fei_implied_do(), fei_inquire(), fei_IO_list(), fei_iolength(), fei_iotype(), fei_isfinite(), fei_islg(), fei_isnan(), fei_isunordered(), fei_label_def_named(), fei_leqv(), fei_lneg(), fei_logb(), fei_lxor(), fei_malloc(), fei_matmul(), fei_mfree(), fei_multiply_high(), fei_mvbits(), fei_near(), fei_new_select(), fei_new_select_case(), fei_noio_implied_do(), fei_nseq_subscr(), fei_nullify(), fei_open(), fei_page_place(), fei_poppar(), fei_prefetch_ref(), fei_pstore(), fei_purple_conditional(), fei_redistribute(), fei_remainder(), fei_return(), fei_round(), fei_scalb(), fei_scale(), fei_seq_subscr(), fei_set_dv_hdr_fld(), fei_set_exponent(), fei_sign_xfer(), fei_static_simple_reloc_init(), fei_store(), fei_subscr_src_triplet(), fei_subscr_triplet(), fei_substr(), fei_trunc(), fei_unroll(), fei_where(), simple_intrinsic(), and simple_intrinsic_nt().

Here is the call graph for this function:

WN* cwh_expr_temp ( TY_IDX  ty,
WN sz,
FLAG  flag 
)
WN* cwh_generate_bitmask ( WN len,
TYPE_ID  ty 
)

Referenced by fei_ibits(), and fei_mvbits().

WN* cwh_get_typed_operand ( TYPE_ID  ty,
WN **  arrexp 
)

Definition at line 356 of file cwh_expr.cxx.

References cwh_convert_to_ty(), and cwh_expr_operand().

Referenced by cwh_expr_unop(), fei_exponentiate(), fei_logb(), fei_scalb(), fei_scale(), and fei_set_exponent().

Here is the call graph for this function:

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines