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

Go to the source code of this file.

Classes

struct  WN2F_Context

Defines

#define EMPTY_WN2F_STATUS   (WN2F_STATUS)0
#define INIT_WN2F_CONTEXT   {0, NULL}
#define reset_WN2F_CONTEXT(c)   ((c).flags = 0U, (c).wn = NULL)
#define WN2F_CONTEXT_NEW_PU   0x000000001
#define WN2F_CONTEXT_new_pu(c)   ((c).flags & WN2F_CONTEXT_NEW_PU)
#define set_WN2F_CONTEXT_new_pu(c)   ((c).flags = (c).flags | WN2F_CONTEXT_NEW_PU)
#define reset_WN2F_CONTEXT_new_pu(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_NEW_PU)
#define WN2F_CONTEXT_INSERT_INDUCTION   0x000000002
#define WN2F_CONTEXT_insert_induction(c)   ((c).flags & WN2F_CONTEXT_INSERT_INDUCTION)
#define WN2F_CONTEXT_induction_stmt(c)   (c).wn
#define set_WN2F_CONTEXT_induction_step(c, stmt)
#define reset_WN2F_CONTEXT_induction_step(c)
#define WN2F_CONTEXT_DEREF_ADDR   0x000000004
#define WN2F_CONTEXT_deref_addr(c)   ((c).flags & WN2F_CONTEXT_DEREF_ADDR)
#define set_WN2F_CONTEXT_deref_addr(c)   ((c).flags = (c).flags | WN2F_CONTEXT_DEREF_ADDR)
#define reset_WN2F_CONTEXT_deref_addr(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_DEREF_ADDR)
#define WN2F_CONTEXT_NO_NEWLINE   0x000000008
#define WN2F_CONTEXT_no_newline(c)   ((c).flags & WN2F_CONTEXT_NO_NEWLINE)
#define set_WN2F_CONTEXT_no_newline(c)   ((c).flags = (c).flags | WN2F_CONTEXT_NO_NEWLINE)
#define reset_WN2F_CONTEXT_no_newline(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_NO_NEWLINE)
#define WN2F_CONTEXT_HAS_LOGICAL_ARG   0x00000010
#define WN2F_CONTEXT_has_logical_arg(c)   ((c).flags & WN2F_CONTEXT_HAS_LOGICAL_ARG)
#define set_WN2F_CONTEXT_has_logical_arg(c)   ((c).flags = (c).flags | WN2F_CONTEXT_HAS_LOGICAL_ARG)
#define reset_WN2F_CONTEXT_has_logical_arg(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_HAS_LOGICAL_ARG)
#define WN2F_CONTEXT_IS_LOGICAL_ARG   0x02000000
#define WN2F_CONTEXT_is_logical_arg(c)   ((c).flags & WN2F_CONTEXT_IS_LOGICAL_ARG)
#define set_WN2F_CONTEXT_is_logical_arg(c)   ((c).flags = (c).flags | WN2F_CONTEXT_IS_LOGICAL_ARG)
#define reset_WN2F_CONTEXT_is_logical_arg(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_IS_LOGICAL_ARG)
#define WN2F_CONTEXT_IS_LOGICAL_OPERATION   0x00020000
#define WN2F_CONTEXT_is_logical_operation(c)   ((c).flags & WN2F_CONTEXT_IS_LOGICAL_OPERATION)
#define set_WN2F_CONTEXT_is_logical_operation(c)   ((c).flags = (c).flags | WN2F_CONTEXT_IS_LOGICAL_OPERATION)
#define reset_WN2F_CONTEXT_is_logical_operation(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_IS_LOGICAL_OPERATION)
#define WN2F_CONTEXT_NO_PARENTHESIS   0x00000020
#define WN2F_CONTEXT_no_parenthesis(c)   ((c).flags & WN2F_CONTEXT_NO_PARENTHESIS)
#define set_WN2F_CONTEXT_no_parenthesis(c)   ((c).flags = (c).flags | WN2F_CONTEXT_NO_PARENTHESIS)
#define reset_WN2F_CONTEXT_no_parenthesis(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_NO_PARENTHESIS)
#define WN2F_CONTEXT_KEYWORD_IOCTRL   0x00000040
#define WN2F_CONTEXT_keyword_ioctrl(c)   ((c).flags & WN2F_CONTEXT_KEYWORD_IOCTRL)
#define set_WN2F_CONTEXT_keyword_ioctrl(c)   ((c).flags = (c).flags | WN2F_CONTEXT_KEYWORD_IOCTRL)
#define reset_WN2F_CONTEXT_keyword_ioctrl(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_KEYWORD_IOCTRL)
#define WN2F_CONTEXT_IO_STMT   0x00000080
#define WN2F_CONTEXT_io_stmt(c)   ((c).flags & WN2F_CONTEXT_IO_STMT)
#define set_WN2F_CONTEXT_io_stmt(c)   ((c).flags = (c).flags | WN2F_CONTEXT_IO_STMT)
#define reset_WN2F_CONTEXT_io_stmt(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_IO_STMT)
#define WN2F_CONTEXT_DEREF_IO_ITEM   0x00000100
#define WN2F_CONTEXT_deref_io_item(c)   ((c).flags & WN2F_CONTEXT_DEREF_IO_ITEM)
#define set_WN2F_CONTEXT_deref_io_item(c)   ((c).flags = (c).flags | WN2F_CONTEXT_DEREF_IO_ITEM)
#define reset_WN2F_CONTEXT_deref_io_item(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_DEREF_IO_ITEM)
#define WN2F_CONTEXT_ORIGFMT_IOCTRL   0x00000200
#define WN2F_CONTEXT_origfmt_ioctrl(c)   ((c).flags & WN2F_CONTEXT_ORIGFMT_IOCTRL)
#define set_WN2F_CONTEXT_origfmt_ioctrl(c)   ((c).flags = (c).flags | WN2F_CONTEXT_ORIGFMT_IOCTRL)
#define reset_WN2F_CONTEXT_origfmt_ioctrl(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_ORIGFMT_IOCTRL)
#define WN2F_CONTEXT_EMIT_STID   0x00000400
#define WN2F_CONTEXT_emit_stid(c)   ((c).flags & WN2F_CONTEXT_EMIT_STID)
#define set_WN2F_CONTEXT_emit_stid(c)   ((c).flags = (c).flags | WN2F_CONTEXT_EMIT_STID)
#define reset_WN2F_CONTEXT_emit_stid(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_EMIT_STID)
#define WN2F_CONTEXT_TMP_VAR   0x00100400
#define WN2F_CONTEXT_tmp_var(c)   ((c).flags & WN2F_TMP_VAR)
#define set_WN2F_CONTEXT_tmp_var(c)   ((c).flags = (c).flags | WN2F_CONTEXT_TMP_VAR)
#define reset_WN2F_CONTEXT_tmp_var(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_TMP_VAR)
#define WN2F_CONTEXT_EXPLICIT_REGION   0x00000800
#define WN2F_CONTEXT_explicit_region(c)   ((c).flags & WN2F_CONTEXT_EXPLICIT_REGION)
#define set_WN2F_CONTEXT_explicit_region(c)   ((c).flags = (c).flags | WN2F_CONTEXT_EXPLICIT_REGION)
#define reset_WN2F_CONTEXT_explicit_region(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_EXPLICIT_REGION)
#define WN2F_CONTEXT_FMT_IO   0x00001000
#define WN2F_CONTEXT_fmt_io(c)   ((c).flags & WN2F_CONTEXT_FMT_IO)
#define set_WN2F_CONTEXT_fmt_io(c)   ((c).flags = (c).flags | WN2F_CONTEXT_FMT_IO)
#define reset_WN2F_CONTEXT_fmt_io(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_FMT_IO)
#define WN2F_CONTEXT_CRAY_IO   0x00002000
#define WN2F_CONTEXT_cray_io(c)   ((c).flags & WN2F_CONTEXT_CRAY_IO)
#define set_WN2F_CONTEXT_cray_io(c)   ((c).flags = (c).flags | WN2F_CONTEXT_CRAY_IO)
#define reset_WN2F_CONTEXT_cray_io(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_CRAY_IO)
#define WN2F_CONTEXT_HAS_NO_ARR_ELMT   0x00004000
#define WN2F_CONTEXT_has_no_arr_elmt(c)   ((c).flags & WN2F_CONTEXT_HAS_NO_ARR_ELMT)
#define set_WN2F_CONTEXT_has_no_arr_elmt(c)   ((c).flags = (c).flags | WN2F_CONTEXT_HAS_NO_ARR_ELMT)
#define reset_WN2F_CONTEXT_has_no_arr_elmt(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_HAS_NO_ARR_ELMT)
#define WN2F_CONTEXT_ISSUE_IOC_UNIT_ASTERISK   0x00008000
#define WN2F_CONTEXT_issue_ioc_asterisk(c)   ((c).flags & WN2F_CONTEXT_ISSUE_IOC_UNIT_ASTERISK)
#define set_WN2F_CONTEXT_issue_ioc_asterisk(c)   ((c).flags = (c).flags | WN2F_CONTEXT_ISSUE_IOC_UNIT_ASTERISK)
#define reset_WN2F_CONTEXT_issue_ioc_asterisk(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_ISSUE_IOC_UNIT_ASTERISK)
#define WN2F_CONTEXT_SUBEXP_NO_PARENTHESIS   0x00040000
#define WN2F_CONTEXT_subexp_no_parenthesis(c)   ((c).flags & WN2F_CONTEXT_SUBEXP_NO_PARENTHESIS)
#define set_WN2F_CONTEXT_subexp_no_parenthesis(c)   ((c).flags = (c).flags | WN2F_CONTEXT_SUBEXP_NO_PARENTHESIS)
#define reset_WN2F_CONTEXT_subexp_no_parenthesis(c)   ((c).flags = (c).flags & ~WN2F_CONTEXT_SUBEXP_NO_PARENTHESIS)
#define WN2F_expr_has_boolean_arg(opc)
#define WN2F_Can_Assign_Types(t1, t2)

