12015-06-23  Release Manager
2
3	* GCC 4.8.5 released.
4
52014-12-19  Release Manager
6
7	* GCC 4.8.4 released.
8
92014-05-22  Release Manager
10
11	* GCC 4.8.3 released.
12
132014-04-04  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
14
15	Backport from mainline
16	2013-11-15  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
17
18	* configure: Regenerate.
19
202013-10-16  Release Manager
21
22	* GCC 4.8.2 released.
23
242013-05-31  Release Manager
25
26	* GCC 4.8.1 released.
27
282013-03-22  Release Manager
29
30	* GCC 4.8.0 released.
31
322013-03-14  Jakub Jelinek  <jakub@redhat.com>
33
34	PR tree-optimization/53265
35	* testsuite/libmudflap.c/fail37-frag.c: Add optimization barrier.
36
372013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
38
39	Update copyright years.
40
412013-01-03  Jakub Jelinek  <jakub@redhat.com>
42
43	* mf-runtime.c (__mf_usage): Update copyright notice dates.
44
452012-12-15  Alexandre Oliva <aoliva@redhat.com>
46
47	* mf-hooks1.c (free): Return on NULL before any logging.
48
492012-09-14  David Edelsohn  <dje.gcc@gmail.com>
50
51	* configure: Regenerated.
52
532012-07-13  Richard Guenther  <rguenther@suse.de>
54
55	* testsuite/libmudflap.c++/ctors.exp: Explicitely specify -O0.
56	* testsuite/libmudflap.c++/c++frags.exp: Likewise.
57	* testsuite/libmudflap.cth/cthfrags.exp: Likewise.
58	* testsuite/libmudflap.c/cfrags.exp: Likewise.
59	* testsuite/libmudflap.c/externs.exp: Likewise.
60
612012-07-13  Richard Guenther  <rguenther@suse.de>
62
63	* testsuite/libmudflap.c/fail11-frag.c: Adjust to not look like memset.
64	* testsuite/libmudflap.c/fail12-frag.c: Likewise.
65
662012-05-29  Joseph Myers  <joseph@codesourcery.com>
67
68	* mf-impl.h: Fix typo.
69
702012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
71
72	* configure: Regenerated.
73
742012-04-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
75
76	PR 24985
77	* testsuite/lib/libmudflap.exp: Handle caret.
78
792012-01-19  Jakub Jelinek  <jakub@redhat.com>
80
81	PR libmudflap/40778
82	* testsuite/libmudflap.c/fail68-frag.c: New test.
83
842012-01-01  Jakub Jelinek  <jakub@redhat.com>
85
86	* mf-runtime.c (__mf_usage): Update copyright notice dates.
87
882011-11-21  Andreas Tobler  <andreast@fgznet.ch>
89
90	* configure: Regenerate.
91
922011-07-31  Tom de Vries  <tom@codesourcery.com>
93
94	PR middle-end/43513
95	* testsuite/libmudflap.c/fail31-frag.c: Adapt testcase to prevent
96	folding of alloca.
97
982011-07-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
99
100	Revert:
101	2011-07-15  Jakub Jelinek  <jakub@redhat.com>
102
103	PR testsuite/49753
104	PR tree-optimization/49309
105	* testsuite/libmudflap.c++/pass68-frag.cxx: New test.
106
1072011-07-15  Jakub Jelinek  <jakub@redhat.com>
108
109	PR testsuite/49753
110	PR tree-optimization/49309
111	* testsuite/libmudflap.c++/pass68-frag.cxx: New test.
112
1132011-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
114
115	* configure.ac: Don't create pth.
116	Check for library containing sched_yield.
117	* configure: Regenerate.
118	* config.h.in: Regenerate.
119
120	* testsuite/lib/libmudflap.exp (libmudflap-init): Use
121	mfconfig_libs in -static check.
122
1232011-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
124
125	PR libmudflap/49550
126	* mf-runtime.c (__wrap_main) [__sun__ && __svr4__]: Don't register
127	stdin, stdout, stderr.
128	Register __ctype, __ctype_mask.
129
130	* configure.ac: Check for mmap64.
131	Check for rawmemchr, stpcpy, mempcpy.
132	* configure: Regenerate.
133	* config.h.in: Regenerate.
134	* mf-hooks1.c [HAVE_MMAP64] (__mf_0fn_mmap64): New function.
135	(mmap64): New wrapper function.
136	* mf-impl.h (__mf_dynamic_index) [HAVE_MMAP64]: Add dyn_mmap64.
137	* mf-runtime.c (__mf_dynamic) [HAVE_MMAP64]: Handle mmap64.
138
139	* mf-hooks2.c [HAVE_GETMNTENT && HAVE_SYS_MNTTAB_H]: Implement
140	getmntent wrapper.
141
142	* mf-hooks3.c (_REENTRANT): Define.
143
144	* testsuite/libmudflap.c/heap-scalestress.c (SCALE): Reduce to 10000.
145
146	* testsuite/libmudflap.c/pass-stratcliff.c: Include ../config.h.
147	(MIN): Define.
148	Use HAVE_RAWMEMCHR, HAVE_STPCPY, HAVE_MEMPCPY as guards.
149
150	* testsuite/libmudflap.c/pass47-frag.c: Expect __ctype warning on
151	*-*-solaris2.*.
152
1532011-07-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
154
155	PR libmudflap/49549
156	* testsuite/lib/libmudflap.exp (load_gcc_lib): Load
157	target-supports.exp.
158	* testsuite/libmudflap.cth/cthfrags.exp: Only pass
159	--noinhibit-exec to GNU ld.
160
1612011-06-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
162
163	PR libmudflap/38738
164	* configure.ac: Check for sys/mnttab.h.
165	Check for library containing connect.
166	* configure: Regenerate.
167	* config.h.in: Regenerate.
168	* mf-hooks2.c [HAVE_SYS_MNTTAB_H]: Include <sys/mnttab.h>.
169	* testsuite/libmudflap.c/pass-stratcliff.c (main) [__sun__ &&
170	__svr4__]: Disable rawmemchr, stpcpy, mempcpy tests.
171
1722011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
173
174	* configure: Regenerate.
175
1762011-01-03  Jakub Jelinek  <jakub@redhat.com>
177
178	* mf-runtime.c (__mf_usage): Update copyright notice dates.
179
1802010-10-31  Jason Merrill  <jason@redhat.com>
181
182	PR testsuite/20003
183	* testsuite/libmudflap.cth/pass40-frag.c: Increase timeout to 30.
184
1852010-08-20  Uros Bizjak  <ubizjak@gmail.com>
186
187	* testsuite/libmudflap.c++/pass41-frag.cxx (dg-prune-output):
188	New dg directive.
189
1902010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
191
192	PR bootstrap/43170
193	* configure: Regenerate.
194
1952010-05-16  Uros Bizjak  <ubizjak@gmail.com>
196
197	* testsuite/libmudflap.c/pass46-frag.c (dg-options): Remove -Wall.
198
1992010-05-15  Uros Bizjak  <ubizjak@gmail.com>
200
201	* testsuite/lib/mfdg.exp (additional_prunes): New global.
202	(dg-test): Clear additional_prunes before test is run.
203	(dg-prune-output): New procedure.
204	* testsuite/lib/libmudflap.exp (libmudflap-dg-test): Do not call
205	prune_gcc_output.
206	(libmudflap-dg-prune): New procedure.
207	* testsuite/libmudflap.c++/pass57-frag.cxx (dg-prune-output):
208	New dg directive.
209
2102010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
211
212	PR other/43620
213	* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
214	* Makefile.in: Regenerate.
215	* testsuite/Makefile.in: Regenerate.
216
2172010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
218
219	* Makefile.in: Regenerate.
220	* aclocal.m4: Regenerate.
221	* testsuite/Makefile.in: Regenerate.
222
2232010-03-15  David S. Miller  <davem@davemloft.net>
224
225	* testsuite/libmudflap.c/pass54-frag.c: Add explicit return from
226	main.
227
2282010-01-09  Jakub Jelinek  <jakub@redhat.com>
229
230	* mf-runtime.c (__mf_usage): Update copyright notice dates.
231
2322009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
233
234	* Makefile.in: Regenerate.
235	* configure: Regenerate.
236	* testsuite/Makefile.in: Regenerate.
237
2382009-09-22  Frank Ch. Eigler  <fche@redhat.com>
239
240	PR libmudflap/41433
241	* mf-runtime.c (__mf_init): Ignore $MUDFLAP_OPTIONS if
242	running setuid or setgid.
243
2442009-09-01  Loren J. Rittle  <ljrittle@acm.org>
245
246	* mf-runtime.c (__mf_init): Support FreeBSD.
247	Prime mutex which calls calloc upon first lock to avoid deadlock.
248	* mf-hooks1.c (__mf_0fn_mmap): Support FreeBSD.
249	Ignore red zone allocation request for initial thread's stack.
250
2512009-09-01  Loren J. Rittle  <ljrittle@acm.org>
252	    Andreas Schwab  <schwab@linux-m68k.org>
253
254	* testsuite/libmudflap.c/pass51-frag.c (MAP_FAILED): Define,
255	if not in system header; use it.  On FreeBSD, must pass fd==-1
256	with MAP_ANON flag.  Correct mmap error check.
257	* testsuite/libmudflap.c/fail40-frag.c: Ditto.
258
2592009-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
260
261	* configure.ac (AC_PREREQ): Bump to 2.64.
262
2632009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
264
265	* Makefile.am (install-html, install-pdf): Remove.
266	* Makefile.in: Regenerate.
267
268	* Makefile.in: Regenerate.
269	* aclocal.m4: Regenerate.
270	* config.h.in: Regenerate.
271	* configure: Regenerate.
272	* testsuite/Makefile.in: Regenerate.
273
2742009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
275
276	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
277
2782009-07-16  Joseph Myers  <joseph@codesourcery.com>
279
280	* configure: Regenerate.
281
2822009-07-11  Richard Sandiford  <rdsandiford@googlemail.com>
283
284	PR testsuite/40699
285	PR testsuite/40707
286	PR testsuite/40709
287	* testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit.
288
2892009-07-01  Richard Guenther  <rguenther@suse.de>
290
291	PR tree-optimization/19831
292	* testsuite/libmudflap.c/fail11-frag.c: Make allocated memory
293	escape.
294	* testsuite/libmudflap.c/fail12-frag.c: Likewise.
295	* testsuite/libmudflap.c/fail16-frag.c: Likewise.
296	* testsuite/libmudflap.c/fail31-frag.c: Likewise.
297
2982009-06-30  Richard Sandiford  <r.sandiford@uk.ibm.com>
299
300	* testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
301	to ld_library_path.  Use add_path.  Add just find_libgcc_s to
302	ld_library_path, not every libgcc multilib directory.
303
3042009-04-09  Nick Clifton  <nickc@redhat.com>
305
306	* mf-hooks1.c: Change copyright header to refer to version 3
307	of the GNU General Public License with version 3.1 of the GCC
308	Runtime Library Exception and to point readers at the COPYING3
309	and COPYING3.RUNTIME files and the FSF's license web page.
310	* mf-heuristics.c: Likewise.
311	* mf-hooks2.c: Likewise.
312	* mf-hooks3.c: Likewise.
313	* mf-impl.h: Likewise.
314	* mf-runtime.c: Likewise.
315	* mf-runtime.h: Likewise.
316
3172009-04-09  Jakub Jelinek  <jakub@redhat.com>
318
319	* testsuite/lib/mfdg.exp: Change copyright header to refer to
320	version 3 of the GNU General Public License and to point readers
321	at the COPYING3 file and the FSF's license web page.
322	* testsuite/lib/libmudflap.exp: Likewise.
323
3242009-03-31  Ben Elliston  <bje@au.ibm.com>
325
326	PR libmudflap/38462
327	* testsuite/libmudflap.c/fail27-frag.c: Match `mudflap dead
328	object', not `mudflap object'.
329
3302009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
331
332	* configure: Regenerate.
333
3342009-02-03  Jakub Jelinek  <jakub@redhat.com>
335
336	* mf-runtime.c (__mf_usage): Update copyright notice dates.
337
3382009-01-23  Jie Zhang  <jie.zhang@analog.com>
339
340	* mf-impl.h (__mf_get_state, __mf_set_state): Don't use
341	__thread when TLS support is emulated.
342	* mf-hooks3.c (__mf_get_state, __mf_set_state): Likewise.
343	* mf-runtime.c (__mf_state_1): Likewise.
344	* configure.ac: Use GCC_CHECK_EMUTLS.
345	* configure: Regenerate.
346	* config.h.in: Regenerate.
347
3482008-12-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
349
350	* configure: Regenerate.
351
3522008-11-26  Janis Johnson  <janis187@us.ibm.com>
353
354	PR testsuite/28870
355	* testsuite/lib/mfdg.exp (dg-test): Use new timeout support.
356	(dg-timeout): Remove.
357	(standard-wait): Remove.
358	* testsuite/lib/libmudflap.exp: Include new timeout library files.
359	(libmudflap_target_compile): Set timeout value from new proc.
360
3612008-11-10  Jakub Jelinek  <jakub@redhat.com>
362
363	PR middle-end/35314
364	* testsuite/libmudflap.c/pass67-frag.c: New test.
365
3662008-10-09  Jakub Jelinek  <jakub@redhat.com>
367
368	PR c++/37568
369	* testsuite/libmudflap.c++/pass66-frag.cxx: New test.
370
3712008-09-26  Peter O'Gorman  <pogma@thewrittenword.com>
372            Steve Ellcey  <sje@cup.hp.com>
373
374	* configure: Regenerate for new libtool.
375	* Makefile.in: Ditto.
376	* testsuite/Makefile.in: Ditto.
377
3782008-09-15  Jakub Jelinek  <jakub@redhat.com>
379
380	PR libmudflap/36397
381	* testsuite/libmudflap.c/pass64-frag.c: New test.
382
3832008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
384
385	* Makefile.in: Regenerate.
386	* config.h.in: Regenerate.
387	* configure: Regenerate.
388	* testsuite/Makefile.in: Regenerate.
389
3902008-04-18  Paolo Bonzini  <bonzini@gnu.org>
391
392	PR bootstrap/35457
393	* aclocal.m4: Regenerate.
394	* configure: Regenerate.
395
3962008-03-20  Volker Reichelt  <v.reichelt@netcologne.de>
397
398	* testsuite/libmudflap.c/pass63-frag.c: New test.
399
4002008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
401
402	* aclocal.m4: Regenerate.
403	* configure: Likewise.
404	* Makefile.in: Likewise.
405	* testsuite/Makefile.in: Likewise.
406
4072008-03-02  Jakub Jelinek  <jakub@redhat.com>
408
409	* mf-runtime.c (__mf_usage): Update copyright notice dates.
410
4112008-02-21  Uros Bizjak  <ubizjak@gmail.com>
412
413	* testsuite/libmudflap.c/fail8-frag.c: Adjust scan pattern for
414	mudflap dead object.
415	* testsuite/libmudflap.c/fail9-frag.c: Ditto.
416
4172008-01-24  David Edelsohn  <edelsohn@gnu.org>
418
419	* configure: Regenerate.
420
4212008-01-05  Jakub Jelinek  <jakub@redhat.com>
422
423	PR tree-optimization/34618
424	* testsuite/libmudflap.c/pass62-frag.c: New test.
425
4262008-01-03  Jakub Jelinek  <jakub@redhat.com>
427
428	PR c++/34619
429	* testsuite/libmudflap.c++/pass61-frag.cxx: New test.
430
4312008-01-01  Volker Reichelt  <v.reichelt@netcologne.de>
432
433	PR libmudflap/26442
434	* testsuite/libmudflap.c++/pass60-frag.cxx: New test.
435
4362007-10-15  Maciej W. Rozycki  <macro@linux-mips.org>
437
438	* configure: Regenerate following changes to ../config/tls.m4.
439
4402007-07-26  Tom Tromey  <tromey@redhat.com>
441
442	* Makefile.in: Rebuilt.
443	* Makefile.am (clean-local): Removed.
444	(pth/mf-runtime.lo, pth/mf-heuristics.lo, pth/mf-hooks1.lo,
445	pth/mf-hooks2.lo, pth/mf-hooks3.lo): Likewise.
446	(libmudflapth_la_SOURCES): List sources.
447	(libmudflapth_la_LIBADD): Clear.
448	(libmudflapth_la_CFLAGS): New variable.
449
4502007-07-05  H.J. Lu  <hongjiu.lu@intel.com>
451
452	* aclocal.m4: Regenerated.
453
4542007-06-02  Paolo Bonzini  <bonzini@gnu.org>
455
456	* configure: Regenerate.
457
4582007-05-31  Frank Ch. Eigler  <fche@redhat.com>
459
460	From Andi Kleen <ak@suse.de>:
461	* mf-runtime.c (options): Rename structure for compatibility with
462	glibc getopt_long.
463
4642007-05-23  Steve Ellcey  <sje@cup.hp.com>
465
466	* Makefile.in: Regenerate.
467	* configure: Regenerate.
468	* aclocal.m4: Regenerate.
469	* testsuite/Makefile.in: Regenerate.
470
4712007-03-14  Uros Bizjak  <ubizjak@gmail.com>
472
473	* testsuite/libmudflap.cth/pass59-frag.c (main): Fix casting of arg.
474
4752007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
476
477	* Makefile.am: Add dummy install-pdf target.
478	* Makefile.in: Regenerate
479
4802007-02-07  Jakub Jelinek  <jakub@redhat.com>
481
482	PR libgomp/28468
483	* configure: Regenerate.
484
4852006-12-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
486
487	* configure: Regenerate.
488
4892006-11-13  Daniel Jacobowitz  <dan@codesourcery.com>
490
491	* configure: Regenerated.
492
4932006-11-10  Frank Ch. Eigler  <fche@redhat.com>
494
495	PR libmudflap/28578
496	* mf-hooks1.c (__mf_0fn_malloc): Make the bootstrap buffers
497	static but not function scope static.
498	(free): Skip deallocation attempts for objects placed into
499	bootstrap buffers.
500	* testsuite/libmudflap.cth/pass59-frag.c: New test.
501
5022006-11-06  Frank Ch. Eigler  <fche@redhat.com>
503
504	From Herman ten Brugge <hermantenbrugge@home.nl>:
505	* mf-runtime.c (__mf_uncache_object): Optimize the code so that
506	small and large objects are handled a lot faster.
507
5082006-11-06  Frank Ch. Eigler  <fche@redhat.com>
509
510	* configure.ac (__libc_freeres): Look for it.
511	* mf-impl.h (call_libc_freeres): New configuration flag.
512	* mf-runtime.c (__mf_set_default_options): Set it by default.
513	(__mfu_report): Call it if needed.
514	(__mfu_unregister): Remove "unaccessed registered object" warning.
515	* configure, config.h.in: Regenerated.
516
5172006-09-18  Tom Tromey  <tromey@redhat.com>
518
519	* configure: Rebuilt.
520
5212006-06-21  Frank Ch. Eigler  <fche@redhat.com>
522
523	PR 21274
524	mf-runtime.h installation based on ssp patch for PR 26473 from
525	Mark Mitchell  <mark@codesourcery.com>.
526	* configure.ac (ACX_NONCANONICAL_TARGET): Use it.
527	* Makefile.am (target_noncanonical): Define.
528	(libsubincludedir): New variable.
529	(nobase_libsubinclude_HEADERS): Add mf-runtime.h.
530	(include_HEADERS): Remove.
531	* configure, aclocal.m4, config.h.in: Regenerated.
532	* Makefile.in, testsuite/Makefile.in: Likewise.
533	* mf-runtime.h: Add #ifndef protection for conflicting _REENTRANT
534	and _THREAD_SAFE redefinition values.
535
5362006-05-23  Carlos O'Donell  <carlos@codesourcery.com>
537
538	* Makefile.am: Add install-html target. Add install-html to .PHONY
539	* Makefile.in: Regenerate.
540
5412006-04-19  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
542
543	PR mudflap/26789
544	* testsuite/libmudflap.c++/error1-frag.cxx: New test.
545
546	PR mudflap/26790
547	* testsuite/libmudflap.c++/error2-frag.cxx: New test.
548
5492006-04-10  Matthias Klose  <doko@debian.org>
550
551	* testsuite/lib/libmudflap.exp (libmudflap-init): Recognize multilib
552	directory names containing underscores.
553
5542005-11-22  Janis Johnson  <janis187@us.ibm.com>
555
556	* testsuite/lib/libmudflap.exp (libmudflap-init): Remove -static from
557	MUDFLAP_FLAGS if static library not supported.
558	* testsuite/libmudflap.c/cfrags.exp (MUDFLAP_FLAGS): new.
559	* testsuite/libmudflap.c/externs.exp: Ditto.
560	* testsuite/libmudflap.c++/ctors.exp: Ditto.
561	* testsuite/libmudflap.c++/c++frags.exp: Ditto.
562	* testsuite/libmudflap.cth/cthfrags.exp: Ditto.
563
5642005-10-04  James E Wilson  <wilson@specifix.com>
565
566	* configure.ac (mudflap_cv_entry_point): Use quadrigraphs to declare
567	$name as array of characters with unknown bound.  Also store into the
568	array.
569	* configure: Regenerate.
570
5712005-09-30  James E. Wilson  <wilson@specifix.com>
572
573	* configure.ac (pthread.h): Use AC_CHECK_HEADERS instead of
574	AC_CHECK_HEADER.
575	(target_thread_file): New.  Set from sed'ed gcc output.
576	(posix_threads): New.  Set from target_thread_file.  Use instead of
577	ac_have_pthread_h.
578	(pthread_create_version): Move initialization before code using it.
579	* configure: Regenerate.
580
581	* mf-heuristics.c (_end, ENTRY_POINT): Make them arrays with unknown
582	bounds.
583
5842005-09-29  James E. Wilson  <wilson@specifix.com>
585
586	* mf-hooks1.c (__mf_0fn_mmap, mmap, __mf_0fn_munmap, munmap): Protect
587	with HAVE_MMAP ifdef.
588
5892005-09-23  Frank Ch. Eigler  <fche@elastic.org>
590
591	PR 23084.
592	* mf-hooks2.c (accept): Tolerate NULL sockaddr* parameter.
593
5942005-09-23  Frank Ch. Eigler  <fche@elastic.org>
595
596	* testsuite/libmudflap.c++/pass58-frag.cxx: New test for heisenbug 19319.
597
5982005-09-23  Tom Tromey  <tromey@redhat.com>
599
600	* aclocal.m4, configure: Rebuilt.
601	* configure.ac: Use GCC_CHECK_TLS.
602	* acinclude.m4 (LIBMUDFLAP_CHECK_TLS, LIBMUDFLAP_ENABLE): Moved
603	to ../config.
604
6052005-08-22  Jim Wilson  <wilson@specifix.com>
606
607	* mf-hooks2.c (MF_REGISTER_fopen): Define to __MF_TYPE_STATIC when
608	__FreeBSD__ is defined.
609
6102005-08-17  Jim Wilson  <wilson@specifix.com>
611
612	* mf-hooks1.c (malloc, calloc, realloc, free,
613	__mf_wrap_alloca_indirect): Call BEGIN_MALLOC_PROTECT before calling
614	the real routines, and END_MALLOC_PROTECT afterwards.
615	* mf-impl.h (enum __mf_state_enum): Expand comment.  Add in_malloc.
616	(BEGIN_PROTECT): Handle in_malloc state.
617	(BEGIN_MALLOC_PROTECT, END_MALLOC_PROTECT): New.
618	* testsuite/libmudflap.c/hook2-allocstuff.c: New.
619
6202005-08-17  Kelley Cook  <kcook@gcc.gnu.org>
621
622	* All files: Update FSF address.
623
6242005-08-15  Ulrich Weigand  <weigand@informatik.uni-erlangen.de>
625
626	* mf-hooks3.c (main_seen_p): Remove.
627	(__mf_get_state): Remove attempt to recognize the main thread.
628
6292005-08-15  Maciej W. Rozycki  <macro@linux-mips.org>
630
631	* configure.ac: Test for the name of the symbol used for the entry
632	point; define ENTRY_POINT to the result.
633	* configure: Regenerate.
634	* config.h.in: Regenerate.
635	* mf-heuristics.c: Replace _start with ENTRY_POINT throughout.
636
6372005-08-14  Ulrich Weigand  <weigand@informatik.uni-erlangen.de>
638
639	* mf-runtime.c (__mf_state_1): Initialize to reentrant.
640	(__mf_init): Set thread state active.
641	* mf-hooks3.c (__mf_pthread_spawner): Always set thread
642	state active.
643	(pthread_create wrapper): Always use thread spawner.
644
645	* testsuite/libmudflap.cth/pass37-frag.c: Increase timeout.
646	* testsuite/libmudflap.cth/pass39-frag.c: Likewise.
647
6482005-07-16  Richard Henderson  <rth@redhat.com>
649
650	* acinclude.m4: New file.
651	* configure.ac: Invoke LIBMUDFLAP_CHECK_TLS.
652	* configure, config.h.in, Makefile.in, testsuite/Makefile.in: Rebuild.
653	* mf-hooks1.c (__mf_0fn_malloc): Move body from ...
654	(__mf_0fn_calloc): ... here.
655	* mf-hooks3.c (struct pthread_info): Remove.
656	(__mf_pthread_info, __mf_pthread_info_idx): Remove.
657	(LIBMUDFLAPTH_THREADS_MAX): Set to 1021.
658	(struct mf_thread_data): New.
659	(mf_thread_data, mf_thread_data_lock): New.
660	(__mf_allocate_blank_threadinfo): Remove.
661	(__mf_find_threadinfo): Rewrite and simplify.  Only use if TLS is
662	not available.
663	(__mf_state_perthread): Remove.
664	(__mf_get_state, __mf_set_state): New.
665	(__mf_pthread_cleanup): Use &errno, rather than saved pointer.
666	Update mf_thread_data killing procedure.
667	(__mf_pthread_spawner): Similarly.
668	(__mf_0fn_pthread_create): Only use wrapper if necessary.  Remove
669	code to allocate thread stack space.
670	(__mf_0fn_pthread_join, pthread_join): Remove.
671	(__mf_0fn_pthread_exit, pthread_exit): Remove.
672	* mf-impl.h (dyn_pthread_join, dyn_pthread_exit): Remove.
673	(__mf_state_1): Rename from __mf_state; use TLS when available.
674	(__mf_get_state, __mf_set_state): New.  Update all users.
675	* mf-runtime.c (begin_recursion_protect1): New.
676	(BEGIN_RECURSION_PROTECT): Use it.
677	(__mf_state_1): Rename from __mf_state; use TLS when available.
678	(threads_active_p): Remove.
679	(__mf_usage): Compute it directly.
680
6812005-06-19  Ulrich Weigand  <uweigand@de.ibm.com>
682
683	* testsuite/libmudflap.c/externs-1.c (main): Add return statement.
684
6852005-06-15  Frank Ch. Eigler  <fche@redhat.com>
686
687	Fix for uncaching bug reported by Herman ten Brugge.
688	* mf-runtime.c (__mf_uncache_object): Search whole cache.
689	* testsuite/libmudflap.c/fail40-frag.c: New test.
690
6912005-05-23  Alfred M. Szmidt  <ams@gnu.org>
692
693	PR libmudflap/21724
694	* Makefile.am (AM_MAKEFLAGS): Pass includedir.
695	* Makefile.in: Amend.
696
6972005-06-14  Frank Ch. Eigler  <fche@redhat.com>
698
699	PR mudflap/21023
700	* testsuite/libmudflap.c/externs.exp, externs-{1,2}.c: New test files.
701	* testsuite/libmudflap.c/cfrags.exp: Bypass new sources.
702
7032005-06-14  Frank Ch. Eigler  <fche@redhat.com>
704
705	PR libmudflap/21094
706	* testsuite/libmudflap.c++/*.exp: Assert build tree g++.
707
7082005-06-14  Frank Ch. Eigler  <fche@redhat.com>
709
710	PR mudflap/22064
711	* mf-impl.h (mudflap_mode, violation_mode): Make these ordinary
712	unsigned vars with #defines instead of enums.
713
7142005-05-09  Mike Stump  <mrs@apple.com>
715
716	* configure: Regenerate.
717
7182005-04-12  Mike Stump  <mrs@apple.com>
719
720	* configure: Regenerate.
721
7222005-04-12  Frank Ch. Eigler  <fche@redhat.com>
723
724	PR mudflap/19266
725	* testsuite/libmudflap.c++/c++frags.exp: Also test -O permutation.
726	* testsuite/libmudflap.c++/pass57-frag.cxx: New test.
727
7282005-04-04  Alan Modra  <amodra@bigpond.net.au>
729
730	* mf-runtime.c (__mfu_unregister): Warning fix for char unsigned.
731
7322005-03-31  Mike Stump  <mrs@apple.com>
733
734	* mf-runtime.h: Add libmudflap copyright clause.
735
7362005-03-21  Mike Stump  <mrs@apple.com>
737
738	* mf-heuristics.c: Fix whitespace at end of line.
739	* mf-hooks1.c: Likewise.
740	* mf-hooks2.c: Likewise.
741	* mf-hooks3.c: Likewise.
742	* mf-impl.h: Likewise.
743	* mf-runtime.c: Likewise.
744	* mf-runtime.h: Likewise.
745
7462005-03-21  Zack Weinberg  <zack@codesourcery.com>
747
748	* configure.ac: Do not invoke TL_AC_GCC_VERSION.
749	In all substitutions, expand gcc_version in Makefile.
750	* aclocal.m4, configure: Regenerate.
751	* Makefile.am: Set gcc_version.
752	* Makefile.in, testsuite/Makefile.in: Regenerate.
753
7542005-03-17  Frank Ch. Eigler  <fche@redhat.com>
755
756	* mf-runtime.c (__mfu_check): Respect ignore_reads configuration.
757	* testsuite/libmudflap.c/{pass56,fail39}-frag.c: New tests.
758
7592005-02-13  Frank Ch. Eigler  <fche@redhat.com>
760
761	PR mudflap/19319
762	* testsuite/libmudflap.c++/pass55-frag.c: New test.
763
7642005-01-05  Richard Henderson  <rth@redhat.com>
765
766	* testsuite/libmudflap.c/pass32-frag.c: Fix typo.
767
7682005-01-02  Greg McGary  <greg@mcgary.org>
769
770	* mf-impl.h (uintptr_t): Get typedef via stdint.h or define explicitly.
771	* mf-runtime.h: New file, replaces mf-runtime.h.in.
772	* configure.ac (AC_CONFIG_FILES): mf-runtime.h is no longer generated.
773	* Makefile.in: Ditto.
774	* testsuite/lib/libmudflap.exp: Add -I${srcdir}/.. to get mf-runtime.h
775	* testsuite/libmudflap.c/pass32-frag.c: s/uintptr_t/__mf_uintptr_t/
776	* testsuite/libmudflap.c/fail36-frag.c: New test.
777	* testsuite/libmudflap.c/fail37-frag.c: New test.
778	* testsuite/libmudflap.c/fail38-frag.c: New test.
779
7802004-12-08  Kelley Cook  <kcook@gcc.gnu.org>
781
782	* Makefile.am: Add ../config to ACLOCAL_AMFLAGS.
783	* aclocal.m4, Makefile.in, testsuite/Makefile.in: Regenerate.
784
7852004-12-02  Richard Sandiford  <rsandifo@redhat.com>
786
787	* configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
788	* aclocal.m4: Include ../config/gcc-version.m4.
789	* configure, Makefile.in, testsuite/Makefile.in: Regenerate.
790
7912004-11-29  Kelley Cook  <kcook@gcc.gnu.org>
792
793	* Makefile.am: Define ACLOCAL_AMFLAGS.
794	* acinclude.m4: Remove.
795	* stamp-h.in: Remove superfluous stamp file.
796	* aclocal.m4, configure, Makefile.in: Regenerate.
797	* testsuite/Makefile.in: Likewise.
798
7992004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
800
801	* Makefile.am: Revert previous.
802	* acinclude.m4: Restore.
803	* aclocal.m4, configure, Makefile.in: Regenerate.
804	* testsuite/Makefile.in: Likewise.
805
8062004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
807
808	* Makefile.am: Define ACLOCAL_AMFLAGS.
809	* acinclude.m4: Remove.
810	* aclocal.m4, configure, Makefile.in: Regenerate.
811	* testsuite/Makefile.in: Likewise.
812
8132004-11-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
814
815	* testsuite/lib/libmudflap.exp: Use new procs in target-libpath.exp.
816
8172004-11-23  Kelley Cook  <kcook@gcc.gnu.org>
818
819	* Makefile.in, configure, aclocal.m4: Regenerate with automake 1.9.3.
820	* testsuite/Makefile.in: Likewise.
821
8222004-11-01  Andreas Schwab  <schwab@suse.de>
823
824	* configure.ac: (target_alias): Default to $host_alias, not
825	$target.
826	* configure: Regenerated.
827
8282004-10-28  Frank Ch. Eigler  <fche@redhat.com>
829
830	* testsuite/libmudflap.c/fail35-,pass53-,pass54-frag.c: New tests.
831	* testsuite/libmudflap.c/pass35-frag.c: Correct embedded warning
832	message.
833
8342004-10-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
835
836	PR other/18138
837	* testsuite/lib/libmudflap.exp: Accept more than one multilib libgcc.
838
8392004-10-12  Frank Ch. Eigler  <fche@redhat.com>
840
841	* configure.ac: Check for more headers, functions.
842	* mf-hooks2.c (mkbuffer, unmkbuffer): New helper functions for
843	tracking overridden FILE buffers.
844	(fopen, setvbuf): New/revised hook functions for buffer overriding.
845	(setbuf,setlinebuf,fdopen,freopen,fopen64,freopen64,fclose): Ditto.
846	(fflush): Accept given NULL stream (means "all streams").
847	* mf-runtime.h.in:
848	* mf-runtime.c (__mfu_check): Accept accesses that span adjacent
849	HEAP/GUESS objects.
850	(LOOKUP_CACHE_SIZE_MAX): Raise to 64K entries tentatively.
851	(__mf_adapt_cache): Use them all.
852	* testsuite/libmudflap.c/pass35-frag.c: Update warning message.
853	* testsuite/libmudflap.c++/ctors.exp: Ditto.
854	* testsuite/libmudflap.c/{pass51,pass52}-frag.c: New tests.
855	* configure, config.h.in: Regenerated.
856
8572004-10-05  Frank Ch. Eigler  <fche@redhat.com>
858
859	* configure.ac: Checking for sys/socket.h once is enough.
860	* configure: Regenerated.
861
8622004-10-04  Frank Ch. Eigler  <fche@redhat.com>
863
864	* configure.ac: Look for more headers & functions.
865	* mf-hooks2.c (getmntent, inet_ntoa, getproto*): New wrapper functions.
866	* mf-runtime.h.in: Add new "#pragma redefine_extname"s for them.
867	* mf-runtime.c (options): Clean up integer signedness warnings.
868	(main): Add a declaration to fix a warning.
869	* mf-hooks3.c (pthread_exit): Add not-reached exit() to wrapper.
870	* configure, config.h.in: Regenerated.
871
8722004-10-02  Frank Ch. Eigler  <fche@redhat.com>
873
874	* testsuite/libmudflap.c/pass50-frag.c, fail33-frag.c, fail34-frag.c:
875	New tests for proper base/limit checking for aggregates.
876
8772004-09-15  Joseph S. Myers  <jsm@polyomino.org.uk>
878
879	* testsuite/libmudflap.c/pass35-frag.c: Update expected message.
880
8812004-09-07  Frank Ch. Eigler  <fche@redhat.com>
882
883	* configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
884	* mf-hooks2.c (strerror): Unregister previous string returned by
885	previous strerror.
886	(getlogin,cuserid,getpwnam,getpwuid,getgrnam,getgrgid): New wrappers.
887	(getservent,getservbyname,getservbyport,gai_strerror): Ditto.
888	* mf-runtime.h.in: Add redefine_extname pragmas for them all.
889	* mf-runtime.c (__mf_describe_object): Clarify object life status.
890	* testsuite/libmudflap.c/pass48-frag.c, pass49-frag.c, fail32-frag.c:
891	New tests.
892	* configure, config.h.in: Regenerated.
893
8942004-08-03  Dale Johannesen  <dalej@apple.com>
895
896	 * mf-runtime.c: Conditionalize POSIX_SOURCE for Darwin.
897
8982004-08-03  Frank Ch. Eigler  <fche@redhat.com>
899
900	* mf-runtime.c (compare_uintptr_t): Remove function.  Inline
901	simplified contents in all former callers.
902
9032004-07-27  Ulrich Weigand  <weigand@informatik.uni-erlangen.de>
904
905	* mf-runtime.c (__mf_fini): Set mudflap_mode to mode_nop in
906	the statically linked case.
907
9082004-07-27  Frank Ch. Eigler  <fche@redhat.com>
909
910	* splay-tree.[ch]: Remove.  Merge contents into ...
911	* mf-runtime.c: ... here, renaming symbols and making all functions
912	static.  Remove unused min/max functions.
913	* Makefile.am: Forget about splay-tree.[ch].
914	* Makefile.in, testsuite/Makefile.in: Regenerated.
915
9162004-07-21  Frank Ch. Eigler  <fche@redhat.com>
917
918	* mf-runtime.c (__mfu_check): Remove mistaken mode-nop handling.
919	(__mfu_usage): Include (C) 2004.
920	* mf-hooks3.c (__mf_find_threadinfo): Don't call tracing functions
921	here.  Include a comment explaining why.
922
9232004-07-20  Frank Ch. Eigler  <fche@redhat.com>
924
925	* mf-impl.h (__mf_options): Add ignore_reads and timestamps fields.
926	* mf-runtime.c (options): Give them a name.
927	(__mf_set_default_options): Set them.
928	(__mf_insert_new_object, __mfu_unregister): Optionalize timestamps.
929	(__mf_violation): Warning cleanup.
930	* mf-impl.h (MF_VALIDATE_EXTENT): Support ignore_reads option.
931	* splay-tree.c (splay_tree_delete_helper): Remove obsolete decl.
932
9332004-07-15  Frank Ch. Eigler  <fche@redhat.com>
934
935	g++/15861
936	* mf-runtime.c (__mf_init): Make it non-static.  Tolerate
937	repeated invocation.
938
9392004-07-09  Frank Ch. Eigler  <fche@redhat.com>
940
941	Test case for g++/15861
942	* testsuite/libmudflap.c++/ctors-[12].cxx: New test case halves.
943	* testsuite/libmudflap.c++/ctors.exp: Driver.
944	* testsuite/libmudflap.c++/c++frags.exp: Elide redundant default.
945	Look only for *frag* test cases.
946
9472004-07-08  Frank Ch. Eigler  <fche@redhat.com>
948
949	ANSI C conversion, libmudflap specialization, recursion limiting.
950	* splay-tree.h (splay_tree_{de,}allocate_fn): Remove allocation_data
951	argument and indirection function pointers, update callers.
952	(splay_tree_s): Add statistics and recursion control fields
953	num_keys, max_depth, depth, rebalance_p.
954	* splay-tree.c (splay_tree_splay_helper): Track recursion depth.
955	Back out of search if it exceeds limit.
956	(splay_tree_splay): Manage recursion limiting with rebalancing as
957	needed.
958	(splay_tree_new): More initialization.
959	(splay_tree_rebalance): New function.
960	(splay_tree_foreach): Rewrite using nonrecursive logic.
961	(splay_tree_xmalloc_allocate, splay_tree_xmalloc_deallocate):
962	Remove.  Point indirect calls to mf-runtime.c's routines.
963	(splay_tree_compare_ints, splay_tree_compare_pointers): Remove unused
964	functions.
965	(splay_tree_delete, splay_tree_delete_helper): Ditto.
966	* testsuite/heap-scalestress.c: New test based on one from
967	Eyal Lebedinsky <eyal@eyal.emu.id.au>:
968
9692004-07-05  Matthias Klose  <doko@debian.org>
970
971	* libtool-version: New.
972	* Makefile.am (libmudflap_la_LDFLAGS, libmudflapth_la_LDFLAGS):
973	Use -version-info for soname.
974	* Makefile.in: Regenerate.
975	* configure.ac: Remove libtool_VERSION macro
976	* configure: Regenerate
977
9782004-07-05  Zack Weinberg  <zack@codesourcery.com>
979
980	* mf-runtime.h.in: Wrap declarations of struct __mf_cache,
981	__mf_lookup_cache, __mf_lc_mask, or __mf_lc_shift in
982	#ifndef _MUDFLAP.
983
9842004-06-29  Frank Ch. Eigler  <fche@redhat.com>
985
986	Splay tree implementation fork.
987	* splay-tree.c, splay-tree.h: Copied & modified from libiberty.
988	Use hard-coded comparison function for uintptr_t.  Remove key/value
989	deallocation logic.  Cache last splayed key for consecutive lookups.
990	* Makefile.am, Makefile.in: Use them, don't link to them.
991	* mf-runtime.c (__mf_object_tree): Adapt to simpler splay_tree_new.
992	(__mf_find_objects2): Flip successor/predecessor search sequence.
993	* ansidecl.h, libiberty.h: Removed dummy files.
994
9952004-06-29  Nick Clifton  <nickc@redhat.com>
996
997	* configure.ac (AC_CHECK_HEADERS): Add dirent.h
998	* configure: Regenerate.
999	* mf-hooks2.c: Surround uses of dirent.h with #ifdef
1000	HAVE_DIRENT_H.
1001	Remove spurious inclusion of <strings.h>.
1002
10032004-06-29  Nick Clifton  <nickc@redhat.com>
1004
1005	* mf-runtime.c (pthread_join): Only apply the weak pragma if the
1006	function actually exists.
1007
10082004-06-25  Frank Ch. Eigler  <fche@redhat.com>
1009
1010	* ansidecl.h, libiberty.h: New dummy files for building splay-tree.
1011	* config.h.in: Regenerated.
1012
10132004-06-24  Frank Ch. Eigler  <fche@redhat.com>
1014
1015	Adopt splay trees for object database.
1016	* Makefile.am: Copy splay-tree.* from libiberty.
1017	* Makefile.in, testsuite/Makefile.in: Regenerated.
1018	* mf-runtime.h.in (__mf_unregister): Add third parameter (type).
1019	* mf-hooks[123].c (*): Add new third parameter to mf_unregister.
1020	* mf-impl.h (BEGIN_PROTECT): Remove some trace text.
1021	* mf-runtime.c: Rewrite code dealing with object database to use
1022	libiberty splay trees.  Remove tree liveness aging option.
1023	* testsuite/libmudflap.c/fail18-frag.c: Add volatile flag.
1024
10252004-06-15  Paolo Bonzini  <bonzini@gnu.org>
1026
1027	* configure.ac: New name of configure.in.  Update
1028	AC_INIT, AC_CONFIG_SRCDIR, AC_CONFIG_HEADERS, AC_CONFIG_FILES,
1029	AC_OUTPUT, AM_INIT_AUTOMAKE to the preferred style for
1030	Autoconf 2.5x and Automake 1.7 or later.
1031	* configure.in: Remove.
1032	* configure: Regenerate.
1033
1034	* Makefile.am: Remove useless multilib rules.
1035	* Makefile.in: Regenerate.
1036
10372004-06-15  Paolo Bonzini  <bonzini@gnu.org>
1038
1039	* .cvsignore: New file.
1040
10412004-06-10  Stephen Crowley  <stephen.crowley@sbcglobal.net>
1042
1043	PR libmudflap/13505
1044	* mf-hooks2.c (semctl): Add cygwin porting hack.
1045
10462004-06-09  Frank Ch. Eigler  <fche@redhat.com>
1047
1048	ctype support.
1049	* configure.in: Look for ctype header and glibc implementation.
1050	* mf-hooks2.c (__ctype_{b,toupper,tolower}_loc): Sample ctype
1051	array hooks for glibc 2.3.
1052	* mf-runtime.h.in: Wrap them.
1053	* mf-runtime.c (__mf_init): Leave marker regarding other ctype
1054	implementations.
1055	* testsuite/libmudflap.c/pass47-frag.c: New test.
1056	* configure, config.h.in: Regenerated.
1057
10582004-06-04  Frank Ch. Eigler  <fche@redhat.com>
1059
1060	Portability improvements, e.g., libmudflap/15293.
1061	* configure.in: Look for glibc extension functions.  Look for
1062	support of -f{function,data}-sections.  Look for more headers.
1063	Create testsuite/mfconfig.exp.  Correct more "test x.." thinkos.
1064	* Makefile.am: Use $(SECTION_FLAGS).  Collapse piecemeal-compiled
1065	mf-hooks* into usual single object per source.
1066	* mf-hooks*.c: Remove all #if WRAP_foo conditionals.
1067	* mf-hooks2.c: #include a bunch more system headers.  Define strnlen
1068	if system doesn't provide one.
1069	* mf-hooks3.c (struct pthread_info): Add stack_*_alloc fields.
1070	(pthread_create): Use it to properly GC dead thread stacks.
1071	* mf-runtime.c (__mf_violation): Correct snprintf type warning.
1072	* testsuite/Makefile.am: Stop generating site.exp.
1073	* testsuite/mfconfig.exp.in: New file.
1074	* testsuite/config/default.exp: Load new mfconfig.exp.
1075	* testsuite/lib/libmudflap.exp (libmudflap-init): Add extra libraries.
1076	(prune_gcc_output): Add glibc static linking warnings.
1077	* testsuite/libmudflap.*/*frags.exp: Enumerate needed -lmudflap* libs.
1078	* testsuite/libmudflap.c/pass46-frag.c: Ditto.
1079	* configure, Makefile, aclocal.m4, config.h.in, testsuite/Makefile.in:
1080	Regenerated with autoconf 2.57 and automake 1.7.
1081
10822004-06-04  Per Bothner  <per@bothner.com>
1083
1084	* configure.in (LIBMUDFLAPTH):  Fix thinko.
1085
1086	* configure.in:  Check for more headers.
1087	* mf-hooks2.c:  Conditionalize on HAVE_SYS_SOCKET_H etc.
1088
1089	* mf-runtime.c:  In two places conditionalize on SIUSR1 rather than
1090	HAVE_SIGNAL as mingw has signal.h but not SIUSR1.
1091
10922004-06-01  Andreas Jaeger  <aj@suse.de>
1093
1094	* configure.in: Handle multilibs, support
1095	--enable-version-specific-runtime-libs.
1096	* Makefile.am (lib_LTLIBRARIES): Rename to ...
1097	(toolexeclib_LTLIBRARIES): this for multilib support.
1098	* Makefile.in: Regenerated.
1099	* configure: Regenerated.
1100	* aclocal.m4: Regenerated.
1101	* config.h.in: Regenerated.
1102	* testsuite/Makefile.in: Regenerated.
1103
11042004-06-01  Andreas Jaeger  <aj@suse.de>
1105
1106	* testsuite/lib/libmudflap.exp (libmudflap-init): Handle
1107	multilibs, using multilib directory instead of hardcoded path.
1108	Set LD_RUN_PATH.
1109
11102004-05-21  Frank Ch. Eigler  <fche@redhat.com>
1111
1112	* Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS.
1113	* Makefile.in: Ditto.
1114
11152004-05-18  Kaz Kojima  <kkojima@gcc.gnu.org>
1116
1117	* acinclude.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*.
1118	* aclocal.m4, configure: Rebuilt.
1119
11202004-05-17  Frank Ch. Eigler  <fche@redhat.com>
1121
1122	* lib/libmudflap.exp (libmudflap-init): For C++ test cases only,
1123	import some build settings from libstdc++-v3 testsuite_flags.
1124	* .../cfrags.exp, .../c++frags.exp, .../cthfrags.exp: Corresponding
1125	changes to pass test language.
1126
1127	* mf-runtime.c (__mfu_check): Poison the cache with antidote for
1128	quicker mode-nop handling.
1129
11302004-03-25  Frank Ch. Eigler  <fche@redhat.com>
1131
1132	* mf-impl.h: Added libgcc license header.
1133
11342004-03-20  Frank Ch. Eigler  <fche@redhat.com>
1135
1136	* mf-hooks[123].c, mf-runtime.c, mf-heuristics.c:
1137	Added libgcc license header.
1138	* mf-hooks3.c (__mf_0fn_pthread_create): Correct arg constness.
1139	(pthread_create): Simplify stack allocation syntax.
1140
11412004-03-08  Loren J. Rittle  <ljrittle@acm.org>
1142
1143	* mf-hooks2.c: Support FreeBSD.
1144	(WRAP_gets): Avoid gets().
1145	* testsuite/libmudflap.c/pass-stratcliff.c: Do not
1146	test unimplemented mem/str calls on FreeBSD.
1147	* testsuite/libmudflap.c/pass21-frag.c: Do not include
1148	<alloca.h> on FreeBSD.
1149
11502004-01-30  Frank Ch. Eigler  <fche@redhat.com>
1151
1152	* testsuite/libmudflap.c/pass36-frag.c: Add missing free() call.
1153	* testsuite/libmudflap.c/pass46-frag.c: New test for -fmudflapir.
1154	* testsuite/libmudflap.cth/cthfrags.exp: Add -DSTATIC to compiler
1155	flags for static linking permutation.
1156	* testsuite/libmudflap.cth/pass40-frag.c: When -DSTATIC, avoid
1157	some pthreads code that croaks on linux glibc tls.
1158
11592004-01-27  Frank Ch. Eigler  <fche@redhat.com>
1160
1161	* testsuite/libmudflap.c/fail31-frag.c, pass45-frag.c: New tests.
1162
11632004-01-15  Frank Ch. Eigler  <fche@redhat.com>
1164
1165	* testsuite/libmudflap.c/pass44-frag.c: New test.
1166
11672004-01-12  Frank Ch. Eigler  <fche@redhat.com>
1168
1169	* testsuite/libmudflap.c/fail{28,29,30}-frag.c: New tests.
1170
11712004-01-08  Frank Ch. Eigler  <fche@redhat.com>
1172
1173	* testsuite/libmudflap.c/pass43-frag.c: Added missing program rc.
1174
11752003-12-11  Frank Ch. Eigler  <fche@redhat.com>
1176
1177	* testsuite/libmudflap.c/pass42-frag.c, pass43-frag.c: New tests.
1178
11792003-12-08  Andrew Pinski  <pinskia@physics.uc.edu>
1180
1181	PR libmudflap/12670
1182	* configure.in: Add check for see if
1183	socklen_t typedef is in sys/socket.h.
1184	* mf-hooks1.c: Add define if socklen_t
1185	is not typedef.
1186	* mf-hooks2.c: Likewise.
1187	* mf-hooks3.c: Likewise.
1188	* config.h.in: Regen.
1189	* configure: Regen.
1190
11912003-12-08  Frank Ch. Eigler  <fche@redhat.com>
1192
1193	* mf-runtime.c (__mf_watch_or_not): Tweak tracing message.
1194	* testsuite/libmudflap.c/fail21-frag.c: Defeat aliasing
1195	optimizations.
1196	* testsuite/libmudflap.c/pass25-frag.c: Ditto.
1197	* testsuite/libmudflap.c/pass26-frag.c: Tolerate non-overlapping
1198	(unoptimized) allocation of stack space.
1199
12002003-12-07  Richard Henderson  <rth@redhat.com>
1201
1202	* testsuite/libmudflap.c/fail23-frag.c (main): Adjust addend to 11.
1203	* testsuite/libmudflap.c/fail27-frag.c (foo): Mark noinline.
1204
12052003-12-06  Andrew Pinski <apinski@apple.com>
1206
1207	partial PR libmudflap/12670
1208	* mf-hooks1.c: Respect Darwin checks.  Conditionalize POSIX_SOURCE.
1209	* mf-hooks2.c: Likewise.
1210	* mf-hooks3.c: Likewise.
1211
12122003-11-19  Frank Ch. Eigler  <fche@redhat.com>
1213
1214	libstdc++/11696
1215	* mf-runtime.h.in: Switch to #pragma redefine_extname for
1216	symbols interposed at compile time.
1217	* testsuite/libmudflap.c++/pass41-frag.cxx: New test.
1218
1219	libmudflap/12939
1220	* mf-hooks2.c (semctl): Tolerate FreeBSD.
1221
1222	* configure.in: Reorganize check for <pthread.h>.
1223	* configure: Regenerated.
1224
12252003-11-04  David Edelsohn  <edelsohn@gnu.org>
1226
1227	* mf-runtime.c (_ALL_SOURCE): Define for AIX.
1228	(_LARGE_FILE_API): Define for AIX.
1229	* mf-hooks[123]: Same.
1230	(_XOPEN_SOURCE_EXTENDED): Define to 1 for AIX.
1231
12322003-10-21  David Edelsohn  <edelsohn@gnu.org>
1233
1234	* mf-runtime.c (_XOPEN_SOURCE_EXTENDED): Define to 1 for AIX.
1235
12362003-07-29  Frank Ch. Eigler  <fche@redhat.com>
1237
1238	2003-07-29  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1239
1240	* configure.in: Update check for union semun.
1241
12422003-07-29  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1243
1244	PR other/11673
1245	* mf-hooks2.c [WRAP_semctl]: Fix check for HAVE_UNION_SEMUN.
1246
12472003-07-29  Frank Ch. Eigler  <fche@redhat.com>
1248
1249	PR other/11673
1250	* configure.in: Add checks for 64-bit LFS functions, struct semun
1251	definition, for BSD compatibility.
1252	* mf-hooks1.c: Respect BSD checks.  Conditionalize POSIX_SOURCE.
1253	* mf-hooks2.c: Ditto.  Include <strings.h> for bcmp* decls.
1254	* mf-hooks3.c: Ditto.
1255	(pthread_create): Try MAP_ANON on platforms without the MAP_ANONYMOUS
1256	mmap flag.
1257	* configure, config.h.in: Regenerated.
1258
12592003-07-23  Frank Ch. Eigler  <fche@redhat.com>
1260
1261	Multithreading fixes:
1262	* mf-runtime.c (__mf_object): Store allocating/deallocating
1263	thread id.
1264	(options): Support new "-thread-stack" option.
1265	Rename "-heur-argv-environ" option to "-heur-stdlib".
1266	Disable "-lc-mask" and "-lc-shift" options.
1267	(__mf_dynamic): Add function pointers for pthread_join/_exit.
1268	(__assert_fail): New self-contained function for glibc.
1269	* mf-hooks3.c: Essentially rewritten, particularly related to
1270	use of __mf_pthread_info array.
1271	(pthread_join, _exit): New hook functions.
1272	* mf-impl.h (BEGIN_PROTECT): Handle starting_p case.
1273	* testsuite/libmudflap.cth/pass40-frag.c: New test.
1274
1275	Warning cleanups:
1276	* mf-heuristics.c: Add type casts for tracing, sub calls.
1277	* mf-impl.h (BEGIN_PROTECT): Redefine to omit result type.
1278	Update all callers to declare explicit result holder.
1279	(END_PROTECT): Removed.
1280	* testsuite/*/*frags.exp: Clean up default MUDFLAP_OPTIONS.
1281
12822003-07-15  Diego Novillo  <dnovillo@redhat.com>
1283
1284	* testsuite/libmudflap.c/fail21-frag.c: Add volatile modifiers.
1285	* testsuite/libmudflap.c/fail15-frag.c: Likewise.
1286	* testsuite/libmudflap.c/fail13-frag.c: Likewise.
1287
12882003-07-04  Frank Ch. Eigler  <fche@redhat.com>
1289
1290	* mf-hooks1.c, 2.c, 3.c: New file, splits up content from old ...
1291	* mf-hooks: Removed.
1292	* mf-impl.h (MF_VALIDATE_EXTENT, BEGIN_PROTECT, END_PROTECT):
1293	Move these macros from old mf-hooks.c here.
1294	* Makefile.am: Adapt to split-up hook sources for faster builds.
1295	* Makefile.in: Regenerated.
1296
1297	* mf-heuristics.c: Remove #if-0 block.
1298
1299	* mf-impl.h (__mf_state): Reorganize declaration and implementation.
1300	(__mf_starting_p): New state only for use while dlsym bootstrapping.
1301	(CALL_REAL, __mf_init): Corresponding changes.
1302	(TRACE, VERBOSE_TRACE): Include thread id and "mf:" prefix.  Update
1303	all callers to remove redundant "mf:" prefix.
1304	* mf-runtime.h.in: #define a few reentrancy macros for libmudflapth.
1305	* mf-hooks3.c: Rewrite chunks to support per-thread __mf_state value.
1306	(__mf_pthread_info): Become a hash table.
1307
1308	* testsuite/lib/mfdg.exp: Support new "dg-timeout" and
1309	"dg-repetitions" directives to control test case execution.
1310	* testsuite/libmudflap.cth/pass37-frag.c: Add timeout and repeat
1311	options.
1312	* testsuite/libmudflap.cth/pass39-frag.c: Ditto for this new test.
1313
13142003-06-25  Frank Ch. Eigler  <fche@redhat.com>
1315
1316	* mf-hooks.c (alloca): Separate into stub.
1317	(__mf_wrap_alloca_indirect): New function.  Use CALL_REAL
1318	malloc/free for alloca blocks.
1319	(pthread_create): Tolerate failing pthread_attr_get* calls.
1320	* mf-runtime.c (__mf_fini): Call __mf_wrap_alloca_indirect.
1321	* mf-impl.h (CALL_WRAP): Remove macro.
1322	* testsuite/libmudflap.c/pass21-frag.c: Include <alloca.h>.
1323	* testsuite/libmudflap.c/pass23-frag.c: Include more struct
1324	padding for ia64 BIT_FIELD_REF constructs.
1325
13262003-06-19  Frank Ch. Eigler  <fche@redhat.com>
1327
1328	* mf-hooks.c (struct pthread_info): Add "thread_errno" field.
1329	(__mf_pthread_spawner, __mf_pthread_cleanup): Use it with GUESS
1330	libmudflap object type.
1331	* mf-runtime.c (__mfu_unregister): Correct cemetary logic to avoid
1332	crashes on unregistering STATIC objects.
1333
13342003-06-17  Frank Ch. Eigler  <fche@redhat.com>
1335
1336	Based on patch from Eyal Lebedinsky <eyal@eyal.emu.id.au>:
1337	* mf-hooks.c (__mf_pthread_spawner): Register thread errno.
1338	(time, strerror, fopen, fopen64, fclose, fread): New hooks.
1339	(fwrite, fgetc, fgets, getc, gets, ungetc, fputc): New hooks.
1340	(fputs, putc, puts, clearerr, feof, ferror, fileno): New hooks.
1341	(printf, fprintf, sprintf, snprintf, vprintf, vfprintf): New hooks.
1342	(vsprintf, vsnprintf, access, remove, fflush, fseek): New hooks.
1343	(fseeko64, ftell, ftello64, rewind, fgetpos, fsetpos): New hooks.
1344	(stat, stat64, fstat, lstat, mkfifo, setvbuf, setbuf): New hooks.
1345	(setvbuf, opendir, closedir, readdir, recv, recvfrom): New hooks.
1346	(recvmsg, send, sendto, sendmsg, setsockopt, getsockopt): New hooks.
1347	(accept, bind, connect, gethostname, sethostname): New hooks.
1348	(gethostbyname, wait, waitpid, popen, pclose, execve): New hooks.
1349	(execv, execvp, system, dlopen, dlclose, dlerror, dlsym): New hooks.
1350	(semop, semctl, shmctl, shmat, shmdt): New hooks.
1351	* mf-runtime.h.in: Corresponding changes.
1352	* mf-runtime.c (__mf_ini): Register stdio objects.  Use STATIC type.
1353	(opts) Rename heur_argv_environ	to heur_std_data.
1354	(__mf_wrap_main): Use STATIC type for argv/environ strings.
1355	* Makefile.am: Corresponding changes.
1356	* Makefile.in: Regenerated.
1357
13582003-06-11  Frank Ch. Eigler  <fche@redhat.com>
1359
1360	* mf-heuristics.c (__mf_heuristic_check): Disable stack_bounds
1361	heuristic for threaded case, and for non-x86-linux targets.
1362	* mf-hooks.c (__mf_0fn_calloc): Provide a working dummy implementation
1363	for use during pre-main() program startup.
1364	(__mf_0fn_*): Make these functions non-static.
1365	* mf-impl.h (DECLARE, CALL_REAL): Support calls to 0fn backup hook
1366	functions.
1367	* mf-runtime.c (__mf_state): Set initial state to "starting".
1368	(__mf_resolve_single_dynamic): Tolerate repeated calls for same symbol.
1369	(__wrap_main): New function to register argv[] and environ[] strings.
1370	(__mf_ini): Call it.
1371	(*): In all trace functions, use "%p" as formatter for uintptr_t.
1372
1373	* testsuite/libmudflap.c/pass38-frag.c: New test case.
1374	* testsuite/libmudflap.cth/pass37-frag.c: Improved test.
1375
1376	* acinclude.m4: Add comments with aoliva's concerns about x86_64
1377	pass_all.
1378	* aclocal.m4, configure: Regenerated.
1379
13802003-06-04  Frank Ch. Eigler  <fche@redhat.com>
1381
1382	* acinclude.m4: Correct typo in AC_MSG_CHECKING.
1383	* aclocal.m4, configure: Regenerated.
1384
13852003-06-03  Frank Ch. Eigler  <fche@redhat.com>
1386
1387	* acinclude.m4: Force "pass_all" deplibs_check_method for libtool
1388	for x86_64 target.  Disable caching for this value.
1389	* aclocal.m4, configure: Regenerated.
1390
13912003-06-02  Frank Ch. Eigler  <fche@redhat.com>
1392
1393	* testsuite/libmudflap.c/pass38-frag.c: Deleted.  -fwritable-strings
1394	is about to become deprecated, and its present handling bugs are
1395	unworthy of fixing.
1396
13972003-05-30  Frank Ch. Eigler  <fche@redhat.com>
1398
1399	* testsuite/libmudflap.c/pass38-frag.c: New test for
1400	-fwritable-strings.
1401
14022003-05-23  Frank Ch. Eigler  <fche@redhat.com>
1403
1404	* mf-runtime.c (__mf_sigusr1_handle): Call unlocked variant of
1405	__mf_report, asserting reentrant calling context.
1406
14072003-05-23  Frank Ch. Eigler  <fche@redhat.com>
1408
1409	* mf-hooks.c (realloc): Correct reentrancy logic.
1410	* testsuite/libmudflap.c/hook-allocstuff.c: New test case.
1411
14122003-05-20  Frank Ch. Eigler  <fche@redhat.com>
1413
1414	* mf-hooks.c (LIBMUDFLAPTH_THREADS_MAX): New macro, replaces
1415	PTHREAD_THREADS_MAX.  Update users.
1416	* mf-runtime.c (__mf_usage): Print [active] instead of [default]
1417	for active options.
1418	* testsuite/Makefile.am (all-local): Prime dejagnu site.exp file
1419	with libmudflapth presence indicator.
1420	* testsuite/Makefile.in: Regenerated.
1421
14222003-05-16  Frank Ch. Eigler  <fche@redhat.com>
1423
1424	* Makefile.am (AM_CFLAGS): Remove "-ansi".
1425	* configure.in: Remove silly no-pthreads => no-shared logic.
1426	* Makefile.in, configure: Regenerated.
1427	* mf-heuristics.c (__mf_heuristic_check): Remove reentrancy hacks.
1428	* mf-hooks.c (BEGIN_PROTECT, END_PROTECT): Reorganize reentrancy
1429	code.  Count reentrancy events.
1430	(all hook functions): Don't directly manipulate __mf_state variable.
1431	Add TRACE calls to hook functions without them.
1432	* mf-impl.h (LOCKTH): Try to count lock contention events.
1433	(VERBOSE_TRACE, TRACE): Remove reentrancy hacks.
1434	* mf-runtime.c (BEGIN_RECURSION_PROTECT, END_RECURSION_PROTECT):
1435	Reorganize reentrancy code.
1436	(external __mf_ entry points): Use RECURSION_PROTECT mechanism to
1437	identify reentrancy with mutex holding times.
1438	(internal __mfu_ entry points): Remove internal reentrancy code.
1439	(__mf_init): Use ordinary locked calls.
1440	(__mfu_report): Print the two new counts.
1441	* testsuite/lib/libmudflap.exp:	Filter out junk ld/pthreads messages.
1442	* testsuite/libmudfap.cth/cthfrags.exp: New test driver.
1443	* testsuite/libmudflap.cth/pass37-frag.c: New pthreads test.
1444	* testsuite/libmudfap.cth/cfrags.exp: Adapt to new libmudflap
1445	option defaults.
1446
14472003-05-09  Frank Ch. Eigler  <fche@redhat.com>
1448
1449	* configure.in: Add pthread support, plus glibc and porting hacks.
1450	* Makefile.am (LIBMUDFLAPTH): New conditional, to build -lmudflapth
1451	from objects built into ./pth/.
1452	* mf-runtime.c (__mfu_watch,register,...): Fork new unlocked
1453	functions for internal entry points.  Update callers to pick
1454	locked vs. unlocked variants.
1455	(__mf_resolve_single_dynamic): Extend to support symbol versioning
1456	info coming in from a static data structure.
1457	(*): Reorder miscellaneous declarations to group data vs functions.
1458	(__mf_set_default_options): Simplify.
1459	(__mf_usage): Mention threading status of host executable.
1460	* mf-impl.h: Move max/min decls here.  Reorganize __mf_dynamic
1461	decls to match above.
1462	(LOCKTH, UNLOCKTH): New macros for Big Libmudflap Lock management.
1463	* mf-heuristics.c: Choose between locked/unlocked calls.  Add
1464	some lock/unlock markers.  Remove some unused code.
1465	* mf-hooks: Ditto.
1466	(pthread_create): New hook function.
1467	(__mf_pthread_cleanup, _spawner): New helper functions.
1468	* configure. aclocal.m4, config.h.in, Makefile.in: Regenerated.
1469
14702003-05-02  Frank Ch. Eigler  <fche@redhat.com>
1471
1472	* testsuite/libmudflap.c/fail27-frag.c: Add more volatile flags.
1473
14742002-04-28  Frank Ch. Eigler  <fche@redhat.com>
1475
1476	* Makefile.am (HOOKOBJS): Add *time related hooks.
1477	* configure.in: Look for pthreads.h header.
1478	* mf-hooks.c (asctime, ctime, gmtime, localtime): New wrappers.
1479	* mf-runtime.c: Begin sketching some pthreads support.
1480	(__mf_usage): Check for -lpthread presence.
1481	(__mf_unregister): Confirm matching unregistration base.
1482	(__mf_find_objects_rec): Reduce unnecessary recursion.
1483	* mf-runtime.h.in: Add "nothrow" attribute to functions.  Add
1484	#defines for new hook functions.
1485	* mf-impl.h: Corresponding changes.
1486	* config.h.in, configure, Makefile.in: Regenerated.
1487
14882002-04-27  Diego Novillo  <dnovillo@redhat.com>
1489
1490	* testsuite/libmudflap.c/fail1-frag.c: Add volatile
1491	modifiers to prevent being optimized away.
1492	* testsuite/libmudflap.c/fail10-frag.c: Likewise.
1493	* testsuite/libmudflap.c/fail13-frag.c: Likewise.
1494	* testsuite/libmudflap.c/fail14-frag.c: Likewise.
1495	* testsuite/libmudflap.c/fail15-frag.c: Likewise.
1496	* testsuite/libmudflap.c/fail2-frag.c: Likewise.
1497	* testsuite/libmudflap.c/fail20-frag.c: Likewise.
1498	* testsuite/libmudflap.c/fail3-frag.c: Likewise.
1499
15002003-04-15  Frank Ch. Eigler  <fche@redhat.com>
1501
1502	* Makefile.am (libmudflap_la_LIBADD): Remove -ldl.
1503	* configure.in: Look for uintptr_t and -ldl on target.
1504	* mf-runtime.h.in: Adjust uintptr_t declaration logic.
1505	* Makefile.in, aclocal.m4, configure, config.h.in: Regenerated.
1506	* testsuite/Makefile.in: Regenerated.
1507	* mf-runtime.c (__mf_sigusr1_respond): Tweak declaration and calls
1508	for better C compliance.
1509
15102003-04-15  Frank Ch. Eigler  <fche@redhat.com>
1511
1512	* mf-hooks.c (MF_VALIDATE_EXTENT): Remove unnecessary reentrancy
1513	prevention code.
1514	* mf-runtime.c (__mf_set_default_options): Turn off
1515	check-initialization.
1516	(__mf_describe_object): Shorten description.
1517	* testsuite/libmudflap.c/fail25-frag.c: Turn on check-initialization.
1518
15192003-04-07  Frank Ch. Eigler  <fche@redhat.com>
1520
1521	* mf-hooks.c (__mf_0fn_mmap): Correct return value, as per <rth>.
1522
15232003-04-02  Frank Ch. Eigler  <fche@redhat.com>
1524
1525	* mf-hooks.c (BEGIN_PROTECT): Handle startup-time reentrant
1526	calls specially.
1527	(__mf_0fn_malloc ... _munmap): New dummy backup calls.
1528	* mf-impl.h (CALL_BACKUP): New macros.
1529	* mf-runtime.c (__mf_init): Tweak __mf_state during startup.
1530
15312003-03-31  Frank Ch. Eigler  <fche@redhat.com>
1532
1533	* Makefile.am (AM_CFLAGS): Remove optimization flags.
1534	(HOOKOBJS): Remove dlopen hook.
1535	(libmudflap_la_LIBADD): Add -ldl.
1536	* mf-hooks.c (dlopen): Remove hook.
1537	* mf-impl.h (__mf_dynamic): Ditto.
1538	* mf-runtime.c (__mf_resolve_dynamics): Ditto.
1539	* Makefile.in: Regenerated.
1540
15412003-03-28  Frank Ch. Eigler  <fche@redhat.com>
1542
1543	* configure.in: Check for target gettimeofday, signal, some headers.
1544	* mf-impl.h (__mf_opts): Add new "sigusr1_report" field.  Comment
1545	out inop multi_threaded field.
1546	* mf-runtime.c (options): Handle new "-sigusr1-report" option.
1547	(__mf_set_options): Correct handling of "-help".
1548	(__mf_sigusr1_respond): New function to manage SIGUSR1 response.
1549	(__mf_check, __mf_register, __mf_unregister): Call it.
1550	(__mf_insert_new_object, __mf_unregister): Respect HAVE_GETTIMEOFDAY.
1551	(__mf_report_leaks): Make callable
1552	(__mf_tree_analyze): Traverse in-order.  Accumulate address bit
1553	distribution statistics.
1554	(__mf_adapt_cache): Rewrite shift guessing logic based on address
1555	bit distributions.
1556	* config.h.in, configure: Regenerated.
1557	* testsuite/libmudflap.c/fail27-frag.c: New test.
1558	* testsuite/libmudflap.c/pass36-frag.c: New test.
1559
15602003-03-11  Frank Ch. Eigler  <fche@redhat.com>
1561
1562	* mf-runtime.h.in: Tweak.
1563	* Makefile.am, configure.in: Tweak mf-runtime.h generation some more.
1564	Don't use intermediate files nor AC_OUTPUT-time postprocessing.
1565	* Makefile.in, testsuite/Makefile.in, configure: Regenerated.
1566
15672003-03-10  Frank Ch. Eigler  <fche@redhat.com>
1568
1569	* configure.in: Tweak generation of mf-runtime.h some more.  It
1570	needs to work from both config.status and configure.
1571	* configure: Regenerated.
1572
15732003-03-10  Frank Ch. Eigler  <fche@redhat.com>
1574
1575	* Makefile.am: Reorganize hook file building.  Add auto dependencies.
1576	* configure.in: Tweak generation of mf-runtime.h.
1577	* mf-runtime.h.in: Add new __MF_TYPE_HEAP_I.
1578	* mf-hooks.c (*): Adapt to initialized-heap object type.
1579	* mf-impl.h: Tweak cemetary boundaries.
1580	* mf-runtime.c (__mf_check): Adapt to new initialized-heap object
1581	type.
1582	(__mf_insert_new_object, __mf_register, __mf_unregister): Ditto.
1583	(__mf_describe_object, __mf_report_leaks, __mf_violation): Ditto.
1584	* testsuite/lib/libmudflap.exp (includes): Include build tree.
1585	* testsuite/libmudflap.c/pass{26,5}: Further adapt to initialization
1586	checking.
1587	* testsuite/.../fail{25,26}-frag.c: New tests.
1588	* testsuite/.../pass{32,33,34,35}-frag.c: New tests.
1589	* Makefile.in, configure: Regenerated.
1590
15912003-03-05  Frank Ch. Eigler  <fche@redhat.com>
1592
1593	* mf-runtime.c (__mf_set_default_options): Turn on initialization
1594	checking by default.
1595	(__mf_insert_new_object): As a temporary hack, assume that new
1596	objects registered on the stack start out initialized.
1597	* testsuite/libmudflap.c/fail9,pass23,pass[6789]-*: Initialize
1598	heap objects by hand.
1599
16002003-03-05  Frank Ch. Eigler  <fche@redhat.com>
1601
1602	Switch to macro-style hooks for str*/mem*/b* functions.
1603	* mf-runtime.h.in (__MF_TYPE_*): Moved some internal values out.
1604	(mem*, str*, b*): Added macro-style hooks for _MUDFLAP case.
1605	* mf-runtime.c: #include config.h to enable glibc backtraces again.
1606	(__mf_set_default_options): Turn off heur_proc_map.
1607	(*): Adapt to to macro-style hook functions.
1608	(__mf_object_dead_head, __mf_object_cemetary): Correct bounds.
1609	(__mf_check, __mf_register, __mf_unregister): Tweak tracing message.
1610	(__mf_violation): Handle __MF_VIOL_WATCH.
1611	* mf-impl.h (__MF_TYPE_*): Moved these internal values here.
1612	(__mf_dynamic): Removed mem*/str*/b* functions.
1613	(TRACE, VERBOSE_TRACE): Add reentrancy locking.
1614	(WRAPPER2): New macro for macro-style hooks.
1615	* mf-hooks.c: Convert mem*/str*/b* functions to simpler
1616	macro-style hooks.
1617	(BEGIN_PROTECT): Tweak tracing vs reentrancy-lock ordering.
1618	* mf-heuristics.c: Adapt to macro-style hook functions.
1619	Correct some comments.
1620	* testsuite/lib/mfdg.exp (dg-test): Simplify result string for
1621	output pattern tests.
1622	* testsuite/libmudflap.c/fail[89]-frag.c: Elaborate output test.
1623	* testsuite/libmudflap.c++/c++frags.exp: Enable non-static tests.
1624
16252003-02-28  Frank Ch. Eigler  <fche@redhat.com>
1626
1627	* testsuite/libmudflap.c/fail23-frag.c, pass30-frag.c: New tests
1628	for global array registration.
1629	* testsuite/libmudflap.c++/fail24-frag.cxx, pass31-frag.cxx: Ditto.
1630	* testsuite/libmudflap.c++/c++frags.exp: Tweak -static multilib hack.
1631
16322003-02-27  Frank Ch. Eigler  <fche@redhat.com>
1633
1634	* Makefile.am: Add gross make bug workarounds.  Tweaked
1635	SUBDIRS and AM_CFLAGS.
1636	* Makefile.in: Regenerated.
1637
16382003-02-26  Frank Ch. Eigler  <fche@redhat.com>
1639
1640	Switch to dejagnu.
1641	* configure.in (AC_PROG_CXX): Don't look for C++ any more.
1642	* Makefile.am (TESTS): Remove simple automake testing.
1643	* configure, Makefile.in: Regenerated.
1644	(SUBDIRS): Include new testsuite/ directory.
1645	* tests/*: Removed all files; moved bulk under:
1646	* testsuite/*: New subdirectory tree.
1647	* testsuite/libmudflap.c/cfrags.exp: New file, C test driver.
1648	* testsuite/libmudflap.c++/c++frags.exp: New file, C++ test driver.
1649	* testsuite/lib/libmudflap.exp: New file, derived from libstdc++.
1650	* testsuite/lib/mfdg.exp: New file, derived from dejagnu.
1651	* testsuite/config/default.exp: New file.
1652	* testsuite/Makefile.am, Makefile.in: New files.
1653
16542003-01-29  Frank Ch. Eigler  <fche@redhat.com>
1655
1656	* Makefile.am (TESTS_ENVIRONMENT): Remove redundant "-mode-check".
1657	(TESTS): Add fail22 and pass29 tests.
1658	* mf-runtime.h.in: Change API to take void*/size_t region parameters.
1659	Add new access-type parameter for __mf_check.  Move __MF_VIOL* out.
1660	* mf-impl.h: Corresponding changes.  Update CLAMP* macros for void*
1661	values.  Move __MF_VIOL* here.
1662	* mf-runtime.c (*): Adapt to void*/size_t API in mf-runtime.h.
1663	(check_initialization): New field in __mf_opts.  Default off.
1664	(read_count,write_count): New fields in __mf_object.
1665	(__mf_check): Implement basic initialization checking.
1666	(__mf_insert_new_object): Assume STATIC|GUESS regions are initialized.
1667	(__mf_describe_object): Print new fields.
1668	(__mf_violation): Identify check/read vs. check/write in messages.
1669	* test/pass29-frag.c, test/fail22-frag.c: Basic tests for new
1670	"-check-initialized" mudflap option.
1671	* test/pass25-frag.c, test/fail21-frag.c: Adapt to API changes.
1672	* mf-hooks.c (MF_VALIDATE_EXTENT): Add new access-type parameter.
1673	Drop __FILE__/__LINE__ hack.  Update callers.
1674	(*): Adapt to new mf-runtime.h API.
1675	* Makefile.in: regenerated.
1676
16772003-01-24  Frank Ch. Eigler  <fche@redhat.com>
1678
1679	* configure.in: Build mf-runtime.h a more proper way.
1680	* mf-hooks.c (strdup, strndup): Correct reentrancy logic.
1681	* mf-runtime.c (verbose_violations): Turn on by default.
1682	* mf-runtime.h.in: Remove some miscellaneous stuff ...
1683	* mf-impl.h: ... and move it here.
1684	* configure: Regenerated.
1685
16862003-01-22  Frank Ch. Eigler  <fche@redhat.com>
1687
1688	* configure.in: Look for C++ compiler.
1689	* test/*-frag.c, mf-driver.c: Reformatted with GNU indent and
1690	fixed type warnings when built with C++.
1691	* test/pass27-frag.cxx, pass28-frag.cxx: New C++ tests.
1692	* Makefile.am (TESTS): Run them.
1693	(*) Add new rules for building and running C++ tests.
1694	(TESTFLAGS): Set new default to avoid libstdc++-v3 shlib issues.
1695	* mf-runtime.h.in: Protect with extern "C".
1696	* Makefile, configure: Regenerated.
1697
16982003-01-06  Frank Ch. Eigler  <fche@redhat.com>
1699
1700	Portability improvements.
1701	* configure.in: Look for glibc backtrace headers/functions.
1702	* mf-hooks.c: Don't include <execinfo.h> any more.
1703	* mf-runtime.c (__mf_set_options): Call more stdlib functions
1704	via CALL_REAL.
1705	(__mf_backtrace): Provide alternate baby implementation in
1706	absence of glibc.
1707	* test/mf-driver.c: Portability tweaks.
1708	* acinclude.m4: New file, containing top level libtool.m4.
1709	* aclocal.m4, configure, Makefile.in, config.h.in: Regenerated.
1710
17112002-12-19  Frank Ch. Eigler  <fche@redhat.com>
1712
1713	* mf-runtime.h.in (HAVE_UINTPTR_T): Define unconditionally.
1714
17152002-11-08  Frank Ch. Eigler  <fche@redhat.com>
1716
1717	* mf-runtime.c (options): Add new "wipe-heap", "wipe-stack"
1718	options.
1719	(__mf_unregister): Implement stack/heap object wiping.
1720	(__mf_set_options): Renamed from __mf_process_opts.
1721	(__mf_uncache_object): Change arg type, correct callers.
1722	* mf-impl.h: Corresponding changes.
1723	* mf-hooks.c (realloc): Save/restore heap-wiping flag.
1724	* mf-runtime.h.in (__mf_set_options): Extend public API.
1725	* test/pass26-frag.c: New test for stack wiping.
1726	* Makefile.am (TESTS): Run it.
1727	* Makefile.in: Regenerated.
1728
17292002-11-07  Frank Ch. Eigler  <fche@redhat.com>
1730
1731	* mf-runtime.h.in (__mf_watch, __mf_unwatch): Extend public API.
1732	* mf-runtime.c (__mf_object_t): Add watching_p field.
1733	(__mf_watch_or_not): New function to implement
1734	object watch flagging.
1735	(__mf_watch, __mf_unwatch): New wrappers for above.
1736	(__mf_check, __mf_describe_object): Handle objects with watching_p.
1737	(__mf_count_violation): Enlarge array.
1738	(__mf_uncache_object): Renamed from __mf_remove_old_object.  Don't
1739	unlink object.  Clear cache properly.
1740	(__mf_unregister): Unlink object explicitly before uncaching.
1741	* test/fail21-frag.c, pass25-frag.c: New tests.
1742	* Makefile.in, aclocal.m4: Regenerated.
1743
17442002-11-05  Frank Ch. Eigler  <fche@redhat.com>
1745
1746	* test/fail20-frag.c: New test for NULL pointer dereferencing.
1747	* Makefile.am (TESTS): Add it.
1748	* test/pass-stratcliff.c: Add decls of stpcpy.
1749	* configure.in: Test for <stdint.h>.  Generate mf-runtime.h in
1750	build tree from config.h and new file mf-runtime.h.in.
1751	* mf-runtime.h.in: Renamed from mf-runtime.h.  Tweak uintptr_t decl.
1752	* Makefile.in, configure, config.h.in: Regenerated.
1753	* mf-hooks.c: Add #undef for wrapped glibc str*/mem* macros.
1754	* mf-runtime.c (options, __mf_set_default_options): Support new
1755	default "abbreviate" option.
1756	(__mf_object.description_epoch): New field.
1757	(__mf_describe_object): Conditionally abbreviate objects already
1758	displayed in current epoch.  Accept NULL input to increment epoch.
1759	(__mf_fini, __mf_ini): Reset description epoch.
1760	(__mf_register, __mf_unregister, __mf_adapt_cache, __mf_init): Ensure
1761	that NULL pointer slot in lookup cache is invalidated.  Register a
1762	NOACCESS region around NULL.
1763	* mf-impl.h: Corresponding changes.
1764
17652002-10-16  Frank Ch. Eigler  <fche@redhat.com>
1766
1767	* test/fail19-frag.c, pass24-frag.c, pass-stratcliff.c: New tests.
1768	* Makefile.am: Run them.  Install mf-runtime.h.
1769	* Makefile.in: Regenerated.
1770	* mf-hooks.c: Add some markers for more missing functions.
1771	* mf-runtime.c (__mf_adapt_cache): Experiment with a utilization-based
1772	statistic to tune tune cache size (mask).
1773
17742002-10-01  Frank Ch. Eigler  <fche@redhat.com>
1775
1776	* test/pass23-frag.c: New test for bit_field_ref expressions.
1777	* Makefile.am, Makefile.in: Add new test.
1778	* mf-hooks.c (mmap, munmap): Rewrite to track individual pages.
1779	(MF_VALIDATE_EXTENT): Accept zero-size mem/str operations.
1780	* mf-runtime.c (__mf_init): Register errno global.
1781	(__mf_find_object): Removed function.
1782	(__mf_check): Rewrite logic to support accesses across some
1783	contiguous but distinctly registered objects.
1784	(__mf_remove_old_object): Tolerate cache entries that span
1785	contiguous objects.
1786
17872002-09-30  Frank Ch. Eigler  <fche@redhat.com>
1788
1789	* test/pass21-frag.c, pass22-frag.c: New tests: alloca, bitfields.
1790	* Makefile.am, Makefile.in: Run new tests.
1791	* mf-hooks.c (alloca): Correct stack direction logic.
1792
17932002-09-26  Frank Ch. Eigler  <fche@redhat.com>
1794
1795	* mf-impl.h (adapt_cache): New option.
1796	* mf-runtime.c (__mf_set_default_options): Set its default value.
1797	Tweak the tree_aging parameter down.
1798	(__mf_check): Maintain separate counter for cache-adaptation.
1799	(__mf_tree_analyze): New function to collect object tree stats.
1800	(__mf_adapt_cache): New function to automate cache parameters.
1801
18022002-09-24  Frank Ch. Eigler  <fche@redhat.com>
1803
1804	* mf-heuristics.c (__init_misc, __mf_heuristic_check): Add
1805	hypothetical #if-0'd argv/envp region registration.
1806	* mf-runtime.c (__mf_init): Add kludged form of above.
1807	(*) Add "heur_argv_environ" flag, default on, to govern this.
1808	* mf-impl.h: Corresponding changes.
1809
18102002-09-20  Frank Ch. Eigler  <fche@redhat.com>
1811
1812	* test/fail18-frag.c: New test file for NOACCESS regions.
1813	* Makefile.am (TESTS): Add new test.
1814	* Makefile.in: Regenerated.
1815
1816	* mf-heuristics.c (__mf_heuristics_check): Correct deja_vu logic.
1817	* mf-impl.h (tree_aging): Add new mudflap_option, default 1000000.
1818	(optimize_object_tree): Remove unused mudflap_option.
1819	* mf-runtime.h (__MF_TYPE_NOACCESS): New region type.  Add printing
1820	support throughout.  Use .._MAX_CEM for cemetary upper bound.
1821	* mf-runtime.c (__mf_init): Register __mf_* globals as NOACCESS
1822	regions.
1823	(__mf_object): Add new liveness field for use by tree aging.
1824	(__mf_check): Trigger tree aging when needed.
1825	(__mf_age_tree): New function to decay liveness field.
1826	(__mf_find_objects_rec): Use liveness field to rotate tree.
1827	(__mf_insert_new_object): Only provide backtrace for HEAP objects.
1828	(__mf_unregister): Ditto.
1829	(__mf_register): Tweak duplicate-static message.
1830	(__mf_violation: Tweak nearby-object counter printing.
1831
18322002-09-16  Frank Ch. Eigler  <fche@redhat.com>
1833
1834	* test/pass20-frag.c: New test file.
1835	* Makefile.am (TESTS): Reorganize.  Add pass20 test.
1836	* Makefile.in: Regenerated.
1837
1838	* mf-impl.h (TRACE_IN, TRACE_OUT): Remove macros.  Update callers.
1839	* mf-hooks.c (BEGIN_PROTECT): Add hook tracing here.
1840	* mf-heuristic.c (__mf_heuristic_check): Track seen /proc/self/map
1841	entries to avoid repeat registration.
1842	* mf-runtime.c (__mf_object_cemetary): Don't bother bury GUESS regions.
1843	(__mf_register, __mf_unregister): Rewrite GUESS handling logic.
1844
18452002-09-09  Frank Ch. Eigler  <fche@redhat.com>
1846
1847	* Makefile.am: Create test sources with #include, not cat>>.
1848	* Makefile.in: Regenerated.
1849	* test/buildtest.sh: Removed.
1850	* test/driver.c (abort_handler, main): Be quiet.
1851
18522002-09-06  Frank Ch. Eigler  <fche@redhat.com>
1853
1854	* test/pass18-frag.c, pass19-frag.c: New tests.
1855	* Makefile.am (check): Run them.  Rebuild test programs each time.
1856	* Makefile.in: Regenerated.
1857
18582002-09-06  Frank Ch. Eigler  <fche@redhat.com>
1859
1860	* mf-runtime.c (__mf_register): Correct SEGV-inducing error in
1861	overlapping object search.
1862	(__mf_violation): Likewise for nearby objects.
1863	Improve nearby-object listing.
1864
1865	cleanup:
1866	* mf-runtime.c, mf-hooks.c: Remove "{{{"/"}}}" folding marks.
1867	* mf-heuristics.c (__mf_heuristic_check): Tweak message.
1868
18692002-09-03  Frank Ch. Eigler  <fche@redhat.com>
1870
1871	alloca support:
1872	* Makefile.am (AM_CFLAGS): New definition of needed settings.
1873	(HOOKOBJS): Add alloca-hook.o.
1874	* mf-hooks.c (alloca): New function to implement alloca in libiberty
1875	style.
1876	* mf-runtime.c (__mf_report): Call alloca(0) to flush remaining blocks.
1877	(__mf_backtrace): Reimplement without using alloca.
1878	* Makefile.in: Regenerated.
1879
1880	cleanup:
1881	* mf-hooks.c: Use VERBOSE_TRACE throughout instead of fprintf(stderr).
1882	Correct signedness bugs in length-tracking variables.
1883	* mf-impl.h: Make options unsigned.
1884	(CALL_WRAP): New macro to parallel CALL_REAL().
1885	(DECLARE): Remove erroneous ";" at end.
1886	* mf-runtime.c, mf-hooks.c, mf-heuristics.c: Replace remaining %p
1887	formatting specs with %08lx.  Correct several compiler warnings.
1888
18892002-08-28  Frank Ch. Eigler  <fche@redhat.com>
1890
1891	* mf-runtime.c (__mf_violation): Try harder to locate nearby objects.
1892
18932002-08-27  Frank Ch. Eigler  <fche@redhat.com>
1894
1895	libmudflap hook breakup:
1896	* Makefile.am (TESTS_ENVIRONMENT): Add ../../gcc to LD_LIBRARY_PATH
1897	for libgcc_s.
1898	(TESTS): Make dependent on libmudflap.
1899	(HOOKOBJS): Break up mf-hooks.o into many little hook objects,
1900	compiled from segments of mf-hooks.c.
1901	* mf-hooks.c: Corresponding changes: wrap each function in
1902	#ifdef/#endif.
1903	* Makefile.in: Regenerated.
1904
1905	Heuristics reorganization:
1906	* mf-heuristics.c (__mf_register_ro_sections, __mf_init_heuristics):
1907	Remove these functions.  Update callers.
1908	(__mf_heuristic_check): Incorporate all the various heuristics.
1909	Encode cacheability/retry judgement into trinary return value.
1910	Separate start-end logic into a separate fallback heuristic.  Only
1911	register relevant /proc/self/map segments.
1912	* mf-impl.h: Corresponding changes.
1913	* mf-runtime.c (__mf_check): Reorganize heuristics fallback logic.
1914	(__mf_init): Don't call __mf_init_heuristics.
1915
1916	Tracing cleanup:
1917	* mf-heuristics.c, mf-runtime.c: Use new MUDFLAP_OPTION
1918	"-verbose-trace" to emit all tracing messages other than those of
1919	basic public api.  Eliminate some duplicate/excessive messages.
1920	* mf-runtime.h: Corresponding changes.
1921
19222002-08-27  Graydon Hoare  <graydon@redhat.com>
1923
1924	* mf-impl.h (WRAPPER): Change to create linker aliases for __wrap
1925	and __real when compiled with -DPIC.
1926	* mf-hooks.c (WRAPPER): Change all uses of WRAPPER macro slightly.
1927	* Makefile.am (AUTOMAKE_OPTIONS): Fix LD_LIBRARY_PATH for tests.
1928	* Makefile.in: Regenerate.
1929
19302002-08-26  Graydon Hoare  <graydon@redhat.com>
1931
1932	* mf-impl.h: New file, private implementation header.
1933	* mf-runtime.h: Reorganize a bit.
1934	(CLAMPSZ): Fix arithmetic.
1935	(__MF_CACHE_MISS_P): Fix arithmetic.
1936	* mf-runtime.c: Reorganize a bit.
1937	(__mf_dynamic): New structure.
1938	(resolve_single_dynamic): New function.
1939	(__mf_resolve_dynamics): New function.
1940	(__mf_init): Initialize dynamic wrappers.
1941	* mf-hooks.c: Macro-ize __real calls.
1942	Clamp various bits of arithmetic.
1943	Add explicit __mf_check call contexts.
1944	* Makefile.am: Add dependencies on mf-impl.h
1945	* Makefile.in: Regenerate.
1946	* configure.in: Comment out shared override.
1947	* configure: Regenerate.
1948
19492002-08-22  Graydon Hoare  <graydon@redhat.com>
1950
1951	* mf-runtime.c (__mf_process_opts): Sanity-check free_queue_length.
1952	(__mf_check): Re-inialize and check heuristics before violation.
1953	(__mf_register): Permit updating pure-guess regions.
1954	* mf-hooks.c (__wrap_free): Correct some free queue logic.
1955	(__wrap_dlopen): New wrapper function.
1956	(__wrap_mmap): New wrapper function.
1957	(__wrap_munmap): New wrapper function.
1958	* mf-heuristics.c (__mf_register_ro_sections): Register *all* regions
1959	which are not stack addresses.
1960	(is_stack_address): New function.
1961	(__mf_init_heuristics): Save and restore state, always initialize with
1962	"starting" state.
1963
19642002-08-21  Frank Ch. Eigler  <fche@redhat.com>
1965
1966	* mf-hooks.c (MF_VALIDATE_EXTENT): Rewrite to correct off-by-one
1967	error.  Pass location string.
1968	(wrap_strcpy, wrap_strncpy): Remove extra %s in trace strings.
1969	* mf-runtime.c (options): Add lc-mask, lc-shift options.
1970	(__mf_process_opts): Apply some sanity checking for lc-mask.
1971	(__mf_check, __mf_violation): Take new location-string argument.
1972	Update callers to pass NULL if necessary.
1973	(__mf_backtrace): New smart backtracer function.  Calls replace
1974	several ad-hoc blocks elsewhere.
1975	(__mf_describe_object): Remove bad reentrancy test.  Improve
1976	tracing message.
1977	* mf-runtime.h: Corresponding changes.  Public/private markup.
1978	(__MF_CACHE_MISS_P): New macro.
1979
19802002-08-20  Graydon Hoare  <graydon@redhat.com>
1981
1982	* mf-runtime.h: New option: stack_bound (heuristic).
1983	Move some macros out of implementation files.
1984	* mf-runtime.c: New option string: -stack-bound.
1985	Unify recursion protection with hooks.
1986	Add more logging.
1987	(__mf_check): Call __mf_heuristic_check.
1988	(__mf_process_opts): Fix "no-" processing.
1989	* mf-heuristics.c (__mf_heuristic_check): New function.
1990	* mf-hooks.c: Much off-by-one fixing, recursion protection.
1991
19922002-08-20  Frank Ch. Eigler  <fche@redhat.com>
1993
1994	Option parsing improvements, region splitting bug fixes:
1995	* mf-heuristics.c (__mf_register_ro_sections): Add warned casts.
1996	* mf-runtime.h (heur_proc_map): New libmudflap option.
1997	* mf-runtime.c (__mf_set_default_options): Set it.
1998	(__mf_usage): Print default values/status.
1999	(__mf_process_opts): Support general "no-" option string prefix.
2000	(__mf_init): Print __mf_usage on unknown-option error.
2001	(__mf_register): Print trace message up front.
2002	Correct region splitting logic for case where a subregion disappears.
2003	Correct memory leak.
2004	(__mf_violation): Make even basic message conditional on option.
2005
2006	Build cleanup:
2007	* Makefile.am (TESTS_ENVIRONMENT): Add -no-heur-proc-map.
2008	(clean-local): New target.
2009	(test/*x rules): Add -g CFLAGS.
2010	(CFLAGS): Add -freorder-blocks.
2011	(MFCONFIG_CFLAGS, INCLUDE): Remove unneeded settings.
2012	* Makefile.in: Regenerated.
2013	* Makefile, mf-config.h: Removed files.
2014
20152002-08-16  Graydon Hoare  <graydon@redhat.com>
2016
2017	* mf-runtime.c (__mf_insert_new_object): Factor out of
2018	__mf_register.
2019	(__mf_remove_old_object): Factor out of __mf_unregister.
2020	(__mf_register): Handle guessed regions, splitting
2021	guesses when new registrations arrive.
2022	(__mf_unregister): Do not unregister guesses.
2023	* mf-runtime.h: Move convenience macros around,
2024	declare new option fields. Add __MF_TYPE_GUESS.
2025	* mf-hooks.c (__wrap_*alloc): Use crumple zones.
2026	(__wrap_free): Call __real_free for deferred frees.
2027	* Makefile.am: Add more tests, fix dependency.
2028	* Makefile.in: Regenerate.
2029	* test/pass[13..17]-frag.c: New testcases.
2030	* test/fail[13..17]-frag.c: New testcases.
2031
20322002-08-15  Graydon Hoare  <graydon@redhat.com>
2033
2034	* mf-heuristics.c: New file.
2035	* mf-runtime.c (options): Add -trace-calls option.
2036	(__mf_init): Call __mf_init_heuristics.
2037
20382002-08-14  Graydon Hoare  <graydon@redhat.com>
2039
2040	* Makefile.am (TESTS): Add testsuite support.
2041	* Makefile.in: Regenerate.
2042	* test/mf-driver.c: New file.
2043	* test/buildtest.sh: New file.
2044	* test/passNN-frag.c: New testcases.
2045	* test/failNN-frag.c: New testcases.
2046
20472002-08-14  Graydon Hoare  <graydon@redhat.com>
2048
2049	* mf-hooks.c: Change __real_strlen() to __real_strlen()+1 when
2050	verifying non-size-limited string extents.
2051
20522002-08-14  Frank Ch. Eigler  <fche@redhat.com>
2053
2054	* mf-hooks.c: Make __wrap string* functions use __real_str[n]len
2055	instead of plain str[n]len for internal checks.
2056	* mf-runtime.c (__mf_violation): Print optional stack traceback.
2057
20582002-08-14  Frank Ch. Eigler  <fche@redhat.com>
2059
2060	* mf-hooks.c: Remove #if-0 around hooks that are now ld-wrapped.
2061
20622002-08-13  Graydon Hoare  <graydon@redhat.com>
2063
2064	* mf-runtime.c: Rework configuration to operate on
2065	environment variable options rather than #defines
2066	(__mf_violation): Add simple fork-a-gdb violaiton mode.
2067	(__mf_init): Set static __mf_active_p flag on startup,
2068	to inhibit mudflap wrap-based checking during crt0.s.
2069	* mf-runtime.h: Declare options structure.
2070	* mf-hooks.c: New wrappings for mem*, b*, str*
2071	libc functions (temporarily #if 0-ed out).
2072
20732002-08-12  Frank Ch. Eigler  <fche@redhat.com>
2074
2075	* Makefile.am, configure.in: New files.
2076	* Makefile.in, Makefile, configure, config.h.in: New generated files.
2077	* stamp-h.in, aclocal.m4: Ditto.
2078
20792002-08-08  Frank Ch. Eigler  <fche@redhat.com>
2080
2081	* Makefile: New file.
2082	* mf-config.h: New file: runtime configuration.
2083	* mf-hooks.c: New file: interposed libc functions.
2084	* mf-runtime.c: New file: bulk of runtime.
2085	* mf-runtime.h: New file: public functions.
2086