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