OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libmudflap/] [ChangeLog] - Blame information for rev 867

Go to most recent revision | Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.