2014-02-21 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / go / ChangeLog
blobc571d4d5a4b0767ada40ee05259b18da7f4bbdce
1 2014-01-24  Chris Manghane  <cmang@google.com>
3         * go-gcc.cc (Gcc_backend::unary_expression): New function.
5 2014-01-16  Chris Manghane  <cmang@google.com>
7         * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
8         parameter.
9         (operator_to_tree_code): New static function.
10         (Gcc_backend::binary_expression): New function.
12 2014-01-14  Chris Manghane  <cmang@google.com>
14         * go-gcc.cc (Gcc_backend::compound_expression): New function.
15         (Gcc_backend::conditional_expression): New function.
17 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
19         Update copyright years
21 2014-01-02  Tobias Burnus  <burnus@net-b.de>
23         * gccgo.texi: Bump @copying's copyright year.
25 2013-12-16  Chris Manghane  <cmang@google.com>
27         * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
29 2013-12-11  Ian Lance Taylor  <iant@google.com>
31         * go-lang.c (go_langhook_post_options): Disable sibling calls by
32         default.
34 2013-12-10  Ian Lance Taylor  <iant@google.com>
36         * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
37         separately.
39 2013-12-05  Ian Lance Taylor  <iant@google.com>
41         Revert this change; no longer required.
42         2013-11-06  Ian Lance Taylor  <iant@google.com>
44         * go-lang.c (go_langhook_post_options): If
45         -fisolate-erroneous-paths was turned on by an optimization option,
46         turn it off.
48 2013-11-23  Ian Lance Taylor  <iant@google.com>
50         * go-gcc.cc (Gcc_backend::function_type): Add result_struct
51         parameter.
53 2013-11-22  Andrew MacLeod  <amacleod@redhat.com>
55         * go-gcc.cc: Add required include files from gimple.h.
56         * go-lang.c: Likewise
58 2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>
60         * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
61         tree_to_shwi throughout.
63 2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>
65         * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
66         tree_fits_shwi_p throughout.
68 2013-11-14  Andrew MacLeod  <amacleod@redhat.com>
70         * go-lang.c: Include only gimplify.h and gimple.h as needed.
72 2013-11-14  Diego Novillo  <dnovillo@google.com>
74         * go-backend.c: Include stor-layout.h.
75         * go-gcc.cc: Include stringpool.h.
76         Include stor-layout.h.
77         Include varasm.h.
78         * go-lang.c: Include stor-layout.h.
80 2013-11-12  Andrew MacLeod  <amacleod@redhat.com>
82         * go-lang.c: Include gimplify.h.
84 2013-11-06  Ian Lance Taylor  <iant@google.com>
86         * go-lang.c (go_langhook_post_options): If
87         -fisolate-erroneous-paths was turned on by an optimization option,
88         turn it off.
90 2013-10-14  Chris Manghane  <cmang@google.com>
92         * go-gcc.cc (Gcc_backend::address_expression): New function.
94 2013-10-11  Chris Manghane  <cmang@google.com>
96         * go-gcc.cc (Gcc_backend::function_code_expression): New
97         function.
99 2013-10-10  Chris Manghane  <cmang@google.com>
101         * go-gcc.cc (Gcc_backend::error_function): New function.
102         (Gcc_backend::function): New function.
103         (Gcc_backend::make_function): New function.
104         (function_to_tree): New function.
106 2013-10-04  Chris Manghane  <cmang@google.com>
108         * go-gcc.cc (Gcc_backend::convert_expression): New function.
110 2013-10-02  Chris Manghane  <cmang@google.com>
112         * go-gcc.cc: Include "real.h" and "realmpfr.h".
113         (Gcc_backend::integer_constant_expression): New function.
114         (Gcc_backend::float_constant_expression): New function.
115         (Gcc_backend::complex_constant_expression): New function.
117 2013-09-30  Chris Manghane  <cmang@google.com>
119         * go-gcc.cc (Gcc_backend::error_expression): New function.
120         (Gcc_backend::var_expression): New function.
121         (Gcc_backend::indirect_expression): New function.
123 2013-09-25  Tom Tromey  <tromey@redhat.com>
125         * Make-lang.in (gospec.o): Remove.
126         (CFLAGS-go/gospec.o): New variable.
127         (GCCGO_OBJS): Update to use go/gospec.o.
128         (go_OBJS): Define.
129         (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
130         (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
131         (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
132         (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
133         (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
134         (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
135         (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
136         (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
137         (go/unsafe.o): Remove.
138         (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
139         (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
141 2013-09-25  Tom Tromey  <tromey@redhat.com>
143         * Make-lang.in (gospec.o): Don't use subshell.
145 2013-08-28  Ian Lance Taylor  <iant@google.com>
147         * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
148         the struct is not hidden.
149         (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
151 2013-08-06  Ian Lance Taylor  <iant@google.com>
153         * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
154         compute_reloc_for_constant.
156 2013-08-02  Ian Lance Taylor  <iant@google.com>
158         * go-gcc.cc (immutable_struct_set_init): Always call
159         resolve_unique_section.
161 2013-07-24  Ian Lance Taylor  <iant@google.com>
163         * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
164         fields, recreate those fields with the first one with a non-zero
165         size.
167 2013-07-23  Ian Lance Taylor  <iant@google.com>
169         * go-backend.c: Don't #include "rtl.h".
170         (go_imported_unsafe): Don't call init_varasm_once.
171         * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
173 2013-07-23  Ian Lance Taylor  <iant@google.com>
175         * go-lang.c: Don't #include "except.h".
176         * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
178 2013-06-18  Ian Lance Taylor  <iant@google.com>
180         * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
181         parameter.
182         (Gcc_backend::immutable_struct_set_init): Likewise.
184 2013-05-16  Jason Merrill  <jason@redhat.com>
186         * Make-lang.in (go1$(exeext)): Use link mutex.
188 2013-01-16  Shenghou Ma  <minux.ma@gmail.com>
190         * gospec.c: pass -u pthread_create to linker when static linking.
192 2012-12-21  Ian Lance Taylor  <iant@google.com>
194         PR bootstrap/54659
195         * go-system.h: Don't include <cstdio>.
197 2012-12-18  Ian Lance Taylor  <iant@google.com>
199         PR go/55201
200         * gospec.c: Revert last patch.
202 2012-12-18  Andreas Schwab  <schwab@linux-m68k.org>
204         PR go/55201
205         * gospec.c (LIBATOMIC): Define.
206         (LIBATOMIC_PROFILE): Define.
207         (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
209 2012-11-29  Ian Lance Taylor  <iant@google.com>
211         * go-gcc.cc: Include "output.h".
212         (global_variable): Add is_unique_section parameter.
213         (global_variable_set_init): Adjust unique section if necessary.
214         * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
216 2012-11-17  Diego Novillo  <dnovillo@google.com>
218         Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
220         * go-lang.c: Use new vec API in vec.h.
222 2012-11-16  Ian Lance Taylor  <iant@google.com>
224         * Make-lang.in (gccgo$(exeext)): Add + at start of command.
225         (go1$(exeext)): Likewise.
227 2012-10-30  Ian Lance Taylor  <iant@google.com>
229         * lang.opt (-fgo-relative-import-path): New option.
230         * go-lang.c (go_relative_import_path): New static variable.
231         (go_langhook_init): Pass go_relative_import_path to
232         go_create_gogo.
233         (go_langhook_handle_option): Handle -fgo-relative-import-path.
234         * go-c.h (go_create_gogo): Update declaration.
235         * gccgo.texi (Invoking gccgo): Document
236         -fgo-relative-import-path.
238 2012-09-17  Ian Lance Taylor  <iant@google.com>
240         * config-lang.in (target_libs): Add target-libbacktrace.
242 2012-09-16  Ian Lance Taylor  <iant@google.com>
244         * Make-lang.in (go/gogo.o): Depend on filenames.h.
246 2012-08-14   Diego Novillo  <dnovillo@google.com>
248         Merge from cxx-conversion branch.  Configury.
250         * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
251         * go-gcc.cc: Likewise.
252         * go-system.h: Likewise.
254 2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
256         * go-lang.c (lang_decl): Add variable_size GTY option.
258 2012-05-09  Ian Lance Taylor  <iant@google.com>
260         * lang.opt: Add -fgo-pkgpath.
261         * go-lang.c (go_pkgpath): New static variable.
262         (go_prefix): New static variable.
263         (go_langhook_init): Pass go_pkgpath and go_prefix to
264         go_create_gogo.
265         (go_langhook_handle_option): Handle -fgo-pkgpath.  Change
266         -fgo-prefix handling to just set go_prefix.
267         * go-c.h (go_set_prefix): Don't declare.
268         (go_create_gogo): Add pkgpath and prefix to declaration.
269         * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
270         to pkgpath.  Don't include the package name in the asm name.
271         * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath.  Update the
272         docs for -fgo-prefix.
274 2012-04-23  Ian Lance Taylor  <iant@google.com>
276         * go-lang.c (go_langhook_init): Set MPFR precision to 256.
278 2012-04-20  Ian Lance Taylor  <iant@google.com>
280         * lang.opt: Add -fgo-check-divide-zero and
281         -fgo-check-divide-overflow.
282         * gccgo.texi (Invoking gccgo): Document new options.
284 2012-04-18  Steven Bosscher  <steven@gcc.gnu.org>
286         * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
287         with NULL_TREE type instead of void_type_node.
289 2012-03-09  Ian Lance Taylor  <iant@google.com>
291         * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
292         to the lhs type if necessary.
294 2012-03-08  Ian Lance Taylor  <iant@google.com>
296         * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
297         zero-sized variable.
298         (go_non_zero_struct): New global variable.
299         (Gcc_backend::non_zero_size_type): New function.
300         (Gcc_backend::global_variable): Don't build an assignment for a
301         zero-sized value.
302         * go-c.h (go_non_zero_struct): Declare.
303         * config-lang.in (gtfiles): Add go-c.h.
305 2012-02-29  Ian Lance Taylor  <iant@google.com>
307         * go-gcc.cc (class Gcc_tree): Add set_tree method.
308         (set_placeholder_pointer_type): When setting to a pointer to
309         error, set to error_mark_node.
311 2012-02-23  Richard Guenther  <rguenther@suse.de>
313         * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
314         build_distinct_type_copy.
316 2012-02-17  Ian Lance Taylor  <iant@google.com>
318         * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
320 2012-02-17  Ian Lance Taylor  <iant@google.com>
322         * gospec.c (lang_specific_driver): If linking, and no -o option
323         was used, add one.
325 2012-02-14  Ian Lance Taylor  <iant@google.com>
327         PR go/48411
328         * Make-lang.in (gccgo-cross$(exeext)): New target.
329         (go.all.cross): Depend on gccgo-cross$(exeext) instead of
330         gccgo$(exeext).
331         (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
332         gccgo-cross$(exeext) does not exist.
334 2012-02-07  Ian Lance Taylor  <iant@google.com>
336         * gccgo.texi (Function Names): Document //extern instead of
337         __asm__.
339 2012-02-01  Jakub Jelinek  <jakub@redhat.com>
341         PR target/52079
342         * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
343         return build_nonstandard_integer_type result if possible.
345 2012-01-21  Ian Lance Taylor  <iant@google.com>
347         * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
348         (Gcc_backend::type_alignment): Likewise.
349         (Gcc_backend::type_field_alignment): Likewise.
350         (Gcc_backend::type_field_offset): Likewise.
352 2012-01-20  Ian Lance Taylor  <iant@google.com>
354         * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
355         be empty.
356         (Gcc_backend::set_placeholder_struct_type): Likewise.
358 2012-01-17  Ian Lance Taylor  <iant@google.com>
360         * gospec.c (lang_specific_driver): If we see -S without -o, add -o
361         BASE.s rather than -o BASE.o.
363 2012-01-11  Ian Lance Taylor  <iant@google.com>
365         * go-lang.c (go_langhook_init): Initialize void_list_node before
366         calling go_create_gogo.
368 2012-01-10  Ian Lance Taylor  <iant@google.com>
370         * go-gcc.cc (Gcc_backend::type_size): New function.
371         (Gcc_backend::type_alignment): New function.
372         (Gcc_backend::type_field_alignment): New function.
373         (Gcc_backend::type_field_offset): New function.
374         * go-backend.c (go_type_alignment): Remove.
375         * go-c.h (go_type_alignment): Don't declare.
377 2011-12-27  Ian Lance Taylor  <iant@google.com>
379         * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
380         build_distinct_type_copy rather than build_variant_type_copy.
381         (Gcc_backend::set_placeholder_array_type): Likewise.
382         (Gcc_backend::named_type): Add special handling for builtin
383         basic types.
385 2011-12-22  Ian Lance Taylor  <iant@google.com>
387         * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
388         for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
389         (Gcc_backend::set_placeholder_struct_type): Likewise.
390         (Gcc_backend::set_placeholder_array_type): Likewise.
391         (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
393 2011-12-13  Ian Lance Taylor  <iant@google.com>
395         * go-backend.c: #include "simple-object.h" and "intl.h".
396         (GO_EXPORT_SEGMENT_NAME): Define if not defined.
397         (GO_EXPORT_SECTION_NAME): Likewise.
398         (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
399         (go_read_export_data): New function.
400         * go-c.h (go_read_export_data): Declare.
402 2011-11-29  Sanjoy Das  <thedigitalangel@gmail.com>
403             Ian Lance Taylor  <iant@google.com>
405         * go-location.h: New file.
406         * go-linemap.cc: New file.
407         * go-gcc.cc: Change all uses of source_location to Location.
408         * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
409         (GO_LINEMAP_H): New variable.
410         (GO_LEX_H): Use $(GO_LINEMAP_H).
411         (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
412         (go/go-linemap.o): New target.
414 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
416         * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
418 2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
420         * lang.opt: Add fgo-optimize-.
421         * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
422         * go-c.h (go_enable_optimize): Declare.
423         * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
424         (GO_EXPORT_H): Define.
425         (GO_IMPORT_H): Add $(GO_EXPORT_H).
426         (GO_AST_DUMP_H): Define.
427         (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
428         (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
429         (go/types.o): Likewise.
430         (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
431         (go/go-optimize.o): New target.
433 2011-08-24  Joseph Myers  <joseph@codesourcery.com>
435         * Make-lang.in (CFLAGS-go/go-lang.o): New.
436         (go/go-lang.o): Remove explicit compilation rule.
438 2011-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
440         * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
442 2011-08-02  Roberto Lublinerman  <rluble@gmail.com>
444         * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
445         (go/ast-dump.o): New target.
446         (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
447         (go/statements.o): Likewise.
449 2011-07-06  Richard Guenther  <rguenther@suse.de>
451         * go-lang.c (go_langhook_init):
452         Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
454 2011-06-14  Joseph Myers  <joseph@codesourcery.com>
456         * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
457         dependencies.
458         * go-backend.c: Include common/common-target.h.
459         (go_write_export_data): Use targetm_common.have_named_sections.
460         * go-lang.c: Include common/common-target.h.
461         (go_langhook_init_options_struct): Use
462         targetm_common.supports_split_stack.
464 2011-06-13  Ian Lance Taylor  <iant@google.com>
466         * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
468 2011-06-10  Ian Lance Taylor  <iant@google.com>
470         * go-gcc.cc: Include "toplev.h".
471         (Gcc_backend::immutable_struct): New function.
472         (Gcc_backend::immutable_struct_set_init): New function.
473         (Gcc_backend::immutable_struct_reference): New function.
474         * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
476 2011-06-09  Ian Lance Taylor  <iant@google.com>
478         * go-gcc.cc (Gcc_backend::zero_expression): New function.
480 2011-06-07  Richard Guenther  <rguenther@suse.de>
482         * go-lang.c (go_langhook_init): Do not set
483         size_type_node or call set_sizetype.
485 2011-05-27  Ian Lance Taylor  <iant@google.com>
487         * go-backend.c: Include "output.h".
488         (go_write_export_data): New function.
489         * go-c.h (go_write_export_data): Declare.
490         * Make-lang.in (go/go-backend.o): Depend on output.h.
491         (go/export.o): Depend on $(GO_C_H).  Do not depend on
492         $(MACHMODE_H), output.h, or $(TARGET_H).
494 2011-05-24  Joseph Myers  <joseph@codesourcery.com>
496         * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
497         (gccgo$(exeext)): Use libcommon-target.a.
499 2011-05-20  Joseph Myers  <joseph@codesourcery.com>
501         * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
503 2011-05-13  Ian Lance Taylor  <iant@google.com>
505         * go-gcc.cc (Gcc_backend::function_type): When building a struct
506         for multiple results, check that all fields types have a size.
507         (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
509 2011-05-12  Ian Lance Taylor  <iant@google.com>
511         * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
512         parameter.
513         (Gcc_backend::parameter_variable): Likewise.
515 2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
517         * go-lang.c (global_bindings_p): Return bool and simplify.
519 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
521         * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
523 2011-05-04  Ian Lance Taylor  <iant@google.com>
525         * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
526         (Gcc_backend::fill_in_struct): New function.
527         (Gcc_backend::array_type): Implement.
528         (Gcc_backend::fill_in_array): New function.
529         (Gcc_backend::placeholder_pointer_type): New function.
530         (Gcc_backend::set_placeholder_pointer_type): New function.
531         (Gcc_backend::set_placeholder_function_type): New function.
532         (Gcc_backend::placeholder_struct_type): New function.
533         (Gcc_backend::set_placeholder_struct_type): New function.
534         (Gcc_backend::placeholder_array_type): New function.
535         (Gcc_backend::set_placeholder_array_type): New function.
536         (Gcc_backend::named_type): New function.
537         (Gcc_backend::circular_pointer_type): New function.
538         (Gcc_backend::is_circular_pointer_type): New function.
540 2011-04-26  Ian Lance Taylor  <iant@google.com>
542         * go-gcc.cc (Gcc_backend::struct_type): Implement.
544 2011-04-25  Ian Lance Taylor  <iant@google.com>
546         * go-gcc.cc (Gcc_backend::error_type): Implement.
547         (Gcc_backend::string_type): Remove.
548         (Gcc_backend::function_type): Change signature and implement.
549         (Gcc_backend::struct_type): Change signature.
550         (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
551         (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
552         (Gcc_backend::pointer_type): Check for error.
553         * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
555 2011-04-25  Evan Shaw  <edsrzf@gmail.com>
557         * go-gcc.c (class Gcc_tree): Make get_tree const.
558         (Gcc_backend::void_type): Implement.
559         (Gcc_backend::bool_type): Implement.
560         (Gcc_backend::integer_type): Implement.
561         (Gcc_backend::float_type): Implement.
562         (Gcc_backend::complex_type): New function.
563         (Gcc_backend::pointer_type): New function.
564         (Gcc_backend::make_type): New function.
565         (type_to_tree): New function.
567 2011-04-21  Ian Lance Taylor  <iant@google.com>
569         * go-system.h (go_assert, go_unreachable): Define.
571 2011-04-19  Ian Lance Taylor  <iant@google.com>
573         * go-system.h: Include "intl.h".
574         * Make-lang.in (GO_SYSTEM_H): Add intl.h.
575         (go/statements.o): Remove dependencies on intl.h $(TREE_H)
576         $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
578 2011-04-19  Ian Lance Taylor  <iant@google.com>
580         * go-gcc.cc (Gcc_backend::temporary_variable): New function.
582 2011-04-19  Ian Lance Taylor  <iant@google.com>
584         * go-gcc.cc (class Bblock): Define.
585         (Gcc_backend::if_statement): Change then_block and else_block to
586         Bblock*.
587         (Gcc_backend::block): New function.
588         (Gcc_backend::block_add_statements): New function.
589         (Gcc_backend::block_statement): New function.
590         (tree_to_block, block_to_tree): New functions.
592 2011-04-18  Ian Lance Taylor  <iant@google.com>
594         * go-gcc.cc: Include "go-c.h".
595         (class Bvariable): Define.
596         (Gcc_backend::init_statement): New function.
597         (Gcc_backend::global_variable): New function.
598         (Gcc_backend::global_variable_set_init): New function.
599         (Gcc_backend::local_variable): New function.
600         (Gcc_backend::parameter_variable): New function.
601         (tree_to_type, var_to_tree): New functions.
602         * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
603         * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
605 2011-04-15  Ian Lance Taylor  <iant@google.com>
607         * go-gcc.cc (Gcc_backend::compound_statement): New function.
608         (Gcc_backend::assignment_statement): Use error_statement.
609         (Gcc_backend::return_statement): Likewise.
610         (Gcc_backend::if_statement): Likewise.
611         (Gcc_backend::switch_statement): Likewise.
612         (Gcc_backend::statement_list): Likewise.
614 2011-04-14  Ian Lance Taylor  <iant@google.com>
616         * go-gcc.cc (Gcc_backend::error_statement): New function.
618 2011-04-13  Ian Lance Taylor  <iant@google.com>
620         * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
622 2011-04-13  Ian Lance Taylor  <iant@google.com>
624         * Make-lang.in (GO_OBJS): Add go/runtime.o.
625         (GO_RUNTIME_H): New variable.
626         (go/runtime.o): New target.
627         (go/gogo.o): Depend on $(GO_RUNTIME_H).
628         (go/statements.o): Likewise.
630 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
632         * go-lang.c (union lang_tree_node): Check for TS_COMMON before
633         calling TREE_CHAIN.
635 2011-04-06  Ian Lance Taylor  <iant@google.com>
637         * go-gcc.cc (if_statement): Use build3_loc.
638         (Gcc_backend::switch_statement): New function.
639         (Gcc_backend::statement_list): New function.
641 2011-04-06  Ian Lance Taylor  <iant@google.com>
643         * go-gcc.cc (Gcc_backend::if_statement): New function.
644         (tree_to_stat): New function.
645         (expr_to_tree): Renamed from expression_to_tree.
646         (stat_to_tree): Renamed from statement_to_tree.
648 2011-04-06  Ian Lance Taylor  <iant@google.com>
650         * go-gcc.cc (Gcc_backend::expression_statement): New function.
652 2011-04-04  Ian Lance Taylor  <iant@google.com>
654         * go-gcc.c (class Blabel): Define.
655         (Gcc_backend::make_expression): New function.
656         (get_identifier_from_string): New function.
657         (Gcc_backend::label): New function.
658         (Gcc_backend::label_definition_statement): New function.
659         (Gcc_backend::goto_statement): New function.
660         (Gcc_backend::label_address): New function.
661         (expression_to_tree): New function.
662         * Make-lang.in (go/expressions.o): Depend on
663         go/gofrontend/backend.h.
664         (go/gogo.o): Likewise.
666 2011-04-04  Ian Lance Taylor  <iant@google.com>
668         * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
669         (class Bfunction): Define.
670         (Gcc_backend::assignment_statement): Rename from assignment.
671         Check for errors.
672         (Gcc_backend::return_statement): New function.
673         (tree_to_function): New function.
674         * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
675         $(GIMPLE_H), and $(GO_GOGO_H).
677 2011-04-03  Ian Lance Taylor  <iant@google.com>
679         * go-gcc.cc: New file.
680         * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
681         (go/go-gcc.o): New target.
682         (go/go.o): Depend on go/gofrontend/backend.h.
683         (go/statements.o): Likewise.
685 2011-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
687         * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
689 2011-02-08  Ian Lance Taylor  <iant@google.com>
691         * go-lang.c (go_langhook_init_options_struct): Set
692         frontend_set_flag_errno_math.  Don't set x_flag_trapping_math.
694 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
696         * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
697         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
699 2011-01-21  Ian Lance Taylor  <iant@google.com>
701         * go-lang.c (go_langhook_init): Omit float_type_size when calling
702         go_create_gogo.
703         * go-c.h: Update declaration of go_create_gogo.
705 2011-01-13  Ian Lance Taylor  <iant@google.com>
707         * go-backend.c: Include "rtl.h" and "target.h".
708         (go_imported_unsafe): New function.
709         * go-c.h (go_imported_unsafe): Declare.
710         * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
711         (go/gogo-tree.o): Remove dependency on $(RTL_H).
712         (go/unsafe.o): Depend on $(GO_C_H).
714 2010-12-31  Joern Rennecke  <amylaar@spamcop.net>
716         PR go/47113
717         * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
718         variable ‘field’ .
720 2010-12-21  Ian Lance Taylor  <iant@google.com>
722         * Make-lang.in (check-go): Remove.
723         (lang_checks_parallelized): Add check-go.
724         (check_go_parallelize): Set.
726 2010-12-13  Ian Lance Taylor  <iant@google.com>
728         * gospec.c (lang_specific_driver): Add a -o option if not linking
729         and there is no -o option already.
731 2010-12-07  Ian Lance Taylor  <iant@google.com>
733         PR tree-optimization/46805
734         PR tree-optimization/46833
735         * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
737 2010-12-06  Ian Lance Taylor  <iant@google.com>
739         PR other/46789
740         PR bootstrap/46812
741         * go-lang.c (go_char_p): Define type and vectors.
742         (go_search_dirs): New static variable.
743         (go_langhook_handle_option): Use version and version/machine
744         directories for -L.
745         (go_langhook_post_options): Add non-specific -L paths.
746         * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
747         DEFAULT_TARGET_MACHINE when compiling.
748         * gccgo.texi (Invoking gccgo): Only document -L for linking.
749         (Import and Export): Don't mention -L for finding import files.
751 2010-12-03  Ian Lance Taylor  <iant@google.com>
753         PR bootstrap/46776
754         * go-backend.c: New file.
755         * go-c.h (go_type_alignment): Declare.
756         (go_field_alignment, go_trampoline_info): Declare.
757         * Make-lang.in (GO_OBJS): Add go/go-backend.o.
758         (go/go-backend.o): New target.
759         (go/go-lang.o): Make dependencies match source file.
760         (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
761         (go/gogo-tree.o): Don't depend on $(TM_H).
763 2010-12-03  Ian Lance Taylor  <iant@google.com>
765         * config-lang.in (build_by_default): Set to no.
767 2010-12-02  Ian Lance Taylor  <iant@google.com>
769         Go frontend added to gcc repository.
771 Copyright (C) 2010-2014 Free Software Foundation, Inc.
773 Copying and distribution of this file, with or without modification,
774 are permitted in any medium without royalty provided the copyright
775 notice and this notice are preserved.