diff options
Diffstat (limited to 'gcc/expr.h')
-rw-r--r-- | gcc/expr.h | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/gcc/expr.h b/gcc/expr.h index 3ff0145f33e..7bd457fd62b 100644 --- a/gcc/expr.h +++ b/gcc/expr.h @@ -297,6 +297,10 @@ enum optab_methods OPTAB_MUST_WIDEN }; +#ifdef EXTRA_TARGET +namespace EXTRA_TARGET { +#endif + /* Generate code for a simple binary or unary operation. "Simple" in this case means "can be unambiguously described by a (mode, code) pair and mapped to a single optab." */ @@ -337,8 +341,16 @@ extern void emit_indirect_jump (rtx); /* Generate a conditional trap instruction. */ extern rtx gen_cond_trap (enum rtx_code, rtx, rtx, rtx); +#ifdef EXTRA_TARGET +} /* Close EXTRA_TARGET namespace. */ +#endif + #include "insn-config.h" +#ifdef EXTRA_TARGET +namespace EXTRA_TARGET { +#endif + #ifdef HAVE_conditional_move /* Emit a conditional move operation. */ rtx emit_conditional_move (rtx, enum rtx_code, rtx, rtx, enum machine_mode, @@ -407,6 +419,10 @@ extern rtx convert_to_mode (enum machine_mode, rtx, int); /* Convert an rtx to MODE from OLDMODE and return the result. */ extern rtx convert_modes (enum machine_mode, enum machine_mode, rtx, int); +#ifdef EXTRA_TARGET +} /* Close EXTRA_TARGET namespace. */ +#endif + /* Emit code to move a block Y to a block X. */ enum block_op_methods @@ -418,6 +434,10 @@ enum block_op_methods BLOCK_OP_TAILCALL }; +#ifdef EXTRA_TARGET +namespace EXTRA_TARGET { +#endif + extern GTY(()) tree block_clear_fn; extern void init_block_move_fn (const char *); extern void init_block_clear_fn (const char *); @@ -602,11 +622,19 @@ extern void do_compare_rtx_and_jump (rtx, rtx, enum rtx_code, int, extern int try_casesi (tree, tree, tree, tree, rtx, rtx, rtx); extern int try_tablejump (tree, tree, tree, tree, rtx, rtx); +#ifdef EXTRA_TARGET +} /* Close EXTRA_TARGET namespace. */ +#endif + /* Functions from alias.c */ #include "alias.h" /* rtl.h and tree.h were included. */ +#ifdef EXTRA_TARGET +namespace EXTRA_TARGET { +#endif +/* Functions from explow.c */ /* Return an rtx for the size in bytes of the value of an expr. */ extern rtx expr_size (tree); @@ -618,6 +646,7 @@ extern HOST_WIDE_INT int_expr_size (tree); in its original home. This becomes invalid if any more code is emitted. */ extern rtx hard_function_value (const_tree, const_tree, const_tree, int); +/* Functions from calls.c */ extern rtx prepare_call_address (tree, rtx, rtx, rtx *, int, int); extern bool shift_return_value (enum machine_mode, bool, rtx); @@ -694,9 +723,17 @@ extern rtx adjust_automodify_address_1 (rtx, enum machine_mode, rtx, known to be in OFFSET (possibly 1). */ extern rtx offset_address (rtx, rtx, unsigned HOST_WIDE_INT); +#ifdef EXTRA_TARGET +} /* Close EXTRA_TARGET namespace. */ +#endif + /* Definitions from emit-rtl.c */ #include "emit-rtl.h" +#ifdef EXTRA_TARGET +namespace EXTRA_TARGET { +#endif + /* Return a memory reference like MEMREF, but with its mode widened to MODE and adjusted by OFFSET. */ extern rtx widen_memory_access (rtx, enum machine_mode, HOST_WIDE_INT); @@ -765,9 +802,19 @@ extern void anti_adjust_stack (rtx); /* Add some bytes to the stack while probing it. An rtx says how many. */ extern void anti_adjust_stack_and_probe (rtx, bool); +#ifdef EXTRA_TARGET +} /* Close EXTRA_TARGET namespace. */ +#endif + /* This enum is used for the following two functions. */ enum save_level {SAVE_BLOCK, SAVE_FUNCTION, SAVE_NONLOCAL}; +enum extraction_pattern { EP_insv, EP_extv, EP_extzv }; + +#ifdef EXTRA_TARGET +namespace EXTRA_TARGET { +#endif + /* Save the stack pointer at the specified level. */ extern void emit_stack_save (enum save_level, rtx *, rtx); @@ -795,7 +842,6 @@ extern rtx hard_libcall_value (enum machine_mode, rtx); insert/extract insn, or MAX_MACHINE_MODE if no such insn is available. */ -enum extraction_pattern { EP_insv, EP_extv, EP_extzv }; extern enum machine_mode mode_for_extraction (enum extraction_pattern, int); @@ -830,4 +876,8 @@ rtx get_personality_function (tree); extern int vector_mode_valid_p (enum machine_mode); +#ifdef EXTRA_TARGET +} /* Close EXTRA_TARGET namespace. */ +#endif + #endif /* GCC_EXPR_H */ |