darwin-protos.h revision 90075
190075Sobrien/* Prototypes.
290075Sobrien   Copyright (C) 2001 Free Software Foundation, Inc.
390075Sobrien
490075SobrienThis file is part of GNU CC.
590075Sobrien
690075SobrienGNU CC is free software; you can redistribute it and/or modify
790075Sobrienit under the terms of the GNU General Public License as published by
890075Sobrienthe Free Software Foundation; either version 2, or (at your option)
990075Sobrienany later version.
1090075Sobrien
1190075SobrienGNU CC is distributed in the hope that it will be useful,
1290075Sobrienbut WITHOUT ANY WARRANTY; without even the implied warranty of
1390075SobrienMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1490075SobrienGNU General Public License for more details.
1590075Sobrien
1690075SobrienYou should have received a copy of the GNU General Public License
1790075Sobrienalong with GNU CC; see the file COPYING.  If not, write to
1890075Sobrienthe Free Software Foundation, 59 Temple Place - Suite 330,
1990075SobrienBoston, MA 02111-1307, USA.  */
2090075Sobrien
2190075Sobrienextern int name_needs_quotes PARAMS ((const char *));
2290075Sobrien
2390075Sobrienextern void machopic_validate_stub_or_non_lazy_ptr PARAMS ((const char *, int));
2490075Sobrien
2590075Sobrienextern char *machopic_function_base_name PARAMS ((void));
2690075Sobrienextern char *machopic_non_lazy_ptr_name PARAMS ((const char*));
2790075Sobrienextern char *machopic_stub_name PARAMS ((const char*));
2890075Sobrien
2990075Sobrienextern void machopic_add_gc_roots PARAMS ((void));
3090075Sobrien
3190075Sobrienextern void machopic_picsymbol_stub_section PARAMS ((void));
3290075Sobrienextern void machopic_symbol_stub_section PARAMS ((void));
3390075Sobrienextern void machopic_lazy_symbol_ptr_section PARAMS ((void));
3490075Sobrienextern void machopic_nl_symbol_ptr_section PARAMS ((void));
3590075Sobrien
3690075Sobrienextern void constructor_section PARAMS ((void));
3790075Sobrienextern void destructor_section PARAMS ((void));
3890075Sobrienextern void mod_init_section PARAMS ((void));
3990075Sobrienextern void mod_term_section PARAMS ((void));
4090075Sobrien
4190075Sobrien#ifdef RTX_CODE
4290075Sobrien
4390075Sobrienextern int machopic_operand_p PARAMS ((rtx));
4490075Sobrienextern enum machopic_addr_class machopic_classify_name PARAMS ((const char*));
4590075Sobrien
4690075Sobrienextern rtx machopic_indirect_data_reference PARAMS ((rtx, rtx));
4790075Sobrienextern rtx machopic_indirect_call_target PARAMS ((rtx));
4890075Sobrienextern rtx machopic_legitimize_pic_address PARAMS ((rtx, enum machine_mode, rtx));
4990075Sobrien
5090075Sobrienextern void machopic_asm_out_constructor PARAMS ((rtx, int));
5190075Sobrienextern void machopic_asm_out_destructor PARAMS ((rtx, int));
5290075Sobrien#endif /* RTX_CODE */
5390075Sobrien
5490075Sobrien#ifdef TREE_CODE
5590075Sobrien
5690075Sobrienextern enum machopic_addr_class machopic_classify_ident PARAMS ((tree));
5790075Sobrienextern void machopic_define_ident PARAMS ((tree));
5890075Sobrienextern void machopic_define_name PARAMS ((const char*));
5990075Sobrienextern int machopic_name_defined_p PARAMS ((const char*));
6090075Sobrienextern int machopic_ident_defined_p PARAMS ((tree));
6190075Sobrienextern void darwin_encode_section_info PARAMS ((tree));
6290075Sobrien
6390075Sobrien#endif /* TREE_CODE */
6490075Sobrien
6590075Sobrienextern void machopic_finish PARAMS ((FILE *));
6690075Sobrien
6790075Sobrienextern void machopic_output_possible_stub_label PARAMS ((FILE *, const char*));
6890075Sobrien
6990075Sobrienextern void darwin_exception_section PARAMS ((void));
7090075Sobrienextern void darwin_eh_frame_section PARAMS ((void));
7190075Sobrien
7290075Sobrien#ifdef GCC_C_PRAGMA_H
7390075Sobrienextern void darwin_pragma_ignore PARAMS ((cpp_reader *));
7490075Sobrienextern void darwin_pragma_options PARAMS ((cpp_reader *));
7590075Sobrienextern void darwin_pragma_unused PARAMS ((cpp_reader *));
7690075Sobrien#endif
77