]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/go/ChangeLog
PR other/16615 [1/5]
[thirdparty/gcc.git] / gcc / go / ChangeLog
1 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
2
3 PR other/16615
4
5 * go-backend.c: Mechanically replace "can not" with "cannot".
6 * go-gcc.cc: Likewise.
7
8 2019-01-01 Jakub Jelinek <jakub@redhat.com>
9
10 Update copyright years.
11
12 * gccgo.texi: Bump @copyrights-go year.
13
14 2018-11-27 Ian Lance Taylor <iant@golang.org>
15
16 * go-gcc.cc (Gcc_backend::function): Handle function_only_inline
17 flag.
18
19 2018-11-13 David Malcolm <dmalcolm@redhat.com>
20
21 * go-gcc-diagnostics.cc: Replace "source_location" with "location_t".
22 * go-gcc.cc: Likewise.
23 * go-linemap.cc: Likewise.
24 * go-location.h: Likewise.
25 * gofrontend/README: Likewise.
26
27 2018-10-31 Ian Lance Taylor <iant@golang.org>
28
29 * go-gcc.cc (Gcc_backend::write_global_definitions): Don't call
30 gimplify_function_tree. Instead call allocate_struct_function if
31 necessary.
32
33 2018-10-29 Ian Lance Taylor <iant@golang.org>
34
35 * go-gcc.cc (Gcc_backend::function): Change to use a single flags
36 parameter.
37
38 2018-10-29 Ian Lance Taylor <iant@golang.org>
39
40 * go-linemap.cc (Gcc_linemap::location_file): New method.
41
42 2018-10-17 David Malcolm <dmalcolm@redhat.com>
43
44 * Make-lang.in (selftest-go): New.
45
46 2018-09-20 Allan Sandfeld Jensen <allan.jensen@qt.io>
47
48 * gospec.c (lang_specific_driver): Handle -r like -nostdlib.
49
50 2018-08-27 Martin Liska <mliska@suse.cz>
51
52 * go-gcc.cc (Gcc_backend::call_expression): Use new function
53 fndecl_built_in_p and remove check for FUNCTION_DECL if
54 possible.
55
56 2018-07-20 Martin Sebor <msebor@redhat.com>
57
58 PR middle-end/82063
59 * go-lang.c (go_langhook_handle_option): Change function argument
60 to HOST_WIDE_INT.
61
62 2018-06-28 Ian Lance Taylor <iant@golang.org>
63
64 PR go/86343
65 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Call
66 build_variant_type_copy rather than build_distinct_type_copy.
67
68 2018-06-08 Cherry Zhang <cherryyz@google.com>
69
70 * go-gcc.cc (class Gcc_backend): Remove
71 stack_allocation_expression method.
72
73 2018-02-03 Ian Lance Taylor <iant@golang.org>
74
75 * go-gcc.cc (Gcc_backend::fill_in_struct): Mark struct types as
76 using structural equality.
77
78 2018-02-02 Ian Lance Taylor <iant@golang.org>
79
80 * go-gcc.cc (Gcc_backend::type_size): Return 0 for
81 void_type_node.
82 (Gcc_backend::convert_expression): Don't convert if the type of
83 expr_tree is void_type_node.
84 (Gcc_backend::array_index_expression): Don't index if the type of
85 the array expression is void_type_node.
86 (Gcc_backend::init_statement): Don't initialize if the type of the
87 initializer expression is void_type_node.
88 (Gcc_backend::assignment_statement): Don't assign if the type of
89 either the left or right hand side is void_type_node.
90 (Gcc_backend::temporary_variable): Don't initialize if the type of
91 the initializer expression is void_type_node.
92
93 2018-02-01 Cherry Zhang <cherryyz@google.com>
94
95 * lang.opt (fgo-optimize): Remove RejectNegative.
96 * go-c.h (go_enable_optimize): Update declaration to take value
97 argument.
98 * go-lang.c (go_langhook_handle_option): Pass value to
99 go_enable_optimize.
100 * gccgo.texi (Invoking gccgo): Update -fgo-optimize-allocs doc.
101
102 2018-01-30 Ian Lance Taylor <iant@golang.org>
103
104 * go-gcc.cc (Gcc_backend::convert_tree): New private method.
105 (Gcc_backend::constructor_expression): Call it.
106 (Gcc_backend::assignment_statement): Likewise.
107 (Gcc_backend::temporary_variable): Likewise.
108
109 2018-01-09 Cherry Zhang <cherryyz@google.com>
110
111 * go-gcc.cc (local_variable): Add decl_var parameter.
112
113 2018-01-09 Cherry Zhang <cherryyz@google.com>
114
115 * lang.opt (fgo-debug-escape-hash): New option.
116 * go-c.h (struct go_create_gogo_args): Add debug_escape_hash
117 field.
118 * go-lang.c (go_langhook_init): Set debug_escape_hash field.
119 * gccgo.texi (Invoking gccgo): Document -fgo-debug-escape-hash.
120
121 2018-01-05 Ian Lance Taylor <iant@golang.org>
122
123 * go-gcc.cc (Gcc_backend::Gcc_backend): Correct
124 math_function_type_long to take one argument.
125
126 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
127 Alan Hayward <alan.hayward@arm.com>
128 David Sherwood <david.sherwood@arm.com>
129
130 * go-lang.c (go_langhook_type_for_mode): Handle MODE_VECTOR_BOOL.
131
132 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
133 Alan Hayward <alan.hayward@arm.com>
134 David Sherwood <david.sherwood@arm.com>
135
136 * go-lang.c (go_langhook_type_for_mode): Check valid_vector_subparts_p.
137
138 2018-01-03 Jakub Jelinek <jakub@redhat.com>
139
140 Update copyright years.
141
142 * gccgo.texi: Bump @copyrights-go year.
143
144 2017-12-12 Tony Reix <tony.reix@atos.net>
145 Ian Lance Taylor <iant@golang.org>
146
147 * go-lang.c (TARGET_AIX): Define if not defined.
148 (go_langhook_init): Set nil_check_size_threshold to -1 on AIX.
149
150 2017-12-01 Ian Lance Taylor <iant@golang.org>
151
152 * go-gcc.cc (Gcc_backend::Gcc_backend): Define
153 __builtin_unreachable.
154 (Gcc_backend::function): Add does_not_return parameter.
155
156 2017-12-01 Than McIntosh <thanm@google.com>
157
158 * go-c.h (go_create_gogo_args): Add nil_check_size_threshold
159 field.
160 * go-lang.c (go_langhook_init): Set nil_check_size_threshold.
161
162 2017-11-28 Jakub Jelinek <jakub@redhat.com>
163
164 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR using
165 build2_loc instead of build3_loc.
166
167 2017-11-14 Than McIntosh <thanm@google.com>
168
169 * go-gcc.cc (var_expression): Remove Varexpr_context parameter.
170
171 2017-10-11 Tony Reix <tony.reix@atos.net>
172
173 * go-system.h (__STDC_FORMAT_MACROS): Define before including any
174 system header files, as is done in ../system.h.
175
176 2017-10-05 Ian Lance Taylor <iant@golang.org>
177
178 * Make-lang.in (GO_OBJS): Add go/names.o.
179
180 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
181 Alan Hayward <alan.hayward@arm.com>
182 David Sherwood <david.sherwood@arm.com>
183
184 * go-lang.c (go_langhook_type_for_mode): Use is_complex_float_mode.
185
186 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
187 Alan Hayward <alan.hayward@arm.com>
188 David Sherwood <david.sherwood@arm.com>
189
190 * go-lang.c (go_langhook_type_for_mode): Use is_int_mode.
191
192 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
193 Alan Hayward <alan.hayward@arm.com>
194 David Sherwood <david.sherwood@arm.com>
195
196 * go-lang.c (go_langhook_type_for_mode): Use is_float_mode.
197
198 2017-08-07 Martin Liska <mliska@suse.cz>
199
200 * go-gcc.cc (Gcc_backend::function): Look up for no_split_stack
201 and not __no_split_stack__.
202
203 2017-07-27 Tony Reix <tony.reix@atos.net>
204
205 * go-backend.c (go_write_export_data): Use EXCLUDE section for
206 AIX.
207
208 2017-06-09 Ian Lance Taylor <iant@golang.org>
209
210 * go-lang.c (go_langhook_post_options): If -fsplit-stack is turned
211 on, disable implicit -forder-blocks-and-partition.
212
213 2017-05-12 Than McIntosh <thanm@google.com>
214
215 * go-gcc.cc (Gcc_backend::call_expression): Add caller parameter.
216
217 2017-05-11 Ian Lance Taylor <iant@google.com>
218
219 PR go/64238
220 * go-gcc.cc (Gcc_backend::implicit_variable_reference): Set
221 DECL_EXTERNAL, clear TREE_STATIC.
222
223 2017-05-10 Than McIntosh <thanm@google.com>
224
225 * go-backend.c: Include "go-c.h".
226 * go-gcc.cc (Gcc_backend::write_export_data): New method.
227
228 2017-05-10 Ian Lance Taylor <iant@google.com>
229
230 * go-gcc.cc (Gcc_backend::Gcc_backend): Declare
231 __builtin_prefetch.
232 * Make-lang.in (GO_OBJS): Add go/wb.o.
233
234 2017-03-28 Than McIntosh <thanm@google.com>
235
236 PR go/80226
237 * go-gcc.cc (Gcc_backend::return_statement): Check for
238 void_type_node when checking result size.
239
240 2017-02-20 Ian Lance Taylor <iant@golang.org>
241
242 PR go/79642
243 * lang.opt (-fgo-relative-import-path): Change space to tab.
244
245 2017-02-07 Richard Biener <rguenther@suse.de>
246
247 PR tree-optimization/79256
248 PR middle-end/79278
249 * go-backend.c (go_field_alignment): Adjust.
250
251 2017-01-11 Than McIntosh <thanm@google.com>
252
253 * go-gcc.cc (conditional_expression): Add Bfunction parameter.
254
255 2017-01-01 Jakub Jelinek <jakub@redhat.com>
256
257 Update copyright years.
258
259 * gccgo.texi: Bump @copyrights-go year.
260
261 2016-12-16 Than McIntosh <thanm@google.com>
262
263 * go-gcc.cc (Gcc_backend::expression_statement): Add Bfunction*
264 parameter.
265 (Gcc_backend::init_statement): Likewise.
266 (Gcc_backend::assignment_statement): Likewise.
267 (Gcc_backend::if_statement): Likewise.
268
269 2016-12-06 Than McIntosh <thanm@google.com>
270
271 * go-gcc.cc (Gcc_backend::var_expression): Add Varexpr_context
272 parameter.
273
274 2016-11-22 Than McIntosh <thanm@google.com>
275
276 * go-gcc.cc (char_needs_encoding): Remove.
277 (needs_encoding, fetch_utf8_char, encode_id): Remove.
278 (Gcc_backend::global_variable): Add asm_name parameter. Don't
279 compute asm_name here.
280 (Gcc_backend::implicit_variable): Likewise.
281 (Gcc_backend::implicit_variable_reference): Likewise.
282 (Gcc_backend::immutable_struct): Likewise.
283 (Gcc_backend::immutable_struct_reference): Likewise.
284 * Make-lang.in (GO_OBJS): Add go/go-encode-id.o.
285
286 2016-11-22 Ian Lance Taylor <iant@google.com>
287
288 * go-gcc.cc (Gcc_backend::Gcc_backend): Add builtin function
289 __builtin_frame_address.
290
291 2016-10-25 David Malcolm <dmalcolm@redhat.com>
292
293 * go-lang.c (go_langhook_type_for_mode): Remove redundant cast
294 from result of GET_MODE_CLASS. Minor formatting fixes.
295
296 2016-10-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
297
298 * go-backend.c: Include memmodel.h.
299
300 2016-10-10 Than McIntosh <thanm@google.com>
301
302 * go-gcc.h: New file.
303 * go-c.h (struct go_create_gogo_args): Add backend and linemap
304 fields.
305 * go-lang.c: Include "go-gcc.h".
306 (go_langhook_init): Set linemap and backend fields of args.
307 * go-gcc.cc: Include "go-gcc.h".
308 * go-linemap.cc: Include "go-gcc.h".
309
310 2016-10-10 Than McIntosh <thanm@google.com>
311
312 * go-linemap.cc (Gcc_linemap::location_line): New method.
313
314 2016-10-10 Eric Botcazou <ebotcazou@adacore.com>
315
316 * config-lang.in (lang_requires_boot_languages): Delete.
317
318 2016-10-06 Chris Manghane <cmang@google.com>
319
320 * go-gcc.cc (Gcc_backend::stack_allocation_expression): Clear the
321 returned memory.
322
323 2016-09-27 Than McIntosh <thanm@google.com>
324
325 * go-linemap.cc (Gcc_linemap::to_string): New method.
326
327 2016-09-23 Than McIntosh <thanm@google.com>
328
329 * go-gcc-diagnostics.cc: New file.
330 * go-location.h (Location): Remove operator source_location. Add
331 operator==.
332 * go-system.h: #include <sstream>.
333 * Make-lang.in (GO_OBJS): Add go/go-diagnostics.o and
334 go/go-gcc-diagnostics.o.
335 (CFLAGS-go/go-gcc-diagnostics.o): New variable.
336
337 2016-09-23 Chris Manghane <cmang@google.com>
338
339 PR go/77701
340 * go-gcc.cc (Gcc_backend::Gcc_backend): Fix calls to integer_type
341 to pass arguments in the correct order.
342
343 2016-09-22 Ian Lance Taylor <iant@golang.org>
344
345 * go-gcc.cc (Gcc_backend::Gcc_backend): Declare
346 __builtin_frame_address.
347
348 2016-09-11 Ian Lance Taylor <iant@golang.org>
349
350 * go-gcc.cc (Gcc_backend::Gcc_backend): Add builtin versions of
351 ctz, ctzll, bswap32, bswap64.
352
353 2016-09-10 Ian Lance Taylor <iant@golang.org>
354
355 * go-backend.c (go_trampoline_info): Remove.
356 * go-c.h (go_trampoline_info): Don't declare.
357
358 2016-09-09 Than McIntosh <thanm@google.com>
359
360 * go-sha1.cc: New file.
361 * Make-lang.in (GO_OBJS): Add go/go-sha1.o.
362 (CFLAGS-go/go-sha1.o): New variable.
363
364 2016-08-29 Ian Lance Taylor <iant@google.com>
365
366 * lang.opt (fgo-c-header, fgo-compiling-runtime): New options.
367 * go-c.h (struct go_create_gogo_args): Define.
368 (go_create_gogo): Change declaration to take struct pointer.
369 * go-lang.c (go_c_header): New static variable.
370 (go_langhook_init): Update call to go_create_gogo.
371 * gccgo.texi (Invoking gccgo): Document -fgo-c-header and
372 -fgo-compiling-runtime.
373
374 2016-08-09 Ian Lance Taylor <iant@google.com>
375
376 * gccgo.texi (Invoking gccgo): Document -fgo-optimize-allocs and
377 -fgo-debug-escae.
378 (Compiler Directives): New chapter.
379 (Function Names): Describe using //go:linkname. Suggest using
380 -fgo-pkgpath rather than -fgo-prefix.
381
382 2016-08-08 Ian Lance Taylor <iant@google.com>
383
384 PR go/72814
385 * go-gcc.cc (Gcc_backend::function_type): If the return type is
386 zero bytes, treat the function as returning void.
387 (return_statement): If the return type is zero bytes, don't
388 actually return any values.
389
390 2016-08-05 Ian Lance Taylor <iant@google.com>
391
392 PR go/72812
393 * go-gcc.cc (char_needs_encoding): New static function.
394 (needs_encoding, fetch_utf8_char): New static functions.
395 (encode_id): New static function.
396 (Gcc_backend::global_variable): Set asm name if the name is not
397 simple ASCII.
398 (Gcc_backend::implicit_variable): Likewise.
399 (Gcc_backend::implicit_variable_reference): Likewise.
400 (Gcc_backend::immutable_struct): Likewise.
401 (Gcc_backend::immutable_struct_reference): Likewise.
402 (Gcc_backend::function): Likewise.
403
404 2016-08-02 Chris Manghane <cmang@google.com>
405
406 * lang.opt: Add -fgo-debug-escape option.
407 * go-c.h (go_create_gogo): Add debug_escape_level parameter.
408 * go-lang.c (go_langhook_init): Pass go_debug_escape_level to
409 go_create_gogo.
410
411 2016-05-06 Chris Manghane <cmang@google.com>
412
413 * Make-lang.in (GO_OBJS): Add go/escape.o (based on an entirely
414 new escape.cc).
415
416 2016-04-29 Chris Manghane <cmang@google.com>
417
418 * Make-lang.in (GO_OBJS): Remove go/dataflow.o, go/escape.o.
419
420 2016-04-18 Michael Matz <matz@suse.de>
421
422 * go-gcc.cc (Gcc_backend::implicit_variable): Use SET_DECL_ALIGN.
423
424 2016-02-12 Jakub Jelinek <jakub@redhat.com>
425
426 * gofrontend/lex.cc: Spelling fixes - behaviour -> behavior and
427 neighbour -> neighbor.
428 * gccgo.texi: Likewise.
429
430 2016-01-27 Ian Lance Taylor <iant@google.com>
431
432 * go-lang.c (go_langhook_init_options_struct): Default to
433 -fkeep-gc-roots-live.
434
435 2016-01-04 Jakub Jelinek <jakub@redhat.com>
436
437 Update copyright years.
438
439 * gccgo.texi: Bump @copyrights-go year.
440
441 2015-12-21 Ian Lance Taylor <iant@google.com>
442
443 * go-gcc.cc (class Bvariable): Remove Gcc_tree parent class. Add
444 t_ and orig_type_ fields. Add new two parameter constructor. Add
445 get_tree and get_decl methods.
446 (Gcc_backend::var_expression): Pass location to var get_tree.
447 (Gcc_backend::global_variable): Don't add VIEW_CONVERT_EXPR. Use
448 two parameter constructor for Bvariable.
449 (Gcc_backend::global_variable_set_init): Don't remove
450 VIEW_CONVERT_EXPR. Use var get_decl, not get_tree.
451 (Gcc_backend::write_global_definitions): Likewise.
452 (Gcc_backend::init_statement): Call var get_decl, not get_tree.
453 (Gcc_backend::block): Likewise.
454 (Gcc_backend::implicit_variable_set_init): Likewise.
455 (Gcc_backend::immutable_struct_set_init): Likewise.
456 (Gcc_backend::function_set_parameters): Likewise.
457
458 2015-12-21 Ian Lance Taylor <iant@google.com>
459
460 * go-gcc.cc (Gcc_backend::global_variable): If type is zero-sized,
461 add a VIEW_CONVERT_EXPR to the tree.
462 (Gcc_backend::global_variable_set_init): Remove any
463 VIEW_CONVERT_EXPR.
464 (Gcc_backend::write_global_definitions): Likewise.
465
466 2015-11-30 Ian Lance Taylor <iant@google.com>
467
468 PR go/68477
469 * go-gcc.cc (Gcc_backend::string_constant_expression): Don't set
470 TYPE_STRING_FLAG on a variant type.
471
472 2015-11-11 Andrew MacLeod <amacleod@redhat.com>
473
474 * go-backend.c: Remove unused header files.
475 * go-gcc.cc: Likewise.
476 * go-lang.c: Likewise.
477 * gospec.c: Likewise.
478
479 2015-10-29 Andrew MacLeod <amacleod@redhat.com>
480
481 * go-backend.c: Reorder #include's and remove duplicates.
482 * go-lang.c: Likewise.
483
484 2015-10-20 Alan Modra <amodra@gmail.com>
485
486 PR go/66870
487 * gospec.c (saw_opt_m32): Rename to..
488 (is_m64): ..this, initialised by TARGET_CAN_SPLIT_STACK_64BIT.
489 Update uses.
490 (lang_specific_driver): Set is_m64 if OPT_m64, clear if OPT_m32.
491
492 2015-10-01 Ian Lance Taylor <iant@google.com>
493
494 PR go/66870
495 * gospec.c (lang_specific_driver): Only look for OPT_m32 if
496 TARGET_CAN_SPLIT_STACK_64BIT is defined.
497
498 2015-10-01 Lynn Boger <laboger@linux.vnet.ibm.com>
499
500 PR target/66870
501 * gospec.c (lang_specific_driver): Set appropriate split stack
502 options for 64 bit compiles based on TARGET_CAN_SPLIT_STACK_64BIT.
503
504 2015-09-10 Chris Manghane <cmang@google.com>
505
506 * go-gcc.cc (Gcc_backend::type_size): Return -1 for
507 unrepresentable size.
508
509 2015-08-24 Marek Polacek <polacek@redhat.com>
510
511 PR tree-optimization/67284
512 * go-gcc.cc (Gcc_backend::define_builtin): Add NORETURN_P parameter.
513 Set TREE_THIS_VOLATILE.
514 (Gcc_backend::Gcc_backend): Mark __builtin_trap as a noreturn call.
515 Pass false to the rest of define_builtin calls.
516
517 2015-07-31 Andreas Schwab <schwab@linux-m68k.org>
518
519 * go-lang.c (go_langhook_init_options_struct): Don't set
520 x_flag_split_stack.
521 (go_langhook_post_options): Set it here instead.
522
523 2015-07-12 Aldy Hernandez <aldyh@redhat.com>
524
525 * gofrontend/backend.h: Fix double word typos.
526 * gofrontend/expressions.cc: Same.
527 * gospec.c: Same.
528
529 2015-07-07 Andrew MacLeod <amacleod@redhat.com>
530
531 * go-backend.c: Adjust includes.
532 * go-gcc.cc: Likewise.
533 * go-lang.c: Likewise.
534
535 2015-06-25 Andrew MacLeod <amacleod@redhat.com>
536
537 * go-gcc.cc: Remove ipa-ref.h and plugin-api.h from include list.
538
539 2015-06-17 Andrew MacLeod <amacleod@redhat.com>
540
541 * go-backend.c: Do not include input.h, line-map.h or is-a.h.
542 * go-gcc.cc: Likewise.
543 * go-lang.c: Likewise.
544 * go-system.h: Likewise.
545
546 2015-06-08 Andrew MacLeod <amacleod@redhat.com>
547
548 * go-backend.c : Adjust include files.
549 * go-gcc.cc : Likewise.
550 * go-lang.c : Likewise.
551
552 2015-06-05 Aldy Hernandez <aldyh@redhat.com>
553
554 * go-gcc.cc (write_global_definitions): Remove call to
555 finalize_compilation_unit.
556 Remove Go specific debug generation.
557 * go-lang.c (go_langhook_parse_file): Call go_write_globals.
558 (go_langhook_write_globals): Remove.
559 Remove LANG_HOOKS_WRITE_GLOBALS everywhere.
560
561 2015-06-04 Andrew MacLeod <amacleod@redhat.com>
562
563 * go-backend.c: Adjust includes for restructured coretypes.h.
564 * go-c.h: Likewise.
565 * go-gcc.cc: Likewise.
566 * go-lang.c: Likewise.
567
568 2015-04-30 Chris Manghane <cmang@google.com>
569
570 * go-gcc.cc (Gcc_backend::stack_allocation_expression): New
571 method.
572
573 2015-04-27 Jim Wilson <jim.wilson@linaro.org>
574
575 * Make-lang.in (go.mostlyclean): Remove gccgo, gccgo-cross, and go1.
576
577 2015-04-17 Chris Manghane <cmang@google.com>
578
579 * Make-lang.in (GO_OBJS): Add go/escape.o.
580
581 2015-02-02 Ian Lance Taylor <iant@google.com>
582
583 PR go/64836
584 PR go/64838
585 * go-gcc.cc (Gcc_backend::type_size): Change return type to
586 int64_t.
587 (Gcc_backend::type_alignment): Likewise.
588 (Gcc_backend::type_field_alignment): Likewise.
589 (Gcc_backend::type_field_offset): Likewise.
590 (Gcc_backend::implicit_variable): Change alignment parameter type
591 to int64_t.
592
593 2015-01-23 Ian Lance Taylor <iant@google.com>
594
595 PR go/63565
596 * gccgo.texi (Invoking gccgo): Mention that Go programs should not
597 be stripped.
598
599 * gccgo.texi (C Interoperability): Mention that people should use
600 cgo.
601
602 2015-01-23 Ian Lance Taylor <iant@google.com>
603
604 PR go/64595
605 * go-lang.c (go_langhook_init_options_struct): Set default
606 debug_info_level.
607 (go_langhook_post_options): If debug_info_level is still the
608 default, make sure write_symbols is set.
609 * gccgo.texi (Invoking gccgo): Document that -g1 is the default.
610
611 2015-01-16 Richard Henderson <rth@redhat.com>
612
613 * go-gcc.cc (Gcc_backend::call_expression): Add chain_expr argument.
614 (Gcc_backend::static_chain_variable): New method.
615
616 2015-01-09 Ian Lance Taylor <iant@google.com>
617
618 * config-lang.in (lang_dirs): Define.
619
620 2015-01-09 Michael Collison <michael.collison@linaro.org>
621
622 * go-gcc.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
623 input.h, alias.h, symtab.h, options.h, fold-const.h,
624 wide-int.h, and inchash.h due to flattening of tree.h.
625 * go-lang.c: Ditto.
626 * go-backend.c: Ditto.
627
628 2015-01-07 Chris Manghane <cmang@google.com>
629
630 PR go/61204
631 * go-gcc.cc (Gcc_backend::temporary_variable): Don't initialize
632 zero-sized variable.
633
634 2015-01-06 Chris Manghane <cmang@google.com>
635
636 * go-gcc.cc (Gcc_backend::constructor_expression): Don't
637 initialize zero-sized fields, just evaluate the values for side
638 effects.
639
640 2015-01-05 Jakub Jelinek <jakub@redhat.com>
641
642 Update copyright years.
643
644 * gccgo.texi: Bump @copyrights-go year.
645
646 2014-12-19 Chris Manghane <cmang@google.com>
647
648 * go-gcc.cc (Gcc_backend::array_constructor_expression): Don't
649 construct arrays of zero-sized values.
650
651 2014-10-29 Richard Sandiford <richard.sandiford@arm.com>
652
653 * go-lang.c: Remove redundant enum from machine_mode.
654
655 2014-10-28 Andrew MacLeod <amacleod@redhat.com>
656
657 * go-gcc.cc: Adjust include files.
658
659 2014-10-27 Andrew MacLeod <amacleod@redhat.com>
660
661 * go-gcc.cc: Adjust include files.
662 * go-lang.c: Ditto.
663
664 2014-10-23 Ian Lance Taylor <iant@google.com>
665
666 * go-gcc.cc (Gcc_backend::complex_constant_expression): Take one
667 mpc_t parameter instead of two mpfr_t parameters.
668
669 2014-09-15 Jakub Jelinek <jakub@redhat.com>
670
671 * Make-lang.in (check_go_parallelize): Change to just an upper bound
672 number.
673
674 2014-09-03 Chris Manghane <cmang@google.com>
675
676 * go-gcc.cc (Gcc_backend::implicit_variable): Remove init
677 parameter. Add is_hidden parameter.
678 (Gcc_backend::implicit_variable_set_init): New method.
679 (Gcc_backend::implicit_variable_reference): New method.
680
681 2014-08-08 Ian Lance Taylor <iant@google.com>
682
683 * go-gcc.cc (Gcc_backend::compound_statement): Don't return
684 NULL_TREE.
685
686 2014-07-24 Uros Bizjak <ubizjak@gmail.com>
687
688 * go-gcc.cc (Gcc_backend::global_variable_set_init): Rename
689 symtab_get_node to symtab_node::get.
690
691 2014-06-13 Ian Lance Taylor <iant@google.com>
692
693 PR go/61496
694 * gospec.c (lang_specific_driver): On Solaris, when not using GNU
695 ld, add -t option to avoid warning about common symbol changing
696 size.
697
698 2014-06-10 Jan Hubicka <hubicka@ucw.cz>
699
700 * go-gcc.cc (Gcc_backend::global_variable_set_init): Use
701 symtab_get_node(var_decl)->implicit_section.
702
703 2014-06-07 Jan Hubicka <hubicka@ucw.cz>
704
705 * go-gcc.cc (global_variable_set_init): Use
706 set_decl_section_name.
707
708 2014-06-04 Ian Lance Taylor <iant@google.com>
709
710 * go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
711 alignment parameters. Permit init parameter to be NULL.
712
713 2014-06-02 Andrew MacLeod <amacleod@redhat.com>
714
715 * go-gcc.cc: Include builtins.h.
716
717 2014-05-17 Trevor Saunders <tsaunders@mozilla.com>
718
719 * go-lang.c (struct GTY): Don't use variable_size gty attribute.
720
721 2014-05-06 Chris Manghane <cmang@google.com>
722
723 * go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
724 (Gcc_backend::boolean_constant_expression): New method.
725 (Gcc_backend::zero_expression): Use this->make_expression rather
726 than tree_to_expr.
727 (Gcc_backend::var_expression): Likewise.
728 (Gcc_backend::integer_constant_expression): Likewise.
729 (Gcc_backend::float_constant_expression): Likewise.
730 (Gcc_backend::complex_constant_expression): Likewise.
731 (Gcc_backend::struct_field_expression): Likewise.
732 (tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
733 (tree_to_function, tree_to_block): Remove functions.
734 (type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
735 (block_to_tree, var_to_tree, function_to_tree): Remove functions.
736
737 2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
738 Mike Stump <mikestump@comcast.net>
739 Richard Sandiford <rdsandiford@googlemail.com>
740
741 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
742
743 2014-05-06 Chris Manghane <cmang@google.com>
744
745 * go-c.h (go_create_gogo): Update declaration to add
746 check_divide_zero and check_divide_overflow parameters.
747 * go-lang.c (go_langhook_init): Pass new arguments to
748 go_create_gogo.
749
750 2014-05-05 Chris Manghane <cmang@google.com>
751
752 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
753 gc_root_variable. Add name and is_constant parameters.
754
755 2014-05-05 Chris Manghane <cmang@google.com>
756
757 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
758 parameter.
759 (Gcc_backend::temporary_variable): Check for erroneous function.
760
761 2014-04-30 Chris Manghane <cmang@google.com>
762
763 * go-backend.c: #include "diagnostics.h".
764 (saw_errors): New function.
765 * go-c.h (saw_errors): Declare.
766 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
767
768 2014-04-30 Chris Manghane <cmang@google.com>
769
770 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
771 calling into Go frontend.
772 (go_langhook_type_for_mode): Likewise.
773 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
774
775 2014-04-30 Chris Manghane <cmang@google.com>
776
777 * go-gcc.cc: #include "langhooks.h".
778 (Gcc_backend::Gcc_backend): Add constructor.
779 (Gcc_backend::lookup_function): New function.
780 (Gcc_backend::define_builtin): New private function.
781 (Gcc_backend::gcc_backend): Remove.
782 (go_get_backend): Use new to create new Gcc_backend.
783
784 2014-04-25 Chris Manghane <cmang@google.com>
785
786 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
787 (Gcc_backend::return_statement): Push and pop function.
788 (Gcc_backend::label): Likewise.
789 (Gcc_backend::function_defer_statement): Likewise.
790 (Gcc_backend::switch_statement): Add function parameter.
791 (Gcc_backend::block): Don't permit function to be NULL.
792 (Gcc_backend::temporary_variable): Change go_assert to
793 gcc_assert.
794 (Gcc_backend::gc_root_variable): New function.
795 (Gcc_backend::write_global_definitions): New function.
796
797 2014-04-22 Chris Manghane <cmang@google.com>
798
799 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
800 call to create_tmp_var. Require that function be non-NULL.
801
802 2014-04-17 Chris Manghane <cmang@google.com>
803
804 * go-gcc.cc (Gcc_backend::named_constant_expression): New
805 function.
806
807 2014-04-14 Chris Manghane <cmang@google.com>
808
809 * go-gcc.cc: Include "convert.h".
810 (Gcc_backend::string_constant_expression): New function.
811 (Gcc_backend::real_part_expression): Likewise.
812 (Gcc_backend::imag_part_expression): Likewise.
813 (Gcc_backend::complex_expression): Likewise.
814 (Gcc_backend::constructor_expression): Likewise.
815 (Gcc_backend::array_constructor_expression): Likewise.
816 (Gcc_backend::pointer_offset_expression): Likewise.
817 (Gcc_backend::array_index_expression): Likewise.
818 (Gcc_backend::call_expression): Likewise.
819 (Gcc_backend::exception_handler_statement): Likewise.
820 (Gcc_backend::function_defer_statement): Likewise.
821 (Gcc_backend::function_set_parameters): Likewise.
822 (Gcc_backend::function_set_body): Likewise.
823 (Gcc_backend::convert_expression): Handle various type
824 conversions.
825
826 2014-03-03 Ian Lance Taylor <iant@google.com>
827
828 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
829 DECL_WEAK.
830 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
831 DECL_WEAK.
832
833 2014-01-24 Chris Manghane <cmang@google.com>
834
835 * go-gcc.cc (Gcc_backend::unary_expression): New function.
836
837 2014-01-16 Chris Manghane <cmang@google.com>
838
839 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
840 parameter.
841 (operator_to_tree_code): New static function.
842 (Gcc_backend::binary_expression): New function.
843
844 2014-01-14 Chris Manghane <cmang@google.com>
845
846 * go-gcc.cc (Gcc_backend::compound_expression): New function.
847 (Gcc_backend::conditional_expression): New function.
848
849 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
850
851 Update copyright years
852
853 2014-01-02 Tobias Burnus <burnus@net-b.de>
854
855 * gccgo.texi: Bump @copying's copyright year.
856
857 2013-12-16 Chris Manghane <cmang@google.com>
858
859 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
860
861 2013-12-11 Ian Lance Taylor <iant@google.com>
862
863 * go-lang.c (go_langhook_post_options): Disable sibling calls by
864 default.
865
866 2013-12-10 Ian Lance Taylor <iant@google.com>
867
868 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
869 separately.
870
871 2013-12-05 Ian Lance Taylor <iant@google.com>
872
873 Revert this change; no longer required.
874 2013-11-06 Ian Lance Taylor <iant@google.com>
875
876 * go-lang.c (go_langhook_post_options): If
877 -fisolate-erroneous-paths was turned on by an optimization option,
878 turn it off.
879
880 2013-11-23 Ian Lance Taylor <iant@google.com>
881
882 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
883 parameter.
884
885 2013-11-22 Andrew MacLeod <amacleod@redhat.com>
886
887 * go-gcc.cc: Add required include files from gimple.h.
888 * go-lang.c: Likewise
889
890 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
891
892 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
893 tree_to_shwi throughout.
894
895 2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
896
897 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
898 tree_fits_shwi_p throughout.
899
900 2013-11-14 Andrew MacLeod <amacleod@redhat.com>
901
902 * go-lang.c: Include only gimplify.h and gimple.h as needed.
903
904 2013-11-14 Diego Novillo <dnovillo@google.com>
905
906 * go-backend.c: Include stor-layout.h.
907 * go-gcc.cc: Include stringpool.h.
908 Include stor-layout.h.
909 Include varasm.h.
910 * go-lang.c: Include stor-layout.h.
911
912 2013-11-12 Andrew MacLeod <amacleod@redhat.com>
913
914 * go-lang.c: Include gimplify.h.
915
916 2013-11-06 Ian Lance Taylor <iant@google.com>
917
918 * go-lang.c (go_langhook_post_options): If
919 -fisolate-erroneous-paths was turned on by an optimization option,
920 turn it off.
921
922 2013-10-14 Chris Manghane <cmang@google.com>
923
924 * go-gcc.cc (Gcc_backend::address_expression): New function.
925
926 2013-10-11 Chris Manghane <cmang@google.com>
927
928 * go-gcc.cc (Gcc_backend::function_code_expression): New
929 function.
930
931 2013-10-10 Chris Manghane <cmang@google.com>
932
933 * go-gcc.cc (Gcc_backend::error_function): New function.
934 (Gcc_backend::function): New function.
935 (Gcc_backend::make_function): New function.
936 (function_to_tree): New function.
937
938 2013-10-04 Chris Manghane <cmang@google.com>
939
940 * go-gcc.cc (Gcc_backend::convert_expression): New function.
941
942 2013-10-02 Chris Manghane <cmang@google.com>
943
944 * go-gcc.cc: Include "real.h" and "realmpfr.h".
945 (Gcc_backend::integer_constant_expression): New function.
946 (Gcc_backend::float_constant_expression): New function.
947 (Gcc_backend::complex_constant_expression): New function.
948
949 2013-09-30 Chris Manghane <cmang@google.com>
950
951 * go-gcc.cc (Gcc_backend::error_expression): New function.
952 (Gcc_backend::var_expression): New function.
953 (Gcc_backend::indirect_expression): New function.
954
955 2013-09-25 Tom Tromey <tromey@redhat.com>
956
957 * Make-lang.in (gospec.o): Remove.
958 (CFLAGS-go/gospec.o): New variable.
959 (GCCGO_OBJS): Update to use go/gospec.o.
960 (go_OBJS): Define.
961 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
962 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
963 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
964 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
965 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
966 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
967 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
968 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
969 (go/unsafe.o): Remove.
970 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
971 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
972
973 2013-09-25 Tom Tromey <tromey@redhat.com>
974
975 * Make-lang.in (gospec.o): Don't use subshell.
976
977 2013-08-28 Ian Lance Taylor <iant@google.com>
978
979 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
980 the struct is not hidden.
981 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
982
983 2013-08-06 Ian Lance Taylor <iant@google.com>
984
985 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
986 compute_reloc_for_constant.
987
988 2013-08-02 Ian Lance Taylor <iant@google.com>
989
990 * go-gcc.cc (immutable_struct_set_init): Always call
991 resolve_unique_section.
992
993 2013-07-24 Ian Lance Taylor <iant@google.com>
994
995 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
996 fields, recreate those fields with the first one with a non-zero
997 size.
998
999 2013-07-23 Ian Lance Taylor <iant@google.com>
1000
1001 * go-backend.c: Don't #include "rtl.h".
1002 (go_imported_unsafe): Don't call init_varasm_once.
1003 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
1004
1005 2013-07-23 Ian Lance Taylor <iant@google.com>
1006
1007 * go-lang.c: Don't #include "except.h".
1008 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
1009
1010 2013-06-18 Ian Lance Taylor <iant@google.com>
1011
1012 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
1013 parameter.
1014 (Gcc_backend::immutable_struct_set_init): Likewise.
1015
1016 2013-05-16 Jason Merrill <jason@redhat.com>
1017
1018 * Make-lang.in (go1$(exeext)): Use link mutex.
1019
1020 2013-01-16 Shenghou Ma <minux.ma@gmail.com>
1021
1022 * gospec.c: pass -u pthread_create to linker when static linking.
1023
1024 2012-12-21 Ian Lance Taylor <iant@google.com>
1025
1026 PR bootstrap/54659
1027 * go-system.h: Don't include <cstdio>.
1028
1029 2012-12-18 Ian Lance Taylor <iant@google.com>
1030
1031 PR go/55201
1032 * gospec.c: Revert last patch.
1033
1034 2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
1035
1036 PR go/55201
1037 * gospec.c (LIBATOMIC): Define.
1038 (LIBATOMIC_PROFILE): Define.
1039 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
1040
1041 2012-11-29 Ian Lance Taylor <iant@google.com>
1042
1043 * go-gcc.cc: Include "output.h".
1044 (global_variable): Add is_unique_section parameter.
1045 (global_variable_set_init): Adjust unique section if necessary.
1046 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
1047
1048 2012-11-17 Diego Novillo <dnovillo@google.com>
1049
1050 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
1051
1052 * go-lang.c: Use new vec API in vec.h.
1053
1054 2012-11-16 Ian Lance Taylor <iant@google.com>
1055
1056 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
1057 (go1$(exeext)): Likewise.
1058
1059 2012-10-30 Ian Lance Taylor <iant@google.com>
1060
1061 * lang.opt (-fgo-relative-import-path): New option.
1062 * go-lang.c (go_relative_import_path): New static variable.
1063 (go_langhook_init): Pass go_relative_import_path to
1064 go_create_gogo.
1065 (go_langhook_handle_option): Handle -fgo-relative-import-path.
1066 * go-c.h (go_create_gogo): Update declaration.
1067 * gccgo.texi (Invoking gccgo): Document
1068 -fgo-relative-import-path.
1069
1070 2012-09-17 Ian Lance Taylor <iant@google.com>
1071
1072 * config-lang.in (target_libs): Add target-libbacktrace.
1073
1074 2012-09-16 Ian Lance Taylor <iant@google.com>
1075
1076 * Make-lang.in (go/gogo.o): Depend on filenames.h.
1077
1078 2012-08-14 Diego Novillo <dnovillo@google.com>
1079
1080 Merge from cxx-conversion branch. Configury.
1081
1082 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
1083 * go-gcc.cc: Likewise.
1084 * go-system.h: Likewise.
1085
1086 2012-07-24 Uros Bizjak <ubizjak@gmail.com>
1087
1088 * go-lang.c (lang_decl): Add variable_size GTY option.
1089
1090 2012-05-09 Ian Lance Taylor <iant@google.com>
1091
1092 * lang.opt: Add -fgo-pkgpath.
1093 * go-lang.c (go_pkgpath): New static variable.
1094 (go_prefix): New static variable.
1095 (go_langhook_init): Pass go_pkgpath and go_prefix to
1096 go_create_gogo.
1097 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
1098 -fgo-prefix handling to just set go_prefix.
1099 * go-c.h (go_set_prefix): Don't declare.
1100 (go_create_gogo): Add pkgpath and prefix to declaration.
1101 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
1102 to pkgpath. Don't include the package name in the asm name.
1103 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
1104 docs for -fgo-prefix.
1105
1106 2012-04-23 Ian Lance Taylor <iant@google.com>
1107
1108 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
1109
1110 2012-04-20 Ian Lance Taylor <iant@google.com>
1111
1112 * lang.opt: Add -fgo-check-divide-zero and
1113 -fgo-check-divide-overflow.
1114 * gccgo.texi (Invoking gccgo): Document new options.
1115
1116 2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
1117
1118 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
1119 with NULL_TREE type instead of void_type_node.
1120
1121 2012-03-09 Ian Lance Taylor <iant@google.com>
1122
1123 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
1124 to the lhs type if necessary.
1125
1126 2012-03-08 Ian Lance Taylor <iant@google.com>
1127
1128 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
1129 zero-sized variable.
1130 (go_non_zero_struct): New global variable.
1131 (Gcc_backend::non_zero_size_type): New function.
1132 (Gcc_backend::global_variable): Don't build an assignment for a
1133 zero-sized value.
1134 * go-c.h (go_non_zero_struct): Declare.
1135 * config-lang.in (gtfiles): Add go-c.h.
1136
1137 2012-02-29 Ian Lance Taylor <iant@google.com>
1138
1139 * go-gcc.cc (class Gcc_tree): Add set_tree method.
1140 (set_placeholder_pointer_type): When setting to a pointer to
1141 error, set to error_mark_node.
1142
1143 2012-02-23 Richard Guenther <rguenther@suse.de>
1144
1145 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
1146 build_distinct_type_copy.
1147
1148 2012-02-17 Ian Lance Taylor <iant@google.com>
1149
1150 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
1151
1152 2012-02-17 Ian Lance Taylor <iant@google.com>
1153
1154 * gospec.c (lang_specific_driver): If linking, and no -o option
1155 was used, add one.
1156
1157 2012-02-14 Ian Lance Taylor <iant@google.com>
1158
1159 PR go/48411
1160 * Make-lang.in (gccgo-cross$(exeext)): New target.
1161 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
1162 gccgo$(exeext).
1163 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
1164 gccgo-cross$(exeext) does not exist.
1165
1166 2012-02-07 Ian Lance Taylor <iant@google.com>
1167
1168 * gccgo.texi (Function Names): Document //extern instead of
1169 __asm__.
1170
1171 2012-02-01 Jakub Jelinek <jakub@redhat.com>
1172
1173 PR target/52079
1174 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
1175 return build_nonstandard_integer_type result if possible.
1176
1177 2012-01-21 Ian Lance Taylor <iant@google.com>
1178
1179 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
1180 (Gcc_backend::type_alignment): Likewise.
1181 (Gcc_backend::type_field_alignment): Likewise.
1182 (Gcc_backend::type_field_offset): Likewise.
1183
1184 2012-01-20 Ian Lance Taylor <iant@google.com>
1185
1186 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
1187 be empty.
1188 (Gcc_backend::set_placeholder_struct_type): Likewise.
1189
1190 2012-01-17 Ian Lance Taylor <iant@google.com>
1191
1192 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
1193 BASE.s rather than -o BASE.o.
1194
1195 2012-01-11 Ian Lance Taylor <iant@google.com>
1196
1197 * go-lang.c (go_langhook_init): Initialize void_list_node before
1198 calling go_create_gogo.
1199
1200 2012-01-10 Ian Lance Taylor <iant@google.com>
1201
1202 * go-gcc.cc (Gcc_backend::type_size): New function.
1203 (Gcc_backend::type_alignment): New function.
1204 (Gcc_backend::type_field_alignment): New function.
1205 (Gcc_backend::type_field_offset): New function.
1206 * go-backend.c (go_type_alignment): Remove.
1207 * go-c.h (go_type_alignment): Don't declare.
1208
1209 2011-12-27 Ian Lance Taylor <iant@google.com>
1210
1211 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
1212 build_distinct_type_copy rather than build_variant_type_copy.
1213 (Gcc_backend::set_placeholder_array_type): Likewise.
1214 (Gcc_backend::named_type): Add special handling for builtin
1215 basic types.
1216
1217 2011-12-22 Ian Lance Taylor <iant@google.com>
1218
1219 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
1220 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
1221 (Gcc_backend::set_placeholder_struct_type): Likewise.
1222 (Gcc_backend::set_placeholder_array_type): Likewise.
1223 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
1224
1225 2011-12-13 Ian Lance Taylor <iant@google.com>
1226
1227 * go-backend.c: #include "simple-object.h" and "intl.h".
1228 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
1229 (GO_EXPORT_SECTION_NAME): Likewise.
1230 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
1231 (go_read_export_data): New function.
1232 * go-c.h (go_read_export_data): Declare.
1233
1234 2011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
1235 Ian Lance Taylor <iant@google.com>
1236
1237 * go-location.h: New file.
1238 * go-linemap.cc: New file.
1239 * go-gcc.cc: Change all uses of source_location to Location.
1240 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
1241 (GO_LINEMAP_H): New variable.
1242 (GO_LEX_H): Use $(GO_LINEMAP_H).
1243 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
1244 (go/go-linemap.o): New target.
1245
1246 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1247
1248 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
1249
1250 2011-08-24 Roberto Lublinerman <rluble@gmail.com>
1251
1252 * lang.opt: Add fgo-optimize-.
1253 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
1254 * go-c.h (go_enable_optimize): Declare.
1255 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
1256 (GO_EXPORT_H): Define.
1257 (GO_IMPORT_H): Add $(GO_EXPORT_H).
1258 (GO_AST_DUMP_H): Define.
1259 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
1260 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
1261 (go/types.o): Likewise.
1262 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
1263 (go/go-optimize.o): New target.
1264
1265 2011-08-24 Joseph Myers <joseph@codesourcery.com>
1266
1267 * Make-lang.in (CFLAGS-go/go-lang.o): New.
1268 (go/go-lang.o): Remove explicit compilation rule.
1269
1270 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1271
1272 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
1273
1274 2011-08-02 Roberto Lublinerman <rluble@gmail.com>
1275
1276 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
1277 (go/ast-dump.o): New target.
1278 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
1279 (go/statements.o): Likewise.
1280
1281 2011-07-06 Richard Guenther <rguenther@suse.de>
1282
1283 * go-lang.c (go_langhook_init):
1284 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
1285
1286 2011-06-14 Joseph Myers <joseph@codesourcery.com>
1287
1288 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
1289 dependencies.
1290 * go-backend.c: Include common/common-target.h.
1291 (go_write_export_data): Use targetm_common.have_named_sections.
1292 * go-lang.c: Include common/common-target.h.
1293 (go_langhook_init_options_struct): Use
1294 targetm_common.supports_split_stack.
1295
1296 2011-06-13 Ian Lance Taylor <iant@google.com>
1297
1298 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
1299
1300 2011-06-10 Ian Lance Taylor <iant@google.com>
1301
1302 * go-gcc.cc: Include "toplev.h".
1303 (Gcc_backend::immutable_struct): New function.
1304 (Gcc_backend::immutable_struct_set_init): New function.
1305 (Gcc_backend::immutable_struct_reference): New function.
1306 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
1307
1308 2011-06-09 Ian Lance Taylor <iant@google.com>
1309
1310 * go-gcc.cc (Gcc_backend::zero_expression): New function.
1311
1312 2011-06-07 Richard Guenther <rguenther@suse.de>
1313
1314 * go-lang.c (go_langhook_init): Do not set
1315 size_type_node or call set_sizetype.
1316
1317 2011-05-27 Ian Lance Taylor <iant@google.com>
1318
1319 * go-backend.c: Include "output.h".
1320 (go_write_export_data): New function.
1321 * go-c.h (go_write_export_data): Declare.
1322 * Make-lang.in (go/go-backend.o): Depend on output.h.
1323 (go/export.o): Depend on $(GO_C_H). Do not depend on
1324 $(MACHMODE_H), output.h, or $(TARGET_H).
1325
1326 2011-05-24 Joseph Myers <joseph@codesourcery.com>
1327
1328 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
1329 (gccgo$(exeext)): Use libcommon-target.a.
1330
1331 2011-05-20 Joseph Myers <joseph@codesourcery.com>
1332
1333 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
1334
1335 2011-05-13 Ian Lance Taylor <iant@google.com>
1336
1337 * go-gcc.cc (Gcc_backend::function_type): When building a struct
1338 for multiple results, check that all fields types have a size.
1339 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
1340
1341 2011-05-12 Ian Lance Taylor <iant@google.com>
1342
1343 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
1344 parameter.
1345 (Gcc_backend::parameter_variable): Likewise.
1346
1347 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
1348
1349 * go-lang.c (global_bindings_p): Return bool and simplify.
1350
1351 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
1352
1353 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
1354
1355 2011-05-04 Ian Lance Taylor <iant@google.com>
1356
1357 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
1358 (Gcc_backend::fill_in_struct): New function.
1359 (Gcc_backend::array_type): Implement.
1360 (Gcc_backend::fill_in_array): New function.
1361 (Gcc_backend::placeholder_pointer_type): New function.
1362 (Gcc_backend::set_placeholder_pointer_type): New function.
1363 (Gcc_backend::set_placeholder_function_type): New function.
1364 (Gcc_backend::placeholder_struct_type): New function.
1365 (Gcc_backend::set_placeholder_struct_type): New function.
1366 (Gcc_backend::placeholder_array_type): New function.
1367 (Gcc_backend::set_placeholder_array_type): New function.
1368 (Gcc_backend::named_type): New function.
1369 (Gcc_backend::circular_pointer_type): New function.
1370 (Gcc_backend::is_circular_pointer_type): New function.
1371
1372 2011-04-26 Ian Lance Taylor <iant@google.com>
1373
1374 * go-gcc.cc (Gcc_backend::struct_type): Implement.
1375
1376 2011-04-25 Ian Lance Taylor <iant@google.com>
1377
1378 * go-gcc.cc (Gcc_backend::error_type): Implement.
1379 (Gcc_backend::string_type): Remove.
1380 (Gcc_backend::function_type): Change signature and implement.
1381 (Gcc_backend::struct_type): Change signature.
1382 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
1383 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
1384 (Gcc_backend::pointer_type): Check for error.
1385 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
1386
1387 2011-04-25 Evan Shaw <edsrzf@gmail.com>
1388
1389 * go-gcc.c (class Gcc_tree): Make get_tree const.
1390 (Gcc_backend::void_type): Implement.
1391 (Gcc_backend::bool_type): Implement.
1392 (Gcc_backend::integer_type): Implement.
1393 (Gcc_backend::float_type): Implement.
1394 (Gcc_backend::complex_type): New function.
1395 (Gcc_backend::pointer_type): New function.
1396 (Gcc_backend::make_type): New function.
1397 (type_to_tree): New function.
1398
1399 2011-04-21 Ian Lance Taylor <iant@google.com>
1400
1401 * go-system.h (go_assert, go_unreachable): Define.
1402
1403 2011-04-19 Ian Lance Taylor <iant@google.com>
1404
1405 * go-system.h: Include "intl.h".
1406 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
1407 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
1408 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
1409
1410 2011-04-19 Ian Lance Taylor <iant@google.com>
1411
1412 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
1413
1414 2011-04-19 Ian Lance Taylor <iant@google.com>
1415
1416 * go-gcc.cc (class Bblock): Define.
1417 (Gcc_backend::if_statement): Change then_block and else_block to
1418 Bblock*.
1419 (Gcc_backend::block): New function.
1420 (Gcc_backend::block_add_statements): New function.
1421 (Gcc_backend::block_statement): New function.
1422 (tree_to_block, block_to_tree): New functions.
1423
1424 2011-04-18 Ian Lance Taylor <iant@google.com>
1425
1426 * go-gcc.cc: Include "go-c.h".
1427 (class Bvariable): Define.
1428 (Gcc_backend::init_statement): New function.
1429 (Gcc_backend::global_variable): New function.
1430 (Gcc_backend::global_variable_set_init): New function.
1431 (Gcc_backend::local_variable): New function.
1432 (Gcc_backend::parameter_variable): New function.
1433 (tree_to_type, var_to_tree): New functions.
1434 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
1435 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
1436
1437 2011-04-15 Ian Lance Taylor <iant@google.com>
1438
1439 * go-gcc.cc (Gcc_backend::compound_statement): New function.
1440 (Gcc_backend::assignment_statement): Use error_statement.
1441 (Gcc_backend::return_statement): Likewise.
1442 (Gcc_backend::if_statement): Likewise.
1443 (Gcc_backend::switch_statement): Likewise.
1444 (Gcc_backend::statement_list): Likewise.
1445
1446 2011-04-14 Ian Lance Taylor <iant@google.com>
1447
1448 * go-gcc.cc (Gcc_backend::error_statement): New function.
1449
1450 2011-04-13 Ian Lance Taylor <iant@google.com>
1451
1452 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
1453
1454 2011-04-13 Ian Lance Taylor <iant@google.com>
1455
1456 * Make-lang.in (GO_OBJS): Add go/runtime.o.
1457 (GO_RUNTIME_H): New variable.
1458 (go/runtime.o): New target.
1459 (go/gogo.o): Depend on $(GO_RUNTIME_H).
1460 (go/statements.o): Likewise.
1461
1462 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
1463
1464 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
1465 calling TREE_CHAIN.
1466
1467 2011-04-06 Ian Lance Taylor <iant@google.com>
1468
1469 * go-gcc.cc (if_statement): Use build3_loc.
1470 (Gcc_backend::switch_statement): New function.
1471 (Gcc_backend::statement_list): New function.
1472
1473 2011-04-06 Ian Lance Taylor <iant@google.com>
1474
1475 * go-gcc.cc (Gcc_backend::if_statement): New function.
1476 (tree_to_stat): New function.
1477 (expr_to_tree): Renamed from expression_to_tree.
1478 (stat_to_tree): Renamed from statement_to_tree.
1479
1480 2011-04-06 Ian Lance Taylor <iant@google.com>
1481
1482 * go-gcc.cc (Gcc_backend::expression_statement): New function.
1483
1484 2011-04-04 Ian Lance Taylor <iant@google.com>
1485
1486 * go-gcc.c (class Blabel): Define.
1487 (Gcc_backend::make_expression): New function.
1488 (get_identifier_from_string): New function.
1489 (Gcc_backend::label): New function.
1490 (Gcc_backend::label_definition_statement): New function.
1491 (Gcc_backend::goto_statement): New function.
1492 (Gcc_backend::label_address): New function.
1493 (expression_to_tree): New function.
1494 * Make-lang.in (go/expressions.o): Depend on
1495 go/gofrontend/backend.h.
1496 (go/gogo.o): Likewise.
1497
1498 2011-04-04 Ian Lance Taylor <iant@google.com>
1499
1500 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
1501 (class Bfunction): Define.
1502 (Gcc_backend::assignment_statement): Rename from assignment.
1503 Check for errors.
1504 (Gcc_backend::return_statement): New function.
1505 (tree_to_function): New function.
1506 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
1507 $(GIMPLE_H), and $(GO_GOGO_H).
1508
1509 2011-04-03 Ian Lance Taylor <iant@google.com>
1510
1511 * go-gcc.cc: New file.
1512 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
1513 (go/go-gcc.o): New target.
1514 (go/go.o): Depend on go/gofrontend/backend.h.
1515 (go/statements.o): Likewise.
1516
1517 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1518
1519 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
1520
1521 2011-02-08 Ian Lance Taylor <iant@google.com>
1522
1523 * go-lang.c (go_langhook_init_options_struct): Set
1524 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
1525
1526 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1527
1528 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
1529 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
1530
1531 2011-01-21 Ian Lance Taylor <iant@google.com>
1532
1533 * go-lang.c (go_langhook_init): Omit float_type_size when calling
1534 go_create_gogo.
1535 * go-c.h: Update declaration of go_create_gogo.
1536
1537 2011-01-13 Ian Lance Taylor <iant@google.com>
1538
1539 * go-backend.c: Include "rtl.h" and "target.h".
1540 (go_imported_unsafe): New function.
1541 * go-c.h (go_imported_unsafe): Declare.
1542 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
1543 (go/gogo-tree.o): Remove dependency on $(RTL_H).
1544 (go/unsafe.o): Depend on $(GO_C_H).
1545
1546 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
1547
1548 PR go/47113
1549 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
1550 variable ‘field’ .
1551
1552 2010-12-21 Ian Lance Taylor <iant@google.com>
1553
1554 * Make-lang.in (check-go): Remove.
1555 (lang_checks_parallelized): Add check-go.
1556 (check_go_parallelize): Set.
1557
1558 2010-12-13 Ian Lance Taylor <iant@google.com>
1559
1560 * gospec.c (lang_specific_driver): Add a -o option if not linking
1561 and there is no -o option already.
1562
1563 2010-12-07 Ian Lance Taylor <iant@google.com>
1564
1565 PR tree-optimization/46805
1566 PR tree-optimization/46833
1567 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
1568
1569 2010-12-06 Ian Lance Taylor <iant@google.com>
1570
1571 PR other/46789
1572 PR bootstrap/46812
1573 * go-lang.c (go_char_p): Define type and vectors.
1574 (go_search_dirs): New static variable.
1575 (go_langhook_handle_option): Use version and version/machine
1576 directories for -L.
1577 (go_langhook_post_options): Add non-specific -L paths.
1578 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
1579 DEFAULT_TARGET_MACHINE when compiling.
1580 * gccgo.texi (Invoking gccgo): Only document -L for linking.
1581 (Import and Export): Don't mention -L for finding import files.
1582
1583 2010-12-03 Ian Lance Taylor <iant@google.com>
1584
1585 PR bootstrap/46776
1586 * go-backend.c: New file.
1587 * go-c.h (go_type_alignment): Declare.
1588 (go_field_alignment, go_trampoline_info): Declare.
1589 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
1590 (go/go-backend.o): New target.
1591 (go/go-lang.o): Make dependencies match source file.
1592 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
1593 (go/gogo-tree.o): Don't depend on $(TM_H).
1594
1595 2010-12-03 Ian Lance Taylor <iant@google.com>
1596
1597 * config-lang.in (build_by_default): Set to no.
1598
1599 2010-12-02 Ian Lance Taylor <iant@google.com>
1600
1601 Go frontend added to gcc repository.
1602 \f
1603 Copyright (C) 2010-2019 Free Software Foundation, Inc.
1604
1605 Copying and distribution of this file, with or without modification,
1606 are permitted in any medium without royalty provided the copyright
1607 notice and this notice are preserved.