]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/go/ChangeLog
configure.ac (host_tools): Add gotools.
[thirdparty/gcc.git] / gcc / go / ChangeLog
1 2015-01-09 Ian Lance Taylor <iant@google.com>
2
3 * config-lang.in (lang_dirs): Define.
4
5 2015-01-09 Michael Collison <michael.collison@linaro.org>
6
7 * go-gcc.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
8 input.h, alias.h, symtab.h, options.h, fold-const.h,
9 wide-int.h, and inchash.h due to flattening of tree.h.
10 * go-lang.c: Ditto.
11 * go-backend.c: Ditto.
12
13 2015-01-07 Chris Manghane <cmang@google.com>
14
15 PR go/61204
16 * go-gcc.cc (Gcc_backend::temporary_variable): Don't initialize
17 zero-sized variable.
18
19 2015-01-06 Chris Manghane <cmang@google.com>
20
21 * go-gcc.cc (Gcc_backend::constructor_expression): Don't
22 initialize zero-sized fields, just evaluate the values for side
23 effects.
24
25 2015-01-05 Jakub Jelinek <jakub@redhat.com>
26
27 Update copyright years.
28
29 * gccgo.texi: Bump @copyrights-go year.
30
31 2014-12-19 Chris Manghane <cmang@google.com>
32
33 * go-gcc.cc (Gcc_backend::array_constructor_expression): Don't
34 construct arrays of zero-sized values.
35
36 2014-10-29 Richard Sandiford <richard.sandiford@arm.com>
37
38 * go-lang.c: Remove redundant enum from machine_mode.
39
40 2014-10-28 Andrew MacLeod <amacleod@redhat.com>
41
42 * go-gcc.cc: Adjust include files.
43
44 2014-10-27 Andrew MacLeod <amacleod@redhat.com>
45
46 * go-gcc.cc: Adjust include files.
47 * go-lang.c: Ditto.
48
49 2014-10-23 Ian Lance Taylor <iant@google.com>
50
51 * go-gcc.cc (Gcc_backend::complex_constant_expression): Take one
52 mpc_t parameter instead of two mpfr_t parameters.
53
54 2014-09-15 Jakub Jelinek <jakub@redhat.com>
55
56 * Make-lang.in (check_go_parallelize): Change to just an upper bound
57 number.
58
59 2014-09-03 Chris Manghane <cmang@google.com>
60
61 * go-gcc.cc (Gcc_backend::implicit_variable): Remove init
62 parameter. Add is_hidden parameter.
63 (Gcc_backend::implicit_variable_set_init): New method.
64 (Gcc_backend::implicit_variable_reference): New method.
65
66 2014-08-08 Ian Lance Taylor <iant@google.com>
67
68 * go-gcc.cc (Gcc_backend::compound_statement): Don't return
69 NULL_TREE.
70
71 2014-07-24 Uros Bizjak <ubizjak@gmail.com>
72
73 * go-gcc.cc (Gcc_backend::global_variable_set_init): Rename
74 symtab_get_node to symtab_node::get.
75
76 2014-06-13 Ian Lance Taylor <iant@google.com>
77
78 PR go/61496
79 * gospec.c (lang_specific_driver): On Solaris, when not using GNU
80 ld, add -t option to avoid warning about common symbol changing
81 size.
82
83 2014-06-10 Jan Hubicka <hubicka@ucw.cz>
84
85 * go-gcc.cc (Gcc_backend::global_variable_set_init): Use
86 symtab_get_node(var_decl)->implicit_section.
87
88 2014-06-07 Jan Hubicka <hubicka@ucw.cz>
89
90 * go-gcc.cc (global_variable_set_init): Use
91 set_decl_section_name.
92
93 2014-06-04 Ian Lance Taylor <iant@google.com>
94
95 * go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
96 alignment parameters. Permit init parameter to be NULL.
97
98 2014-06-02 Andrew MacLeod <amacleod@redhat.com>
99
100 * go-gcc.cc: Include builtins.h.
101
102 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
103
104 * go-lang.c (struct GTY): Don't use variable_size gty attribute.
105
106 2014-05-06 Chris Manghane <cmang@google.com>
107
108 * go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
109 (Gcc_backend::boolean_constant_expression): New method.
110 (Gcc_backend::zero_expression): Use this->make_expression rather
111 than tree_to_expr.
112 (Gcc_backend::var_expression): Likewise.
113 (Gcc_backend::integer_constant_expression): Likewise.
114 (Gcc_backend::float_constant_expression): Likewise.
115 (Gcc_backend::complex_constant_expression): Likewise.
116 (Gcc_backend::struct_field_expression): Likewise.
117 (tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
118 (tree_to_function, tree_to_block): Remove functions.
119 (type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
120 (block_to_tree, var_to_tree, function_to_tree): Remove functions.
121
122 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
123 Mike Stump <mikestump@comcast.net>
124 Richard Sandiford <rdsandiford@googlemail.com>
125
126 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
127
128 2014-05-06 Chris Manghane <cmang@google.com>
129
130 * go-c.h (go_create_gogo): Update declaration to add
131 check_divide_zero and check_divide_overflow parameters.
132 * go-lang.c (go_langhook_init): Pass new arguments to
133 go_create_gogo.
134
135 2014-05-05 Chris Manghane <cmang@google.com>
136
137 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
138 gc_root_variable. Add name and is_constant parameters.
139
140 2014-05-05 Chris Manghane <cmang@google.com>
141
142 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
143 parameter.
144 (Gcc_backend::temporary_variable): Check for erroneous function.
145
146 2014-04-30 Chris Manghane <cmang@google.com>
147
148 * go-backend.c: #include "diagnostics.h".
149 (saw_errors): New function.
150 * go-c.h (saw_errors): Declare.
151 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
152
153 2014-04-30 Chris Manghane <cmang@google.com>
154
155 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
156 calling into Go frontend.
157 (go_langhook_type_for_mode): Likewise.
158 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
159
160 2014-04-30 Chris Manghane <cmang@google.com>
161
162 * go-gcc.cc: #include "langhooks.h".
163 (Gcc_backend::Gcc_backend): Add constructor.
164 (Gcc_backend::lookup_function): New function.
165 (Gcc_backend::define_builtin): New private function.
166 (Gcc_backend::gcc_backend): Remove.
167 (go_get_backend): Use new to create new Gcc_backend.
168
169 2014-04-25 Chris Manghane <cmang@google.com>
170
171 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
172 (Gcc_backend::return_statement): Push and pop function.
173 (Gcc_backend::label): Likewise.
174 (Gcc_backend::function_defer_statement): Likewise.
175 (Gcc_backend::switch_statement): Add function parameter.
176 (Gcc_backend::block): Don't permit function to be NULL.
177 (Gcc_backend::temporary_variable): Change go_assert to
178 gcc_assert.
179 (Gcc_backend::gc_root_variable): New function.
180 (Gcc_backend::write_global_definitions): New function.
181
182 2014-04-22 Chris Manghane <cmang@google.com>
183
184 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
185 call to create_tmp_var. Require that function be non-NULL.
186
187 2014-04-17 Chris Manghane <cmang@google.com>
188
189 * go-gcc.cc (Gcc_backend::named_constant_expression): New
190 function.
191
192 2014-04-14 Chris Manghane <cmang@google.com>
193
194 * go-gcc.cc: Include "convert.h".
195 (Gcc_backend::string_constant_expression): New function.
196 (Gcc_backend::real_part_expression): Likewise.
197 (Gcc_backend::imag_part_expression): Likewise.
198 (Gcc_backend::complex_expression): Likewise.
199 (Gcc_backend::constructor_expression): Likewise.
200 (Gcc_backend::array_constructor_expression): Likewise.
201 (Gcc_backend::pointer_offset_expression): Likewise.
202 (Gcc_backend::array_index_expression): Likewise.
203 (Gcc_backend::call_expression): Likewise.
204 (Gcc_backend::exception_handler_statement): Likewise.
205 (Gcc_backend::function_defer_statement): Likewise.
206 (Gcc_backend::function_set_parameters): Likewise.
207 (Gcc_backend::function_set_body): Likewise.
208 (Gcc_backend::convert_expression): Handle various type
209 conversions.
210
211 2014-03-03 Ian Lance Taylor <iant@google.com>
212
213 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
214 DECL_WEAK.
215 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
216 DECL_WEAK.
217
218 2014-01-24 Chris Manghane <cmang@google.com>
219
220 * go-gcc.cc (Gcc_backend::unary_expression): New function.
221
222 2014-01-16 Chris Manghane <cmang@google.com>
223
224 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
225 parameter.
226 (operator_to_tree_code): New static function.
227 (Gcc_backend::binary_expression): New function.
228
229 2014-01-14 Chris Manghane <cmang@google.com>
230
231 * go-gcc.cc (Gcc_backend::compound_expression): New function.
232 (Gcc_backend::conditional_expression): New function.
233
234 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
235
236 Update copyright years
237
238 2014-01-02 Tobias Burnus <burnus@net-b.de>
239
240 * gccgo.texi: Bump @copying's copyright year.
241
242 2013-12-16 Chris Manghane <cmang@google.com>
243
244 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
245
246 2013-12-11 Ian Lance Taylor <iant@google.com>
247
248 * go-lang.c (go_langhook_post_options): Disable sibling calls by
249 default.
250
251 2013-12-10 Ian Lance Taylor <iant@google.com>
252
253 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
254 separately.
255
256 2013-12-05 Ian Lance Taylor <iant@google.com>
257
258 Revert this change; no longer required.
259 2013-11-06 Ian Lance Taylor <iant@google.com>
260
261 * go-lang.c (go_langhook_post_options): If
262 -fisolate-erroneous-paths was turned on by an optimization option,
263 turn it off.
264
265 2013-11-23 Ian Lance Taylor <iant@google.com>
266
267 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
268 parameter.
269
270 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
271
272 * go-gcc.cc: Add required include files from gimple.h.
273 * go-lang.c: Likewise
274
275 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
276
277 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
278 tree_to_shwi throughout.
279
280 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
281
282 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
283 tree_fits_shwi_p throughout.
284
285 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
286
287 * go-lang.c: Include only gimplify.h and gimple.h as needed.
288
289 2013-11-14 Diego Novillo <dnovillo@google.com>
290
291 * go-backend.c: Include stor-layout.h.
292 * go-gcc.cc: Include stringpool.h.
293 Include stor-layout.h.
294 Include varasm.h.
295 * go-lang.c: Include stor-layout.h.
296
297 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
298
299 * go-lang.c: Include gimplify.h.
300
301 2013-11-06 Ian Lance Taylor <iant@google.com>
302
303 * go-lang.c (go_langhook_post_options): If
304 -fisolate-erroneous-paths was turned on by an optimization option,
305 turn it off.
306
307 2013-10-14 Chris Manghane <cmang@google.com>
308
309 * go-gcc.cc (Gcc_backend::address_expression): New function.
310
311 2013-10-11 Chris Manghane <cmang@google.com>
312
313 * go-gcc.cc (Gcc_backend::function_code_expression): New
314 function.
315
316 2013-10-10 Chris Manghane <cmang@google.com>
317
318 * go-gcc.cc (Gcc_backend::error_function): New function.
319 (Gcc_backend::function): New function.
320 (Gcc_backend::make_function): New function.
321 (function_to_tree): New function.
322
323 2013-10-04 Chris Manghane <cmang@google.com>
324
325 * go-gcc.cc (Gcc_backend::convert_expression): New function.
326
327 2013-10-02 Chris Manghane <cmang@google.com>
328
329 * go-gcc.cc: Include "real.h" and "realmpfr.h".
330 (Gcc_backend::integer_constant_expression): New function.
331 (Gcc_backend::float_constant_expression): New function.
332 (Gcc_backend::complex_constant_expression): New function.
333
334 2013-09-30 Chris Manghane <cmang@google.com>
335
336 * go-gcc.cc (Gcc_backend::error_expression): New function.
337 (Gcc_backend::var_expression): New function.
338 (Gcc_backend::indirect_expression): New function.
339
340 2013-09-25 Tom Tromey <tromey@redhat.com>
341
342 * Make-lang.in (gospec.o): Remove.
343 (CFLAGS-go/gospec.o): New variable.
344 (GCCGO_OBJS): Update to use go/gospec.o.
345 (go_OBJS): Define.
346 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
347 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
348 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
349 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
350 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
351 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
352 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
353 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
354 (go/unsafe.o): Remove.
355 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
356 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
357
358 2013-09-25 Tom Tromey <tromey@redhat.com>
359
360 * Make-lang.in (gospec.o): Don't use subshell.
361
362 2013-08-28 Ian Lance Taylor <iant@google.com>
363
364 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
365 the struct is not hidden.
366 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
367
368 2013-08-06 Ian Lance Taylor <iant@google.com>
369
370 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
371 compute_reloc_for_constant.
372
373 2013-08-02 Ian Lance Taylor <iant@google.com>
374
375 * go-gcc.cc (immutable_struct_set_init): Always call
376 resolve_unique_section.
377
378 2013-07-24 Ian Lance Taylor <iant@google.com>
379
380 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
381 fields, recreate those fields with the first one with a non-zero
382 size.
383
384 2013-07-23 Ian Lance Taylor <iant@google.com>
385
386 * go-backend.c: Don't #include "rtl.h".
387 (go_imported_unsafe): Don't call init_varasm_once.
388 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
389
390 2013-07-23 Ian Lance Taylor <iant@google.com>
391
392 * go-lang.c: Don't #include "except.h".
393 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
394
395 2013-06-18 Ian Lance Taylor <iant@google.com>
396
397 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
398 parameter.
399 (Gcc_backend::immutable_struct_set_init): Likewise.
400
401 2013-05-16 Jason Merrill <jason@redhat.com>
402
403 * Make-lang.in (go1$(exeext)): Use link mutex.
404
405 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
406
407 * gospec.c: pass -u pthread_create to linker when static linking.
408
409 2012-12-21 Ian Lance Taylor <iant@google.com>
410
411 PR bootstrap/54659
412 * go-system.h: Don't include <cstdio>.
413
414 2012-12-18 Ian Lance Taylor <iant@google.com>
415
416 PR go/55201
417 * gospec.c: Revert last patch.
418
419 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
420
421 PR go/55201
422 * gospec.c (LIBATOMIC): Define.
423 (LIBATOMIC_PROFILE): Define.
424 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
425
426 2012-11-29 Ian Lance Taylor <iant@google.com>
427
428 * go-gcc.cc: Include "output.h".
429 (global_variable): Add is_unique_section parameter.
430 (global_variable_set_init): Adjust unique section if necessary.
431 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
432
433 2012-11-17 Diego Novillo <dnovillo@google.com>
434
435 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
436
437 * go-lang.c: Use new vec API in vec.h.
438
439 2012-11-16 Ian Lance Taylor <iant@google.com>
440
441 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
442 (go1$(exeext)): Likewise.
443
444 2012-10-30 Ian Lance Taylor <iant@google.com>
445
446 * lang.opt (-fgo-relative-import-path): New option.
447 * go-lang.c (go_relative_import_path): New static variable.
448 (go_langhook_init): Pass go_relative_import_path to
449 go_create_gogo.
450 (go_langhook_handle_option): Handle -fgo-relative-import-path.
451 * go-c.h (go_create_gogo): Update declaration.
452 * gccgo.texi (Invoking gccgo): Document
453 -fgo-relative-import-path.
454
455 2012-09-17 Ian Lance Taylor <iant@google.com>
456
457 * config-lang.in (target_libs): Add target-libbacktrace.
458
459 2012-09-16 Ian Lance Taylor <iant@google.com>
460
461 * Make-lang.in (go/gogo.o): Depend on filenames.h.
462
463 2012-08-14 Diego Novillo <dnovillo@google.com>
464
465 Merge from cxx-conversion branch. Configury.
466
467 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
468 * go-gcc.cc: Likewise.
469 * go-system.h: Likewise.
470
471 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
472
473 * go-lang.c (lang_decl): Add variable_size GTY option.
474
475 2012-05-09 Ian Lance Taylor <iant@google.com>
476
477 * lang.opt: Add -fgo-pkgpath.
478 * go-lang.c (go_pkgpath): New static variable.
479 (go_prefix): New static variable.
480 (go_langhook_init): Pass go_pkgpath and go_prefix to
481 go_create_gogo.
482 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
483 -fgo-prefix handling to just set go_prefix.
484 * go-c.h (go_set_prefix): Don't declare.
485 (go_create_gogo): Add pkgpath and prefix to declaration.
486 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
487 to pkgpath. Don't include the package name in the asm name.
488 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
489 docs for -fgo-prefix.
490
491 2012-04-23 Ian Lance Taylor <iant@google.com>
492
493 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
494
495 2012-04-20 Ian Lance Taylor <iant@google.com>
496
497 * lang.opt: Add -fgo-check-divide-zero and
498 -fgo-check-divide-overflow.
499 * gccgo.texi (Invoking gccgo): Document new options.
500
501 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
502
503 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
504 with NULL_TREE type instead of void_type_node.
505
506 2012-03-09 Ian Lance Taylor <iant@google.com>
507
508 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
509 to the lhs type if necessary.
510
511 2012-03-08 Ian Lance Taylor <iant@google.com>
512
513 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
514 zero-sized variable.
515 (go_non_zero_struct): New global variable.
516 (Gcc_backend::non_zero_size_type): New function.
517 (Gcc_backend::global_variable): Don't build an assignment for a
518 zero-sized value.
519 * go-c.h (go_non_zero_struct): Declare.
520 * config-lang.in (gtfiles): Add go-c.h.
521
522 2012-02-29 Ian Lance Taylor <iant@google.com>
523
524 * go-gcc.cc (class Gcc_tree): Add set_tree method.
525 (set_placeholder_pointer_type): When setting to a pointer to
526 error, set to error_mark_node.
527
528 2012-02-23 Richard Guenther <rguenther@suse.de>
529
530 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
531 build_distinct_type_copy.
532
533 2012-02-17 Ian Lance Taylor <iant@google.com>
534
535 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
536
537 2012-02-17 Ian Lance Taylor <iant@google.com>
538
539 * gospec.c (lang_specific_driver): If linking, and no -o option
540 was used, add one.
541
542 2012-02-14 Ian Lance Taylor <iant@google.com>
543
544 PR go/48411
545 * Make-lang.in (gccgo-cross$(exeext)): New target.
546 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
547 gccgo$(exeext).
548 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
549 gccgo-cross$(exeext) does not exist.
550
551 2012-02-07 Ian Lance Taylor <iant@google.com>
552
553 * gccgo.texi (Function Names): Document //extern instead of
554 __asm__.
555
556 2012-02-01 Jakub Jelinek <jakub@redhat.com>
557
558 PR target/52079
559 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
560 return build_nonstandard_integer_type result if possible.
561
562 2012-01-21 Ian Lance Taylor <iant@google.com>
563
564 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
565 (Gcc_backend::type_alignment): Likewise.
566 (Gcc_backend::type_field_alignment): Likewise.
567 (Gcc_backend::type_field_offset): Likewise.
568
569 2012-01-20 Ian Lance Taylor <iant@google.com>
570
571 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
572 be empty.
573 (Gcc_backend::set_placeholder_struct_type): Likewise.
574
575 2012-01-17 Ian Lance Taylor <iant@google.com>
576
577 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
578 BASE.s rather than -o BASE.o.
579
580 2012-01-11 Ian Lance Taylor <iant@google.com>
581
582 * go-lang.c (go_langhook_init): Initialize void_list_node before
583 calling go_create_gogo.
584
585 2012-01-10 Ian Lance Taylor <iant@google.com>
586
587 * go-gcc.cc (Gcc_backend::type_size): New function.
588 (Gcc_backend::type_alignment): New function.
589 (Gcc_backend::type_field_alignment): New function.
590 (Gcc_backend::type_field_offset): New function.
591 * go-backend.c (go_type_alignment): Remove.
592 * go-c.h (go_type_alignment): Don't declare.
593
594 2011-12-27 Ian Lance Taylor <iant@google.com>
595
596 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
597 build_distinct_type_copy rather than build_variant_type_copy.
598 (Gcc_backend::set_placeholder_array_type): Likewise.
599 (Gcc_backend::named_type): Add special handling for builtin
600 basic types.
601
602 2011-12-22 Ian Lance Taylor <iant@google.com>
603
604 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
605 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
606 (Gcc_backend::set_placeholder_struct_type): Likewise.
607 (Gcc_backend::set_placeholder_array_type): Likewise.
608 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
609
610 2011-12-13 Ian Lance Taylor <iant@google.com>
611
612 * go-backend.c: #include "simple-object.h" and "intl.h".
613 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
614 (GO_EXPORT_SECTION_NAME): Likewise.
615 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
616 (go_read_export_data): New function.
617 * go-c.h (go_read_export_data): Declare.
618
619 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
620 Ian Lance Taylor <iant@google.com>
621
622 * go-location.h: New file.
623 * go-linemap.cc: New file.
624 * go-gcc.cc: Change all uses of source_location to Location.
625 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
626 (GO_LINEMAP_H): New variable.
627 (GO_LEX_H): Use $(GO_LINEMAP_H).
628 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
629 (go/go-linemap.o): New target.
630
631 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
632
633 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
634
635 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
636
637 * lang.opt: Add fgo-optimize-.
638 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
639 * go-c.h (go_enable_optimize): Declare.
640 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
641 (GO_EXPORT_H): Define.
642 (GO_IMPORT_H): Add $(GO_EXPORT_H).
643 (GO_AST_DUMP_H): Define.
644 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
645 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
646 (go/types.o): Likewise.
647 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
648 (go/go-optimize.o): New target.
649
650 2011-08-24 Joseph Myers <joseph@codesourcery.com>
651
652 * Make-lang.in (CFLAGS-go/go-lang.o): New.
653 (go/go-lang.o): Remove explicit compilation rule.
654
655 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
656
657 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
658
659 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
660
661 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
662 (go/ast-dump.o): New target.
663 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
664 (go/statements.o): Likewise.
665
666 2011-07-06 Richard Guenther <rguenther@suse.de>
667
668 * go-lang.c (go_langhook_init):
669 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
670
671 2011-06-14 Joseph Myers <joseph@codesourcery.com>
672
673 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
674 dependencies.
675 * go-backend.c: Include common/common-target.h.
676 (go_write_export_data): Use targetm_common.have_named_sections.
677 * go-lang.c: Include common/common-target.h.
678 (go_langhook_init_options_struct): Use
679 targetm_common.supports_split_stack.
680
681 2011-06-13 Ian Lance Taylor <iant@google.com>
682
683 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
684
685 2011-06-10 Ian Lance Taylor <iant@google.com>
686
687 * go-gcc.cc: Include "toplev.h".
688 (Gcc_backend::immutable_struct): New function.
689 (Gcc_backend::immutable_struct_set_init): New function.
690 (Gcc_backend::immutable_struct_reference): New function.
691 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
692
693 2011-06-09 Ian Lance Taylor <iant@google.com>
694
695 * go-gcc.cc (Gcc_backend::zero_expression): New function.
696
697 2011-06-07 Richard Guenther <rguenther@suse.de>
698
699 * go-lang.c (go_langhook_init): Do not set
700 size_type_node or call set_sizetype.
701
702 2011-05-27 Ian Lance Taylor <iant@google.com>
703
704 * go-backend.c: Include "output.h".
705 (go_write_export_data): New function.
706 * go-c.h (go_write_export_data): Declare.
707 * Make-lang.in (go/go-backend.o): Depend on output.h.
708 (go/export.o): Depend on $(GO_C_H). Do not depend on
709 $(MACHMODE_H), output.h, or $(TARGET_H).
710
711 2011-05-24 Joseph Myers <joseph@codesourcery.com>
712
713 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
714 (gccgo$(exeext)): Use libcommon-target.a.
715
716 2011-05-20 Joseph Myers <joseph@codesourcery.com>
717
718 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
719
720 2011-05-13 Ian Lance Taylor <iant@google.com>
721
722 * go-gcc.cc (Gcc_backend::function_type): When building a struct
723 for multiple results, check that all fields types have a size.
724 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
725
726 2011-05-12 Ian Lance Taylor <iant@google.com>
727
728 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
729 parameter.
730 (Gcc_backend::parameter_variable): Likewise.
731
732 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
733
734 * go-lang.c (global_bindings_p): Return bool and simplify.
735
736 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
737
738 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
739
740 2011-05-04 Ian Lance Taylor <iant@google.com>
741
742 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
743 (Gcc_backend::fill_in_struct): New function.
744 (Gcc_backend::array_type): Implement.
745 (Gcc_backend::fill_in_array): New function.
746 (Gcc_backend::placeholder_pointer_type): New function.
747 (Gcc_backend::set_placeholder_pointer_type): New function.
748 (Gcc_backend::set_placeholder_function_type): New function.
749 (Gcc_backend::placeholder_struct_type): New function.
750 (Gcc_backend::set_placeholder_struct_type): New function.
751 (Gcc_backend::placeholder_array_type): New function.
752 (Gcc_backend::set_placeholder_array_type): New function.
753 (Gcc_backend::named_type): New function.
754 (Gcc_backend::circular_pointer_type): New function.
755 (Gcc_backend::is_circular_pointer_type): New function.
756
757 2011-04-26 Ian Lance Taylor <iant@google.com>
758
759 * go-gcc.cc (Gcc_backend::struct_type): Implement.
760
761 2011-04-25 Ian Lance Taylor <iant@google.com>
762
763 * go-gcc.cc (Gcc_backend::error_type): Implement.
764 (Gcc_backend::string_type): Remove.
765 (Gcc_backend::function_type): Change signature and implement.
766 (Gcc_backend::struct_type): Change signature.
767 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
768 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
769 (Gcc_backend::pointer_type): Check for error.
770 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
771
772 2011-04-25 Evan Shaw <edsrzf@gmail.com>
773
774 * go-gcc.c (class Gcc_tree): Make get_tree const.
775 (Gcc_backend::void_type): Implement.
776 (Gcc_backend::bool_type): Implement.
777 (Gcc_backend::integer_type): Implement.
778 (Gcc_backend::float_type): Implement.
779 (Gcc_backend::complex_type): New function.
780 (Gcc_backend::pointer_type): New function.
781 (Gcc_backend::make_type): New function.
782 (type_to_tree): New function.
783
784 2011-04-21 Ian Lance Taylor <iant@google.com>
785
786 * go-system.h (go_assert, go_unreachable): Define.
787
788 2011-04-19 Ian Lance Taylor <iant@google.com>
789
790 * go-system.h: Include "intl.h".
791 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
792 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
793 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
794
795 2011-04-19 Ian Lance Taylor <iant@google.com>
796
797 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
798
799 2011-04-19 Ian Lance Taylor <iant@google.com>
800
801 * go-gcc.cc (class Bblock): Define.
802 (Gcc_backend::if_statement): Change then_block and else_block to
803 Bblock*.
804 (Gcc_backend::block): New function.
805 (Gcc_backend::block_add_statements): New function.
806 (Gcc_backend::block_statement): New function.
807 (tree_to_block, block_to_tree): New functions.
808
809 2011-04-18 Ian Lance Taylor <iant@google.com>
810
811 * go-gcc.cc: Include "go-c.h".
812 (class Bvariable): Define.
813 (Gcc_backend::init_statement): New function.
814 (Gcc_backend::global_variable): New function.
815 (Gcc_backend::global_variable_set_init): New function.
816 (Gcc_backend::local_variable): New function.
817 (Gcc_backend::parameter_variable): New function.
818 (tree_to_type, var_to_tree): New functions.
819 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
820 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
821
822 2011-04-15 Ian Lance Taylor <iant@google.com>
823
824 * go-gcc.cc (Gcc_backend::compound_statement): New function.
825 (Gcc_backend::assignment_statement): Use error_statement.
826 (Gcc_backend::return_statement): Likewise.
827 (Gcc_backend::if_statement): Likewise.
828 (Gcc_backend::switch_statement): Likewise.
829 (Gcc_backend::statement_list): Likewise.
830
831 2011-04-14 Ian Lance Taylor <iant@google.com>
832
833 * go-gcc.cc (Gcc_backend::error_statement): New function.
834
835 2011-04-13 Ian Lance Taylor <iant@google.com>
836
837 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
838
839 2011-04-13 Ian Lance Taylor <iant@google.com>
840
841 * Make-lang.in (GO_OBJS): Add go/runtime.o.
842 (GO_RUNTIME_H): New variable.
843 (go/runtime.o): New target.
844 (go/gogo.o): Depend on $(GO_RUNTIME_H).
845 (go/statements.o): Likewise.
846
847 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
848
849 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
850 calling TREE_CHAIN.
851
852 2011-04-06 Ian Lance Taylor <iant@google.com>
853
854 * go-gcc.cc (if_statement): Use build3_loc.
855 (Gcc_backend::switch_statement): New function.
856 (Gcc_backend::statement_list): New function.
857
858 2011-04-06 Ian Lance Taylor <iant@google.com>
859
860 * go-gcc.cc (Gcc_backend::if_statement): New function.
861 (tree_to_stat): New function.
862 (expr_to_tree): Renamed from expression_to_tree.
863 (stat_to_tree): Renamed from statement_to_tree.
864
865 2011-04-06 Ian Lance Taylor <iant@google.com>
866
867 * go-gcc.cc (Gcc_backend::expression_statement): New function.
868
869 2011-04-04 Ian Lance Taylor <iant@google.com>
870
871 * go-gcc.c (class Blabel): Define.
872 (Gcc_backend::make_expression): New function.
873 (get_identifier_from_string): New function.
874 (Gcc_backend::label): New function.
875 (Gcc_backend::label_definition_statement): New function.
876 (Gcc_backend::goto_statement): New function.
877 (Gcc_backend::label_address): New function.
878 (expression_to_tree): New function.
879 * Make-lang.in (go/expressions.o): Depend on
880 go/gofrontend/backend.h.
881 (go/gogo.o): Likewise.
882
883 2011-04-04 Ian Lance Taylor <iant@google.com>
884
885 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
886 (class Bfunction): Define.
887 (Gcc_backend::assignment_statement): Rename from assignment.
888 Check for errors.
889 (Gcc_backend::return_statement): New function.
890 (tree_to_function): New function.
891 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
892 $(GIMPLE_H), and $(GO_GOGO_H).
893
894 2011-04-03 Ian Lance Taylor <iant@google.com>
895
896 * go-gcc.cc: New file.
897 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
898 (go/go-gcc.o): New target.
899 (go/go.o): Depend on go/gofrontend/backend.h.
900 (go/statements.o): Likewise.
901
902 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
903
904 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
905
906 2011-02-08 Ian Lance Taylor <iant@google.com>
907
908 * go-lang.c (go_langhook_init_options_struct): Set
909 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
910
911 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
912
913 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
914 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
915
916 2011-01-21 Ian Lance Taylor <iant@google.com>
917
918 * go-lang.c (go_langhook_init): Omit float_type_size when calling
919 go_create_gogo.
920 * go-c.h: Update declaration of go_create_gogo.
921
922 2011-01-13 Ian Lance Taylor <iant@google.com>
923
924 * go-backend.c: Include "rtl.h" and "target.h".
925 (go_imported_unsafe): New function.
926 * go-c.h (go_imported_unsafe): Declare.
927 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
928 (go/gogo-tree.o): Remove dependency on $(RTL_H).
929 (go/unsafe.o): Depend on $(GO_C_H).
930
931 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
932
933 PR go/47113
934 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
935 variable ‘field’ .
936
937 2010-12-21 Ian Lance Taylor <iant@google.com>
938
939 * Make-lang.in (check-go): Remove.
940 (lang_checks_parallelized): Add check-go.
941 (check_go_parallelize): Set.
942
943 2010-12-13 Ian Lance Taylor <iant@google.com>
944
945 * gospec.c (lang_specific_driver): Add a -o option if not linking
946 and there is no -o option already.
947
948 2010-12-07 Ian Lance Taylor <iant@google.com>
949
950 PR tree-optimization/46805
951 PR tree-optimization/46833
952 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
953
954 2010-12-06 Ian Lance Taylor <iant@google.com>
955
956 PR other/46789
957 PR bootstrap/46812
958 * go-lang.c (go_char_p): Define type and vectors.
959 (go_search_dirs): New static variable.
960 (go_langhook_handle_option): Use version and version/machine
961 directories for -L.
962 (go_langhook_post_options): Add non-specific -L paths.
963 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
964 DEFAULT_TARGET_MACHINE when compiling.
965 * gccgo.texi (Invoking gccgo): Only document -L for linking.
966 (Import and Export): Don't mention -L for finding import files.
967
968 2010-12-03 Ian Lance Taylor <iant@google.com>
969
970 PR bootstrap/46776
971 * go-backend.c: New file.
972 * go-c.h (go_type_alignment): Declare.
973 (go_field_alignment, go_trampoline_info): Declare.
974 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
975 (go/go-backend.o): New target.
976 (go/go-lang.o): Make dependencies match source file.
977 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
978 (go/gogo-tree.o): Don't depend on $(TM_H).
979
980 2010-12-03 Ian Lance Taylor <iant@google.com>
981
982 * config-lang.in (build_by_default): Set to no.
983
984 2010-12-02 Ian Lance Taylor <iant@google.com>
985
986 Go frontend added to gcc repository.
987 \f
988 Copyright (C) 2010-2015 Free Software Foundation, Inc.
989
990 Copying and distribution of this file, with or without modification,
991 are permitted in any medium without royalty provided the copyright
992 notice and this notice are preserved.