Typedefs

typedef mUINT32 WN2F_STATUS
typedef struct WN2F_Context WN2F_CONTEXT

Functions

void WN2F_Stmt_Newline (TOKEN_BUFFER tokens, const char *label, SRCPOS srcpos, WN2F_CONTEXT context)
void WN2F_Address_Of (TOKEN_BUFFER tokens)
WN2F_STATUS WN2F_Offset_Memref (TOKEN_BUFFER tokens, WN *addr, TY_IDX addr_ty, TY_IDX object_ty, STAB_OFFSET addr_offset, WN2F_CONTEXT context)
WN2F_STATUS WN2F_Offset_Symref (TOKEN_BUFFER tokens, ST *addr, TY_IDX addr_ty, TY_IDX object_ty, STAB_OFFSET addr_offset, WN2F_CONTEXT context)
WN_OFFSET WN2F_Sum_Offsets (WN *addr)
void WN2F_Emit_End_Stmt (TOKEN_BUFFER tokens, BOOL start)
void WN2F_initialize (void)
void WN2F_finalize (void)
WN2F_STATUS WN2F_translate (TOKEN_BUFFER tokens, WN *wn, WN2F_CONTEXT context)
WN2F_STATUS WN2F_translate_purple_main (TOKEN_BUFFER tokens, WN *pu, const char *region_name, WN2F_CONTEXT context)
void WN2F_dump_context (WN2F_CONTEXT c)

