Use backend interface for zero initialization.
[official-gcc.git] / gcc / go / ChangeLog
blobaac428bfa8b5b9fcf1a9b8d5111a2963eccdf2b2
1 2011-06-09  Ian Lance Taylor  <iant@google.com>
3         * go-gcc.cc (Gcc_backend::zero_expression): New function.
5 2011-06-07  Richard Guenther  <rguenther@suse.de>
7         * go-lang.c (go_langhook_init): Do not set
8         size_type_node or call set_sizetype.
10 2011-05-27  Ian Lance Taylor  <iant@google.com>
12         * go-backend.c: Include "output.h".
13         (go_write_export_data): New function.
14         * go-c.h (go_write_export_data): Declare.
15         * Make-lang.in (go/go-backend.o): Depend on output.h.
16         (go/export.o): Depend on $(GO_C_H).  Do not depend on
17         $(MACHMODE_H), output.h, or $(TARGET_H).
19 2011-05-24  Joseph Myers  <joseph@codesourcery.com>
21         * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
22         (gccgo$(exeext)): Use libcommon-target.a.
24 2011-05-20  Joseph Myers  <joseph@codesourcery.com>
26         * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
28 2011-05-13  Ian Lance Taylor  <iant@google.com>
30         * go-gcc.cc (Gcc_backend::function_type): When building a struct
31         for multiple results, check that all fields types have a size.
32         (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
34 2011-05-12  Ian Lance Taylor  <iant@google.com>
36         * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
37         parameter.
38         (Gcc_backend::parameter_variable): Likewise.
40 2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
42         * go-lang.c (global_bindings_p): Return bool and simplify.
44 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
46         * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
48 2011-05-04  Ian Lance Taylor  <iant@google.com>
50         * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
51         (Gcc_backend::fill_in_struct): New function.
52         (Gcc_backend::array_type): Implement.
53         (Gcc_backend::fill_in_array): New function.
54         (Gcc_backend::placeholder_pointer_type): New function.
55         (Gcc_backend::set_placeholder_pointer_type): New function.
56         (Gcc_backend::set_placeholder_function_type): New function.
57         (Gcc_backend::placeholder_struct_type): New function.
58         (Gcc_backend::set_placeholder_struct_type): New function.
59         (Gcc_backend::placeholder_array_type): New function.
60         (Gcc_backend::set_placeholder_array_type): New function.
61         (Gcc_backend::named_type): New function.
62         (Gcc_backend::circular_pointer_type): New function.
63         (Gcc_backend::is_circular_pointer_type): New function.
65 2011-04-26  Ian Lance Taylor  <iant@google.com>
67         * go-gcc.cc (Gcc_backend::struct_type): Implement.
69 2011-04-25  Ian Lance Taylor  <iant@google.com>
71         * go-gcc.cc (Gcc_backend::error_type): Implement.
72         (Gcc_backend::string_type): Remove.
73         (Gcc_backend::function_type): Change signature and implement.
74         (Gcc_backend::struct_type): Change signature.
75         (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
76         (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
77         (Gcc_backend::pointer_type): Check for error.
78         * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
80 2011-04-25  Evan Shaw  <edsrzf@gmail.com>
82         * go-gcc.c (class Gcc_tree): Make get_tree const.
83         (Gcc_backend::void_type): Implement.
84         (Gcc_backend::bool_type): Implement.
85         (Gcc_backend::integer_type): Implement.
86         (Gcc_backend::float_type): Implement.
87         (Gcc_backend::complex_type): New function.
88         (Gcc_backend::pointer_type): New function.
89         (Gcc_backend::make_type): New function.
90         (type_to_tree): New function.
92 2011-04-21  Ian Lance Taylor  <iant@google.com>
94         * go-system.h (go_assert, go_unreachable): Define.
96 2011-04-19  Ian Lance Taylor  <iant@google.com>
98         * go-system.h: Include "intl.h".
99         * Make-lang.in (GO_SYSTEM_H): Add intl.h.
100         (go/statements.o): Remove dependencies on intl.h $(TREE_H)
101         $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
103 2011-04-19  Ian Lance Taylor  <iant@google.com>
105         * go-gcc.cc (Gcc_backend::temporary_variable): New function.
107 2011-04-19  Ian Lance Taylor  <iant@google.com>
109         * go-gcc.cc (class Bblock): Define.
110         (Gcc_backend::if_statement): Change then_block and else_block to
111         Bblock*.
112         (Gcc_backend::block): New function.
113         (Gcc_backend::block_add_statements): New function.
114         (Gcc_backend::block_statement): New function.
115         (tree_to_block, block_to_tree): New functions.
117 2011-04-18  Ian Lance Taylor  <iant@google.com>
119         * go-gcc.cc: Include "go-c.h".
120         (class Bvariable): Define.
121         (Gcc_backend::init_statement): New function.
122         (Gcc_backend::global_variable): New function.
123         (Gcc_backend::global_variable_set_init): New function.
124         (Gcc_backend::local_variable): New function.
125         (Gcc_backend::parameter_variable): New function.
126         (tree_to_type, var_to_tree): New functions.
127         * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
128         * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
130 2011-04-15  Ian Lance Taylor  <iant@google.com>
132         * go-gcc.cc (Gcc_backend::compound_statement): New function.
133         (Gcc_backend::assignment_statement): Use error_statement.
134         (Gcc_backend::return_statement): Likewise.
135         (Gcc_backend::if_statement): Likewise.
136         (Gcc_backend::switch_statement): Likewise.
137         (Gcc_backend::statement_list): Likewise.
139 2011-04-14  Ian Lance Taylor  <iant@google.com>
141         * go-gcc.cc (Backend::error_statement): New function.
143 2011-04-13  Ian Lance Taylor  <iant@google.com>
145         * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
147 2011-04-13  Ian Lance Taylor  <iant@google.com>
149         * Make-lang.in (GO_OBJS): Add go/runtime.o.
150         (GO_RUNTIME_H): New variable.
151         (go/runtime.o): New target.
152         (go/gogo.o): Depend on $(GO_RUNTIME_H).
153         (go/statements.o): Likewise.
155 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
157         * go-lang.c (union lang_tree_node): Check for TS_COMMON before
158         calling TREE_CHAIN.
160 2011-04-06  Ian Lance Taylor  <iant@google.com>
162         * go-gcc.cc (if_statement): Use build3_loc.
163         (Gcc_backend::switch_statement): New function.
164         (Gcc_backend::statement_list): New function.
166 2011-04-06  Ian Lance Taylor  <iant@google.com>
168         * go-gcc.cc (Gcc_backend::if_statement): New function.
169         (tree_to_stat): New function.
170         (expr_to_tree): Renamed from expression_to_tree.
171         (stat_to_tree): Renamed from statement_to_tree.
173 2011-04-06  Ian Lance Taylor  <iant@google.com>
175         * go-gcc.cc (Gcc_backend::expression_statement): New function.
177 2011-04-04  Ian Lance Taylor  <iant@google.com>
179         * go-gcc.c (class Blabel): Define.
180         (Gcc_backend::make_expression): New function.
181         (get_identifier_from_string): New function.
182         (Gcc_backend::label): New function.
183         (Gcc_backend::label_definition_statement): New function.
184         (Gcc_backend::goto_statement): New function.
185         (Gcc_backend::label_address): New function.
186         (expression_to_tree): New function.
187         * Make-lang.in (go/expressions.o): Depend on
188         go/gofrontend/backend.h.
189         (go/gogo.o): Likewise.
191 2011-04-04  Ian Lance Taylor  <iant@google.com>
193         * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
194         (class Bfunction): Define.
195         (Gcc_backend::assignment_statement): Rename from assignment.
196         Check for errors.
197         (Gcc_backend::return_statement): New function.
198         (tree_to_function): New function.
199         * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
200         $(GIMPLE_H), and $(GO_GOGO_H).
202 2011-04-03  Ian Lance Taylor  <iant@google.com>
204         * go-gcc.cc: New file.
205         * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
206         (go/go-gcc.o): New target.
207         (go/go.o): Depend on go/gofrontend/backend.h.
208         (go/statements.o): Likewise.
210 2011-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
212         * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
214 2011-02-08  Ian Lance Taylor  <iant@google.com>
216         * go-lang.c (go_langhook_init_options_struct): Set
217         frontend_set_flag_errno_math.  Don't set x_flag_trapping_math.
219 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
221         * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
222         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
224 2011-01-21  Ian Lance Taylor  <iant@google.com>
226         * go-lang.c (go_langhook_init): Omit float_type_size when calling
227         go_create_gogo.
228         * go-c.h: Update declaration of go_create_gogo.
230 2011-01-13  Ian Lance Taylor  <iant@google.com>
232         * go-backend.c: Include "rtl.h" and "target.h".
233         (go_imported_unsafe): New function.
234         * go-c.h (go_imported_unsafe): Declare.
235         * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
236         (go/gogo-tree.o): Remove dependency on $(RTL_H).
237         (go/unsafe.o): Depend on $(GO_C_H).
239 2010-12-31  Joern Rennecke  <amylaar@spamcop.net>
241         PR go/47113
242         * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
243         variable ‘field’ .
245 2010-12-21  Ian Lance Taylor  <iant@google.com>
247         * Make-lang.in (check-go): Remove.
248         (lang_checks_parallelized): Add check-go.
249         (check_go_parallelize): Set.
251 2010-12-13  Ian Lance Taylor  <iant@google.com>
253         * gospec.c (lang_specific_driver): Add a -o option if not linking
254         and there is no -o option already.
256 2010-12-07  Ian Lance Taylor  <iant@google.com>
258         PR tree-optimization/46805
259         PR tree-optimization/46833
260         * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
262 2010-12-06  Ian Lance Taylor  <iant@google.com>
264         PR other/46789
265         PR bootstrap/46812
266         * go-lang.c (go_char_p): Define type and vectors.
267         (go_search_dirs): New static variable.
268         (go_langhook_handle_option): Use version and version/machine
269         directories for -L.
270         (go_langhook_post_options): Add non-specific -L paths.
271         * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
272         DEFAULT_TARGET_MACHINE when compiling.
273         * gccgo.texi (Invoking gccgo): Only document -L for linking.
274         (Import and Export): Don't mention -L for finding import files.
276 2010-12-03  Ian Lance Taylor  <iant@google.com>
278         PR bootstrap/46776
279         * go-backend.c: New file.
280         * go-c.h (go_type_alignment): Declare.
281         (go_field_alignment, go_trampoline_info): Declare.
282         * Make-lang.in (GO_OBJS): Add go/go-backend.o.
283         (go/go-backend.o): New target.
284         (go/go-lang.o): Make dependencies match source file.
285         (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
286         (go/gogo-tree.o): Don't depend on $(TM_H).
288 2010-12-03  Ian Lance Taylor  <iant@google.com>
290         * config-lang.in (build_by_default): Set to no.
292 2010-12-02  Ian Lance Taylor  <iant@google.com>
294         Go frontend added to gcc repository.