diff options
author | obrien <obrien@FreeBSD.org> | 2002-12-04 15:42:16 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2002-12-04 15:42:16 +0000 |
commit | 7a1080fa5c329ea8a9505e51ce151719955bcfa2 (patch) | |
tree | 78b77287e56e2a87be73638176124be85a8fc6c7 /contrib/gcc/config/s390/s390-protos.h | |
parent | ef3bb1318428b8cfb1c8287f61b9b1f23f9bf0b5 (diff) | |
download | FreeBSD-src-7a1080fa5c329ea8a9505e51ce151719955bcfa2.zip FreeBSD-src-7a1080fa5c329ea8a9505e51ce151719955bcfa2.tar.gz |
Gcc 3.2.1 release virgin vendor import. (19-Nov-2002)
Diffstat (limited to 'contrib/gcc/config/s390/s390-protos.h')
-rw-r--r-- | contrib/gcc/config/s390/s390-protos.h | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/contrib/gcc/config/s390/s390-protos.h b/contrib/gcc/config/s390/s390-protos.h new file mode 100644 index 0000000..cd4ac10 --- /dev/null +++ b/contrib/gcc/config/s390/s390-protos.h @@ -0,0 +1,85 @@ +/* Definitions of target machine for GNU compiler, for IBM S/390. + Copyright (C) 2000 Free Software Foundation, Inc. + Contributed by Hartmut Penner (hpenner@de.ibm.com) + +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* Declare functions in s390.c. */ + +extern void optimization_options PARAMS ((int, int)); +extern void override_options PARAMS ((void)); +extern int s390_arg_frame_offset PARAMS ((void)); +extern void s390_function_prologue PARAMS ((FILE *, HOST_WIDE_INT)); +extern void s390_function_epilogue PARAMS ((FILE *, HOST_WIDE_INT)); +extern void s390_emit_prologue PARAMS ((void)); +extern void s390_emit_epilogue PARAMS ((void)); +extern void s390_function_profiler PARAMS ((FILE *, int)); + +#ifdef RTX_CODE +extern int const0_operand PARAMS ((rtx, enum machine_mode)); +extern int consttable_operand PARAMS ((rtx, enum machine_mode)); +extern int larl_operand PARAMS ((rtx, enum machine_mode)); +extern int fp_operand PARAMS ((rtx, enum machine_mode)); +extern int s_operand PARAMS ((rtx, enum machine_mode)); +extern int s_imm_operand PARAMS ((rtx, enum machine_mode)); +extern int bras_sym_operand PARAMS ((rtx, enum machine_mode)); +extern int load_multiple_operation PARAMS ((rtx, enum machine_mode)); +extern int store_multiple_operation PARAMS ((rtx, enum machine_mode)); +extern int s390_single_hi PARAMS ((rtx, enum machine_mode, int)); +extern int s390_extract_hi PARAMS ((rtx, enum machine_mode, int)); +extern int s390_single_qi PARAMS ((rtx, enum machine_mode, int)); +extern int s390_extract_qi PARAMS ((rtx, enum machine_mode, int)); + +extern int s390_match_ccmode PARAMS ((rtx, enum machine_mode)); +extern enum machine_mode s390_select_ccmode PARAMS ((enum rtx_code, rtx, rtx)); +extern int symbolic_reference_mentioned_p PARAMS ((rtx)); +extern int legitimate_la_operand_p PARAMS ((rtx)); +extern rtx legitimize_la_operand PARAMS ((rtx)); +extern int legitimate_pic_operand_p PARAMS ((rtx)); +extern int legitimate_constant_p PARAMS ((rtx)); +extern int legitimate_reload_constant_p PARAMS ((rtx)); +extern int legitimate_address_p PARAMS ((enum machine_mode, rtx, int)); +extern rtx legitimize_pic_address PARAMS ((rtx, rtx)); +extern rtx legitimize_address PARAMS ((rtx, rtx, enum machine_mode)); +extern enum reg_class s390_preferred_reload_class PARAMS ((rtx, enum reg_class)); +extern enum reg_class s390_secondary_input_reload_class PARAMS ((enum reg_class, enum machine_mode, rtx)); +extern int s390_plus_operand PARAMS ((rtx, enum machine_mode)); +extern void s390_expand_plus_operand PARAMS ((rtx, rtx, rtx)); +extern void emit_pic_move PARAMS ((rtx *, enum machine_mode)); + +extern void s390_output_symbolic_const PARAMS ((FILE *, rtx)); +extern void print_operand_address PARAMS ((FILE *, rtx)); +extern void print_operand PARAMS ((FILE *, rtx, int)); +extern void s390_output_constant_pool PARAMS ((FILE *)); +extern void s390_trampoline_template PARAMS ((FILE *)); +extern void s390_initialize_trampoline PARAMS ((rtx, rtx, rtx)); +extern rtx s390_gen_rtx_const_DI PARAMS ((int, int)); +extern rtx s390_simplify_dwarf_addr PARAMS ((rtx)); +#endif /* RTX_CODE */ + +#ifdef TREE_CODE +extern int s390_function_arg_pass_by_reference PARAMS ((enum machine_mode, tree)); +extern void s390_function_arg_advance PARAMS ((CUMULATIVE_ARGS *, enum machine_mode, tree, int)); +extern tree s390_build_va_list PARAMS ((void)); +#ifdef RTX_CODE +extern rtx s390_function_arg PARAMS ((CUMULATIVE_ARGS *, enum machine_mode, tree, int)); +extern void s390_va_start PARAMS ((int, tree, rtx)); +extern rtx s390_va_arg PARAMS ((tree, tree)); +#endif /* RTX_CODE */ +#endif /* TREE_CODE */ + |