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