1 2017-02-20 Ian Lance Taylor <iant@golang.org>
4 * lang.opt (-fgo-relative-import-path): Change space to tab.
6 2017-02-07 Richard Biener <rguenther@suse.de>
8 PR tree-optimization/79256
10 * go-backend.c (go_field_alignment): Adjust.
12 2017-01-11 Than McIntosh <thanm@google.com>
14 * go-gcc.cc (conditional_expression): Add Bfunction parameter.
16 2017-01-01 Jakub Jelinek <jakub@redhat.com>
18 Update copyright years.
20 * gccgo.texi: Bump @copyrights-go year.
22 2016-12-16 Than McIntosh <thanm@google.com>
24 * go-gcc.cc (Gcc_backend::expression_statement): Add Bfunction*
26 (Gcc_backend::init_statement): Likewise.
27 (Gcc_backend::assignment_statement): Likewise.
28 (Gcc_backend::if_statement): Likewise.
30 2016-12-06 Than McIntosh <thanm@google.com>
32 * go-gcc.cc (Gcc_backend::var_expression): Add Varexpr_context
35 2016-11-22 Than McIntosh <thanm@google.com>
37 * go-gcc.cc (char_needs_encoding): Remove.
38 (needs_encoding, fetch_utf8_char, encode_id): Remove.
39 (Gcc_backend::global_variable): Add asm_name parameter. Don't
40 compute asm_name here.
41 (Gcc_backend::implicit_variable): Likewise.
42 (Gcc_backend::implicit_variable_reference): Likewise.
43 (Gcc_backend::immutable_struct): Likewise.
44 (Gcc_backend::immutable_struct_reference): Likewise.
45 * Make-lang.in (GO_OBJS): Add go/go-encode-id.o.
47 2016-11-22 Ian Lance Taylor <iant@google.com>
49 * go-gcc.cc (Gcc_backend::Gcc_backend): Add builtin function
50 __builtin_frame_address.
52 2016-10-25 David Malcolm <dmalcolm@redhat.com>
54 * go-lang.c (go_langhook_type_for_mode): Remove redundant cast
55 from result of GET_MODE_CLASS. Minor formatting fixes.
57 2016-10-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
59 * go-backend.c: Include memmodel.h.
61 2016-10-10 Than McIntosh <thanm@google.com>
64 * go-c.h (struct go_create_gogo_args): Add backend and linemap
66 * go-lang.c: Include "go-gcc.h".
67 (go_langhook_init): Set linemap and backend fields of args.
68 * go-gcc.cc: Include "go-gcc.h".
69 * go-linemap.cc: Include "go-gcc.h".
71 2016-10-10 Than McIntosh <thanm@google.com>
73 * go-linemap.cc (Gcc_linemap::location_line): New method.
75 2016-10-10 Eric Botcazou <ebotcazou@adacore.com>
77 * config-lang.in (lang_requires_boot_languages): Delete.
79 2016-10-06 Chris Manghane <cmang@google.com>
81 * go-gcc.cc (Gcc_backend::stack_allocation_expression): Clear the
84 2016-09-27 Than McIntosh <thanm@google.com>
86 * go-linemap.cc (Gcc_linemap::to_string): New method.
88 2016-09-23 Than McIntosh <thanm@google.com>
90 * go-gcc-diagnostics.cc: New file.
91 * go-location.h (Location): Remove operator source_location. Add
93 * go-system.h: #include <sstream>.
94 * Make-lang.in (GO_OBJS): Add go/go-diagnostics.o and
95 go/go-gcc-diagnostics.o.
96 (CFLAGS-go/go-gcc-diagnostics.o): New variable.
98 2016-09-23 Chris Manghane <cmang@google.com>
101 * go-gcc.cc (Gcc_backend::Gcc_backend): Fix calls to integer_type
102 to pass arguments in the correct order.
104 2016-09-22 Ian Lance Taylor <iant@golang.org>
106 * go-gcc.cc (Gcc_backend::Gcc_backend): Declare
107 __builtin_frame_address.
109 2016-09-11 Ian Lance Taylor <iant@golang.org>
111 * go-gcc.cc (Gcc_backend::Gcc_backend): Add builtin versions of
112 ctz, ctzll, bswap32, bswap64.
114 2016-09-10 Ian Lance Taylor <iant@golang.org>
116 * go-backend.c (go_trampoline_info): Remove.
117 * go-c.h (go_trampoline_info): Don't declare.
119 2016-09-09 Than McIntosh <thanm@google.com>
121 * go-sha1.cc: New file.
122 * Make-lang.in (GO_OBJS): Add go/go-sha1.o.
123 (CFLAGS-go/go-sha1.o): New variable.
125 2016-08-29 Ian Lance Taylor <iant@google.com>
127 * lang.opt (fgo-c-header, fgo-compiling-runtime): New options.
128 * go-c.h (struct go_create_gogo_args): Define.
129 (go_create_gogo): Change declaration to take struct pointer.
130 * go-lang.c (go_c_header): New static variable.
131 (go_langhook_init): Update call to go_create_gogo.
132 * gccgo.texi (Invoking gccgo): Document -fgo-c-header and
133 -fgo-compiling-runtime.
135 2016-08-09 Ian Lance Taylor <iant@google.com>
137 * gccgo.texi (Invoking gccgo): Document -fgo-optimize-allocs and
139 (Compiler Directives): New chapter.
140 (Function Names): Describe using //go:linkname. Suggest using
141 -fgo-pkgpath rather than -fgo-prefix.
143 2016-08-08 Ian Lance Taylor <iant@google.com>
146 * go-gcc.cc (Gcc_backend::function_type): If the return type is
147 zero bytes, treat the function as returning void.
148 (return_statement): If the return type is zero bytes, don't
149 actually return any values.
151 2016-08-05 Ian Lance Taylor <iant@google.com>
154 * go-gcc.cc (char_needs_encoding): New static function.
155 (needs_encoding, fetch_utf8_char): New static functions.
156 (encode_id): New static function.
157 (Gcc_backend::global_variable): Set asm name if the name is not
159 (Gcc_backend::implicit_variable): Likewise.
160 (Gcc_backend::implicit_variable_reference): Likewise.
161 (Gcc_backend::immutable_struct): Likewise.
162 (Gcc_backend::immutable_struct_reference): Likewise.
163 (Gcc_backend::function): Likewise.
165 2016-08-02 Chris Manghane <cmang@google.com>
167 * lang.opt: Add -fgo-debug-escape option.
168 * go-c.h (go_create_gogo): Add debug_escape_level parameter.
169 * go-lang.c (go_langhook_init): Pass go_debug_escape_level to
172 2016-05-06 Chris Manghane <cmang@google.com>
174 * Make-lang.in (GO_OBJS): Add go/escape.o (based on an entirely
177 2016-04-29 Chris Manghane <cmang@google.com>
179 * Make-lang.in (GO_OBJS): Remove go/dataflow.o, go/escape.o.
181 2016-04-18 Michael Matz <matz@suse.de>
183 * go-gcc.cc (Gcc_backend::implicit_variable): Use SET_DECL_ALIGN.
185 2016-02-12 Jakub Jelinek <jakub@redhat.com>
187 * gofrontend/lex.cc: Spelling fixes - behaviour -> behavior and
188 neighbour -> neighbor.
189 * gccgo.texi: Likewise.
191 2016-01-27 Ian Lance Taylor <iant@google.com>
193 * go-lang.c (go_langhook_init_options_struct): Default to
194 -fkeep-gc-roots-live.
196 2016-01-04 Jakub Jelinek <jakub@redhat.com>
198 Update copyright years.
200 * gccgo.texi: Bump @copyrights-go year.
202 2015-12-21 Ian Lance Taylor <iant@google.com>
204 * go-gcc.cc (class Bvariable): Remove Gcc_tree parent class. Add
205 t_ and orig_type_ fields. Add new two parameter constructor. Add
206 get_tree and get_decl methods.
207 (Gcc_backend::var_expression): Pass location to var get_tree.
208 (Gcc_backend::global_variable): Don't add VIEW_CONVERT_EXPR. Use
209 two parameter constructor for Bvariable.
210 (Gcc_backend::global_variable_set_init): Don't remove
211 VIEW_CONVERT_EXPR. Use var get_decl, not get_tree.
212 (Gcc_backend::write_global_definitions): Likewise.
213 (Gcc_backend::init_statement): Call var get_decl, not get_tree.
214 (Gcc_backend::block): Likewise.
215 (Gcc_backend::implicit_variable_set_init): Likewise.
216 (Gcc_backend::immutable_struct_set_init): Likewise.
217 (Gcc_backend::function_set_parameters): Likewise.
219 2015-12-21 Ian Lance Taylor <iant@google.com>
221 * go-gcc.cc (Gcc_backend::global_variable): If type is zero-sized,
222 add a VIEW_CONVERT_EXPR to the tree.
223 (Gcc_backend::global_variable_set_init): Remove any
225 (Gcc_backend::write_global_definitions): Likewise.
227 2015-11-30 Ian Lance Taylor <iant@google.com>
230 * go-gcc.cc (Gcc_backend::string_constant_expression): Don't set
231 TYPE_STRING_FLAG on a variant type.
233 2015-11-11 Andrew MacLeod <amacleod@redhat.com>
235 * go-backend.c: Remove unused header files.
236 * go-gcc.cc: Likewise.
237 * go-lang.c: Likewise.
238 * gospec.c: Likewise.
240 2015-10-29 Andrew MacLeod <amacleod@redhat.com>
242 * go-backend.c: Reorder #include's and remove duplicates.
243 * go-lang.c: Likewise.
245 2015-10-20 Alan Modra <amodra@gmail.com>
248 * gospec.c (saw_opt_m32): Rename to..
249 (is_m64): ..this, initialised by TARGET_CAN_SPLIT_STACK_64BIT.
251 (lang_specific_driver): Set is_m64 if OPT_m64, clear if OPT_m32.
253 2015-10-01 Ian Lance Taylor <iant@google.com>
256 * gospec.c (lang_specific_driver): Only look for OPT_m32 if
257 TARGET_CAN_SPLIT_STACK_64BIT is defined.
259 2015-10-01 Lynn Boger <laboger@linux.vnet.ibm.com>
262 * gospec.c (lang_specific_driver): Set appropriate split stack
263 options for 64 bit compiles based on TARGET_CAN_SPLIT_STACK_64BIT.
265 2015-09-10 Chris Manghane <cmang@google.com>
267 * go-gcc.cc (Gcc_backend::type_size): Return -1 for
268 unrepresentable size.
270 2015-08-24 Marek Polacek <polacek@redhat.com>
272 PR tree-optimization/67284
273 * go-gcc.cc (Gcc_backend::define_builtin): Add NORETURN_P parameter.
274 Set TREE_THIS_VOLATILE.
275 (Gcc_backend::Gcc_backend): Mark __builtin_trap as a noreturn call.
276 Pass false to the rest of define_builtin calls.
278 2015-07-31 Andreas Schwab <schwab@linux-m68k.org>
280 * go-lang.c (go_langhook_init_options_struct): Don't set
282 (go_langhook_post_options): Set it here instead.
284 2015-07-12 Aldy Hernandez <aldyh@redhat.com>
286 * gofrontend/backend.h: Fix double word typos.
287 * gofrontend/expressions.cc: Same.
290 2015-07-07 Andrew MacLeod <amacleod@redhat.com>
292 * go-backend.c: Adjust includes.
293 * go-gcc.cc: Likewise.
294 * go-lang.c: Likewise.
296 2015-06-25 Andrew MacLeod <amacleod@redhat.com>
298 * go-gcc.cc: Remove ipa-ref.h and plugin-api.h from include list.
300 2015-06-17 Andrew MacLeod <amacleod@redhat.com>
302 * go-backend.c: Do not include input.h, line-map.h or is-a.h.
303 * go-gcc.cc: Likewise.
304 * go-lang.c: Likewise.
305 * go-system.h: Likewise.
307 2015-06-08 Andrew MacLeod <amacleod@redhat.com>
309 * go-backend.c : Adjust include files.
310 * go-gcc.cc : Likewise.
311 * go-lang.c : Likewise.
313 2015-06-05 Aldy Hernandez <aldyh@redhat.com>
315 * go-gcc.cc (write_global_definitions): Remove call to
316 finalize_compilation_unit.
317 Remove Go specific debug generation.
318 * go-lang.c (go_langhook_parse_file): Call go_write_globals.
319 (go_langhook_write_globals): Remove.
320 Remove LANG_HOOKS_WRITE_GLOBALS everywhere.
322 2015-06-04 Andrew MacLeod <amacleod@redhat.com>
324 * go-backend.c: Adjust includes for restructured coretypes.h.
326 * go-gcc.cc: Likewise.
327 * go-lang.c: Likewise.
329 2015-04-30 Chris Manghane <cmang@google.com>
331 * go-gcc.cc (Gcc_backend::stack_allocation_expression): New
334 2015-04-27 Jim Wilson <jim.wilson@linaro.org>
336 * Make-lang.in (go.mostlyclean): Remove gccgo, gccgo-cross, and go1.
338 2015-04-17 Chris Manghane <cmang@google.com>
340 * Make-lang.in (GO_OBJS): Add go/escape.o.
342 2015-02-02 Ian Lance Taylor <iant@google.com>
346 * go-gcc.cc (Gcc_backend::type_size): Change return type to
348 (Gcc_backend::type_alignment): Likewise.
349 (Gcc_backend::type_field_alignment): Likewise.
350 (Gcc_backend::type_field_offset): Likewise.
351 (Gcc_backend::implicit_variable): Change alignment parameter type
354 2015-01-23 Ian Lance Taylor <iant@google.com>
357 * gccgo.texi (Invoking gccgo): Mention that Go programs should not
360 * gccgo.texi (C Interoperability): Mention that people should use
363 2015-01-23 Ian Lance Taylor <iant@google.com>
366 * go-lang.c (go_langhook_init_options_struct): Set default
368 (go_langhook_post_options): If debug_info_level is still the
369 default, make sure write_symbols is set.
370 * gccgo.texi (Invoking gccgo): Document that -g1 is the default.
372 2015-01-16 Richard Henderson <rth@redhat.com>
374 * go-gcc.cc (Gcc_backend::call_expression): Add chain_expr argument.
375 (Gcc_backend::static_chain_variable): New method.
377 2015-01-09 Ian Lance Taylor <iant@google.com>
379 * config-lang.in (lang_dirs): Define.
381 2015-01-09 Michael Collison <michael.collison@linaro.org>
383 * go-gcc.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
384 input.h, alias.h, symtab.h, options.h, fold-const.h,
385 wide-int.h, and inchash.h due to flattening of tree.h.
387 * go-backend.c: Ditto.
389 2015-01-07 Chris Manghane <cmang@google.com>
392 * go-gcc.cc (Gcc_backend::temporary_variable): Don't initialize
395 2015-01-06 Chris Manghane <cmang@google.com>
397 * go-gcc.cc (Gcc_backend::constructor_expression): Don't
398 initialize zero-sized fields, just evaluate the values for side
401 2015-01-05 Jakub Jelinek <jakub@redhat.com>
403 Update copyright years.
405 * gccgo.texi: Bump @copyrights-go year.
407 2014-12-19 Chris Manghane <cmang@google.com>
409 * go-gcc.cc (Gcc_backend::array_constructor_expression): Don't
410 construct arrays of zero-sized values.
412 2014-10-29 Richard Sandiford <richard.sandiford@arm.com>
414 * go-lang.c: Remove redundant enum from machine_mode.
416 2014-10-28 Andrew MacLeod <amacleod@redhat.com>
418 * go-gcc.cc: Adjust include files.
420 2014-10-27 Andrew MacLeod <amacleod@redhat.com>
422 * go-gcc.cc: Adjust include files.
425 2014-10-23 Ian Lance Taylor <iant@google.com>
427 * go-gcc.cc (Gcc_backend::complex_constant_expression): Take one
428 mpc_t parameter instead of two mpfr_t parameters.
430 2014-09-15 Jakub Jelinek <jakub@redhat.com>
432 * Make-lang.in (check_go_parallelize): Change to just an upper bound
435 2014-09-03 Chris Manghane <cmang@google.com>
437 * go-gcc.cc (Gcc_backend::implicit_variable): Remove init
438 parameter. Add is_hidden parameter.
439 (Gcc_backend::implicit_variable_set_init): New method.
440 (Gcc_backend::implicit_variable_reference): New method.
442 2014-08-08 Ian Lance Taylor <iant@google.com>
444 * go-gcc.cc (Gcc_backend::compound_statement): Don't return
447 2014-07-24 Uros Bizjak <ubizjak@gmail.com>
449 * go-gcc.cc (Gcc_backend::global_variable_set_init): Rename
450 symtab_get_node to symtab_node::get.
452 2014-06-13 Ian Lance Taylor <iant@google.com>
455 * gospec.c (lang_specific_driver): On Solaris, when not using GNU
456 ld, add -t option to avoid warning about common symbol changing
459 2014-06-10 Jan Hubicka <hubicka@ucw.cz>
461 * go-gcc.cc (Gcc_backend::global_variable_set_init): Use
462 symtab_get_node(var_decl)->implicit_section.
464 2014-06-07 Jan Hubicka <hubicka@ucw.cz>
466 * go-gcc.cc (global_variable_set_init): Use
467 set_decl_section_name.
469 2014-06-04 Ian Lance Taylor <iant@google.com>
471 * go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
472 alignment parameters. Permit init parameter to be NULL.
474 2014-06-02 Andrew MacLeod <amacleod@redhat.com>
476 * go-gcc.cc: Include builtins.h.
478 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
480 * go-lang.c (struct GTY): Don't use variable_size gty attribute.
482 2014-05-06 Chris Manghane <cmang@google.com>
484 * go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
485 (Gcc_backend::boolean_constant_expression): New method.
486 (Gcc_backend::zero_expression): Use this->make_expression rather
488 (Gcc_backend::var_expression): Likewise.
489 (Gcc_backend::integer_constant_expression): Likewise.
490 (Gcc_backend::float_constant_expression): Likewise.
491 (Gcc_backend::complex_constant_expression): Likewise.
492 (Gcc_backend::struct_field_expression): Likewise.
493 (tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
494 (tree_to_function, tree_to_block): Remove functions.
495 (type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
496 (block_to_tree, var_to_tree, function_to_tree): Remove functions.
498 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
499 Mike Stump <mikestump@comcast.net>
500 Richard Sandiford <rdsandiford@googlemail.com>
502 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
504 2014-05-06 Chris Manghane <cmang@google.com>
506 * go-c.h (go_create_gogo): Update declaration to add
507 check_divide_zero and check_divide_overflow parameters.
508 * go-lang.c (go_langhook_init): Pass new arguments to
511 2014-05-05 Chris Manghane <cmang@google.com>
513 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
514 gc_root_variable. Add name and is_constant parameters.
516 2014-05-05 Chris Manghane <cmang@google.com>
518 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
520 (Gcc_backend::temporary_variable): Check for erroneous function.
522 2014-04-30 Chris Manghane <cmang@google.com>
524 * go-backend.c: #include "diagnostics.h".
525 (saw_errors): New function.
526 * go-c.h (saw_errors): Declare.
527 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
529 2014-04-30 Chris Manghane <cmang@google.com>
531 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
532 calling into Go frontend.
533 (go_langhook_type_for_mode): Likewise.
534 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
536 2014-04-30 Chris Manghane <cmang@google.com>
538 * go-gcc.cc: #include "langhooks.h".
539 (Gcc_backend::Gcc_backend): Add constructor.
540 (Gcc_backend::lookup_function): New function.
541 (Gcc_backend::define_builtin): New private function.
542 (Gcc_backend::gcc_backend): Remove.
543 (go_get_backend): Use new to create new Gcc_backend.
545 2014-04-25 Chris Manghane <cmang@google.com>
547 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
548 (Gcc_backend::return_statement): Push and pop function.
549 (Gcc_backend::label): Likewise.
550 (Gcc_backend::function_defer_statement): Likewise.
551 (Gcc_backend::switch_statement): Add function parameter.
552 (Gcc_backend::block): Don't permit function to be NULL.
553 (Gcc_backend::temporary_variable): Change go_assert to
555 (Gcc_backend::gc_root_variable): New function.
556 (Gcc_backend::write_global_definitions): New function.
558 2014-04-22 Chris Manghane <cmang@google.com>
560 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
561 call to create_tmp_var. Require that function be non-NULL.
563 2014-04-17 Chris Manghane <cmang@google.com>
565 * go-gcc.cc (Gcc_backend::named_constant_expression): New
568 2014-04-14 Chris Manghane <cmang@google.com>
570 * go-gcc.cc: Include "convert.h".
571 (Gcc_backend::string_constant_expression): New function.
572 (Gcc_backend::real_part_expression): Likewise.
573 (Gcc_backend::imag_part_expression): Likewise.
574 (Gcc_backend::complex_expression): Likewise.
575 (Gcc_backend::constructor_expression): Likewise.
576 (Gcc_backend::array_constructor_expression): Likewise.
577 (Gcc_backend::pointer_offset_expression): Likewise.
578 (Gcc_backend::array_index_expression): Likewise.
579 (Gcc_backend::call_expression): Likewise.
580 (Gcc_backend::exception_handler_statement): Likewise.
581 (Gcc_backend::function_defer_statement): Likewise.
582 (Gcc_backend::function_set_parameters): Likewise.
583 (Gcc_backend::function_set_body): Likewise.
584 (Gcc_backend::convert_expression): Handle various type
587 2014-03-03 Ian Lance Taylor <iant@google.com>
589 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
591 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
594 2014-01-24 Chris Manghane <cmang@google.com>
596 * go-gcc.cc (Gcc_backend::unary_expression): New function.
598 2014-01-16 Chris Manghane <cmang@google.com>
600 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
602 (operator_to_tree_code): New static function.
603 (Gcc_backend::binary_expression): New function.
605 2014-01-14 Chris Manghane <cmang@google.com>
607 * go-gcc.cc (Gcc_backend::compound_expression): New function.
608 (Gcc_backend::conditional_expression): New function.
610 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
612 Update copyright years
614 2014-01-02 Tobias Burnus <burnus@net-b.de>
616 * gccgo.texi: Bump @copying's copyright year.
618 2013-12-16 Chris Manghane <cmang@google.com>
620 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
622 2013-12-11 Ian Lance Taylor <iant@google.com>
624 * go-lang.c (go_langhook_post_options): Disable sibling calls by
627 2013-12-10 Ian Lance Taylor <iant@google.com>
629 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
632 2013-12-05 Ian Lance Taylor <iant@google.com>
634 Revert this change; no longer required.
635 2013-11-06 Ian Lance Taylor <iant@google.com>
637 * go-lang.c (go_langhook_post_options): If
638 -fisolate-erroneous-paths was turned on by an optimization option,
641 2013-11-23 Ian Lance Taylor <iant@google.com>
643 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
646 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
648 * go-gcc.cc: Add required include files from gimple.h.
649 * go-lang.c: Likewise
651 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
653 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
654 tree_to_shwi throughout.
656 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
658 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
659 tree_fits_shwi_p throughout.
661 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
663 * go-lang.c: Include only gimplify.h and gimple.h as needed.
665 2013-11-14 Diego Novillo <dnovillo@google.com>
667 * go-backend.c: Include stor-layout.h.
668 * go-gcc.cc: Include stringpool.h.
669 Include stor-layout.h.
671 * go-lang.c: Include stor-layout.h.
673 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
675 * go-lang.c: Include gimplify.h.
677 2013-11-06 Ian Lance Taylor <iant@google.com>
679 * go-lang.c (go_langhook_post_options): If
680 -fisolate-erroneous-paths was turned on by an optimization option,
683 2013-10-14 Chris Manghane <cmang@google.com>
685 * go-gcc.cc (Gcc_backend::address_expression): New function.
687 2013-10-11 Chris Manghane <cmang@google.com>
689 * go-gcc.cc (Gcc_backend::function_code_expression): New
692 2013-10-10 Chris Manghane <cmang@google.com>
694 * go-gcc.cc (Gcc_backend::error_function): New function.
695 (Gcc_backend::function): New function.
696 (Gcc_backend::make_function): New function.
697 (function_to_tree): New function.
699 2013-10-04 Chris Manghane <cmang@google.com>
701 * go-gcc.cc (Gcc_backend::convert_expression): New function.
703 2013-10-02 Chris Manghane <cmang@google.com>
705 * go-gcc.cc: Include "real.h" and "realmpfr.h".
706 (Gcc_backend::integer_constant_expression): New function.
707 (Gcc_backend::float_constant_expression): New function.
708 (Gcc_backend::complex_constant_expression): New function.
710 2013-09-30 Chris Manghane <cmang@google.com>
712 * go-gcc.cc (Gcc_backend::error_expression): New function.
713 (Gcc_backend::var_expression): New function.
714 (Gcc_backend::indirect_expression): New function.
716 2013-09-25 Tom Tromey <tromey@redhat.com>
718 * Make-lang.in (gospec.o): Remove.
719 (CFLAGS-go/gospec.o): New variable.
720 (GCCGO_OBJS): Update to use go/gospec.o.
722 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
723 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
724 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
725 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
726 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
727 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
728 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
729 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
730 (go/unsafe.o): Remove.
731 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
732 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
734 2013-09-25 Tom Tromey <tromey@redhat.com>
736 * Make-lang.in (gospec.o): Don't use subshell.
738 2013-08-28 Ian Lance Taylor <iant@google.com>
740 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
741 the struct is not hidden.
742 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
744 2013-08-06 Ian Lance Taylor <iant@google.com>
746 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
747 compute_reloc_for_constant.
749 2013-08-02 Ian Lance Taylor <iant@google.com>
751 * go-gcc.cc (immutable_struct_set_init): Always call
752 resolve_unique_section.
754 2013-07-24 Ian Lance Taylor <iant@google.com>
756 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
757 fields, recreate those fields with the first one with a non-zero
760 2013-07-23 Ian Lance Taylor <iant@google.com>
762 * go-backend.c: Don't #include "rtl.h".
763 (go_imported_unsafe): Don't call init_varasm_once.
764 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
766 2013-07-23 Ian Lance Taylor <iant@google.com>
768 * go-lang.c: Don't #include "except.h".
769 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
771 2013-06-18 Ian Lance Taylor <iant@google.com>
773 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
775 (Gcc_backend::immutable_struct_set_init): Likewise.
777 2013-05-16 Jason Merrill <jason@redhat.com>
779 * Make-lang.in (go1$(exeext)): Use link mutex.
781 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
783 * gospec.c: pass -u pthread_create to linker when static linking.
785 2012-12-21 Ian Lance Taylor <iant@google.com>
788 * go-system.h: Don't include <cstdio>.
790 2012-12-18 Ian Lance Taylor <iant@google.com>
793 * gospec.c: Revert last patch.
795 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
798 * gospec.c (LIBATOMIC): Define.
799 (LIBATOMIC_PROFILE): Define.
800 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
802 2012-11-29 Ian Lance Taylor <iant@google.com>
804 * go-gcc.cc: Include "output.h".
805 (global_variable): Add is_unique_section parameter.
806 (global_variable_set_init): Adjust unique section if necessary.
807 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
809 2012-11-17 Diego Novillo <dnovillo@google.com>
811 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
813 * go-lang.c: Use new vec API in vec.h.
815 2012-11-16 Ian Lance Taylor <iant@google.com>
817 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
818 (go1$(exeext)): Likewise.
820 2012-10-30 Ian Lance Taylor <iant@google.com>
822 * lang.opt (-fgo-relative-import-path): New option.
823 * go-lang.c (go_relative_import_path): New static variable.
824 (go_langhook_init): Pass go_relative_import_path to
826 (go_langhook_handle_option): Handle -fgo-relative-import-path.
827 * go-c.h (go_create_gogo): Update declaration.
828 * gccgo.texi (Invoking gccgo): Document
829 -fgo-relative-import-path.
831 2012-09-17 Ian Lance Taylor <iant@google.com>
833 * config-lang.in (target_libs): Add target-libbacktrace.
835 2012-09-16 Ian Lance Taylor <iant@google.com>
837 * Make-lang.in (go/gogo.o): Depend on filenames.h.
839 2012-08-14 Diego Novillo <dnovillo@google.com>
841 Merge from cxx-conversion branch. Configury.
843 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
844 * go-gcc.cc: Likewise.
845 * go-system.h: Likewise.
847 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
849 * go-lang.c (lang_decl): Add variable_size GTY option.
851 2012-05-09 Ian Lance Taylor <iant@google.com>
853 * lang.opt: Add -fgo-pkgpath.
854 * go-lang.c (go_pkgpath): New static variable.
855 (go_prefix): New static variable.
856 (go_langhook_init): Pass go_pkgpath and go_prefix to
858 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
859 -fgo-prefix handling to just set go_prefix.
860 * go-c.h (go_set_prefix): Don't declare.
861 (go_create_gogo): Add pkgpath and prefix to declaration.
862 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
863 to pkgpath. Don't include the package name in the asm name.
864 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
865 docs for -fgo-prefix.
867 2012-04-23 Ian Lance Taylor <iant@google.com>
869 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
871 2012-04-20 Ian Lance Taylor <iant@google.com>
873 * lang.opt: Add -fgo-check-divide-zero and
874 -fgo-check-divide-overflow.
875 * gccgo.texi (Invoking gccgo): Document new options.
877 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
879 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
880 with NULL_TREE type instead of void_type_node.
882 2012-03-09 Ian Lance Taylor <iant@google.com>
884 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
885 to the lhs type if necessary.
887 2012-03-08 Ian Lance Taylor <iant@google.com>
889 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
891 (go_non_zero_struct): New global variable.
892 (Gcc_backend::non_zero_size_type): New function.
893 (Gcc_backend::global_variable): Don't build an assignment for a
895 * go-c.h (go_non_zero_struct): Declare.
896 * config-lang.in (gtfiles): Add go-c.h.
898 2012-02-29 Ian Lance Taylor <iant@google.com>
900 * go-gcc.cc (class Gcc_tree): Add set_tree method.
901 (set_placeholder_pointer_type): When setting to a pointer to
902 error, set to error_mark_node.
904 2012-02-23 Richard Guenther <rguenther@suse.de>
906 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
907 build_distinct_type_copy.
909 2012-02-17 Ian Lance Taylor <iant@google.com>
911 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
913 2012-02-17 Ian Lance Taylor <iant@google.com>
915 * gospec.c (lang_specific_driver): If linking, and no -o option
918 2012-02-14 Ian Lance Taylor <iant@google.com>
921 * Make-lang.in (gccgo-cross$(exeext)): New target.
922 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
924 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
925 gccgo-cross$(exeext) does not exist.
927 2012-02-07 Ian Lance Taylor <iant@google.com>
929 * gccgo.texi (Function Names): Document //extern instead of
932 2012-02-01 Jakub Jelinek <jakub@redhat.com>
935 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
936 return build_nonstandard_integer_type result if possible.
938 2012-01-21 Ian Lance Taylor <iant@google.com>
940 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
941 (Gcc_backend::type_alignment): Likewise.
942 (Gcc_backend::type_field_alignment): Likewise.
943 (Gcc_backend::type_field_offset): Likewise.
945 2012-01-20 Ian Lance Taylor <iant@google.com>
947 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
949 (Gcc_backend::set_placeholder_struct_type): Likewise.
951 2012-01-17 Ian Lance Taylor <iant@google.com>
953 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
954 BASE.s rather than -o BASE.o.
956 2012-01-11 Ian Lance Taylor <iant@google.com>
958 * go-lang.c (go_langhook_init): Initialize void_list_node before
959 calling go_create_gogo.
961 2012-01-10 Ian Lance Taylor <iant@google.com>
963 * go-gcc.cc (Gcc_backend::type_size): New function.
964 (Gcc_backend::type_alignment): New function.
965 (Gcc_backend::type_field_alignment): New function.
966 (Gcc_backend::type_field_offset): New function.
967 * go-backend.c (go_type_alignment): Remove.
968 * go-c.h (go_type_alignment): Don't declare.
970 2011-12-27 Ian Lance Taylor <iant@google.com>
972 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
973 build_distinct_type_copy rather than build_variant_type_copy.
974 (Gcc_backend::set_placeholder_array_type): Likewise.
975 (Gcc_backend::named_type): Add special handling for builtin
978 2011-12-22 Ian Lance Taylor <iant@google.com>
980 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
981 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
982 (Gcc_backend::set_placeholder_struct_type): Likewise.
983 (Gcc_backend::set_placeholder_array_type): Likewise.
984 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
986 2011-12-13 Ian Lance Taylor <iant@google.com>
988 * go-backend.c: #include "simple-object.h" and "intl.h".
989 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
990 (GO_EXPORT_SECTION_NAME): Likewise.
991 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
992 (go_read_export_data): New function.
993 * go-c.h (go_read_export_data): Declare.
995 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
996 Ian Lance Taylor <iant@google.com>
998 * go-location.h: New file.
999 * go-linemap.cc: New file.
1000 * go-gcc.cc: Change all uses of source_location to Location.
1001 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
1002 (GO_LINEMAP_H): New variable.
1003 (GO_LEX_H): Use $(GO_LINEMAP_H).
1004 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
1005 (go/go-linemap.o): New target.
1007 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1009 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
1011 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
1013 * lang.opt: Add fgo-optimize-.
1014 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
1015 * go-c.h (go_enable_optimize): Declare.
1016 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
1017 (GO_EXPORT_H): Define.
1018 (GO_IMPORT_H): Add $(GO_EXPORT_H).
1019 (GO_AST_DUMP_H): Define.
1020 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
1021 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
1022 (go/types.o): Likewise.
1023 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
1024 (go/go-optimize.o): New target.
1026 2011-08-24 Joseph Myers <joseph@codesourcery.com>
1028 * Make-lang.in (CFLAGS-go/go-lang.o): New.
1029 (go/go-lang.o): Remove explicit compilation rule.
1031 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1033 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
1035 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
1037 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
1038 (go/ast-dump.o): New target.
1039 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
1040 (go/statements.o): Likewise.
1042 2011-07-06 Richard Guenther <rguenther@suse.de>
1044 * go-lang.c (go_langhook_init):
1045 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
1047 2011-06-14 Joseph Myers <joseph@codesourcery.com>
1049 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
1051 * go-backend.c: Include common/common-target.h.
1052 (go_write_export_data): Use targetm_common.have_named_sections.
1053 * go-lang.c: Include common/common-target.h.
1054 (go_langhook_init_options_struct): Use
1055 targetm_common.supports_split_stack.
1057 2011-06-13 Ian Lance Taylor <iant@google.com>
1059 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
1061 2011-06-10 Ian Lance Taylor <iant@google.com>
1063 * go-gcc.cc: Include "toplev.h".
1064 (Gcc_backend::immutable_struct): New function.
1065 (Gcc_backend::immutable_struct_set_init): New function.
1066 (Gcc_backend::immutable_struct_reference): New function.
1067 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
1069 2011-06-09 Ian Lance Taylor <iant@google.com>
1071 * go-gcc.cc (Gcc_backend::zero_expression): New function.
1073 2011-06-07 Richard Guenther <rguenther@suse.de>
1075 * go-lang.c (go_langhook_init): Do not set
1076 size_type_node or call set_sizetype.
1078 2011-05-27 Ian Lance Taylor <iant@google.com>
1080 * go-backend.c: Include "output.h".
1081 (go_write_export_data): New function.
1082 * go-c.h (go_write_export_data): Declare.
1083 * Make-lang.in (go/go-backend.o): Depend on output.h.
1084 (go/export.o): Depend on $(GO_C_H). Do not depend on
1085 $(MACHMODE_H), output.h, or $(TARGET_H).
1087 2011-05-24 Joseph Myers <joseph@codesourcery.com>
1089 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
1090 (gccgo$(exeext)): Use libcommon-target.a.
1092 2011-05-20 Joseph Myers <joseph@codesourcery.com>
1094 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
1096 2011-05-13 Ian Lance Taylor <iant@google.com>
1098 * go-gcc.cc (Gcc_backend::function_type): When building a struct
1099 for multiple results, check that all fields types have a size.
1100 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
1102 2011-05-12 Ian Lance Taylor <iant@google.com>
1104 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
1106 (Gcc_backend::parameter_variable): Likewise.
1108 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
1110 * go-lang.c (global_bindings_p): Return bool and simplify.
1112 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
1114 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
1116 2011-05-04 Ian Lance Taylor <iant@google.com>
1118 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
1119 (Gcc_backend::fill_in_struct): New function.
1120 (Gcc_backend::array_type): Implement.
1121 (Gcc_backend::fill_in_array): New function.
1122 (Gcc_backend::placeholder_pointer_type): New function.
1123 (Gcc_backend::set_placeholder_pointer_type): New function.
1124 (Gcc_backend::set_placeholder_function_type): New function.
1125 (Gcc_backend::placeholder_struct_type): New function.
1126 (Gcc_backend::set_placeholder_struct_type): New function.
1127 (Gcc_backend::placeholder_array_type): New function.
1128 (Gcc_backend::set_placeholder_array_type): New function.
1129 (Gcc_backend::named_type): New function.
1130 (Gcc_backend::circular_pointer_type): New function.
1131 (Gcc_backend::is_circular_pointer_type): New function.
1133 2011-04-26 Ian Lance Taylor <iant@google.com>
1135 * go-gcc.cc (Gcc_backend::struct_type): Implement.
1137 2011-04-25 Ian Lance Taylor <iant@google.com>
1139 * go-gcc.cc (Gcc_backend::error_type): Implement.
1140 (Gcc_backend::string_type): Remove.
1141 (Gcc_backend::function_type): Change signature and implement.
1142 (Gcc_backend::struct_type): Change signature.
1143 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
1144 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
1145 (Gcc_backend::pointer_type): Check for error.
1146 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
1148 2011-04-25 Evan Shaw <edsrzf@gmail.com>
1150 * go-gcc.c (class Gcc_tree): Make get_tree const.
1151 (Gcc_backend::void_type): Implement.
1152 (Gcc_backend::bool_type): Implement.
1153 (Gcc_backend::integer_type): Implement.
1154 (Gcc_backend::float_type): Implement.
1155 (Gcc_backend::complex_type): New function.
1156 (Gcc_backend::pointer_type): New function.
1157 (Gcc_backend::make_type): New function.
1158 (type_to_tree): New function.
1160 2011-04-21 Ian Lance Taylor <iant@google.com>
1162 * go-system.h (go_assert, go_unreachable): Define.
1164 2011-04-19 Ian Lance Taylor <iant@google.com>
1166 * go-system.h: Include "intl.h".
1167 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
1168 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
1169 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
1171 2011-04-19 Ian Lance Taylor <iant@google.com>
1173 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
1175 2011-04-19 Ian Lance Taylor <iant@google.com>
1177 * go-gcc.cc (class Bblock): Define.
1178 (Gcc_backend::if_statement): Change then_block and else_block to
1180 (Gcc_backend::block): New function.
1181 (Gcc_backend::block_add_statements): New function.
1182 (Gcc_backend::block_statement): New function.
1183 (tree_to_block, block_to_tree): New functions.
1185 2011-04-18 Ian Lance Taylor <iant@google.com>
1187 * go-gcc.cc: Include "go-c.h".
1188 (class Bvariable): Define.
1189 (Gcc_backend::init_statement): New function.
1190 (Gcc_backend::global_variable): New function.
1191 (Gcc_backend::global_variable_set_init): New function.
1192 (Gcc_backend::local_variable): New function.
1193 (Gcc_backend::parameter_variable): New function.
1194 (tree_to_type, var_to_tree): New functions.
1195 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
1196 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
1198 2011-04-15 Ian Lance Taylor <iant@google.com>
1200 * go-gcc.cc (Gcc_backend::compound_statement): New function.
1201 (Gcc_backend::assignment_statement): Use error_statement.
1202 (Gcc_backend::return_statement): Likewise.
1203 (Gcc_backend::if_statement): Likewise.
1204 (Gcc_backend::switch_statement): Likewise.
1205 (Gcc_backend::statement_list): Likewise.
1207 2011-04-14 Ian Lance Taylor <iant@google.com>
1209 * go-gcc.cc (Gcc_backend::error_statement): New function.
1211 2011-04-13 Ian Lance Taylor <iant@google.com>
1213 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
1215 2011-04-13 Ian Lance Taylor <iant@google.com>
1217 * Make-lang.in (GO_OBJS): Add go/runtime.o.
1218 (GO_RUNTIME_H): New variable.
1219 (go/runtime.o): New target.
1220 (go/gogo.o): Depend on $(GO_RUNTIME_H).
1221 (go/statements.o): Likewise.
1223 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
1225 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
1228 2011-04-06 Ian Lance Taylor <iant@google.com>
1230 * go-gcc.cc (if_statement): Use build3_loc.
1231 (Gcc_backend::switch_statement): New function.
1232 (Gcc_backend::statement_list): New function.
1234 2011-04-06 Ian Lance Taylor <iant@google.com>
1236 * go-gcc.cc (Gcc_backend::if_statement): New function.
1237 (tree_to_stat): New function.
1238 (expr_to_tree): Renamed from expression_to_tree.
1239 (stat_to_tree): Renamed from statement_to_tree.
1241 2011-04-06 Ian Lance Taylor <iant@google.com>
1243 * go-gcc.cc (Gcc_backend::expression_statement): New function.
1245 2011-04-04 Ian Lance Taylor <iant@google.com>
1247 * go-gcc.c (class Blabel): Define.
1248 (Gcc_backend::make_expression): New function.
1249 (get_identifier_from_string): New function.
1250 (Gcc_backend::label): New function.
1251 (Gcc_backend::label_definition_statement): New function.
1252 (Gcc_backend::goto_statement): New function.
1253 (Gcc_backend::label_address): New function.
1254 (expression_to_tree): New function.
1255 * Make-lang.in (go/expressions.o): Depend on
1256 go/gofrontend/backend.h.
1257 (go/gogo.o): Likewise.
1259 2011-04-04 Ian Lance Taylor <iant@google.com>
1261 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
1262 (class Bfunction): Define.
1263 (Gcc_backend::assignment_statement): Rename from assignment.
1265 (Gcc_backend::return_statement): New function.
1266 (tree_to_function): New function.
1267 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
1268 $(GIMPLE_H), and $(GO_GOGO_H).
1270 2011-04-03 Ian Lance Taylor <iant@google.com>
1272 * go-gcc.cc: New file.
1273 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
1274 (go/go-gcc.o): New target.
1275 (go/go.o): Depend on go/gofrontend/backend.h.
1276 (go/statements.o): Likewise.
1278 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1280 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
1282 2011-02-08 Ian Lance Taylor <iant@google.com>
1284 * go-lang.c (go_langhook_init_options_struct): Set
1285 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
1287 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1289 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
1290 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
1292 2011-01-21 Ian Lance Taylor <iant@google.com>
1294 * go-lang.c (go_langhook_init): Omit float_type_size when calling
1296 * go-c.h: Update declaration of go_create_gogo.
1298 2011-01-13 Ian Lance Taylor <iant@google.com>
1300 * go-backend.c: Include "rtl.h" and "target.h".
1301 (go_imported_unsafe): New function.
1302 * go-c.h (go_imported_unsafe): Declare.
1303 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
1304 (go/gogo-tree.o): Remove dependency on $(RTL_H).
1305 (go/unsafe.o): Depend on $(GO_C_H).
1307 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
1310 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
1313 2010-12-21 Ian Lance Taylor <iant@google.com>
1315 * Make-lang.in (check-go): Remove.
1316 (lang_checks_parallelized): Add check-go.
1317 (check_go_parallelize): Set.
1319 2010-12-13 Ian Lance Taylor <iant@google.com>
1321 * gospec.c (lang_specific_driver): Add a -o option if not linking
1322 and there is no -o option already.
1324 2010-12-07 Ian Lance Taylor <iant@google.com>
1326 PR tree-optimization/46805
1327 PR tree-optimization/46833
1328 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
1330 2010-12-06 Ian Lance Taylor <iant@google.com>
1334 * go-lang.c (go_char_p): Define type and vectors.
1335 (go_search_dirs): New static variable.
1336 (go_langhook_handle_option): Use version and version/machine
1338 (go_langhook_post_options): Add non-specific -L paths.
1339 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
1340 DEFAULT_TARGET_MACHINE when compiling.
1341 * gccgo.texi (Invoking gccgo): Only document -L for linking.
1342 (Import and Export): Don't mention -L for finding import files.
1344 2010-12-03 Ian Lance Taylor <iant@google.com>
1347 * go-backend.c: New file.
1348 * go-c.h (go_type_alignment): Declare.
1349 (go_field_alignment, go_trampoline_info): Declare.
1350 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
1351 (go/go-backend.o): New target.
1352 (go/go-lang.o): Make dependencies match source file.
1353 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
1354 (go/gogo-tree.o): Don't depend on $(TM_H).
1356 2010-12-03 Ian Lance Taylor <iant@google.com>
1358 * config-lang.in (build_by_default): Set to no.
1360 2010-12-02 Ian Lance Taylor <iant@google.com>
1362 Go frontend added to gcc repository.
1364 Copyright (C) 2010-2017 Free Software Foundation, Inc.
1366 Copying and distribution of this file, with or without modification,
1367 are permitted in any medium without royalty provided the copyright
1368 notice and this notice are preserved.