OSDN Git Service

9b17bf4b2341eea391b66ee5a50eb08ab2323083
[pf3gnuchains/gcc-fork.git] / gcc / go / ChangeLog
1 2011-12-13  Ian Lance Taylor  <iant@google.com>
2
3         * go-backend.c: #include "simple-object.h" and "intl.h".
4         (GO_EXPORT_SEGMENT_NAME): Define if not defined.
5         (GO_EXPORT_SECTION_NAME): Likewise.
6         (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
7         (go_read_export_data): New function.
8         * go-c.h (go_read_export_data): Declare.
9
10 2011-11-29  Sanjoy Das  <thedigitalangel@gmail.com>
11             Ian Lance Taylor  <iant@google.com>
12
13         * go-location.h: New file.
14         * go-linemap.cc: New file.
15         * go-gcc.cc: Change all uses of source_location to Location.
16         * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
17         (GO_LINEMAP_H): New variable.
18         (GO_LEX_H): Use $(GO_LINEMAP_H).
19         (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
20         (go/go-linemap.o): New target.
21
22 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
23
24         * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
25
26 2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
27
28         * lang.opt: Add fgo-optimize-.
29         * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
30         * go-c.h (go_enable_optimize): Declare.
31         * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
32         (GO_EXPORT_H): Define.
33         (GO_IMPORT_H): Add $(GO_EXPORT_H).
34         (GO_AST_DUMP_H): Define.
35         (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
36         (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
37         (go/types.o): Likewise.
38         (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
39         (go/go-optimize.o): New target.
40
41 2011-08-24  Joseph Myers  <joseph@codesourcery.com>
42
43         * Make-lang.in (CFLAGS-go/go-lang.o): New.
44         (go/go-lang.o): Remove explicit compilation rule.
45
46 2011-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
47
48         * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
49
50 2011-08-02  Roberto Lublinerman  <rluble@gmail.com>
51
52         * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
53         (go/ast-dump.o): New target.
54         (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
55         (go/statements.o): Likewise.
56
57 2011-07-06  Richard Guenther  <rguenther@suse.de>
58
59         * go-lang.c (go_langhook_init):
60         Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
61
62 2011-06-14  Joseph Myers  <joseph@codesourcery.com>
63
64         * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
65         dependencies.
66         * go-backend.c: Include common/common-target.h.
67         (go_write_export_data): Use targetm_common.have_named_sections.
68         * go-lang.c: Include common/common-target.h.
69         (go_langhook_init_options_struct): Use
70         targetm_common.supports_split_stack.
71
72 2011-06-13  Ian Lance Taylor  <iant@google.com>
73
74         * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
75
76 2011-06-10  Ian Lance Taylor  <iant@google.com>
77
78         * go-gcc.cc: Include "toplev.h".
79         (Gcc_backend::immutable_struct): New function.
80         (Gcc_backend::immutable_struct_set_init): New function.
81         (Gcc_backend::immutable_struct_reference): New function.
82         * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
83
84 2011-06-09  Ian Lance Taylor  <iant@google.com>
85
86         * go-gcc.cc (Gcc_backend::zero_expression): New function.
87
88 2011-06-07  Richard Guenther  <rguenther@suse.de>
89
90         * go-lang.c (go_langhook_init): Do not set
91         size_type_node or call set_sizetype.
92
93 2011-05-27  Ian Lance Taylor  <iant@google.com>
94
95         * go-backend.c: Include "output.h".
96         (go_write_export_data): New function.
97         * go-c.h (go_write_export_data): Declare.
98         * Make-lang.in (go/go-backend.o): Depend on output.h.
99         (go/export.o): Depend on $(GO_C_H).  Do not depend on
100         $(MACHMODE_H), output.h, or $(TARGET_H).
101
102 2011-05-24  Joseph Myers  <joseph@codesourcery.com>
103
104         * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
105         (gccgo$(exeext)): Use libcommon-target.a.
106
107 2011-05-20  Joseph Myers  <joseph@codesourcery.com>
108
109         * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
110
111 2011-05-13  Ian Lance Taylor  <iant@google.com>
112
113         * go-gcc.cc (Gcc_backend::function_type): When building a struct
114         for multiple results, check that all fields types have a size.
115         (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
116
117 2011-05-12  Ian Lance Taylor  <iant@google.com>
118
119         * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
120         parameter.
121         (Gcc_backend::parameter_variable): Likewise.
122
123 2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
124
125         * go-lang.c (global_bindings_p): Return bool and simplify.
126
127 2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
128
129         * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
130
131 2011-05-04  Ian Lance Taylor  <iant@google.com>
132
133         * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
134         (Gcc_backend::fill_in_struct): New function.
135         (Gcc_backend::array_type): Implement.
136         (Gcc_backend::fill_in_array): New function.
137         (Gcc_backend::placeholder_pointer_type): New function.
138         (Gcc_backend::set_placeholder_pointer_type): New function.
139         (Gcc_backend::set_placeholder_function_type): New function.
140         (Gcc_backend::placeholder_struct_type): New function.
141         (Gcc_backend::set_placeholder_struct_type): New function.
142         (Gcc_backend::placeholder_array_type): New function.
143         (Gcc_backend::set_placeholder_array_type): New function.
144         (Gcc_backend::named_type): New function.
145         (Gcc_backend::circular_pointer_type): New function.
146         (Gcc_backend::is_circular_pointer_type): New function.
147
148 2011-04-26  Ian Lance Taylor  <iant@google.com>
149
150         * go-gcc.cc (Gcc_backend::struct_type): Implement.
151
152 2011-04-25  Ian Lance Taylor  <iant@google.com>
153
154         * go-gcc.cc (Gcc_backend::error_type): Implement.
155         (Gcc_backend::string_type): Remove.
156         (Gcc_backend::function_type): Change signature and implement.
157         (Gcc_backend::struct_type): Change signature.
158         (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
159         (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
160         (Gcc_backend::pointer_type): Check for error.
161         * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
162
163 2011-04-25  Evan Shaw  <edsrzf@gmail.com>
164
165         * go-gcc.c (class Gcc_tree): Make get_tree const.
166         (Gcc_backend::void_type): Implement.
167         (Gcc_backend::bool_type): Implement.
168         (Gcc_backend::integer_type): Implement.
169         (Gcc_backend::float_type): Implement.
170         (Gcc_backend::complex_type): New function.
171         (Gcc_backend::pointer_type): New function.
172         (Gcc_backend::make_type): New function.
173         (type_to_tree): New function.
174
175 2011-04-21  Ian Lance Taylor  <iant@google.com>
176
177         * go-system.h (go_assert, go_unreachable): Define.
178
179 2011-04-19  Ian Lance Taylor  <iant@google.com>
180
181         * go-system.h: Include "intl.h".
182         * Make-lang.in (GO_SYSTEM_H): Add intl.h.
183         (go/statements.o): Remove dependencies on intl.h $(TREE_H)
184         $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
185
186 2011-04-19  Ian Lance Taylor  <iant@google.com>
187
188         * go-gcc.cc (Gcc_backend::temporary_variable): New function.
189
190 2011-04-19  Ian Lance Taylor  <iant@google.com>
191
192         * go-gcc.cc (class Bblock): Define.
193         (Gcc_backend::if_statement): Change then_block and else_block to
194         Bblock*.
195         (Gcc_backend::block): New function.
196         (Gcc_backend::block_add_statements): New function.
197         (Gcc_backend::block_statement): New function.
198         (tree_to_block, block_to_tree): New functions.
199
200 2011-04-18  Ian Lance Taylor  <iant@google.com>
201
202         * go-gcc.cc: Include "go-c.h".
203         (class Bvariable): Define.
204         (Gcc_backend::init_statement): New function.
205         (Gcc_backend::global_variable): New function.
206         (Gcc_backend::global_variable_set_init): New function.
207         (Gcc_backend::local_variable): New function.
208         (Gcc_backend::parameter_variable): New function.
209         (tree_to_type, var_to_tree): New functions.
210         * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
211         * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
212
213 2011-04-15  Ian Lance Taylor  <iant@google.com>
214
215         * go-gcc.cc (Gcc_backend::compound_statement): New function.
216         (Gcc_backend::assignment_statement): Use error_statement.
217         (Gcc_backend::return_statement): Likewise.
218         (Gcc_backend::if_statement): Likewise.
219         (Gcc_backend::switch_statement): Likewise.
220         (Gcc_backend::statement_list): Likewise.
221
222 2011-04-14  Ian Lance Taylor  <iant@google.com>
223
224         * go-gcc.cc (Backend::error_statement): New function.
225
226 2011-04-13  Ian Lance Taylor  <iant@google.com>
227
228         * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
229
230 2011-04-13  Ian Lance Taylor  <iant@google.com>
231
232         * Make-lang.in (GO_OBJS): Add go/runtime.o.
233         (GO_RUNTIME_H): New variable.
234         (go/runtime.o): New target.
235         (go/gogo.o): Depend on $(GO_RUNTIME_H).
236         (go/statements.o): Likewise.
237
238 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
239
240         * go-lang.c (union lang_tree_node): Check for TS_COMMON before
241         calling TREE_CHAIN.
242
243 2011-04-06  Ian Lance Taylor  <iant@google.com>
244
245         * go-gcc.cc (if_statement): Use build3_loc.
246         (Gcc_backend::switch_statement): New function.
247         (Gcc_backend::statement_list): New function.
248
249 2011-04-06  Ian Lance Taylor  <iant@google.com>
250
251         * go-gcc.cc (Gcc_backend::if_statement): New function.
252         (tree_to_stat): New function.
253         (expr_to_tree): Renamed from expression_to_tree.
254         (stat_to_tree): Renamed from statement_to_tree.
255
256 2011-04-06  Ian Lance Taylor  <iant@google.com>
257
258         * go-gcc.cc (Gcc_backend::expression_statement): New function.
259
260 2011-04-04  Ian Lance Taylor  <iant@google.com>
261
262         * go-gcc.c (class Blabel): Define.
263         (Gcc_backend::make_expression): New function.
264         (get_identifier_from_string): New function.
265         (Gcc_backend::label): New function.
266         (Gcc_backend::label_definition_statement): New function.
267         (Gcc_backend::goto_statement): New function.
268         (Gcc_backend::label_address): New function.
269         (expression_to_tree): New function.
270         * Make-lang.in (go/expressions.o): Depend on
271         go/gofrontend/backend.h.
272         (go/gogo.o): Likewise.
273
274 2011-04-04  Ian Lance Taylor  <iant@google.com>
275
276         * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
277         (class Bfunction): Define.
278         (Gcc_backend::assignment_statement): Rename from assignment.
279         Check for errors.
280         (Gcc_backend::return_statement): New function.
281         (tree_to_function): New function.
282         * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
283         $(GIMPLE_H), and $(GO_GOGO_H).
284
285 2011-04-03  Ian Lance Taylor  <iant@google.com>
286
287         * go-gcc.cc: New file.
288         * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
289         (go/go-gcc.o): New target.
290         (go/go.o): Depend on go/gofrontend/backend.h.
291         (go/statements.o): Likewise.
292
293 2011-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
294
295         * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
296
297 2011-02-08  Ian Lance Taylor  <iant@google.com>
298
299         * go-lang.c (go_langhook_init_options_struct): Set
300         frontend_set_flag_errno_math.  Don't set x_flag_trapping_math.
301
302 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
303
304         * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
305         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
306
307 2011-01-21  Ian Lance Taylor  <iant@google.com>
308
309         * go-lang.c (go_langhook_init): Omit float_type_size when calling
310         go_create_gogo.
311         * go-c.h: Update declaration of go_create_gogo.
312
313 2011-01-13  Ian Lance Taylor  <iant@google.com>
314
315         * go-backend.c: Include "rtl.h" and "target.h".
316         (go_imported_unsafe): New function.
317         * go-c.h (go_imported_unsafe): Declare.
318         * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
319         (go/gogo-tree.o): Remove dependency on $(RTL_H).
320         (go/unsafe.o): Depend on $(GO_C_H).
321
322 2010-12-31  Joern Rennecke  <amylaar@spamcop.net>
323
324         PR go/47113
325         * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
326         variable ‘field’ .
327
328 2010-12-21  Ian Lance Taylor  <iant@google.com>
329
330         * Make-lang.in (check-go): Remove.
331         (lang_checks_parallelized): Add check-go.
332         (check_go_parallelize): Set.
333
334 2010-12-13  Ian Lance Taylor  <iant@google.com>
335
336         * gospec.c (lang_specific_driver): Add a -o option if not linking
337         and there is no -o option already.
338
339 2010-12-07  Ian Lance Taylor  <iant@google.com>
340
341         PR tree-optimization/46805
342         PR tree-optimization/46833
343         * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
344
345 2010-12-06  Ian Lance Taylor  <iant@google.com>
346
347         PR other/46789
348         PR bootstrap/46812
349         * go-lang.c (go_char_p): Define type and vectors.
350         (go_search_dirs): New static variable.
351         (go_langhook_handle_option): Use version and version/machine
352         directories for -L.
353         (go_langhook_post_options): Add non-specific -L paths.
354         * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
355         DEFAULT_TARGET_MACHINE when compiling.
356         * gccgo.texi (Invoking gccgo): Only document -L for linking.
357         (Import and Export): Don't mention -L for finding import files.
358
359 2010-12-03  Ian Lance Taylor  <iant@google.com>
360
361         PR bootstrap/46776
362         * go-backend.c: New file.
363         * go-c.h (go_type_alignment): Declare.
364         (go_field_alignment, go_trampoline_info): Declare.
365         * Make-lang.in (GO_OBJS): Add go/go-backend.o.
366         (go/go-backend.o): New target.
367         (go/go-lang.o): Make dependencies match source file.
368         (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
369         (go/gogo-tree.o): Don't depend on $(TM_H).
370
371 2010-12-03  Ian Lance Taylor  <iant@google.com>
372
373         * config-lang.in (build_by_default): Set to no.
374
375 2010-12-02  Ian Lance Taylor  <iant@google.com>
376
377         Go frontend added to gcc repository.