
Go to the source code of this file.
Defines | |
| #define | EMPTY_STATUS 0x000000000 |
| #define | STATUS_LVALUE 0x000000001 |
| #define | STATUS_ARRAY_AS_ADDRESS 0x000000002 |
| #define | STATUS_BLOCK 0x000000004 |
| #define | STATUS_is_lvalue(s) ((s) & STATUS_LVALUE) |
| #define | STATUS_set_lvalue(s) ((s) = (s) | STATUS_LVALUE) |
| #define | STATUS_reset_lvalue(s) ((s) = (s) & ~STATUS_LVALUE) |
| #define | STATUS_is_array_as_address(s) ((s) & STATUS_ARRAY_AS_ADDRESS) |
| #define | STATUS_set_array_as_address(s) ((s) = (s) | STATUS_ARRAY_AS_ADDRESS) |
| #define | STATUS_reset_array_as_address(s) ((s) = (s) & ~STATUS_ARRAY_AS_ADDRESS) |
| #define | STATUS_is_block(s) ((s) & STATUS_LVALUE) |
| #define | STATUS_set_block(s) ((s) = (s) | STATUS_LVALUE) |
| #define | STATUS_reset_block(s) ((s) = (s) & ~STATUS_LVALUE) |
Typedefs | |
| typedef mUINT32 | STATUS |
Functions | |
| void | WN2C_Append_Purple_Funcinfo (TOKEN_BUFFER tokens) |
| void | WN2C_initialize (void) |
| void | WN2C_finalize (void) |
| BOOL | WN2C_new_symtab (void) |
| STATUS | WN2C_translate (TOKEN_BUFFER tokens, const WN *wn, CONTEXT context) |
| void | WN2C_translate_structured_types (void) |
| STATUS | WN2C_translate_file_scope_defs (CONTEXT context) |
| STATUS | WN2C_translate_purple_main (TOKEN_BUFFER tokens, const WN *pu, const char *region_name, CONTEXT context) |
| void | WN2C_memref_lhs (TOKEN_BUFFER tokens, TY_IDX *memref_typ, const WN *lhs, STAB_OFFSET memref_ofst, TY_IDX memref_addr_ty, TY_IDX memref_object_ty, MTYPE dtype, CONTEXT context) |
| void | WN2C_stid_lhs (TOKEN_BUFFER tokens, TY_IDX *stored_typ, const ST *lhs_st, STAB_OFFSET stid_ofst, TY_IDX stid_ty, MTYPE dtype, CONTEXT context) |
Definition at line 111 of file wn2c.h.
Referenced by WN2C_array().
Definition at line 115 of file wn2c.h.
Referenced by WN2C_Translate_Stmt_Sequence().
Definition at line 107 of file wn2c.h.
Referenced by WN2C_array(), WN2C_Function_Call_Lhs(), WN2C_Function_Return_Value(), WN2C_lda(), WN2C_ldid(), WN2C_Load_Return_Reg(), WN2C_lvalue_wn(), WN2C_memref_lhs(), WN2C_mload(), WN2C_mstore(), WN2C_stid_lhs(), and WN2C_Store_Return_Reg().
Definition at line 109 of file wn2c.h.
Referenced by WN2C_lda().
Definition at line 112 of file wn2c.h.
Referenced by WN2C_array().
Definition at line 116 of file wn2c.h.
Referenced by WN2C_block(), WN2C_compgoto(), and WN2C_switch().
Definition at line 108 of file wn2c.h.
Referenced by WN2C_array(), WN2C_based_lvalue(), and WN2C_lvalue_st().
| void WN2C_Append_Purple_Funcinfo | ( | TOKEN_BUFFER | tokens | ) |
Definition at line 3133 of file wn2c.cxx.
References Append_Token_Special(), Append_Token_String(), name, Number_as_String(), PUINFO_FUNC_ST, ST_export(), ST_sclass(), W2C_Object_Name(), and WN2C_Purple_Region_Name.
Referenced by WN2C_block(), WN2C_pragma(), and WN2C_translate_purple_main().

| void WN2C_finalize | ( | void | ) |
Definition at line 6167 of file wn2c.cxx.
References Stab_Free_Tmpvars().
Referenced by W2C_Fini().

| void WN2C_initialize | ( | void | ) |
Definition at line 6136 of file wn2c.cxx.
References WN2C_Opc2cname, WN2C_Opc2cname_Map, WN2C_Opr_Handler, WN2C_Opr_Handler_Map, and WN2C_unsupported().
Referenced by W2C_Init().

