]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/darwin-protos.h
c-decl.c (grokdeclarator): Allow for function definition where innermost declarator...
[thirdparty/gcc.git] / gcc / config / darwin-protos.h
CommitLineData
ee890fe2 1/* Prototypes.
88462c42 2 Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
ee890fe2 3
7ec022b2 4This file is part of GCC.
ee890fe2 5
7ec022b2 6GCC is free software; you can redistribute it and/or modify
ee890fe2
SS
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
7ec022b2 11GCC is distributed in the hope that it will be useful,
ee890fe2
SS
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
7ec022b2 17along with GCC; see the file COPYING. If not, write to
ee890fe2
SS
18the Free Software Foundation, 59 Temple Place - Suite 330,
19Boston, MA 02111-1307, USA. */
20
9c808aad 21extern int name_needs_quotes (const char *);
ee890fe2 22
11abc112 23extern void machopic_validate_stub_or_non_lazy_ptr (const char *);
ee890fe2 24
9c808aad 25extern const char *machopic_function_base_name (void);
1622229c 26extern void machopic_output_function_base_name (FILE *);
11abc112
MM
27extern const char *machopic_indirection_name (rtx, bool);
28extern const char *machopic_mcount_stub_name (void);
ee890fe2 29
9c808aad
AJ
30extern void machopic_picsymbol_stub_section (void);
31extern void machopic_picsymbol_stub1_section (void);
32extern void machopic_symbol_stub_section (void);
33extern void machopic_symbol_stub1_section (void);
34extern void machopic_lazy_symbol_ptr_section (void);
35extern void machopic_nl_symbol_ptr_section (void);
ee890fe2 36
9c808aad
AJ
37extern void constructor_section (void);
38extern void destructor_section (void);
39extern void mod_init_section (void);
40extern void mod_term_section (void);
91dc3130 41
ee890fe2
SS
42#ifdef RTX_CODE
43
11abc112 44extern rtx machopic_function_base_sym (void);
9c808aad 45extern int machopic_operand_p (rtx);
11abc112 46extern enum machopic_addr_class machopic_classify_symbol (rtx);
ee890fe2 47
9c808aad
AJ
48extern rtx machopic_indirect_data_reference (rtx, rtx);
49extern rtx machopic_indirect_call_target (rtx);
50extern rtx machopic_legitimize_pic_address (rtx, enum machine_mode, rtx);
ee890fe2 51
9c808aad
AJ
52extern void machopic_asm_out_constructor (rtx, int);
53extern void machopic_asm_out_destructor (rtx, int);
ee890fe2
SS
54#endif /* RTX_CODE */
55
56#ifdef TREE_CODE
57
11abc112 58extern void machopic_define_symbol (rtx);
9c808aad 59extern void darwin_encode_section_info (tree, rtx, int);
ee890fe2
SS
60
61#endif /* TREE_CODE */
62
9c808aad 63extern void machopic_finish (FILE *);
0168a849 64
9c808aad
AJ
65extern void darwin_exception_section (void);
66extern void darwin_eh_frame_section (void);
67extern void machopic_select_section (tree, int, unsigned HOST_WIDE_INT);
68extern void machopic_select_rtx_section (enum machine_mode, rtx,
69 unsigned HOST_WIDE_INT);
3be131be 70
4746cf84
MA
71extern void darwin_unique_section (tree decl, int reloc);
72extern void darwin_asm_named_section (const char *, unsigned int);
73extern unsigned int darwin_section_type_flags (tree, const char *, int);
74extern void darwin_non_lazy_pcrel (FILE *, rtx);
75
eeab4d81 76extern void darwin_emit_unwind_label (FILE *, tree, int, int);
4746cf84 77
9c808aad
AJ
78extern void darwin_pragma_ignore (struct cpp_reader *);
79extern void darwin_pragma_options (struct cpp_reader *);
80extern void darwin_pragma_unused (struct cpp_reader *);
b64a1b53 81
9c808aad 82extern void darwin_file_end (void);
a5fe455b 83
4746cf84
MA
84extern void darwin_make_decl_one_only (tree decl);
85
b64a1b53 86/* Expanded by EXTRA_SECTION_FUNCTIONS into varasm.o. */
9c808aad
AJ
87extern void const_section (void);
88extern void const_data_section (void);
89extern void cstring_section (void);
90extern void literal4_section (void);
91extern void literal8_section (void);
92extern void constructor_section (void);
93extern void mod_init_section (void);
94extern void mod_term_section (void);
95extern void destructor_section (void);
96extern void objc_class_section (void);
97extern void objc_meta_class_section (void);
98extern void objc_category_section (void);
99extern void objc_class_vars_section (void);
100extern void objc_instance_vars_section (void);
101extern void objc_cls_meth_section (void);
102extern void objc_inst_meth_section (void);
103extern void objc_cat_cls_meth_section (void);
104extern void objc_cat_inst_meth_section (void);
105extern void objc_selector_refs_section (void);
106extern void objc_selector_fixup_section (void);
107extern void objc_symbols_section (void);
108extern void objc_module_info_section (void);
26d8a393 109extern void objc_image_info_section (void);
9c808aad
AJ
110extern void objc_protocol_section (void);
111extern void objc_string_object_section (void);
112extern void objc_constant_string_object_section (void);
113extern void objc_class_names_section (void);
114extern void objc_meth_var_names_section (void);
115extern void objc_meth_var_types_section (void);
116extern void objc_cls_refs_section (void);
117extern void machopic_lazy_symbol_ptr_section (void);
118extern void machopic_nl_symbol_ptr_section (void);
119extern void machopic_symbol_stub_section (void);
120extern void machopic_picsymbol_stub_section (void);
121extern void machopic_output_stub (FILE *, const char *, const char *);
122extern void darwin_exception_section (void);
123extern void darwin_eh_frame_section (void);
124extern void darwin_globalize_label (FILE *, const char *);
6ce4806b 125extern void darwin_assemble_visibility (tree, int);
9c808aad
AJ
126extern void darwin_asm_output_dwarf_delta (FILE *, int, const char *,
127 const char *);