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