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