Variables

char * sgi_comment_str

Define Documentation

#define EMPTY_WN2F_STATUS   (WN2F_STATUS)0

Definition at line 109 of file wn2f.h.

Referenced by WN2F_agoto(), WN2F_alloca(), WN2F_altentry(), WN2F_ar_construct(), WN2F_array(), WN2F_arrayexp(), WN2F_arrsection(), WN2F_ashr(), WN2F_Binary_Substr_Op(), WN2F_binaryop(), WN2F_block(), WN2F_bnor(), WN2F_call(), WN2F_casegoto(), WN2F_ceil(), WN2F_comma(), WN2F_comment(), WN2F_compgoto(), WN2F_complex(), WN2F_condbr(), WN2F_const(), WN2F_cvt(), WN2F_cvtl(), WN2F_dealloca(), WN2F_Denormalize_Array_Idx(), WN2F_do_loop(), WN2F_do_while(), WN2F_eq(), WN2F_eval(), WN2F_floor(), WN2F_func_entry(), WN2F_Funcall_Op(), WN2F_goto(), WN2F_idname(), WN2F_if(), WN2F_ignore(), WN2F_iload(), WN2F_iloadx(), WN2F_imagpart(), WN2F_implicit_bnd(), WN2F_implied_do(), WN2F_Infix_Op(), WN2F_intconst(), WN2F_interface_blk(), WN2F_Intr_Funcall(), WN2F_Intr_Infix(), WN2F_intrinsic_call(), WN2F_intrinsic_op(), WN2F_io(), WN2F_istore(), WN2F_istorex(), WN2F_label(), WN2F_lda(), WN2F_ldid(), WN2F_lshr(), WN2F_madd(), WN2F_mload(), WN2F_mstore(), WN2F_msub(), WN2F_namelist_stmt(), WN2F_ne(), WN2F_nmadd(), WN2F_nmsub(), WN2F_noio_implied_do(), WN2F_nullify_stmt(), WN2F_Offset_Symref(), WN2F_OLD_Den_Arr_Idx(), WN2F_parm(), WN2F_pragma(), WN2F_pragma_list_begin(), WN2F_pragma_list_end(), WN2F_prefetch(), WN2F_pstid(), WN2F_pstore(), WN2F_realpart(), WN2F_recip(), WN2F_return(), WN2F_return_val(), WN2F_rsqrt(), WN2F_select(), WN2F_src_triplet(), WN2F_stid(), WN2F_strctfld(), WN2F_switch(), WN2F_Translate_Arithmetic_Operand(), WN2F_Translate_DoLoop_Bound(), WN2F_translate_purple_main(), WN2F_triplet(), WN2F_unaryop(), WN2F_unsupported(), WN2F_use_stmt(), WN2F_where(), and WN2F_while_do().

