1 2014-08-08 Ian Lance Taylor <iant@google.com>
3 * go-gcc.cc (Gcc_backend::compound_statement): Don't return
6 2014-07-24 Uros Bizjak <ubizjak@gmail.com>
8 * go-gcc.cc (Gcc_backend::global_variable_set_init): Rename
9 symtab_get_node to symtab_node::get.
11 2014-06-13 Ian Lance Taylor <iant@google.com>
14 * gospec.c (lang_specific_driver): On Solaris, when not using GNU
15 ld, add -t option to avoid warning about common symbol changing
18 2014-06-10 Jan Hubicka <hubicka@ucw.cz>
20 * go-gcc.cc (Gcc_backend::global_variable_set_init): Use
21 symtab_get_node(var_decl)->implicit_section.
23 2014-06-07 Jan Hubicka <hubicka@ucw.cz>
25 * go-gcc.cc (global_variable_set_init): Use
26 set_decl_section_name.
28 2014-06-04 Ian Lance Taylor <iant@google.com>
30 * go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
31 alignment parameters. Permit init parameter to be NULL.
33 2014-06-02 Andrew MacLeod <amacleod@redhat.com>
35 * go-gcc.cc: Include builtins.h.
37 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
39 * go-lang.c (struct GTY): Don't use variable_size gty attribute.
41 2014-05-06 Chris Manghane <cmang@google.com>
43 * go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
44 (Gcc_backend::boolean_constant_expression): New method.
45 (Gcc_backend::zero_expression): Use this->make_expression rather
47 (Gcc_backend::var_expression): Likewise.
48 (Gcc_backend::integer_constant_expression): Likewise.
49 (Gcc_backend::float_constant_expression): Likewise.
50 (Gcc_backend::complex_constant_expression): Likewise.
51 (Gcc_backend::struct_field_expression): Likewise.
52 (tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
53 (tree_to_function, tree_to_block): Remove functions.
54 (type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
55 (block_to_tree, var_to_tree, function_to_tree): Remove functions.
57 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
58 Mike Stump <mikestump@comcast.net>
59 Richard Sandiford <rdsandiford@googlemail.com>
61 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
63 2014-05-06 Chris Manghane <cmang@google.com>
65 * go-c.h (go_create_gogo): Update declaration to add
66 check_divide_zero and check_divide_overflow parameters.
67 * go-lang.c (go_langhook_init): Pass new arguments to
70 2014-05-05 Chris Manghane <cmang@google.com>
72 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
73 gc_root_variable. Add name and is_constant parameters.
75 2014-05-05 Chris Manghane <cmang@google.com>
77 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
79 (Gcc_backend::temporary_variable): Check for erroneous function.
81 2014-04-30 Chris Manghane <cmang@google.com>
83 * go-backend.c: #include "diagnostics.h".
84 (saw_errors): New function.
85 * go-c.h (saw_errors): Declare.
86 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
88 2014-04-30 Chris Manghane <cmang@google.com>
90 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
91 calling into Go frontend.
92 (go_langhook_type_for_mode): Likewise.
93 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
95 2014-04-30 Chris Manghane <cmang@google.com>
97 * go-gcc.cc: #include "langhooks.h".
98 (Gcc_backend::Gcc_backend): Add constructor.
99 (Gcc_backend::lookup_function): New function.
100 (Gcc_backend::define_builtin): New private function.
101 (Gcc_backend::gcc_backend): Remove.
102 (go_get_backend): Use new to create new Gcc_backend.
104 2014-04-25 Chris Manghane <cmang@google.com>
106 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
107 (Gcc_backend::return_statement): Push and pop function.
108 (Gcc_backend::label): Likewise.
109 (Gcc_backend::function_defer_statement): Likewise.
110 (Gcc_backend::switch_statement): Add function parameter.
111 (Gcc_backend::block): Don't permit function to be NULL.
112 (Gcc_backend::temporary_variable): Change go_assert to
114 (Gcc_backend::gc_root_variable): New function.
115 (Gcc_backend::write_global_definitions): New function.
117 2014-04-22 Chris Manghane <cmang@google.com>
119 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
120 call to create_tmp_var. Require that function be non-NULL.
122 2014-04-17 Chris Manghane <cmang@google.com>
124 * go-gcc.cc (Gcc_backend::named_constant_expression): New
127 2014-04-14 Chris Manghane <cmang@google.com>
129 * go-gcc.cc: Include "convert.h".
130 (Gcc_backend::string_constant_expression): New function.
131 (Gcc_backend::real_part_expression): Likewise.
132 (Gcc_backend::imag_part_expression): Likewise.
133 (Gcc_backend::complex_expression): Likewise.
134 (Gcc_backend::constructor_expression): Likewise.
135 (Gcc_backend::array_constructor_expression): Likewise.
136 (Gcc_backend::pointer_offset_expression): Likewise.
137 (Gcc_backend::array_index_expression): Likewise.
138 (Gcc_backend::call_expression): Likewise.
139 (Gcc_backend::exception_handler_statement): Likewise.
140 (Gcc_backend::function_defer_statement): Likewise.
141 (Gcc_backend::function_set_parameters): Likewise.
142 (Gcc_backend::function_set_body): Likewise.
143 (Gcc_backend::convert_expression): Handle various type
146 2014-03-03 Ian Lance Taylor <iant@google.com>
148 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
150 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
153 2014-01-24 Chris Manghane <cmang@google.com>
155 * go-gcc.cc (Gcc_backend::unary_expression): New function.
157 2014-01-16 Chris Manghane <cmang@google.com>
159 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
161 (operator_to_tree_code): New static function.
162 (Gcc_backend::binary_expression): New function.
164 2014-01-14 Chris Manghane <cmang@google.com>
166 * go-gcc.cc (Gcc_backend::compound_expression): New function.
167 (Gcc_backend::conditional_expression): New function.
169 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
171 Update copyright years
173 2014-01-02 Tobias Burnus <burnus@net-b.de>
175 * gccgo.texi: Bump @copying's copyright year.
177 2013-12-16 Chris Manghane <cmang@google.com>
179 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
181 2013-12-11 Ian Lance Taylor <iant@google.com>
183 * go-lang.c (go_langhook_post_options): Disable sibling calls by
186 2013-12-10 Ian Lance Taylor <iant@google.com>
188 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
191 2013-12-05 Ian Lance Taylor <iant@google.com>
193 Revert this change; no longer required.
194 2013-11-06 Ian Lance Taylor <iant@google.com>
196 * go-lang.c (go_langhook_post_options): If
197 -fisolate-erroneous-paths was turned on by an optimization option,
200 2013-11-23 Ian Lance Taylor <iant@google.com>
202 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
205 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
207 * go-gcc.cc: Add required include files from gimple.h.
208 * go-lang.c: Likewise
210 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
212 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
213 tree_to_shwi throughout.
215 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
217 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
218 tree_fits_shwi_p throughout.
220 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
222 * go-lang.c: Include only gimplify.h and gimple.h as needed.
224 2013-11-14 Diego Novillo <dnovillo@google.com>
226 * go-backend.c: Include stor-layout.h.
227 * go-gcc.cc: Include stringpool.h.
228 Include stor-layout.h.
230 * go-lang.c: Include stor-layout.h.
232 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
234 * go-lang.c: Include gimplify.h.
236 2013-11-06 Ian Lance Taylor <iant@google.com>
238 * go-lang.c (go_langhook_post_options): If
239 -fisolate-erroneous-paths was turned on by an optimization option,
242 2013-10-14 Chris Manghane <cmang@google.com>
244 * go-gcc.cc (Gcc_backend::address_expression): New function.
246 2013-10-11 Chris Manghane <cmang@google.com>
248 * go-gcc.cc (Gcc_backend::function_code_expression): New
251 2013-10-10 Chris Manghane <cmang@google.com>
253 * go-gcc.cc (Gcc_backend::error_function): New function.
254 (Gcc_backend::function): New function.
255 (Gcc_backend::make_function): New function.
256 (function_to_tree): New function.
258 2013-10-04 Chris Manghane <cmang@google.com>
260 * go-gcc.cc (Gcc_backend::convert_expression): New function.
262 2013-10-02 Chris Manghane <cmang@google.com>
264 * go-gcc.cc: Include "real.h" and "realmpfr.h".
265 (Gcc_backend::integer_constant_expression): New function.
266 (Gcc_backend::float_constant_expression): New function.
267 (Gcc_backend::complex_constant_expression): New function.
269 2013-09-30 Chris Manghane <cmang@google.com>
271 * go-gcc.cc (Gcc_backend::error_expression): New function.
272 (Gcc_backend::var_expression): New function.
273 (Gcc_backend::indirect_expression): New function.
275 2013-09-25 Tom Tromey <tromey@redhat.com>
277 * Make-lang.in (gospec.o): Remove.
278 (CFLAGS-go/gospec.o): New variable.
279 (GCCGO_OBJS): Update to use go/gospec.o.
281 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
282 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
283 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
284 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
285 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
286 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
287 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
288 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
289 (go/unsafe.o): Remove.
290 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
291 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
293 2013-09-25 Tom Tromey <tromey@redhat.com>
295 * Make-lang.in (gospec.o): Don't use subshell.
297 2013-08-28 Ian Lance Taylor <iant@google.com>
299 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
300 the struct is not hidden.
301 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
303 2013-08-06 Ian Lance Taylor <iant@google.com>
305 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
306 compute_reloc_for_constant.
308 2013-08-02 Ian Lance Taylor <iant@google.com>
310 * go-gcc.cc (immutable_struct_set_init): Always call
311 resolve_unique_section.
313 2013-07-24 Ian Lance Taylor <iant@google.com>
315 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
316 fields, recreate those fields with the first one with a non-zero
319 2013-07-23 Ian Lance Taylor <iant@google.com>
321 * go-backend.c: Don't #include "rtl.h".
322 (go_imported_unsafe): Don't call init_varasm_once.
323 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
325 2013-07-23 Ian Lance Taylor <iant@google.com>
327 * go-lang.c: Don't #include "except.h".
328 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
330 2013-06-18 Ian Lance Taylor <iant@google.com>
332 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
334 (Gcc_backend::immutable_struct_set_init): Likewise.
336 2013-05-16 Jason Merrill <jason@redhat.com>
338 * Make-lang.in (go1$(exeext)): Use link mutex.
340 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
342 * gospec.c: pass -u pthread_create to linker when static linking.
344 2012-12-21 Ian Lance Taylor <iant@google.com>
347 * go-system.h: Don't include <cstdio>.
349 2012-12-18 Ian Lance Taylor <iant@google.com>
352 * gospec.c: Revert last patch.
354 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
357 * gospec.c (LIBATOMIC): Define.
358 (LIBATOMIC_PROFILE): Define.
359 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
361 2012-11-29 Ian Lance Taylor <iant@google.com>
363 * go-gcc.cc: Include "output.h".
364 (global_variable): Add is_unique_section parameter.
365 (global_variable_set_init): Adjust unique section if necessary.
366 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
368 2012-11-17 Diego Novillo <dnovillo@google.com>
370 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
372 * go-lang.c: Use new vec API in vec.h.
374 2012-11-16 Ian Lance Taylor <iant@google.com>
376 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
377 (go1$(exeext)): Likewise.
379 2012-10-30 Ian Lance Taylor <iant@google.com>
381 * lang.opt (-fgo-relative-import-path): New option.
382 * go-lang.c (go_relative_import_path): New static variable.
383 (go_langhook_init): Pass go_relative_import_path to
385 (go_langhook_handle_option): Handle -fgo-relative-import-path.
386 * go-c.h (go_create_gogo): Update declaration.
387 * gccgo.texi (Invoking gccgo): Document
388 -fgo-relative-import-path.
390 2012-09-17 Ian Lance Taylor <iant@google.com>
392 * config-lang.in (target_libs): Add target-libbacktrace.
394 2012-09-16 Ian Lance Taylor <iant@google.com>
396 * Make-lang.in (go/gogo.o): Depend on filenames.h.
398 2012-08-14 Diego Novillo <dnovillo@google.com>
400 Merge from cxx-conversion branch. Configury.
402 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
403 * go-gcc.cc: Likewise.
404 * go-system.h: Likewise.
406 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
408 * go-lang.c (lang_decl): Add variable_size GTY option.
410 2012-05-09 Ian Lance Taylor <iant@google.com>
412 * lang.opt: Add -fgo-pkgpath.
413 * go-lang.c (go_pkgpath): New static variable.
414 (go_prefix): New static variable.
415 (go_langhook_init): Pass go_pkgpath and go_prefix to
417 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
418 -fgo-prefix handling to just set go_prefix.
419 * go-c.h (go_set_prefix): Don't declare.
420 (go_create_gogo): Add pkgpath and prefix to declaration.
421 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
422 to pkgpath. Don't include the package name in the asm name.
423 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
424 docs for -fgo-prefix.
426 2012-04-23 Ian Lance Taylor <iant@google.com>
428 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
430 2012-04-20 Ian Lance Taylor <iant@google.com>
432 * lang.opt: Add -fgo-check-divide-zero and
433 -fgo-check-divide-overflow.
434 * gccgo.texi (Invoking gccgo): Document new options.
436 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
438 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
439 with NULL_TREE type instead of void_type_node.
441 2012-03-09 Ian Lance Taylor <iant@google.com>
443 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
444 to the lhs type if necessary.
446 2012-03-08 Ian Lance Taylor <iant@google.com>
448 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
450 (go_non_zero_struct): New global variable.
451 (Gcc_backend::non_zero_size_type): New function.
452 (Gcc_backend::global_variable): Don't build an assignment for a
454 * go-c.h (go_non_zero_struct): Declare.
455 * config-lang.in (gtfiles): Add go-c.h.
457 2012-02-29 Ian Lance Taylor <iant@google.com>
459 * go-gcc.cc (class Gcc_tree): Add set_tree method.
460 (set_placeholder_pointer_type): When setting to a pointer to
461 error, set to error_mark_node.
463 2012-02-23 Richard Guenther <rguenther@suse.de>
465 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
466 build_distinct_type_copy.
468 2012-02-17 Ian Lance Taylor <iant@google.com>
470 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
472 2012-02-17 Ian Lance Taylor <iant@google.com>
474 * gospec.c (lang_specific_driver): If linking, and no -o option
477 2012-02-14 Ian Lance Taylor <iant@google.com>
480 * Make-lang.in (gccgo-cross$(exeext)): New target.
481 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
483 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
484 gccgo-cross$(exeext) does not exist.
486 2012-02-07 Ian Lance Taylor <iant@google.com>
488 * gccgo.texi (Function Names): Document //extern instead of
491 2012-02-01 Jakub Jelinek <jakub@redhat.com>
494 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
495 return build_nonstandard_integer_type result if possible.
497 2012-01-21 Ian Lance Taylor <iant@google.com>
499 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
500 (Gcc_backend::type_alignment): Likewise.
501 (Gcc_backend::type_field_alignment): Likewise.
502 (Gcc_backend::type_field_offset): Likewise.
504 2012-01-20 Ian Lance Taylor <iant@google.com>
506 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
508 (Gcc_backend::set_placeholder_struct_type): Likewise.
510 2012-01-17 Ian Lance Taylor <iant@google.com>
512 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
513 BASE.s rather than -o BASE.o.
515 2012-01-11 Ian Lance Taylor <iant@google.com>
517 * go-lang.c (go_langhook_init): Initialize void_list_node before
518 calling go_create_gogo.
520 2012-01-10 Ian Lance Taylor <iant@google.com>
522 * go-gcc.cc (Gcc_backend::type_size): New function.
523 (Gcc_backend::type_alignment): New function.
524 (Gcc_backend::type_field_alignment): New function.
525 (Gcc_backend::type_field_offset): New function.
526 * go-backend.c (go_type_alignment): Remove.
527 * go-c.h (go_type_alignment): Don't declare.
529 2011-12-27 Ian Lance Taylor <iant@google.com>
531 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
532 build_distinct_type_copy rather than build_variant_type_copy.
533 (Gcc_backend::set_placeholder_array_type): Likewise.
534 (Gcc_backend::named_type): Add special handling for builtin
537 2011-12-22 Ian Lance Taylor <iant@google.com>
539 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
540 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
541 (Gcc_backend::set_placeholder_struct_type): Likewise.
542 (Gcc_backend::set_placeholder_array_type): Likewise.
543 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
545 2011-12-13 Ian Lance Taylor <iant@google.com>
547 * go-backend.c: #include "simple-object.h" and "intl.h".
548 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
549 (GO_EXPORT_SECTION_NAME): Likewise.
550 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
551 (go_read_export_data): New function.
552 * go-c.h (go_read_export_data): Declare.
554 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
555 Ian Lance Taylor <iant@google.com>
557 * go-location.h: New file.
558 * go-linemap.cc: New file.
559 * go-gcc.cc: Change all uses of source_location to Location.
560 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
561 (GO_LINEMAP_H): New variable.
562 (GO_LEX_H): Use $(GO_LINEMAP_H).
563 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
564 (go/go-linemap.o): New target.
566 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
568 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
570 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
572 * lang.opt: Add fgo-optimize-.
573 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
574 * go-c.h (go_enable_optimize): Declare.
575 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
576 (GO_EXPORT_H): Define.
577 (GO_IMPORT_H): Add $(GO_EXPORT_H).
578 (GO_AST_DUMP_H): Define.
579 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
580 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
581 (go/types.o): Likewise.
582 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
583 (go/go-optimize.o): New target.
585 2011-08-24 Joseph Myers <joseph@codesourcery.com>
587 * Make-lang.in (CFLAGS-go/go-lang.o): New.
588 (go/go-lang.o): Remove explicit compilation rule.
590 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
592 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
594 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
596 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
597 (go/ast-dump.o): New target.
598 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
599 (go/statements.o): Likewise.
601 2011-07-06 Richard Guenther <rguenther@suse.de>
603 * go-lang.c (go_langhook_init):
604 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
606 2011-06-14 Joseph Myers <joseph@codesourcery.com>
608 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
610 * go-backend.c: Include common/common-target.h.
611 (go_write_export_data): Use targetm_common.have_named_sections.
612 * go-lang.c: Include common/common-target.h.
613 (go_langhook_init_options_struct): Use
614 targetm_common.supports_split_stack.
616 2011-06-13 Ian Lance Taylor <iant@google.com>
618 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
620 2011-06-10 Ian Lance Taylor <iant@google.com>
622 * go-gcc.cc: Include "toplev.h".
623 (Gcc_backend::immutable_struct): New function.
624 (Gcc_backend::immutable_struct_set_init): New function.
625 (Gcc_backend::immutable_struct_reference): New function.
626 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
628 2011-06-09 Ian Lance Taylor <iant@google.com>
630 * go-gcc.cc (Gcc_backend::zero_expression): New function.
632 2011-06-07 Richard Guenther <rguenther@suse.de>
634 * go-lang.c (go_langhook_init): Do not set
635 size_type_node or call set_sizetype.
637 2011-05-27 Ian Lance Taylor <iant@google.com>
639 * go-backend.c: Include "output.h".
640 (go_write_export_data): New function.
641 * go-c.h (go_write_export_data): Declare.
642 * Make-lang.in (go/go-backend.o): Depend on output.h.
643 (go/export.o): Depend on $(GO_C_H). Do not depend on
644 $(MACHMODE_H), output.h, or $(TARGET_H).
646 2011-05-24 Joseph Myers <joseph@codesourcery.com>
648 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
649 (gccgo$(exeext)): Use libcommon-target.a.
651 2011-05-20 Joseph Myers <joseph@codesourcery.com>
653 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
655 2011-05-13 Ian Lance Taylor <iant@google.com>
657 * go-gcc.cc (Gcc_backend::function_type): When building a struct
658 for multiple results, check that all fields types have a size.
659 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
661 2011-05-12 Ian Lance Taylor <iant@google.com>
663 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
665 (Gcc_backend::parameter_variable): Likewise.
667 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
669 * go-lang.c (global_bindings_p): Return bool and simplify.
671 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
673 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
675 2011-05-04 Ian Lance Taylor <iant@google.com>
677 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
678 (Gcc_backend::fill_in_struct): New function.
679 (Gcc_backend::array_type): Implement.
680 (Gcc_backend::fill_in_array): New function.
681 (Gcc_backend::placeholder_pointer_type): New function.
682 (Gcc_backend::set_placeholder_pointer_type): New function.
683 (Gcc_backend::set_placeholder_function_type): New function.
684 (Gcc_backend::placeholder_struct_type): New function.
685 (Gcc_backend::set_placeholder_struct_type): New function.
686 (Gcc_backend::placeholder_array_type): New function.
687 (Gcc_backend::set_placeholder_array_type): New function.
688 (Gcc_backend::named_type): New function.
689 (Gcc_backend::circular_pointer_type): New function.
690 (Gcc_backend::is_circular_pointer_type): New function.
692 2011-04-26 Ian Lance Taylor <iant@google.com>
694 * go-gcc.cc (Gcc_backend::struct_type): Implement.
696 2011-04-25 Ian Lance Taylor <iant@google.com>
698 * go-gcc.cc (Gcc_backend::error_type): Implement.
699 (Gcc_backend::string_type): Remove.
700 (Gcc_backend::function_type): Change signature and implement.
701 (Gcc_backend::struct_type): Change signature.
702 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
703 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
704 (Gcc_backend::pointer_type): Check for error.
705 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
707 2011-04-25 Evan Shaw <edsrzf@gmail.com>
709 * go-gcc.c (class Gcc_tree): Make get_tree const.
710 (Gcc_backend::void_type): Implement.
711 (Gcc_backend::bool_type): Implement.
712 (Gcc_backend::integer_type): Implement.
713 (Gcc_backend::float_type): Implement.
714 (Gcc_backend::complex_type): New function.
715 (Gcc_backend::pointer_type): New function.
716 (Gcc_backend::make_type): New function.
717 (type_to_tree): New function.
719 2011-04-21 Ian Lance Taylor <iant@google.com>
721 * go-system.h (go_assert, go_unreachable): Define.
723 2011-04-19 Ian Lance Taylor <iant@google.com>
725 * go-system.h: Include "intl.h".
726 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
727 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
728 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
730 2011-04-19 Ian Lance Taylor <iant@google.com>
732 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
734 2011-04-19 Ian Lance Taylor <iant@google.com>
736 * go-gcc.cc (class Bblock): Define.
737 (Gcc_backend::if_statement): Change then_block and else_block to
739 (Gcc_backend::block): New function.
740 (Gcc_backend::block_add_statements): New function.
741 (Gcc_backend::block_statement): New function.
742 (tree_to_block, block_to_tree): New functions.
744 2011-04-18 Ian Lance Taylor <iant@google.com>
746 * go-gcc.cc: Include "go-c.h".
747 (class Bvariable): Define.
748 (Gcc_backend::init_statement): New function.
749 (Gcc_backend::global_variable): New function.
750 (Gcc_backend::global_variable_set_init): New function.
751 (Gcc_backend::local_variable): New function.
752 (Gcc_backend::parameter_variable): New function.
753 (tree_to_type, var_to_tree): New functions.
754 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
755 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
757 2011-04-15 Ian Lance Taylor <iant@google.com>
759 * go-gcc.cc (Gcc_backend::compound_statement): New function.
760 (Gcc_backend::assignment_statement): Use error_statement.
761 (Gcc_backend::return_statement): Likewise.
762 (Gcc_backend::if_statement): Likewise.
763 (Gcc_backend::switch_statement): Likewise.
764 (Gcc_backend::statement_list): Likewise.
766 2011-04-14 Ian Lance Taylor <iant@google.com>
768 * go-gcc.cc (Gcc_backend::error_statement): New function.
770 2011-04-13 Ian Lance Taylor <iant@google.com>
772 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
774 2011-04-13 Ian Lance Taylor <iant@google.com>
776 * Make-lang.in (GO_OBJS): Add go/runtime.o.
777 (GO_RUNTIME_H): New variable.
778 (go/runtime.o): New target.
779 (go/gogo.o): Depend on $(GO_RUNTIME_H).
780 (go/statements.o): Likewise.
782 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
784 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
787 2011-04-06 Ian Lance Taylor <iant@google.com>
789 * go-gcc.cc (if_statement): Use build3_loc.
790 (Gcc_backend::switch_statement): New function.
791 (Gcc_backend::statement_list): New function.
793 2011-04-06 Ian Lance Taylor <iant@google.com>
795 * go-gcc.cc (Gcc_backend::if_statement): New function.
796 (tree_to_stat): New function.
797 (expr_to_tree): Renamed from expression_to_tree.
798 (stat_to_tree): Renamed from statement_to_tree.
800 2011-04-06 Ian Lance Taylor <iant@google.com>
802 * go-gcc.cc (Gcc_backend::expression_statement): New function.
804 2011-04-04 Ian Lance Taylor <iant@google.com>
806 * go-gcc.c (class Blabel): Define.
807 (Gcc_backend::make_expression): New function.
808 (get_identifier_from_string): New function.
809 (Gcc_backend::label): New function.
810 (Gcc_backend::label_definition_statement): New function.
811 (Gcc_backend::goto_statement): New function.
812 (Gcc_backend::label_address): New function.
813 (expression_to_tree): New function.
814 * Make-lang.in (go/expressions.o): Depend on
815 go/gofrontend/backend.h.
816 (go/gogo.o): Likewise.
818 2011-04-04 Ian Lance Taylor <iant@google.com>
820 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
821 (class Bfunction): Define.
822 (Gcc_backend::assignment_statement): Rename from assignment.
824 (Gcc_backend::return_statement): New function.
825 (tree_to_function): New function.
826 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
827 $(GIMPLE_H), and $(GO_GOGO_H).
829 2011-04-03 Ian Lance Taylor <iant@google.com>
831 * go-gcc.cc: New file.
832 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
833 (go/go-gcc.o): New target.
834 (go/go.o): Depend on go/gofrontend/backend.h.
835 (go/statements.o): Likewise.
837 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
839 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
841 2011-02-08 Ian Lance Taylor <iant@google.com>
843 * go-lang.c (go_langhook_init_options_struct): Set
844 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
846 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
848 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
849 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
851 2011-01-21 Ian Lance Taylor <iant@google.com>
853 * go-lang.c (go_langhook_init): Omit float_type_size when calling
855 * go-c.h: Update declaration of go_create_gogo.
857 2011-01-13 Ian Lance Taylor <iant@google.com>
859 * go-backend.c: Include "rtl.h" and "target.h".
860 (go_imported_unsafe): New function.
861 * go-c.h (go_imported_unsafe): Declare.
862 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
863 (go/gogo-tree.o): Remove dependency on $(RTL_H).
864 (go/unsafe.o): Depend on $(GO_C_H).
866 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
869 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
872 2010-12-21 Ian Lance Taylor <iant@google.com>
874 * Make-lang.in (check-go): Remove.
875 (lang_checks_parallelized): Add check-go.
876 (check_go_parallelize): Set.
878 2010-12-13 Ian Lance Taylor <iant@google.com>
880 * gospec.c (lang_specific_driver): Add a -o option if not linking
881 and there is no -o option already.
883 2010-12-07 Ian Lance Taylor <iant@google.com>
885 PR tree-optimization/46805
886 PR tree-optimization/46833
887 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
889 2010-12-06 Ian Lance Taylor <iant@google.com>
893 * go-lang.c (go_char_p): Define type and vectors.
894 (go_search_dirs): New static variable.
895 (go_langhook_handle_option): Use version and version/machine
897 (go_langhook_post_options): Add non-specific -L paths.
898 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
899 DEFAULT_TARGET_MACHINE when compiling.
900 * gccgo.texi (Invoking gccgo): Only document -L for linking.
901 (Import and Export): Don't mention -L for finding import files.
903 2010-12-03 Ian Lance Taylor <iant@google.com>
906 * go-backend.c: New file.
907 * go-c.h (go_type_alignment): Declare.
908 (go_field_alignment, go_trampoline_info): Declare.
909 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
910 (go/go-backend.o): New target.
911 (go/go-lang.o): Make dependencies match source file.
912 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
913 (go/gogo-tree.o): Don't depend on $(TM_H).
915 2010-12-03 Ian Lance Taylor <iant@google.com>
917 * config-lang.in (build_by_default): Set to no.
919 2010-12-02 Ian Lance Taylor <iant@google.com>
921 Go frontend added to gcc repository.
923 Copyright (C) 2010-2014 Free Software Foundation, Inc.
925 Copying and distribution of this file, with or without modification,
926 are permitted in any medium without royalty provided the copyright
927 notice and this notice are preserved.