re PR target/87033 (The compiler does not generate the LWAX instruction)
[official-gcc.git] / libcc1 / ChangeLog
blobcd65832e960e703cd124c98cb9b03ffb926b2048
1 2018-04-18  David Malcolm  <dmalcolm@redhat.com>
3         PR jit/85384
4         * configure: Regenerate.
6 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
8         Update copyright years.
10 2017-11-14 Boris Kolpackov  <boris@codesynthesis.com>
12         * configure: Regenerate.
14 2017-11-16  Sergio Durigan Junior  <sergiodj@redhat.com>
15             Pedro Alves  <palves@redhat.com>
17         * Makefile.am: Remove references to c-compiler-name.h and
18         cp-compiler-name.h
19         * Makefile.in: Regenerate.
20         * compiler-name.hh: New file.
21         * libcc1.cc: Don't include c-compiler-name.h.  Include
22         compiler-name.hh.
23         * libcp1.cc: Don't include cp-compiler-name.h.  Include
24         compiler-name.hh.
26 2017-11-01  Nathan Sidwell  <nathan@acm.org>
28         * libcp1plugin.cc (plugin_build_decl): Use
29         DECL_OVERLOADED_OPERATOR_CODE_RAW.
31 2017-10-31  Nathan Sidwell  <nathan@acm.org>
33         * libcp1plugin.cc (plugin_build_decl): Use ovl_op_identifier.
34         Directly set operator code.
35         (plugin_build_dependent_expr): Use ovl_op_identifier.
37 2017-10-04  Nathan Sidwell  <nathan@acm.org>
39         * libcp1plugin.cc (supplement_binding): Don't use
40         maybe_remove_implicit_alias.
42 2017-07-20  Nathan Sidwell  <nathan@acm.org>
44         Remove TYPE_METHODS.
45         * libcp1plugin.cc (plugin_build_decl): Member fns are on TYPE_FIELDS.
47 2017-07-12  Nathan Sidwell  <nathan@acm.org>
49         * libcp1plugin.cc (plugin_build_decl): Use
50         DECL_CXX_{CON,DE}STRUCTOR directly.
52 2017-07-05  Richard Sandiford  <richard.sandiford@linaro.org>
54         * libcp1plugin.cc (plugin_build_field): Use SET_DECL_MODE.
56 2017-06-30  Nathan Sidwell  <nathan@acm.org>
58         * libcp1plugin.cc (plugin_build_decl): Use make_conv_op_name.
59         (plugin_build_dependent_expr): Likewise.
61 2017-06-26  Nathan Sidwell  <nathan@acm.org>
63         * libcp1plugin.cc (plugin_build_decl): Don't set
64         DECL_ASSIGNMENT_OPERATOR_P.
66 2017-06-16  Nathan Sidwell  <nathan@acm.org>
68         * libcp1plugin.cc (plugin_build_decl): Adjust parm building.
70 2017-05-26  Nathan Sidwell  <nathan@acm.org>
72         * libcp1plugin.cc (plugin_make_namespace_inline): Push onto linees.
74         * libcp1plugin.cc (plugin_add_using_namespace): Call
75         finish_namespace_using_directive.
77 2017-05-25  Nathan Sidwell  <nathan@acm.org>
79         * libcp1plugin.cc (plugin_make_namespace_inline): Check and set
80         DECL_NAMESPACE_INLINE_P.
82 2017-05-23  Nathan Sidwell  <nathan@acm.org>
84         * libcp1plugin.cc (plugin_add_using_decl): Call
85         finish_namespace_using_decl.  Use assert not unreachable.
87 2017-05-11  Nathan Sidwell  <nathan@acm.org>
89         * libcp1plugin.cc (safe_pushdecl_maybe_friend): Call pushdecl.
91 2017-05-10  Nathan Sidwell  <nathan@acm.org>
93         * libcp1plugin.cc (plugin_build_decl): Adjust add_method call.
95 2017-04-15  Alexandre Oliva <aoliva@redhat.com>
97         * libcp1plugin.cc (plugin_build_decl): Call name_unnamed_type.
99 2017-01-30  Alexandre Oliva <aoliva@redhat.com>
101         Introduce C++ support.
102         * Makefile.am (AM_CPPFLAGS): Move some -I flags to...
103         (CPPFLAGS_FOR_C_FAMILY, CPPFLAGS_FOR_C, CPPFLAGS_FOR_CXX): ...
104         new macros.
105         (plugin_LTLIBRARIES): Add libcp1plugin.la.
106         (BUILT_SOURCES, MOSTLYCLEANFILES): Add...
107         (cp-compiler-name.h): ... this.  New.
108         (c-compiler-name.h): Rename all over from...
109         (compiler-name.h): ... this.  Create it atomically.
110         (marshall_c_source, marshall_cxx_source): New macros.
111         (libcc1plugin_la_SOURCES): Rename plugin.cc to libcc1plugin.cc.
112         Add marshall_c_source expansion.
113         (libcc1plugin.lo_CPPFLAGS): New macro.
114         (libcp1plugin_la_LDFLAGS): Likewise.
115         (libcp1plugin_la_SOURCES): Likewise.
116         (libcp1plugin.lo_CPPFLAGS): Likewise.
117         (libcp1plugin_la_LIBADD): Likewise.
118         (libcp1plugin_la_DEPENDENCIES): Likewise.
119         (libcp1plugin_la_LINK): Likewise.
120         (libcc1_la_SOURCES): Added marshall_c_source and
121         marshall_cxx_source expansions.
122         * Makefile.in: Rebuild.
123         * compiler-name.h: Rename all over to...
124         * c-compiler-name.h: ... this.  Define C_COMPILER_NAME instead
125         of COMPILER_NAME.
126         * plugin.cc: Rename all over to...
127         * libcc1plugin.cc: ... this.  Include marshall-c.hh.
128         (address_rewriter): Drop cleaning up of VLA sizes.
129         (plugin_build_decl): Mark decls as external.
130         (plugin_tagbind): Propagate name to all variants.
131         (build_anonymous_node): New.
132         (plugin_build_record_type): Use it instead of make_node.
133         (plugin_build_union_type): Likewise.
134         (plugin_build_enum_type): Likewise.
135         (plugin_finish_record_or_union): Update all type variants.
136         (safe_lookup_builtin_type): New.
137         (plugin_int_check): Factor out of, and add checks to, ...
138         (plugin_int_type): ... this.  Rename to...
139         (plugin_int_type_v0): ... this.
140         (plugin_int_type): New interface, new implementation.
141         (plugin_char_type): New.
142         (plugin_float_type_v0): Rename from...
143         (plugin_float_type): ... this.  New interface, new implementation.
144         (plugin_init): Bump handshake version.
145         * libcc1.cc: Include marshall-c.hh.  Drop gcc-interface.h.
146         (call_binding_oracle): Rename to...
147         (c_call_binding_oracle): ... this, into anonymous namespace.
148         (call_symbol_address): Rename to...
149         (c_call_symbol_address): ... this, likewise.
150         (GCC_METHOD#): Move methods into cc1plugin::c:: namespace.
151         (libcc1::compiler::find): Refer to C_COMPILER_NAME.
152         (fork_exec): Bump to GCC_C_FE_VERSION_1.
153         (libcc1_compile): Prefix callbacks with c_.
154         (gcc_c_fe_context): Accept GCC_C_FE_VERSION_1.
155         * libcc1.sym: Export gcc_cp_fe_context.
156         * libcp1.cc: New, mostly copied and adjusted from libcc1.cc.
157         * libcp1plugin.cc: New, initially copied from libcc1plugin.cc.
158         * libcp1plugin.sym: New.
159         * marshall-c.hh: New.  Move C-specific types from...
160         * marshall.cc: ... this.
161         (cc1_plugin::marshall_array_start): New.
162         (cc1_plugin::marshall_array_elmts): New.
163         (cc1_plugin::marshall for gcc_type_array): Use the above.
164         (cc1_plugin::unmarshall_array_start): New.
165         (cc1_plugin::unmarshall_array_elmts): New.
166         (cc1_plugin::unmarshall for gcc_type_array): Use the above.
167         * marshall.hh: Declare the new array building blocks.
168         Drop C-specific unmarshall declarations.
169         * marshall-cp.hh: New.
170         * names.cc (GCC_METHOD#): Add LANG:: to method names.
171         (LANG): Define while including gcc-c-fe.def and gcc-cp-fe.def.
172         * names.hh: Include gcc-c-fe.def and gcc-cp-fe.def in the
173         corresponding namespaces.
174         * rpc.hh: Don't include marshall.hh.
175         [GCC_CP_INTERFACE_H] (argument_wrapper): Specialize for
176         gcc_vbase_array, gcc_cp_template_args, gcc_cp_function_args.
178 2017-01-30  Jan Kratochvil <jan.kratochvil@redhat.com>
180         * findcomp.cc: Include system.h.
181         (search_dir): Return absolute filename.
183         * libcc1.cc (libcc1): Add class compiler with field compilerp,
184         class compiler_triplet_regexp and class
185         compiler_driver_filename.
186         (libcc1::libcc1): Initialize compilerp.
187         (libcc1::~libcc1): Delete compilerp.
188         (libcc1::compiler::find, libcc1::compiler_triplet_regexp::find)
189         (libcc1::compiler_driver_filename::find): New methods.
190         (libcc1_set_arguments): Remove parameter triplet_regexp.
191         (libcc1_set_triplet_regexp, libcc1_set_driver_filename)
192         (libcc1_set_arguments_v0): New functions.
193         (vtable): Use libcc1_set_arguments_v0, add
194         libcc1_set_arguments, libcc1_set_triplet_regexp and
195         libcc1_set_driver_filename.
197         * libcc1.cc: Include intl.h.
198         (struct libcc1): Add field verbose.
199         (libcc1::libcc1): Initialize it.
200         (libcc1_set_verbose): New function.
201         (libcc1_set_arguments): Print messages for VERBOSE.
202         (libcc1_compile): Remove parameter verbose.  Use VERBOSE from
203         SELF.
204         (libcc1_compile_v0): New function.
205         (vtable): Use libcc1_compile_v0 and add libcc1_compile and
206         libcc1_set_verbose.
208         * libcc1.cc (vtable): Update to GCC_FE_VERSION_1.
209         (gcc_c_fe_context): Accept also GCC_FE_VERSION_1.
211 2017-01-17  Jakub Jelinek  <jakub@redhat.com>
213         PR other/79046
214         * configure.ac: Add GCC_BASE_VER.  For --with-gcc-major-version-only
215         use just major number from BASE-VER.
216         * configure: Regenerated.
217         * Makefile.in: Regenerated.
219 2017-01-04  Jakub Jelinek  <jakub@redhat.com>
221         Update copyright years.
223 2016-11-18  Richard Sandiford  <richard.sandiford@arm.com>
224             Alan Hayward  <alan.hayward@arm.com>
225             David Sherwood  <david.sherwood@arm.com>
227         * plugin.cc (plugin_build_add_field): Use SET_DECL_MODE.
229 2016-06-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
231         Update copyrights.
233 2016-04-18  Michael Matz  <matz@suse.de>
235         * plugin.cc (plugin_finish_record_or_union): Use SET_TYPE_ALIGN.
237 2016-04-11  Segher Boessenkool  <segher@kernel.crashing.org>
239         PR bootstrap/70173
240         * Makefile.am (MOSTLYCLEANFILES): New, add compiler-name.h .
241         (compiler-name.h): Shorten recipe so that it fits the line.
242         * Makefile.in: Regenerate.
244 2016-03-14  Andreas Schwab  <schwab@suse.de>
246         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Substitute.
247         * configure: Regenerate.
248         * Makefile.in: Regenerate.
250 2015-06-25  Richard Sandiford  <richard.sandiford@arm.com>
252         * plugin.cc (decl_addr_hasher): Inherit from free_ptr_hash
253         rather than typed_free_remove.  Remove redudant typedefs.
255 2015-06-25  Richard Sandiford  <richard.sandiford@arm.com>
257         * plugin.cc (string_hasher): Inherit from nofree_ptr_hash rather
258         than typed_noop_remove.  Remove redudant typedefs.
259         (plugin_context): Use nofree_ptr_hash rather than pointer_hash.
260         (plugin_context::mark): Likewise.
262 2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
264         * Makefile.in: Regenerated with automake-1.11.6.
265         * aclocal.m4: Likewise.
266         * configure: Likewise.
268 2015-04-18  Trevor Saunders  <tsaunders@mozilla.com>
270         * plugin.cc: Adjust for hash_table changes.
272 2015-04-15  Andreas Schwab  <schwab@suse.de>
274         PR bootstrap/65763
275         * Makefile.am (gcc_build_dir): Remove $(host_subdir)/ part.
276         * Makefile.in: Regenerated.
278 2015-01-30  Joseph Myers  <joseph@codesourcery.com>
280         * plugin.cc: All callers of fatal_error changed to pass
281         input_location as first argument.
283 2015-01-09  Michael Collison  <michael.collison@linaro.org>
285         * plugin.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
286         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
287         due to flattening of tree.h.
289 2014-11-21  H.J. Lu  <hongjiu.lu@intel.com>
291         PR bootstrap/63784
292         * configure: Regenerated.
294 2014-11-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
296         * configure.ac (libcc1_cv_lib_sockets): Check for -lsocket -lnsl.
297         * configure: Regenerate.
298         * connection.cc: Include <string.h>.
299         * libcc1.cc (libcc1_compile): Use AF_UNIX instead of AF_LOCAL.
301 2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
303         PR target/63610
304         * configure: Regenerate.
306 2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
308         PR bootstrap/63699
309         PR bootstrap/63750
310         * plugin.cc: Don't include <string>.
312 2014-10-29  Jakub Jelinek  <jakub@redhat.com>
313             Phil Muldoon  <pmuldoon@redhat.com>
315         * configure.ac: Remove -Werror addition to WARN_FLAGS.  Add
316         ACX_PROG_CC_WARNINGS_ARE_ERRORS and AC_ARG_VAR for GMPINC.
317         * Makefile.am (AM_CPPFLAGS): Add $(GMPINC).
318         (WERROR_FLAG): Remove.
319         (AM_CXXFLAGS): Use $(WERROR) instead of $(WERROR_FLAG).
320         * configure: Regenerated.
321         * Makefile.in: Regenerated.
323 2014-10-29  Jakub Jelinek  <jakub@redhat.com>
325         * Makefile.am (CXXFLAGS, LDFLAGS): Filter out -fsanitize=address.
326         (libiberty_normal, libiberty_noasan, libiberty_pic, libiberty_dep):
327         New variables.
328         (libiberty): Set to -Wc, followed by the first existing noasan/,
329         pic/ or . libiberty.a.
330         (libcc1plugin_la_DEPENDENCIES, libcc1plugin_la_LINK,
331         libcc1_la_DEPENDENCIES, libcc1_la_LINK, LTLDFLAGS): New variables.
332         * Makefile.in: Regenerated.
334 2014-10-27  Phil Muldoon  <pmuldoon@redhat.com>
335             Jan Kratochvil  <jan.kratochvil@redhat.com>
336             Tom Tromey  <tromey@redhat.com>
338         * aclocal.m4: New file.
339         * callbacks.cc: New file.
340         * callbacks.hh: New file.
341         * cc1plugin-config.h.in: New file.
342         * configure: New file.
343         * configure.ac: New file.
344         * connection.cc: New file.
345         * connection.hh: New file.
346         * findcomp.cc: New file.
347         * findcomp.hh: New file.
348         * libcc1.cc: New file.
349         * libcc1plugin.sym: New file.
350         * libcc1.sym: New file.
351         * Makefile.am: New file.
352         * Makefile.in: New file.
353         * marshall.cc: New file.
354         * marshall.hh: New file.
355         * names.cc: New file.
356         * names.hh: New file.
357         * plugin.cc: New file.
358         * rpc.hh: New file.
359         * status.hh: New file.