#define reset_WN2F_CONTEXT (   c)    ((c).flags = 0U, (c).wn = NULL)

Definition at line 117 of file wn2f.h.

Referenced by Append_Nest_Clauses(), W2F_Fini(), and W2F_Init().

#define reset_WN2F_CONTEXT_cray_io (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_CRAY_IO)

Definition at line 321 of file wn2f.h.

Referenced by WN2F_io().

#define reset_WN2F_CONTEXT_deref_io_item (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_DEREF_IO_ITEM)

Definition at line 249 of file wn2f.h.

#define reset_WN2F_CONTEXT_emit_stid (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_EMIT_STID)

Definition at line 271 of file wn2f.h.

Referenced by WN2F_do_loop().

#define reset_WN2F_CONTEXT_explicit_region (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_EXPLICIT_REGION)

Definition at line 297 of file wn2f.h.

#define reset_WN2F_CONTEXT_fmt_io (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_FMT_IO)

Definition at line 309 of file wn2f.h.

Value:
((c).flags = (c).flags & ~WN2F_CONTEXT_INSERT_INDUCTION,\
    (c).wn = NULL)

Definition at line 139 of file wn2f.h.

Referenced by WN2F_block().

#define reset_WN2F_CONTEXT_io_stmt (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_IO_STMT)