| void WN2C_memref_lhs | ( | TOKEN_BUFFER | tokens, | |
| TY_IDX * | memref_typ, | |||
| const WN * | lhs, | |||
| STAB_OFFSET | memref_ofst, | |||
| TY_IDX | memref_addr_ty, | |||
| TY_IDX | memref_object_ty, | |||
| MTYPE | dtype, | |||
| CONTEXT | context | |||
| ) |
Definition at line 6358 of file wn2c.cxx.
References Prepend_Token_Special(), STATUS_is_lvalue, TY_Is_Pointer(), TY_pointed(), WN2C_lvalue_wn(), WN2C_MemAccess_Type(), and WN_Tree_Type().
Referenced by W2C_Translate_Istore_Lhs(), WN2C_iload(), WN2C_istore(), and WN2C_Value_Reference().

| BOOL WN2C_new_symtab | ( | void | ) |
Definition at line 6179 of file wn2c.cxx.
References CURRENT_SYMTAB.
Referenced by W2C_Pop_PU(), WN2C_block(), and WN2C_translate_file_scope_defs().
| void WN2C_stid_lhs | ( | TOKEN_BUFFER | tokens, | |
| TY_IDX * | stored_typ, | |||
| const ST * | lhs_st, | |||
| STAB_OFFSET | stid_ofst, | |||
| TY_IDX | stid_ty, | |||
| MTYPE | dtype, | |||
| CONTEXT | context | |||
| ) |
Definition at line 6408 of file wn2c.cxx.
References CLASS_PREG, Prepend_Token_Special(), PUinfo_Preg_Type(), ST_sym_class(), ST_type(), STATUS_is_lvalue, WN2C_Append_Preg(), WN2C_lvalue_st(), and WN2C_SymAccess_Type().
Referenced by Append_A_Clause_Symbol(), Append_Nest_Clauses(), W2C_Translate_Stid_Lhs(), and WN2C_stid().

| STATUS WN2C_translate | ( | TOKEN_BUFFER | tokens, | |
| const WN * | wn, | |||
| CONTEXT | context | |||
| ) |
Definition at line 6196 of file wn2c.cxx.
References WN2C_Opr_Handler, and WN_operator().
Referenced by Append_Distribution(), W2C_Outfile_Translate_Pu(), W2C_Translate_Wn(), W2C_Translate_Wn_Str(), WN2C_alloca(), WN2C_Append_Assignment(), WN2C_array(), WN2C_call(), WN2C_comma(), WN2C_compgoto(), WN2C_complex(), WN2C_compose_bits(), WN2C_condbr(), WN2C_cvt(), WN2C_cvtl(), WN2C_dealloca(), WN2C_do_loop(), WN2C_do_while(), WN2C_eval(), WN2C_extract_bits(), WN2C_func_entry(), WN2C_Function_Return_Value(), WN2C_if(), WN2C_imagpart(), WN2C_intrinsic_op(), WN2C_lvalue_wn(), WN2C_mstore(), WN2C_Normalize_Idx_To_Onedim(), WN2C_paren(), WN2C_parm(), WN2C_prefetch(), WN2C_rcomma(), WN2C_realpart(), WN2C_return_val(), WN2C_select(), WN2C_stid(), WN2C_switch(), WN2C_tas(), WN2C_Translate_Arithmetic_Operand(), WN2C_Translate_Comma_Sequence(), WN2C_Translate_Stmt_Sequence(), WN2C_Value_Reference(), and WN2C_while_do().

Definition at line 6218 of file wn2c.cxx.
References CURRENT_SYMTAB, NULL, TRUE, W2C_DOTH_FILE, W2C_File, WN2C_Append_Symtab_Consts(), WN2C_Append_Symtab_Vars(), WN2C_new_symtab(), and Write_String().
Referenced by W2C_Outfile_Fini(), and W2C_Translate_Global_Defs().

| STATUS WN2C_translate_purple_main | ( | TOKEN_BUFFER | tokens, | |
| const WN * | pu, | |||
| const char * | region_name, | |||
| CONTEXT | context | |||
| ) |
Definition at line 6255 of file wn2c.cxx.
References Append_And_Reclaim_Token_List(), Append_Indented_Newline(), Append_Token_Special(), Append_Token_String(), CONTEXT_set_srcpos, CONTEXT_srcpos, Decrement_Indentation(), Increment_Indentation(), Is_True, KIND_VOID, New_Token_Buffer(), OPR_FUNC_ENTRY, PUINFO_RETURN_TO_PARAM, ST2C_decl_translate(), TY2C_translate_unqualified(), TY_kind(), W2CF_Symtab_Nameof_St(), WN2C_Append_Purple_Funcinfo(), WN2C_Stmt_Newline(), WN_formal, WN_Get_Linenum(), WN_num_formals, WN_operator(), and WN_st().
Referenced by W2C_Translate_Purple_Main().

| void WN2C_translate_structured_types | ( | void | ) |
Definition at line 6208 of file wn2c.cxx.
References NULL, W2C_DOTH_FILE, W2C_File, WN2C_Append_Symtab_Types(), and Write_String().
Referenced by W2C_Outfile_Init(), and W2C_Translate_Global_Types().

1.7.1