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