summaryrefslogtreecommitdiff
path: root/libcc1/ChangeLog
blob: a6b9985e4ab56a30571ed0696c8a9b71672cd3ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
2017-04-15  Alexandre Oliva <aoliva@redhat.com>

	* libcp1plugin.cc (plugin_build_decl): Call name_unnamed_type.

2017-01-30  Alexandre Oliva <aoliva@redhat.com>

	Introduce C++ support.
	* Makefile.am (AM_CPPFLAGS): Move some -I flags to...
	(CPPFLAGS_FOR_C_FAMILY, CPPFLAGS_FOR_C, CPPFLAGS_FOR_CXX): ...
	new macros.
	(plugin_LTLIBRARIES): Add libcp1plugin.la.
	(BUILT_SOURCES, MOSTLYCLEANFILES): Add...
	(cp-compiler-name.h): ... this.  New.
	(c-compiler-name.h): Rename all over from...
	(compiler-name.h): ... this.  Create it atomically.
	(marshall_c_source, marshall_cxx_source): New macros.
	(libcc1plugin_la_SOURCES): Rename plugin.cc to libcc1plugin.cc.
	Add marshall_c_source expansion.
	(libcc1plugin.lo_CPPFLAGS): New macro.
	(libcp1plugin_la_LDFLAGS): Likewise.
	(libcp1plugin_la_SOURCES): Likewise.
	(libcp1plugin.lo_CPPFLAGS): Likewise.
	(libcp1plugin_la_LIBADD): Likewise.
	(libcp1plugin_la_DEPENDENCIES): Likewise.
	(libcp1plugin_la_LINK): Likewise.
	(libcc1_la_SOURCES): Added marshall_c_source and
	marshall_cxx_source expansions.
	* Makefile.in: Rebuild.
	* compiler-name.h: Rename all over to...
	* c-compiler-name.h: ... this.  Define C_COMPILER_NAME instead
	of COMPILER_NAME.
	* plugin.cc: Rename all over to...
	* libcc1plugin.cc: ... this.  Include marshall-c.hh.
	(address_rewriter): Drop cleaning up of VLA sizes.
	(plugin_build_decl): Mark decls as external.
	(plugin_tagbind): Propagate name to all variants.
	(build_anonymous_node): New.
	(plugin_build_record_type): Use it instead of make_node.
	(plugin_build_union_type): Likewise.
	(plugin_build_enum_type): Likewise.
	(plugin_finish_record_or_union): Update all type variants.
	(safe_lookup_builtin_type): New.
	(plugin_int_check): Factor out of, and add checks to, ...
	(plugin_int_type): ... this.  Rename to...
	(plugin_int_type_v0): ... this.
	(plugin_int_type): New interface, new implementation.
	(plugin_char_type): New.
	(plugin_float_type_v0): Rename from...
	(plugin_float_type): ... this.  New interface, new implementation.
	(plugin_init): Bump handshake version.
	* libcc1.cc: Include marshall-c.hh.  Drop gcc-interface.h.
	(call_binding_oracle): Rename to...
	(c_call_binding_oracle): ... this, into anonymous namespace.
	(call_symbol_address): Rename to...
	(c_call_symbol_address): ... this, likewise.
	(GCC_METHOD#): Move methods into cc1plugin::c:: namespace.
	(libcc1::compiler::find): Refer to C_COMPILER_NAME.
	(fork_exec): Bump to GCC_C_FE_VERSION_1.
	(libcc1_compile): Prefix callbacks with c_.
	(gcc_c_fe_context): Accept GCC_C_FE_VERSION_1.
	* libcc1.sym: Export gcc_cp_fe_context.
	* libcp1.cc: New, mostly copied and adjusted from libcc1.cc.
	* libcp1plugin.cc: New, initially copied from libcc1plugin.cc.
	* libcp1plugin.sym: New.
	* marshall-c.hh: New.  Move C-specific types from...
	* marshall.cc: ... this.
	(cc1_plugin::marshall_array_start): New.
	(cc1_plugin::marshall_array_elmts): New.
	(cc1_plugin::marshall for gcc_type_array): Use the above.
	(cc1_plugin::unmarshall_array_start): New.
	(cc1_plugin::unmarshall_array_elmts): New.
	(cc1_plugin::unmarshall for gcc_type_array): Use the above.
	* marshall.hh: Declare the new array building blocks.
	Drop C-specific unmarshall declarations.
	* marshall-cp.hh: New.
	* names.cc (GCC_METHOD#): Add LANG:: to method names.
	(LANG): Define while including gcc-c-fe.def and gcc-cp-fe.def.
	* names.hh: Include gcc-c-fe.def and gcc-cp-fe.def in the
	corresponding namespaces.
	* rpc.hh: Don't include marshall.hh.
	[GCC_CP_INTERFACE_H] (argument_wrapper): Specialize for
	gcc_vbase_array, gcc_cp_template_args, gcc_cp_function_args.

2017-01-30  Jan Kratochvil <jan.kratochvil@redhat.com>

	* findcomp.cc: Include system.h.
	(search_dir): Return absolute filename.

	* libcc1.cc (libcc1): Add class compiler with field compilerp,
	class compiler_triplet_regexp and class
	compiler_driver_filename.
	(libcc1::libcc1): Initialize compilerp.
	(libcc1::~libcc1): Delete compilerp.
	(libcc1::compiler::find, libcc1::compiler_triplet_regexp::find)
	(libcc1::compiler_driver_filename::find): New methods.
	(libcc1_set_arguments): Remove parameter triplet_regexp.
	(libcc1_set_triplet_regexp, libcc1_set_driver_filename)
	(libcc1_set_arguments_v0): New functions.
	(vtable): Use libcc1_set_arguments_v0, add
	libcc1_set_arguments, libcc1_set_triplet_regexp and
	libcc1_set_driver_filename.

	* libcc1.cc: Include intl.h.
	(struct libcc1): Add field verbose.
	(libcc1::libcc1): Initialize it.
	(libcc1_set_verbose): New function.
	(libcc1_set_arguments): Print messages for VERBOSE.
	(libcc1_compile): Remove parameter verbose.  Use VERBOSE from
	SELF.
	(libcc1_compile_v0): New function.
	(vtable): Use libcc1_compile_v0 and add libcc1_compile and
	libcc1_set_verbose.

	* libcc1.cc (vtable): Update to GCC_FE_VERSION_1.
	(gcc_c_fe_context): Accept also GCC_FE_VERSION_1.

2017-01-17  Jakub Jelinek  <jakub@redhat.com>

	PR other/79046
	* configure.ac: Add GCC_BASE_VER.  For --with-gcc-major-version-only
	use just major number from BASE-VER.
	* configure: Regenerated.
	* Makefile.in: Regenerated.

2017-01-04  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2016-11-18  Richard Sandiford  <richard.sandiford@arm.com>
 	    Alan Hayward  <alan.hayward@arm.com>
 	    David Sherwood  <david.sherwood@arm.com>

	* plugin.cc (plugin_build_add_field): Use SET_DECL_MODE.

2016-06-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	Update copyrights.

2016-04-18  Michael Matz  <matz@suse.de>

	* plugin.cc (plugin_finish_record_or_union): Use SET_TYPE_ALIGN.

2016-04-11  Segher Boessenkool  <segher@kernel.crashing.org>

	PR bootstrap/70173
	* Makefile.am (MOSTLYCLEANFILES): New, add compiler-name.h .
	(compiler-name.h): Shorten recipe so that it fits the line.
	* Makefile.in: Regenerate.

2016-03-14  Andreas Schwab  <schwab@suse.de>

	* configure.ac (CONFIG_STATUS_DEPENDENCIES): Substitute.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

2015-06-25  Richard Sandiford  <richard.sandiford@arm.com>

	* plugin.cc (decl_addr_hasher): Inherit from free_ptr_hash
	rather than typed_free_remove.  Remove redudant typedefs.

2015-06-25  Richard Sandiford  <richard.sandiford@arm.com>

	* plugin.cc (string_hasher): Inherit from nofree_ptr_hash rather
	than typed_noop_remove.  Remove redudant typedefs.
	(plugin_context): Use nofree_ptr_hash rather than pointer_hash.
	(plugin_context::mark): Likewise.

2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>

	* Makefile.in: Regenerated with automake-1.11.6.
	* aclocal.m4: Likewise.
	* configure: Likewise.

2015-04-18  Trevor Saunders  <tsaunders@mozilla.com>

	* plugin.cc: Adjust for hash_table changes.

2015-04-15  Andreas Schwab  <schwab@suse.de>

	PR bootstrap/65763
	* Makefile.am (gcc_build_dir): Remove $(host_subdir)/ part.
	* Makefile.in: Regenerated.

2015-01-30  Joseph Myers  <joseph@codesourcery.com>

	* plugin.cc: All callers of fatal_error changed to pass
	input_location as first argument.

2015-01-09  Michael Collison  <michael.collison@linaro.org>

	* plugin.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
	due to flattening of tree.h.

2014-11-21  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/63784
	* configure: Regenerated.

2014-11-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* configure.ac (libcc1_cv_lib_sockets): Check for -lsocket -lnsl.
	* configure: Regenerate.
	* connection.cc: Include <string.h>.
	* libcc1.cc (libcc1_compile): Use AF_UNIX instead of AF_LOCAL.

2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

	PR target/63610
	* configure: Regenerate.

2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

	PR bootstrap/63699
	PR bootstrap/63750
	* plugin.cc: Don't include <string>.

2014-10-29  Jakub Jelinek  <jakub@redhat.com>
	    Phil Muldoon  <pmuldoon@redhat.com>

	* configure.ac: Remove -Werror addition to WARN_FLAGS.  Add
	ACX_PROG_CC_WARNINGS_ARE_ERRORS and AC_ARG_VAR for GMPINC.
	* Makefile.am (AM_CPPFLAGS): Add $(GMPINC).
	(WERROR_FLAG): Remove.
	(AM_CXXFLAGS): Use $(WERROR) instead of $(WERROR_FLAG).
	* configure: Regenerated.
	* Makefile.in: Regenerated.

2014-10-29  Jakub Jelinek  <jakub@redhat.com>

	* Makefile.am (CXXFLAGS, LDFLAGS): Filter out -fsanitize=address.
	(libiberty_normal, libiberty_noasan, libiberty_pic, libiberty_dep):
	New variables.
	(libiberty): Set to -Wc, followed by the first existing noasan/,
	pic/ or . libiberty.a.
	(libcc1plugin_la_DEPENDENCIES, libcc1plugin_la_LINK,
	libcc1_la_DEPENDENCIES, libcc1_la_LINK, LTLDFLAGS): New variables.
	* Makefile.in: Regenerated.

2014-10-27  Phil Muldoon  <pmuldoon@redhat.com>
	    Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Tom Tromey  <tromey@redhat.com>

	* aclocal.m4: New file.
	* callbacks.cc: New file.
	* callbacks.hh: New file.
	* cc1plugin-config.h.in: New file.
	* configure: New file.
	* configure.ac: New file.
	* connection.cc: New file.
	* connection.hh: New file.
	* findcomp.cc: New file.
	* findcomp.hh: New file.
	* libcc1.cc: New file.
	* libcc1plugin.sym: New file.
	* libcc1.sym: New file.
	* Makefile.am: New file.
	* Makefile.in: New file.
	* marshall.cc: New file.
	* marshall.hh: New file.
	* names.cc: New file.
	* names.hh: New file.
	* plugin.cc: New file.
	* rpc.hh: New file.
	* status.hh: New file.