Definition at line 239 of file wn2f.h.

#define reset_WN2F_CONTEXT_is_logical_arg (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_IS_LOGICAL_ARG)

Definition at line 188 of file wn2f.h.

Referenced by WN2F_translate().

Definition at line 200 of file wn2f.h.

Referenced by WN2F_binaryop(), WN2F_Funcall_Op(), and WN2F_Infix_Op().

#define reset_WN2F_CONTEXT_keyword_ioctrl (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_KEYWORD_IOCTRL)

Definition at line 229 of file wn2f.h.

Referenced by WN2F_ios_definefile().

#define reset_WN2F_CONTEXT_new_pu (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_NEW_PU)

Definition at line 125 of file wn2f.h.

Referenced by WN2F_block().

#define reset_WN2F_CONTEXT_no_newline (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_NO_NEWLINE)

Definition at line 163 of file wn2f.h.

Referenced by WN2F_do_loop(), and WN2F_io_control().

#define reset_WN2F_CONTEXT_origfmt_ioctrl (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_ORIGFMT_IOCTRL)

Definition at line 260 of file wn2f.h.

Referenced by WN2F_Append_IO_CtrlList(), and WN2F_ios_inqlength().

Definition at line 353 of file wn2f.h.

Referenced by WN2F_Infix_Op(), and WN2F_paren().

#define reset_WN2F_CONTEXT_tmp_var (   c)    ((c).flags = (c).flags & ~WN2F_CONTEXT_TMP_VAR)

Definition at line 281 of file wn2f.h.

#define set_WN2F_CONTEXT_cray_io (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_CRAY_IO)

Definition at line 319 of file wn2f.h.

Referenced by WN2F_io().

#define set_WN2F_CONTEXT_deref_io_item (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_DEREF_IO_ITEM)

Definition at line 247 of file wn2f.h.

Referenced by WN2F_ios_read().

#define set_WN2F_CONTEXT_emit_stid (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_EMIT_STID)

Definition at line 269 of file wn2f.h.

Referenced by WN2F_do_loop().

#define set_WN2F_CONTEXT_explicit_region (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_EXPLICIT_REGION)

Definition at line 295 of file wn2f.h.

#define set_WN2F_CONTEXT_fmt_io (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_FMT_IO)

Definition at line 307 of file wn2f.h.

Referenced by WN2F_ios_cr().

#define set_WN2F_CONTEXT_has_no_arr_elmt (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_HAS_NO_ARR_ELMT)

Definition at line 328 of file wn2f.h.

Referenced by WN2F_call(), WN2F_iload(), WN2F_istore(), WN2F_lda(), WN2F_ldid(), and WN2F_pstore().

#define set_WN2F_CONTEXT_induction_step (   c,
  stmt 
)
Value:
((c).flags = (c).flags | WN2F_CONTEXT_INSERT_INDUCTION,\
    (c).wn = stmt)

Definition at line 136 of file wn2f.h.

Referenced by WN2F_do_loop().

#define set_WN2F_CONTEXT_io_stmt (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_IO_STMT)

Definition at line 237 of file wn2f.h.

Referenced by WN2F_io().

#define set_WN2F_CONTEXT_is_logical_arg (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_IS_LOGICAL_ARG)

Definition at line 186 of file wn2f.h.

Referenced by WN2F_translate().

Definition at line 198 of file wn2f.h.

#define set_WN2F_CONTEXT_keyword_ioctrl (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_KEYWORD_IOCTRL)

Definition at line 227 of file wn2f.h.

Referenced by WN2F_Append_IO_CtrlList().

#define set_WN2F_CONTEXT_new_pu (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_NEW_PU)

Definition at line 123 of file wn2f.h.

Referenced by WN2F_func_entry().

#define set_WN2F_CONTEXT_no_newline (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_NO_NEWLINE)

Definition at line 161 of file wn2f.h.

