1 2014-04-30 Chris Manghane <cmang@google.com>
3 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
4 calling into Go frontend.
5 (go_langhook_type_for_mode): Likewise.
6 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
8 2014-04-30 Chris Manghane <cmang@google.com>
10 * go-gcc.cc: #include "langhooks.h".
11 (Gcc_backend::Gcc_backend): Add constructor.
12 (Gcc_backend::lookup_function): New function.
13 (Gcc_backend::define_builtin): New private function.
14 (Gcc_backend::gcc_backend): Remove.
15 (go_get_backend): Use new to create new Gcc_backend.
17 2014-04-25 Chris Manghane <cmang@google.com>
19 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
20 (Gcc_backend::return_statement): Push and pop function.
21 (Gcc_backend::label): Likewise.
22 (Gcc_backend::function_defer_statement): Likewise.
23 (Gcc_backend::switch_statement): Add function parameter.
24 (Gcc_backend::block): Don't permit function to be NULL.
25 (Gcc_backend::temporary_variable): Change go_assert to
27 (Gcc_backend::gc_root_variable): New function.
28 (Gcc_backend::write_global_definitions): New function.
30 2014-04-22 Chris Manghane <cmang@google.com>
32 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
33 call to create_tmp_var. Require that function be non-NULL.
35 2014-04-17 Chris Manghane <cmang@google.com>
37 * go-gcc.cc (Gcc_backend::named_constant_expression): New
40 2014-04-14 Chris Manghane <cmang@google.com>
42 * go-gcc.cc: Include "convert.h".
43 (Gcc_backend::string_constant_expression): New function.
44 (Gcc_backend::real_part_expression): Likewise.
45 (Gcc_backend::imag_part_expression): Likewise.
46 (Gcc_backend::complex_expression): Likewise.
47 (Gcc_backend::constructor_expression): Likewise.
48 (Gcc_backend::array_constructor_expression): Likewise.
49 (Gcc_backend::pointer_offset_expression): Likewise.
50 (Gcc_backend::array_index_expression): Likewise.
51 (Gcc_backend::call_expression): Likewise.
52 (Gcc_backend::exception_handler_statement): Likewise.
53 (Gcc_backend::function_defer_statement): Likewise.
54 (Gcc_backend::function_set_parameters): Likewise.
55 (Gcc_backend::function_set_body): Likewise.
56 (Gcc_backend::convert_expression): Handle various type
59 2014-03-03 Ian Lance Taylor <iant@google.com>
61 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
63 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
66 2014-01-24 Chris Manghane <cmang@google.com>
68 * go-gcc.cc (Gcc_backend::unary_expression): New function.
70 2014-01-16 Chris Manghane <cmang@google.com>
72 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
74 (operator_to_tree_code): New static function.
75 (Gcc_backend::binary_expression): New function.
77 2014-01-14 Chris Manghane <cmang@google.com>
79 * go-gcc.cc (Gcc_backend::compound_expression): New function.
80 (Gcc_backend::conditional_expression): New function.
82 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
84 Update copyright years
86 2014-01-02 Tobias Burnus <burnus@net-b.de>
88 * gccgo.texi: Bump @copying's copyright year.
90 2013-12-16 Chris Manghane <cmang@google.com>
92 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
94 2013-12-11 Ian Lance Taylor <iant@google.com>
96 * go-lang.c (go_langhook_post_options): Disable sibling calls by
99 2013-12-10 Ian Lance Taylor <iant@google.com>
101 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
104 2013-12-05 Ian Lance Taylor <iant@google.com>
106 Revert this change; no longer required.
107 2013-11-06 Ian Lance Taylor <iant@google.com>
109 * go-lang.c (go_langhook_post_options): If
110 -fisolate-erroneous-paths was turned on by an optimization option,
113 2013-11-23 Ian Lance Taylor <iant@google.com>
115 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
118 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
120 * go-gcc.cc: Add required include files from gimple.h.
121 * go-lang.c: Likewise
123 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
125 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
126 tree_to_shwi throughout.
128 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
130 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
131 tree_fits_shwi_p throughout.
133 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
135 * go-lang.c: Include only gimplify.h and gimple.h as needed.
137 2013-11-14 Diego Novillo <dnovillo@google.com>
139 * go-backend.c: Include stor-layout.h.
140 * go-gcc.cc: Include stringpool.h.
141 Include stor-layout.h.
143 * go-lang.c: Include stor-layout.h.
145 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
147 * go-lang.c: Include gimplify.h.
149 2013-11-06 Ian Lance Taylor <iant@google.com>
151 * go-lang.c (go_langhook_post_options): If
152 -fisolate-erroneous-paths was turned on by an optimization option,
155 2013-10-14 Chris Manghane <cmang@google.com>
157 * go-gcc.cc (Gcc_backend::address_expression): New function.
159 2013-10-11 Chris Manghane <cmang@google.com>
161 * go-gcc.cc (Gcc_backend::function_code_expression): New
164 2013-10-10 Chris Manghane <cmang@google.com>
166 * go-gcc.cc (Gcc_backend::error_function): New function.
167 (Gcc_backend::function): New function.
168 (Gcc_backend::make_function): New function.
169 (function_to_tree): New function.
171 2013-10-04 Chris Manghane <cmang@google.com>
173 * go-gcc.cc (Gcc_backend::convert_expression): New function.
175 2013-10-02 Chris Manghane <cmang@google.com>
177 * go-gcc.cc: Include "real.h" and "realmpfr.h".
178 (Gcc_backend::integer_constant_expression): New function.
179 (Gcc_backend::float_constant_expression): New function.
180 (Gcc_backend::complex_constant_expression): New function.
182 2013-09-30 Chris Manghane <cmang@google.com>
184 * go-gcc.cc (Gcc_backend::error_expression): New function.
185 (Gcc_backend::var_expression): New function.
186 (Gcc_backend::indirect_expression): New function.
188 2013-09-25 Tom Tromey <tromey@redhat.com>
190 * Make-lang.in (gospec.o): Remove.
191 (CFLAGS-go/gospec.o): New variable.
192 (GCCGO_OBJS): Update to use go/gospec.o.
194 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
195 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
196 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
197 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
198 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
199 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
200 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
201 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
202 (go/unsafe.o): Remove.
203 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
204 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
206 2013-09-25 Tom Tromey <tromey@redhat.com>
208 * Make-lang.in (gospec.o): Don't use subshell.
210 2013-08-28 Ian Lance Taylor <iant@google.com>
212 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
213 the struct is not hidden.
214 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
216 2013-08-06 Ian Lance Taylor <iant@google.com>
218 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
219 compute_reloc_for_constant.
221 2013-08-02 Ian Lance Taylor <iant@google.com>
223 * go-gcc.cc (immutable_struct_set_init): Always call
224 resolve_unique_section.
226 2013-07-24 Ian Lance Taylor <iant@google.com>
228 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
229 fields, recreate those fields with the first one with a non-zero
232 2013-07-23 Ian Lance Taylor <iant@google.com>
234 * go-backend.c: Don't #include "rtl.h".
235 (go_imported_unsafe): Don't call init_varasm_once.
236 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
238 2013-07-23 Ian Lance Taylor <iant@google.com>
240 * go-lang.c: Don't #include "except.h".
241 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
243 2013-06-18 Ian Lance Taylor <iant@google.com>
245 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
247 (Gcc_backend::immutable_struct_set_init): Likewise.
249 2013-05-16 Jason Merrill <jason@redhat.com>
251 * Make-lang.in (go1$(exeext)): Use link mutex.
253 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
255 * gospec.c: pass -u pthread_create to linker when static linking.
257 2012-12-21 Ian Lance Taylor <iant@google.com>
260 * go-system.h: Don't include <cstdio>.
262 2012-12-18 Ian Lance Taylor <iant@google.com>
265 * gospec.c: Revert last patch.
267 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
270 * gospec.c (LIBATOMIC): Define.
271 (LIBATOMIC_PROFILE): Define.
272 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
274 2012-11-29 Ian Lance Taylor <iant@google.com>
276 * go-gcc.cc: Include "output.h".
277 (global_variable): Add is_unique_section parameter.
278 (global_variable_set_init): Adjust unique section if necessary.
279 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
281 2012-11-17 Diego Novillo <dnovillo@google.com>
283 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
285 * go-lang.c: Use new vec API in vec.h.
287 2012-11-16 Ian Lance Taylor <iant@google.com>
289 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
290 (go1$(exeext)): Likewise.
292 2012-10-30 Ian Lance Taylor <iant@google.com>
294 * lang.opt (-fgo-relative-import-path): New option.
295 * go-lang.c (go_relative_import_path): New static variable.
296 (go_langhook_init): Pass go_relative_import_path to
298 (go_langhook_handle_option): Handle -fgo-relative-import-path.
299 * go-c.h (go_create_gogo): Update declaration.
300 * gccgo.texi (Invoking gccgo): Document
301 -fgo-relative-import-path.
303 2012-09-17 Ian Lance Taylor <iant@google.com>
305 * config-lang.in (target_libs): Add target-libbacktrace.
307 2012-09-16 Ian Lance Taylor <iant@google.com>
309 * Make-lang.in (go/gogo.o): Depend on filenames.h.
311 2012-08-14 Diego Novillo <dnovillo@google.com>
313 Merge from cxx-conversion branch. Configury.
315 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
316 * go-gcc.cc: Likewise.
317 * go-system.h: Likewise.
319 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
321 * go-lang.c (lang_decl): Add variable_size GTY option.
323 2012-05-09 Ian Lance Taylor <iant@google.com>
325 * lang.opt: Add -fgo-pkgpath.
326 * go-lang.c (go_pkgpath): New static variable.
327 (go_prefix): New static variable.
328 (go_langhook_init): Pass go_pkgpath and go_prefix to
330 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
331 -fgo-prefix handling to just set go_prefix.
332 * go-c.h (go_set_prefix): Don't declare.
333 (go_create_gogo): Add pkgpath and prefix to declaration.
334 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
335 to pkgpath. Don't include the package name in the asm name.
336 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
337 docs for -fgo-prefix.
339 2012-04-23 Ian Lance Taylor <iant@google.com>
341 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
343 2012-04-20 Ian Lance Taylor <iant@google.com>
345 * lang.opt: Add -fgo-check-divide-zero and
346 -fgo-check-divide-overflow.
347 * gccgo.texi (Invoking gccgo): Document new options.
349 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
351 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
352 with NULL_TREE type instead of void_type_node.
354 2012-03-09 Ian Lance Taylor <iant@google.com>
356 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
357 to the lhs type if necessary.
359 2012-03-08 Ian Lance Taylor <iant@google.com>
361 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
363 (go_non_zero_struct): New global variable.
364 (Gcc_backend::non_zero_size_type): New function.
365 (Gcc_backend::global_variable): Don't build an assignment for a
367 * go-c.h (go_non_zero_struct): Declare.
368 * config-lang.in (gtfiles): Add go-c.h.
370 2012-02-29 Ian Lance Taylor <iant@google.com>
372 * go-gcc.cc (class Gcc_tree): Add set_tree method.
373 (set_placeholder_pointer_type): When setting to a pointer to
374 error, set to error_mark_node.
376 2012-02-23 Richard Guenther <rguenther@suse.de>
378 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
379 build_distinct_type_copy.
381 2012-02-17 Ian Lance Taylor <iant@google.com>
383 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
385 2012-02-17 Ian Lance Taylor <iant@google.com>
387 * gospec.c (lang_specific_driver): If linking, and no -o option
390 2012-02-14 Ian Lance Taylor <iant@google.com>
393 * Make-lang.in (gccgo-cross$(exeext)): New target.
394 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
396 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
397 gccgo-cross$(exeext) does not exist.
399 2012-02-07 Ian Lance Taylor <iant@google.com>
401 * gccgo.texi (Function Names): Document //extern instead of
404 2012-02-01 Jakub Jelinek <jakub@redhat.com>
407 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
408 return build_nonstandard_integer_type result if possible.
410 2012-01-21 Ian Lance Taylor <iant@google.com>
412 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
413 (Gcc_backend::type_alignment): Likewise.
414 (Gcc_backend::type_field_alignment): Likewise.
415 (Gcc_backend::type_field_offset): Likewise.
417 2012-01-20 Ian Lance Taylor <iant@google.com>
419 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
421 (Gcc_backend::set_placeholder_struct_type): Likewise.
423 2012-01-17 Ian Lance Taylor <iant@google.com>
425 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
426 BASE.s rather than -o BASE.o.
428 2012-01-11 Ian Lance Taylor <iant@google.com>
430 * go-lang.c (go_langhook_init): Initialize void_list_node before
431 calling go_create_gogo.
433 2012-01-10 Ian Lance Taylor <iant@google.com>
435 * go-gcc.cc (Gcc_backend::type_size): New function.
436 (Gcc_backend::type_alignment): New function.
437 (Gcc_backend::type_field_alignment): New function.
438 (Gcc_backend::type_field_offset): New function.
439 * go-backend.c (go_type_alignment): Remove.
440 * go-c.h (go_type_alignment): Don't declare.
442 2011-12-27 Ian Lance Taylor <iant@google.com>
444 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
445 build_distinct_type_copy rather than build_variant_type_copy.
446 (Gcc_backend::set_placeholder_array_type): Likewise.
447 (Gcc_backend::named_type): Add special handling for builtin
450 2011-12-22 Ian Lance Taylor <iant@google.com>
452 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
453 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
454 (Gcc_backend::set_placeholder_struct_type): Likewise.
455 (Gcc_backend::set_placeholder_array_type): Likewise.
456 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
458 2011-12-13 Ian Lance Taylor <iant@google.com>
460 * go-backend.c: #include "simple-object.h" and "intl.h".
461 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
462 (GO_EXPORT_SECTION_NAME): Likewise.
463 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
464 (go_read_export_data): New function.
465 * go-c.h (go_read_export_data): Declare.
467 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
468 Ian Lance Taylor <iant@google.com>
470 * go-location.h: New file.
471 * go-linemap.cc: New file.
472 * go-gcc.cc: Change all uses of source_location to Location.
473 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
474 (GO_LINEMAP_H): New variable.
475 (GO_LEX_H): Use $(GO_LINEMAP_H).
476 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
477 (go/go-linemap.o): New target.
479 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
481 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
483 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
485 * lang.opt: Add fgo-optimize-.
486 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
487 * go-c.h (go_enable_optimize): Declare.
488 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
489 (GO_EXPORT_H): Define.
490 (GO_IMPORT_H): Add $(GO_EXPORT_H).
491 (GO_AST_DUMP_H): Define.
492 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
493 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
494 (go/types.o): Likewise.
495 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
496 (go/go-optimize.o): New target.
498 2011-08-24 Joseph Myers <joseph@codesourcery.com>
500 * Make-lang.in (CFLAGS-go/go-lang.o): New.
501 (go/go-lang.o): Remove explicit compilation rule.
503 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
505 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
507 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
509 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
510 (go/ast-dump.o): New target.
511 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
512 (go/statements.o): Likewise.
514 2011-07-06 Richard Guenther <rguenther@suse.de>
516 * go-lang.c (go_langhook_init):
517 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
519 2011-06-14 Joseph Myers <joseph@codesourcery.com>
521 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
523 * go-backend.c: Include common/common-target.h.
524 (go_write_export_data): Use targetm_common.have_named_sections.
525 * go-lang.c: Include common/common-target.h.
526 (go_langhook_init_options_struct): Use
527 targetm_common.supports_split_stack.
529 2011-06-13 Ian Lance Taylor <iant@google.com>
531 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
533 2011-06-10 Ian Lance Taylor <iant@google.com>
535 * go-gcc.cc: Include "toplev.h".
536 (Gcc_backend::immutable_struct): New function.
537 (Gcc_backend::immutable_struct_set_init): New function.
538 (Gcc_backend::immutable_struct_reference): New function.
539 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
541 2011-06-09 Ian Lance Taylor <iant@google.com>
543 * go-gcc.cc (Gcc_backend::zero_expression): New function.
545 2011-06-07 Richard Guenther <rguenther@suse.de>
547 * go-lang.c (go_langhook_init): Do not set
548 size_type_node or call set_sizetype.
550 2011-05-27 Ian Lance Taylor <iant@google.com>
552 * go-backend.c: Include "output.h".
553 (go_write_export_data): New function.
554 * go-c.h (go_write_export_data): Declare.
555 * Make-lang.in (go/go-backend.o): Depend on output.h.
556 (go/export.o): Depend on $(GO_C_H). Do not depend on
557 $(MACHMODE_H), output.h, or $(TARGET_H).
559 2011-05-24 Joseph Myers <joseph@codesourcery.com>
561 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
562 (gccgo$(exeext)): Use libcommon-target.a.
564 2011-05-20 Joseph Myers <joseph@codesourcery.com>
566 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
568 2011-05-13 Ian Lance Taylor <iant@google.com>
570 * go-gcc.cc (Gcc_backend::function_type): When building a struct
571 for multiple results, check that all fields types have a size.
572 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
574 2011-05-12 Ian Lance Taylor <iant@google.com>
576 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
578 (Gcc_backend::parameter_variable): Likewise.
580 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
582 * go-lang.c (global_bindings_p): Return bool and simplify.
584 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
586 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
588 2011-05-04 Ian Lance Taylor <iant@google.com>
590 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
591 (Gcc_backend::fill_in_struct): New function.
592 (Gcc_backend::array_type): Implement.
593 (Gcc_backend::fill_in_array): New function.
594 (Gcc_backend::placeholder_pointer_type): New function.
595 (Gcc_backend::set_placeholder_pointer_type): New function.
596 (Gcc_backend::set_placeholder_function_type): New function.
597 (Gcc_backend::placeholder_struct_type): New function.
598 (Gcc_backend::set_placeholder_struct_type): New function.
599 (Gcc_backend::placeholder_array_type): New function.
600 (Gcc_backend::set_placeholder_array_type): New function.
601 (Gcc_backend::named_type): New function.
602 (Gcc_backend::circular_pointer_type): New function.
603 (Gcc_backend::is_circular_pointer_type): New function.
605 2011-04-26 Ian Lance Taylor <iant@google.com>
607 * go-gcc.cc (Gcc_backend::struct_type): Implement.
609 2011-04-25 Ian Lance Taylor <iant@google.com>
611 * go-gcc.cc (Gcc_backend::error_type): Implement.
612 (Gcc_backend::string_type): Remove.
613 (Gcc_backend::function_type): Change signature and implement.
614 (Gcc_backend::struct_type): Change signature.
615 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
616 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
617 (Gcc_backend::pointer_type): Check for error.
618 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
620 2011-04-25 Evan Shaw <edsrzf@gmail.com>
622 * go-gcc.c (class Gcc_tree): Make get_tree const.
623 (Gcc_backend::void_type): Implement.
624 (Gcc_backend::bool_type): Implement.
625 (Gcc_backend::integer_type): Implement.
626 (Gcc_backend::float_type): Implement.
627 (Gcc_backend::complex_type): New function.
628 (Gcc_backend::pointer_type): New function.
629 (Gcc_backend::make_type): New function.
630 (type_to_tree): New function.
632 2011-04-21 Ian Lance Taylor <iant@google.com>
634 * go-system.h (go_assert, go_unreachable): Define.
636 2011-04-19 Ian Lance Taylor <iant@google.com>
638 * go-system.h: Include "intl.h".
639 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
640 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
641 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
643 2011-04-19 Ian Lance Taylor <iant@google.com>
645 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
647 2011-04-19 Ian Lance Taylor <iant@google.com>
649 * go-gcc.cc (class Bblock): Define.
650 (Gcc_backend::if_statement): Change then_block and else_block to
652 (Gcc_backend::block): New function.
653 (Gcc_backend::block_add_statements): New function.
654 (Gcc_backend::block_statement): New function.
655 (tree_to_block, block_to_tree): New functions.
657 2011-04-18 Ian Lance Taylor <iant@google.com>
659 * go-gcc.cc: Include "go-c.h".
660 (class Bvariable): Define.
661 (Gcc_backend::init_statement): New function.
662 (Gcc_backend::global_variable): New function.
663 (Gcc_backend::global_variable_set_init): New function.
664 (Gcc_backend::local_variable): New function.
665 (Gcc_backend::parameter_variable): New function.
666 (tree_to_type, var_to_tree): New functions.
667 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
668 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
670 2011-04-15 Ian Lance Taylor <iant@google.com>
672 * go-gcc.cc (Gcc_backend::compound_statement): New function.
673 (Gcc_backend::assignment_statement): Use error_statement.
674 (Gcc_backend::return_statement): Likewise.
675 (Gcc_backend::if_statement): Likewise.
676 (Gcc_backend::switch_statement): Likewise.
677 (Gcc_backend::statement_list): Likewise.
679 2011-04-14 Ian Lance Taylor <iant@google.com>
681 * go-gcc.cc (Gcc_backend::error_statement): New function.
683 2011-04-13 Ian Lance Taylor <iant@google.com>
685 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
687 2011-04-13 Ian Lance Taylor <iant@google.com>
689 * Make-lang.in (GO_OBJS): Add go/runtime.o.
690 (GO_RUNTIME_H): New variable.
691 (go/runtime.o): New target.
692 (go/gogo.o): Depend on $(GO_RUNTIME_H).
693 (go/statements.o): Likewise.
695 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
697 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
700 2011-04-06 Ian Lance Taylor <iant@google.com>
702 * go-gcc.cc (if_statement): Use build3_loc.
703 (Gcc_backend::switch_statement): New function.
704 (Gcc_backend::statement_list): New function.
706 2011-04-06 Ian Lance Taylor <iant@google.com>
708 * go-gcc.cc (Gcc_backend::if_statement): New function.
709 (tree_to_stat): New function.
710 (expr_to_tree): Renamed from expression_to_tree.
711 (stat_to_tree): Renamed from statement_to_tree.
713 2011-04-06 Ian Lance Taylor <iant@google.com>
715 * go-gcc.cc (Gcc_backend::expression_statement): New function.
717 2011-04-04 Ian Lance Taylor <iant@google.com>
719 * go-gcc.c (class Blabel): Define.
720 (Gcc_backend::make_expression): New function.
721 (get_identifier_from_string): New function.
722 (Gcc_backend::label): New function.
723 (Gcc_backend::label_definition_statement): New function.
724 (Gcc_backend::goto_statement): New function.
725 (Gcc_backend::label_address): New function.
726 (expression_to_tree): New function.
727 * Make-lang.in (go/expressions.o): Depend on
728 go/gofrontend/backend.h.
729 (go/gogo.o): Likewise.
731 2011-04-04 Ian Lance Taylor <iant@google.com>
733 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
734 (class Bfunction): Define.
735 (Gcc_backend::assignment_statement): Rename from assignment.
737 (Gcc_backend::return_statement): New function.
738 (tree_to_function): New function.
739 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
740 $(GIMPLE_H), and $(GO_GOGO_H).
742 2011-04-03 Ian Lance Taylor <iant@google.com>
744 * go-gcc.cc: New file.
745 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
746 (go/go-gcc.o): New target.
747 (go/go.o): Depend on go/gofrontend/backend.h.
748 (go/statements.o): Likewise.
750 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
752 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
754 2011-02-08 Ian Lance Taylor <iant@google.com>
756 * go-lang.c (go_langhook_init_options_struct): Set
757 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
759 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
761 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
762 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
764 2011-01-21 Ian Lance Taylor <iant@google.com>
766 * go-lang.c (go_langhook_init): Omit float_type_size when calling
768 * go-c.h: Update declaration of go_create_gogo.
770 2011-01-13 Ian Lance Taylor <iant@google.com>
772 * go-backend.c: Include "rtl.h" and "target.h".
773 (go_imported_unsafe): New function.
774 * go-c.h (go_imported_unsafe): Declare.
775 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
776 (go/gogo-tree.o): Remove dependency on $(RTL_H).
777 (go/unsafe.o): Depend on $(GO_C_H).
779 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
782 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
785 2010-12-21 Ian Lance Taylor <iant@google.com>
787 * Make-lang.in (check-go): Remove.
788 (lang_checks_parallelized): Add check-go.
789 (check_go_parallelize): Set.
791 2010-12-13 Ian Lance Taylor <iant@google.com>
793 * gospec.c (lang_specific_driver): Add a -o option if not linking
794 and there is no -o option already.
796 2010-12-07 Ian Lance Taylor <iant@google.com>
798 PR tree-optimization/46805
799 PR tree-optimization/46833
800 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
802 2010-12-06 Ian Lance Taylor <iant@google.com>
806 * go-lang.c (go_char_p): Define type and vectors.
807 (go_search_dirs): New static variable.
808 (go_langhook_handle_option): Use version and version/machine
810 (go_langhook_post_options): Add non-specific -L paths.
811 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
812 DEFAULT_TARGET_MACHINE when compiling.
813 * gccgo.texi (Invoking gccgo): Only document -L for linking.
814 (Import and Export): Don't mention -L for finding import files.
816 2010-12-03 Ian Lance Taylor <iant@google.com>
819 * go-backend.c: New file.
820 * go-c.h (go_type_alignment): Declare.
821 (go_field_alignment, go_trampoline_info): Declare.
822 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
823 (go/go-backend.o): New target.
824 (go/go-lang.o): Make dependencies match source file.
825 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
826 (go/gogo-tree.o): Don't depend on $(TM_H).
828 2010-12-03 Ian Lance Taylor <iant@google.com>
830 * config-lang.in (build_by_default): Set to no.
832 2010-12-02 Ian Lance Taylor <iant@google.com>
834 Go frontend added to gcc repository.
836 Copyright (C) 2010-2014 Free Software Foundation, Inc.
838 Copying and distribution of this file, with or without modification,
839 are permitted in any medium without royalty provided the copyright
840 notice and this notice are preserved.