]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/go/ChangeLog
changelog: Fix extra space after tab.
[thirdparty/gcc.git] / gcc / go / ChangeLog
CommitLineData
83d400bd
GA
12022-11-14 Martin Liska <mliska@suse.cz>
2
3 Revert:
4 2022-11-14 Martin Liska <mliska@suse.cz>
5
6 * doc/c-interoperability.rst: New file.
7 * doc/c-type-interoperability.rst: New file.
8 * doc/compiler-directives.rst: New file.
9 * doc/conf.py: New file.
10 * doc/copyright.rst: New file.
11 * doc/function-names.rst: New file.
12 * doc/general-public-license-3.rst: New file.
13 * doc/gnu-free-documentation-license.rst: New file.
14 * doc/import-and-export.rst: New file.
15 * doc/index.rst: New file.
16 * doc/indices-and-tables.rst: New file.
17 * doc/introduction.rst: New file.
18 * doc/invoking-gccgo.rst: New file.
19
202022-11-14 Martin Liska <mliska@suse.cz>
21
22 Revert:
23 2022-11-14 Martin Liska <mliska@suse.cz>
24
25 * Make-lang.in: Support Sphinx based documentation.
26
272022-11-14 Martin Liska <mliska@suse.cz>
28
29 Revert:
30 2022-11-14 Martin Liska <mliska@suse.cz>
31
32 * gccgo.texi: Removed.
33
342022-11-14 Martin Liska <mliska@suse.cz>
35
36 Revert:
37 2022-11-14 Martin Liska <mliska@suse.cz>
38
39 * Make-lang.in: Support --with-sphinx-build.
40
412022-11-14 Martin Liska <mliska@suse.cz>
42
43 Revert:
44 2022-11-14 Martin Liska <mliska@suse.cz>
45
46 * Make-lang.in:
47 Support installation if sphinx-build is missing.
48 Support installation if sphinx-build is missing.
49
502022-11-14 Martin Liska <mliska@suse.cz>
51
52 Revert:
53 2022-11-14 Martin Liska <mliska@suse.cz>
54
55 * doc/c-interoperability.rst:
3d3b561f 56 Add trailing newline.
83d400bd 57 * doc/c-type-interoperability.rst:
3d3b561f 58 Add trailing newline.
83d400bd 59 * doc/compiler-directives.rst:
3d3b561f 60 Add trailing newline.
83d400bd 61 * doc/copyright.rst:
3d3b561f 62 Add trailing newline.
83d400bd 63 * doc/function-names.rst:
3d3b561f 64 Add trailing newline.
83d400bd 65 * doc/general-public-license-3.rst:
3d3b561f 66 Add trailing newline.
83d400bd 67 * doc/gnu-free-documentation-license.rst:
3d3b561f 68 Add trailing newline.
83d400bd 69 * doc/import-and-export.rst:
3d3b561f 70 Add trailing newline.
83d400bd 71 * doc/index.rst:
3d3b561f 72 Add trailing newline.
83d400bd 73 * doc/indices-and-tables.rst:
3d3b561f 74 Add trailing newline.
83d400bd 75 * doc/introduction.rst:
3d3b561f 76 Add trailing newline.
83d400bd 77 * doc/invoking-gccgo.rst:
3d3b561f 78 Add trailing newline.
83d400bd
GA
79
802022-11-14 Martin Liska <mliska@suse.cz>
81
82 Revert:
83 2022-11-14 Martin Liska <mliska@suse.cz>
84
85 * doc/conf.py: Add newline at last line.
86
f225b813
GA
872022-11-10 Martin Liska <mliska@suse.cz>
88
89 * doc/conf.py: Add newline at last line.
90
1cdfd0e5
GA
912022-11-10 Ian Lance Taylor <iant@golang.org>
92
93 PR target/107581
94 * go-gcc.cc (Gcc_backend::Gcc_backend): Define
95 __atomic_fetch_add_{4,8}.
96
972022-11-09 Martin Liska <mliska@suse.cz>
98
99 * doc/c-interoperability.rst:
3d3b561f 100 Add trailing newline.
1cdfd0e5 101 * doc/c-type-interoperability.rst:
3d3b561f 102 Add trailing newline.
1cdfd0e5 103 * doc/compiler-directives.rst:
3d3b561f 104 Add trailing newline.
1cdfd0e5 105 * doc/copyright.rst:
3d3b561f 106 Add trailing newline.
1cdfd0e5 107 * doc/function-names.rst:
3d3b561f 108 Add trailing newline.
1cdfd0e5 109 * doc/general-public-license-3.rst:
3d3b561f 110 Add trailing newline.
1cdfd0e5 111 * doc/gnu-free-documentation-license.rst:
3d3b561f 112 Add trailing newline.
1cdfd0e5 113 * doc/import-and-export.rst:
3d3b561f 114 Add trailing newline.
1cdfd0e5 115 * doc/index.rst:
3d3b561f 116 Add trailing newline.
1cdfd0e5 117 * doc/indices-and-tables.rst:
3d3b561f 118 Add trailing newline.
1cdfd0e5 119 * doc/introduction.rst:
3d3b561f 120 Add trailing newline.
1cdfd0e5 121 * doc/invoking-gccgo.rst:
3d3b561f 122 Add trailing newline.
1cdfd0e5
GA
123
1242022-11-09 Martin Liska <mliska@suse.cz>
125
126 * Make-lang.in:
127 Support installation if sphinx-build is missing.
128 Support installation if sphinx-build is missing.
129
1302022-11-09 Martin Liska <mliska@suse.cz>
131
132 * Make-lang.in: Support --with-sphinx-build.
133
1342022-11-09 Martin Liska <mliska@suse.cz>
135
136 * gccgo.texi: Removed.
137
1382022-11-09 Martin Liska <mliska@suse.cz>
139
140 * Make-lang.in: Support Sphinx based documentation.
141
1422022-11-09 Martin Liska <mliska@suse.cz>
143
144 * doc/c-interoperability.rst: New file.
145 * doc/c-type-interoperability.rst: New file.
146 * doc/compiler-directives.rst: New file.
147 * doc/conf.py: New file.
148 * doc/copyright.rst: New file.
149 * doc/function-names.rst: New file.
150 * doc/general-public-license-3.rst: New file.
151 * doc/gnu-free-documentation-license.rst: New file.
152 * doc/import-and-export.rst: New file.
153 * doc/index.rst: New file.
154 * doc/indices-and-tables.rst: New file.
155 * doc/introduction.rst: New file.
156 * doc/invoking-gccgo.rst: New file.
157
d0fc05e8
GA
1582022-09-15 Richard Biener <rguenther@suse.de>
159
160 * go-lang.cc (go_langhook_init): Do not initialize
161 void_list_node.
162
c64b0947
GA
1632022-09-02 Martin Liska <mliska@suse.cz>
164
165 * go-lang.cc (go_langhook_pushdecl): Remove -gstabs option support, DBX-related
3d3b561f 166 macros and DBX debugging info support.
c64b0947
GA
167 * gospec.cc (lang_specific_driver): Likewise.
168
7bcd7f47
GA
1692022-07-16 Ian Lance Taylor <iant@golang.org>
170
171 * go-gcc.cc (Gcc_backend::struct_field_expression): Handle a void
172 expression, as for f().x where f returns a zero-sized type.
173
bdc7b765
GA
1742022-07-15 Ian Lance Taylor <iant@golang.org>
175
176 * go-gcc.cc (Gcc_backend::call_expression): Handle a void
177 argument, as for f(g()) where g returns a zero-sized type.
178
b168441c
GA
1792022-06-02 David Malcolm <dmalcolm@redhat.com>
180
181 * go-lang.cc (go_get_sarif_source_language): New.
182 (LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): Redefine.
183
820ead45
GA
1842022-05-31 Jason Merrill <jason@redhat.com>
185
186 * Make-lang.in (go.tags): Look at *.cc.
187
0d31c8ec
GA
1882022-02-13 Ian Lance Taylor <iant@golang.org>
189
190 * gospec.cc: Revert 2022-02-09 change:
191 (RTLIB, RT_LIBRARY): Don't define.
192 (lang_specific_driver): Don't add -lrt if linking statically
193 on GNU/Linux.
194
3adf509f
GA
1952022-02-09 Ian Lance Taylor <iant@golang.org>
196
197 * gospec.cc (RTLIB, RT_LIBRARY): Define.
198 (lang_specific_driver): Add -lrt if linking statically on
199 GNU/Linux.
200
2012022-02-09 Ian Lance Taylor <iant@golang.org>
202
203 * go-gcc.cc (Gcc_backend::Gcc_backend): Define builtins
204 __atomic_load_1 and __atomic_store_1.
205
fc829782
GA
2062022-01-17 Martin Liska <mliska@suse.cz>
207
208 * config-lang.in: Rename .c names to .cc.
209 * go-backend.cc: Likewise.
210 * go-lang.cc: Likewise.
211 * gospec.cc: Likewise.
212 * lang-specs.h: Likewise.
213
2142022-01-17 Martin Liska <mliska@suse.cz>
215
216 * go-backend.c: Moved to...
217 * go-backend.cc: ...here.
218 * go-lang.c: Moved to...
219 * go-lang.cc: ...here.
220 * gospec.c: Moved to...
221 * gospec.cc: ...here.
222
a4ae8c37
GA
2232022-01-03 Jakub Jelinek <jakub@redhat.com>
224
225 * gccgo.texi: Bump @copyrights-go year.
226
054e57e4
GA
2272021-12-28 Martin Liska <mliska@suse.cz>
228
229 * gccgo.texi: Replace http:// with https.
230
87cd82c8
GA
2312021-11-29 Eric Gallager <egallager@gcc.gnu.org>
232
233 PR other/103021
234 * Make-lang.in: Use ETAGS variable in TAGS target.
235
cf966403
GA
2362021-09-27 Martin Liska <mliska@suse.cz>
237
238 * go-lang.c (go_langhook_init_options_struct): Set also
3d3b561f 239 x_flag_default_complex_method.
cf966403 240
6bc18203
GA
2412021-06-29 Ian Lance Taylor <iant@golang.org>
242
243 * go-gcc.cc (Gcc_backend::static_chain_variable): Set
244 DECL_NAMELESS on the new decl.
245 (Gcc_backend::temporary_variable): Likewise.
246 (Gcc_backend::function): Set DECL_NAMELESS on the result decl.
247
cd62d089
GA
2482021-05-27 Ian Lance Taylor <iant@golang.org>
249
250 * gccgo.texi (Function Names): Don't HTML quote ampersand.
251
637569df
GA
2522021-05-24 Ian Lance Taylor <iant@golang.org>
253
254 PR go/100537
255 * go-gcc.cc (class Gcc_backend): Update methods that create
256 variables to take a flags parameter.
257
85d04a2e
GA
2582021-01-28 Ian Lance Taylor <iant@golang.org>
259
260 * gospec.c (lang_specific_driver): Add -g if no debugging options
261 were passed.
262
2f7f0d32
GA
2632021-01-15 Ian Lance Taylor <iant@golang.org>
264
265 * Make-lang.in (GO_OBJS): Add go/embed.o.
266
651b8a50
GA
2672021-01-05 Jakub Jelinek <jakub@redhat.com>
268
269 * lang.opt (fgo-embedcfg=): Add full stop at the end of description.
270
2712021-01-05 Ian Lance Taylor <iant@golang.org>
272
273 * lang.opt (fgo-embedcfg): New option.
274 * go-c.h (struct go_create_gogo_args): Add embedcfg field.
275 * go-lang.c (go_embedcfg): New static variable.
276 (go_langhook_init): Set go_create_gogo_args embedcfg field.
277 (go_langhook_handle_option): Handle OPT_fgo_embedcfg_.
278 * gccgo.texi (Invoking gccgo): Document -fgo-embedcfg.
279
b6dd195a
GA
2802021-01-01 Jakub Jelinek <jakub@redhat.com>
281
282 * gccgo.texi: Bump @copyrights-go year.
283
077fefbf
GA
2842020-12-22 Ian Lance Taylor <iant@golang.org>
285
286 PR go/98402
287 * go-lang.c (go_langhook_init): Force MPFR exponent range to be
288 large enough to support Go constants.
289
82e5048e
GA
2902020-11-20 Jakub Jelinek <jakub@redhat.com>
291
292 PR other/97911
293 * Make-lang.in (go.serial): Change from goal to a variable.
294 (.PHONY): Drop go.serial and go.prev.
295 (go1$(exeext)): Depend on $(go.serial) rather than go.serial.
296
25bb75f8
GA
2972020-11-18 Jakub Jelinek <jakub@redhat.com>
298
299 * Make-lang.in (go.serial): New goal.
300 (.PHONY): Add go.serial go.prev.
301 (go1$(exeext)): Depend on go.prev. Call LINK_PROGRESS.
302
0f5f9ed5
GA
3032020-11-11 Alan Modra <amodra@gmail.com>
304
305 * go-gcc.cc (Gcc_backend::global_variable_set_init): Cast NULL to
306 avoid ambiguous overloaded call.
307
44cab2d8
GA
3082020-11-06 Nathan Sidwell <nathan@acm.org>
309
310 * go-gcc.cc (Gcc_backend::call_expression): Rename
311 DECL_IS_BUILTIN->DECL_IS_UNDECLARED_BUILTIN.
312
35c125cb
GA
3132020-11-04 Ian Lance Taylor <iant@golang.org>
314
315 * go-lang.c (go_langhook_post_options): Disable
316 -fipa-icf-functions if it was not explicitly enabled.
317
50a71cd0
GA
3182020-09-14 Jakub Jelinek <jakub@redhat.com>
319
320 * go-gcc.cc (Gcc_backend::function): Adjust
321 cl_optimization_save, cl_optimization_restore and
322 build_optimization_node callers.
323
84005b8a
GA
3242020-08-10 Clément Chigot <chigot.c@gmail.com>
325
326 * go-c.h (struct go_create_gogo_args): Add need_eqtype field.
327 * go-lang.c (go_langhook_init): Set need_eqtype.
328
eef00439
ILT
3292020-04-15 Ian Lance Taylor <iant@golang.org>
330
331 PR go/94607
332 * go-gcc.cc (class Gcc_backend): Define builtin_const,
333 builtin_noreturn, builtin_novops.
334 (Gcc_backend::define_builtin): Change const_p and noreturn_p
335 parameters to a single flags parameter. Change all callers.
336 (Gcc_backend::Gcc_backend): Pass novops for prefetch.
337
7e7065b9
JJ
3382020-01-01 Jakub Jelinek <jakub@redhat.com>
339
8d9254fc
JJ
340 Update copyright years.
341
7e7065b9
JJ
342 * gccgo.texi: Bump @copyrights-go year.
343
6ed76044
ML
3442019-11-12 Martin Liska <mliska@suse.cz>
345
346 * go-lang.c (go_langhook_post_options):
347 Use SET_OPTION_IF_UNSET.
348
f44526e3
ILT
3492019-09-04 Ian Lance Taylor <iant@golang.org>
350
351 PR tree-optimization/91663
352 * go-lang.c (go_langhook_post_options): Clear
353 flag_partial_inlining.
354
df375b03
JJ
3552019-08-23 Jakub Jelinek <jakub@redhat.com>
356
357 PR middle-end/91283
358 * go-lang.c (go_langhook_post_options): Set flag_excess_precision
359 instead of flag_excess_precision_cmdline.
360
e2790e1e
CZ
3612019-07-02 Cherry Zhang <cherryyz@google.com>
362
363 * go-gcc.cc (Gcc_backend::Gcc_backend): Define __builtin_memset.
364
d54cf3a4
CZ
3652019-06-21 Cherry Zhang <cherryyz@google.com>
366
367 * go-gcc.cc (Gcc_backend::Gcc_backend): Define math/bits
368 builtins.
369
00a0e1f5
JW
3702019-05-30 Jim Wilson <jimw@sifive.com>
371
372 * go-gcc.cc (Gcc_backend::Gcc_backend): Add BUILT_IN_ATOMIC_FETCH_AND_1
373 and BUILT_IN_ATOMIC_FETCH_OR_1.
374
395389bf
CZ
3752019-05-16 Cherry Zhang <cherryyz@google.com>
376
377 * go-gcc.cc (Gcc_backend::Gcc_backend): Define atomic builtins.
378
fbe4e644
CZ
3792019-05-08 Cherry Zhang <cherryyz@google.com>
380
381 * go-gcc.cc (Gcc_backend::Gcc_backend): Define memmove builtin.
382
f837b9c4
CZ
3832019-05-07 Cherry Zhang <cherryyz@google.com>
384
385 * lang.opt (-fgo-debug-optimization): New option.
386 * go-c.h (struct go_create_gogo_args): Add debug_optimization
387 field.
388 * go-lang.c (go_langhook_init): Set debug_optimization field.
389 * gccgo.texi (Invoking gccgo): Document -fgo-debug-optimization.
390
c0017f91
ILT
3912019-03-06 Ian Lance Taylor <iant@golang.org>
392
393 PR go/89227
394 * go-gcc.cc (Gcc_backend::function): Set TREE_PUBLIC for an
395 only-inline function.
396
fba70f60
CZ
3972019-02-15 Cherry Zhang <cherryyz@google.com>
398
399 * go-gcc.cc (Gcc_backend::Gcc_backend): Define __builtin_dwarf_cfa
400 instead of __builtin_frame_address.
401
b90fff0c
ILT
4022019-02-14 Ian Lance Taylor <iant@golang.org>
403
404 * go-backend.c (go_imported_unsafe): Update
405 optimization_default_node.
406
0ce1c30b
ILT
4072019-02-13 Ian Lance Taylor <iant@golang.org>
408
409 * go-gcc.cc: #include "opts.h".
410 (Gcc_backend::function): Compile thunks with -Os.
411
ce4321c9
NB
4122019-02-05 Nikhil Benesch <nikhil.benesch@gmail.com>
413
ab20d992
JJ
414 PR go/89019
415 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Mark
416 placeholder structs as requiring structural equality.
417 (Gcc_backend::set_placeholder_pointer_type): Propagate the
ce4321c9
NB
418 canonical type from the desired pointer type to the placeholder
419 pointer type.
420
eea11d66
ILT
4212019-01-09 Ian Lance Taylor <iant@golang.org>
422
423 PR go/86343
424 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Go back to
425 build_distinct_type_copy, but copy the fields so that they have
426 the right DECL_CONTEXT.
427
67914693
SL
4282019-01-09 Sandra Loosemore <sandra@codesourcery.com>
429
430 PR other/16615
431
432 * go-backend.c: Mechanically replace "can not" with "cannot".
433 * go-gcc.cc: Likewise.
434
3f27508c
JJ
4352019-01-01 Jakub Jelinek <jakub@redhat.com>
436
a5544970
JJ
437 Update copyright years.
438
3f27508c
JJ
439 * gccgo.texi: Bump @copyrights-go year.
440
862ec763
ILT
4412018-11-27 Ian Lance Taylor <iant@golang.org>
442
443 * go-gcc.cc (Gcc_backend::function): Handle function_only_inline
444 flag.
445
620e594b
DM
4462018-11-13 David Malcolm <dmalcolm@redhat.com>
447
448 * go-gcc-diagnostics.cc: Replace "source_location" with "location_t".
449 * go-gcc.cc: Likewise.
450 * go-linemap.cc: Likewise.
451 * go-location.h: Likewise.
452 * gofrontend/README: Likewise.
453
964f78b7
ILT
4542018-10-31 Ian Lance Taylor <iant@golang.org>
455
456 * go-gcc.cc (Gcc_backend::write_global_definitions): Don't call
457 gimplify_function_tree. Instead call allocate_struct_function if
458 necessary.
459
a4e30bef
ILT
4602018-10-29 Ian Lance Taylor <iant@golang.org>
461
462 * go-gcc.cc (Gcc_backend::function): Change to use a single flags
463 parameter.
464
943cc2fb
ILT
4652018-10-29 Ian Lance Taylor <iant@golang.org>
466
467 * go-linemap.cc (Gcc_linemap::location_file): New method.
468
033eb567
DM
4692018-10-17 David Malcolm <dmalcolm@redhat.com>
470
471 * Make-lang.in (selftest-go): New.
472
0b7fb27b
ASJ
4732018-09-20 Allan Sandfeld Jensen <allan.jensen@qt.io>
474
475 * gospec.c (lang_specific_driver): Handle -r like -nostdlib.
476
3d78e008
ML
4772018-08-27 Martin Liska <mliska@suse.cz>
478
479 * go-gcc.cc (Gcc_backend::call_expression): Use new function
92a285c1
ML
480 fndecl_built_in_p and remove check for FUNCTION_DECL if
481 possible.
3d78e008 482
00abf86c
MS
4832018-07-20 Martin Sebor <msebor@redhat.com>
484
485 PR middle-end/82063
486 * go-lang.c (go_langhook_handle_option): Change function argument
487 to HOST_WIDE_INT.
488
a0e8e630
ILT
4892018-06-28 Ian Lance Taylor <iant@golang.org>
490
491 PR go/86343
492 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Call
493 build_variant_type_copy rather than build_distinct_type_copy.
494
88f12328
CZ
4952018-06-08 Cherry Zhang <cherryyz@google.com>
496
497 * go-gcc.cc (class Gcc_backend): Remove
498 stack_allocation_expression method.
499
3df9a1fe
ILT
5002018-02-03 Ian Lance Taylor <iant@golang.org>
501
502 * go-gcc.cc (Gcc_backend::fill_in_struct): Mark struct types as
503 using structural equality.
504
c2a0fe56
ILT
5052018-02-02 Ian Lance Taylor <iant@golang.org>
506
507 * go-gcc.cc (Gcc_backend::type_size): Return 0 for
508 void_type_node.
509 (Gcc_backend::convert_expression): Don't convert if the type of
510 expr_tree is void_type_node.
511 (Gcc_backend::array_index_expression): Don't index if the type of
512 the array expression is void_type_node.
513 (Gcc_backend::init_statement): Don't initialize if the type of the
514 initializer expression is void_type_node.
515 (Gcc_backend::assignment_statement): Don't assign if the type of
516 either the left or right hand side is void_type_node.
517 (Gcc_backend::temporary_variable): Don't initialize if the type of
518 the initializer expression is void_type_node.
519
2794baab
CZ
5202018-02-01 Cherry Zhang <cherryyz@google.com>
521
522 * lang.opt (fgo-optimize): Remove RejectNegative.
523 * go-c.h (go_enable_optimize): Update declaration to take value
524 argument.
525 * go-lang.c (go_langhook_handle_option): Pass value to
526 go_enable_optimize.
527 * gccgo.texi (Invoking gccgo): Update -fgo-optimize-allocs doc.
528
ebc2f401
ILT
5292018-01-30 Ian Lance Taylor <iant@golang.org>
530
531 * go-gcc.cc (Gcc_backend::convert_tree): New private method.
532 (Gcc_backend::constructor_expression): Call it.
533 (Gcc_backend::assignment_statement): Likewise.
534 (Gcc_backend::temporary_variable): Likewise.
535
81e0f092
CZ
5362018-01-09 Cherry Zhang <cherryyz@google.com>
537
538 * go-gcc.cc (local_variable): Add decl_var parameter.
539
594d0e51
CZ
5402018-01-09 Cherry Zhang <cherryyz@google.com>
541
542 * lang.opt (fgo-debug-escape-hash): New option.
543 * go-c.h (struct go_create_gogo_args): Add debug_escape_hash
544 field.
545 * go-lang.c (go_langhook_init): Set debug_escape_hash field.
546 * gccgo.texi (Invoking gccgo): Document -fgo-debug-escape-hash.
547
677202a2
ILT
5482018-01-05 Ian Lance Taylor <iant@golang.org>
549
550 * go-gcc.cc (Gcc_backend::Gcc_backend): Correct
551 math_function_type_long to take one argument.
552
5c0caeb3
RS
5532018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
554 Alan Hayward <alan.hayward@arm.com>
555 David Sherwood <david.sherwood@arm.com>
556
557 * go-lang.c (go_langhook_type_for_mode): Handle MODE_VECTOR_BOOL.
558
928686b1
RS
5592018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
560 Alan Hayward <alan.hayward@arm.com>
561 David Sherwood <david.sherwood@arm.com>
562
563 * go-lang.c (go_langhook_type_for_mode): Check valid_vector_subparts_p.
564
65e6aea3
JJ
5652018-01-03 Jakub Jelinek <jakub@redhat.com>
566
85ec4feb
JJ
567 Update copyright years.
568
65e6aea3
JJ
569 * gccgo.texi: Bump @copyrights-go year.
570
acdef7f8
TR
5712017-12-12 Tony Reix <tony.reix@atos.net>
572 Ian Lance Taylor <iant@golang.org>
573
574 * go-lang.c (TARGET_AIX): Define if not defined.
575 (go_langhook_init): Set nil_check_size_threshold to -1 on AIX.
576
9638589f
ILT
5772017-12-01 Ian Lance Taylor <iant@golang.org>
578
579 * go-gcc.cc (Gcc_backend::Gcc_backend): Define
580 __builtin_unreachable.
581 (Gcc_backend::function): Add does_not_return parameter.
582
92f0112c
TM
5832017-12-01 Than McIntosh <thanm@google.com>
584
585 * go-c.h (go_create_gogo_args): Add nil_check_size_threshold
586 field.
587 * go-lang.c (go_langhook_init): Set nil_check_size_threshold.
588
9e851845
JJ
5892017-11-28 Jakub Jelinek <jakub@redhat.com>
590
591 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR using
592 build2_loc instead of build3_loc.
593
f60bea11
TM
5942017-11-14 Than McIntosh <thanm@google.com>
595
596 * go-gcc.cc (var_expression): Remove Varexpr_context parameter.
597
e94574b3
TR
5982017-10-11 Tony Reix <tony.reix@atos.net>
599
600 * go-system.h (__STDC_FORMAT_MACROS): Define before including any
601 system header files, as is done in ../system.h.
602
9add86be
ILT
6032017-10-05 Ian Lance Taylor <iant@golang.org>
604
605 * Make-lang.in (GO_OBJS): Add go/names.o.
606
a97390bf
RS
6072017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
608 Alan Hayward <alan.hayward@arm.com>
609 David Sherwood <david.sherwood@arm.com>
610
611 * go-lang.c (go_langhook_type_for_mode): Use is_complex_float_mode.
612
b4206259
RS
6132017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
614 Alan Hayward <alan.hayward@arm.com>
615 David Sherwood <david.sherwood@arm.com>
616
617 * go-lang.c (go_langhook_type_for_mode): Use is_int_mode.
618
e386a52f
RS
6192017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
620 Alan Hayward <alan.hayward@arm.com>
621 David Sherwood <david.sherwood@arm.com>
622
623 * go-lang.c (go_langhook_type_for_mode): Use is_float_mode.
624
577eec56
ML
6252017-08-07 Martin Liska <mliska@suse.cz>
626
627 * go-gcc.cc (Gcc_backend::function): Look up for no_split_stack
628 and not __no_split_stack__.
629
4ce21457
TR
6302017-07-27 Tony Reix <tony.reix@atos.net>
631
632 * go-backend.c (go_write_export_data): Use EXCLUDE section for
633 AIX.
634
a1f427e9
ILT
6352017-06-09 Ian Lance Taylor <iant@golang.org>
636
637 * go-lang.c (go_langhook_post_options): If -fsplit-stack is turned
638 on, disable implicit -forder-blocks-and-partition.
639
da55a299
TM
6402017-05-12 Than McIntosh <thanm@google.com>
641
642 * go-gcc.cc (Gcc_backend::call_expression): Add caller parameter.
643
be18b176
ILT
6442017-05-11 Ian Lance Taylor <iant@google.com>
645
646 PR go/64238
647 * go-gcc.cc (Gcc_backend::implicit_variable_reference): Set
648 DECL_EXTERNAL, clear TREE_STATIC.
649
f163907e
ILT
6502017-05-10 Than McIntosh <thanm@google.com>
651
652 * go-backend.c: Include "go-c.h".
653 * go-gcc.cc (Gcc_backend::write_export_data): New method.
654
6552017-05-10 Ian Lance Taylor <iant@google.com>
656
657 * go-gcc.cc (Gcc_backend::Gcc_backend): Declare
658 __builtin_prefetch.
659 * Make-lang.in (GO_OBJS): Add go/wb.o.
660
1f599d75
TM
6612017-03-28 Than McIntosh <thanm@google.com>
662
663 PR go/80226
664 * go-gcc.cc (Gcc_backend::return_statement): Check for
665 void_type_node when checking result size.
666
db03bf50
ILT
6672017-02-20 Ian Lance Taylor <iant@golang.org>
668
669 PR go/79642
670 * lang.opt (-fgo-relative-import-path): Change space to tab.
671
a4cf4b64
RB
6722017-02-07 Richard Biener <rguenther@suse.de>
673
674 PR tree-optimization/79256
675 PR middle-end/79278
676 * go-backend.c (go_field_alignment): Adjust.
677
a2182c9c
TM
6782017-01-11 Than McIntosh <thanm@google.com>
679
680 * go-gcc.cc (conditional_expression): Add Bfunction parameter.
681
c1a9c369
JJ
6822017-01-01 Jakub Jelinek <jakub@redhat.com>
683
cbe34bb5
JJ
684 Update copyright years.
685
c1a9c369
JJ
686 * gccgo.texi: Bump @copyrights-go year.
687
8220e3f9
TM
6882016-12-16 Than McIntosh <thanm@google.com>
689
690 * go-gcc.cc (Gcc_backend::expression_statement): Add Bfunction*
691 parameter.
692 (Gcc_backend::init_statement): Likewise.
693 (Gcc_backend::assignment_statement): Likewise.
694 (Gcc_backend::if_statement): Likewise.
695
a5a56d88
TM
6962016-12-06 Than McIntosh <thanm@google.com>
697
698 * go-gcc.cc (Gcc_backend::var_expression): Add Varexpr_context
699 parameter.
700
f3878205
TM
7012016-11-22 Than McIntosh <thanm@google.com>
702
703 * go-gcc.cc (char_needs_encoding): Remove.
704 (needs_encoding, fetch_utf8_char, encode_id): Remove.
705 (Gcc_backend::global_variable): Add asm_name parameter. Don't
706 compute asm_name here.
707 (Gcc_backend::implicit_variable): Likewise.
708 (Gcc_backend::implicit_variable_reference): Likewise.
709 (Gcc_backend::immutable_struct): Likewise.
710 (Gcc_backend::immutable_struct_reference): Likewise.
711 * Make-lang.in (GO_OBJS): Add go/go-encode-id.o.
712
9d1e3afb
ILT
7132016-11-22 Ian Lance Taylor <iant@google.com>
714
715 * go-gcc.cc (Gcc_backend::Gcc_backend): Add builtin function
716 __builtin_frame_address.
717
4b3aaca6
DM
7182016-10-25 David Malcolm <dmalcolm@redhat.com>
719
720 * go-lang.c (go_langhook_type_for_mode): Remove redundant cast
721 from result of GET_MODE_CLASS. Minor formatting fixes.
722
4d0cdd0c
TP
7232016-10-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
724
725 * go-backend.c: Include memmodel.h.
726
3c061ac0
TM
7272016-10-10 Than McIntosh <thanm@google.com>
728
729 * go-gcc.h: New file.
730 * go-c.h (struct go_create_gogo_args): Add backend and linemap
731 fields.
732 * go-lang.c: Include "go-gcc.h".
733 (go_langhook_init): Set linemap and backend fields of args.
734 * go-gcc.cc: Include "go-gcc.h".
735 * go-linemap.cc: Include "go-gcc.h".
736
71543388
TM
7372016-10-10 Than McIntosh <thanm@google.com>
738
739 * go-linemap.cc (Gcc_linemap::location_line): New method.
740
f47ef399
EB
7412016-10-10 Eric Botcazou <ebotcazou@adacore.com>
742
743 * config-lang.in (lang_requires_boot_languages): Delete.
744
4c4430e3
CM
7452016-10-06 Chris Manghane <cmang@google.com>
746
747 * go-gcc.cc (Gcc_backend::stack_allocation_expression): Clear the
748 returned memory.
749
437018ea
TM
7502016-09-27 Than McIntosh <thanm@google.com>
751
752 * go-linemap.cc (Gcc_linemap::to_string): New method.
753
56bafc49
TM
7542016-09-23 Than McIntosh <thanm@google.com>
755
756 * go-gcc-diagnostics.cc: New file.
757 * go-location.h (Location): Remove operator source_location. Add
758 operator==.
759 * go-system.h: #include <sstream>.
760 * Make-lang.in (GO_OBJS): Add go/go-diagnostics.o and
761 go/go-gcc-diagnostics.o.
762 (CFLAGS-go/go-gcc-diagnostics.o): New variable.
763
fdbda43d
CM
7642016-09-23 Chris Manghane <cmang@google.com>
765
766 PR go/77701
767 * go-gcc.cc (Gcc_backend::Gcc_backend): Fix calls to integer_type
768 to pass arguments in the correct order.
769
0cb904af
ILT
7702016-09-22 Ian Lance Taylor <iant@golang.org>
771
772 * go-gcc.cc (Gcc_backend::Gcc_backend): Declare
773 __builtin_frame_address.
774
a8464243
ILT
7752016-09-11 Ian Lance Taylor <iant@golang.org>
776
777 * go-gcc.cc (Gcc_backend::Gcc_backend): Add builtin versions of
778 ctz, ctzll, bswap32, bswap64.
779
ec1ea9cf
ILT
7802016-09-10 Ian Lance Taylor <iant@golang.org>
781
782 * go-backend.c (go_trampoline_info): Remove.
783 * go-c.h (go_trampoline_info): Don't declare.
784
34144b6e
TM
7852016-09-09 Than McIntosh <thanm@google.com>
786
787 * go-sha1.cc: New file.
788 * Make-lang.in (GO_OBJS): Add go/go-sha1.o.
789 (CFLAGS-go/go-sha1.o): New variable.
790
2adb671d
ILT
7912016-08-29 Ian Lance Taylor <iant@google.com>
792
793 * lang.opt (fgo-c-header, fgo-compiling-runtime): New options.
794 * go-c.h (struct go_create_gogo_args): Define.
795 (go_create_gogo): Change declaration to take struct pointer.
796 * go-lang.c (go_c_header): New static variable.
797 (go_langhook_init): Update call to go_create_gogo.
798 * gccgo.texi (Invoking gccgo): Document -fgo-c-header and
799 -fgo-compiling-runtime.
800
6bbd9810
ILT
8012016-08-09 Ian Lance Taylor <iant@google.com>
802
803 * gccgo.texi (Invoking gccgo): Document -fgo-optimize-allocs and
804 -fgo-debug-escae.
805 (Compiler Directives): New chapter.
806 (Function Names): Describe using //go:linkname. Suggest using
807 -fgo-pkgpath rather than -fgo-prefix.
808
f432d128
ILT
8092016-08-08 Ian Lance Taylor <iant@google.com>
810
811 PR go/72814
812 * go-gcc.cc (Gcc_backend::function_type): If the return type is
813 zero bytes, treat the function as returning void.
814 (return_statement): If the return type is zero bytes, don't
815 actually return any values.
816
9dcd84ec
ILT
8172016-08-05 Ian Lance Taylor <iant@google.com>
818
819 PR go/72812
820 * go-gcc.cc (char_needs_encoding): New static function.
821 (needs_encoding, fetch_utf8_char): New static functions.
822 (encode_id): New static function.
823 (Gcc_backend::global_variable): Set asm name if the name is not
824 simple ASCII.
825 (Gcc_backend::implicit_variable): Likewise.
826 (Gcc_backend::implicit_variable_reference): Likewise.
827 (Gcc_backend::immutable_struct): Likewise.
828 (Gcc_backend::immutable_struct_reference): Likewise.
829 (Gcc_backend::function): Likewise.
830
7295570d
CM
8312016-08-02 Chris Manghane <cmang@google.com>
832
833 * lang.opt: Add -fgo-debug-escape option.
834 * go-c.h (go_create_gogo): Add debug_escape_level parameter.
835 * go-lang.c (go_langhook_init): Pass go_debug_escape_level to
836 go_create_gogo.
837
2a30f87f
CM
8382016-05-06 Chris Manghane <cmang@google.com>
839
840 * Make-lang.in (GO_OBJS): Add go/escape.o (based on an entirely
841 new escape.cc).
842
e49aacaf
CM
8432016-04-29 Chris Manghane <cmang@google.com>
844
845 * Make-lang.in (GO_OBJS): Remove go/dataflow.o, go/escape.o.
846
fe37c7af
MM
8472016-04-18 Michael Matz <matz@suse.de>
848
849 * go-gcc.cc (Gcc_backend::implicit_variable): Use SET_DECL_ALIGN.
850
9c582551
JJ
8512016-02-12 Jakub Jelinek <jakub@redhat.com>
852
853 * gofrontend/lex.cc: Spelling fixes - behaviour -> behavior and
854 neighbour -> neighbor.
855 * gccgo.texi: Likewise.
856
ede67376
ILT
8572016-01-27 Ian Lance Taylor <iant@google.com>
858
859 * go-lang.c (go_langhook_init_options_struct): Default to
860 -fkeep-gc-roots-live.
861
21fa2a29
JJ
8622016-01-04 Jakub Jelinek <jakub@redhat.com>
863
818ab71a
JJ
864 Update copyright years.
865
21fa2a29
JJ
866 * gccgo.texi: Bump @copyrights-go year.
867
399f5feb
ILT
8682015-12-21 Ian Lance Taylor <iant@google.com>
869
870 * go-gcc.cc (class Bvariable): Remove Gcc_tree parent class. Add
871 t_ and orig_type_ fields. Add new two parameter constructor. Add
872 get_tree and get_decl methods.
873 (Gcc_backend::var_expression): Pass location to var get_tree.
874 (Gcc_backend::global_variable): Don't add VIEW_CONVERT_EXPR. Use
875 two parameter constructor for Bvariable.
876 (Gcc_backend::global_variable_set_init): Don't remove
877 VIEW_CONVERT_EXPR. Use var get_decl, not get_tree.
878 (Gcc_backend::write_global_definitions): Likewise.
879 (Gcc_backend::init_statement): Call var get_decl, not get_tree.
880 (Gcc_backend::block): Likewise.
881 (Gcc_backend::implicit_variable_set_init): Likewise.
882 (Gcc_backend::immutable_struct_set_init): Likewise.
883 (Gcc_backend::function_set_parameters): Likewise.
884
8fd41e92
ILT
8852015-12-21 Ian Lance Taylor <iant@google.com>
886
887 * go-gcc.cc (Gcc_backend::global_variable): If type is zero-sized,
888 add a VIEW_CONVERT_EXPR to the tree.
889 (Gcc_backend::global_variable_set_init): Remove any
890 VIEW_CONVERT_EXPR.
891 (Gcc_backend::write_global_definitions): Likewise.
892
6ea98dee
ILT
8932015-11-30 Ian Lance Taylor <iant@google.com>
894
895 PR go/68477
896 * go-gcc.cc (Gcc_backend::string_constant_expression): Don't set
897 TYPE_STRING_FLAG on a variant type.
898
69f293c9
AM
8992015-11-11 Andrew MacLeod <amacleod@redhat.com>
900
901 * go-backend.c: Remove unused header files.
902 * go-gcc.cc: Likewise.
903 * go-lang.c: Likewise.
904 * gospec.c: Likewise.
905
2adfab87
AM
9062015-10-29 Andrew MacLeod <amacleod@redhat.com>
907
908 * go-backend.c: Reorder #include's and remove duplicates.
909 * go-lang.c: Likewise.
910
b2e4c071
AM
9112015-10-20 Alan Modra <amodra@gmail.com>
912
913 PR go/66870
914 * gospec.c (saw_opt_m32): Rename to..
915 (is_m64): ..this, initialised by TARGET_CAN_SPLIT_STACK_64BIT.
916 Update uses.
917 (lang_specific_driver): Set is_m64 if OPT_m64, clear if OPT_m32.
918
209919e2
ILT
9192015-10-01 Ian Lance Taylor <iant@google.com>
920
921 PR go/66870
922 * gospec.c (lang_specific_driver): Only look for OPT_m32 if
923 TARGET_CAN_SPLIT_STACK_64BIT is defined.
924
402565b6
LB
9252015-10-01 Lynn Boger <laboger@linux.vnet.ibm.com>
926
927 PR target/66870
928 * gospec.c (lang_specific_driver): Set appropriate split stack
929 options for 64 bit compiles based on TARGET_CAN_SPLIT_STACK_64BIT.
930
ec23e5b3
CM
9312015-09-10 Chris Manghane <cmang@google.com>
932
933 * go-gcc.cc (Gcc_backend::type_size): Return -1 for
934 unrepresentable size.
935
2021ff27
MP
9362015-08-24 Marek Polacek <polacek@redhat.com>
937
938 PR tree-optimization/67284
939 * go-gcc.cc (Gcc_backend::define_builtin): Add NORETURN_P parameter.
940 Set TREE_THIS_VOLATILE.
941 (Gcc_backend::Gcc_backend): Mark __builtin_trap as a noreturn call.
942 Pass false to the rest of define_builtin calls.
943
cb3306e5
AS
9442015-07-31 Andreas Schwab <schwab@linux-m68k.org>
945
946 * go-lang.c (go_langhook_init_options_struct): Don't set
947 x_flag_split_stack.
948 (go_langhook_post_options): Set it here instead.
949
026c3cfd
AH
9502015-07-12 Aldy Hernandez <aldyh@redhat.com>
951
952 * gofrontend/backend.h: Fix double word typos.
92a285c1 953 * gofrontend/expressions.cc: Same.
026c3cfd
AH
954 * gospec.c: Same.
955
c7131fb2
AM
9562015-07-07 Andrew MacLeod <amacleod@redhat.com>
957
958 * go-backend.c: Adjust includes.
959 * go-gcc.cc: Likewise.
960 * go-lang.c: Likewise.
961
f0889939
AM
9622015-06-25 Andrew MacLeod <amacleod@redhat.com>
963
964 * go-gcc.cc: Remove ipa-ref.h and plugin-api.h from include list.
965
abb226c9
AM
9662015-06-17 Andrew MacLeod <amacleod@redhat.com>
967
968 * go-backend.c: Do not include input.h, line-map.h or is-a.h.
969 * go-gcc.cc: Likewise.
970 * go-lang.c: Likewise.
971 * go-system.h: Likewise.
972
13fdf2e2
AM
9732015-06-08 Andrew MacLeod <amacleod@redhat.com>
974
975 * go-backend.c : Adjust include files.
976 * go-gcc.cc : Likewise.
977 * go-lang.c : Likewise.
978
d7438551
AH
9792015-06-05 Aldy Hernandez <aldyh@redhat.com>
980
981 * go-gcc.cc (write_global_definitions): Remove call to
982 finalize_compilation_unit.
983 Remove Go specific debug generation.
984 * go-lang.c (go_langhook_parse_file): Call go_write_globals.
985 (go_langhook_write_globals): Remove.
986 Remove LANG_HOOKS_WRITE_GLOBALS everywhere.
987
ecb9f223
AM
9882015-06-04 Andrew MacLeod <amacleod@redhat.com>
989
990 * go-backend.c: Adjust includes for restructured coretypes.h.
991 * go-c.h: Likewise.
992 * go-gcc.cc: Likewise.
993 * go-lang.c: Likewise.
994
4f576c83
CM
9952015-04-30 Chris Manghane <cmang@google.com>
996
997 * go-gcc.cc (Gcc_backend::stack_allocation_expression): New
998 method.
999
46bf0b0a
JW
10002015-04-27 Jim Wilson <jim.wilson@linaro.org>
1001
1002 * Make-lang.in (go.mostlyclean): Remove gccgo, gccgo-cross, and go1.
1003
b496063d
CM
10042015-04-17 Chris Manghane <cmang@google.com>
1005
1006 * Make-lang.in (GO_OBJS): Add go/escape.o.
1007
18fbd1ec
ILT
10082015-02-02 Ian Lance Taylor <iant@google.com>
1009
1010 PR go/64836
1011 PR go/64838
1012 * go-gcc.cc (Gcc_backend::type_size): Change return type to
1013 int64_t.
1014 (Gcc_backend::type_alignment): Likewise.
1015 (Gcc_backend::type_field_alignment): Likewise.
1016 (Gcc_backend::type_field_offset): Likewise.
1017 (Gcc_backend::implicit_variable): Change alignment parameter type
1018 to int64_t.
1019
1aaecd3b
ILT
10202015-01-23 Ian Lance Taylor <iant@google.com>
1021
1022 PR go/63565
1023 * gccgo.texi (Invoking gccgo): Mention that Go programs should not
1024 be stripped.
1025
1026 * gccgo.texi (C Interoperability): Mention that people should use
1027 cgo.
1028
818424b2
ILT
10292015-01-23 Ian Lance Taylor <iant@google.com>
1030
1031 PR go/64595
1032 * go-lang.c (go_langhook_init_options_struct): Set default
1033 debug_info_level.
1034 (go_langhook_post_options): If debug_info_level is still the
1035 default, make sure write_symbols is set.
1036 * gccgo.texi (Invoking gccgo): Document that -g1 is the default.
1037
38bf819a
RH
10382015-01-16 Richard Henderson <rth@redhat.com>
1039
1040 * go-gcc.cc (Gcc_backend::call_expression): Add chain_expr argument.
1041 (Gcc_backend::static_chain_variable): New method.
1042
bf1de3f0
ILT
10432015-01-09 Ian Lance Taylor <iant@google.com>
1044
1045 * config-lang.in (lang_dirs): Define.
1046
adfac8df
JJ
10472015-01-09 Michael Collison <michael.collison@linaro.org>
1048
1049 * go-gcc.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
1050 input.h, alias.h, symtab.h, options.h, fold-const.h,
1051 wide-int.h, and inchash.h due to flattening of tree.h.
1052 * go-lang.c: Ditto.
1053 * go-backend.c: Ditto.
1054
dd373780
CM
10552015-01-07 Chris Manghane <cmang@google.com>
1056
1057 PR go/61204
1058 * go-gcc.cc (Gcc_backend::temporary_variable): Don't initialize
1059 zero-sized variable.
1060
861393ac
CM
10612015-01-06 Chris Manghane <cmang@google.com>
1062
dd373780
CM
1063 * go-gcc.cc (Gcc_backend::constructor_expression): Don't
1064 initialize zero-sized fields, just evaluate the values for side
1065 effects.
861393ac 1066
b67cd4e3
JJ
10672015-01-05 Jakub Jelinek <jakub@redhat.com>
1068
5624e564
JJ
1069 Update copyright years.
1070
b67cd4e3
JJ
1071 * gccgo.texi: Bump @copyrights-go year.
1072
943cf9cf
CM
10732014-12-19 Chris Manghane <cmang@google.com>
1074
dd373780
CM
1075 * go-gcc.cc (Gcc_backend::array_constructor_expression): Don't
1076 construct arrays of zero-sized values.
943cf9cf 1077
ef4bddc2
RS
10782014-10-29 Richard Sandiford <richard.sandiford@arm.com>
1079
1080 * go-lang.c: Remove redundant enum from machine_mode.
1081
c582198b
AM
10822014-10-28 Andrew MacLeod <amacleod@redhat.com>
1083
1084 * go-gcc.cc: Adjust include files.
1085
60393bbc
AM
10862014-10-27 Andrew MacLeod <amacleod@redhat.com>
1087
1088 * go-gcc.cc: Adjust include files.
1089 * go-lang.c: Ditto.
1090
5eda5bad
ILT
10912014-10-23 Ian Lance Taylor <iant@google.com>
1092
1093 * go-gcc.cc (Gcc_backend::complex_constant_expression): Take one
1094 mpc_t parameter instead of two mpfr_t parameters.
1095
717c4789
JJ
10962014-09-15 Jakub Jelinek <jakub@redhat.com>
1097
1098 * Make-lang.in (check_go_parallelize): Change to just an upper bound
1099 number.
1100
f1d2ac4f
CM
11012014-09-03 Chris Manghane <cmang@google.com>
1102
1103 * go-gcc.cc (Gcc_backend::implicit_variable): Remove init
1104 parameter. Add is_hidden parameter.
1105 (Gcc_backend::implicit_variable_set_init): New method.
1106 (Gcc_backend::implicit_variable_reference): New method.
1107
ff09769f
ILT
11082014-08-08 Ian Lance Taylor <iant@google.com>
1109
1110 * go-gcc.cc (Gcc_backend::compound_statement): Don't return
1111 NULL_TREE.
1112
0ffc395f
UB
11132014-07-24 Uros Bizjak <ubizjak@gmail.com>
1114
1115 * go-gcc.cc (Gcc_backend::global_variable_set_init): Rename
1116 symtab_get_node to symtab_node::get.
1117
bbeaf05d
ILT
11182014-06-13 Ian Lance Taylor <iant@google.com>
1119
1120 PR go/61496
1121 * gospec.c (lang_specific_driver): On Solaris, when not using GNU
1122 ld, add -t option to avoid warning about common symbol changing
1123 size.
1124
e257a17c
JH
11252014-06-10 Jan Hubicka <hubicka@ucw.cz>
1126
0ffc395f 1127 * go-gcc.cc (Gcc_backend::global_variable_set_init): Use
e257a17c
JH
1128 symtab_get_node(var_decl)->implicit_section.
1129
24d047a3
JH
11302014-06-07 Jan Hubicka <hubicka@ucw.cz>
1131
1132 * go-gcc.cc (global_variable_set_init): Use
1133 set_decl_section_name.
1134
bae90c98
ILT
11352014-06-04 Ian Lance Taylor <iant@google.com>
1136
1137 * go-gcc.cc (Gcc_backend::implicit_variable): Add is_common and
1138 alignment parameters. Permit init parameter to be NULL.
1139
9b2b7279
AM
11402014-06-02 Andrew MacLeod <amacleod@redhat.com>
1141
1142 * go-gcc.cc: Include builtins.h.
1143
766090c2
TS
11442014-05-17 Trevor Saunders <tsaunders@mozilla.com>
1145
1146 * go-lang.c (struct GTY): Don't use variable_size gty attribute.
1147
6f7e0b57
CM
11482014-05-06 Chris Manghane <cmang@google.com>
1149
1150 * go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
1151 (Gcc_backend::boolean_constant_expression): New method.
1152 (Gcc_backend::zero_expression): Use this->make_expression rather
1153 than tree_to_expr.
1154 (Gcc_backend::var_expression): Likewise.
1155 (Gcc_backend::integer_constant_expression): Likewise.
1156 (Gcc_backend::float_constant_expression): Likewise.
1157 (Gcc_backend::complex_constant_expression): Likewise.
1158 (Gcc_backend::struct_field_expression): Likewise.
1159 (tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
1160 (tree_to_function, tree_to_block): Remove functions.
1161 (type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
1162 (block_to_tree, var_to_tree, function_to_tree): Remove functions.
1163
1d60af08
KZ
11642014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
1165 Mike Stump <mikestump@comcast.net>
1166 Richard Sandiford <rdsandiford@googlemail.com>
1167
1168 * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
1169
6122336c
CM
11702014-05-06 Chris Manghane <cmang@google.com>
1171
1172 * go-c.h (go_create_gogo): Update declaration to add
1173 check_divide_zero and check_divide_overflow parameters.
1174 * go-lang.c (go_langhook_init): Pass new arguments to
1175 go_create_gogo.
1176
fb930306
CM
11772014-05-05 Chris Manghane <cmang@google.com>
1178
1179 * go-gcc.cc (Gcc_backend::implicit_variable): Rename from
1180 gc_root_variable. Add name and is_constant parameters.
1181
3e7b0938
CM
11822014-05-05 Chris Manghane <cmang@google.com>
1183
1184 * go-gcc.cc (Gcc_backend::indirect_expression): Add btype
1185 parameter.
1186 (Gcc_backend::temporary_variable): Check for erroneous function.
1187
d2d9bc36
CM
11882014-04-30 Chris Manghane <cmang@google.com>
1189
1190 * go-backend.c: #include "diagnostics.h".
1191 (saw_errors): New function.
1192 * go-c.h (saw_errors): Declare.
1193 * Make-lang.in (GO_OBJS): Remove go/gogo-tree.o.
1194
ad5b68e0
CM
11952014-04-30 Chris Manghane <cmang@google.com>
1196
1197 * go-lang.c (go_langhook_type_for_size): Do it here, rather than
1198 calling into Go frontend.
1199 (go_langhook_type_for_mode): Likewise.
1200 * go-c.h (go_type_for_size, go_type_for_mode): Don't declare.
1201
90cbaa29
CM
12022014-04-30 Chris Manghane <cmang@google.com>
1203
1204 * go-gcc.cc: #include "langhooks.h".
1205 (Gcc_backend::Gcc_backend): Add constructor.
1206 (Gcc_backend::lookup_function): New function.
1207 (Gcc_backend::define_builtin): New private function.
1208 (Gcc_backend::gcc_backend): Remove.
1209 (go_get_backend): Use new to create new Gcc_backend.
1210
036165d8
CM
12112014-04-25 Chris Manghane <cmang@google.com>
1212
1213 * go-gcc.cc: Include "cgraph.h" and "gimplify.h".
1214 (Gcc_backend::return_statement): Push and pop function.
1215 (Gcc_backend::label): Likewise.
1216 (Gcc_backend::function_defer_statement): Likewise.
1217 (Gcc_backend::switch_statement): Add function parameter.
1218 (Gcc_backend::block): Don't permit function to be NULL.
1219 (Gcc_backend::temporary_variable): Change go_assert to
1220 gcc_assert.
1221 (Gcc_backend::gc_root_variable): New function.
1222 (Gcc_backend::write_global_definitions): New function.
1223
aa492920
CM
12242014-04-22 Chris Manghane <cmang@google.com>
1225
1226 * go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
1227 call to create_tmp_var. Require that function be non-NULL.
1228
e85baec7
CM
12292014-04-17 Chris Manghane <cmang@google.com>
1230
1231 * go-gcc.cc (Gcc_backend::named_constant_expression): New
1232 function.
1233
7035307e
CM
12342014-04-14 Chris Manghane <cmang@google.com>
1235
1236 * go-gcc.cc: Include "convert.h".
1237 (Gcc_backend::string_constant_expression): New function.
1238 (Gcc_backend::real_part_expression): Likewise.
1239 (Gcc_backend::imag_part_expression): Likewise.
1240 (Gcc_backend::complex_expression): Likewise.
1241 (Gcc_backend::constructor_expression): Likewise.
1242 (Gcc_backend::array_constructor_expression): Likewise.
1243 (Gcc_backend::pointer_offset_expression): Likewise.
1244 (Gcc_backend::array_index_expression): Likewise.
1245 (Gcc_backend::call_expression): Likewise.
1246 (Gcc_backend::exception_handler_statement): Likewise.
1247 (Gcc_backend::function_defer_statement): Likewise.
1248 (Gcc_backend::function_set_parameters): Likewise.
1249 (Gcc_backend::function_set_body): Likewise.
1250 (Gcc_backend::convert_expression): Handle various type
1251 conversions.
1252
915182a0
ILT
12532014-03-03 Ian Lance Taylor <iant@google.com>
1254
1255 * go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
1256 DECL_WEAK.
1257 (GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
1258 DECL_WEAK.
1259
8a35e18d
CM
12602014-01-24 Chris Manghane <cmang@google.com>
1261
1262 * go-gcc.cc (Gcc_backend::unary_expression): New function.
1263
b5407ad1
CM
12642014-01-16 Chris Manghane <cmang@google.com>
1265
1266 * go-gcc.cc (Gcc_backend::conditional_expression): Add btype
1267 parameter.
1268 (operator_to_tree_code): New static function.
1269 (Gcc_backend::binary_expression): New function.
1270
eb6eb862
CM
12712014-01-14 Chris Manghane <cmang@google.com>
1272
1273 * go-gcc.cc (Gcc_backend::compound_expression): New function.
1274 (Gcc_backend::conditional_expression): New function.
1275
23a5b65a
RS
12762014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1277
1278 Update copyright years
1279
98db73df 12802014-01-02 Tobias Burnus <burnus@net-b.de>
71eba7a0 1281
0ffc0b3b
JJ
1282 * gccgo.texi: Bump @copying's copyright year.
1283
12842013-12-16 Chris Manghane <cmang@google.com>
1285
1286 * go-gcc.cc (Gcc_backend::struct_field_expression): New function.
1287
12882013-12-11 Ian Lance Taylor <iant@google.com>
1289
1290 * go-lang.c (go_langhook_post_options): Disable sibling calls by
1291 default.
1292
12932013-12-10 Ian Lance Taylor <iant@google.com>
1294
1295 * Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
1296 separately.
1297
12982013-12-05 Ian Lance Taylor <iant@google.com>
1299
1300 Revert this change; no longer required.
1301 2013-11-06 Ian Lance Taylor <iant@google.com>
1302
1303 * go-lang.c (go_langhook_post_options): If
1304 -fisolate-erroneous-paths was turned on by an optimization option,
1305 turn it off.
1306
13072013-11-23 Ian Lance Taylor <iant@google.com>
1308
1309 * go-gcc.cc (Gcc_backend::function_type): Add result_struct
1310 parameter.
1311
13122013-11-22 Andrew MacLeod <amacleod@redhat.com>
1313
1314 * go-gcc.cc: Add required include files from gimple.h.
ab20d992 1315 * go-lang.c: Likewise.
0ffc0b3b
JJ
1316
13172013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1318
1319 * gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
1320 tree_to_shwi throughout.
1321
13222013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
1323
1324 * gofrontend/expressions.cc: Replace host_integerp (..., 0) with
1325 tree_fits_shwi_p throughout.
1326
13272013-11-14 Andrew MacLeod <amacleod@redhat.com>
1328
1329 * go-lang.c: Include only gimplify.h and gimple.h as needed.
1330
13312013-11-14 Diego Novillo <dnovillo@google.com>
1332
1333 * go-backend.c: Include stor-layout.h.
1334 * go-gcc.cc: Include stringpool.h.
1335 Include stor-layout.h.
1336 Include varasm.h.
1337 * go-lang.c: Include stor-layout.h.
1338
13392013-11-12 Andrew MacLeod <amacleod@redhat.com>
1340
1341 * go-lang.c: Include gimplify.h.
1342
13432013-11-06 Ian Lance Taylor <iant@google.com>
1344
1345 * go-lang.c (go_langhook_post_options): If
1346 -fisolate-erroneous-paths was turned on by an optimization option,
1347 turn it off.
1348
13492013-10-14 Chris Manghane <cmang@google.com>
1350
1351 * go-gcc.cc (Gcc_backend::address_expression): New function.
1352
13532013-10-11 Chris Manghane <cmang@google.com>
1354
1355 * go-gcc.cc (Gcc_backend::function_code_expression): New
1356 function.
1357
13582013-10-10 Chris Manghane <cmang@google.com>
1359
1360 * go-gcc.cc (Gcc_backend::error_function): New function.
1361 (Gcc_backend::function): New function.
1362 (Gcc_backend::make_function): New function.
1363 (function_to_tree): New function.
1364
13652013-10-04 Chris Manghane <cmang@google.com>
1366
1367 * go-gcc.cc (Gcc_backend::convert_expression): New function.
1368
13692013-10-02 Chris Manghane <cmang@google.com>
1370
1371 * go-gcc.cc: Include "real.h" and "realmpfr.h".
1372 (Gcc_backend::integer_constant_expression): New function.
1373 (Gcc_backend::float_constant_expression): New function.
1374 (Gcc_backend::complex_constant_expression): New function.
1375
13762013-09-30 Chris Manghane <cmang@google.com>
1377
1378 * go-gcc.cc (Gcc_backend::error_expression): New function.
1379 (Gcc_backend::var_expression): New function.
1380 (Gcc_backend::indirect_expression): New function.
1381
13822013-09-25 Tom Tromey <tromey@redhat.com>
1383
1384 * Make-lang.in (gospec.o): Remove.
1385 (CFLAGS-go/gospec.o): New variable.
1386 (GCCGO_OBJS): Update to use go/gospec.o.
1387 (go_OBJS): Define.
1388 (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
1389 (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
1390 (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
1391 (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
1392 (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
1393 (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
1394 (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
1395 (go/parse.o, go/runtime.o, go/statements.o, go/types.o)
1396 (go/unsafe.o): Remove.
1397 (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
1398 (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
1399
14002013-09-25 Tom Tromey <tromey@redhat.com>
1401
1402 * Make-lang.in (gospec.o): Don't use subshell.
1403
14042013-08-28 Ian Lance Taylor <iant@google.com>
1405
1406 * go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
1407 the struct is not hidden.
1408 (Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
1409
14102013-08-06 Ian Lance Taylor <iant@google.com>
1411
1412 * go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
1413 compute_reloc_for_constant.
1414
14152013-08-02 Ian Lance Taylor <iant@google.com>
1416
1417 * go-gcc.cc (immutable_struct_set_init): Always call
1418 resolve_unique_section.
1419
14202013-07-24 Ian Lance Taylor <iant@google.com>
1421
1422 * go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
1423 fields, recreate those fields with the first one with a non-zero
1424 size.
1425
14262013-07-23 Ian Lance Taylor <iant@google.com>
1427
1428 * go-backend.c: Don't #include "rtl.h".
1429 (go_imported_unsafe): Don't call init_varasm_once.
1430 * Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
1431
14322013-07-23 Ian Lance Taylor <iant@google.com>
1433
1434 * go-lang.c: Don't #include "except.h".
1435 * Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
1436
14372013-06-18 Ian Lance Taylor <iant@google.com>
1438
1439 * go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
1440 parameter.
1441 (Gcc_backend::immutable_struct_set_init): Likewise.
1442
14432013-05-16 Jason Merrill <jason@redhat.com>
1444
1445 * Make-lang.in (go1$(exeext)): Use link mutex.
1446
14472013-01-16 Shenghou Ma <minux.ma@gmail.com>
1448
1449 * gospec.c: pass -u pthread_create to linker when static linking.
1450
14512012-12-21 Ian Lance Taylor <iant@google.com>
1452
1453 PR bootstrap/54659
1454 * go-system.h: Don't include <cstdio>.
1455
14562012-12-18 Ian Lance Taylor <iant@google.com>
1457
1458 PR go/55201
1459 * gospec.c: Revert last patch.
1460
14612012-12-18 Andreas Schwab <schwab@linux-m68k.org>
1462
1463 PR go/55201
1464 * gospec.c (LIBATOMIC): Define.
1465 (LIBATOMIC_PROFILE): Define.
1466 (lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
1467
14682012-11-29 Ian Lance Taylor <iant@google.com>
1469
1470 * go-gcc.cc: Include "output.h".
1471 (global_variable): Add is_unique_section parameter.
1472 (global_variable_set_init): Adjust unique section if necessary.
1473 * Make-lang.in (go/go-gcc.o): Add dependency on output.h.
1474
14752012-11-17 Diego Novillo <dnovillo@google.com>
1476
1477 Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
1478
1479 * go-lang.c: Use new vec API in vec.h.
1480
14812012-11-16 Ian Lance Taylor <iant@google.com>
1482
1483 * Make-lang.in (gccgo$(exeext)): Add + at start of command.
1484 (go1$(exeext)): Likewise.
1485
14862012-10-30 Ian Lance Taylor <iant@google.com>
1487
1488 * lang.opt (-fgo-relative-import-path): New option.
1489 * go-lang.c (go_relative_import_path): New static variable.
1490 (go_langhook_init): Pass go_relative_import_path to
1491 go_create_gogo.
1492 (go_langhook_handle_option): Handle -fgo-relative-import-path.
1493 * go-c.h (go_create_gogo): Update declaration.
1494 * gccgo.texi (Invoking gccgo): Document
1495 -fgo-relative-import-path.
1496
14972012-09-17 Ian Lance Taylor <iant@google.com>
1498
1499 * config-lang.in (target_libs): Add target-libbacktrace.
1500
15012012-09-16 Ian Lance Taylor <iant@google.com>
1502
1503 * Make-lang.in (go/gogo.o): Depend on filenames.h.
1504
15052012-08-14 Diego Novillo <dnovillo@google.com>
1506
1507 Merge from cxx-conversion branch. Configury.
1508
1509 * go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
1510 * go-gcc.cc: Likewise.
1511 * go-system.h: Likewise.
1512
15132012-07-24 Uros Bizjak <ubizjak@gmail.com>
1514
1515 * go-lang.c (lang_decl): Add variable_size GTY option.
1516
15172012-05-09 Ian Lance Taylor <iant@google.com>
1518
1519 * lang.opt: Add -fgo-pkgpath.
1520 * go-lang.c (go_pkgpath): New static variable.
1521 (go_prefix): New static variable.
1522 (go_langhook_init): Pass go_pkgpath and go_prefix to
1523 go_create_gogo.
1524 (go_langhook_handle_option): Handle -fgo-pkgpath. Change
1525 -fgo-prefix handling to just set go_prefix.
1526 * go-c.h (go_set_prefix): Don't declare.
1527 (go_create_gogo): Add pkgpath and prefix to declaration.
1528 * go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
1529 to pkgpath. Don't include the package name in the asm name.
1530 * gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
1531 docs for -fgo-prefix.
1532
15332012-04-23 Ian Lance Taylor <iant@google.com>
1534
1535 * go-lang.c (go_langhook_init): Set MPFR precision to 256.
1536
15372012-04-20 Ian Lance Taylor <iant@google.com>
1538
1539 * lang.opt: Add -fgo-check-divide-zero and
1540 -fgo-check-divide-overflow.
1541 * gccgo.texi (Invoking gccgo): Document new options.
1542
15432012-04-18 Steven Bosscher <steven@gcc.gnu.org>
1544
1545 * go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
1546 with NULL_TREE type instead of void_type_node.
1547
15482012-03-09 Ian Lance Taylor <iant@google.com>
1549
1550 * go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
1551 to the lhs type if necessary.
1552
15532012-03-08 Ian Lance Taylor <iant@google.com>
1554
1555 * go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
1556 zero-sized variable.
1557 (go_non_zero_struct): New global variable.
1558 (Gcc_backend::non_zero_size_type): New function.
1559 (Gcc_backend::global_variable): Don't build an assignment for a
1560 zero-sized value.
1561 * go-c.h (go_non_zero_struct): Declare.
1562 * config-lang.in (gtfiles): Add go-c.h.
1563
15642012-02-29 Ian Lance Taylor <iant@google.com>
1565
1566 * go-gcc.cc (class Gcc_tree): Add set_tree method.
1567 (set_placeholder_pointer_type): When setting to a pointer to
1568 error, set to error_mark_node.
1569
15702012-02-23 Richard Guenther <rguenther@suse.de>
1571
1572 * go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
1573 build_distinct_type_copy.
1574
15752012-02-17 Ian Lance Taylor <iant@google.com>
1576
1577 * Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
1578
15792012-02-17 Ian Lance Taylor <iant@google.com>
1580
1581 * gospec.c (lang_specific_driver): If linking, and no -o option
1582 was used, add one.
1583
15842012-02-14 Ian Lance Taylor <iant@google.com>
1585
1586 PR go/48411
1587 * Make-lang.in (gccgo-cross$(exeext)): New target.
1588 (go.all.cross): Depend on gccgo-cross$(exeext) instead of
1589 gccgo$(exeext).
1590 (go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
1591 gccgo-cross$(exeext) does not exist.
1592
15932012-02-07 Ian Lance Taylor <iant@google.com>
1594
1595 * gccgo.texi (Function Names): Document //extern instead of
1596 __asm__.
1597
15982012-02-01 Jakub Jelinek <jakub@redhat.com>
1599
1600 PR target/52079
1601 * go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
1602 return build_nonstandard_integer_type result if possible.
1603
16042012-01-21 Ian Lance Taylor <iant@google.com>
1605
1606 * go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
1607 (Gcc_backend::type_alignment): Likewise.
1608 (Gcc_backend::type_field_alignment): Likewise.
1609 (Gcc_backend::type_field_offset): Likewise.
1610
16112012-01-20 Ian Lance Taylor <iant@google.com>
1612
1613 * go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
1614 be empty.
1615 (Gcc_backend::set_placeholder_struct_type): Likewise.
1616
16172012-01-17 Ian Lance Taylor <iant@google.com>
1618
1619 * gospec.c (lang_specific_driver): If we see -S without -o, add -o
1620 BASE.s rather than -o BASE.o.
1621
16222012-01-11 Ian Lance Taylor <iant@google.com>
1623
1624 * go-lang.c (go_langhook_init): Initialize void_list_node before
1625 calling go_create_gogo.
1626
16272012-01-10 Ian Lance Taylor <iant@google.com>
1628
1629 * go-gcc.cc (Gcc_backend::type_size): New function.
1630 (Gcc_backend::type_alignment): New function.
1631 (Gcc_backend::type_field_alignment): New function.
1632 (Gcc_backend::type_field_offset): New function.
1633 * go-backend.c (go_type_alignment): Remove.
1634 * go-c.h (go_type_alignment): Don't declare.
1635
16362011-12-27 Ian Lance Taylor <iant@google.com>
1637
1638 * go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
1639 build_distinct_type_copy rather than build_variant_type_copy.
1640 (Gcc_backend::set_placeholder_array_type): Likewise.
1641 (Gcc_backend::named_type): Add special handling for builtin
1642 basic types.
1643
16442011-12-22 Ian Lance Taylor <iant@google.com>
1645
1646 * go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
1647 for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
1648 (Gcc_backend::set_placeholder_struct_type): Likewise.
1649 (Gcc_backend::set_placeholder_array_type): Likewise.
1650 (Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
1651
16522011-12-13 Ian Lance Taylor <iant@google.com>
1653
1654 * go-backend.c: #include "simple-object.h" and "intl.h".
1655 (GO_EXPORT_SEGMENT_NAME): Define if not defined.
1656 (GO_EXPORT_SECTION_NAME): Likewise.
1657 (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
1658 (go_read_export_data): New function.
1659 * go-c.h (go_read_export_data): Declare.
1660
16612011-11-29 Sanjoy Das <thedigitalangel@gmail.com>
1662 Ian Lance Taylor <iant@google.com>
1663
1664 * go-location.h: New file.
1665 * go-linemap.cc: New file.
1666 * go-gcc.cc: Change all uses of source_location to Location.
1667 * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
1668 (GO_LINEMAP_H): New variable.
1669 (GO_LEX_H): Use $(GO_LINEMAP_H).
1670 (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
1671 (go/go-linemap.o): New target.
1672
16732011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1674
1675 * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
1676
16772011-08-24 Roberto Lublinerman <rluble@gmail.com>
1678
1679 * lang.opt: Add fgo-optimize-.
1680 * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
1681 * go-c.h (go_enable_optimize): Declare.
1682 * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
1683 (GO_EXPORT_H): Define.
1684 (GO_IMPORT_H): Add $(GO_EXPORT_H).
1685 (GO_AST_DUMP_H): Define.
1686 (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
1687 (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
1688 (go/types.o): Likewise.
1689 (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
1690 (go/go-optimize.o): New target.
1691
16922011-08-24 Joseph Myers <joseph@codesourcery.com>
1693
1694 * Make-lang.in (CFLAGS-go/go-lang.o): New.
1695 (go/go-lang.o): Remove explicit compilation rule.
1696
16972011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1698
1699 * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
1700
17012011-08-02 Roberto Lublinerman <rluble@gmail.com>
1702
1703 * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
1704 (go/ast-dump.o): New target.
1705 (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
1706 (go/statements.o): Likewise.
1707
17082011-07-06 Richard Guenther <rguenther@suse.de>
1709
1710 * go-lang.c (go_langhook_init):
1711 Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
1712
17132011-06-14 Joseph Myers <joseph@codesourcery.com>
1714
1715 * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
1716 dependencies.
1717 * go-backend.c: Include common/common-target.h.
1718 (go_write_export_data): Use targetm_common.have_named_sections.
1719 * go-lang.c: Include common/common-target.h.
1720 (go_langhook_init_options_struct): Use
1721 targetm_common.supports_split_stack.
1722
17232011-06-13 Ian Lance Taylor <iant@google.com>
1724
1725 * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
1726
17272011-06-10 Ian Lance Taylor <iant@google.com>
1728
1729 * go-gcc.cc: Include "toplev.h".
1730 (Gcc_backend::immutable_struct): New function.
1731 (Gcc_backend::immutable_struct_set_init): New function.
1732 (Gcc_backend::immutable_struct_reference): New function.
1733 * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
1734
17352011-06-09 Ian Lance Taylor <iant@google.com>
1736
1737 * go-gcc.cc (Gcc_backend::zero_expression): New function.
1738
17392011-06-07 Richard Guenther <rguenther@suse.de>
1740
1741 * go-lang.c (go_langhook_init): Do not set
1742 size_type_node or call set_sizetype.
1743
17442011-05-27 Ian Lance Taylor <iant@google.com>
1745
1746 * go-backend.c: Include "output.h".
1747 (go_write_export_data): New function.
1748 * go-c.h (go_write_export_data): Declare.
1749 * Make-lang.in (go/go-backend.o): Depend on output.h.
1750 (go/export.o): Depend on $(GO_C_H). Do not depend on
1751 $(MACHMODE_H), output.h, or $(TARGET_H).
1752
17532011-05-24 Joseph Myers <joseph@codesourcery.com>
1754
1755 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
1756 (gccgo$(exeext)): Use libcommon-target.a.
1757
17582011-05-20 Joseph Myers <joseph@codesourcery.com>
1759
1760 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
1761
17622011-05-13 Ian Lance Taylor <iant@google.com>
1763
1764 * go-gcc.cc (Gcc_backend::function_type): When building a struct
1765 for multiple results, check that all fields types have a size.
1766 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
1767
17682011-05-12 Ian Lance Taylor <iant@google.com>
1769
1770 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
1771 parameter.
1772 (Gcc_backend::parameter_variable): Likewise.
1773
17742011-05-07 Eric Botcazou <ebotcazou@adacore.com>
1775
1776 * go-lang.c (global_bindings_p): Return bool and simplify.
1777
17782011-05-05 Nathan Froyd <froydnj@codesourcery.com>
1779
1780 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
1781
17822011-05-04 Ian Lance Taylor <iant@google.com>
1783
1784 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
1785 (Gcc_backend::fill_in_struct): New function.
1786 (Gcc_backend::array_type): Implement.
1787 (Gcc_backend::fill_in_array): New function.
1788 (Gcc_backend::placeholder_pointer_type): New function.
1789 (Gcc_backend::set_placeholder_pointer_type): New function.
1790 (Gcc_backend::set_placeholder_function_type): New function.
1791 (Gcc_backend::placeholder_struct_type): New function.
1792 (Gcc_backend::set_placeholder_struct_type): New function.
1793 (Gcc_backend::placeholder_array_type): New function.
1794 (Gcc_backend::set_placeholder_array_type): New function.
1795 (Gcc_backend::named_type): New function.
1796 (Gcc_backend::circular_pointer_type): New function.
1797 (Gcc_backend::is_circular_pointer_type): New function.
1798
17992011-04-26 Ian Lance Taylor <iant@google.com>
1800
1801 * go-gcc.cc (Gcc_backend::struct_type): Implement.
1802
18032011-04-25 Ian Lance Taylor <iant@google.com>
1804
1805 * go-gcc.cc (Gcc_backend::error_type): Implement.
1806 (Gcc_backend::string_type): Remove.
1807 (Gcc_backend::function_type): Change signature and implement.
1808 (Gcc_backend::struct_type): Change signature.
1809 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
1810 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
1811 (Gcc_backend::pointer_type): Check for error.
1812 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
1813
18142011-04-25 Evan Shaw <edsrzf@gmail.com>
1815
1816 * go-gcc.c (class Gcc_tree): Make get_tree const.
1817 (Gcc_backend::void_type): Implement.
1818 (Gcc_backend::bool_type): Implement.
1819 (Gcc_backend::integer_type): Implement.
1820 (Gcc_backend::float_type): Implement.
1821 (Gcc_backend::complex_type): New function.
1822 (Gcc_backend::pointer_type): New function.
1823 (Gcc_backend::make_type): New function.
1824 (type_to_tree): New function.
1825
18262011-04-21 Ian Lance Taylor <iant@google.com>
1827
1828 * go-system.h (go_assert, go_unreachable): Define.
1829
18302011-04-19 Ian Lance Taylor <iant@google.com>
1831
1832 * go-system.h: Include "intl.h".
1833 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
1834 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
1835 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
1836
18372011-04-19 Ian Lance Taylor <iant@google.com>
1838
1839 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
1840
18412011-04-19 Ian Lance Taylor <iant@google.com>
1842
1843 * go-gcc.cc (class Bblock): Define.
1844 (Gcc_backend::if_statement): Change then_block and else_block to
1845 Bblock*.
1846 (Gcc_backend::block): New function.
1847 (Gcc_backend::block_add_statements): New function.
1848 (Gcc_backend::block_statement): New function.
1849 (tree_to_block, block_to_tree): New functions.
1850
18512011-04-18 Ian Lance Taylor <iant@google.com>
1852
1853 * go-gcc.cc: Include "go-c.h".
1854 (class Bvariable): Define.
1855 (Gcc_backend::init_statement): New function.
1856 (Gcc_backend::global_variable): New function.
1857 (Gcc_backend::global_variable_set_init): New function.
1858 (Gcc_backend::local_variable): New function.
1859 (Gcc_backend::parameter_variable): New function.
1860 (tree_to_type, var_to_tree): New functions.
1861 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
1862 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
1863
18642011-04-15 Ian Lance Taylor <iant@google.com>
1865
1866 * go-gcc.cc (Gcc_backend::compound_statement): New function.
1867 (Gcc_backend::assignment_statement): Use error_statement.
1868 (Gcc_backend::return_statement): Likewise.
1869 (Gcc_backend::if_statement): Likewise.
1870 (Gcc_backend::switch_statement): Likewise.
1871 (Gcc_backend::statement_list): Likewise.
1872
18732011-04-14 Ian Lance Taylor <iant@google.com>
1874
1875 * go-gcc.cc (Gcc_backend::error_statement): New function.
1876
18772011-04-13 Ian Lance Taylor <iant@google.com>
1878
1879 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
1880
18812011-04-13 Ian Lance Taylor <iant@google.com>
1882
1883 * Make-lang.in (GO_OBJS): Add go/runtime.o.
1884 (GO_RUNTIME_H): New variable.
1885 (go/runtime.o): New target.
1886 (go/gogo.o): Depend on $(GO_RUNTIME_H).
1887 (go/statements.o): Likewise.
1888
18892011-04-12 Nathan Froyd <froydnj@codesourcery.com>
1890
1891 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
1892 calling TREE_CHAIN.
1893
18942011-04-06 Ian Lance Taylor <iant@google.com>
1895
1896 * go-gcc.cc (if_statement): Use build3_loc.
1897 (Gcc_backend::switch_statement): New function.
1898 (Gcc_backend::statement_list): New function.
1899
19002011-04-06 Ian Lance Taylor <iant@google.com>
1901
1902 * go-gcc.cc (Gcc_backend::if_statement): New function.
1903 (tree_to_stat): New function.
1904 (expr_to_tree): Renamed from expression_to_tree.
1905 (stat_to_tree): Renamed from statement_to_tree.
1906
19072011-04-06 Ian Lance Taylor <iant@google.com>
1908
1909 * go-gcc.cc (Gcc_backend::expression_statement): New function.
1910
19112011-04-04 Ian Lance Taylor <iant@google.com>
1912
1913 * go-gcc.c (class Blabel): Define.
1914 (Gcc_backend::make_expression): New function.
1915 (get_identifier_from_string): New function.
1916 (Gcc_backend::label): New function.
1917 (Gcc_backend::label_definition_statement): New function.
1918 (Gcc_backend::goto_statement): New function.
1919 (Gcc_backend::label_address): New function.
1920 (expression_to_tree): New function.
1921 * Make-lang.in (go/expressions.o): Depend on
1922 go/gofrontend/backend.h.
1923 (go/gogo.o): Likewise.
1924
19252011-04-04 Ian Lance Taylor <iant@google.com>
1926
1927 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
1928 (class Bfunction): Define.
1929 (Gcc_backend::assignment_statement): Rename from assignment.
1930 Check for errors.
1931 (Gcc_backend::return_statement): New function.
1932 (tree_to_function): New function.
1933 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
1934 $(GIMPLE_H), and $(GO_GOGO_H).
1935
19362011-04-03 Ian Lance Taylor <iant@google.com>
1937
1938 * go-gcc.cc: New file.
1939 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
1940 (go/go-gcc.o): New target.
1941 (go/go.o): Depend on go/gofrontend/backend.h.
1942 (go/statements.o): Likewise.
1943
19442011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1945
1946 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
1947
19482011-02-08 Ian Lance Taylor <iant@google.com>
1949
1950 * go-lang.c (go_langhook_init_options_struct): Set
1951 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
1952
19532011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1954
1955 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
1956 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
1957
19582011-01-21 Ian Lance Taylor <iant@google.com>
1959
1960 * go-lang.c (go_langhook_init): Omit float_type_size when calling
1961 go_create_gogo.
1962 * go-c.h: Update declaration of go_create_gogo.
1963
19642011-01-13 Ian Lance Taylor <iant@google.com>
1965
1966 * go-backend.c: Include "rtl.h" and "target.h".
1967 (go_imported_unsafe): New function.
1968 * go-c.h (go_imported_unsafe): Declare.
1969 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
1970 (go/gogo-tree.o): Remove dependency on $(RTL_H).
1971 (go/unsafe.o): Depend on $(GO_C_H).
1972
19732010-12-31 Joern Rennecke <amylaar@spamcop.net>
1974
1975 PR go/47113
1976 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
1977 variable ‘field’ .
1978
19792010-12-21 Ian Lance Taylor <iant@google.com>
1980
1981 * Make-lang.in (check-go): Remove.
1982 (lang_checks_parallelized): Add check-go.
1983 (check_go_parallelize): Set.
1984
19852010-12-13 Ian Lance Taylor <iant@google.com>
1986
1987 * gospec.c (lang_specific_driver): Add a -o option if not linking
1988 and there is no -o option already.
1989
19902010-12-07 Ian Lance Taylor <iant@google.com>
1991
1992 PR tree-optimization/46805
1993 PR tree-optimization/46833
1994 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
1995
19962010-12-06 Ian Lance Taylor <iant@google.com>
1997
1998 PR other/46789
1999 PR bootstrap/46812
2000 * go-lang.c (go_char_p): Define type and vectors.
2001 (go_search_dirs): New static variable.
2002 (go_langhook_handle_option): Use version and version/machine
2003 directories for -L.
2004 (go_langhook_post_options): Add non-specific -L paths.
2005 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
2006 DEFAULT_TARGET_MACHINE when compiling.
2007 * gccgo.texi (Invoking gccgo): Only document -L for linking.
2008 (Import and Export): Don't mention -L for finding import files.
2009
20102010-12-03 Ian Lance Taylor <iant@google.com>
2011
2012 PR bootstrap/46776
2013 * go-backend.c: New file.
2014 * go-c.h (go_type_alignment): Declare.
2015 (go_field_alignment, go_trampoline_info): Declare.
2016 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
2017 (go/go-backend.o): New target.
2018 (go/go-lang.o): Make dependencies match source file.
2019 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
2020 (go/gogo-tree.o): Don't depend on $(TM_H).
2021
20222010-12-03 Ian Lance Taylor <iant@google.com>
2023
2024 * config-lang.in (build_by_default): Set to no.
2025
20262010-12-02 Ian Lance Taylor <iant@google.com>
2027
2028 Go frontend added to gcc repository.
98db73df 2029\f
877e3c2a 2030Copyright (C) 2010-2022 Free Software Foundation, Inc.
71eba7a0 2031
98db73df
TB
2032Copying and distribution of this file, with or without modification,
2033are permitted in any medium without royalty provided the copyright
2034notice and this notice are preserved.