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