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