Referenced by WN2F_do_loop(), and WN2F_io().

#define set_WN2F_CONTEXT_origfmt_ioctrl (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_ORIGFMT_IOCTRL)

Definition at line 258 of file wn2f.h.

Referenced by WN2F_io().

Definition at line 351 of file wn2f.h.

Referenced by WN2F_Infix_Op(), and WN2F_paren().

#define set_WN2F_CONTEXT_tmp_var (   c)    ((c).flags = (c).flags | WN2F_CONTEXT_TMP_VAR)

Definition at line 279 of file wn2f.h.

#define WN2F_Can_Assign_Types (   t1,
  t2 
)
Value:
((TY_Is_Array(t1) && TY_is_character(t1) && \
     TY_Is_Array(t2) && TY_is_character(t2)) || \
    Stab_Identical_Types(t1, t2, \
                         FALSE, /*check_quals*/ \
                         FALSE, /*check_scalars*/ \
                         TRUE)) /*ptrs_as_scalars*/

Definition at line 368 of file wn2f.h.

Referenced by WN2F_Function_Call_Lhs(), WN2F_Offset_Memref(), WN2F_Offset_Symref(), and WN2F_return().

#define WN2F_CONTEXT_CRAY_IO   0x00002000

Definition at line 316 of file wn2f.h.

#define WN2F_CONTEXT_cray_io (   c)    ((c).flags & WN2F_CONTEXT_CRAY_IO)

Definition at line 317 of file wn2f.h.

Referenced by WN2F_dump_context(), WN2F_io_format(), WN2F_io_list(), and WN2F_io_unit().

#define WN2F_CONTEXT_DEREF_ADDR   0x000000004

Definition at line 148 of file wn2f.h.

#define WN2F_CONTEXT_DEREF_IO_ITEM   0x00000100

Definition at line 244 of file wn2f.h.

#define WN2F_CONTEXT_deref_io_item (   c)    ((c).flags & WN2F_CONTEXT_DEREF_IO_ITEM)

Definition at line 245 of file wn2f.h.

Referenced by WN2F_dump_context(), and WN2F_io_item().

#define WN2F_CONTEXT_EMIT_STID   0x00000400

Definition at line 266 of file wn2f.h.

#define WN2F_CONTEXT_emit_stid (   c)    ((c).flags & WN2F_CONTEXT_EMIT_STID)

Definition at line 267 of file wn2f.h.

Referenced by WN2F_dump_context(), WN2F_pstid(), and WN2F_stid().

#define WN2F_CONTEXT_EXPLICIT_REGION   0x00000800

Definition at line 292 of file wn2f.h.

Definition at line 293 of file wn2f.h.

Referenced by WN2F_dump_context().

#define WN2F_CONTEXT_FMT_IO   0x00001000

Definition at line 304 of file wn2f.h.

#define WN2F_CONTEXT_fmt_io (   c)    ((c).flags & WN2F_CONTEXT_FMT_IO)

Definition at line 305 of file wn2f.h.

Referenced by WN2F_dump_context(), and WN2F_io_format().

#define WN2F_CONTEXT_HAS_LOGICAL_ARG   0x00000010

Definition at line 170 of file wn2f.h.

Definition at line 171 of file wn2f.h.

Referenced by WN2F_dump_context(), and WN2F_translate().

#define WN2F_CONTEXT_HAS_NO_ARR_ELMT   0x00004000

Definition at line 325 of file wn2f.h.

Definition at line 326 of file wn2f.h.

Referenced by WN2F_arrsection(), WN2F_Offset_Symref(), and WN2F_String_Argument().

#define WN2F_CONTEXT_induction_stmt (   c)    (c).wn

Definition at line 135 of file wn2f.h.

Referenced by WN2F_block().

#define WN2F_CONTEXT_INSERT_INDUCTION   0x000000002

Definition at line 132 of file wn2f.h.

Definition at line 133 of file wn2f.h.

