1 2014-05-06 Chris Manghane <cmang@google.com>
3 * go-c.h (go_create_gogo): Update declaration to add
4 check_divide_zero and check_divide_overflow parameters.
5 * go-lang.c (go_langhook_init): Pass new arguments to
8 2014-05-05 Chris Manghane <cmang@google.com>
10 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
11 gc_root_variable. Add name and is_constant parameters.
13 2014-05-05 Chris Manghane <cmang@google.com>
15 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
17 (Gcc_backend::temporary_variable): Check for erroneous function.
19 2014-04-30 Chris Manghane <cmang@google.com>
21 * go-backend.c: #include "diagnostics.h".
22 (saw_errors): New function.
23 * go-c.h (saw_errors): Declare.
24 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
26 2014-04-30 Chris Manghane <cmang@google.com>
28 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
29 calling into Go frontend.
30 (go_langhook_type_for_mode): Likewise.
31 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
33 2014-04-30 Chris Manghane <cmang@google.com>
35 * go-gcc.cc: #include "langhooks.h".
36 (Gcc_backend::Gcc_backend): Add constructor.
37 (Gcc_backend::lookup_function): New function.
38 (Gcc_backend::define_builtin): New private function.
39 (Gcc_backend::gcc_backend): Remove.
40 (go_get_backend): Use new to create new Gcc_backend.
42 2014-04-25 Chris Manghane <cmang@google.com>
44 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
45 (Gcc_backend::return_statement): Push and pop function.
46 (Gcc_backend::label): Likewise.
47 (Gcc_backend::function_defer_statement): Likewise.
48 (Gcc_backend::switch_statement): Add function parameter.
49 (Gcc_backend::block): Don't permit function to be NULL.
50 (Gcc_backend::temporary_variable): Change go_assert to
52 (Gcc_backend::gc_root_variable): New function.
53 (Gcc_backend::write_global_definitions): New function.
55 2014-04-22 Chris Manghane <cmang@google.com>
57 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
58 call to create_tmp_var. Require that function be non-NULL.
60 2014-04-17 Chris Manghane <cmang@google.com>
62 * go-gcc.cc (Gcc_backend::named_constant_expression): New
65 2014-04-14 Chris Manghane <cmang@google.com>
67 * go-gcc.cc: Include "convert.h".
68 (Gcc_backend::string_constant_expression): New function.
69 (Gcc_backend::real_part_expression): Likewise.
70 (Gcc_backend::imag_part_expression): Likewise.
71 (Gcc_backend::complex_expression): Likewise.
72 (Gcc_backend::constructor_expression): Likewise.
73 (Gcc_backend::array_constructor_expression): Likewise.
74 (Gcc_backend::pointer_offset_expression): Likewise.
75 (Gcc_backend::array_index_expression): Likewise.
76 (Gcc_backend::call_expression): Likewise.
77 (Gcc_backend::exception_handler_statement): Likewise.
78 (Gcc_backend::function_defer_statement): Likewise.
79 (Gcc_backend::function_set_parameters): Likewise.
80 (Gcc_backend::function_set_body): Likewise.
81 (Gcc_backend::convert_expression): Handle various type
84 2014-03-03 Ian Lance Taylor <iant@google.com>
86 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
88 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
91 2014-01-24 Chris Manghane <cmang@google.com>
93 * go-gcc.cc (Gcc_backend::unary_expression): New function.
95 2014-01-16 Chris Manghane <cmang@google.com>
97 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
99 (operator_to_tree_code): New static function.
100 (Gcc_backend::binary_expression): New function.
102 2014-01-14 Chris Manghane <cmang@google.com>
104 * go-gcc.cc (Gcc_backend::compound_expression): New function.
105 (Gcc_backend::conditional_expression): New function.
107 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
109 Update copyright years
111 2014-01-02 Tobias Burnus <burnus@net-b.de>
113 * gccgo.texi: Bump @copying's copyright year.
115 2013-12-16 Chris Manghane <cmang@google.com>
117 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
119 2013-12-11 Ian Lance Taylor <iant@google.com>
121 * go-lang.c (go_langhook_post_options): Disable sibling calls by
124 2013-12-10 Ian Lance Taylor <iant@google.com>
126 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
129 2013-12-05 Ian Lance Taylor <iant@google.com>
131 Revert this change; no longer required.
132 2013-11-06 Ian Lance Taylor <iant@google.com>
134 * go-lang.c (go_langhook_post_options): If
135 -fisolate-erroneous-paths was turned on by an optimization option,
138 2013-11-23 Ian Lance Taylor <iant@google.com>
140 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
143 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
145 * go-gcc.cc: Add required include files from gimple.h.
146 * go-lang.c: Likewise
148 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
150 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
151 tree_to_shwi throughout.
153 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
155 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
156 tree_fits_shwi_p throughout.
158 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
160 * go-lang.c: Include only gimplify.h and gimple.h as needed.
162 2013-11-14 Diego Novillo <dnovillo@google.com>
164 * go-backend.c: Include stor-layout.h.
165 * go-gcc.cc: Include stringpool.h.
166 Include stor-layout.h.
168 * go-lang.c: Include stor-layout.h.
170 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
172 * go-lang.c: Include gimplify.h.
174 2013-11-06 Ian Lance Taylor <iant@google.com>
176 * go-lang.c (go_langhook_post_options): If
177 -fisolate-erroneous-paths was turned on by an optimization option,
180 2013-10-14 Chris Manghane <cmang@google.com>
182 * go-gcc.cc (Gcc_backend::address_expression): New function.
184 2013-10-11 Chris Manghane <cmang@google.com>
186 * go-gcc.cc (Gcc_backend::function_code_expression): New
189 2013-10-10 Chris Manghane <cmang@google.com>
191 * go-gcc.cc (Gcc_backend::error_function): New function.
192 (Gcc_backend::function): New function.
193 (Gcc_backend::make_function): New function.
194 (function_to_tree): New function.
196 2013-10-04 Chris Manghane <cmang@google.com>
198 * go-gcc.cc (Gcc_backend::convert_expression): New function.
200 2013-10-02 Chris Manghane <cmang@google.com>
202 * go-gcc.cc: Include "real.h" and "realmpfr.h".
203 (Gcc_backend::integer_constant_expression): New function.
204 (Gcc_backend::float_constant_expression): New function.
205 (Gcc_backend::complex_constant_expression): New function.
207 2013-09-30 Chris Manghane <cmang@google.com>
209 * go-gcc.cc (Gcc_backend::error_expression): New function.
210 (Gcc_backend::var_expression): New function.
211 (Gcc_backend::indirect_expression): New function.
213 2013-09-25 Tom Tromey <tromey@redhat.com>
215 * Make-lang.in (gospec.o): Remove.
216 (CFLAGS-go/gospec.o): New variable.
217 (GCCGO_OBJS): Update to use go/gospec.o.
219 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
220 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
221 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
222 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
223 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
224 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
225 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
226 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
227 (go/unsafe.o): Remove.
228 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
229 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
231 2013-09-25 Tom Tromey <tromey@redhat.com>
233 * Make-lang.in (gospec.o): Don't use subshell.
235 2013-08-28 Ian Lance Taylor <iant@google.com>
237 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
238 the struct is not hidden.
239 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
241 2013-08-06 Ian Lance Taylor <iant@google.com>
243 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
244 compute_reloc_for_constant.
246 2013-08-02 Ian Lance Taylor <iant@google.com>
248 * go-gcc.cc (immutable_struct_set_init): Always call
249 resolve_unique_section.
251 2013-07-24 Ian Lance Taylor <iant@google.com>
253 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
254 fields, recreate those fields with the first one with a non-zero
257 2013-07-23 Ian Lance Taylor <iant@google.com>
259 * go-backend.c: Don't #include "rtl.h".
260 (go_imported_unsafe): Don't call init_varasm_once.
261 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
263 2013-07-23 Ian Lance Taylor <iant@google.com>
265 * go-lang.c: Don't #include "except.h".
266 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
268 2013-06-18 Ian Lance Taylor <iant@google.com>
270 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
272 (Gcc_backend::immutable_struct_set_init): Likewise.
274 2013-05-16 Jason Merrill <jason@redhat.com>
276 * Make-lang.in (go1$(exeext)): Use link mutex.
278 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
280 * gospec.c: pass -u pthread_create to linker when static linking.
282 2012-12-21 Ian Lance Taylor <iant@google.com>
285 * go-system.h: Don't include <cstdio>.
287 2012-12-18 Ian Lance Taylor <iant@google.com>
290 * gospec.c: Revert last patch.
292 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
295 * gospec.c (LIBATOMIC): Define.
296 (LIBATOMIC_PROFILE): Define.
297 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
299 2012-11-29 Ian Lance Taylor <iant@google.com>
301 * go-gcc.cc: Include "output.h".
302 (global_variable): Add is_unique_section parameter.
303 (global_variable_set_init): Adjust unique section if necessary.
304 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
306 2012-11-17 Diego Novillo <dnovillo@google.com>
308 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
310 * go-lang.c: Use new vec API in vec.h.
312 2012-11-16 Ian Lance Taylor <iant@google.com>
314 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
315 (go1$(exeext)): Likewise.
317 2012-10-30 Ian Lance Taylor <iant@google.com>
319 * lang.opt (-fgo-relative-import-path): New option.
320 * go-lang.c (go_relative_import_path): New static variable.
321 (go_langhook_init): Pass go_relative_import_path to
323 (go_langhook_handle_option): Handle -fgo-relative-import-path.
324 * go-c.h (go_create_gogo): Update declaration.
325 * gccgo.texi (Invoking gccgo): Document
326 -fgo-relative-import-path.
328 2012-09-17 Ian Lance Taylor <iant@google.com>
330 * config-lang.in (target_libs): Add target-libbacktrace.
332 2012-09-16 Ian Lance Taylor <iant@google.com>
334 * Make-lang.in (go/gogo.o): Depend on filenames.h.
336 2012-08-14 Diego Novillo <dnovillo@google.com>
338 Merge from cxx-conversion branch. Configury.
340 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
341 * go-gcc.cc: Likewise.
342 * go-system.h: Likewise.
344 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
346 * go-lang.c (lang_decl): Add variable_size GTY option.
348 2012-05-09 Ian Lance Taylor <iant@google.com>
350 * lang.opt: Add -fgo-pkgpath.
351 * go-lang.c (go_pkgpath): New static variable.
352 (go_prefix): New static variable.
353 (go_langhook_init): Pass go_pkgpath and go_prefix to
355 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
356 -fgo-prefix handling to just set go_prefix.
357 * go-c.h (go_set_prefix): Don't declare.
358 (go_create_gogo): Add pkgpath and prefix to declaration.
359 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
360 to pkgpath. Don't include the package name in the asm name.
361 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
362 docs for -fgo-prefix.
364 2012-04-23 Ian Lance Taylor <iant@google.com>
366 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
368 2012-04-20 Ian Lance Taylor <iant@google.com>
370 * lang.opt: Add -fgo-check-divide-zero and
371 -fgo-check-divide-overflow.
372 * gccgo.texi (Invoking gccgo): Document new options.
374 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
376 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
377 with NULL_TREE type instead of void_type_node.
379 2012-03-09 Ian Lance Taylor <iant@google.com>
381 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
382 to the lhs type if necessary.
384 2012-03-08 Ian Lance Taylor <iant@google.com>
386 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
388 (go_non_zero_struct): New global variable.
389 (Gcc_backend::non_zero_size_type): New function.
390 (Gcc_backend::global_variable): Don't build an assignment for a
392 * go-c.h (go_non_zero_struct): Declare.
393 * config-lang.in (gtfiles): Add go-c.h.
395 2012-02-29 Ian Lance Taylor <iant@google.com>
397 * go-gcc.cc (class Gcc_tree): Add set_tree method.
398 (set_placeholder_pointer_type): When setting to a pointer to
399 error, set to error_mark_node.
401 2012-02-23 Richard Guenther <rguenther@suse.de>
403 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
404 build_distinct_type_copy.
406 2012-02-17 Ian Lance Taylor <iant@google.com>
408 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
410 2012-02-17 Ian Lance Taylor <iant@google.com>
412 * gospec.c (lang_specific_driver): If linking, and no -o option
415 2012-02-14 Ian Lance Taylor <iant@google.com>
418 * Make-lang.in (gccgo-cross$(exeext)): New target.
419 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
421 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
422 gccgo-cross$(exeext) does not exist.
424 2012-02-07 Ian Lance Taylor <iant@google.com>
426 * gccgo.texi (Function Names): Document //extern instead of
429 2012-02-01 Jakub Jelinek <jakub@redhat.com>
432 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
433 return build_nonstandard_integer_type result if possible.
435 2012-01-21 Ian Lance Taylor <iant@google.com>
437 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
438 (Gcc_backend::type_alignment): Likewise.
439 (Gcc_backend::type_field_alignment): Likewise.
440 (Gcc_backend::type_field_offset): Likewise.
442 2012-01-20 Ian Lance Taylor <iant@google.com>
444 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
446 (Gcc_backend::set_placeholder_struct_type): Likewise.
448 2012-01-17 Ian Lance Taylor <iant@google.com>
450 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
451 BASE.s rather than -o BASE.o.
453 2012-01-11 Ian Lance Taylor <iant@google.com>
455 * go-lang.c (go_langhook_init): Initialize void_list_node before
456 calling go_create_gogo.
458 2012-01-10 Ian Lance Taylor <iant@google.com>
460 * go-gcc.cc (Gcc_backend::type_size): New function.
461 (Gcc_backend::type_alignment): New function.
462 (Gcc_backend::type_field_alignment): New function.
463 (Gcc_backend::type_field_offset): New function.
464 * go-backend.c (go_type_alignment): Remove.
465 * go-c.h (go_type_alignment): Don't declare.
467 2011-12-27 Ian Lance Taylor <iant@google.com>
469 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
470 build_distinct_type_copy rather than build_variant_type_copy.
471 (Gcc_backend::set_placeholder_array_type): Likewise.
472 (Gcc_backend::named_type): Add special handling for builtin
475 2011-12-22 Ian Lance Taylor <iant@google.com>
477 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
478 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
479 (Gcc_backend::set_placeholder_struct_type): Likewise.
480 (Gcc_backend::set_placeholder_array_type): Likewise.
481 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
483 2011-12-13 Ian Lance Taylor <iant@google.com>
485 * go-backend.c: #include "simple-object.h" and "intl.h".
486 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
487 (GO_EXPORT_SECTION_NAME): Likewise.
488 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
489 (go_read_export_data): New function.
490 * go-c.h (go_read_export_data): Declare.
492 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
493 Ian Lance Taylor <iant@google.com>
495 * go-location.h: New file.
496 * go-linemap.cc: New file.
497 * go-gcc.cc: Change all uses of source_location to Location.
498 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
499 (GO_LINEMAP_H): New variable.
500 (GO_LEX_H): Use $(GO_LINEMAP_H).
501 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
502 (go/go-linemap.o): New target.
504 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
506 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
508 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
510 * lang.opt: Add fgo-optimize-.
511 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
512 * go-c.h (go_enable_optimize): Declare.
513 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
514 (GO_EXPORT_H): Define.
515 (GO_IMPORT_H): Add $(GO_EXPORT_H).
516 (GO_AST_DUMP_H): Define.
517 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
518 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
519 (go/types.o): Likewise.
520 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
521 (go/go-optimize.o): New target.
523 2011-08-24 Joseph Myers <joseph@codesourcery.com>
525 * Make-lang.in (CFLAGS-go/go-lang.o): New.
526 (go/go-lang.o): Remove explicit compilation rule.
528 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
530 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
532 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
534 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
535 (go/ast-dump.o): New target.
536 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
537 (go/statements.o): Likewise.
539 2011-07-06 Richard Guenther <rguenther@suse.de>
541 * go-lang.c (go_langhook_init):
542 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
544 2011-06-14 Joseph Myers <joseph@codesourcery.com>
546 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
548 * go-backend.c: Include common/common-target.h.
549 (go_write_export_data): Use targetm_common.have_named_sections.
550 * go-lang.c: Include common/common-target.h.
551 (go_langhook_init_options_struct): Use
552 targetm_common.supports_split_stack.
554 2011-06-13 Ian Lance Taylor <iant@google.com>
556 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
558 2011-06-10 Ian Lance Taylor <iant@google.com>
560 * go-gcc.cc: Include "toplev.h".
561 (Gcc_backend::immutable_struct): New function.
562 (Gcc_backend::immutable_struct_set_init): New function.
563 (Gcc_backend::immutable_struct_reference): New function.
564 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
566 2011-06-09 Ian Lance Taylor <iant@google.com>
568 * go-gcc.cc (Gcc_backend::zero_expression): New function.
570 2011-06-07 Richard Guenther <rguenther@suse.de>
572 * go-lang.c (go_langhook_init): Do not set
573 size_type_node or call set_sizetype.
575 2011-05-27 Ian Lance Taylor <iant@google.com>
577 * go-backend.c: Include "output.h".
578 (go_write_export_data): New function.
579 * go-c.h (go_write_export_data): Declare.
580 * Make-lang.in (go/go-backend.o): Depend on output.h.
581 (go/export.o): Depend on $(GO_C_H). Do not depend on
582 $(MACHMODE_H), output.h, or $(TARGET_H).
584 2011-05-24 Joseph Myers <joseph@codesourcery.com>
586 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
587 (gccgo$(exeext)): Use libcommon-target.a.
589 2011-05-20 Joseph Myers <joseph@codesourcery.com>
591 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
593 2011-05-13 Ian Lance Taylor <iant@google.com>
595 * go-gcc.cc (Gcc_backend::function_type): When building a struct
596 for multiple results, check that all fields types have a size.
597 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
599 2011-05-12 Ian Lance Taylor <iant@google.com>
601 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
603 (Gcc_backend::parameter_variable): Likewise.
605 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
607 * go-lang.c (global_bindings_p): Return bool and simplify.
609 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
611 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
613 2011-05-04 Ian Lance Taylor <iant@google.com>
615 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
616 (Gcc_backend::fill_in_struct): New function.
617 (Gcc_backend::array_type): Implement.
618 (Gcc_backend::fill_in_array): New function.
619 (Gcc_backend::placeholder_pointer_type): New function.
620 (Gcc_backend::set_placeholder_pointer_type): New function.
621 (Gcc_backend::set_placeholder_function_type): New function.
622 (Gcc_backend::placeholder_struct_type): New function.
623 (Gcc_backend::set_placeholder_struct_type): New function.
624 (Gcc_backend::placeholder_array_type): New function.
625 (Gcc_backend::set_placeholder_array_type): New function.
626 (Gcc_backend::named_type): New function.
627 (Gcc_backend::circular_pointer_type): New function.
628 (Gcc_backend::is_circular_pointer_type): New function.
630 2011-04-26 Ian Lance Taylor <iant@google.com>
632 * go-gcc.cc (Gcc_backend::struct_type): Implement.
634 2011-04-25 Ian Lance Taylor <iant@google.com>
636 * go-gcc.cc (Gcc_backend::error_type): Implement.
637 (Gcc_backend::string_type): Remove.
638 (Gcc_backend::function_type): Change signature and implement.
639 (Gcc_backend::struct_type): Change signature.
640 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
641 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
642 (Gcc_backend::pointer_type): Check for error.
643 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
645 2011-04-25 Evan Shaw <edsrzf@gmail.com>
647 * go-gcc.c (class Gcc_tree): Make get_tree const.
648 (Gcc_backend::void_type): Implement.
649 (Gcc_backend::bool_type): Implement.
650 (Gcc_backend::integer_type): Implement.
651 (Gcc_backend::float_type): Implement.
652 (Gcc_backend::complex_type): New function.
653 (Gcc_backend::pointer_type): New function.
654 (Gcc_backend::make_type): New function.
655 (type_to_tree): New function.
657 2011-04-21 Ian Lance Taylor <iant@google.com>
659 * go-system.h (go_assert, go_unreachable): Define.
661 2011-04-19 Ian Lance Taylor <iant@google.com>
663 * go-system.h: Include "intl.h".
664 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
665 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
666 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
668 2011-04-19 Ian Lance Taylor <iant@google.com>
670 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
672 2011-04-19 Ian Lance Taylor <iant@google.com>
674 * go-gcc.cc (class Bblock): Define.
675 (Gcc_backend::if_statement): Change then_block and else_block to
677 (Gcc_backend::block): New function.
678 (Gcc_backend::block_add_statements): New function.
679 (Gcc_backend::block_statement): New function.
680 (tree_to_block, block_to_tree): New functions.
682 2011-04-18 Ian Lance Taylor <iant@google.com>
684 * go-gcc.cc: Include "go-c.h".
685 (class Bvariable): Define.
686 (Gcc_backend::init_statement): New function.
687 (Gcc_backend::global_variable): New function.
688 (Gcc_backend::global_variable_set_init): New function.
689 (Gcc_backend::local_variable): New function.
690 (Gcc_backend::parameter_variable): New function.
691 (tree_to_type, var_to_tree): New functions.
692 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
693 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
695 2011-04-15 Ian Lance Taylor <iant@google.com>
697 * go-gcc.cc (Gcc_backend::compound_statement): New function.
698 (Gcc_backend::assignment_statement): Use error_statement.
699 (Gcc_backend::return_statement): Likewise.
700 (Gcc_backend::if_statement): Likewise.
701 (Gcc_backend::switch_statement): Likewise.
702 (Gcc_backend::statement_list): Likewise.
704 2011-04-14 Ian Lance Taylor <iant@google.com>
706 * go-gcc.cc (Gcc_backend::error_statement): New function.
708 2011-04-13 Ian Lance Taylor <iant@google.com>
710 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
712 2011-04-13 Ian Lance Taylor <iant@google.com>
714 * Make-lang.in (GO_OBJS): Add go/runtime.o.
715 (GO_RUNTIME_H): New variable.
716 (go/runtime.o): New target.
717 (go/gogo.o): Depend on $(GO_RUNTIME_H).
718 (go/statements.o): Likewise.
720 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
722 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
725 2011-04-06 Ian Lance Taylor <iant@google.com>
727 * go-gcc.cc (if_statement): Use build3_loc.
728 (Gcc_backend::switch_statement): New function.
729 (Gcc_backend::statement_list): New function.
731 2011-04-06 Ian Lance Taylor <iant@google.com>
733 * go-gcc.cc (Gcc_backend::if_statement): New function.
734 (tree_to_stat): New function.
735 (expr_to_tree): Renamed from expression_to_tree.
736 (stat_to_tree): Renamed from statement_to_tree.
738 2011-04-06 Ian Lance Taylor <iant@google.com>
740 * go-gcc.cc (Gcc_backend::expression_statement): New function.
742 2011-04-04 Ian Lance Taylor <iant@google.com>
744 * go-gcc.c (class Blabel): Define.
745 (Gcc_backend::make_expression): New function.
746 (get_identifier_from_string): New function.
747 (Gcc_backend::label): New function.
748 (Gcc_backend::label_definition_statement): New function.
749 (Gcc_backend::goto_statement): New function.
750 (Gcc_backend::label_address): New function.
751 (expression_to_tree): New function.
752 * Make-lang.in (go/expressions.o): Depend on
753 go/gofrontend/backend.h.
754 (go/gogo.o): Likewise.
756 2011-04-04 Ian Lance Taylor <iant@google.com>
758 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
759 (class Bfunction): Define.
760 (Gcc_backend::assignment_statement): Rename from assignment.
762 (Gcc_backend::return_statement): New function.
763 (tree_to_function): New function.
764 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
765 $(GIMPLE_H), and $(GO_GOGO_H).
767 2011-04-03 Ian Lance Taylor <iant@google.com>
769 * go-gcc.cc: New file.
770 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
771 (go/go-gcc.o): New target.
772 (go/go.o): Depend on go/gofrontend/backend.h.
773 (go/statements.o): Likewise.
775 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
777 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
779 2011-02-08 Ian Lance Taylor <iant@google.com>
781 * go-lang.c (go_langhook_init_options_struct): Set
782 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
784 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
786 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
787 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
789 2011-01-21 Ian Lance Taylor <iant@google.com>
791 * go-lang.c (go_langhook_init): Omit float_type_size when calling
793 * go-c.h: Update declaration of go_create_gogo.
795 2011-01-13 Ian Lance Taylor <iant@google.com>
797 * go-backend.c: Include "rtl.h" and "target.h".
798 (go_imported_unsafe): New function.
799 * go-c.h (go_imported_unsafe): Declare.
800 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
801 (go/gogo-tree.o): Remove dependency on $(RTL_H).
802 (go/unsafe.o): Depend on $(GO_C_H).
804 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
807 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
810 2010-12-21 Ian Lance Taylor <iant@google.com>
812 * Make-lang.in (check-go): Remove.
813 (lang_checks_parallelized): Add check-go.
814 (check_go_parallelize): Set.
816 2010-12-13 Ian Lance Taylor <iant@google.com>
818 * gospec.c (lang_specific_driver): Add a -o option if not linking
819 and there is no -o option already.
821 2010-12-07 Ian Lance Taylor <iant@google.com>
823 PR tree-optimization/46805
824 PR tree-optimization/46833
825 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
827 2010-12-06 Ian Lance Taylor <iant@google.com>
831 * go-lang.c (go_char_p): Define type and vectors.
832 (go_search_dirs): New static variable.
833 (go_langhook_handle_option): Use version and version/machine
835 (go_langhook_post_options): Add non-specific -L paths.
836 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
837 DEFAULT_TARGET_MACHINE when compiling.
838 * gccgo.texi (Invoking gccgo): Only document -L for linking.
839 (Import and Export): Don't mention -L for finding import files.
841 2010-12-03 Ian Lance Taylor <iant@google.com>
844 * go-backend.c: New file.
845 * go-c.h (go_type_alignment): Declare.
846 (go_field_alignment, go_trampoline_info): Declare.
847 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
848 (go/go-backend.o): New target.
849 (go/go-lang.o): Make dependencies match source file.
850 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
851 (go/gogo-tree.o): Don't depend on $(TM_H).
853 2010-12-03 Ian Lance Taylor <iant@google.com>
855 * config-lang.in (build_by_default): Set to no.
857 2010-12-02 Ian Lance Taylor <iant@google.com>
859 Go frontend added to gcc repository.
861 Copyright (C) 2010-2014 Free Software Foundation, Inc.
863 Copying and distribution of this file, with or without modification,
864 are permitted in any medium without royalty provided the copyright
865 notice and this notice are preserved.