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