Referenced by WN2F_block(), and WN2F_dump_context().

#define WN2F_CONTEXT_IO_STMT   0x00000080

Definition at line 234 of file wn2f.h.

#define WN2F_CONTEXT_io_stmt (   c)    ((c).flags & WN2F_CONTEXT_IO_STMT)

Definition at line 235 of file wn2f.h.

Referenced by WN2F_call(), WN2F_dump_context(), WN2F_implied_do(), and WN2F_intrinsic_call().

#define WN2F_CONTEXT_IS_LOGICAL_ARG   0x02000000

Definition at line 183 of file wn2f.h.

Definition at line 184 of file wn2f.h.

Referenced by WN2F_const(), WN2F_intconst(), and WN2F_parm().

#define WN2F_CONTEXT_IS_LOGICAL_OPERATION   0x00020000

Definition at line 195 of file wn2f.h.

Definition at line 196 of file wn2f.h.

Definition at line 341 of file wn2f.h.

Referenced by WN2F_io_unit().

#define WN2F_CONTEXT_ISSUE_IOC_UNIT_ASTERISK   0x00008000

Definition at line 340 of file wn2f.h.

#define WN2F_CONTEXT_KEYWORD_IOCTRL   0x00000040

Definition at line 224 of file wn2f.h.

Definition at line 225 of file wn2f.h.

Referenced by WN2F_dump_context(), and WN2F_emit_ctrl().

#define WN2F_CONTEXT_NEW_PU   0x000000001

Definition at line 121 of file wn2f.h.

#define WN2F_CONTEXT_new_pu (   c)    ((c).flags & WN2F_CONTEXT_NEW_PU)

Definition at line 122 of file wn2f.h.

Referenced by WN2F_block(), and WN2F_dump_context().

#define WN2F_CONTEXT_NO_NEWLINE   0x000000008

Definition at line 159 of file wn2f.h.

#define WN2F_CONTEXT_no_newline (   c)    ((c).flags & WN2F_CONTEXT_NO_NEWLINE)

Definition at line 160 of file wn2f.h.

Referenced by WN2F_do_loop(), WN2F_dump_context(), WN2F_implied_do(), and WN2F_Stmt_Newline().

#define WN2F_CONTEXT_NO_PARENTHESIS   0x00000020

Definition at line 209 of file wn2f.h.

#define WN2F_CONTEXT_ORIGFMT_IOCTRL   0x00000200

Definition at line 255 of file wn2f.h.

Definition at line 256 of file wn2f.h.

Referenced by WN2F_dump_context(), and WN2F_io_format().

#define WN2F_CONTEXT_SUBEXP_NO_PARENTHESIS   0x00040000

Definition at line 348 of file wn2f.h.

Definition at line 349 of file wn2f.h.

Referenced by WN2F_Infix_Op().

#define WN2F_CONTEXT_TMP_VAR   0x00100400

Definition at line 276 of file wn2f.h.

#define WN2F_CONTEXT_tmp_var (   c)    ((c).flags & WN2F_TMP_VAR)

Definition at line 277 of file wn2f.h.

#define WN2F_expr_has_boolean_arg (   opc)
Value:
((opc) == OPC_BLNOT || (opc) == OPC_BLAND || (opc) == OPC_BLIOR || \
    (opc) == OPC_I4LNOT || (opc) == OPC_I4LAND || (opc) == OPC_I4LIOR)

Definition at line 362 of file wn2f.h.

Referenced by WN2F_translate().


Typedef Documentation

typedef struct WN2F_Context WN2F_CONTEXT

Definition at line 108 of file wn2f.h.


Function Documentation

void WN2F_Address_Of ( TOKEN_BUFFER  tokens)

Definition at line 505 of file wn2f.cxx.

References Append_Token_Special(), Prepend_Token_Special(), and Prepend_Token_String().

Referenced by INITVKIND_symoff().

Here is the call graph for this function:

void WN2F_finalize ( void  )

