* config/i386/i386.c (ix86_data_alignment): Calculate max_align
[official-gcc.git] / gcc / go / ChangeLog
blob5ac09319d5cfff416788bbd43a281e1194169050
1 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
3         Update copyright years
5 2014-01-02  Tobias Burnus  <burnus@net-b.de>
7         * gccgo.texi: Bump @copying's copyright year.
9 2013-12-16  Chris Manghane  <cmang@google.com>
11         * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
13 2013-12-11  Ian Lance Taylor  <iant@google.com>
15         * go-lang.c (go_langhook_post_options): Disable sibling calls by
16         default.
18 2013-12-10  Ian Lance Taylor  <iant@google.com>
20         * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
21         separately.
23 2013-12-05  Ian Lance Taylor  <iant@google.com>
25         Revert this change; no longer required.
26         2013-11-06  Ian Lance Taylor  <iant@google.com>
28         * go-lang.c (go_langhook_post_options): If
29         -fisolate-erroneous-paths was turned on by an optimization option,
30         turn it off.
32 2013-11-23  Ian Lance Taylor  <iant@google.com>
34         * go-gcc.cc (Gcc_backend::function_type): Add result_struct
35         parameter.
37 2013-11-22  Andrew MacLeod  <amacleod@redhat.com>
39         * go-gcc.cc: Add required include files from gimple.h.
40         * go-lang.c: Likewise
42 2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>
44         * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
45         tree_to_shwi throughout.
47 2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>
49         * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
50         tree_fits_shwi_p throughout.
52 2013-11-14  Andrew MacLeod  <amacleod@redhat.com>
54         * go-lang.c: Include only gimplify.h and gimple.h as needed.
56 2013-11-14  Diego Novillo  <dnovillo@google.com>
58         * go-backend.c: Include stor-layout.h.
59         * go-gcc.cc: Include stringpool.h.
60         Include stor-layout.h.
61         Include varasm.h.
62         * go-lang.c: Include stor-layout.h.
64 2013-11-12  Andrew MacLeod  <amacleod@redhat.com>
66         * go-lang.c: Include gimplify.h.
68 2013-11-06  Ian Lance Taylor  <iant@google.com>
70         * go-lang.c (go_langhook_post_options): If
71         -fisolate-erroneous-paths was turned on by an optimization option,
72         turn it off.
74 2013-10-14  Chris Manghane  <cmang@google.com>
76         * go-gcc.cc (Gcc_backend::address_expression): New function.
78 2013-10-11  Chris Manghane  <cmang@google.com>
80         * go-gcc.cc (Gcc_backend::function_code_expression): New
81         function.
83 2013-10-10  Chris Manghane  <cmang@google.com>
85         * go-gcc.cc (Gcc_backend::error_function): New function.
86         (Gcc_backend::function): New function.
87         (Gcc_backend::make_function): New function.
88         (function_to_tree): New function.
90 2013-10-04  Chris Manghane  <cmang@google.com>
92         * go-gcc.cc (Gcc_backend::convert_expression): New function.
94 2013-10-02  Chris Manghane  <cmang@google.com>
96         * go-gcc.cc: Include "real.h" and "realmpfr.h".
97         (Gcc_backend::integer_constant_expression): New function.
98         (Gcc_backend::float_constant_expression): New function.
99         (Gcc_backend::complex_constant_expression): New function.
101 2013-09-30  Chris Manghane  <cmang@google.com>
103         * go-gcc.cc (Gcc_backend::error_expression): New function.
104         (Gcc_backend::var_expression): New function.
105         (Gcc_backend::indirect_expression): New function.
107 2013-09-25  Tom Tromey  <tromey@redhat.com>
109         * Make-lang.in (gospec.o): Remove.
110         (CFLAGS-go/gospec.o): New variable.
111         (GCCGO_OBJS): Update to use go/gospec.o.
112         (go_OBJS): Define.
113         (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
114         (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
115         (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
116         (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
117         (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
118         (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
119         (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
120         (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
121         (go/unsafe.o): Remove.
122         (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
123         (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
125 2013-09-25  Tom Tromey  <tromey@redhat.com>
127         * Make-lang.in (gospec.o): Don't use subshell.
129 2013-08-28  Ian Lance Taylor  <iant@google.com>
131         * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
132         the struct is not hidden.
133         (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
135 2013-08-06  Ian Lance Taylor  <iant@google.com>
137         * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
138         compute_reloc_for_constant.
140 2013-08-02  Ian Lance Taylor  <iant@google.com>
142         * go-gcc.cc (immutable_struct_set_init): Always call
143         resolve_unique_section.
145 2013-07-24  Ian Lance Taylor  <iant@google.com>
147         * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
148         fields, recreate those fields with the first one with a non-zero
149         size.
151 2013-07-23  Ian Lance Taylor  <iant@google.com>
153         * go-backend.c: Don't #include "rtl.h".
154         (go_imported_unsafe): Don't call init_varasm_once.
155         * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
157 2013-07-23  Ian Lance Taylor  <iant@google.com>
159         * go-lang.c: Don't #include "except.h".
160         * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
162 2013-06-18  Ian Lance Taylor  <iant@google.com>
164         * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
165         parameter.
166         (Gcc_backend::immutable_struct_set_init): Likewise.
168 2013-05-16  Jason Merrill  <jason@redhat.com>
170         * Make-lang.in (go1$(exeext)): Use link mutex.
172 2013-01-16  Shenghou Ma  <minux.ma@gmail.com>
174         * gospec.c: pass -u pthread_create to linker when static linking.
176 2012-12-21  Ian Lance Taylor  <iant@google.com>
178         PR bootstrap/54659
179         * go-system.h: Don't include <cstdio>.
181 2012-12-18  Ian Lance Taylor  <iant@google.com>
183         PR go/55201
184         * gospec.c: Revert last patch.
186 2012-12-18  Andreas Schwab  <schwab@linux-m68k.org>
188         PR go/55201
189         * gospec.c (LIBATOMIC): Define.
190         (LIBATOMIC_PROFILE): Define.
191         (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
193 2012-11-29  Ian Lance Taylor  <iant@google.com>
195         * go-gcc.cc: Include "output.h".
196         (global_variable): Add is_unique_section parameter.
197         (global_variable_set_init): Adjust unique section if necessary.
198         * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
200 2012-11-17  Diego Novillo  <dnovillo@google.com>
202         Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
204         * go-lang.c: Use new vec API in vec.h.
206 2012-11-16  Ian Lance Taylor  <iant@google.com>
208         * Make-lang.in (gccgo$(exeext)): Add + at start of command.
209         (go1$(exeext)): Likewise.
211 2012-10-30  Ian Lance Taylor  <iant@google.com>
213         * lang.opt (-fgo-relative-import-path): New option.
214         * go-lang.c (go_relative_import_path): New static variable.
215         (go_langhook_init): Pass go_relative_import_path to
216         go_create_gogo.
217         (go_langhook_handle_option): Handle -fgo-relative-import-path.
218         * go-c.h (go_create_gogo): Update declaration.
219         * gccgo.texi (Invoking gccgo): Document
220         -fgo-relative-import-path.
222 2012-09-17  Ian Lance Taylor  <iant@google.com>
224         * config-lang.in (target_libs): Add target-libbacktrace.
226 2012-09-16  Ian Lance Taylor  <iant@google.com>
228         * Make-lang.in (go/gogo.o): Depend on filenames.h.
230 2012-08-14   Diego Novillo  <dnovillo@google.com>
232         Merge from cxx-conversion branch.  Configury.
234         * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
235         * go-gcc.cc: Likewise.
236         * go-system.h: Likewise.
238 2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
240         * go-lang.c (lang_decl): Add variable_size GTY option.
242 2012-05-09  Ian Lance Taylor  <iant@google.com>
244         * lang.opt: Add -fgo-pkgpath.
245         * go-lang.c (go_pkgpath): New static variable.
246         (go_prefix): New static variable.
247         (go_langhook_init): Pass go_pkgpath and go_prefix to
248         go_create_gogo.
249         (go_langhook_handle_option): Handle -fgo-pkgpath.  Change
250         -fgo-prefix handling to just set go_prefix.
251         * go-c.h (go_set_prefix): Don't declare.
252         (go_create_gogo): Add pkgpath and prefix to declaration.
253         * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
254         to pkgpath.  Don't include the package name in the asm name.
255         * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath.  Update the
256         docs for -fgo-prefix.
258 2012-04-23  Ian Lance Taylor  <iant@google.com>
260         * go-lang.c (go_langhook_init): Set MPFR precision to 256.
262 2012-04-20  Ian Lance Taylor  <iant@google.com>
264         * lang.opt: Add -fgo-check-divide-zero and
265         -fgo-check-divide-overflow.
266         * gccgo.texi (Invoking gccgo): Document new options.
268 2012-04-18  Steven Bosscher  <steven@gcc.gnu.org>
270         * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
271         with NULL_TREE type instead of void_type_node.
273 2012-03-09  Ian Lance Taylor  <iant@google.com>
275         * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
276         to the lhs type if necessary.
278 2012-03-08  Ian Lance Taylor  <iant@google.com>
280         * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
281         zero-sized variable.
282         (go_non_zero_struct): New global variable.
283         (Gcc_backend::non_zero_size_type): New function.
284         (Gcc_backend::global_variable): Don't build an assignment for a
285         zero-sized value.
286         * go-c.h (go_non_zero_struct): Declare.
287         * config-lang.in (gtfiles): Add go-c.h.
289 2012-02-29  Ian Lance Taylor  <iant@google.com>
291         * go-gcc.cc (class Gcc_tree): Add set_tree method.
292         (set_placeholder_pointer_type): When setting to a pointer to
293         error, set to error_mark_node.
295 2012-02-23  Richard Guenther  <rguenther@suse.de>
297         * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
298         build_distinct_type_copy.
300 2012-02-17  Ian Lance Taylor  <iant@google.com>
302         * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
304 2012-02-17  Ian Lance Taylor  <iant@google.com>
306         * gospec.c (lang_specific_driver): If linking, and no -o option
307         was used, add one.
309 2012-02-14  Ian Lance Taylor  <iant@google.com>
311         PR go/48411
312         * Make-lang.in (gccgo-cross$(exeext)): New target.
313         (go.all.cross): Depend on gccgo-cross$(exeext) instead of
314         gccgo$(exeext).
315         (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
316         gccgo-cross$(exeext) does not exist.
318 2012-02-07  Ian Lance Taylor  <iant@google.com>
320         * gccgo.texi (Function Names): Document //extern instead of
321         __asm__.
323 2012-02-01  Jakub Jelinek  <jakub@redhat.com>
325         PR target/52079
326         * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
327         return build_nonstandard_integer_type result if possible.
329 2012-01-21  Ian Lance Taylor  <iant@google.com>
331         * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
332         (Gcc_backend::type_alignment): Likewise.
333         (Gcc_backend::type_field_alignment): Likewise.
334         (Gcc_backend::type_field_offset): Likewise.
336 2012-01-20  Ian Lance Taylor  <iant@google.com>
338         * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
339         be empty.
340         (Gcc_backend::set_placeholder_struct_type): Likewise.
342 2012-01-17  Ian Lance Taylor  <iant@google.com>
344         * gospec.c (lang_specific_driver): If we see -S without -o, add -o
345         BASE.s rather than -o BASE.o.
347 2012-01-11  Ian Lance Taylor  <iant@google.com>
349         * go-lang.c (go_langhook_init): Initialize void_list_node before
350         calling go_create_gogo.
352 2012-01-10  Ian Lance Taylor  <iant@google.com>
354         * go-gcc.cc (Gcc_backend::type_size): New function.
355         (Gcc_backend::type_alignment): New function.
356         (Gcc_backend::type_field_alignment): New function.
357         (Gcc_backend::type_field_offset): New function.
358         * go-backend.c (go_type_alignment): Remove.
359         * go-c.h (go_type_alignment): Don't declare.
361 2011-12-27  Ian Lance Taylor  <iant@google.com>
363         * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
364         build_distinct_type_copy rather than build_variant_type_copy.
365         (Gcc_backend::set_placeholder_array_type): Likewise.
366         (Gcc_backend::named_type): Add special handling for builtin
367         basic types.
369 2011-12-22  Ian Lance Taylor  <iant@google.com>
371         * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
372         for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
373         (Gcc_backend::set_placeholder_struct_type): Likewise.
374         (Gcc_backend::set_placeholder_array_type): Likewise.
375         (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
377 2011-12-13  Ian Lance Taylor  <iant@google.com>
379         * go-backend.c: #include "simple-object.h" and "intl.h".
380         (GO_EXPORT_SEGMENT_NAME): Define if not defined.
381         (GO_EXPORT_SECTION_NAME): Likewise.
382         (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
383         (go_read_export_data): New function.
384         * go-c.h (go_read_export_data): Declare.
386 2011-11-29  Sanjoy Das  <thedigitalangel@gmail.com>
387             Ian Lance Taylor  <iant@google.com>
389         * go-location.h: New file.
390         * go-linemap.cc: New file.
391         * go-gcc.cc: Change all uses of source_location to Location.
392         * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
393         (GO_LINEMAP_H): New variable.
394         (GO_LEX_H): Use $(GO_LINEMAP_H).
395         (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
396         (go/go-linemap.o): New target.
398 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
400         * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
402 2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
404         * lang.opt: Add fgo-optimize-.
405         * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
406         * go-c.h (go_enable_optimize): Declare.
407         * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
408         (GO_EXPORT_H): Define.
409         (GO_IMPORT_H): Add $(GO_EXPORT_H).
410         (GO_AST_DUMP_H): Define.
411         (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
412         (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
413         (go/types.o): Likewise.
414         (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
415         (go/go-optimize.o): New target.
417 2011-08-24  Joseph Myers  <joseph@codesourcery.com>
419         * Make-lang.in (CFLAGS-go/go-lang.o): New.
420         (go/go-lang.o): Remove explicit compilation rule.
422 2011-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
424         * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
426 2011-08-02  Roberto Lublinerman  <rluble@gmail.com>
428         * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
429         (go/ast-dump.o): New target.
430         (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
431         (go/statements.o): Likewise.
433 2011-07-06  Richard Guenther  <rguenther@suse.de>
435         * go-lang.c (go_langhook_init):
436         Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
438 2011-06-14  Joseph Myers  <joseph@codesourcery.com>
440         * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
441         dependencies.
442         * go-backend.c: Include common/common-target.h.
443         (go_write_export_data): Use targetm_common.have_named_sections.
444         * go-lang.c: Include common/common-target.h.
445         (go_langhook_init_options_struct): Use
446         targetm_common.supports_split_stack.
448 2011-06-13  Ian Lance Taylor  <iant@google.com>
450         * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
452 2011-06-10  Ian Lance Taylor  <iant@google.com>
454         * go-gcc.cc: Include "toplev.h".
455         (Gcc_backend::immutable_struct): New function.
456         (Gcc_backend::immutable_struct_set_init): New function.
457         (Gcc_backend::immutable_struct_reference): New function.
458         * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
460 2011-06-09  Ian Lance Taylor  <iant@google.com>
462         * go-gcc.cc (Gcc_backend::zero_expression): New function.
464 2011-06-07  Richard Guenther  <rguenther@suse.de>
466         * go-lang.c (go_langhook_init): Do not set
467         size_type_node or call set_sizetype.
469 2011-05-27  Ian Lance Taylor  <iant@google.com>
471         * go-backend.c: Include "output.h".
472         (go_write_export_data): New function.
473         * go-c.h (go_write_export_data): Declare.
474         * Make-lang.in (go/go-backend.o): Depend on output.h.
475         (go/export.o): Depend on $(GO_C_H).  Do not depend on
476         $(MACHMODE_H), output.h, or $(TARGET_H).
478 2011-05-24  Joseph Myers  <joseph@codesourcery.com>
480         * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
481         (gccgo$(exeext)): Use libcommon-target.a.
483 2011-05-20  Joseph Myers  <joseph@codesourcery.com>
485         * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
487 2011-05-13  Ian Lance Taylor  <iant@google.com>
489         * go-gcc.cc (Gcc_backend::function_type): When building a struct
490         for multiple results, check that all fields types have a size.
491         (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
493 2011-05-12  Ian Lance Taylor  <iant@google.com>
495         * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
496         parameter.
497         (Gcc_backend::parameter_variable): Likewise.
499 2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
501         * go-lang.c (global_bindings_p): Return bool and simplify.
503 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
505         * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
507 2011-05-04  Ian Lance Taylor  <iant@google.com>
509         * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
510         (Gcc_backend::fill_in_struct): New function.
511         (Gcc_backend::array_type): Implement.
512         (Gcc_backend::fill_in_array): New function.
513         (Gcc_backend::placeholder_pointer_type): New function.
514         (Gcc_backend::set_placeholder_pointer_type): New function.
515         (Gcc_backend::set_placeholder_function_type): New function.
516         (Gcc_backend::placeholder_struct_type): New function.
517         (Gcc_backend::set_placeholder_struct_type): New function.
518         (Gcc_backend::placeholder_array_type): New function.
519         (Gcc_backend::set_placeholder_array_type): New function.
520         (Gcc_backend::named_type): New function.
521         (Gcc_backend::circular_pointer_type): New function.
522         (Gcc_backend::is_circular_pointer_type): New function.
524 2011-04-26  Ian Lance Taylor  <iant@google.com>
526         * go-gcc.cc (Gcc_backend::struct_type): Implement.
528 2011-04-25  Ian Lance Taylor  <iant@google.com>
530         * go-gcc.cc (Gcc_backend::error_type): Implement.
531         (Gcc_backend::string_type): Remove.
532         (Gcc_backend::function_type): Change signature and implement.
533         (Gcc_backend::struct_type): Change signature.
534         (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
535         (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
536         (Gcc_backend::pointer_type): Check for error.
537         * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
539 2011-04-25  Evan Shaw  <edsrzf@gmail.com>
541         * go-gcc.c (class Gcc_tree): Make get_tree const.
542         (Gcc_backend::void_type): Implement.
543         (Gcc_backend::bool_type): Implement.
544         (Gcc_backend::integer_type): Implement.
545         (Gcc_backend::float_type): Implement.
546         (Gcc_backend::complex_type): New function.
547         (Gcc_backend::pointer_type): New function.
548         (Gcc_backend::make_type): New function.
549         (type_to_tree): New function.
551 2011-04-21  Ian Lance Taylor  <iant@google.com>
553         * go-system.h (go_assert, go_unreachable): Define.
555 2011-04-19  Ian Lance Taylor  <iant@google.com>
557         * go-system.h: Include "intl.h".
558         * Make-lang.in (GO_SYSTEM_H): Add intl.h.
559         (go/statements.o): Remove dependencies on intl.h $(TREE_H)
560         $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
562 2011-04-19  Ian Lance Taylor  <iant@google.com>
564         * go-gcc.cc (Gcc_backend::temporary_variable): New function.
566 2011-04-19  Ian Lance Taylor  <iant@google.com>
568         * go-gcc.cc (class Bblock): Define.
569         (Gcc_backend::if_statement): Change then_block and else_block to
570         Bblock*.
571         (Gcc_backend::block): New function.
572         (Gcc_backend::block_add_statements): New function.
573         (Gcc_backend::block_statement): New function.
574         (tree_to_block, block_to_tree): New functions.
576 2011-04-18  Ian Lance Taylor  <iant@google.com>
578         * go-gcc.cc: Include "go-c.h".
579         (class Bvariable): Define.
580         (Gcc_backend::init_statement): New function.
581         (Gcc_backend::global_variable): New function.
582         (Gcc_backend::global_variable_set_init): New function.
583         (Gcc_backend::local_variable): New function.
584         (Gcc_backend::parameter_variable): New function.
585         (tree_to_type, var_to_tree): New functions.
586         * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
587         * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
589 2011-04-15  Ian Lance Taylor  <iant@google.com>
591         * go-gcc.cc (Gcc_backend::compound_statement): New function.
592         (Gcc_backend::assignment_statement): Use error_statement.
593         (Gcc_backend::return_statement): Likewise.
594         (Gcc_backend::if_statement): Likewise.
595         (Gcc_backend::switch_statement): Likewise.
596         (Gcc_backend::statement_list): Likewise.
598 2011-04-14  Ian Lance Taylor  <iant@google.com>
600         * go-gcc.cc (Gcc_backend::error_statement): New function.
602 2011-04-13  Ian Lance Taylor  <iant@google.com>
604         * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
606 2011-04-13  Ian Lance Taylor  <iant@google.com>
608         * Make-lang.in (GO_OBJS): Add go/runtime.o.
609         (GO_RUNTIME_H): New variable.
610         (go/runtime.o): New target.
611         (go/gogo.o): Depend on $(GO_RUNTIME_H).
612         (go/statements.o): Likewise.
614 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
616         * go-lang.c (union lang_tree_node): Check for TS_COMMON before
617         calling TREE_CHAIN.
619 2011-04-06  Ian Lance Taylor  <iant@google.com>
621         * go-gcc.cc (if_statement): Use build3_loc.
622         (Gcc_backend::switch_statement): New function.
623         (Gcc_backend::statement_list): New function.
625 2011-04-06  Ian Lance Taylor  <iant@google.com>
627         * go-gcc.cc (Gcc_backend::if_statement): New function.
628         (tree_to_stat): New function.
629         (expr_to_tree): Renamed from expression_to_tree.
630         (stat_to_tree): Renamed from statement_to_tree.
632 2011-04-06  Ian Lance Taylor  <iant@google.com>
634         * go-gcc.cc (Gcc_backend::expression_statement): New function.
636 2011-04-04  Ian Lance Taylor  <iant@google.com>
638         * go-gcc.c (class Blabel): Define.
639         (Gcc_backend::make_expression): New function.
640         (get_identifier_from_string): New function.
641         (Gcc_backend::label): New function.
642         (Gcc_backend::label_definition_statement): New function.
643         (Gcc_backend::goto_statement): New function.
644         (Gcc_backend::label_address): New function.
645         (expression_to_tree): New function.
646         * Make-lang.in (go/expressions.o): Depend on
647         go/gofrontend/backend.h.
648         (go/gogo.o): Likewise.
650 2011-04-04  Ian Lance Taylor  <iant@google.com>
652         * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
653         (class Bfunction): Define.
654         (Gcc_backend::assignment_statement): Rename from assignment.
655         Check for errors.
656         (Gcc_backend::return_statement): New function.
657         (tree_to_function): New function.
658         * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
659         $(GIMPLE_H), and $(GO_GOGO_H).
661 2011-04-03  Ian Lance Taylor  <iant@google.com>
663         * go-gcc.cc: New file.
664         * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
665         (go/go-gcc.o): New target.
666         (go/go.o): Depend on go/gofrontend/backend.h.
667         (go/statements.o): Likewise.
669 2011-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
671         * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
673 2011-02-08  Ian Lance Taylor  <iant@google.com>
675         * go-lang.c (go_langhook_init_options_struct): Set
676         frontend_set_flag_errno_math.  Don't set x_flag_trapping_math.
678 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
680         * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
681         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
683 2011-01-21  Ian Lance Taylor  <iant@google.com>
685         * go-lang.c (go_langhook_init): Omit float_type_size when calling
686         go_create_gogo.
687         * go-c.h: Update declaration of go_create_gogo.
689 2011-01-13  Ian Lance Taylor  <iant@google.com>
691         * go-backend.c: Include "rtl.h" and "target.h".
692         (go_imported_unsafe): New function.
693         * go-c.h (go_imported_unsafe): Declare.
694         * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
695         (go/gogo-tree.o): Remove dependency on $(RTL_H).
696         (go/unsafe.o): Depend on $(GO_C_H).
698 2010-12-31  Joern Rennecke  <amylaar@spamcop.net>
700         PR go/47113
701         * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
702         variable ‘field’ .
704 2010-12-21  Ian Lance Taylor  <iant@google.com>
706         * Make-lang.in (check-go): Remove.
707         (lang_checks_parallelized): Add check-go.
708         (check_go_parallelize): Set.
710 2010-12-13  Ian Lance Taylor  <iant@google.com>
712         * gospec.c (lang_specific_driver): Add a -o option if not linking
713         and there is no -o option already.
715 2010-12-07  Ian Lance Taylor  <iant@google.com>
717         PR tree-optimization/46805
718         PR tree-optimization/46833
719         * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
721 2010-12-06  Ian Lance Taylor  <iant@google.com>
723         PR other/46789
724         PR bootstrap/46812
725         * go-lang.c (go_char_p): Define type and vectors.
726         (go_search_dirs): New static variable.
727         (go_langhook_handle_option): Use version and version/machine
728         directories for -L.
729         (go_langhook_post_options): Add non-specific -L paths.
730         * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
731         DEFAULT_TARGET_MACHINE when compiling.
732         * gccgo.texi (Invoking gccgo): Only document -L for linking.
733         (Import and Export): Don't mention -L for finding import files.
735 2010-12-03  Ian Lance Taylor  <iant@google.com>
737         PR bootstrap/46776
738         * go-backend.c: New file.
739         * go-c.h (go_type_alignment): Declare.
740         (go_field_alignment, go_trampoline_info): Declare.
741         * Make-lang.in (GO_OBJS): Add go/go-backend.o.
742         (go/go-backend.o): New target.
743         (go/go-lang.o): Make dependencies match source file.
744         (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
745         (go/gogo-tree.o): Don't depend on $(TM_H).
747 2010-12-03  Ian Lance Taylor  <iant@google.com>
749         * config-lang.in (build_by_default): Set to no.
751 2010-12-02  Ian Lance Taylor  <iant@google.com>
753         Go frontend added to gcc repository.
755 Copyright (C) 2010-2014 Free Software Foundation, Inc.
757 Copying and distribution of this file, with or without modification,
758 are permitted in any medium without royalty provided the copyright
759 notice and this notice are preserved.