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