Definition at line 1194 of file wn2f.cxx.

References Stab_Free_Tmpvars(), WN2F_Expr_finalize(), WN2F_Io_finalize(), WN2F_Load_Store_finalize(), and WN2F_Stmt_finalize().

Referenced by W2F_Fini().

Here is the call graph for this function:

void WN2F_initialize ( void  )
WN2F_STATUS WN2F_Offset_Symref ( TOKEN_BUFFER  tokens,
ST addr,
TY_IDX  addr_ty,
TY_IDX  object_ty,
STAB_OFFSET  addr_offset,
WN2F_CONTEXT  context 
)

Definition at line 476 of file wn2f.cxx.

References OPR_ADD, OPR_ARRAY, OPR_ARRAYEXP, OPR_ARRSECTION, OPR_INTCONST, WN2F_Sum_Offsets(), WN_const_val(), WN_kid0(), WN_kid1(), and WN_operator().

Referenced by WN2F_Offset_Memref(), WN2F_String_Argument(), and WN2F_Sum_Offsets().

Here is the call graph for this function:

WN2F_STATUS WN2F_translate ( TOKEN_BUFFER  tokens,
WN wn,
WN2F_CONTEXT  context 
)

Definition at line 1232 of file wn2f.cxx.

References OPCODE_is_boolean(), reset_WN2F_CONTEXT_has_logical_arg, reset_WN2F_CONTEXT_is_logical_arg, ret, set_WN2F_CONTEXT_has_logical_arg, set_WN2F_CONTEXT_is_logical_arg, wn, WN2F_CONTEXT_has_logical_arg, WN2F_CONTEXT_no_parenthesis, WN2F_expr_has_boolean_arg, WN2F_Handler, WN_opc_operator, and WN_opcode().

Referenced by Append_Distribution(), W2F_Outfile_Translate_Pu(), W2F_Translate_Wn(), W2F_Translate_Wn_Str(), WN2F_agoto(), WN2F_alloca(), WN2F_Append_Value_Reference(), WN2F_ar_construct(), WN2F_array(), WN2F_arrayexp(), WN2F_arrsection(), WN2F_Arrsection_Slots(), WN2F_block(), WN2F_call(), WN2F_comma(), WN2F_compgoto(), WN2F_complex(), WN2F_condbr(), WN2F_cvt(), WN2F_cvtl(), WN2F_dealloca(), WN2F_Denormalize_Array_Idx(), WN2F_do_loop(), WN2F_do_while(), WN2F_eq(), WN2F_eval(), WN2F_Expr_Plus_Literal(), WN2F_func_entry(), WN2F_if(), WN2F_iload(), WN2F_imagpart(), WN2F_implied_do(), WN2F_intrinsic_op(), WN2F_io_control(), WN2F_io_format(), WN2F_io_list(), WN2F_io_unit(), WN2F_ios_decode(), WN2F_ios_definefile(), WN2F_ios_encode(), WN2F_ios_inqlength(), WN2F_istore(), WN2F_mstore(), WN2F_ne(), WN2F_noio_implied_do(), WN2F_Normalize_Idx_To_Onedim(), WN2F_nullify_stmt(), WN2F_Offset_Memref(), WN2F_OLD_Den_Arr_Idx(), WN2F_paren(), WN2F_parm(), WN2F_prefetch(), WN2F_Prepend_Value_Reference(), WN2F_pstid(), WN2F_pstore(), WN2F_realpart(), WN2F_return(), WN2F_return_val(), WN2F_select(), WN2F_src_triplet(), WN2F_stid(), WN2F_strctfld(), WN2F_String_Argument(), WN2F_Substring(), WN2F_switch(), WN2F_tas(), WN2F_tempvar_rhs(), WN2F_Translate_Arithmetic_Operand(), WN2F_Translate_DoLoop_Bound(), WN2F_triplet(), WN2F_where(), and WN2F_while_do().

Here is the call graph for this function:


Variable Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines