OSDN Git Service

* system.h (ENCODE_SECTION_INFO): Poison it.
[pf3gnuchains/gcc-fork.git] / gcc / config / mcore / mcore-protos.h
1 /* Prototypes for exported functions defined in mcore.c
2    Copyright (C) 2000, 2002 Free Software Foundation, Inc.
3    Contributed by Nick Clifton (nickc@redhat.com)
4
5 This file is part of GNU CC.
6
7 GNU CC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11
12 GNU CC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GNU CC; see the file COPYING.  If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.  */
21
22 extern const char * mcore_output_jump_label_table       PARAMS ((void));
23 extern void         mcore_expand_prolog                 PARAMS ((void));
24 extern void         mcore_expand_epilog                 PARAMS ((void));
25 extern int          mcore_const_ok_for_inline           PARAMS ((long));
26 extern int          mcore_num_ones                      PARAMS ((int));
27 extern int          mcore_num_zeros                     PARAMS ((int));
28 extern int          mcore_initial_elimination_offset    PARAMS ((int, int));
29 extern int          mcore_byte_offset                   PARAMS ((unsigned int));
30 extern int          mcore_halfword_offset               PARAMS ((unsigned int));
31 extern int          mcore_const_trick_uses_not          PARAMS ((long));
32 extern void         mcore_override_options              PARAMS ((void));
33 extern int          mcore_dllexport_name_p              PARAMS ((const char *));
34 extern int          mcore_dllimport_name_p              PARAMS ((const char *));
35 extern int          mcore_naked_function_p              PARAMS ((void));
36
37 #ifdef TREE_CODE
38 #ifdef HAVE_MACHINE_MODES
39 extern int          mcore_function_arg_partial_nregs    PARAMS ((CUMULATIVE_ARGS, enum machine_mode, tree, int));
40 extern void         mcore_setup_incoming_varargs        PARAMS ((CUMULATIVE_ARGS, enum machine_mode, tree, int *));
41 extern int          mcore_num_arg_regs                  PARAMS ((enum machine_mode, tree));
42 extern int          mcore_must_pass_on_stack            PARAMS ((enum machine_mode, tree));
43 #endif /* HAVE_MACHINE_MODES */
44
45 #ifdef RTX_CODE
46 extern rtx          mcore_function_value                PARAMS ((tree, tree));
47 #endif /* RTX_CODE */
48 #endif /* TREE_CODE */
49
50 #ifdef RTX_CODE
51
52 extern rtx arch_compare_op0;
53 extern rtx arch_compare_op1;
54
55 extern const char * mcore_output_bclri                  PARAMS ((rtx, int));
56 extern const char * mcore_output_bseti                  PARAMS ((rtx, int));
57 extern const char * mcore_output_cmov                   PARAMS ((rtx *, int, const char *));
58 extern char *       mcore_output_call                   PARAMS ((rtx *, int));
59 extern int          mcore_is_dead                       PARAMS ((rtx, rtx));
60 extern int          mcore_expand_insv                   PARAMS ((rtx *));
61 extern int          mcore_modify_comparison             PARAMS ((RTX_CODE));
62 extern void         mcore_expand_block_move             PARAMS ((rtx, rtx, rtx *));
63 extern void         mcore_dependent_reorg               PARAMS ((rtx));
64 extern int          mcore_const_costs                   PARAMS ((rtx, RTX_CODE));
65 extern int          mcore_and_cost                      PARAMS ((rtx));
66 extern int          mcore_ior_cost                      PARAMS ((rtx));
67 extern const char * mcore_output_andn                   PARAMS ((rtx, rtx *));
68 extern void         mcore_print_operand_address         PARAMS ((FILE *, rtx));
69 extern void         mcore_print_operand                 PARAMS ((FILE *, rtx, int));
70 extern rtx          mcore_gen_compare_reg               PARAMS ((RTX_CODE));
71 extern int          mcore_symbolic_address_p            PARAMS ((rtx));
72 extern enum reg_class mcore_reload_class                PARAMS ((rtx, enum reg_class));
73 extern int          mcore_is_same_reg                   PARAMS ((rtx, rtx));
74 extern int          mcore_arith_S_operand               PARAMS ((rtx));
75
76 #ifdef HAVE_MACHINE_MODES
77 extern const char * mcore_output_move                   PARAMS ((rtx, rtx *, enum machine_mode));
78 extern const char * mcore_output_movedouble             PARAMS ((rtx *, enum machine_mode));
79 extern const char * mcore_output_inline_const_forced    PARAMS ((rtx, rtx *, enum machine_mode));
80 extern int          mcore_arith_reg_operand             PARAMS ((rtx, enum machine_mode));
81 extern int          mcore_general_movsrc_operand        PARAMS ((rtx, enum machine_mode));
82 extern int          mcore_general_movdst_operand        PARAMS ((rtx, enum machine_mode));
83 extern int          mcore_reload_operand                PARAMS ((rtx, enum machine_mode));
84 extern int          mcore_arith_J_operand               PARAMS ((rtx, enum machine_mode));
85 extern int          mcore_arith_K_operand               PARAMS ((rtx, enum machine_mode));
86 extern int          mcore_arith_K_operand_not_0         PARAMS ((rtx, enum machine_mode));
87 extern int          mcore_arith_M_operand               PARAMS ((rtx, enum machine_mode));
88 extern int          mcore_arith_K_S_operand             PARAMS ((rtx, enum machine_mode));
89 extern int          mcore_arith_imm_operand             PARAMS ((rtx, enum machine_mode));
90 extern int          mcore_arith_any_imm_operand         PARAMS ((rtx, enum machine_mode));
91 extern int          mcore_arith_O_operand               PARAMS ((rtx, enum machine_mode));
92 extern int          mcore_literal_K_operand             PARAMS ((rtx, enum machine_mode));
93 extern int          mcore_addsub_operand                PARAMS ((rtx, enum machine_mode));
94 extern int          mcore_compare_operand               PARAMS ((rtx, enum machine_mode));
95 extern int          mcore_load_multiple_operation       PARAMS ((rtx, enum machine_mode));
96 extern int          mcore_store_multiple_operation      PARAMS ((rtx, enum machine_mode));
97 extern int          mcore_call_address_operand          PARAMS ((rtx, enum machine_mode));
98
99 #ifdef TREE_CODE
100 extern rtx          mcore_function_arg                  PARAMS ((CUMULATIVE_ARGS, enum machine_mode, tree, int));
101 #endif /* TREE_CODE */
102 #endif /* HAVE_MACHINE_MODES */
103 #endif /* RTX_CODE */