Sync to current external repository.
[official-gcc.git] / gcc / go / ChangeLog
blob0d153fa02e66cc375730196942bb58bdfa0ee391
1 2014-04-14  Chris Manghane  <cmang@google.com>
3         * go-gcc.cc: Include "convert.h".
4         (Gcc_backend::string_constant_expression): New function.
5         (Gcc_backend::real_part_expression): Likewise.
6         (Gcc_backend::imag_part_expression): Likewise.
7         (Gcc_backend::complex_expression): Likewise.
8         (Gcc_backend::constructor_expression): Likewise.
9         (Gcc_backend::array_constructor_expression): Likewise.
10         (Gcc_backend::pointer_offset_expression): Likewise.
11         (Gcc_backend::array_index_expression): Likewise.
12         (Gcc_backend::call_expression): Likewise.
13         (Gcc_backend::exception_handler_statement): Likewise.
14         (Gcc_backend::function_defer_statement): Likewise.
15         (Gcc_backend::function_set_parameters): Likewise.
16         (Gcc_backend::function_set_body): Likewise.
17         (Gcc_backend::convert_expression): Handle various type
18         conversions.
20 2014-03-03  Ian Lance Taylor  <iant@google.com>
22         * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
23         DECL_WEAK.
24         (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
25         DECL_WEAK.
27 2014-01-24  Chris Manghane  <cmang@google.com>
29         * go-gcc.cc (Gcc_backend::unary_expression): New function.
31 2014-01-16  Chris Manghane  <cmang@google.com>
33         * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
34         parameter.
35         (operator_to_tree_code): New static function.
36         (Gcc_backend::binary_expression): New function.
38 2014-01-14  Chris Manghane  <cmang@google.com>
40         * go-gcc.cc (Gcc_backend::compound_expression): New function.
41         (Gcc_backend::conditional_expression): New function.
43 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
45         Update copyright years
47 2014-01-02  Tobias Burnus  <burnus@net-b.de>
49         * gccgo.texi: Bump @copying's copyright year.
51 2013-12-16  Chris Manghane  <cmang@google.com>
53         * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
55 2013-12-11  Ian Lance Taylor  <iant@google.com>
57         * go-lang.c (go_langhook_post_options): Disable sibling calls by
58         default.
60 2013-12-10  Ian Lance Taylor  <iant@google.com>
62         * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
63         separately.
65 2013-12-05  Ian Lance Taylor  <iant@google.com>
67         Revert this change; no longer required.
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-11-23  Ian Lance Taylor  <iant@google.com>
76         * go-gcc.cc (Gcc_backend::function_type): Add result_struct
77         parameter.
79 2013-11-22  Andrew MacLeod  <amacleod@redhat.com>
81         * go-gcc.cc: Add required include files from gimple.h.
82         * go-lang.c: Likewise
84 2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>
86         * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
87         tree_to_shwi throughout.
89 2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>
91         * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
92         tree_fits_shwi_p throughout.
94 2013-11-14  Andrew MacLeod  <amacleod@redhat.com>
96         * go-lang.c: Include only gimplify.h and gimple.h as needed.
98 2013-11-14  Diego Novillo  <dnovillo@google.com>
100         * go-backend.c: Include stor-layout.h.
101         * go-gcc.cc: Include stringpool.h.
102         Include stor-layout.h.
103         Include varasm.h.
104         * go-lang.c: Include stor-layout.h.
106 2013-11-12  Andrew MacLeod  <amacleod@redhat.com>
108         * go-lang.c: Include gimplify.h.
110 2013-11-06  Ian Lance Taylor  <iant@google.com>
112         * go-lang.c (go_langhook_post_options): If
113         -fisolate-erroneous-paths was turned on by an optimization option,
114         turn it off.
116 2013-10-14  Chris Manghane  <cmang@google.com>
118         * go-gcc.cc (Gcc_backend::address_expression): New function.
120 2013-10-11  Chris Manghane  <cmang@google.com>
122         * go-gcc.cc (Gcc_backend::function_code_expression): New
123         function.
125 2013-10-10  Chris Manghane  <cmang@google.com>
127         * go-gcc.cc (Gcc_backend::error_function): New function.
128         (Gcc_backend::function): New function.
129         (Gcc_backend::make_function): New function.
130         (function_to_tree): New function.
132 2013-10-04  Chris Manghane  <cmang@google.com>
134         * go-gcc.cc (Gcc_backend::convert_expression): New function.
136 2013-10-02  Chris Manghane  <cmang@google.com>
138         * go-gcc.cc: Include "real.h" and "realmpfr.h".
139         (Gcc_backend::integer_constant_expression): New function.
140         (Gcc_backend::float_constant_expression): New function.
141         (Gcc_backend::complex_constant_expression): New function.
143 2013-09-30  Chris Manghane  <cmang@google.com>
145         * go-gcc.cc (Gcc_backend::error_expression): New function.
146         (Gcc_backend::var_expression): New function.
147         (Gcc_backend::indirect_expression): New function.
149 2013-09-25  Tom Tromey  <tromey@redhat.com>
151         * Make-lang.in (gospec.o): Remove.
152         (CFLAGS-go/gospec.o): New variable.
153         (GCCGO_OBJS): Update to use go/gospec.o.
154         (go_OBJS): Define.
155         (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
156         (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
157         (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
158         (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
159         (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
160         (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
161         (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
162         (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
163         (go/unsafe.o): Remove.
164         (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
165         (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
167 2013-09-25  Tom Tromey  <tromey@redhat.com>
169         * Make-lang.in (gospec.o): Don't use subshell.
171 2013-08-28  Ian Lance Taylor  <iant@google.com>
173         * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
174         the struct is not hidden.
175         (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
177 2013-08-06  Ian Lance Taylor  <iant@google.com>
179         * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
180         compute_reloc_for_constant.
182 2013-08-02  Ian Lance Taylor  <iant@google.com>
184         * go-gcc.cc (immutable_struct_set_init): Always call
185         resolve_unique_section.
187 2013-07-24  Ian Lance Taylor  <iant@google.com>
189         * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
190         fields, recreate those fields with the first one with a non-zero
191         size.
193 2013-07-23  Ian Lance Taylor  <iant@google.com>
195         * go-backend.c: Don't #include "rtl.h".
196         (go_imported_unsafe): Don't call init_varasm_once.
197         * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
199 2013-07-23  Ian Lance Taylor  <iant@google.com>
201         * go-lang.c: Don't #include "except.h".
202         * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
204 2013-06-18  Ian Lance Taylor  <iant@google.com>
206         * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
207         parameter.
208         (Gcc_backend::immutable_struct_set_init): Likewise.
210 2013-05-16  Jason Merrill  <jason@redhat.com>
212         * Make-lang.in (go1$(exeext)): Use link mutex.
214 2013-01-16  Shenghou Ma  <minux.ma@gmail.com>
216         * gospec.c: pass -u pthread_create to linker when static linking.
218 2012-12-21  Ian Lance Taylor  <iant@google.com>
220         PR bootstrap/54659
221         * go-system.h: Don't include <cstdio>.
223 2012-12-18  Ian Lance Taylor  <iant@google.com>
225         PR go/55201
226         * gospec.c: Revert last patch.
228 2012-12-18  Andreas Schwab  <schwab@linux-m68k.org>
230         PR go/55201
231         * gospec.c (LIBATOMIC): Define.
232         (LIBATOMIC_PROFILE): Define.
233         (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
235 2012-11-29  Ian Lance Taylor  <iant@google.com>
237         * go-gcc.cc: Include "output.h".
238         (global_variable): Add is_unique_section parameter.
239         (global_variable_set_init): Adjust unique section if necessary.
240         * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
242 2012-11-17  Diego Novillo  <dnovillo@google.com>
244         Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
246         * go-lang.c: Use new vec API in vec.h.
248 2012-11-16  Ian Lance Taylor  <iant@google.com>
250         * Make-lang.in (gccgo$(exeext)): Add + at start of command.
251         (go1$(exeext)): Likewise.
253 2012-10-30  Ian Lance Taylor  <iant@google.com>
255         * lang.opt (-fgo-relative-import-path): New option.
256         * go-lang.c (go_relative_import_path): New static variable.
257         (go_langhook_init): Pass go_relative_import_path to
258         go_create_gogo.
259         (go_langhook_handle_option): Handle -fgo-relative-import-path.
260         * go-c.h (go_create_gogo): Update declaration.
261         * gccgo.texi (Invoking gccgo): Document
262         -fgo-relative-import-path.
264 2012-09-17  Ian Lance Taylor  <iant@google.com>
266         * config-lang.in (target_libs): Add target-libbacktrace.
268 2012-09-16  Ian Lance Taylor  <iant@google.com>
270         * Make-lang.in (go/gogo.o): Depend on filenames.h.
272 2012-08-14   Diego Novillo  <dnovillo@google.com>
274         Merge from cxx-conversion branch.  Configury.
276         * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
277         * go-gcc.cc: Likewise.
278         * go-system.h: Likewise.
280 2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
282         * go-lang.c (lang_decl): Add variable_size GTY option.
284 2012-05-09  Ian Lance Taylor  <iant@google.com>
286         * lang.opt: Add -fgo-pkgpath.
287         * go-lang.c (go_pkgpath): New static variable.
288         (go_prefix): New static variable.
289         (go_langhook_init): Pass go_pkgpath and go_prefix to
290         go_create_gogo.
291         (go_langhook_handle_option): Handle -fgo-pkgpath.  Change
292         -fgo-prefix handling to just set go_prefix.
293         * go-c.h (go_set_prefix): Don't declare.
294         (go_create_gogo): Add pkgpath and prefix to declaration.
295         * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
296         to pkgpath.  Don't include the package name in the asm name.
297         * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath.  Update the
298         docs for -fgo-prefix.
300 2012-04-23  Ian Lance Taylor  <iant@google.com>
302         * go-lang.c (go_langhook_init): Set MPFR precision to 256.
304 2012-04-20  Ian Lance Taylor  <iant@google.com>
306         * lang.opt: Add -fgo-check-divide-zero and
307         -fgo-check-divide-overflow.
308         * gccgo.texi (Invoking gccgo): Document new options.
310 2012-04-18  Steven Bosscher  <steven@gcc.gnu.org>
312         * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
313         with NULL_TREE type instead of void_type_node.
315 2012-03-09  Ian Lance Taylor  <iant@google.com>
317         * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
318         to the lhs type if necessary.
320 2012-03-08  Ian Lance Taylor  <iant@google.com>
322         * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
323         zero-sized variable.
324         (go_non_zero_struct): New global variable.
325         (Gcc_backend::non_zero_size_type): New function.
326         (Gcc_backend::global_variable): Don't build an assignment for a
327         zero-sized value.
328         * go-c.h (go_non_zero_struct): Declare.
329         * config-lang.in (gtfiles): Add go-c.h.
331 2012-02-29  Ian Lance Taylor  <iant@google.com>
333         * go-gcc.cc (class Gcc_tree): Add set_tree method.
334         (set_placeholder_pointer_type): When setting to a pointer to
335         error, set to error_mark_node.
337 2012-02-23  Richard Guenther  <rguenther@suse.de>
339         * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
340         build_distinct_type_copy.
342 2012-02-17  Ian Lance Taylor  <iant@google.com>
344         * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
346 2012-02-17  Ian Lance Taylor  <iant@google.com>
348         * gospec.c (lang_specific_driver): If linking, and no -o option
349         was used, add one.
351 2012-02-14  Ian Lance Taylor  <iant@google.com>
353         PR go/48411
354         * Make-lang.in (gccgo-cross$(exeext)): New target.
355         (go.all.cross): Depend on gccgo-cross$(exeext) instead of
356         gccgo$(exeext).
357         (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
358         gccgo-cross$(exeext) does not exist.
360 2012-02-07  Ian Lance Taylor  <iant@google.com>
362         * gccgo.texi (Function Names): Document //extern instead of
363         __asm__.
365 2012-02-01  Jakub Jelinek  <jakub@redhat.com>
367         PR target/52079
368         * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
369         return build_nonstandard_integer_type result if possible.
371 2012-01-21  Ian Lance Taylor  <iant@google.com>
373         * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
374         (Gcc_backend::type_alignment): Likewise.
375         (Gcc_backend::type_field_alignment): Likewise.
376         (Gcc_backend::type_field_offset): Likewise.
378 2012-01-20  Ian Lance Taylor  <iant@google.com>
380         * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
381         be empty.
382         (Gcc_backend::set_placeholder_struct_type): Likewise.
384 2012-01-17  Ian Lance Taylor  <iant@google.com>
386         * gospec.c (lang_specific_driver): If we see -S without -o, add -o
387         BASE.s rather than -o BASE.o.
389 2012-01-11  Ian Lance Taylor  <iant@google.com>
391         * go-lang.c (go_langhook_init): Initialize void_list_node before
392         calling go_create_gogo.
394 2012-01-10  Ian Lance Taylor  <iant@google.com>
396         * go-gcc.cc (Gcc_backend::type_size): New function.
397         (Gcc_backend::type_alignment): New function.
398         (Gcc_backend::type_field_alignment): New function.
399         (Gcc_backend::type_field_offset): New function.
400         * go-backend.c (go_type_alignment): Remove.
401         * go-c.h (go_type_alignment): Don't declare.
403 2011-12-27  Ian Lance Taylor  <iant@google.com>
405         * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
406         build_distinct_type_copy rather than build_variant_type_copy.
407         (Gcc_backend::set_placeholder_array_type): Likewise.
408         (Gcc_backend::named_type): Add special handling for builtin
409         basic types.
411 2011-12-22  Ian Lance Taylor  <iant@google.com>
413         * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
414         for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
415         (Gcc_backend::set_placeholder_struct_type): Likewise.
416         (Gcc_backend::set_placeholder_array_type): Likewise.
417         (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
419 2011-12-13  Ian Lance Taylor  <iant@google.com>
421         * go-backend.c: #include "simple-object.h" and "intl.h".
422         (GO_EXPORT_SEGMENT_NAME): Define if not defined.
423         (GO_EXPORT_SECTION_NAME): Likewise.
424         (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
425         (go_read_export_data): New function.
426         * go-c.h (go_read_export_data): Declare.
428 2011-11-29  Sanjoy Das  <thedigitalangel@gmail.com>
429             Ian Lance Taylor  <iant@google.com>
431         * go-location.h: New file.
432         * go-linemap.cc: New file.
433         * go-gcc.cc: Change all uses of source_location to Location.
434         * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
435         (GO_LINEMAP_H): New variable.
436         (GO_LEX_H): Use $(GO_LINEMAP_H).
437         (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
438         (go/go-linemap.o): New target.
440 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
442         * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
444 2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
446         * lang.opt: Add fgo-optimize-.
447         * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
448         * go-c.h (go_enable_optimize): Declare.
449         * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
450         (GO_EXPORT_H): Define.
451         (GO_IMPORT_H): Add $(GO_EXPORT_H).
452         (GO_AST_DUMP_H): Define.
453         (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
454         (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
455         (go/types.o): Likewise.
456         (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
457         (go/go-optimize.o): New target.
459 2011-08-24  Joseph Myers  <joseph@codesourcery.com>
461         * Make-lang.in (CFLAGS-go/go-lang.o): New.
462         (go/go-lang.o): Remove explicit compilation rule.
464 2011-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
466         * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
468 2011-08-02  Roberto Lublinerman  <rluble@gmail.com>
470         * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
471         (go/ast-dump.o): New target.
472         (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
473         (go/statements.o): Likewise.
475 2011-07-06  Richard Guenther  <rguenther@suse.de>
477         * go-lang.c (go_langhook_init):
478         Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
480 2011-06-14  Joseph Myers  <joseph@codesourcery.com>
482         * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
483         dependencies.
484         * go-backend.c: Include common/common-target.h.
485         (go_write_export_data): Use targetm_common.have_named_sections.
486         * go-lang.c: Include common/common-target.h.
487         (go_langhook_init_options_struct): Use
488         targetm_common.supports_split_stack.
490 2011-06-13  Ian Lance Taylor  <iant@google.com>
492         * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
494 2011-06-10  Ian Lance Taylor  <iant@google.com>
496         * go-gcc.cc: Include "toplev.h".
497         (Gcc_backend::immutable_struct): New function.
498         (Gcc_backend::immutable_struct_set_init): New function.
499         (Gcc_backend::immutable_struct_reference): New function.
500         * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
502 2011-06-09  Ian Lance Taylor  <iant@google.com>
504         * go-gcc.cc (Gcc_backend::zero_expression): New function.
506 2011-06-07  Richard Guenther  <rguenther@suse.de>
508         * go-lang.c (go_langhook_init): Do not set
509         size_type_node or call set_sizetype.
511 2011-05-27  Ian Lance Taylor  <iant@google.com>
513         * go-backend.c: Include "output.h".
514         (go_write_export_data): New function.
515         * go-c.h (go_write_export_data): Declare.
516         * Make-lang.in (go/go-backend.o): Depend on output.h.
517         (go/export.o): Depend on $(GO_C_H).  Do not depend on
518         $(MACHMODE_H), output.h, or $(TARGET_H).
520 2011-05-24  Joseph Myers  <joseph@codesourcery.com>
522         * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
523         (gccgo$(exeext)): Use libcommon-target.a.
525 2011-05-20  Joseph Myers  <joseph@codesourcery.com>
527         * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
529 2011-05-13  Ian Lance Taylor  <iant@google.com>
531         * go-gcc.cc (Gcc_backend::function_type): When building a struct
532         for multiple results, check that all fields types have a size.
533         (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
535 2011-05-12  Ian Lance Taylor  <iant@google.com>
537         * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
538         parameter.
539         (Gcc_backend::parameter_variable): Likewise.
541 2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
543         * go-lang.c (global_bindings_p): Return bool and simplify.
545 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
547         * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
549 2011-05-04  Ian Lance Taylor  <iant@google.com>
551         * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
552         (Gcc_backend::fill_in_struct): New function.
553         (Gcc_backend::array_type): Implement.
554         (Gcc_backend::fill_in_array): New function.
555         (Gcc_backend::placeholder_pointer_type): New function.
556         (Gcc_backend::set_placeholder_pointer_type): New function.
557         (Gcc_backend::set_placeholder_function_type): New function.
558         (Gcc_backend::placeholder_struct_type): New function.
559         (Gcc_backend::set_placeholder_struct_type): New function.
560         (Gcc_backend::placeholder_array_type): New function.
561         (Gcc_backend::set_placeholder_array_type): New function.
562         (Gcc_backend::named_type): New function.
563         (Gcc_backend::circular_pointer_type): New function.
564         (Gcc_backend::is_circular_pointer_type): New function.
566 2011-04-26  Ian Lance Taylor  <iant@google.com>
568         * go-gcc.cc (Gcc_backend::struct_type): Implement.
570 2011-04-25  Ian Lance Taylor  <iant@google.com>
572         * go-gcc.cc (Gcc_backend::error_type): Implement.
573         (Gcc_backend::string_type): Remove.
574         (Gcc_backend::function_type): Change signature and implement.
575         (Gcc_backend::struct_type): Change signature.
576         (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
577         (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
578         (Gcc_backend::pointer_type): Check for error.
579         * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
581 2011-04-25  Evan Shaw  <edsrzf@gmail.com>
583         * go-gcc.c (class Gcc_tree): Make get_tree const.
584         (Gcc_backend::void_type): Implement.
585         (Gcc_backend::bool_type): Implement.
586         (Gcc_backend::integer_type): Implement.
587         (Gcc_backend::float_type): Implement.
588         (Gcc_backend::complex_type): New function.
589         (Gcc_backend::pointer_type): New function.
590         (Gcc_backend::make_type): New function.
591         (type_to_tree): New function.
593 2011-04-21  Ian Lance Taylor  <iant@google.com>
595         * go-system.h (go_assert, go_unreachable): Define.
597 2011-04-19  Ian Lance Taylor  <iant@google.com>
599         * go-system.h: Include "intl.h".
600         * Make-lang.in (GO_SYSTEM_H): Add intl.h.
601         (go/statements.o): Remove dependencies on intl.h $(TREE_H)
602         $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
604 2011-04-19  Ian Lance Taylor  <iant@google.com>
606         * go-gcc.cc (Gcc_backend::temporary_variable): New function.
608 2011-04-19  Ian Lance Taylor  <iant@google.com>
610         * go-gcc.cc (class Bblock): Define.
611         (Gcc_backend::if_statement): Change then_block and else_block to
612         Bblock*.
613         (Gcc_backend::block): New function.
614         (Gcc_backend::block_add_statements): New function.
615         (Gcc_backend::block_statement): New function.
616         (tree_to_block, block_to_tree): New functions.
618 2011-04-18  Ian Lance Taylor  <iant@google.com>
620         * go-gcc.cc: Include "go-c.h".
621         (class Bvariable): Define.
622         (Gcc_backend::init_statement): New function.
623         (Gcc_backend::global_variable): New function.
624         (Gcc_backend::global_variable_set_init): New function.
625         (Gcc_backend::local_variable): New function.
626         (Gcc_backend::parameter_variable): New function.
627         (tree_to_type, var_to_tree): New functions.
628         * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
629         * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
631 2011-04-15  Ian Lance Taylor  <iant@google.com>
633         * go-gcc.cc (Gcc_backend::compound_statement): New function.
634         (Gcc_backend::assignment_statement): Use error_statement.
635         (Gcc_backend::return_statement): Likewise.
636         (Gcc_backend::if_statement): Likewise.
637         (Gcc_backend::switch_statement): Likewise.
638         (Gcc_backend::statement_list): Likewise.
640 2011-04-14  Ian Lance Taylor  <iant@google.com>
642         * go-gcc.cc (Gcc_backend::error_statement): New function.
644 2011-04-13  Ian Lance Taylor  <iant@google.com>
646         * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
648 2011-04-13  Ian Lance Taylor  <iant@google.com>
650         * Make-lang.in (GO_OBJS): Add go/runtime.o.
651         (GO_RUNTIME_H): New variable.
652         (go/runtime.o): New target.
653         (go/gogo.o): Depend on $(GO_RUNTIME_H).
654         (go/statements.o): Likewise.
656 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
658         * go-lang.c (union lang_tree_node): Check for TS_COMMON before
659         calling TREE_CHAIN.
661 2011-04-06  Ian Lance Taylor  <iant@google.com>
663         * go-gcc.cc (if_statement): Use build3_loc.
664         (Gcc_backend::switch_statement): New function.
665         (Gcc_backend::statement_list): New function.
667 2011-04-06  Ian Lance Taylor  <iant@google.com>
669         * go-gcc.cc (Gcc_backend::if_statement): New function.
670         (tree_to_stat): New function.
671         (expr_to_tree): Renamed from expression_to_tree.
672         (stat_to_tree): Renamed from statement_to_tree.
674 2011-04-06  Ian Lance Taylor  <iant@google.com>
676         * go-gcc.cc (Gcc_backend::expression_statement): New function.
678 2011-04-04  Ian Lance Taylor  <iant@google.com>
680         * go-gcc.c (class Blabel): Define.
681         (Gcc_backend::make_expression): New function.
682         (get_identifier_from_string): New function.
683         (Gcc_backend::label): New function.
684         (Gcc_backend::label_definition_statement): New function.
685         (Gcc_backend::goto_statement): New function.
686         (Gcc_backend::label_address): New function.
687         (expression_to_tree): New function.
688         * Make-lang.in (go/expressions.o): Depend on
689         go/gofrontend/backend.h.
690         (go/gogo.o): Likewise.
692 2011-04-04  Ian Lance Taylor  <iant@google.com>
694         * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
695         (class Bfunction): Define.
696         (Gcc_backend::assignment_statement): Rename from assignment.
697         Check for errors.
698         (Gcc_backend::return_statement): New function.
699         (tree_to_function): New function.
700         * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
701         $(GIMPLE_H), and $(GO_GOGO_H).
703 2011-04-03  Ian Lance Taylor  <iant@google.com>
705         * go-gcc.cc: New file.
706         * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
707         (go/go-gcc.o): New target.
708         (go/go.o): Depend on go/gofrontend/backend.h.
709         (go/statements.o): Likewise.
711 2011-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
713         * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
715 2011-02-08  Ian Lance Taylor  <iant@google.com>
717         * go-lang.c (go_langhook_init_options_struct): Set
718         frontend_set_flag_errno_math.  Don't set x_flag_trapping_math.
720 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
722         * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
723         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
725 2011-01-21  Ian Lance Taylor  <iant@google.com>
727         * go-lang.c (go_langhook_init): Omit float_type_size when calling
728         go_create_gogo.
729         * go-c.h: Update declaration of go_create_gogo.
731 2011-01-13  Ian Lance Taylor  <iant@google.com>
733         * go-backend.c: Include "rtl.h" and "target.h".
734         (go_imported_unsafe): New function.
735         * go-c.h (go_imported_unsafe): Declare.
736         * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
737         (go/gogo-tree.o): Remove dependency on $(RTL_H).
738         (go/unsafe.o): Depend on $(GO_C_H).
740 2010-12-31  Joern Rennecke  <amylaar@spamcop.net>
742         PR go/47113
743         * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
744         variable ‘field’ .
746 2010-12-21  Ian Lance Taylor  <iant@google.com>
748         * Make-lang.in (check-go): Remove.
749         (lang_checks_parallelized): Add check-go.
750         (check_go_parallelize): Set.
752 2010-12-13  Ian Lance Taylor  <iant@google.com>
754         * gospec.c (lang_specific_driver): Add a -o option if not linking
755         and there is no -o option already.
757 2010-12-07  Ian Lance Taylor  <iant@google.com>
759         PR tree-optimization/46805
760         PR tree-optimization/46833
761         * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
763 2010-12-06  Ian Lance Taylor  <iant@google.com>
765         PR other/46789
766         PR bootstrap/46812
767         * go-lang.c (go_char_p): Define type and vectors.
768         (go_search_dirs): New static variable.
769         (go_langhook_handle_option): Use version and version/machine
770         directories for -L.
771         (go_langhook_post_options): Add non-specific -L paths.
772         * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
773         DEFAULT_TARGET_MACHINE when compiling.
774         * gccgo.texi (Invoking gccgo): Only document -L for linking.
775         (Import and Export): Don't mention -L for finding import files.
777 2010-12-03  Ian Lance Taylor  <iant@google.com>
779         PR bootstrap/46776
780         * go-backend.c: New file.
781         * go-c.h (go_type_alignment): Declare.
782         (go_field_alignment, go_trampoline_info): Declare.
783         * Make-lang.in (GO_OBJS): Add go/go-backend.o.
784         (go/go-backend.o): New target.
785         (go/go-lang.o): Make dependencies match source file.
786         (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
787         (go/gogo-tree.o): Don't depend on $(TM_H).
789 2010-12-03  Ian Lance Taylor  <iant@google.com>
791         * config-lang.in (build_by_default): Set to no.
793 2010-12-02  Ian Lance Taylor  <iant@google.com>
795         Go frontend added to gcc repository.
797 Copyright (C) 2010-2014 Free Software Foundation, Inc.
799 Copying and distribution of this file, with or without modification,
800 are permitted in any medium without royalty provided the copyright
801 notice and this notice are preserved.