OSDN Git Service

Mark ChangeLog
[pf3gnuchains/gcc-fork.git] / gcc / go / ChangeLog
1 2012-03-09  Ian Lance Taylor  <iant@google.com>
2
3         * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
4         to the lhs type if necessary.
5
6 2012-03-08  Ian Lance Taylor  <iant@google.com>
7
8         * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
9         zero-sized variable.
10         (go_non_zero_struct): New global variable.
11         (Gcc_backend::non_zero_size_type): New function.
12         (Gcc_backend::global_variable): Don't build an assignment for a
13         zero-sized value.
14         * go-c.h (go_non_zero_struct): Declare.
15         * config-lang.in (gtfiles): Add go-c.h.
16
17 2012-02-29  Ian Lance Taylor  <iant@google.com>
18
19         * go-gcc.cc (class Gcc_tree): Add set_tree method.
20         (set_placeholder_pointer_type): When setting to a pointer to
21         error, set to error_mark_node.
22
23 2012-02-23  Richard Guenther  <rguenther@suse.de>
24
25         * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
26         build_distinct_type_copy.
27
28 2012-02-17  Ian Lance Taylor  <iant@google.com>
29
30         * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
31
32 2012-02-17  Ian Lance Taylor  <iant@google.com>
33
34         * gospec.c (lang_specific_driver): If linking, and no -o option
35         was used, add one.
36
37 2012-02-14  Ian Lance Taylor  <iant@google.com>
38
39         PR go/48411
40         * Make-lang.in (gccgo-cross$(exeext)): New target.
41         (go.all.cross): Depend on gccgo-cross$(exeext) instead of
42         gccgo$(exeext).
43         (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
44         gccgo-cross$(exeext) does not exist.
45
46 2012-02-07  Ian Lance Taylor  <iant@google.com>
47
48         * gccgo.texi (Function Names): Document //extern instead of
49         __asm__.
50
51 2012-02-01  Jakub Jelinek  <jakub@redhat.com>
52
53         PR target/52079
54         * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
55         return build_nonstandard_integer_type result if possible.
56
57 2012-01-21  Ian Lance Taylor  <iant@google.com>
58
59         * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
60         (Gcc_backend::type_alignment): Likewise.
61         (Gcc_backend::type_field_alignment): Likewise.
62         (Gcc_backend::type_field_offset): Likewise.
63
64 2012-01-20  Ian Lance Taylor  <iant@google.com>
65
66         * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
67         be empty.
68         (Gcc_backend::set_placeholder_struct_type): Likewise.
69
70 2012-01-17  Ian Lance Taylor  <iant@google.com>
71
72         * gospec.c (lang_specific_driver): If we see -S without -o, add -o
73         BASE.s rather than -o BASE.o.
74
75 2012-01-11  Ian Lance Taylor  <iant@google.com>
76
77         * go-lang.c (go_langhook_init): Initialize void_list_node before
78         calling go_create_gogo.
79
80 2012-01-10  Ian Lance Taylor  <iant@google.com>
81
82         * go-gcc.cc (Gcc_backend::type_size): New function.
83         (Gcc_backend::type_alignment): New function.
84         (Gcc_backend::type_field_alignment): New function.
85         (Gcc_backend::type_field_offset): New function.
86         * go-backend.c (go_type_alignment): Remove.
87         * go-c.h (go_type_alignment): Don't declare.
88
89 2011-12-27  Ian Lance Taylor  <iant@google.com>
90
91         * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
92         build_distinct_type_copy rather than build_variant_type_copy.
93         (Gcc_backend::set_placeholder_array_type): Likewise.
94         (Gcc_backend::named_type): Add special handling for builtin
95         basic types.
96
97 2011-12-22  Ian Lance Taylor  <iant@google.com>
98
99         * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
100         for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
101         (Gcc_backend::set_placeholder_struct_type): Likewise.
102         (Gcc_backend::set_placeholder_array_type): Likewise.
103         (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
104
105 2011-12-13  Ian Lance Taylor  <iant@google.com>
106
107         * go-backend.c: #include "simple-object.h" and "intl.h".
108         (GO_EXPORT_SEGMENT_NAME): Define if not defined.
109         (GO_EXPORT_SECTION_NAME): Likewise.
110         (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
111         (go_read_export_data): New function.
112         * go-c.h (go_read_export_data): Declare.
113
114 2011-11-29  Sanjoy Das  <thedigitalangel@gmail.com>
115             Ian Lance Taylor  <iant@google.com>
116
117         * go-location.h: New file.
118         * go-linemap.cc: New file.
119         * go-gcc.cc: Change all uses of source_location to Location.
120         * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
121         (GO_LINEMAP_H): New variable.
122         (GO_LEX_H): Use $(GO_LINEMAP_H).
123         (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
124         (go/go-linemap.o): New target.
125
126 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
127
128         * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
129
130 2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
131
132         * lang.opt: Add fgo-optimize-.
133         * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
134         * go-c.h (go_enable_optimize): Declare.
135         * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
136         (GO_EXPORT_H): Define.
137         (GO_IMPORT_H): Add $(GO_EXPORT_H).
138         (GO_AST_DUMP_H): Define.
139         (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
140         (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
141         (go/types.o): Likewise.
142         (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
143         (go/go-optimize.o): New target.
144
145 2011-08-24  Joseph Myers  <joseph@codesourcery.com>
146
147         * Make-lang.in (CFLAGS-go/go-lang.o): New.
148         (go/go-lang.o): Remove explicit compilation rule.
149
150 2011-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
151
152         * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
153
154 2011-08-02  Roberto Lublinerman  <rluble@gmail.com>
155
156         * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
157         (go/ast-dump.o): New target.
158         (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
159         (go/statements.o): Likewise.
160
161 2011-07-06  Richard Guenther  <rguenther@suse.de>
162
163         * go-lang.c (go_langhook_init):
164         Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
165
166 2011-06-14  Joseph Myers  <joseph@codesourcery.com>
167
168         * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
169         dependencies.
170         * go-backend.c: Include common/common-target.h.
171         (go_write_export_data): Use targetm_common.have_named_sections.
172         * go-lang.c: Include common/common-target.h.
173         (go_langhook_init_options_struct): Use
174         targetm_common.supports_split_stack.
175
176 2011-06-13  Ian Lance Taylor  <iant@google.com>
177
178         * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
179
180 2011-06-10  Ian Lance Taylor  <iant@google.com>
181
182         * go-gcc.cc: Include "toplev.h".
183         (Gcc_backend::immutable_struct): New function.
184         (Gcc_backend::immutable_struct_set_init): New function.
185         (Gcc_backend::immutable_struct_reference): New function.
186         * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
187
188 2011-06-09  Ian Lance Taylor  <iant@google.com>
189
190         * go-gcc.cc (Gcc_backend::zero_expression): New function.
191
192 2011-06-07  Richard Guenther  <rguenther@suse.de>
193
194         * go-lang.c (go_langhook_init): Do not set
195         size_type_node or call set_sizetype.
196
197 2011-05-27  Ian Lance Taylor  <iant@google.com>
198
199         * go-backend.c: Include "output.h".
200         (go_write_export_data): New function.
201         * go-c.h (go_write_export_data): Declare.
202         * Make-lang.in (go/go-backend.o): Depend on output.h.
203         (go/export.o): Depend on $(GO_C_H).  Do not depend on
204         $(MACHMODE_H), output.h, or $(TARGET_H).
205
206 2011-05-24  Joseph Myers  <joseph@codesourcery.com>
207
208         * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
209         (gccgo$(exeext)): Use libcommon-target.a.
210
211 2011-05-20  Joseph Myers  <joseph@codesourcery.com>
212
213         * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
214
215 2011-05-13  Ian Lance Taylor  <iant@google.com>
216
217         * go-gcc.cc (Gcc_backend::function_type): When building a struct
218         for multiple results, check that all fields types have a size.
219         (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
220
221 2011-05-12  Ian Lance Taylor  <iant@google.com>
222
223         * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
224         parameter.
225         (Gcc_backend::parameter_variable): Likewise.
226
227 2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
228
229         * go-lang.c (global_bindings_p): Return bool and simplify.
230
231 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
232
233         * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
234
235 2011-05-04  Ian Lance Taylor  <iant@google.com>
236
237         * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
238         (Gcc_backend::fill_in_struct): New function.
239         (Gcc_backend::array_type): Implement.
240         (Gcc_backend::fill_in_array): New function.
241         (Gcc_backend::placeholder_pointer_type): New function.
242         (Gcc_backend::set_placeholder_pointer_type): New function.
243         (Gcc_backend::set_placeholder_function_type): New function.
244         (Gcc_backend::placeholder_struct_type): New function.
245         (Gcc_backend::set_placeholder_struct_type): New function.
246         (Gcc_backend::placeholder_array_type): New function.
247         (Gcc_backend::set_placeholder_array_type): New function.
248         (Gcc_backend::named_type): New function.
249         (Gcc_backend::circular_pointer_type): New function.
250         (Gcc_backend::is_circular_pointer_type): New function.
251
252 2011-04-26  Ian Lance Taylor  <iant@google.com>
253
254         * go-gcc.cc (Gcc_backend::struct_type): Implement.
255
256 2011-04-25  Ian Lance Taylor  <iant@google.com>
257
258         * go-gcc.cc (Gcc_backend::error_type): Implement.
259         (Gcc_backend::string_type): Remove.
260         (Gcc_backend::function_type): Change signature and implement.
261         (Gcc_backend::struct_type): Change signature.
262         (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
263         (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
264         (Gcc_backend::pointer_type): Check for error.
265         * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
266
267 2011-04-25  Evan Shaw  <edsrzf@gmail.com>
268
269         * go-gcc.c (class Gcc_tree): Make get_tree const.
270         (Gcc_backend::void_type): Implement.
271         (Gcc_backend::bool_type): Implement.
272         (Gcc_backend::integer_type): Implement.
273         (Gcc_backend::float_type): Implement.
274         (Gcc_backend::complex_type): New function.
275         (Gcc_backend::pointer_type): New function.
276         (Gcc_backend::make_type): New function.
277         (type_to_tree): New function.
278
279 2011-04-21  Ian Lance Taylor  <iant@google.com>
280
281         * go-system.h (go_assert, go_unreachable): Define.
282
283 2011-04-19  Ian Lance Taylor  <iant@google.com>
284
285         * go-system.h: Include "intl.h".
286         * Make-lang.in (GO_SYSTEM_H): Add intl.h.
287         (go/statements.o): Remove dependencies on intl.h $(TREE_H)
288         $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
289
290 2011-04-19  Ian Lance Taylor  <iant@google.com>
291
292         * go-gcc.cc (Gcc_backend::temporary_variable): New function.
293
294 2011-04-19  Ian Lance Taylor  <iant@google.com>
295
296         * go-gcc.cc (class Bblock): Define.
297         (Gcc_backend::if_statement): Change then_block and else_block to
298         Bblock*.
299         (Gcc_backend::block): New function.
300         (Gcc_backend::block_add_statements): New function.
301         (Gcc_backend::block_statement): New function.
302         (tree_to_block, block_to_tree): New functions.
303
304 2011-04-18  Ian Lance Taylor  <iant@google.com>
305
306         * go-gcc.cc: Include "go-c.h".
307         (class Bvariable): Define.
308         (Gcc_backend::init_statement): New function.
309         (Gcc_backend::global_variable): New function.
310         (Gcc_backend::global_variable_set_init): New function.
311         (Gcc_backend::local_variable): New function.
312         (Gcc_backend::parameter_variable): New function.
313         (tree_to_type, var_to_tree): New functions.
314         * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
315         * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
316
317 2011-04-15  Ian Lance Taylor  <iant@google.com>
318
319         * go-gcc.cc (Gcc_backend::compound_statement): New function.
320         (Gcc_backend::assignment_statement): Use error_statement.
321         (Gcc_backend::return_statement): Likewise.
322         (Gcc_backend::if_statement): Likewise.
323         (Gcc_backend::switch_statement): Likewise.
324         (Gcc_backend::statement_list): Likewise.
325
326 2011-04-14  Ian Lance Taylor  <iant@google.com>
327
328         * go-gcc.cc (Backend::error_statement): New function.
329
330 2011-04-13  Ian Lance Taylor  <iant@google.com>
331
332         * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
333
334 2011-04-13  Ian Lance Taylor  <iant@google.com>
335
336         * Make-lang.in (GO_OBJS): Add go/runtime.o.
337         (GO_RUNTIME_H): New variable.
338         (go/runtime.o): New target.
339         (go/gogo.o): Depend on $(GO_RUNTIME_H).
340         (go/statements.o): Likewise.
341
342 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
343
344         * go-lang.c (union lang_tree_node): Check for TS_COMMON before
345         calling TREE_CHAIN.
346
347 2011-04-06  Ian Lance Taylor  <iant@google.com>
348
349         * go-gcc.cc (if_statement): Use build3_loc.
350         (Gcc_backend::switch_statement): New function.
351         (Gcc_backend::statement_list): New function.
352
353 2011-04-06  Ian Lance Taylor  <iant@google.com>
354
355         * go-gcc.cc (Gcc_backend::if_statement): New function.
356         (tree_to_stat): New function.
357         (expr_to_tree): Renamed from expression_to_tree.
358         (stat_to_tree): Renamed from statement_to_tree.
359
360 2011-04-06  Ian Lance Taylor  <iant@google.com>
361
362         * go-gcc.cc (Gcc_backend::expression_statement): New function.
363
364 2011-04-04  Ian Lance Taylor  <iant@google.com>
365
366         * go-gcc.c (class Blabel): Define.
367         (Gcc_backend::make_expression): New function.
368         (get_identifier_from_string): New function.
369         (Gcc_backend::label): New function.
370         (Gcc_backend::label_definition_statement): New function.
371         (Gcc_backend::goto_statement): New function.
372         (Gcc_backend::label_address): New function.
373         (expression_to_tree): New function.
374         * Make-lang.in (go/expressions.o): Depend on
375         go/gofrontend/backend.h.
376         (go/gogo.o): Likewise.
377
378 2011-04-04  Ian Lance Taylor  <iant@google.com>
379
380         * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
381         (class Bfunction): Define.
382         (Gcc_backend::assignment_statement): Rename from assignment.
383         Check for errors.
384         (Gcc_backend::return_statement): New function.
385         (tree_to_function): New function.
386         * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
387         $(GIMPLE_H), and $(GO_GOGO_H).
388
389 2011-04-03  Ian Lance Taylor  <iant@google.com>
390
391         * go-gcc.cc: New file.
392         * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
393         (go/go-gcc.o): New target.
394         (go/go.o): Depend on go/gofrontend/backend.h.
395         (go/statements.o): Likewise.
396
397 2011-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
398
399         * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
400
401 2011-02-08  Ian Lance Taylor  <iant@google.com>
402
403         * go-lang.c (go_langhook_init_options_struct): Set
404         frontend_set_flag_errno_math.  Don't set x_flag_trapping_math.
405
406 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
407
408         * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
409         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
410
411 2011-01-21  Ian Lance Taylor  <iant@google.com>
412
413         * go-lang.c (go_langhook_init): Omit float_type_size when calling
414         go_create_gogo.
415         * go-c.h: Update declaration of go_create_gogo.
416
417 2011-01-13  Ian Lance Taylor  <iant@google.com>
418
419         * go-backend.c: Include "rtl.h" and "target.h".
420         (go_imported_unsafe): New function.
421         * go-c.h (go_imported_unsafe): Declare.
422         * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
423         (go/gogo-tree.o): Remove dependency on $(RTL_H).
424         (go/unsafe.o): Depend on $(GO_C_H).
425
426 2010-12-31  Joern Rennecke  <amylaar@spamcop.net>
427
428         PR go/47113
429         * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
430         variable ‘field’ .
431
432 2010-12-21  Ian Lance Taylor  <iant@google.com>
433
434         * Make-lang.in (check-go): Remove.
435         (lang_checks_parallelized): Add check-go.
436         (check_go_parallelize): Set.
437
438 2010-12-13  Ian Lance Taylor  <iant@google.com>
439
440         * gospec.c (lang_specific_driver): Add a -o option if not linking
441         and there is no -o option already.
442
443 2010-12-07  Ian Lance Taylor  <iant@google.com>
444
445         PR tree-optimization/46805
446         PR tree-optimization/46833
447         * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
448
449 2010-12-06  Ian Lance Taylor  <iant@google.com>
450
451         PR other/46789
452         PR bootstrap/46812
453         * go-lang.c (go_char_p): Define type and vectors.
454         (go_search_dirs): New static variable.
455         (go_langhook_handle_option): Use version and version/machine
456         directories for -L.
457         (go_langhook_post_options): Add non-specific -L paths.
458         * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
459         DEFAULT_TARGET_MACHINE when compiling.
460         * gccgo.texi (Invoking gccgo): Only document -L for linking.
461         (Import and Export): Don't mention -L for finding import files.
462
463 2010-12-03  Ian Lance Taylor  <iant@google.com>
464
465         PR bootstrap/46776
466         * go-backend.c: New file.
467         * go-c.h (go_type_alignment): Declare.
468         (go_field_alignment, go_trampoline_info): Declare.
469         * Make-lang.in (GO_OBJS): Add go/go-backend.o.
470         (go/go-backend.o): New target.
471         (go/go-lang.o): Make dependencies match source file.
472         (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
473         (go/gogo-tree.o): Don't depend on $(TM_H).
474
475 2010-12-03  Ian Lance Taylor  <iant@google.com>
476
477         * config-lang.in (build_by_default): Set to no.
478
479 2010-12-02  Ian Lance Taylor  <iant@google.com>
480
481         Go frontend added to gcc repository.