1 2014-06-04 Ian Lance Taylor <iant@google.com>
3 * go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
4 alignment parameters. Permit init parameter to be NULL.
6 2014-06-02 Andrew MacLeod <amacleod@redhat.com>
8 * go-gcc.cc: Include builtins.h.
10 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
12 * go-lang.c (struct GTY): Don't use variable_size gty attribute.
14 2014-05-06 Chris Manghane <cmang@google.com>
16 * go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
17 (Gcc_backend::boolean_constant_expression): New method.
18 (Gcc_backend::zero_expression): Use this->make_expression rather
20 (Gcc_backend::var_expression): Likewise.
21 (Gcc_backend::integer_constant_expression): Likewise.
22 (Gcc_backend::float_constant_expression): Likewise.
23 (Gcc_backend::complex_constant_expression): Likewise.
24 (Gcc_backend::struct_field_expression): Likewise.
25 (tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
26 (tree_to_function, tree_to_block): Remove functions.
27 (type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
28 (block_to_tree, var_to_tree, function_to_tree): Remove functions.
30 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
31 Mike Stump <mikestump@comcast.net>
32 Richard Sandiford <rdsandiford@googlemail.com>
34 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
36 2014-05-06 Chris Manghane <cmang@google.com>
38 * go-c.h (go_create_gogo): Update declaration to add
39 check_divide_zero and check_divide_overflow parameters.
40 * go-lang.c (go_langhook_init): Pass new arguments to
43 2014-05-05 Chris Manghane <cmang@google.com>
45 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
46 gc_root_variable. Add name and is_constant parameters.
48 2014-05-05 Chris Manghane <cmang@google.com>
50 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
52 (Gcc_backend::temporary_variable): Check for erroneous function.
54 2014-04-30 Chris Manghane <cmang@google.com>
56 * go-backend.c: #include "diagnostics.h".
57 (saw_errors): New function.
58 * go-c.h (saw_errors): Declare.
59 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
61 2014-04-30 Chris Manghane <cmang@google.com>
63 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
64 calling into Go frontend.
65 (go_langhook_type_for_mode): Likewise.
66 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
68 2014-04-30 Chris Manghane <cmang@google.com>
70 * go-gcc.cc: #include "langhooks.h".
71 (Gcc_backend::Gcc_backend): Add constructor.
72 (Gcc_backend::lookup_function): New function.
73 (Gcc_backend::define_builtin): New private function.
74 (Gcc_backend::gcc_backend): Remove.
75 (go_get_backend): Use new to create new Gcc_backend.
77 2014-04-25 Chris Manghane <cmang@google.com>
79 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
80 (Gcc_backend::return_statement): Push and pop function.
81 (Gcc_backend::label): Likewise.
82 (Gcc_backend::function_defer_statement): Likewise.
83 (Gcc_backend::switch_statement): Add function parameter.
84 (Gcc_backend::block): Don't permit function to be NULL.
85 (Gcc_backend::temporary_variable): Change go_assert to
87 (Gcc_backend::gc_root_variable): New function.
88 (Gcc_backend::write_global_definitions): New function.
90 2014-04-22 Chris Manghane <cmang@google.com>
92 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
93 call to create_tmp_var. Require that function be non-NULL.
95 2014-04-17 Chris Manghane <cmang@google.com>
97 * go-gcc.cc (Gcc_backend::named_constant_expression): New
100 2014-04-14 Chris Manghane <cmang@google.com>
102 * go-gcc.cc: Include "convert.h".
103 (Gcc_backend::string_constant_expression): New function.
104 (Gcc_backend::real_part_expression): Likewise.
105 (Gcc_backend::imag_part_expression): Likewise.
106 (Gcc_backend::complex_expression): Likewise.
107 (Gcc_backend::constructor_expression): Likewise.
108 (Gcc_backend::array_constructor_expression): Likewise.
109 (Gcc_backend::pointer_offset_expression): Likewise.
110 (Gcc_backend::array_index_expression): Likewise.
111 (Gcc_backend::call_expression): Likewise.
112 (Gcc_backend::exception_handler_statement): Likewise.
113 (Gcc_backend::function_defer_statement): Likewise.
114 (Gcc_backend::function_set_parameters): Likewise.
115 (Gcc_backend::function_set_body): Likewise.
116 (Gcc_backend::convert_expression): Handle various type
119 2014-03-03 Ian Lance Taylor <iant@google.com>
121 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
123 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
126 2014-01-24 Chris Manghane <cmang@google.com>
128 * go-gcc.cc (Gcc_backend::unary_expression): New function.
130 2014-01-16 Chris Manghane <cmang@google.com>
132 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
134 (operator_to_tree_code): New static function.
135 (Gcc_backend::binary_expression): New function.
137 2014-01-14 Chris Manghane <cmang@google.com>
139 * go-gcc.cc (Gcc_backend::compound_expression): New function.
140 (Gcc_backend::conditional_expression): New function.
142 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
144 Update copyright years
146 2014-01-02 Tobias Burnus <burnus@net-b.de>
148 * gccgo.texi: Bump @copying's copyright year.
150 2013-12-16 Chris Manghane <cmang@google.com>
152 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
154 2013-12-11 Ian Lance Taylor <iant@google.com>
156 * go-lang.c (go_langhook_post_options): Disable sibling calls by
159 2013-12-10 Ian Lance Taylor <iant@google.com>
161 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
164 2013-12-05 Ian Lance Taylor <iant@google.com>
166 Revert this change; no longer required.
167 2013-11-06 Ian Lance Taylor <iant@google.com>
169 * go-lang.c (go_langhook_post_options): If
170 -fisolate-erroneous-paths was turned on by an optimization option,
173 2013-11-23 Ian Lance Taylor <iant@google.com>
175 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
178 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
180 * go-gcc.cc: Add required include files from gimple.h.
181 * go-lang.c: Likewise
183 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
185 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
186 tree_to_shwi throughout.
188 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
190 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
191 tree_fits_shwi_p throughout.
193 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
195 * go-lang.c: Include only gimplify.h and gimple.h as needed.
197 2013-11-14 Diego Novillo <dnovillo@google.com>
199 * go-backend.c: Include stor-layout.h.
200 * go-gcc.cc: Include stringpool.h.
201 Include stor-layout.h.
203 * go-lang.c: Include stor-layout.h.
205 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
207 * go-lang.c: Include gimplify.h.
209 2013-11-06 Ian Lance Taylor <iant@google.com>
211 * go-lang.c (go_langhook_post_options): If
212 -fisolate-erroneous-paths was turned on by an optimization option,
215 2013-10-14 Chris Manghane <cmang@google.com>
217 * go-gcc.cc (Gcc_backend::address_expression): New function.
219 2013-10-11 Chris Manghane <cmang@google.com>
221 * go-gcc.cc (Gcc_backend::function_code_expression): New
224 2013-10-10 Chris Manghane <cmang@google.com>
226 * go-gcc.cc (Gcc_backend::error_function): New function.
227 (Gcc_backend::function): New function.
228 (Gcc_backend::make_function): New function.
229 (function_to_tree): New function.
231 2013-10-04 Chris Manghane <cmang@google.com>
233 * go-gcc.cc (Gcc_backend::convert_expression): New function.
235 2013-10-02 Chris Manghane <cmang@google.com>
237 * go-gcc.cc: Include "real.h" and "realmpfr.h".
238 (Gcc_backend::integer_constant_expression): New function.
239 (Gcc_backend::float_constant_expression): New function.
240 (Gcc_backend::complex_constant_expression): New function.
242 2013-09-30 Chris Manghane <cmang@google.com>
244 * go-gcc.cc (Gcc_backend::error_expression): New function.
245 (Gcc_backend::var_expression): New function.
246 (Gcc_backend::indirect_expression): New function.
248 2013-09-25 Tom Tromey <tromey@redhat.com>
250 * Make-lang.in (gospec.o): Remove.
251 (CFLAGS-go/gospec.o): New variable.
252 (GCCGO_OBJS): Update to use go/gospec.o.
254 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
255 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
256 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
257 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
258 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
259 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
260 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
261 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
262 (go/unsafe.o): Remove.
263 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
264 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
266 2013-09-25 Tom Tromey <tromey@redhat.com>
268 * Make-lang.in (gospec.o): Don't use subshell.
270 2013-08-28 Ian Lance Taylor <iant@google.com>
272 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
273 the struct is not hidden.
274 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
276 2013-08-06 Ian Lance Taylor <iant@google.com>
278 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
279 compute_reloc_for_constant.
281 2013-08-02 Ian Lance Taylor <iant@google.com>
283 * go-gcc.cc (immutable_struct_set_init): Always call
284 resolve_unique_section.
286 2013-07-24 Ian Lance Taylor <iant@google.com>
288 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
289 fields, recreate those fields with the first one with a non-zero
292 2013-07-23 Ian Lance Taylor <iant@google.com>
294 * go-backend.c: Don't #include "rtl.h".
295 (go_imported_unsafe): Don't call init_varasm_once.
296 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
298 2013-07-23 Ian Lance Taylor <iant@google.com>
300 * go-lang.c: Don't #include "except.h".
301 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
303 2013-06-18 Ian Lance Taylor <iant@google.com>
305 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
307 (Gcc_backend::immutable_struct_set_init): Likewise.
309 2013-05-16 Jason Merrill <jason@redhat.com>
311 * Make-lang.in (go1$(exeext)): Use link mutex.
313 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
315 * gospec.c: pass -u pthread_create to linker when static linking.
317 2012-12-21 Ian Lance Taylor <iant@google.com>
320 * go-system.h: Don't include <cstdio>.
322 2012-12-18 Ian Lance Taylor <iant@google.com>
325 * gospec.c: Revert last patch.
327 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
330 * gospec.c (LIBATOMIC): Define.
331 (LIBATOMIC_PROFILE): Define.
332 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
334 2012-11-29 Ian Lance Taylor <iant@google.com>
336 * go-gcc.cc: Include "output.h".
337 (global_variable): Add is_unique_section parameter.
338 (global_variable_set_init): Adjust unique section if necessary.
339 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
341 2012-11-17 Diego Novillo <dnovillo@google.com>
343 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
345 * go-lang.c: Use new vec API in vec.h.
347 2012-11-16 Ian Lance Taylor <iant@google.com>
349 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
350 (go1$(exeext)): Likewise.
352 2012-10-30 Ian Lance Taylor <iant@google.com>
354 * lang.opt (-fgo-relative-import-path): New option.
355 * go-lang.c (go_relative_import_path): New static variable.
356 (go_langhook_init): Pass go_relative_import_path to
358 (go_langhook_handle_option): Handle -fgo-relative-import-path.
359 * go-c.h (go_create_gogo): Update declaration.
360 * gccgo.texi (Invoking gccgo): Document
361 -fgo-relative-import-path.
363 2012-09-17 Ian Lance Taylor <iant@google.com>
365 * config-lang.in (target_libs): Add target-libbacktrace.
367 2012-09-16 Ian Lance Taylor <iant@google.com>
369 * Make-lang.in (go/gogo.o): Depend on filenames.h.
371 2012-08-14 Diego Novillo <dnovillo@google.com>
373 Merge from cxx-conversion branch. Configury.
375 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
376 * go-gcc.cc: Likewise.
377 * go-system.h: Likewise.
379 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
381 * go-lang.c (lang_decl): Add variable_size GTY option.
383 2012-05-09 Ian Lance Taylor <iant@google.com>
385 * lang.opt: Add -fgo-pkgpath.
386 * go-lang.c (go_pkgpath): New static variable.
387 (go_prefix): New static variable.
388 (go_langhook_init): Pass go_pkgpath and go_prefix to
390 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
391 -fgo-prefix handling to just set go_prefix.
392 * go-c.h (go_set_prefix): Don't declare.
393 (go_create_gogo): Add pkgpath and prefix to declaration.
394 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
395 to pkgpath. Don't include the package name in the asm name.
396 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
397 docs for -fgo-prefix.
399 2012-04-23 Ian Lance Taylor <iant@google.com>
401 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
403 2012-04-20 Ian Lance Taylor <iant@google.com>
405 * lang.opt: Add -fgo-check-divide-zero and
406 -fgo-check-divide-overflow.
407 * gccgo.texi (Invoking gccgo): Document new options.
409 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
411 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
412 with NULL_TREE type instead of void_type_node.
414 2012-03-09 Ian Lance Taylor <iant@google.com>
416 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
417 to the lhs type if necessary.
419 2012-03-08 Ian Lance Taylor <iant@google.com>
421 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
423 (go_non_zero_struct): New global variable.
424 (Gcc_backend::non_zero_size_type): New function.
425 (Gcc_backend::global_variable): Don't build an assignment for a
427 * go-c.h (go_non_zero_struct): Declare.
428 * config-lang.in (gtfiles): Add go-c.h.
430 2012-02-29 Ian Lance Taylor <iant@google.com>
432 * go-gcc.cc (class Gcc_tree): Add set_tree method.
433 (set_placeholder_pointer_type): When setting to a pointer to
434 error, set to error_mark_node.
436 2012-02-23 Richard Guenther <rguenther@suse.de>
438 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
439 build_distinct_type_copy.
441 2012-02-17 Ian Lance Taylor <iant@google.com>
443 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
445 2012-02-17 Ian Lance Taylor <iant@google.com>
447 * gospec.c (lang_specific_driver): If linking, and no -o option
450 2012-02-14 Ian Lance Taylor <iant@google.com>
453 * Make-lang.in (gccgo-cross$(exeext)): New target.
454 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
456 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
457 gccgo-cross$(exeext) does not exist.
459 2012-02-07 Ian Lance Taylor <iant@google.com>
461 * gccgo.texi (Function Names): Document //extern instead of
464 2012-02-01 Jakub Jelinek <jakub@redhat.com>
467 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
468 return build_nonstandard_integer_type result if possible.
470 2012-01-21 Ian Lance Taylor <iant@google.com>
472 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
473 (Gcc_backend::type_alignment): Likewise.
474 (Gcc_backend::type_field_alignment): Likewise.
475 (Gcc_backend::type_field_offset): Likewise.
477 2012-01-20 Ian Lance Taylor <iant@google.com>
479 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
481 (Gcc_backend::set_placeholder_struct_type): Likewise.
483 2012-01-17 Ian Lance Taylor <iant@google.com>
485 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
486 BASE.s rather than -o BASE.o.
488 2012-01-11 Ian Lance Taylor <iant@google.com>
490 * go-lang.c (go_langhook_init): Initialize void_list_node before
491 calling go_create_gogo.
493 2012-01-10 Ian Lance Taylor <iant@google.com>
495 * go-gcc.cc (Gcc_backend::type_size): New function.
496 (Gcc_backend::type_alignment): New function.
497 (Gcc_backend::type_field_alignment): New function.
498 (Gcc_backend::type_field_offset): New function.
499 * go-backend.c (go_type_alignment): Remove.
500 * go-c.h (go_type_alignment): Don't declare.
502 2011-12-27 Ian Lance Taylor <iant@google.com>
504 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
505 build_distinct_type_copy rather than build_variant_type_copy.
506 (Gcc_backend::set_placeholder_array_type): Likewise.
507 (Gcc_backend::named_type): Add special handling for builtin
510 2011-12-22 Ian Lance Taylor <iant@google.com>
512 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
513 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
514 (Gcc_backend::set_placeholder_struct_type): Likewise.
515 (Gcc_backend::set_placeholder_array_type): Likewise.
516 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
518 2011-12-13 Ian Lance Taylor <iant@google.com>
520 * go-backend.c: #include "simple-object.h" and "intl.h".
521 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
522 (GO_EXPORT_SECTION_NAME): Likewise.
523 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
524 (go_read_export_data): New function.
525 * go-c.h (go_read_export_data): Declare.
527 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
528 Ian Lance Taylor <iant@google.com>
530 * go-location.h: New file.
531 * go-linemap.cc: New file.
532 * go-gcc.cc: Change all uses of source_location to Location.
533 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
534 (GO_LINEMAP_H): New variable.
535 (GO_LEX_H): Use $(GO_LINEMAP_H).
536 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
537 (go/go-linemap.o): New target.
539 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
541 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
543 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
545 * lang.opt: Add fgo-optimize-.
546 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
547 * go-c.h (go_enable_optimize): Declare.
548 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
549 (GO_EXPORT_H): Define.
550 (GO_IMPORT_H): Add $(GO_EXPORT_H).
551 (GO_AST_DUMP_H): Define.
552 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
553 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
554 (go/types.o): Likewise.
555 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
556 (go/go-optimize.o): New target.
558 2011-08-24 Joseph Myers <joseph@codesourcery.com>
560 * Make-lang.in (CFLAGS-go/go-lang.o): New.
561 (go/go-lang.o): Remove explicit compilation rule.
563 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
565 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
567 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
569 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
570 (go/ast-dump.o): New target.
571 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
572 (go/statements.o): Likewise.
574 2011-07-06 Richard Guenther <rguenther@suse.de>
576 * go-lang.c (go_langhook_init):
577 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
579 2011-06-14 Joseph Myers <joseph@codesourcery.com>
581 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
583 * go-backend.c: Include common/common-target.h.
584 (go_write_export_data): Use targetm_common.have_named_sections.
585 * go-lang.c: Include common/common-target.h.
586 (go_langhook_init_options_struct): Use
587 targetm_common.supports_split_stack.
589 2011-06-13 Ian Lance Taylor <iant@google.com>
591 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
593 2011-06-10 Ian Lance Taylor <iant@google.com>
595 * go-gcc.cc: Include "toplev.h".
596 (Gcc_backend::immutable_struct): New function.
597 (Gcc_backend::immutable_struct_set_init): New function.
598 (Gcc_backend::immutable_struct_reference): New function.
599 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
601 2011-06-09 Ian Lance Taylor <iant@google.com>
603 * go-gcc.cc (Gcc_backend::zero_expression): New function.
605 2011-06-07 Richard Guenther <rguenther@suse.de>
607 * go-lang.c (go_langhook_init): Do not set
608 size_type_node or call set_sizetype.
610 2011-05-27 Ian Lance Taylor <iant@google.com>
612 * go-backend.c: Include "output.h".
613 (go_write_export_data): New function.
614 * go-c.h (go_write_export_data): Declare.
615 * Make-lang.in (go/go-backend.o): Depend on output.h.
616 (go/export.o): Depend on $(GO_C_H). Do not depend on
617 $(MACHMODE_H), output.h, or $(TARGET_H).
619 2011-05-24 Joseph Myers <joseph@codesourcery.com>
621 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
622 (gccgo$(exeext)): Use libcommon-target.a.
624 2011-05-20 Joseph Myers <joseph@codesourcery.com>
626 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
628 2011-05-13 Ian Lance Taylor <iant@google.com>
630 * go-gcc.cc (Gcc_backend::function_type): When building a struct
631 for multiple results, check that all fields types have a size.
632 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
634 2011-05-12 Ian Lance Taylor <iant@google.com>
636 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
638 (Gcc_backend::parameter_variable): Likewise.
640 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
642 * go-lang.c (global_bindings_p): Return bool and simplify.
644 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
646 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
648 2011-05-04 Ian Lance Taylor <iant@google.com>
650 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
651 (Gcc_backend::fill_in_struct): New function.
652 (Gcc_backend::array_type): Implement.
653 (Gcc_backend::fill_in_array): New function.
654 (Gcc_backend::placeholder_pointer_type): New function.
655 (Gcc_backend::set_placeholder_pointer_type): New function.
656 (Gcc_backend::set_placeholder_function_type): New function.
657 (Gcc_backend::placeholder_struct_type): New function.
658 (Gcc_backend::set_placeholder_struct_type): New function.
659 (Gcc_backend::placeholder_array_type): New function.
660 (Gcc_backend::set_placeholder_array_type): New function.
661 (Gcc_backend::named_type): New function.
662 (Gcc_backend::circular_pointer_type): New function.
663 (Gcc_backend::is_circular_pointer_type): New function.
665 2011-04-26 Ian Lance Taylor <iant@google.com>
667 * go-gcc.cc (Gcc_backend::struct_type): Implement.
669 2011-04-25 Ian Lance Taylor <iant@google.com>
671 * go-gcc.cc (Gcc_backend::error_type): Implement.
672 (Gcc_backend::string_type): Remove.
673 (Gcc_backend::function_type): Change signature and implement.
674 (Gcc_backend::struct_type): Change signature.
675 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
676 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
677 (Gcc_backend::pointer_type): Check for error.
678 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
680 2011-04-25 Evan Shaw <edsrzf@gmail.com>
682 * go-gcc.c (class Gcc_tree): Make get_tree const.
683 (Gcc_backend::void_type): Implement.
684 (Gcc_backend::bool_type): Implement.
685 (Gcc_backend::integer_type): Implement.
686 (Gcc_backend::float_type): Implement.
687 (Gcc_backend::complex_type): New function.
688 (Gcc_backend::pointer_type): New function.
689 (Gcc_backend::make_type): New function.
690 (type_to_tree): New function.
692 2011-04-21 Ian Lance Taylor <iant@google.com>
694 * go-system.h (go_assert, go_unreachable): Define.
696 2011-04-19 Ian Lance Taylor <iant@google.com>
698 * go-system.h: Include "intl.h".
699 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
700 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
701 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
703 2011-04-19 Ian Lance Taylor <iant@google.com>
705 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
707 2011-04-19 Ian Lance Taylor <iant@google.com>
709 * go-gcc.cc (class Bblock): Define.
710 (Gcc_backend::if_statement): Change then_block and else_block to
712 (Gcc_backend::block): New function.
713 (Gcc_backend::block_add_statements): New function.
714 (Gcc_backend::block_statement): New function.
715 (tree_to_block, block_to_tree): New functions.
717 2011-04-18 Ian Lance Taylor <iant@google.com>
719 * go-gcc.cc: Include "go-c.h".
720 (class Bvariable): Define.
721 (Gcc_backend::init_statement): New function.
722 (Gcc_backend::global_variable): New function.
723 (Gcc_backend::global_variable_set_init): New function.
724 (Gcc_backend::local_variable): New function.
725 (Gcc_backend::parameter_variable): New function.
726 (tree_to_type, var_to_tree): New functions.
727 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
728 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
730 2011-04-15 Ian Lance Taylor <iant@google.com>
732 * go-gcc.cc (Gcc_backend::compound_statement): New function.
733 (Gcc_backend::assignment_statement): Use error_statement.
734 (Gcc_backend::return_statement): Likewise.
735 (Gcc_backend::if_statement): Likewise.
736 (Gcc_backend::switch_statement): Likewise.
737 (Gcc_backend::statement_list): Likewise.
739 2011-04-14 Ian Lance Taylor <iant@google.com>
741 * go-gcc.cc (Gcc_backend::error_statement): New function.
743 2011-04-13 Ian Lance Taylor <iant@google.com>
745 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
747 2011-04-13 Ian Lance Taylor <iant@google.com>
749 * Make-lang.in (GO_OBJS): Add go/runtime.o.
750 (GO_RUNTIME_H): New variable.
751 (go/runtime.o): New target.
752 (go/gogo.o): Depend on $(GO_RUNTIME_H).
753 (go/statements.o): Likewise.
755 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
757 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
760 2011-04-06 Ian Lance Taylor <iant@google.com>
762 * go-gcc.cc (if_statement): Use build3_loc.
763 (Gcc_backend::switch_statement): New function.
764 (Gcc_backend::statement_list): New function.
766 2011-04-06 Ian Lance Taylor <iant@google.com>
768 * go-gcc.cc (Gcc_backend::if_statement): New function.
769 (tree_to_stat): New function.
770 (expr_to_tree): Renamed from expression_to_tree.
771 (stat_to_tree): Renamed from statement_to_tree.
773 2011-04-06 Ian Lance Taylor <iant@google.com>
775 * go-gcc.cc (Gcc_backend::expression_statement): New function.
777 2011-04-04 Ian Lance Taylor <iant@google.com>
779 * go-gcc.c (class Blabel): Define.
780 (Gcc_backend::make_expression): New function.
781 (get_identifier_from_string): New function.
782 (Gcc_backend::label): New function.
783 (Gcc_backend::label_definition_statement): New function.
784 (Gcc_backend::goto_statement): New function.
785 (Gcc_backend::label_address): New function.
786 (expression_to_tree): New function.
787 * Make-lang.in (go/expressions.o): Depend on
788 go/gofrontend/backend.h.
789 (go/gogo.o): Likewise.
791 2011-04-04 Ian Lance Taylor <iant@google.com>
793 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
794 (class Bfunction): Define.
795 (Gcc_backend::assignment_statement): Rename from assignment.
797 (Gcc_backend::return_statement): New function.
798 (tree_to_function): New function.
799 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
800 $(GIMPLE_H), and $(GO_GOGO_H).
802 2011-04-03 Ian Lance Taylor <iant@google.com>
804 * go-gcc.cc: New file.
805 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
806 (go/go-gcc.o): New target.
807 (go/go.o): Depend on go/gofrontend/backend.h.
808 (go/statements.o): Likewise.
810 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
812 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
814 2011-02-08 Ian Lance Taylor <iant@google.com>
816 * go-lang.c (go_langhook_init_options_struct): Set
817 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
819 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
821 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
822 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
824 2011-01-21 Ian Lance Taylor <iant@google.com>
826 * go-lang.c (go_langhook_init): Omit float_type_size when calling
828 * go-c.h: Update declaration of go_create_gogo.
830 2011-01-13 Ian Lance Taylor <iant@google.com>
832 * go-backend.c: Include "rtl.h" and "target.h".
833 (go_imported_unsafe): New function.
834 * go-c.h (go_imported_unsafe): Declare.
835 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
836 (go/gogo-tree.o): Remove dependency on $(RTL_H).
837 (go/unsafe.o): Depend on $(GO_C_H).
839 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
842 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
845 2010-12-21 Ian Lance Taylor <iant@google.com>
847 * Make-lang.in (check-go): Remove.
848 (lang_checks_parallelized): Add check-go.
849 (check_go_parallelize): Set.
851 2010-12-13 Ian Lance Taylor <iant@google.com>
853 * gospec.c (lang_specific_driver): Add a -o option if not linking
854 and there is no -o option already.
856 2010-12-07 Ian Lance Taylor <iant@google.com>
858 PR tree-optimization/46805
859 PR tree-optimization/46833
860 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
862 2010-12-06 Ian Lance Taylor <iant@google.com>
866 * go-lang.c (go_char_p): Define type and vectors.
867 (go_search_dirs): New static variable.
868 (go_langhook_handle_option): Use version and version/machine
870 (go_langhook_post_options): Add non-specific -L paths.
871 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
872 DEFAULT_TARGET_MACHINE when compiling.
873 * gccgo.texi (Invoking gccgo): Only document -L for linking.
874 (Import and Export): Don't mention -L for finding import files.
876 2010-12-03 Ian Lance Taylor <iant@google.com>
879 * go-backend.c: New file.
880 * go-c.h (go_type_alignment): Declare.
881 (go_field_alignment, go_trampoline_info): Declare.
882 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
883 (go/go-backend.o): New target.
884 (go/go-lang.o): Make dependencies match source file.
885 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
886 (go/gogo-tree.o): Don't depend on $(TM_H).
888 2010-12-03 Ian Lance Taylor <iant@google.com>
890 * config-lang.in (build_by_default): Set to no.
892 2010-12-02 Ian Lance Taylor <iant@google.com>
894 Go frontend added to gcc repository.
896 Copyright (C) 2010-2014 Free Software Foundation, Inc.
898 Copying and distribution of this file, with or without modification,
899 are permitted in any medium without royalty provided the copyright
900 notice and this notice are preserved.