1 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
2 Mike Stump <mikestump@comcast.net>
3 Richard Sandiford <rdsandiford@googlemail.com>
5 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
7 2014-05-06 Chris Manghane <cmang@google.com>
9 * go-c.h (go_create_gogo): Update declaration to add
10 check_divide_zero and check_divide_overflow parameters.
11 * go-lang.c (go_langhook_init): Pass new arguments to
14 2014-05-05 Chris Manghane <cmang@google.com>
16 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
17 gc_root_variable. Add name and is_constant parameters.
19 2014-05-05 Chris Manghane <cmang@google.com>
21 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
23 (Gcc_backend::temporary_variable): Check for erroneous function.
25 2014-04-30 Chris Manghane <cmang@google.com>
27 * go-backend.c: #include "diagnostics.h".
28 (saw_errors): New function.
29 * go-c.h (saw_errors): Declare.
30 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
32 2014-04-30 Chris Manghane <cmang@google.com>
34 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
35 calling into Go frontend.
36 (go_langhook_type_for_mode): Likewise.
37 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
39 2014-04-30 Chris Manghane <cmang@google.com>
41 * go-gcc.cc: #include "langhooks.h".
42 (Gcc_backend::Gcc_backend): Add constructor.
43 (Gcc_backend::lookup_function): New function.
44 (Gcc_backend::define_builtin): New private function.
45 (Gcc_backend::gcc_backend): Remove.
46 (go_get_backend): Use new to create new Gcc_backend.
48 2014-04-25 Chris Manghane <cmang@google.com>
50 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
51 (Gcc_backend::return_statement): Push and pop function.
52 (Gcc_backend::label): Likewise.
53 (Gcc_backend::function_defer_statement): Likewise.
54 (Gcc_backend::switch_statement): Add function parameter.
55 (Gcc_backend::block): Don't permit function to be NULL.
56 (Gcc_backend::temporary_variable): Change go_assert to
58 (Gcc_backend::gc_root_variable): New function.
59 (Gcc_backend::write_global_definitions): New function.
61 2014-04-22 Chris Manghane <cmang@google.com>
63 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
64 call to create_tmp_var. Require that function be non-NULL.
66 2014-04-17 Chris Manghane <cmang@google.com>
68 * go-gcc.cc (Gcc_backend::named_constant_expression): New
71 2014-04-14 Chris Manghane <cmang@google.com>
73 * go-gcc.cc: Include "convert.h".
74 (Gcc_backend::string_constant_expression): New function.
75 (Gcc_backend::real_part_expression): Likewise.
76 (Gcc_backend::imag_part_expression): Likewise.
77 (Gcc_backend::complex_expression): Likewise.
78 (Gcc_backend::constructor_expression): Likewise.
79 (Gcc_backend::array_constructor_expression): Likewise.
80 (Gcc_backend::pointer_offset_expression): Likewise.
81 (Gcc_backend::array_index_expression): Likewise.
82 (Gcc_backend::call_expression): Likewise.
83 (Gcc_backend::exception_handler_statement): Likewise.
84 (Gcc_backend::function_defer_statement): Likewise.
85 (Gcc_backend::function_set_parameters): Likewise.
86 (Gcc_backend::function_set_body): Likewise.
87 (Gcc_backend::convert_expression): Handle various type
90 2014-03-03 Ian Lance Taylor <iant@google.com>
92 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
94 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
97 2014-01-24 Chris Manghane <cmang@google.com>
99 * go-gcc.cc (Gcc_backend::unary_expression): New function.
101 2014-01-16 Chris Manghane <cmang@google.com>
103 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
105 (operator_to_tree_code): New static function.
106 (Gcc_backend::binary_expression): New function.
108 2014-01-14 Chris Manghane <cmang@google.com>
110 * go-gcc.cc (Gcc_backend::compound_expression): New function.
111 (Gcc_backend::conditional_expression): New function.
113 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
115 Update copyright years
117 2014-01-02 Tobias Burnus <burnus@net-b.de>
119 * gccgo.texi: Bump @copying's copyright year.
121 2013-12-16 Chris Manghane <cmang@google.com>
123 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
125 2013-12-11 Ian Lance Taylor <iant@google.com>
127 * go-lang.c (go_langhook_post_options): Disable sibling calls by
130 2013-12-10 Ian Lance Taylor <iant@google.com>
132 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
135 2013-12-05 Ian Lance Taylor <iant@google.com>
137 Revert this change; no longer required.
138 2013-11-06 Ian Lance Taylor <iant@google.com>
140 * go-lang.c (go_langhook_post_options): If
141 -fisolate-erroneous-paths was turned on by an optimization option,
144 2013-11-23 Ian Lance Taylor <iant@google.com>
146 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
149 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
151 * go-gcc.cc: Add required include files from gimple.h.
152 * go-lang.c: Likewise
154 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
156 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
157 tree_to_shwi throughout.
159 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
161 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
162 tree_fits_shwi_p throughout.
164 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
166 * go-lang.c: Include only gimplify.h and gimple.h as needed.
168 2013-11-14 Diego Novillo <dnovillo@google.com>
170 * go-backend.c: Include stor-layout.h.
171 * go-gcc.cc: Include stringpool.h.
172 Include stor-layout.h.
174 * go-lang.c: Include stor-layout.h.
176 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
178 * go-lang.c: Include gimplify.h.
180 2013-11-06 Ian Lance Taylor <iant@google.com>
182 * go-lang.c (go_langhook_post_options): If
183 -fisolate-erroneous-paths was turned on by an optimization option,
186 2013-10-14 Chris Manghane <cmang@google.com>
188 * go-gcc.cc (Gcc_backend::address_expression): New function.
190 2013-10-11 Chris Manghane <cmang@google.com>
192 * go-gcc.cc (Gcc_backend::function_code_expression): New
195 2013-10-10 Chris Manghane <cmang@google.com>
197 * go-gcc.cc (Gcc_backend::error_function): New function.
198 (Gcc_backend::function): New function.
199 (Gcc_backend::make_function): New function.
200 (function_to_tree): New function.
202 2013-10-04 Chris Manghane <cmang@google.com>
204 * go-gcc.cc (Gcc_backend::convert_expression): New function.
206 2013-10-02 Chris Manghane <cmang@google.com>
208 * go-gcc.cc: Include "real.h" and "realmpfr.h".
209 (Gcc_backend::integer_constant_expression): New function.
210 (Gcc_backend::float_constant_expression): New function.
211 (Gcc_backend::complex_constant_expression): New function.
213 2013-09-30 Chris Manghane <cmang@google.com>
215 * go-gcc.cc (Gcc_backend::error_expression): New function.
216 (Gcc_backend::var_expression): New function.
217 (Gcc_backend::indirect_expression): New function.
219 2013-09-25 Tom Tromey <tromey@redhat.com>
221 * Make-lang.in (gospec.o): Remove.
222 (CFLAGS-go/gospec.o): New variable.
223 (GCCGO_OBJS): Update to use go/gospec.o.
225 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
226 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
227 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
228 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
229 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
230 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
231 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
232 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
233 (go/unsafe.o): Remove.
234 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
235 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
237 2013-09-25 Tom Tromey <tromey@redhat.com>
239 * Make-lang.in (gospec.o): Don't use subshell.
241 2013-08-28 Ian Lance Taylor <iant@google.com>
243 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
244 the struct is not hidden.
245 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
247 2013-08-06 Ian Lance Taylor <iant@google.com>
249 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
250 compute_reloc_for_constant.
252 2013-08-02 Ian Lance Taylor <iant@google.com>
254 * go-gcc.cc (immutable_struct_set_init): Always call
255 resolve_unique_section.
257 2013-07-24 Ian Lance Taylor <iant@google.com>
259 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
260 fields, recreate those fields with the first one with a non-zero
263 2013-07-23 Ian Lance Taylor <iant@google.com>
265 * go-backend.c: Don't #include "rtl.h".
266 (go_imported_unsafe): Don't call init_varasm_once.
267 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
269 2013-07-23 Ian Lance Taylor <iant@google.com>
271 * go-lang.c: Don't #include "except.h".
272 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
274 2013-06-18 Ian Lance Taylor <iant@google.com>
276 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
278 (Gcc_backend::immutable_struct_set_init): Likewise.
280 2013-05-16 Jason Merrill <jason@redhat.com>
282 * Make-lang.in (go1$(exeext)): Use link mutex.
284 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
286 * gospec.c: pass -u pthread_create to linker when static linking.
288 2012-12-21 Ian Lance Taylor <iant@google.com>
291 * go-system.h: Don't include <cstdio>.
293 2012-12-18 Ian Lance Taylor <iant@google.com>
296 * gospec.c: Revert last patch.
298 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
301 * gospec.c (LIBATOMIC): Define.
302 (LIBATOMIC_PROFILE): Define.
303 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
305 2012-11-29 Ian Lance Taylor <iant@google.com>
307 * go-gcc.cc: Include "output.h".
308 (global_variable): Add is_unique_section parameter.
309 (global_variable_set_init): Adjust unique section if necessary.
310 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
312 2012-11-17 Diego Novillo <dnovillo@google.com>
314 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
316 * go-lang.c: Use new vec API in vec.h.
318 2012-11-16 Ian Lance Taylor <iant@google.com>
320 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
321 (go1$(exeext)): Likewise.
323 2012-10-30 Ian Lance Taylor <iant@google.com>
325 * lang.opt (-fgo-relative-import-path): New option.
326 * go-lang.c (go_relative_import_path): New static variable.
327 (go_langhook_init): Pass go_relative_import_path to
329 (go_langhook_handle_option): Handle -fgo-relative-import-path.
330 * go-c.h (go_create_gogo): Update declaration.
331 * gccgo.texi (Invoking gccgo): Document
332 -fgo-relative-import-path.
334 2012-09-17 Ian Lance Taylor <iant@google.com>
336 * config-lang.in (target_libs): Add target-libbacktrace.
338 2012-09-16 Ian Lance Taylor <iant@google.com>
340 * Make-lang.in (go/gogo.o): Depend on filenames.h.
342 2012-08-14 Diego Novillo <dnovillo@google.com>
344 Merge from cxx-conversion branch. Configury.
346 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
347 * go-gcc.cc: Likewise.
348 * go-system.h: Likewise.
350 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
352 * go-lang.c (lang_decl): Add variable_size GTY option.
354 2012-05-09 Ian Lance Taylor <iant@google.com>
356 * lang.opt: Add -fgo-pkgpath.
357 * go-lang.c (go_pkgpath): New static variable.
358 (go_prefix): New static variable.
359 (go_langhook_init): Pass go_pkgpath and go_prefix to
361 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
362 -fgo-prefix handling to just set go_prefix.
363 * go-c.h (go_set_prefix): Don't declare.
364 (go_create_gogo): Add pkgpath and prefix to declaration.
365 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
366 to pkgpath. Don't include the package name in the asm name.
367 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
368 docs for -fgo-prefix.
370 2012-04-23 Ian Lance Taylor <iant@google.com>
372 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
374 2012-04-20 Ian Lance Taylor <iant@google.com>
376 * lang.opt: Add -fgo-check-divide-zero and
377 -fgo-check-divide-overflow.
378 * gccgo.texi (Invoking gccgo): Document new options.
380 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
382 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
383 with NULL_TREE type instead of void_type_node.
385 2012-03-09 Ian Lance Taylor <iant@google.com>
387 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
388 to the lhs type if necessary.
390 2012-03-08 Ian Lance Taylor <iant@google.com>
392 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
394 (go_non_zero_struct): New global variable.
395 (Gcc_backend::non_zero_size_type): New function.
396 (Gcc_backend::global_variable): Don't build an assignment for a
398 * go-c.h (go_non_zero_struct): Declare.
399 * config-lang.in (gtfiles): Add go-c.h.
401 2012-02-29 Ian Lance Taylor <iant@google.com>
403 * go-gcc.cc (class Gcc_tree): Add set_tree method.
404 (set_placeholder_pointer_type): When setting to a pointer to
405 error, set to error_mark_node.
407 2012-02-23 Richard Guenther <rguenther@suse.de>
409 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
410 build_distinct_type_copy.
412 2012-02-17 Ian Lance Taylor <iant@google.com>
414 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
416 2012-02-17 Ian Lance Taylor <iant@google.com>
418 * gospec.c (lang_specific_driver): If linking, and no -o option
421 2012-02-14 Ian Lance Taylor <iant@google.com>
424 * Make-lang.in (gccgo-cross$(exeext)): New target.
425 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
427 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
428 gccgo-cross$(exeext) does not exist.
430 2012-02-07 Ian Lance Taylor <iant@google.com>
432 * gccgo.texi (Function Names): Document //extern instead of
435 2012-02-01 Jakub Jelinek <jakub@redhat.com>
438 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
439 return build_nonstandard_integer_type result if possible.
441 2012-01-21 Ian Lance Taylor <iant@google.com>
443 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
444 (Gcc_backend::type_alignment): Likewise.
445 (Gcc_backend::type_field_alignment): Likewise.
446 (Gcc_backend::type_field_offset): Likewise.
448 2012-01-20 Ian Lance Taylor <iant@google.com>
450 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
452 (Gcc_backend::set_placeholder_struct_type): Likewise.
454 2012-01-17 Ian Lance Taylor <iant@google.com>
456 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
457 BASE.s rather than -o BASE.o.
459 2012-01-11 Ian Lance Taylor <iant@google.com>
461 * go-lang.c (go_langhook_init): Initialize void_list_node before
462 calling go_create_gogo.
464 2012-01-10 Ian Lance Taylor <iant@google.com>
466 * go-gcc.cc (Gcc_backend::type_size): New function.
467 (Gcc_backend::type_alignment): New function.
468 (Gcc_backend::type_field_alignment): New function.
469 (Gcc_backend::type_field_offset): New function.
470 * go-backend.c (go_type_alignment): Remove.
471 * go-c.h (go_type_alignment): Don't declare.
473 2011-12-27 Ian Lance Taylor <iant@google.com>
475 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
476 build_distinct_type_copy rather than build_variant_type_copy.
477 (Gcc_backend::set_placeholder_array_type): Likewise.
478 (Gcc_backend::named_type): Add special handling for builtin
481 2011-12-22 Ian Lance Taylor <iant@google.com>
483 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
484 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
485 (Gcc_backend::set_placeholder_struct_type): Likewise.
486 (Gcc_backend::set_placeholder_array_type): Likewise.
487 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
489 2011-12-13 Ian Lance Taylor <iant@google.com>
491 * go-backend.c: #include "simple-object.h" and "intl.h".
492 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
493 (GO_EXPORT_SECTION_NAME): Likewise.
494 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
495 (go_read_export_data): New function.
496 * go-c.h (go_read_export_data): Declare.
498 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
499 Ian Lance Taylor <iant@google.com>
501 * go-location.h: New file.
502 * go-linemap.cc: New file.
503 * go-gcc.cc: Change all uses of source_location to Location.
504 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
505 (GO_LINEMAP_H): New variable.
506 (GO_LEX_H): Use $(GO_LINEMAP_H).
507 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
508 (go/go-linemap.o): New target.
510 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
512 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
514 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
516 * lang.opt: Add fgo-optimize-.
517 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
518 * go-c.h (go_enable_optimize): Declare.
519 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
520 (GO_EXPORT_H): Define.
521 (GO_IMPORT_H): Add $(GO_EXPORT_H).
522 (GO_AST_DUMP_H): Define.
523 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
524 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
525 (go/types.o): Likewise.
526 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
527 (go/go-optimize.o): New target.
529 2011-08-24 Joseph Myers <joseph@codesourcery.com>
531 * Make-lang.in (CFLAGS-go/go-lang.o): New.
532 (go/go-lang.o): Remove explicit compilation rule.
534 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
536 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
538 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
540 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
541 (go/ast-dump.o): New target.
542 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
543 (go/statements.o): Likewise.
545 2011-07-06 Richard Guenther <rguenther@suse.de>
547 * go-lang.c (go_langhook_init):
548 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
550 2011-06-14 Joseph Myers <joseph@codesourcery.com>
552 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
554 * go-backend.c: Include common/common-target.h.
555 (go_write_export_data): Use targetm_common.have_named_sections.
556 * go-lang.c: Include common/common-target.h.
557 (go_langhook_init_options_struct): Use
558 targetm_common.supports_split_stack.
560 2011-06-13 Ian Lance Taylor <iant@google.com>
562 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
564 2011-06-10 Ian Lance Taylor <iant@google.com>
566 * go-gcc.cc: Include "toplev.h".
567 (Gcc_backend::immutable_struct): New function.
568 (Gcc_backend::immutable_struct_set_init): New function.
569 (Gcc_backend::immutable_struct_reference): New function.
570 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
572 2011-06-09 Ian Lance Taylor <iant@google.com>
574 * go-gcc.cc (Gcc_backend::zero_expression): New function.
576 2011-06-07 Richard Guenther <rguenther@suse.de>
578 * go-lang.c (go_langhook_init): Do not set
579 size_type_node or call set_sizetype.
581 2011-05-27 Ian Lance Taylor <iant@google.com>
583 * go-backend.c: Include "output.h".
584 (go_write_export_data): New function.
585 * go-c.h (go_write_export_data): Declare.
586 * Make-lang.in (go/go-backend.o): Depend on output.h.
587 (go/export.o): Depend on $(GO_C_H). Do not depend on
588 $(MACHMODE_H), output.h, or $(TARGET_H).
590 2011-05-24 Joseph Myers <joseph@codesourcery.com>
592 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
593 (gccgo$(exeext)): Use libcommon-target.a.
595 2011-05-20 Joseph Myers <joseph@codesourcery.com>
597 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
599 2011-05-13 Ian Lance Taylor <iant@google.com>
601 * go-gcc.cc (Gcc_backend::function_type): When building a struct
602 for multiple results, check that all fields types have a size.
603 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
605 2011-05-12 Ian Lance Taylor <iant@google.com>
607 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
609 (Gcc_backend::parameter_variable): Likewise.
611 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
613 * go-lang.c (global_bindings_p): Return bool and simplify.
615 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
617 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
619 2011-05-04 Ian Lance Taylor <iant@google.com>
621 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
622 (Gcc_backend::fill_in_struct): New function.
623 (Gcc_backend::array_type): Implement.
624 (Gcc_backend::fill_in_array): New function.
625 (Gcc_backend::placeholder_pointer_type): New function.
626 (Gcc_backend::set_placeholder_pointer_type): New function.
627 (Gcc_backend::set_placeholder_function_type): New function.
628 (Gcc_backend::placeholder_struct_type): New function.
629 (Gcc_backend::set_placeholder_struct_type): New function.
630 (Gcc_backend::placeholder_array_type): New function.
631 (Gcc_backend::set_placeholder_array_type): New function.
632 (Gcc_backend::named_type): New function.
633 (Gcc_backend::circular_pointer_type): New function.
634 (Gcc_backend::is_circular_pointer_type): New function.
636 2011-04-26 Ian Lance Taylor <iant@google.com>
638 * go-gcc.cc (Gcc_backend::struct_type): Implement.
640 2011-04-25 Ian Lance Taylor <iant@google.com>
642 * go-gcc.cc (Gcc_backend::error_type): Implement.
643 (Gcc_backend::string_type): Remove.
644 (Gcc_backend::function_type): Change signature and implement.
645 (Gcc_backend::struct_type): Change signature.
646 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
647 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
648 (Gcc_backend::pointer_type): Check for error.
649 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
651 2011-04-25 Evan Shaw <edsrzf@gmail.com>
653 * go-gcc.c (class Gcc_tree): Make get_tree const.
654 (Gcc_backend::void_type): Implement.
655 (Gcc_backend::bool_type): Implement.
656 (Gcc_backend::integer_type): Implement.
657 (Gcc_backend::float_type): Implement.
658 (Gcc_backend::complex_type): New function.
659 (Gcc_backend::pointer_type): New function.
660 (Gcc_backend::make_type): New function.
661 (type_to_tree): New function.
663 2011-04-21 Ian Lance Taylor <iant@google.com>
665 * go-system.h (go_assert, go_unreachable): Define.
667 2011-04-19 Ian Lance Taylor <iant@google.com>
669 * go-system.h: Include "intl.h".
670 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
671 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
672 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
674 2011-04-19 Ian Lance Taylor <iant@google.com>
676 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
678 2011-04-19 Ian Lance Taylor <iant@google.com>
680 * go-gcc.cc (class Bblock): Define.
681 (Gcc_backend::if_statement): Change then_block and else_block to
683 (Gcc_backend::block): New function.
684 (Gcc_backend::block_add_statements): New function.
685 (Gcc_backend::block_statement): New function.
686 (tree_to_block, block_to_tree): New functions.
688 2011-04-18 Ian Lance Taylor <iant@google.com>
690 * go-gcc.cc: Include "go-c.h".
691 (class Bvariable): Define.
692 (Gcc_backend::init_statement): New function.
693 (Gcc_backend::global_variable): New function.
694 (Gcc_backend::global_variable_set_init): New function.
695 (Gcc_backend::local_variable): New function.
696 (Gcc_backend::parameter_variable): New function.
697 (tree_to_type, var_to_tree): New functions.
698 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
699 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
701 2011-04-15 Ian Lance Taylor <iant@google.com>
703 * go-gcc.cc (Gcc_backend::compound_statement): New function.
704 (Gcc_backend::assignment_statement): Use error_statement.
705 (Gcc_backend::return_statement): Likewise.
706 (Gcc_backend::if_statement): Likewise.
707 (Gcc_backend::switch_statement): Likewise.
708 (Gcc_backend::statement_list): Likewise.
710 2011-04-14 Ian Lance Taylor <iant@google.com>
712 * go-gcc.cc (Gcc_backend::error_statement): New function.
714 2011-04-13 Ian Lance Taylor <iant@google.com>
716 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
718 2011-04-13 Ian Lance Taylor <iant@google.com>
720 * Make-lang.in (GO_OBJS): Add go/runtime.o.
721 (GO_RUNTIME_H): New variable.
722 (go/runtime.o): New target.
723 (go/gogo.o): Depend on $(GO_RUNTIME_H).
724 (go/statements.o): Likewise.
726 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
728 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
731 2011-04-06 Ian Lance Taylor <iant@google.com>
733 * go-gcc.cc (if_statement): Use build3_loc.
734 (Gcc_backend::switch_statement): New function.
735 (Gcc_backend::statement_list): New function.
737 2011-04-06 Ian Lance Taylor <iant@google.com>
739 * go-gcc.cc (Gcc_backend::if_statement): New function.
740 (tree_to_stat): New function.
741 (expr_to_tree): Renamed from expression_to_tree.
742 (stat_to_tree): Renamed from statement_to_tree.
744 2011-04-06 Ian Lance Taylor <iant@google.com>
746 * go-gcc.cc (Gcc_backend::expression_statement): New function.
748 2011-04-04 Ian Lance Taylor <iant@google.com>
750 * go-gcc.c (class Blabel): Define.
751 (Gcc_backend::make_expression): New function.
752 (get_identifier_from_string): New function.
753 (Gcc_backend::label): New function.
754 (Gcc_backend::label_definition_statement): New function.
755 (Gcc_backend::goto_statement): New function.
756 (Gcc_backend::label_address): New function.
757 (expression_to_tree): New function.
758 * Make-lang.in (go/expressions.o): Depend on
759 go/gofrontend/backend.h.
760 (go/gogo.o): Likewise.
762 2011-04-04 Ian Lance Taylor <iant@google.com>
764 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
765 (class Bfunction): Define.
766 (Gcc_backend::assignment_statement): Rename from assignment.
768 (Gcc_backend::return_statement): New function.
769 (tree_to_function): New function.
770 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
771 $(GIMPLE_H), and $(GO_GOGO_H).
773 2011-04-03 Ian Lance Taylor <iant@google.com>
775 * go-gcc.cc: New file.
776 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
777 (go/go-gcc.o): New target.
778 (go/go.o): Depend on go/gofrontend/backend.h.
779 (go/statements.o): Likewise.
781 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
783 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
785 2011-02-08 Ian Lance Taylor <iant@google.com>
787 * go-lang.c (go_langhook_init_options_struct): Set
788 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
790 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
792 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
793 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
795 2011-01-21 Ian Lance Taylor <iant@google.com>
797 * go-lang.c (go_langhook_init): Omit float_type_size when calling
799 * go-c.h: Update declaration of go_create_gogo.
801 2011-01-13 Ian Lance Taylor <iant@google.com>
803 * go-backend.c: Include "rtl.h" and "target.h".
804 (go_imported_unsafe): New function.
805 * go-c.h (go_imported_unsafe): Declare.
806 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
807 (go/gogo-tree.o): Remove dependency on $(RTL_H).
808 (go/unsafe.o): Depend on $(GO_C_H).
810 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
813 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
816 2010-12-21 Ian Lance Taylor <iant@google.com>
818 * Make-lang.in (check-go): Remove.
819 (lang_checks_parallelized): Add check-go.
820 (check_go_parallelize): Set.
822 2010-12-13 Ian Lance Taylor <iant@google.com>
824 * gospec.c (lang_specific_driver): Add a -o option if not linking
825 and there is no -o option already.
827 2010-12-07 Ian Lance Taylor <iant@google.com>
829 PR tree-optimization/46805
830 PR tree-optimization/46833
831 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
833 2010-12-06 Ian Lance Taylor <iant@google.com>
837 * go-lang.c (go_char_p): Define type and vectors.
838 (go_search_dirs): New static variable.
839 (go_langhook_handle_option): Use version and version/machine
841 (go_langhook_post_options): Add non-specific -L paths.
842 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
843 DEFAULT_TARGET_MACHINE when compiling.
844 * gccgo.texi (Invoking gccgo): Only document -L for linking.
845 (Import and Export): Don't mention -L for finding import files.
847 2010-12-03 Ian Lance Taylor <iant@google.com>
850 * go-backend.c: New file.
851 * go-c.h (go_type_alignment): Declare.
852 (go_field_alignment, go_trampoline_info): Declare.
853 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
854 (go/go-backend.o): New target.
855 (go/go-lang.o): Make dependencies match source file.
856 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
857 (go/gogo-tree.o): Don't depend on $(TM_H).
859 2010-12-03 Ian Lance Taylor <iant@google.com>
861 * config-lang.in (build_by_default): Set to no.
863 2010-12-02 Ian Lance Taylor <iant@google.com>
865 Go frontend added to gcc repository.
867 Copyright (C) 2010-2014 Free Software Foundation, Inc.
869 Copying and distribution of this file, with or without modification,
870 are permitted in any medium without royalty provided the copyright
871 notice and this notice are preserved.