Change export code to use the backend interface.
[gcc.git] / gcc / go / ChangeLog
1 2011-05-27 Ian Lance Taylor <iant@google.com>
2
3 * go-backend.c: Include "output.h".
4 (go_write_export_data): New function.
5 * go-c.h (go_write_export_data): Declare.
6 * Make-lang.in (go/go-backend.o): Depend on output.h.
7 (go/export.o): Depend on $(GO_C_H). Do not depend on
8 $(MACHMODE_H), output.h, or $(TARGET_H).
9
10 2011-05-24 Joseph Myers <joseph@codesourcery.com>
11
12 * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
13 (gccgo$(exeext)): Use libcommon-target.a.
14
15 2011-05-20 Joseph Myers <joseph@codesourcery.com>
16
17 * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
18
19 2011-05-13 Ian Lance Taylor <iant@google.com>
20
21 * go-gcc.cc (Gcc_backend::function_type): When building a struct
22 for multiple results, check that all fields types have a size.
23 (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
24
25 2011-05-12 Ian Lance Taylor <iant@google.com>
26
27 * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
28 parameter.
29 (Gcc_backend::parameter_variable): Likewise.
30
31 2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
32
33 * go-lang.c (global_bindings_p): Return bool and simplify.
34
35 2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
36
37 * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
38
39 2011-05-04 Ian Lance Taylor <iant@google.com>
40
41 * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
42 (Gcc_backend::fill_in_struct): New function.
43 (Gcc_backend::array_type): Implement.
44 (Gcc_backend::fill_in_array): New function.
45 (Gcc_backend::placeholder_pointer_type): New function.
46 (Gcc_backend::set_placeholder_pointer_type): New function.
47 (Gcc_backend::set_placeholder_function_type): New function.
48 (Gcc_backend::placeholder_struct_type): New function.
49 (Gcc_backend::set_placeholder_struct_type): New function.
50 (Gcc_backend::placeholder_array_type): New function.
51 (Gcc_backend::set_placeholder_array_type): New function.
52 (Gcc_backend::named_type): New function.
53 (Gcc_backend::circular_pointer_type): New function.
54 (Gcc_backend::is_circular_pointer_type): New function.
55
56 2011-04-26 Ian Lance Taylor <iant@google.com>
57
58 * go-gcc.cc (Gcc_backend::struct_type): Implement.
59
60 2011-04-25 Ian Lance Taylor <iant@google.com>
61
62 * go-gcc.cc (Gcc_backend::error_type): Implement.
63 (Gcc_backend::string_type): Remove.
64 (Gcc_backend::function_type): Change signature and implement.
65 (Gcc_backend::struct_type): Change signature.
66 (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
67 (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
68 (Gcc_backend::pointer_type): Check for error.
69 * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
70
71 2011-04-25 Evan Shaw <edsrzf@gmail.com>
72
73 * go-gcc.c (class Gcc_tree): Make get_tree const.
74 (Gcc_backend::void_type): Implement.
75 (Gcc_backend::bool_type): Implement.
76 (Gcc_backend::integer_type): Implement.
77 (Gcc_backend::float_type): Implement.
78 (Gcc_backend::complex_type): New function.
79 (Gcc_backend::pointer_type): New function.
80 (Gcc_backend::make_type): New function.
81 (type_to_tree): New function.
82
83 2011-04-21 Ian Lance Taylor <iant@google.com>
84
85 * go-system.h (go_assert, go_unreachable): Define.
86
87 2011-04-19 Ian Lance Taylor <iant@google.com>
88
89 * go-system.h: Include "intl.h".
90 * Make-lang.in (GO_SYSTEM_H): Add intl.h.
91 (go/statements.o): Remove dependencies on intl.h $(TREE_H)
92 $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
93
94 2011-04-19 Ian Lance Taylor <iant@google.com>
95
96 * go-gcc.cc (Gcc_backend::temporary_variable): New function.
97
98 2011-04-19 Ian Lance Taylor <iant@google.com>
99
100 * go-gcc.cc (class Bblock): Define.
101 (Gcc_backend::if_statement): Change then_block and else_block to
102 Bblock*.
103 (Gcc_backend::block): New function.
104 (Gcc_backend::block_add_statements): New function.
105 (Gcc_backend::block_statement): New function.
106 (tree_to_block, block_to_tree): New functions.
107
108 2011-04-18 Ian Lance Taylor <iant@google.com>
109
110 * go-gcc.cc: Include "go-c.h".
111 (class Bvariable): Define.
112 (Gcc_backend::init_statement): New function.
113 (Gcc_backend::global_variable): New function.
114 (Gcc_backend::global_variable_set_init): New function.
115 (Gcc_backend::local_variable): New function.
116 (Gcc_backend::parameter_variable): New function.
117 (tree_to_type, var_to_tree): New functions.
118 * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
119 * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
120
121 2011-04-15 Ian Lance Taylor <iant@google.com>
122
123 * go-gcc.cc (Gcc_backend::compound_statement): New function.
124 (Gcc_backend::assignment_statement): Use error_statement.
125 (Gcc_backend::return_statement): Likewise.
126 (Gcc_backend::if_statement): Likewise.
127 (Gcc_backend::switch_statement): Likewise.
128 (Gcc_backend::statement_list): Likewise.
129
130 2011-04-14 Ian Lance Taylor <iant@google.com>
131
132 * go-gcc.cc (Backend::error_statement): New function.
133
134 2011-04-13 Ian Lance Taylor <iant@google.com>
135
136 * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
137
138 2011-04-13 Ian Lance Taylor <iant@google.com>
139
140 * Make-lang.in (GO_OBJS): Add go/runtime.o.
141 (GO_RUNTIME_H): New variable.
142 (go/runtime.o): New target.
143 (go/gogo.o): Depend on $(GO_RUNTIME_H).
144 (go/statements.o): Likewise.
145
146 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
147
148 * go-lang.c (union lang_tree_node): Check for TS_COMMON before
149 calling TREE_CHAIN.
150
151 2011-04-06 Ian Lance Taylor <iant@google.com>
152
153 * go-gcc.cc (if_statement): Use build3_loc.
154 (Gcc_backend::switch_statement): New function.
155 (Gcc_backend::statement_list): New function.
156
157 2011-04-06 Ian Lance Taylor <iant@google.com>
158
159 * go-gcc.cc (Gcc_backend::if_statement): New function.
160 (tree_to_stat): New function.
161 (expr_to_tree): Renamed from expression_to_tree.
162 (stat_to_tree): Renamed from statement_to_tree.
163
164 2011-04-06 Ian Lance Taylor <iant@google.com>
165
166 * go-gcc.cc (Gcc_backend::expression_statement): New function.
167
168 2011-04-04 Ian Lance Taylor <iant@google.com>
169
170 * go-gcc.c (class Blabel): Define.
171 (Gcc_backend::make_expression): New function.
172 (get_identifier_from_string): New function.
173 (Gcc_backend::label): New function.
174 (Gcc_backend::label_definition_statement): New function.
175 (Gcc_backend::goto_statement): New function.
176 (Gcc_backend::label_address): New function.
177 (expression_to_tree): New function.
178 * Make-lang.in (go/expressions.o): Depend on
179 go/gofrontend/backend.h.
180 (go/gogo.o): Likewise.
181
182 2011-04-04 Ian Lance Taylor <iant@google.com>
183
184 * go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
185 (class Bfunction): Define.
186 (Gcc_backend::assignment_statement): Rename from assignment.
187 Check for errors.
188 (Gcc_backend::return_statement): New function.
189 (tree_to_function): New function.
190 * Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
191 $(GIMPLE_H), and $(GO_GOGO_H).
192
193 2011-04-03 Ian Lance Taylor <iant@google.com>
194
195 * go-gcc.cc: New file.
196 * Make-lang.in (GO_OBJS): Add go/go-gcc.o.
197 (go/go-gcc.o): New target.
198 (go/go.o): Depend on go/gofrontend/backend.h.
199 (go/statements.o): Likewise.
200
201 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
202
203 * gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
204
205 2011-02-08 Ian Lance Taylor <iant@google.com>
206
207 * go-lang.c (go_langhook_init_options_struct): Set
208 frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
209
210 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
211
212 * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
213 LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
214
215 2011-01-21 Ian Lance Taylor <iant@google.com>
216
217 * go-lang.c (go_langhook_init): Omit float_type_size when calling
218 go_create_gogo.
219 * go-c.h: Update declaration of go_create_gogo.
220
221 2011-01-13 Ian Lance Taylor <iant@google.com>
222
223 * go-backend.c: Include "rtl.h" and "target.h".
224 (go_imported_unsafe): New function.
225 * go-c.h (go_imported_unsafe): Declare.
226 * Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
227 (go/gogo-tree.o): Remove dependency on $(RTL_H).
228 (go/unsafe.o): Depend on $(GO_C_H).
229
230 2010-12-31 Joern Rennecke <amylaar@spamcop.net>
231
232 PR go/47113
233 * go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
234 variable ‘field’ .
235
236 2010-12-21 Ian Lance Taylor <iant@google.com>
237
238 * Make-lang.in (check-go): Remove.
239 (lang_checks_parallelized): Add check-go.
240 (check_go_parallelize): Set.
241
242 2010-12-13 Ian Lance Taylor <iant@google.com>
243
244 * gospec.c (lang_specific_driver): Add a -o option if not linking
245 and there is no -o option already.
246
247 2010-12-07 Ian Lance Taylor <iant@google.com>
248
249 PR tree-optimization/46805
250 PR tree-optimization/46833
251 * go-lang.c (go_langhook_type_for_mode): Handle vector modes.
252
253 2010-12-06 Ian Lance Taylor <iant@google.com>
254
255 PR other/46789
256 PR bootstrap/46812
257 * go-lang.c (go_char_p): Define type and vectors.
258 (go_search_dirs): New static variable.
259 (go_langhook_handle_option): Use version and version/machine
260 directories for -L.
261 (go_langhook_post_options): Add non-specific -L paths.
262 * Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
263 DEFAULT_TARGET_MACHINE when compiling.
264 * gccgo.texi (Invoking gccgo): Only document -L for linking.
265 (Import and Export): Don't mention -L for finding import files.
266
267 2010-12-03 Ian Lance Taylor <iant@google.com>
268
269 PR bootstrap/46776
270 * go-backend.c: New file.
271 * go-c.h (go_type_alignment): Declare.
272 (go_field_alignment, go_trampoline_info): Declare.
273 * Make-lang.in (GO_OBJS): Add go/go-backend.o.
274 (go/go-backend.o): New target.
275 (go/go-lang.o): Make dependencies match source file.
276 (go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
277 (go/gogo-tree.o): Don't depend on $(TM_H).
278
279 2010-12-03 Ian Lance Taylor <iant@google.com>
280
281 * config-lang.in (build_by_default): Set to no.
282
283 2010-12-02 Ian Lance Taylor <iant@google.com>
284
285 Go frontend added to gcc repository.