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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [libmudflap/] [ChangeLog] - Diff between revs 816 and 826

Only display areas with differences | Details | Blame | View Log

Rev 816 Rev 826
2010-07-31  Release Manager
2010-07-31  Release Manager
        * GCC 4.5.1 released.
        * GCC 4.5.1 released.
2010-06-10  Iain Sandoe  
2010-06-10  Iain Sandoe  
        PR bootstrap/43170
        PR bootstrap/43170
        * configure: Regenerate.
        * configure: Regenerate.
2010-04-14  Release Manager
2010-04-14  Release Manager
        * GCC 4.5.0 released.
        * GCC 4.5.0 released.
2010-04-02  Ralf Wildenhues  
2010-04-02  Ralf Wildenhues  
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * aclocal.m4: Regenerate.
        * aclocal.m4: Regenerate.
        * testsuite/Makefile.in: Regenerate.
        * testsuite/Makefile.in: Regenerate.
2010-03-15  David S. Miller  
2010-03-15  David S. Miller  
        * testsuite/libmudflap.c/pass54-frag.c: Add explicit return from
        * testsuite/libmudflap.c/pass54-frag.c: Add explicit return from
        main.
        main.
2010-01-09  Jakub Jelinek  
2010-01-09  Jakub Jelinek  
        * mf-runtime.c (__mf_usage): Update copyright notice dates.
        * mf-runtime.c (__mf_usage): Update copyright notice dates.
2009-12-05  Ralf Wildenhues  
2009-12-05  Ralf Wildenhues  
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * configure: Regenerate.
        * configure: Regenerate.
        * testsuite/Makefile.in: Regenerate.
        * testsuite/Makefile.in: Regenerate.
2009-09-22  Frank Ch. Eigler  
2009-09-22  Frank Ch. Eigler  
        PR libmudflap/41433
        PR libmudflap/41433
        * mf-runtime.c (__mf_init): Ignore $MUDFLAP_OPTIONS if
        * mf-runtime.c (__mf_init): Ignore $MUDFLAP_OPTIONS if
        running setuid or setgid.
        running setuid or setgid.
2009-09-01  Loren J. Rittle  
2009-09-01  Loren J. Rittle  
        * mf-runtime.c (__mf_init): Support FreeBSD.
        * mf-runtime.c (__mf_init): Support FreeBSD.
        Prime mutex which calls calloc upon first lock to avoid deadlock.
        Prime mutex which calls calloc upon first lock to avoid deadlock.
        * mf-hooks1.c (__mf_0fn_mmap): Support FreeBSD.
        * mf-hooks1.c (__mf_0fn_mmap): Support FreeBSD.
        Ignore red zone allocation request for initial thread's stack.
        Ignore red zone allocation request for initial thread's stack.
2009-09-01  Loren J. Rittle  
2009-09-01  Loren J. Rittle  
            Andreas Schwab  
            Andreas Schwab  
        * testsuite/libmudflap.c/pass51-frag.c (MAP_FAILED): Define,
        * testsuite/libmudflap.c/pass51-frag.c (MAP_FAILED): Define,
        if not in system header; use it.  On FreeBSD, must pass fd==-1
        if not in system header; use it.  On FreeBSD, must pass fd==-1
        with MAP_ANON flag.  Correct mmap error check.
        with MAP_ANON flag.  Correct mmap error check.
        * testsuite/libmudflap.c/fail40-frag.c: Ditto.
        * testsuite/libmudflap.c/fail40-frag.c: Ditto.
2009-08-24  Ralf Wildenhues  
2009-08-24  Ralf Wildenhues  
        * configure.ac (AC_PREREQ): Bump to 2.64.
        * configure.ac (AC_PREREQ): Bump to 2.64.
2009-08-22  Ralf Wildenhues  
2009-08-22  Ralf Wildenhues  
        * Makefile.am (install-html, install-pdf): Remove.
        * Makefile.am (install-html, install-pdf): Remove.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * aclocal.m4: Regenerate.
        * aclocal.m4: Regenerate.
        * config.h.in: Regenerate.
        * config.h.in: Regenerate.
        * configure: Regenerate.
        * configure: Regenerate.
        * testsuite/Makefile.in: Regenerate.
        * testsuite/Makefile.in: Regenerate.
2009-07-30  Ralf Wildenhues  
2009-07-30  Ralf Wildenhues  
        * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
        * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
2009-07-16  Joseph Myers  
2009-07-16  Joseph Myers  
        * configure: Regenerate.
        * configure: Regenerate.
2009-07-11  Richard Sandiford  
2009-07-11  Richard Sandiford  
        PR testsuite/40699
        PR testsuite/40699
        PR testsuite/40707
        PR testsuite/40707
        PR testsuite/40709
        PR testsuite/40709
        * testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit.
        * testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit.
2009-07-01  Richard Guenther  
2009-07-01  Richard Guenther  
        PR tree-optimization/19831
        PR tree-optimization/19831
        * testsuite/libmudflap.c/fail11-frag.c: Make allocated memory
        * testsuite/libmudflap.c/fail11-frag.c: Make allocated memory
        escape.
        escape.
        * testsuite/libmudflap.c/fail12-frag.c: Likewise.
        * testsuite/libmudflap.c/fail12-frag.c: Likewise.
        * testsuite/libmudflap.c/fail16-frag.c: Likewise.
        * testsuite/libmudflap.c/fail16-frag.c: Likewise.
        * testsuite/libmudflap.c/fail31-frag.c: Likewise.
        * testsuite/libmudflap.c/fail31-frag.c: Likewise.
2009-06-30  Richard Sandiford  
2009-06-30  Richard Sandiford  
        * testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
        * testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
        to ld_library_path.  Use add_path.  Add just find_libgcc_s to
        to ld_library_path.  Use add_path.  Add just find_libgcc_s to
        ld_library_path, not every libgcc multilib directory.
        ld_library_path, not every libgcc multilib directory.
2009-04-09  Nick Clifton  
2009-04-09  Nick Clifton  
        * mf-hooks1.c: Change copyright header to refer to version 3
        * mf-hooks1.c: Change copyright header to refer to version 3
        of the GNU General Public License with version 3.1 of the GCC
        of the GNU General Public License with version 3.1 of the GCC
        Runtime Library Exception and to point readers at the COPYING3
        Runtime Library Exception and to point readers at the COPYING3
        and COPYING3.RUNTIME files and the FSF's license web page.
        and COPYING3.RUNTIME files and the FSF's license web page.
        * mf-heuristics.c: Likewise.
        * mf-heuristics.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-impl.h: Likewise.
        * mf-impl.h: Likewise.
        * mf-runtime.c: Likewise.
        * mf-runtime.c: Likewise.
        * mf-runtime.h: Likewise.
        * mf-runtime.h: Likewise.
2009-04-09  Jakub Jelinek  
2009-04-09  Jakub Jelinek  
        * testsuite/lib/mfdg.exp: Change copyright header to refer to
        * testsuite/lib/mfdg.exp: Change copyright header to refer to
        version 3 of the GNU General Public License and to point readers
        version 3 of the GNU General Public License and to point readers
        at the COPYING3 file and the FSF's license web page.
        at the COPYING3 file and the FSF's license web page.
        * testsuite/lib/libmudflap.exp: Likewise.
        * testsuite/lib/libmudflap.exp: Likewise.
2009-03-31  Ben Elliston  
2009-03-31  Ben Elliston  
        PR libmudflap/38462
        PR libmudflap/38462
        * testsuite/libmudflap.c/fail27-frag.c: Match `mudflap dead
        * testsuite/libmudflap.c/fail27-frag.c: Match `mudflap dead
        object', not `mudflap object'.
        object', not `mudflap object'.
2009-03-01  Ralf Wildenhues  
2009-03-01  Ralf Wildenhues  
        * configure: Regenerate.
        * configure: Regenerate.
2009-02-03  Jakub Jelinek  
2009-02-03  Jakub Jelinek  
        * mf-runtime.c (__mf_usage): Update copyright notice dates.
        * mf-runtime.c (__mf_usage): Update copyright notice dates.
2009-01-23  Jie Zhang  
2009-01-23  Jie Zhang  
        * mf-impl.h (__mf_get_state, __mf_set_state): Don't use
        * mf-impl.h (__mf_get_state, __mf_set_state): Don't use
        __thread when TLS support is emulated.
        __thread when TLS support is emulated.
        * mf-hooks3.c (__mf_get_state, __mf_set_state): Likewise.
        * mf-hooks3.c (__mf_get_state, __mf_set_state): Likewise.
        * mf-runtime.c (__mf_state_1): Likewise.
        * mf-runtime.c (__mf_state_1): Likewise.
        * configure.ac: Use GCC_CHECK_EMUTLS.
        * configure.ac: Use GCC_CHECK_EMUTLS.
        * configure: Regenerate.
        * configure: Regenerate.
        * config.h.in: Regenerate.
        * config.h.in: Regenerate.
2008-12-18  Ralf Wildenhues  
2008-12-18  Ralf Wildenhues  
        * configure: Regenerate.
        * configure: Regenerate.
2008-11-26  Janis Johnson  
2008-11-26  Janis Johnson  
        PR testsuite/28870
        PR testsuite/28870
        * testsuite/lib/mfdg.exp (dg-test): Use new timeout support.
        * testsuite/lib/mfdg.exp (dg-test): Use new timeout support.
        (dg-timeout): Remove.
        (dg-timeout): Remove.
        (standard-wait): Remove.
        (standard-wait): Remove.
        * testsuite/lib/libmudflap.exp: Include new timeout library files.
        * testsuite/lib/libmudflap.exp: Include new timeout library files.
        (libmudflap_target_compile): Set timeout value from new proc.
        (libmudflap_target_compile): Set timeout value from new proc.
2008-11-10  Jakub Jelinek  
2008-11-10  Jakub Jelinek  
        PR middle-end/35314
        PR middle-end/35314
        * testsuite/libmudflap.c/pass67-frag.c: New test.
        * testsuite/libmudflap.c/pass67-frag.c: New test.
2008-10-09  Jakub Jelinek  
2008-10-09  Jakub Jelinek  
        PR c++/37568
        PR c++/37568
        * testsuite/libmudflap.c++/pass66-frag.cxx: New test.
        * testsuite/libmudflap.c++/pass66-frag.cxx: New test.
2008-09-26  Peter O'Gorman  
2008-09-26  Peter O'Gorman  
            Steve Ellcey  
            Steve Ellcey  
        * configure: Regenerate for new libtool.
        * configure: Regenerate for new libtool.
        * Makefile.in: Ditto.
        * Makefile.in: Ditto.
        * testsuite/Makefile.in: Ditto.
        * testsuite/Makefile.in: Ditto.
2008-09-15  Jakub Jelinek  
2008-09-15  Jakub Jelinek  
        PR libmudflap/36397
        PR libmudflap/36397
        * testsuite/libmudflap.c/pass64-frag.c: New test.
        * testsuite/libmudflap.c/pass64-frag.c: New test.
2008-06-17  Ralf Wildenhues  
2008-06-17  Ralf Wildenhues  
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * config.h.in: Regenerate.
        * config.h.in: Regenerate.
        * configure: Regenerate.
        * configure: Regenerate.
        * testsuite/Makefile.in: Regenerate.
        * testsuite/Makefile.in: Regenerate.
2008-04-18  Paolo Bonzini  
2008-04-18  Paolo Bonzini  
        PR bootstrap/35457
        PR bootstrap/35457
        * aclocal.m4: Regenerate.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * configure: Regenerate.
2008-03-20  Volker Reichelt  
2008-03-20  Volker Reichelt  
        * testsuite/libmudflap.c/pass63-frag.c: New test.
        * testsuite/libmudflap.c/pass63-frag.c: New test.
2008-03-16  Ralf Wildenhues  
2008-03-16  Ralf Wildenhues  
        * aclocal.m4: Regenerate.
        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.
2008-03-02  Jakub Jelinek  
2008-03-02  Jakub Jelinek  
        * mf-runtime.c (__mf_usage): Update copyright notice dates.
        * mf-runtime.c (__mf_usage): Update copyright notice dates.
2008-02-21  Uros Bizjak  
2008-02-21  Uros Bizjak  
        * testsuite/libmudflap.c/fail8-frag.c: Adjust scan pattern for
        * testsuite/libmudflap.c/fail8-frag.c: Adjust scan pattern for
        mudflap dead object.
        mudflap dead object.
        * testsuite/libmudflap.c/fail9-frag.c: Ditto.
        * testsuite/libmudflap.c/fail9-frag.c: Ditto.
2008-01-24  David Edelsohn  
2008-01-24  David Edelsohn  
        * configure: Regenerate.
        * configure: Regenerate.
2008-01-05  Jakub Jelinek  
2008-01-05  Jakub Jelinek  
        PR tree-optimization/34618
        PR tree-optimization/34618
        * testsuite/libmudflap.c/pass62-frag.c: New test.
        * testsuite/libmudflap.c/pass62-frag.c: New test.
2008-01-03  Jakub Jelinek  
2008-01-03  Jakub Jelinek  
        PR c++/34619
        PR c++/34619
        * testsuite/libmudflap.c++/pass61-frag.cxx: New test.
        * testsuite/libmudflap.c++/pass61-frag.cxx: New test.
2008-01-01  Volker Reichelt  
2008-01-01  Volker Reichelt  
        PR libmudflap/26442
        PR libmudflap/26442
        * testsuite/libmudflap.c++/pass60-frag.cxx: New test.
        * testsuite/libmudflap.c++/pass60-frag.cxx: New test.
2007-10-15  Maciej W. Rozycki  
2007-10-15  Maciej W. Rozycki  
        * configure: Regenerate following changes to ../config/tls.m4.
        * configure: Regenerate following changes to ../config/tls.m4.
2007-07-26  Tom Tromey  
2007-07-26  Tom Tromey  
        * Makefile.in: Rebuilt.
        * Makefile.in: Rebuilt.
        * Makefile.am (clean-local): Removed.
        * Makefile.am (clean-local): Removed.
        (pth/mf-runtime.lo, pth/mf-heuristics.lo, pth/mf-hooks1.lo,
        (pth/mf-runtime.lo, pth/mf-heuristics.lo, pth/mf-hooks1.lo,
        pth/mf-hooks2.lo, pth/mf-hooks3.lo): Likewise.
        pth/mf-hooks2.lo, pth/mf-hooks3.lo): Likewise.
        (libmudflapth_la_SOURCES): List sources.
        (libmudflapth_la_SOURCES): List sources.
        (libmudflapth_la_LIBADD): Clear.
        (libmudflapth_la_LIBADD): Clear.
        (libmudflapth_la_CFLAGS): New variable.
        (libmudflapth_la_CFLAGS): New variable.
2007-07-05  H.J. Lu  
2007-07-05  H.J. Lu  
        * aclocal.m4: Regenerated.
        * aclocal.m4: Regenerated.
2007-06-02  Paolo Bonzini  
2007-06-02  Paolo Bonzini  
        * configure: Regenerate.
        * configure: Regenerate.
2007-05-31  Frank Ch. Eigler  
2007-05-31  Frank Ch. Eigler  
        From Andi Kleen :
        From Andi Kleen :
        * mf-runtime.c (options): Rename structure for compatibility with
        * mf-runtime.c (options): Rename structure for compatibility with
        glibc getopt_long.
        glibc getopt_long.
2007-05-23  Steve Ellcey  
2007-05-23  Steve Ellcey  
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * configure: Regenerate.
        * configure: Regenerate.
        * aclocal.m4: Regenerate.
        * aclocal.m4: Regenerate.
        * testsuite/Makefile.in: Regenerate.
        * testsuite/Makefile.in: Regenerate.
2007-03-14  Uros Bizjak  
2007-03-14  Uros Bizjak  
        * testsuite/libmudflap.cth/pass59-frag.c (main): Fix casting of arg.
        * testsuite/libmudflap.cth/pass59-frag.c (main): Fix casting of arg.
2007-03-01  Brooks Moses  
2007-03-01  Brooks Moses  
        * Makefile.am: Add dummy install-pdf target.
        * Makefile.am: Add dummy install-pdf target.
        * Makefile.in: Regenerate
        * Makefile.in: Regenerate
2007-02-07  Jakub Jelinek  
2007-02-07  Jakub Jelinek  
        PR libgomp/28468
        PR libgomp/28468
        * configure: Regenerate.
        * configure: Regenerate.
2006-12-04  Eric Botcazou  
2006-12-04  Eric Botcazou  
        * configure: Regenerate.
        * configure: Regenerate.
2006-11-13  Daniel Jacobowitz  
2006-11-13  Daniel Jacobowitz  
        * configure: Regenerated.
        * configure: Regenerated.
2006-11-10  Frank Ch. Eigler  
2006-11-10  Frank Ch. Eigler  
        PR libmudflap/28578
        PR libmudflap/28578
        * mf-hooks1.c (__mf_0fn_malloc): Make the bootstrap buffers
        * mf-hooks1.c (__mf_0fn_malloc): Make the bootstrap buffers
        static but not function scope static.
        static but not function scope static.
        (free): Skip deallocation attempts for objects placed into
        (free): Skip deallocation attempts for objects placed into
        bootstrap buffers.
        bootstrap buffers.
        * testsuite/libmudflap.cth/pass59-frag.c: New test.
        * testsuite/libmudflap.cth/pass59-frag.c: New test.
2006-11-06  Frank Ch. Eigler  
2006-11-06  Frank Ch. Eigler  
        From Herman ten Brugge :
        From Herman ten Brugge :
        * mf-runtime.c (__mf_uncache_object): Optimize the code so that
        * mf-runtime.c (__mf_uncache_object): Optimize the code so that
        small and large objects are handled a lot faster.
        small and large objects are handled a lot faster.
2006-11-06  Frank Ch. Eigler  
2006-11-06  Frank Ch. Eigler  
        * configure.ac (__libc_freeres): Look for it.
        * configure.ac (__libc_freeres): Look for it.
        * mf-impl.h (call_libc_freeres): New configuration flag.
        * mf-impl.h (call_libc_freeres): New configuration flag.
        * mf-runtime.c (__mf_set_default_options): Set it by default.
        * mf-runtime.c (__mf_set_default_options): Set it by default.
        (__mfu_report): Call it if needed.
        (__mfu_report): Call it if needed.
        (__mfu_unregister): Remove "unaccessed registered object" warning.
        (__mfu_unregister): Remove "unaccessed registered object" warning.
        * configure, config.h.in: Regenerated.
        * configure, config.h.in: Regenerated.
2006-09-18  Tom Tromey  
2006-09-18  Tom Tromey  
        * configure: Rebuilt.
        * configure: Rebuilt.
2006-06-21  Frank Ch. Eigler  
2006-06-21  Frank Ch. Eigler  
        PR 21274
        PR 21274
        mf-runtime.h installation based on ssp patch for PR 26473 from
        mf-runtime.h installation based on ssp patch for PR 26473 from
        Mark Mitchell  .
        Mark Mitchell  .
        * configure.ac (ACX_NONCANONICAL_TARGET): Use it.
        * configure.ac (ACX_NONCANONICAL_TARGET): Use it.
        * Makefile.am (target_noncanonical): Define.
        * Makefile.am (target_noncanonical): Define.
        (libsubincludedir): New variable.
        (libsubincludedir): New variable.
        (nobase_libsubinclude_HEADERS): Add mf-runtime.h.
        (nobase_libsubinclude_HEADERS): Add mf-runtime.h.
        (include_HEADERS): Remove.
        (include_HEADERS): Remove.
        * configure, aclocal.m4, config.h.in: Regenerated.
        * configure, aclocal.m4, config.h.in: Regenerated.
        * Makefile.in, testsuite/Makefile.in: Likewise.
        * Makefile.in, testsuite/Makefile.in: Likewise.
        * mf-runtime.h: Add #ifndef protection for conflicting _REENTRANT
        * mf-runtime.h: Add #ifndef protection for conflicting _REENTRANT
        and _THREAD_SAFE redefinition values.
        and _THREAD_SAFE redefinition values.
2006-05-23  Carlos O'Donell  
2006-05-23  Carlos O'Donell  
        * Makefile.am: Add install-html target. Add install-html to .PHONY
        * Makefile.am: Add install-html target. Add install-html to .PHONY
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
2006-04-19  Volker Reichelt  
2006-04-19  Volker Reichelt  
        PR mudflap/26789
        PR mudflap/26789
        * testsuite/libmudflap.c++/error1-frag.cxx: New test.
        * testsuite/libmudflap.c++/error1-frag.cxx: New test.
        PR mudflap/26790
        PR mudflap/26790
        * testsuite/libmudflap.c++/error2-frag.cxx: New test.
        * testsuite/libmudflap.c++/error2-frag.cxx: New test.
2006-04-10  Matthias Klose  
2006-04-10  Matthias Klose  
        * testsuite/lib/libmudflap.exp (libmudflap-init): Recognize multilib
        * testsuite/lib/libmudflap.exp (libmudflap-init): Recognize multilib
        directory names containing underscores.
        directory names containing underscores.
2005-11-22  Janis Johnson  
2005-11-22  Janis Johnson  
        * testsuite/lib/libmudflap.exp (libmudflap-init): Remove -static from
        * testsuite/lib/libmudflap.exp (libmudflap-init): Remove -static from
        MUDFLAP_FLAGS if static library not supported.
        MUDFLAP_FLAGS if static library not supported.
        * testsuite/libmudflap.c/cfrags.exp (MUDFLAP_FLAGS): new.
        * testsuite/libmudflap.c/cfrags.exp (MUDFLAP_FLAGS): new.
        * testsuite/libmudflap.c/externs.exp: Ditto.
        * testsuite/libmudflap.c/externs.exp: Ditto.
        * testsuite/libmudflap.c++/ctors.exp: Ditto.
        * testsuite/libmudflap.c++/ctors.exp: Ditto.
        * testsuite/libmudflap.c++/c++frags.exp: Ditto.
        * testsuite/libmudflap.c++/c++frags.exp: Ditto.
        * testsuite/libmudflap.cth/cthfrags.exp: Ditto.
        * testsuite/libmudflap.cth/cthfrags.exp: Ditto.
2005-10-04  James E Wilson  
2005-10-04  James E Wilson  
        * configure.ac (mudflap_cv_entry_point): Use quadrigraphs to declare
        * configure.ac (mudflap_cv_entry_point): Use quadrigraphs to declare
        $name as array of characters with unknown bound.  Also store into the
        $name as array of characters with unknown bound.  Also store into the
        array.
        array.
        * configure: Regenerate.
        * configure: Regenerate.
2005-09-30  James E. Wilson  
2005-09-30  James E. Wilson  
        * configure.ac (pthread.h): Use AC_CHECK_HEADERS instead of
        * configure.ac (pthread.h): Use AC_CHECK_HEADERS instead of
        AC_CHECK_HEADER.
        AC_CHECK_HEADER.
        (target_thread_file): New.  Set from sed'ed gcc output.
        (target_thread_file): New.  Set from sed'ed gcc output.
        (posix_threads): New.  Set from target_thread_file.  Use instead of
        (posix_threads): New.  Set from target_thread_file.  Use instead of
        ac_have_pthread_h.
        ac_have_pthread_h.
        (pthread_create_version): Move initialization before code using it.
        (pthread_create_version): Move initialization before code using it.
        * configure: Regenerate.
        * configure: Regenerate.
        * mf-heuristics.c (_end, ENTRY_POINT): Make them arrays with unknown
        * mf-heuristics.c (_end, ENTRY_POINT): Make them arrays with unknown
        bounds.
        bounds.
2005-09-29  James E. Wilson  
2005-09-29  James E. Wilson  
        * mf-hooks1.c (__mf_0fn_mmap, mmap, __mf_0fn_munmap, munmap): Protect
        * mf-hooks1.c (__mf_0fn_mmap, mmap, __mf_0fn_munmap, munmap): Protect
        with HAVE_MMAP ifdef.
        with HAVE_MMAP ifdef.
2005-09-23  Frank Ch. Eigler  
2005-09-23  Frank Ch. Eigler  
        PR 23084.
        PR 23084.
        * mf-hooks2.c (accept): Tolerate NULL sockaddr* parameter.
        * mf-hooks2.c (accept): Tolerate NULL sockaddr* parameter.
2005-09-23  Frank Ch. Eigler  
2005-09-23  Frank Ch. Eigler  
        * testsuite/libmudflap.c++/pass58-frag.cxx: New test for heisenbug 19319.
        * testsuite/libmudflap.c++/pass58-frag.cxx: New test for heisenbug 19319.
2005-09-23  Tom Tromey  
2005-09-23  Tom Tromey  
        * aclocal.m4, configure: Rebuilt.
        * aclocal.m4, configure: Rebuilt.
        * configure.ac: Use GCC_CHECK_TLS.
        * configure.ac: Use GCC_CHECK_TLS.
        * acinclude.m4 (LIBMUDFLAP_CHECK_TLS, LIBMUDFLAP_ENABLE): Moved
        * acinclude.m4 (LIBMUDFLAP_CHECK_TLS, LIBMUDFLAP_ENABLE): Moved
        to ../config.
        to ../config.
2005-08-22  Jim Wilson  
2005-08-22  Jim Wilson  
        * mf-hooks2.c (MF_REGISTER_fopen): Define to __MF_TYPE_STATIC when
        * mf-hooks2.c (MF_REGISTER_fopen): Define to __MF_TYPE_STATIC when
        __FreeBSD__ is defined.
        __FreeBSD__ is defined.
2005-08-17  Jim Wilson  
2005-08-17  Jim Wilson  
        * mf-hooks1.c (malloc, calloc, realloc, free,
        * mf-hooks1.c (malloc, calloc, realloc, free,
        __mf_wrap_alloca_indirect): Call BEGIN_MALLOC_PROTECT before calling
        __mf_wrap_alloca_indirect): Call BEGIN_MALLOC_PROTECT before calling
        the real routines, and END_MALLOC_PROTECT afterwards.
        the real routines, and END_MALLOC_PROTECT afterwards.
        * mf-impl.h (enum __mf_state_enum): Expand comment.  Add in_malloc.
        * mf-impl.h (enum __mf_state_enum): Expand comment.  Add in_malloc.
        (BEGIN_PROTECT): Handle in_malloc state.
        (BEGIN_PROTECT): Handle in_malloc state.
        (BEGIN_MALLOC_PROTECT, END_MALLOC_PROTECT): New.
        (BEGIN_MALLOC_PROTECT, END_MALLOC_PROTECT): New.
        * testsuite/libmudflap.c/hook2-allocstuff.c: New.
        * testsuite/libmudflap.c/hook2-allocstuff.c: New.
2005-08-17  Kelley Cook  
2005-08-17  Kelley Cook  
        * All files: Update FSF address.
        * All files: Update FSF address.
2005-08-15  Ulrich Weigand  
2005-08-15  Ulrich Weigand  
        * mf-hooks3.c (main_seen_p): Remove.
        * mf-hooks3.c (main_seen_p): Remove.
        (__mf_get_state): Remove attempt to recognize the main thread.
        (__mf_get_state): Remove attempt to recognize the main thread.
2005-08-15  Maciej W. Rozycki  
2005-08-15  Maciej W. Rozycki  
        * configure.ac: Test for the name of the symbol used for the entry
        * configure.ac: Test for the name of the symbol used for the entry
        point; define ENTRY_POINT to the result.
        point; define ENTRY_POINT to the result.
        * configure: Regenerate.
        * configure: Regenerate.
        * config.h.in: Regenerate.
        * config.h.in: Regenerate.
        * mf-heuristics.c: Replace _start with ENTRY_POINT throughout.
        * mf-heuristics.c: Replace _start with ENTRY_POINT throughout.
2005-08-14  Ulrich Weigand  
2005-08-14  Ulrich Weigand  
        * mf-runtime.c (__mf_state_1): Initialize to reentrant.
        * mf-runtime.c (__mf_state_1): Initialize to reentrant.
        (__mf_init): Set thread state active.
        (__mf_init): Set thread state active.
        * mf-hooks3.c (__mf_pthread_spawner): Always set thread
        * mf-hooks3.c (__mf_pthread_spawner): Always set thread
        state active.
        state active.
        (pthread_create wrapper): Always use thread spawner.
        (pthread_create wrapper): Always use thread spawner.
        * testsuite/libmudflap.cth/pass37-frag.c: Increase timeout.
        * testsuite/libmudflap.cth/pass37-frag.c: Increase timeout.
        * testsuite/libmudflap.cth/pass39-frag.c: Likewise.
        * testsuite/libmudflap.cth/pass39-frag.c: Likewise.
2005-07-16  Richard Henderson  
2005-07-16  Richard Henderson  
        * acinclude.m4: New file.
        * acinclude.m4: New file.
        * configure.ac: Invoke LIBMUDFLAP_CHECK_TLS.
        * configure.ac: Invoke LIBMUDFLAP_CHECK_TLS.
        * configure, config.h.in, Makefile.in, testsuite/Makefile.in: Rebuild.
        * configure, config.h.in, Makefile.in, testsuite/Makefile.in: Rebuild.
        * mf-hooks1.c (__mf_0fn_malloc): Move body from ...
        * mf-hooks1.c (__mf_0fn_malloc): Move body from ...
        (__mf_0fn_calloc): ... here.
        (__mf_0fn_calloc): ... here.
        * mf-hooks3.c (struct pthread_info): Remove.
        * mf-hooks3.c (struct pthread_info): Remove.
        (__mf_pthread_info, __mf_pthread_info_idx): Remove.
        (__mf_pthread_info, __mf_pthread_info_idx): Remove.
        (LIBMUDFLAPTH_THREADS_MAX): Set to 1021.
        (LIBMUDFLAPTH_THREADS_MAX): Set to 1021.
        (struct mf_thread_data): New.
        (struct mf_thread_data): New.
        (mf_thread_data, mf_thread_data_lock): New.
        (mf_thread_data, mf_thread_data_lock): New.
        (__mf_allocate_blank_threadinfo): Remove.
        (__mf_allocate_blank_threadinfo): Remove.
        (__mf_find_threadinfo): Rewrite and simplify.  Only use if TLS is
        (__mf_find_threadinfo): Rewrite and simplify.  Only use if TLS is
        not available.
        not available.
        (__mf_state_perthread): Remove.
        (__mf_state_perthread): Remove.
        (__mf_get_state, __mf_set_state): New.
        (__mf_get_state, __mf_set_state): New.
        (__mf_pthread_cleanup): Use &errno, rather than saved pointer.
        (__mf_pthread_cleanup): Use &errno, rather than saved pointer.
        Update mf_thread_data killing procedure.
        Update mf_thread_data killing procedure.
        (__mf_pthread_spawner): Similarly.
        (__mf_pthread_spawner): Similarly.
        (__mf_0fn_pthread_create): Only use wrapper if necessary.  Remove
        (__mf_0fn_pthread_create): Only use wrapper if necessary.  Remove
        code to allocate thread stack space.
        code to allocate thread stack space.
        (__mf_0fn_pthread_join, pthread_join): Remove.
        (__mf_0fn_pthread_join, pthread_join): Remove.
        (__mf_0fn_pthread_exit, pthread_exit): Remove.
        (__mf_0fn_pthread_exit, pthread_exit): Remove.
        * mf-impl.h (dyn_pthread_join, dyn_pthread_exit): Remove.
        * mf-impl.h (dyn_pthread_join, dyn_pthread_exit): Remove.
        (__mf_state_1): Rename from __mf_state; use TLS when available.
        (__mf_state_1): Rename from __mf_state; use TLS when available.
        (__mf_get_state, __mf_set_state): New.  Update all users.
        (__mf_get_state, __mf_set_state): New.  Update all users.
        * mf-runtime.c (begin_recursion_protect1): New.
        * mf-runtime.c (begin_recursion_protect1): New.
        (BEGIN_RECURSION_PROTECT): Use it.
        (BEGIN_RECURSION_PROTECT): Use it.
        (__mf_state_1): Rename from __mf_state; use TLS when available.
        (__mf_state_1): Rename from __mf_state; use TLS when available.
        (threads_active_p): Remove.
        (threads_active_p): Remove.
        (__mf_usage): Compute it directly.
        (__mf_usage): Compute it directly.
2005-06-19  Ulrich Weigand  
2005-06-19  Ulrich Weigand  
        * testsuite/libmudflap.c/externs-1.c (main): Add return statement.
        * testsuite/libmudflap.c/externs-1.c (main): Add return statement.
2005-06-15  Frank Ch. Eigler  
2005-06-15  Frank Ch. Eigler  
        Fix for uncaching bug reported by Herman ten Brugge.
        Fix for uncaching bug reported by Herman ten Brugge.
        * mf-runtime.c (__mf_uncache_object): Search whole cache.
        * mf-runtime.c (__mf_uncache_object): Search whole cache.
        * testsuite/libmudflap.c/fail40-frag.c: New test.
        * testsuite/libmudflap.c/fail40-frag.c: New test.
2005-05-23  Alfred M. Szmidt  
2005-05-23  Alfred M. Szmidt  
        PR libmudflap/21724
        PR libmudflap/21724
        * Makefile.am (AM_MAKEFLAGS): Pass includedir.
        * Makefile.am (AM_MAKEFLAGS): Pass includedir.
        * Makefile.in: Amend.
        * Makefile.in: Amend.
2005-06-14  Frank Ch. Eigler  
2005-06-14  Frank Ch. Eigler  
        PR mudflap/21023
        PR mudflap/21023
        * testsuite/libmudflap.c/externs.exp, externs-{1,2}.c: New test files.
        * testsuite/libmudflap.c/externs.exp, externs-{1,2}.c: New test files.
        * testsuite/libmudflap.c/cfrags.exp: Bypass new sources.
        * testsuite/libmudflap.c/cfrags.exp: Bypass new sources.
2005-06-14  Frank Ch. Eigler  
2005-06-14  Frank Ch. Eigler  
        PR libmudflap/21094
        PR libmudflap/21094
        * testsuite/libmudflap.c++/*.exp: Assert build tree g++.
        * testsuite/libmudflap.c++/*.exp: Assert build tree g++.
2005-06-14  Frank Ch. Eigler  
2005-06-14  Frank Ch. Eigler  
        PR mudflap/22064
        PR mudflap/22064
        * mf-impl.h (mudflap_mode, violation_mode): Make these ordinary
        * mf-impl.h (mudflap_mode, violation_mode): Make these ordinary
        unsigned vars with #defines instead of enums.
        unsigned vars with #defines instead of enums.
2005-05-09  Mike Stump  
2005-05-09  Mike Stump  
        * configure: Regenerate.
        * configure: Regenerate.
2005-04-12  Mike Stump  
2005-04-12  Mike Stump  
        * configure: Regenerate.
        * configure: Regenerate.
2005-04-12  Frank Ch. Eigler  
2005-04-12  Frank Ch. Eigler  
        PR mudflap/19266
        PR mudflap/19266
        * testsuite/libmudflap.c++/c++frags.exp: Also test -O permutation.
        * testsuite/libmudflap.c++/c++frags.exp: Also test -O permutation.
        * testsuite/libmudflap.c++/pass57-frag.cxx: New test.
        * testsuite/libmudflap.c++/pass57-frag.cxx: New test.
2005-04-04  Alan Modra  
2005-04-04  Alan Modra  
        * mf-runtime.c (__mfu_unregister): Warning fix for char unsigned.
        * mf-runtime.c (__mfu_unregister): Warning fix for char unsigned.
2005-03-31  Mike Stump  
2005-03-31  Mike Stump  
        * mf-runtime.h: Add libmudflap copyright clause.
        * mf-runtime.h: Add libmudflap copyright clause.
2005-03-21  Mike Stump  
2005-03-21  Mike Stump  
        * mf-heuristics.c: Fix whitespace at end of line.
        * mf-heuristics.c: Fix whitespace at end of line.
        * mf-hooks1.c: Likewise.
        * mf-hooks1.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-impl.h: Likewise.
        * mf-impl.h: Likewise.
        * mf-runtime.c: Likewise.
        * mf-runtime.c: Likewise.
        * mf-runtime.h: Likewise.
        * mf-runtime.h: Likewise.
2005-03-21  Zack Weinberg  
2005-03-21  Zack Weinberg  
        * configure.ac: Do not invoke TL_AC_GCC_VERSION.
        * configure.ac: Do not invoke TL_AC_GCC_VERSION.
        In all substitutions, expand gcc_version in Makefile.
        In all substitutions, expand gcc_version in Makefile.
        * aclocal.m4, configure: Regenerate.
        * aclocal.m4, configure: Regenerate.
        * Makefile.am: Set gcc_version.
        * Makefile.am: Set gcc_version.
        * Makefile.in, testsuite/Makefile.in: Regenerate.
        * Makefile.in, testsuite/Makefile.in: Regenerate.
2005-03-17  Frank Ch. Eigler  
2005-03-17  Frank Ch. Eigler  
        * mf-runtime.c (__mfu_check): Respect ignore_reads configuration.
        * mf-runtime.c (__mfu_check): Respect ignore_reads configuration.
        * testsuite/libmudflap.c/{pass56,fail39}-frag.c: New tests.
        * testsuite/libmudflap.c/{pass56,fail39}-frag.c: New tests.
2005-02-13  Frank Ch. Eigler  
2005-02-13  Frank Ch. Eigler  
        PR mudflap/19319
        PR mudflap/19319
        * testsuite/libmudflap.c++/pass55-frag.c: New test.
        * testsuite/libmudflap.c++/pass55-frag.c: New test.
2005-01-05  Richard Henderson  
2005-01-05  Richard Henderson  
        * testsuite/libmudflap.c/pass32-frag.c: Fix typo.
        * testsuite/libmudflap.c/pass32-frag.c: Fix typo.
2005-01-02  Greg McGary  
2005-01-02  Greg McGary  
        * mf-impl.h (uintptr_t): Get typedef via stdint.h or define explicitly.
        * mf-impl.h (uintptr_t): Get typedef via stdint.h or define explicitly.
        * mf-runtime.h: New file, replaces mf-runtime.h.in.
        * mf-runtime.h: New file, replaces mf-runtime.h.in.
        * configure.ac (AC_CONFIG_FILES): mf-runtime.h is no longer generated.
        * configure.ac (AC_CONFIG_FILES): mf-runtime.h is no longer generated.
        * Makefile.in: Ditto.
        * Makefile.in: Ditto.
        * testsuite/lib/libmudflap.exp: Add -I${srcdir}/.. to get mf-runtime.h
        * testsuite/lib/libmudflap.exp: Add -I${srcdir}/.. to get mf-runtime.h
        * testsuite/libmudflap.c/pass32-frag.c: s/uintptr_t/__mf_uintptr_t/
        * testsuite/libmudflap.c/pass32-frag.c: s/uintptr_t/__mf_uintptr_t/
        * testsuite/libmudflap.c/fail36-frag.c: New test.
        * testsuite/libmudflap.c/fail36-frag.c: New test.
        * testsuite/libmudflap.c/fail37-frag.c: New test.
        * testsuite/libmudflap.c/fail37-frag.c: New test.
        * testsuite/libmudflap.c/fail38-frag.c: New test.
        * testsuite/libmudflap.c/fail38-frag.c: New test.
2004-12-08  Kelley Cook  
2004-12-08  Kelley Cook  
        * Makefile.am: Add ../config to ACLOCAL_AMFLAGS.
        * Makefile.am: Add ../config to ACLOCAL_AMFLAGS.
        * aclocal.m4, Makefile.in, testsuite/Makefile.in: Regenerate.
        * aclocal.m4, Makefile.in, testsuite/Makefile.in: Regenerate.
2004-12-02  Richard Sandiford  
2004-12-02  Richard Sandiford  
        * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
        * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
        * aclocal.m4: Include ../config/gcc-version.m4.
        * aclocal.m4: Include ../config/gcc-version.m4.
        * configure, Makefile.in, testsuite/Makefile.in: Regenerate.
        * configure, Makefile.in, testsuite/Makefile.in: Regenerate.
2004-11-29  Kelley Cook  
2004-11-29  Kelley Cook  
        * Makefile.am: Define ACLOCAL_AMFLAGS.
        * Makefile.am: Define ACLOCAL_AMFLAGS.
        * acinclude.m4: Remove.
        * acinclude.m4: Remove.
        * stamp-h.in: Remove superfluous stamp file.
        * stamp-h.in: Remove superfluous stamp file.
        * aclocal.m4, configure, Makefile.in: Regenerate.
        * aclocal.m4, configure, Makefile.in: Regenerate.
        * testsuite/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.
2004-11-24  Kelley Cook  
2004-11-24  Kelley Cook  
        * Makefile.am: Revert previous.
        * Makefile.am: Revert previous.
        * acinclude.m4: Restore.
        * acinclude.m4: Restore.
        * aclocal.m4, configure, Makefile.in: Regenerate.
        * aclocal.m4, configure, Makefile.in: Regenerate.
        * testsuite/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.
2004-11-24  Kelley Cook  
2004-11-24  Kelley Cook  
        * Makefile.am: Define ACLOCAL_AMFLAGS.
        * Makefile.am: Define ACLOCAL_AMFLAGS.
        * acinclude.m4: Remove.
        * acinclude.m4: Remove.
        * aclocal.m4, configure, Makefile.in: Regenerate.
        * aclocal.m4, configure, Makefile.in: Regenerate.
        * testsuite/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.
2004-11-23  John David Anglin  
2004-11-23  John David Anglin  
        * testsuite/lib/libmudflap.exp: Use new procs in target-libpath.exp.
        * testsuite/lib/libmudflap.exp: Use new procs in target-libpath.exp.
2004-11-23  Kelley Cook  
2004-11-23  Kelley Cook  
        * Makefile.in, configure, aclocal.m4: Regenerate with automake 1.9.3.
        * Makefile.in, configure, aclocal.m4: Regenerate with automake 1.9.3.
        * testsuite/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.
2004-11-01  Andreas Schwab  
2004-11-01  Andreas Schwab  
        * configure.ac: (target_alias): Default to $host_alias, not
        * configure.ac: (target_alias): Default to $host_alias, not
        $target.
        $target.
        * configure: Regenerated.
        * configure: Regenerated.
2004-10-28  Frank Ch. Eigler  
2004-10-28  Frank Ch. Eigler  
        * testsuite/libmudflap.c/fail35-,pass53-,pass54-frag.c: New tests.
        * testsuite/libmudflap.c/fail35-,pass53-,pass54-frag.c: New tests.
        * testsuite/libmudflap.c/pass35-frag.c: Correct embedded warning
        * testsuite/libmudflap.c/pass35-frag.c: Correct embedded warning
        message.
        message.
2004-10-25  Eric Botcazou  
2004-10-25  Eric Botcazou  
        PR other/18138
        PR other/18138
        * testsuite/lib/libmudflap.exp: Accept more than one multilib libgcc.
        * testsuite/lib/libmudflap.exp: Accept more than one multilib libgcc.
2004-10-12  Frank Ch. Eigler  
2004-10-12  Frank Ch. Eigler  
        * configure.ac: Check for more headers, functions.
        * configure.ac: Check for more headers, functions.
        * mf-hooks2.c (mkbuffer, unmkbuffer): New helper functions for
        * mf-hooks2.c (mkbuffer, unmkbuffer): New helper functions for
        tracking overridden FILE buffers.
        tracking overridden FILE buffers.
        (fopen, setvbuf): New/revised hook functions for buffer overriding.
        (fopen, setvbuf): New/revised hook functions for buffer overriding.
        (setbuf,setlinebuf,fdopen,freopen,fopen64,freopen64,fclose): Ditto.
        (setbuf,setlinebuf,fdopen,freopen,fopen64,freopen64,fclose): Ditto.
        (fflush): Accept given NULL stream (means "all streams").
        (fflush): Accept given NULL stream (means "all streams").
        * mf-runtime.h.in:
        * mf-runtime.h.in:
        * mf-runtime.c (__mfu_check): Accept accesses that span adjacent
        * mf-runtime.c (__mfu_check): Accept accesses that span adjacent
        HEAP/GUESS objects.
        HEAP/GUESS objects.
        (LOOKUP_CACHE_SIZE_MAX): Raise to 64K entries tentatively.
        (LOOKUP_CACHE_SIZE_MAX): Raise to 64K entries tentatively.
        (__mf_adapt_cache): Use them all.
        (__mf_adapt_cache): Use them all.
        * testsuite/libmudflap.c/pass35-frag.c: Update warning message.
        * testsuite/libmudflap.c/pass35-frag.c: Update warning message.
        * testsuite/libmudflap.c++/ctors.exp: Ditto.
        * testsuite/libmudflap.c++/ctors.exp: Ditto.
        * testsuite/libmudflap.c/{pass51,pass52}-frag.c: New tests.
        * testsuite/libmudflap.c/{pass51,pass52}-frag.c: New tests.
        * configure, config.h.in: Regenerated.
        * configure, config.h.in: Regenerated.
2004-10-05  Frank Ch. Eigler  
2004-10-05  Frank Ch. Eigler  
        * configure.ac: Checking for sys/socket.h once is enough.
        * configure.ac: Checking for sys/socket.h once is enough.
        * configure: Regenerated.
        * configure: Regenerated.
2004-10-04  Frank Ch. Eigler  
2004-10-04  Frank Ch. Eigler  
        * configure.ac: Look for more headers & functions.
        * configure.ac: Look for more headers & functions.
        * mf-hooks2.c (getmntent, inet_ntoa, getproto*): New wrapper functions.
        * mf-hooks2.c (getmntent, inet_ntoa, getproto*): New wrapper functions.
        * mf-runtime.h.in: Add new "#pragma redefine_extname"s for them.
        * mf-runtime.h.in: Add new "#pragma redefine_extname"s for them.
        * mf-runtime.c (options): Clean up integer signedness warnings.
        * mf-runtime.c (options): Clean up integer signedness warnings.
        (main): Add a declaration to fix a warning.
        (main): Add a declaration to fix a warning.
        * mf-hooks3.c (pthread_exit): Add not-reached exit() to wrapper.
        * mf-hooks3.c (pthread_exit): Add not-reached exit() to wrapper.
        * configure, config.h.in: Regenerated.
        * configure, config.h.in: Regenerated.
2004-10-02  Frank Ch. Eigler  
2004-10-02  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass50-frag.c, fail33-frag.c, fail34-frag.c:
        * testsuite/libmudflap.c/pass50-frag.c, fail33-frag.c, fail34-frag.c:
        New tests for proper base/limit checking for aggregates.
        New tests for proper base/limit checking for aggregates.
2004-09-15  Joseph S. Myers  
2004-09-15  Joseph S. Myers  
        * testsuite/libmudflap.c/pass35-frag.c: Update expected message.
        * testsuite/libmudflap.c/pass35-frag.c: Update expected message.
2004-09-07  Frank Ch. Eigler  
2004-09-07  Frank Ch. Eigler  
        * configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
        * configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
        * mf-hooks2.c (strerror): Unregister previous string returned by
        * mf-hooks2.c (strerror): Unregister previous string returned by
        previous strerror.
        previous strerror.
        (getlogin,cuserid,getpwnam,getpwuid,getgrnam,getgrgid): New wrappers.
        (getlogin,cuserid,getpwnam,getpwuid,getgrnam,getgrgid): New wrappers.
        (getservent,getservbyname,getservbyport,gai_strerror): Ditto.
        (getservent,getservbyname,getservbyport,gai_strerror): Ditto.
        * mf-runtime.h.in: Add redefine_extname pragmas for them all.
        * mf-runtime.h.in: Add redefine_extname pragmas for them all.
        * mf-runtime.c (__mf_describe_object): Clarify object life status.
        * mf-runtime.c (__mf_describe_object): Clarify object life status.
        * testsuite/libmudflap.c/pass48-frag.c, pass49-frag.c, fail32-frag.c:
        * testsuite/libmudflap.c/pass48-frag.c, pass49-frag.c, fail32-frag.c:
        New tests.
        New tests.
        * configure, config.h.in: Regenerated.
        * configure, config.h.in: Regenerated.
2004-08-03  Dale Johannesen  
2004-08-03  Dale Johannesen  
         * mf-runtime.c: Conditionalize POSIX_SOURCE for Darwin.
         * mf-runtime.c: Conditionalize POSIX_SOURCE for Darwin.
2004-08-03  Frank Ch. Eigler  
2004-08-03  Frank Ch. Eigler  
        * mf-runtime.c (compare_uintptr_t): Remove function.  Inline
        * mf-runtime.c (compare_uintptr_t): Remove function.  Inline
        simplified contents in all former callers.
        simplified contents in all former callers.
2004-07-27  Ulrich Weigand  
2004-07-27  Ulrich Weigand  
        * mf-runtime.c (__mf_fini): Set mudflap_mode to mode_nop in
        * mf-runtime.c (__mf_fini): Set mudflap_mode to mode_nop in
        the statically linked case.
        the statically linked case.
2004-07-27  Frank Ch. Eigler  
2004-07-27  Frank Ch. Eigler  
        * splay-tree.[ch]: Remove.  Merge contents into ...
        * splay-tree.[ch]: Remove.  Merge contents into ...
        * mf-runtime.c: ... here, renaming symbols and making all functions
        * mf-runtime.c: ... here, renaming symbols and making all functions
        static.  Remove unused min/max functions.
        static.  Remove unused min/max functions.
        * Makefile.am: Forget about splay-tree.[ch].
        * Makefile.am: Forget about splay-tree.[ch].
        * Makefile.in, testsuite/Makefile.in: Regenerated.
        * Makefile.in, testsuite/Makefile.in: Regenerated.
2004-07-21  Frank Ch. Eigler  
2004-07-21  Frank Ch. Eigler  
        * mf-runtime.c (__mfu_check): Remove mistaken mode-nop handling.
        * mf-runtime.c (__mfu_check): Remove mistaken mode-nop handling.
        (__mfu_usage): Include (C) 2004.
        (__mfu_usage): Include (C) 2004.
        * mf-hooks3.c (__mf_find_threadinfo): Don't call tracing functions
        * mf-hooks3.c (__mf_find_threadinfo): Don't call tracing functions
        here.  Include a comment explaining why.
        here.  Include a comment explaining why.
2004-07-20  Frank Ch. Eigler  
2004-07-20  Frank Ch. Eigler  
        * mf-impl.h (__mf_options): Add ignore_reads and timestamps fields.
        * mf-impl.h (__mf_options): Add ignore_reads and timestamps fields.
        * mf-runtime.c (options): Give them a name.
        * mf-runtime.c (options): Give them a name.
        (__mf_set_default_options): Set them.
        (__mf_set_default_options): Set them.
        (__mf_insert_new_object, __mfu_unregister): Optionalize timestamps.
        (__mf_insert_new_object, __mfu_unregister): Optionalize timestamps.
        (__mf_violation): Warning cleanup.
        (__mf_violation): Warning cleanup.
        * mf-impl.h (MF_VALIDATE_EXTENT): Support ignore_reads option.
        * mf-impl.h (MF_VALIDATE_EXTENT): Support ignore_reads option.
        * splay-tree.c (splay_tree_delete_helper): Remove obsolete decl.
        * splay-tree.c (splay_tree_delete_helper): Remove obsolete decl.
2004-07-15  Frank Ch. Eigler  
2004-07-15  Frank Ch. Eigler  
        g++/15861
        g++/15861
        * mf-runtime.c (__mf_init): Make it non-static.  Tolerate
        * mf-runtime.c (__mf_init): Make it non-static.  Tolerate
        repeated invocation.
        repeated invocation.
2004-07-09  Frank Ch. Eigler  
2004-07-09  Frank Ch. Eigler  
        Test case for g++/15861
        Test case for g++/15861
        * testsuite/libmudflap.c++/ctors-[12].cxx: New test case halves.
        * testsuite/libmudflap.c++/ctors-[12].cxx: New test case halves.
        * testsuite/libmudflap.c++/ctors.exp: Driver.
        * testsuite/libmudflap.c++/ctors.exp: Driver.
        * testsuite/libmudflap.c++/c++frags.exp: Elide redundant default.
        * testsuite/libmudflap.c++/c++frags.exp: Elide redundant default.
        Look only for *frag* test cases.
        Look only for *frag* test cases.
2004-07-08  Frank Ch. Eigler  
2004-07-08  Frank Ch. Eigler  
        ANSI C conversion, libmudflap specialization, recursion limiting.
        ANSI C conversion, libmudflap specialization, recursion limiting.
        * splay-tree.h (splay_tree_{de,}allocate_fn): Remove allocation_data
        * splay-tree.h (splay_tree_{de,}allocate_fn): Remove allocation_data
        argument and indirection function pointers, update callers.
        argument and indirection function pointers, update callers.
        (splay_tree_s): Add statistics and recursion control fields
        (splay_tree_s): Add statistics and recursion control fields
        num_keys, max_depth, depth, rebalance_p.
        num_keys, max_depth, depth, rebalance_p.
        * splay-tree.c (splay_tree_splay_helper): Track recursion depth.
        * splay-tree.c (splay_tree_splay_helper): Track recursion depth.
        Back out of search if it exceeds limit.
        Back out of search if it exceeds limit.
        (splay_tree_splay): Manage recursion limiting with rebalancing as
        (splay_tree_splay): Manage recursion limiting with rebalancing as
        needed.
        needed.
        (splay_tree_new): More initialization.
        (splay_tree_new): More initialization.
        (splay_tree_rebalance): New function.
        (splay_tree_rebalance): New function.
        (splay_tree_foreach): Rewrite using nonrecursive logic.
        (splay_tree_foreach): Rewrite using nonrecursive logic.
        (splay_tree_xmalloc_allocate, splay_tree_xmalloc_deallocate):
        (splay_tree_xmalloc_allocate, splay_tree_xmalloc_deallocate):
        Remove.  Point indirect calls to mf-runtime.c's routines.
        Remove.  Point indirect calls to mf-runtime.c's routines.
        (splay_tree_compare_ints, splay_tree_compare_pointers): Remove unused
        (splay_tree_compare_ints, splay_tree_compare_pointers): Remove unused
        functions.
        functions.
        (splay_tree_delete, splay_tree_delete_helper): Ditto.
        (splay_tree_delete, splay_tree_delete_helper): Ditto.
        * testsuite/heap-scalestress.c: New test based on one from
        * testsuite/heap-scalestress.c: New test based on one from
        Eyal Lebedinsky :
        Eyal Lebedinsky :
2004-07-05  Matthias Klose  
2004-07-05  Matthias Klose  
        * libtool-version: New.
        * libtool-version: New.
        * Makefile.am (libmudflap_la_LDFLAGS, libmudflapth_la_LDFLAGS):
        * Makefile.am (libmudflap_la_LDFLAGS, libmudflapth_la_LDFLAGS):
        Use -version-info for soname.
        Use -version-info for soname.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * configure.ac: Remove libtool_VERSION macro
        * configure.ac: Remove libtool_VERSION macro
        * configure: Regenerate
        * configure: Regenerate
2004-07-05  Zack Weinberg  
2004-07-05  Zack Weinberg  
        * mf-runtime.h.in: Wrap declarations of struct __mf_cache,
        * mf-runtime.h.in: Wrap declarations of struct __mf_cache,
        __mf_lookup_cache, __mf_lc_mask, or __mf_lc_shift in
        __mf_lookup_cache, __mf_lc_mask, or __mf_lc_shift in
        #ifndef _MUDFLAP.
        #ifndef _MUDFLAP.
2004-06-29  Frank Ch. Eigler  
2004-06-29  Frank Ch. Eigler  
        Splay tree implementation fork.
        Splay tree implementation fork.
        * splay-tree.c, splay-tree.h: Copied & modified from libiberty.
        * splay-tree.c, splay-tree.h: Copied & modified from libiberty.
        Use hard-coded comparison function for uintptr_t.  Remove key/value
        Use hard-coded comparison function for uintptr_t.  Remove key/value
        deallocation logic.  Cache last splayed key for consecutive lookups.
        deallocation logic.  Cache last splayed key for consecutive lookups.
        * Makefile.am, Makefile.in: Use them, don't link to them.
        * Makefile.am, Makefile.in: Use them, don't link to them.
        * mf-runtime.c (__mf_object_tree): Adapt to simpler splay_tree_new.
        * mf-runtime.c (__mf_object_tree): Adapt to simpler splay_tree_new.
        (__mf_find_objects2): Flip successor/predecessor search sequence.
        (__mf_find_objects2): Flip successor/predecessor search sequence.
        * ansidecl.h, libiberty.h: Removed dummy files.
        * ansidecl.h, libiberty.h: Removed dummy files.
2004-06-29  Nick Clifton  
2004-06-29  Nick Clifton  
        * configure.ac (AC_CHECK_HEADERS): Add dirent.h
        * configure.ac (AC_CHECK_HEADERS): Add dirent.h
        * configure: Regenerate.
        * configure: Regenerate.
        * mf-hooks2.c: Surround uses of dirent.h with #ifdef
        * mf-hooks2.c: Surround uses of dirent.h with #ifdef
        HAVE_DIRENT_H.
        HAVE_DIRENT_H.
        Remove spurious inclusion of .
        Remove spurious inclusion of .
2004-06-29  Nick Clifton  
2004-06-29  Nick Clifton  
        * mf-runtime.c (pthread_join): Only apply the weak pragma if the
        * mf-runtime.c (pthread_join): Only apply the weak pragma if the
        function actually exists.
        function actually exists.
2004-06-25  Frank Ch. Eigler  
2004-06-25  Frank Ch. Eigler  
        * ansidecl.h, libiberty.h: New dummy files for building splay-tree.
        * ansidecl.h, libiberty.h: New dummy files for building splay-tree.
        * config.h.in: Regenerated.
        * config.h.in: Regenerated.
2004-06-24  Frank Ch. Eigler  
2004-06-24  Frank Ch. Eigler  
        Adopt splay trees for object database.
        Adopt splay trees for object database.
        * Makefile.am: Copy splay-tree.* from libiberty.
        * Makefile.am: Copy splay-tree.* from libiberty.
        * Makefile.in, testsuite/Makefile.in: Regenerated.
        * Makefile.in, testsuite/Makefile.in: Regenerated.
        * mf-runtime.h.in (__mf_unregister): Add third parameter (type).
        * mf-runtime.h.in (__mf_unregister): Add third parameter (type).
        * mf-hooks[123].c (*): Add new third parameter to mf_unregister.
        * mf-hooks[123].c (*): Add new third parameter to mf_unregister.
        * mf-impl.h (BEGIN_PROTECT): Remove some trace text.
        * mf-impl.h (BEGIN_PROTECT): Remove some trace text.
        * mf-runtime.c: Rewrite code dealing with object database to use
        * mf-runtime.c: Rewrite code dealing with object database to use
        libiberty splay trees.  Remove tree liveness aging option.
        libiberty splay trees.  Remove tree liveness aging option.
        * testsuite/libmudflap.c/fail18-frag.c: Add volatile flag.
        * testsuite/libmudflap.c/fail18-frag.c: Add volatile flag.
2004-06-15  Paolo Bonzini  
2004-06-15  Paolo Bonzini  
        * configure.ac: New name of configure.in.  Update
        * configure.ac: New name of configure.in.  Update
        AC_INIT, AC_CONFIG_SRCDIR, AC_CONFIG_HEADERS, AC_CONFIG_FILES,
        AC_INIT, AC_CONFIG_SRCDIR, AC_CONFIG_HEADERS, AC_CONFIG_FILES,
        AC_OUTPUT, AM_INIT_AUTOMAKE to the preferred style for
        AC_OUTPUT, AM_INIT_AUTOMAKE to the preferred style for
        Autoconf 2.5x and Automake 1.7 or later.
        Autoconf 2.5x and Automake 1.7 or later.
        * configure.in: Remove.
        * configure.in: Remove.
        * configure: Regenerate.
        * configure: Regenerate.
        * Makefile.am: Remove useless multilib rules.
        * Makefile.am: Remove useless multilib rules.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
2004-06-15  Paolo Bonzini  
2004-06-15  Paolo Bonzini  
        * .cvsignore: New file.
        * .cvsignore: New file.
2004-06-10  Stephen Crowley  
2004-06-10  Stephen Crowley  
        PR libmudflap/13505
        PR libmudflap/13505
        * mf-hooks2.c (semctl): Add cygwin porting hack.
        * mf-hooks2.c (semctl): Add cygwin porting hack.
2004-06-09  Frank Ch. Eigler  
2004-06-09  Frank Ch. Eigler  
        ctype support.
        ctype support.
        * configure.in: Look for ctype header and glibc implementation.
        * configure.in: Look for ctype header and glibc implementation.
        * mf-hooks2.c (__ctype_{b,toupper,tolower}_loc): Sample ctype
        * mf-hooks2.c (__ctype_{b,toupper,tolower}_loc): Sample ctype
        array hooks for glibc 2.3.
        array hooks for glibc 2.3.
        * mf-runtime.h.in: Wrap them.
        * mf-runtime.h.in: Wrap them.
        * mf-runtime.c (__mf_init): Leave marker regarding other ctype
        * mf-runtime.c (__mf_init): Leave marker regarding other ctype
        implementations.
        implementations.
        * testsuite/libmudflap.c/pass47-frag.c: New test.
        * testsuite/libmudflap.c/pass47-frag.c: New test.
        * configure, config.h.in: Regenerated.
        * configure, config.h.in: Regenerated.
2004-06-04  Frank Ch. Eigler  
2004-06-04  Frank Ch. Eigler  
        Portability improvements, e.g., libmudflap/15293.
        Portability improvements, e.g., libmudflap/15293.
        * configure.in: Look for glibc extension functions.  Look for
        * configure.in: Look for glibc extension functions.  Look for
        support of -f{function,data}-sections.  Look for more headers.
        support of -f{function,data}-sections.  Look for more headers.
        Create testsuite/mfconfig.exp.  Correct more "test x.." thinkos.
        Create testsuite/mfconfig.exp.  Correct more "test x.." thinkos.
        * Makefile.am: Use $(SECTION_FLAGS).  Collapse piecemeal-compiled
        * Makefile.am: Use $(SECTION_FLAGS).  Collapse piecemeal-compiled
        mf-hooks* into usual single object per source.
        mf-hooks* into usual single object per source.
        * mf-hooks*.c: Remove all #if WRAP_foo conditionals.
        * mf-hooks*.c: Remove all #if WRAP_foo conditionals.
        * mf-hooks2.c: #include a bunch more system headers.  Define strnlen
        * mf-hooks2.c: #include a bunch more system headers.  Define strnlen
        if system doesn't provide one.
        if system doesn't provide one.
        * mf-hooks3.c (struct pthread_info): Add stack_*_alloc fields.
        * mf-hooks3.c (struct pthread_info): Add stack_*_alloc fields.
        (pthread_create): Use it to properly GC dead thread stacks.
        (pthread_create): Use it to properly GC dead thread stacks.
        * mf-runtime.c (__mf_violation): Correct snprintf type warning.
        * mf-runtime.c (__mf_violation): Correct snprintf type warning.
        * testsuite/Makefile.am: Stop generating site.exp.
        * testsuite/Makefile.am: Stop generating site.exp.
        * testsuite/mfconfig.exp.in: New file.
        * testsuite/mfconfig.exp.in: New file.
        * testsuite/config/default.exp: Load new mfconfig.exp.
        * testsuite/config/default.exp: Load new mfconfig.exp.
        * testsuite/lib/libmudflap.exp (libmudflap-init): Add extra libraries.
        * testsuite/lib/libmudflap.exp (libmudflap-init): Add extra libraries.
        (prune_gcc_output): Add glibc static linking warnings.
        (prune_gcc_output): Add glibc static linking warnings.
        * testsuite/libmudflap.*/*frags.exp: Enumerate needed -lmudflap* libs.
        * testsuite/libmudflap.*/*frags.exp: Enumerate needed -lmudflap* libs.
        * testsuite/libmudflap.c/pass46-frag.c: Ditto.
        * testsuite/libmudflap.c/pass46-frag.c: Ditto.
        * configure, Makefile, aclocal.m4, config.h.in, testsuite/Makefile.in:
        * configure, Makefile, aclocal.m4, config.h.in, testsuite/Makefile.in:
        Regenerated with autoconf 2.57 and automake 1.7.
        Regenerated with autoconf 2.57 and automake 1.7.
2004-06-04  Per Bothner  
2004-06-04  Per Bothner  
        * configure.in (LIBMUDFLAPTH):  Fix thinko.
        * configure.in (LIBMUDFLAPTH):  Fix thinko.
        * configure.in:  Check for more headers.
        * configure.in:  Check for more headers.
        * mf-hooks2.c:  Conditionalize on HAVE_SYS_SOCKET_H etc.
        * mf-hooks2.c:  Conditionalize on HAVE_SYS_SOCKET_H etc.
        * mf-runtime.c:  In two places conditionalize on SIUSR1 rather than
        * mf-runtime.c:  In two places conditionalize on SIUSR1 rather than
        HAVE_SIGNAL as mingw has signal.h but not SIUSR1.
        HAVE_SIGNAL as mingw has signal.h but not SIUSR1.
2004-06-01  Andreas Jaeger  
2004-06-01  Andreas Jaeger  
        * configure.in: Handle multilibs, support
        * configure.in: Handle multilibs, support
        --enable-version-specific-runtime-libs.
        --enable-version-specific-runtime-libs.
        * Makefile.am (lib_LTLIBRARIES): Rename to ...
        * Makefile.am (lib_LTLIBRARIES): Rename to ...
        (toolexeclib_LTLIBRARIES): this for multilib support.
        (toolexeclib_LTLIBRARIES): this for multilib support.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * configure: Regenerated.
        * configure: Regenerated.
        * aclocal.m4: Regenerated.
        * aclocal.m4: Regenerated.
        * config.h.in: Regenerated.
        * config.h.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.
2004-06-01  Andreas Jaeger  
2004-06-01  Andreas Jaeger  
        * testsuite/lib/libmudflap.exp (libmudflap-init): Handle
        * testsuite/lib/libmudflap.exp (libmudflap-init): Handle
        multilibs, using multilib directory instead of hardcoded path.
        multilibs, using multilib directory instead of hardcoded path.
        Set LD_RUN_PATH.
        Set LD_RUN_PATH.
2004-05-21  Frank Ch. Eigler  
2004-05-21  Frank Ch. Eigler  
        * Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS.
        * Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS.
        * Makefile.in: Ditto.
        * Makefile.in: Ditto.
2004-05-18  Kaz Kojima  
2004-05-18  Kaz Kojima  
        * acinclude.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*.
        * acinclude.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*.
        * aclocal.m4, configure: Rebuilt.
        * aclocal.m4, configure: Rebuilt.
2004-05-17  Frank Ch. Eigler  
2004-05-17  Frank Ch. Eigler  
        * lib/libmudflap.exp (libmudflap-init): For C++ test cases only,
        * lib/libmudflap.exp (libmudflap-init): For C++ test cases only,
        import some build settings from libstdc++-v3 testsuite_flags.
        import some build settings from libstdc++-v3 testsuite_flags.
        * .../cfrags.exp, .../c++frags.exp, .../cthfrags.exp: Corresponding
        * .../cfrags.exp, .../c++frags.exp, .../cthfrags.exp: Corresponding
        changes to pass test language.
        changes to pass test language.
        * mf-runtime.c (__mfu_check): Poison the cache with antidote for
        * mf-runtime.c (__mfu_check): Poison the cache with antidote for
        quicker mode-nop handling.
        quicker mode-nop handling.
2004-03-25  Frank Ch. Eigler  
2004-03-25  Frank Ch. Eigler  
        * mf-impl.h: Added libgcc license header.
        * mf-impl.h: Added libgcc license header.
2004-03-20  Frank Ch. Eigler  
2004-03-20  Frank Ch. Eigler  
        * mf-hooks[123].c, mf-runtime.c, mf-heuristics.c:
        * mf-hooks[123].c, mf-runtime.c, mf-heuristics.c:
        Added libgcc license header.
        Added libgcc license header.
        * mf-hooks3.c (__mf_0fn_pthread_create): Correct arg constness.
        * mf-hooks3.c (__mf_0fn_pthread_create): Correct arg constness.
        (pthread_create): Simplify stack allocation syntax.
        (pthread_create): Simplify stack allocation syntax.
2004-03-08  Loren J. Rittle  
2004-03-08  Loren J. Rittle  
        * mf-hooks2.c: Support FreeBSD.
        * mf-hooks2.c: Support FreeBSD.
        (WRAP_gets): Avoid gets().
        (WRAP_gets): Avoid gets().
        * testsuite/libmudflap.c/pass-stratcliff.c: Do not
        * testsuite/libmudflap.c/pass-stratcliff.c: Do not
        test unimplemented mem/str calls on FreeBSD.
        test unimplemented mem/str calls on FreeBSD.
        * testsuite/libmudflap.c/pass21-frag.c: Do not include
        * testsuite/libmudflap.c/pass21-frag.c: Do not include
         on FreeBSD.
         on FreeBSD.
2004-01-30  Frank Ch. Eigler  
2004-01-30  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass36-frag.c: Add missing free() call.
        * testsuite/libmudflap.c/pass36-frag.c: Add missing free() call.
        * testsuite/libmudflap.c/pass46-frag.c: New test for -fmudflapir.
        * testsuite/libmudflap.c/pass46-frag.c: New test for -fmudflapir.
        * testsuite/libmudflap.cth/cthfrags.exp: Add -DSTATIC to compiler
        * testsuite/libmudflap.cth/cthfrags.exp: Add -DSTATIC to compiler
        flags for static linking permutation.
        flags for static linking permutation.
        * testsuite/libmudflap.cth/pass40-frag.c: When -DSTATIC, avoid
        * testsuite/libmudflap.cth/pass40-frag.c: When -DSTATIC, avoid
        some pthreads code that croaks on linux glibc tls.
        some pthreads code that croaks on linux glibc tls.
2004-01-27  Frank Ch. Eigler  
2004-01-27  Frank Ch. Eigler  
        * testsuite/libmudflap.c/fail31-frag.c, pass45-frag.c: New tests.
        * testsuite/libmudflap.c/fail31-frag.c, pass45-frag.c: New tests.
2004-01-15  Frank Ch. Eigler  
2004-01-15  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass44-frag.c: New test.
        * testsuite/libmudflap.c/pass44-frag.c: New test.
2004-01-12  Frank Ch. Eigler  
2004-01-12  Frank Ch. Eigler  
        * testsuite/libmudflap.c/fail{28,29,30}-frag.c: New tests.
        * testsuite/libmudflap.c/fail{28,29,30}-frag.c: New tests.
2004-01-08  Frank Ch. Eigler  
2004-01-08  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass43-frag.c: Added missing program rc.
        * testsuite/libmudflap.c/pass43-frag.c: Added missing program rc.
2003-12-11  Frank Ch. Eigler  
2003-12-11  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass42-frag.c, pass43-frag.c: New tests.
        * testsuite/libmudflap.c/pass42-frag.c, pass43-frag.c: New tests.
2003-12-08  Andrew Pinski  
2003-12-08  Andrew Pinski  
        PR libmudflap/12670
        PR libmudflap/12670
        * configure.in: Add check for see if
        * configure.in: Add check for see if
        socklen_t typedef is in sys/socket.h.
        socklen_t typedef is in sys/socket.h.
        * mf-hooks1.c: Add define if socklen_t
        * mf-hooks1.c: Add define if socklen_t
        is not typedef.
        is not typedef.
        * mf-hooks2.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-hooks3.c: Likewise.
        * config.h.in: Regen.
        * config.h.in: Regen.
        * configure: Regen.
        * configure: Regen.
2003-12-08  Frank Ch. Eigler  
2003-12-08  Frank Ch. Eigler  
        * mf-runtime.c (__mf_watch_or_not): Tweak tracing message.
        * mf-runtime.c (__mf_watch_or_not): Tweak tracing message.
        * testsuite/libmudflap.c/fail21-frag.c: Defeat aliasing
        * testsuite/libmudflap.c/fail21-frag.c: Defeat aliasing
        optimizations.
        optimizations.
        * testsuite/libmudflap.c/pass25-frag.c: Ditto.
        * testsuite/libmudflap.c/pass25-frag.c: Ditto.
        * testsuite/libmudflap.c/pass26-frag.c: Tolerate non-overlapping
        * testsuite/libmudflap.c/pass26-frag.c: Tolerate non-overlapping
        (unoptimized) allocation of stack space.
        (unoptimized) allocation of stack space.
2003-12-07  Richard Henderson  
2003-12-07  Richard Henderson  
        * testsuite/libmudflap.c/fail23-frag.c (main): Adjust addend to 11.
        * testsuite/libmudflap.c/fail23-frag.c (main): Adjust addend to 11.
        * testsuite/libmudflap.c/fail27-frag.c (foo): Mark noinline.
        * testsuite/libmudflap.c/fail27-frag.c (foo): Mark noinline.
2003-12-06  Andrew Pinski 
2003-12-06  Andrew Pinski 
        partial PR libmudflap/12670
        partial PR libmudflap/12670
        * mf-hooks1.c: Respect Darwin checks.  Conditionalize POSIX_SOURCE.
        * mf-hooks1.c: Respect Darwin checks.  Conditionalize POSIX_SOURCE.
        * mf-hooks2.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-hooks3.c: Likewise.
2003-11-19  Frank Ch. Eigler  
2003-11-19  Frank Ch. Eigler  
        libstdc++/11696
        libstdc++/11696
        * mf-runtime.h.in: Switch to #pragma redefine_extname for
        * mf-runtime.h.in: Switch to #pragma redefine_extname for
        symbols interposed at compile time.
        symbols interposed at compile time.
        * testsuite/libmudflap.c++/pass41-frag.cxx: New test.
        * testsuite/libmudflap.c++/pass41-frag.cxx: New test.
        libmudflap/12939
        libmudflap/12939
        * mf-hooks2.c (semctl): Tolerate FreeBSD.
        * mf-hooks2.c (semctl): Tolerate FreeBSD.
        * configure.in: Reorganize check for .
        * configure.in: Reorganize check for .
        * configure: Regenerated.
        * configure: Regenerated.
2003-11-04  David Edelsohn  
2003-11-04  David Edelsohn  
        * mf-runtime.c (_ALL_SOURCE): Define for AIX.
        * mf-runtime.c (_ALL_SOURCE): Define for AIX.
        (_LARGE_FILE_API): Define for AIX.
        (_LARGE_FILE_API): Define for AIX.
        * mf-hooks[123]: Same.
        * mf-hooks[123]: Same.
        (_XOPEN_SOURCE_EXTENDED): Define to 1 for AIX.
        (_XOPEN_SOURCE_EXTENDED): Define to 1 for AIX.
2003-10-21  David Edelsohn  
2003-10-21  David Edelsohn  
        * mf-runtime.c (_XOPEN_SOURCE_EXTENDED): Define to 1 for AIX.
        * mf-runtime.c (_XOPEN_SOURCE_EXTENDED): Define to 1 for AIX.
2003-07-29  Frank Ch. Eigler  
2003-07-29  Frank Ch. Eigler  
        2003-07-29  Gerald Pfeifer  
        2003-07-29  Gerald Pfeifer  
        * configure.in: Update check for union semun.
        * configure.in: Update check for union semun.
2003-07-29  Gerald Pfeifer  
2003-07-29  Gerald Pfeifer  
        PR other/11673
        PR other/11673
        * mf-hooks2.c [WRAP_semctl]: Fix check for HAVE_UNION_SEMUN.
        * mf-hooks2.c [WRAP_semctl]: Fix check for HAVE_UNION_SEMUN.
2003-07-29  Frank Ch. Eigler  
2003-07-29  Frank Ch. Eigler  
        PR other/11673
        PR other/11673
        * configure.in: Add checks for 64-bit LFS functions, struct semun
        * configure.in: Add checks for 64-bit LFS functions, struct semun
        definition, for BSD compatibility.
        definition, for BSD compatibility.
        * mf-hooks1.c: Respect BSD checks.  Conditionalize POSIX_SOURCE.
        * mf-hooks1.c: Respect BSD checks.  Conditionalize POSIX_SOURCE.
        * mf-hooks2.c: Ditto.  Include  for bcmp* decls.
        * mf-hooks2.c: Ditto.  Include  for bcmp* decls.
        * mf-hooks3.c: Ditto.
        * mf-hooks3.c: Ditto.
        (pthread_create): Try MAP_ANON on platforms without the MAP_ANONYMOUS
        (pthread_create): Try MAP_ANON on platforms without the MAP_ANONYMOUS
        mmap flag.
        mmap flag.
        * configure, config.h.in: Regenerated.
        * configure, config.h.in: Regenerated.
2003-07-23  Frank Ch. Eigler  
2003-07-23  Frank Ch. Eigler  
        Multithreading fixes:
        Multithreading fixes:
        * mf-runtime.c (__mf_object): Store allocating/deallocating
        * mf-runtime.c (__mf_object): Store allocating/deallocating
        thread id.
        thread id.
        (options): Support new "-thread-stack" option.
        (options): Support new "-thread-stack" option.
        Rename "-heur-argv-environ" option to "-heur-stdlib".
        Rename "-heur-argv-environ" option to "-heur-stdlib".
        Disable "-lc-mask" and "-lc-shift" options.
        Disable "-lc-mask" and "-lc-shift" options.
        (__mf_dynamic): Add function pointers for pthread_join/_exit.
        (__mf_dynamic): Add function pointers for pthread_join/_exit.
        (__assert_fail): New self-contained function for glibc.
        (__assert_fail): New self-contained function for glibc.
        * mf-hooks3.c: Essentially rewritten, particularly related to
        * mf-hooks3.c: Essentially rewritten, particularly related to
        use of __mf_pthread_info array.
        use of __mf_pthread_info array.
        (pthread_join, _exit): New hook functions.
        (pthread_join, _exit): New hook functions.
        * mf-impl.h (BEGIN_PROTECT): Handle starting_p case.
        * mf-impl.h (BEGIN_PROTECT): Handle starting_p case.
        * testsuite/libmudflap.cth/pass40-frag.c: New test.
        * testsuite/libmudflap.cth/pass40-frag.c: New test.
        Warning cleanups:
        Warning cleanups:
        * mf-heuristics.c: Add type casts for tracing, sub calls.
        * mf-heuristics.c: Add type casts for tracing, sub calls.
        * mf-impl.h (BEGIN_PROTECT): Redefine to omit result type.
        * mf-impl.h (BEGIN_PROTECT): Redefine to omit result type.
        Update all callers to declare explicit result holder.
        Update all callers to declare explicit result holder.
        (END_PROTECT): Removed.
        (END_PROTECT): Removed.
        * testsuite/*/*frags.exp: Clean up default MUDFLAP_OPTIONS.
        * testsuite/*/*frags.exp: Clean up default MUDFLAP_OPTIONS.
2003-07-15  Diego Novillo  
2003-07-15  Diego Novillo  
        * testsuite/libmudflap.c/fail21-frag.c: Add volatile modifiers.
        * testsuite/libmudflap.c/fail21-frag.c: Add volatile modifiers.
        * testsuite/libmudflap.c/fail15-frag.c: Likewise.
        * testsuite/libmudflap.c/fail15-frag.c: Likewise.
        * testsuite/libmudflap.c/fail13-frag.c: Likewise.
        * testsuite/libmudflap.c/fail13-frag.c: Likewise.
2003-07-04  Frank Ch. Eigler  
2003-07-04  Frank Ch. Eigler  
        * mf-hooks1.c, 2.c, 3.c: New file, splits up content from old ...
        * mf-hooks1.c, 2.c, 3.c: New file, splits up content from old ...
        * mf-hooks: Removed.
        * mf-hooks: Removed.
        * mf-impl.h (MF_VALIDATE_EXTENT, BEGIN_PROTECT, END_PROTECT):
        * mf-impl.h (MF_VALIDATE_EXTENT, BEGIN_PROTECT, END_PROTECT):
        Move these macros from old mf-hooks.c here.
        Move these macros from old mf-hooks.c here.
        * Makefile.am: Adapt to split-up hook sources for faster builds.
        * Makefile.am: Adapt to split-up hook sources for faster builds.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * mf-heuristics.c: Remove #if-0 block.
        * mf-heuristics.c: Remove #if-0 block.
        * mf-impl.h (__mf_state): Reorganize declaration and implementation.
        * mf-impl.h (__mf_state): Reorganize declaration and implementation.
        (__mf_starting_p): New state only for use while dlsym bootstrapping.
        (__mf_starting_p): New state only for use while dlsym bootstrapping.
        (CALL_REAL, __mf_init): Corresponding changes.
        (CALL_REAL, __mf_init): Corresponding changes.
        (TRACE, VERBOSE_TRACE): Include thread id and "mf:" prefix.  Update
        (TRACE, VERBOSE_TRACE): Include thread id and "mf:" prefix.  Update
        all callers to remove redundant "mf:" prefix.
        all callers to remove redundant "mf:" prefix.
        * mf-runtime.h.in: #define a few reentrancy macros for libmudflapth.
        * mf-runtime.h.in: #define a few reentrancy macros for libmudflapth.
        * mf-hooks3.c: Rewrite chunks to support per-thread __mf_state value.
        * mf-hooks3.c: Rewrite chunks to support per-thread __mf_state value.
        (__mf_pthread_info): Become a hash table.
        (__mf_pthread_info): Become a hash table.
        * testsuite/lib/mfdg.exp: Support new "dg-timeout" and
        * testsuite/lib/mfdg.exp: Support new "dg-timeout" and
        "dg-repetitions" directives to control test case execution.
        "dg-repetitions" directives to control test case execution.
        * testsuite/libmudflap.cth/pass37-frag.c: Add timeout and repeat
        * testsuite/libmudflap.cth/pass37-frag.c: Add timeout and repeat
        options.
        options.
        * testsuite/libmudflap.cth/pass39-frag.c: Ditto for this new test.
        * testsuite/libmudflap.cth/pass39-frag.c: Ditto for this new test.
2003-06-25  Frank Ch. Eigler  
2003-06-25  Frank Ch. Eigler  
        * mf-hooks.c (alloca): Separate into stub.
        * mf-hooks.c (alloca): Separate into stub.
        (__mf_wrap_alloca_indirect): New function.  Use CALL_REAL
        (__mf_wrap_alloca_indirect): New function.  Use CALL_REAL
        malloc/free for alloca blocks.
        malloc/free for alloca blocks.
        (pthread_create): Tolerate failing pthread_attr_get* calls.
        (pthread_create): Tolerate failing pthread_attr_get* calls.
        * mf-runtime.c (__mf_fini): Call __mf_wrap_alloca_indirect.
        * mf-runtime.c (__mf_fini): Call __mf_wrap_alloca_indirect.
        * mf-impl.h (CALL_WRAP): Remove macro.
        * mf-impl.h (CALL_WRAP): Remove macro.
        * testsuite/libmudflap.c/pass21-frag.c: Include .
        * testsuite/libmudflap.c/pass21-frag.c: Include .
        * testsuite/libmudflap.c/pass23-frag.c: Include more struct
        * testsuite/libmudflap.c/pass23-frag.c: Include more struct
        padding for ia64 BIT_FIELD_REF constructs.
        padding for ia64 BIT_FIELD_REF constructs.
2003-06-19  Frank Ch. Eigler  
2003-06-19  Frank Ch. Eigler  
        * mf-hooks.c (struct pthread_info): Add "thread_errno" field.
        * mf-hooks.c (struct pthread_info): Add "thread_errno" field.
        (__mf_pthread_spawner, __mf_pthread_cleanup): Use it with GUESS
        (__mf_pthread_spawner, __mf_pthread_cleanup): Use it with GUESS
        libmudflap object type.
        libmudflap object type.
        * mf-runtime.c (__mfu_unregister): Correct cemetary logic to avoid
        * mf-runtime.c (__mfu_unregister): Correct cemetary logic to avoid
        crashes on unregistering STATIC objects.
        crashes on unregistering STATIC objects.
2003-06-17  Frank Ch. Eigler  
2003-06-17  Frank Ch. Eigler  
        Based on patch from Eyal Lebedinsky :
        Based on patch from Eyal Lebedinsky :
        * mf-hooks.c (__mf_pthread_spawner): Register thread errno.
        * mf-hooks.c (__mf_pthread_spawner): Register thread errno.
        (time, strerror, fopen, fopen64, fclose, fread): New hooks.
        (time, strerror, fopen, fopen64, fclose, fread): New hooks.
        (fwrite, fgetc, fgets, getc, gets, ungetc, fputc): New hooks.
        (fwrite, fgetc, fgets, getc, gets, ungetc, fputc): New hooks.
        (fputs, putc, puts, clearerr, feof, ferror, fileno): New hooks.
        (fputs, putc, puts, clearerr, feof, ferror, fileno): New hooks.
        (printf, fprintf, sprintf, snprintf, vprintf, vfprintf): New hooks.
        (printf, fprintf, sprintf, snprintf, vprintf, vfprintf): New hooks.
        (vsprintf, vsnprintf, access, remove, fflush, fseek): New hooks.
        (vsprintf, vsnprintf, access, remove, fflush, fseek): New hooks.
        (fseeko64, ftell, ftello64, rewind, fgetpos, fsetpos): New hooks.
        (fseeko64, ftell, ftello64, rewind, fgetpos, fsetpos): New hooks.
        (stat, stat64, fstat, lstat, mkfifo, setvbuf, setbuf): New hooks.
        (stat, stat64, fstat, lstat, mkfifo, setvbuf, setbuf): New hooks.
        (setvbuf, opendir, closedir, readdir, recv, recvfrom): New hooks.
        (setvbuf, opendir, closedir, readdir, recv, recvfrom): New hooks.
        (recvmsg, send, sendto, sendmsg, setsockopt, getsockopt): New hooks.
        (recvmsg, send, sendto, sendmsg, setsockopt, getsockopt): New hooks.
        (accept, bind, connect, gethostname, sethostname): New hooks.
        (accept, bind, connect, gethostname, sethostname): New hooks.
        (gethostbyname, wait, waitpid, popen, pclose, execve): New hooks.
        (gethostbyname, wait, waitpid, popen, pclose, execve): New hooks.
        (execv, execvp, system, dlopen, dlclose, dlerror, dlsym): New hooks.
        (execv, execvp, system, dlopen, dlclose, dlerror, dlsym): New hooks.
        (semop, semctl, shmctl, shmat, shmdt): New hooks.
        (semop, semctl, shmctl, shmat, shmdt): New hooks.
        * mf-runtime.h.in: Corresponding changes.
        * mf-runtime.h.in: Corresponding changes.
        * mf-runtime.c (__mf_ini): Register stdio objects.  Use STATIC type.
        * mf-runtime.c (__mf_ini): Register stdio objects.  Use STATIC type.
        (opts) Rename heur_argv_environ to heur_std_data.
        (opts) Rename heur_argv_environ to heur_std_data.
        (__mf_wrap_main): Use STATIC type for argv/environ strings.
        (__mf_wrap_main): Use STATIC type for argv/environ strings.
        * Makefile.am: Corresponding changes.
        * Makefile.am: Corresponding changes.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
2003-06-11  Frank Ch. Eigler  
2003-06-11  Frank Ch. Eigler  
        * mf-heuristics.c (__mf_heuristic_check): Disable stack_bounds
        * mf-heuristics.c (__mf_heuristic_check): Disable stack_bounds
        heuristic for threaded case, and for non-x86-linux targets.
        heuristic for threaded case, and for non-x86-linux targets.
        * mf-hooks.c (__mf_0fn_calloc): Provide a working dummy implementation
        * mf-hooks.c (__mf_0fn_calloc): Provide a working dummy implementation
        for use during pre-main() program startup.
        for use during pre-main() program startup.
        (__mf_0fn_*): Make these functions non-static.
        (__mf_0fn_*): Make these functions non-static.
        * mf-impl.h (DECLARE, CALL_REAL): Support calls to 0fn backup hook
        * mf-impl.h (DECLARE, CALL_REAL): Support calls to 0fn backup hook
        functions.
        functions.
        * mf-runtime.c (__mf_state): Set initial state to "starting".
        * mf-runtime.c (__mf_state): Set initial state to "starting".
        (__mf_resolve_single_dynamic): Tolerate repeated calls for same symbol.
        (__mf_resolve_single_dynamic): Tolerate repeated calls for same symbol.
        (__wrap_main): New function to register argv[] and environ[] strings.
        (__wrap_main): New function to register argv[] and environ[] strings.
        (__mf_ini): Call it.
        (__mf_ini): Call it.
        (*): In all trace functions, use "%p" as formatter for uintptr_t.
        (*): In all trace functions, use "%p" as formatter for uintptr_t.
        * testsuite/libmudflap.c/pass38-frag.c: New test case.
        * testsuite/libmudflap.c/pass38-frag.c: New test case.
        * testsuite/libmudflap.cth/pass37-frag.c: Improved test.
        * testsuite/libmudflap.cth/pass37-frag.c: Improved test.
        * acinclude.m4: Add comments with aoliva's concerns about x86_64
        * acinclude.m4: Add comments with aoliva's concerns about x86_64
        pass_all.
        pass_all.
        * aclocal.m4, configure: Regenerated.
        * aclocal.m4, configure: Regenerated.
2003-06-04  Frank Ch. Eigler  
2003-06-04  Frank Ch. Eigler  
        * acinclude.m4: Correct typo in AC_MSG_CHECKING.
        * acinclude.m4: Correct typo in AC_MSG_CHECKING.
        * aclocal.m4, configure: Regenerated.
        * aclocal.m4, configure: Regenerated.
2003-06-03  Frank Ch. Eigler  
2003-06-03  Frank Ch. Eigler  
        * acinclude.m4: Force "pass_all" deplibs_check_method for libtool
        * acinclude.m4: Force "pass_all" deplibs_check_method for libtool
        for x86_64 target.  Disable caching for this value.
        for x86_64 target.  Disable caching for this value.
        * aclocal.m4, configure: Regenerated.
        * aclocal.m4, configure: Regenerated.
2003-06-02  Frank Ch. Eigler  
2003-06-02  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass38-frag.c: Deleted.  -fwritable-strings
        * testsuite/libmudflap.c/pass38-frag.c: Deleted.  -fwritable-strings
        is about to become deprecated, and its present handling bugs are
        is about to become deprecated, and its present handling bugs are
        unworthy of fixing.
        unworthy of fixing.
2003-05-30  Frank Ch. Eigler  
2003-05-30  Frank Ch. Eigler  
        * testsuite/libmudflap.c/pass38-frag.c: New test for
        * testsuite/libmudflap.c/pass38-frag.c: New test for
        -fwritable-strings.
        -fwritable-strings.
2003-05-23  Frank Ch. Eigler  
2003-05-23  Frank Ch. Eigler  
        * mf-runtime.c (__mf_sigusr1_handle): Call unlocked variant of
        * mf-runtime.c (__mf_sigusr1_handle): Call unlocked variant of
        __mf_report, asserting reentrant calling context.
        __mf_report, asserting reentrant calling context.
2003-05-23  Frank Ch. Eigler  
2003-05-23  Frank Ch. Eigler  
        * mf-hooks.c (realloc): Correct reentrancy logic.
        * mf-hooks.c (realloc): Correct reentrancy logic.
        * testsuite/libmudflap.c/hook-allocstuff.c: New test case.
        * testsuite/libmudflap.c/hook-allocstuff.c: New test case.
2003-05-20  Frank Ch. Eigler  
2003-05-20  Frank Ch. Eigler  
        * mf-hooks.c (LIBMUDFLAPTH_THREADS_MAX): New macro, replaces
        * mf-hooks.c (LIBMUDFLAPTH_THREADS_MAX): New macro, replaces
        PTHREAD_THREADS_MAX.  Update users.
        PTHREAD_THREADS_MAX.  Update users.
        * mf-runtime.c (__mf_usage): Print [active] instead of [default]
        * mf-runtime.c (__mf_usage): Print [active] instead of [default]
        for active options.
        for active options.
        * testsuite/Makefile.am (all-local): Prime dejagnu site.exp file
        * testsuite/Makefile.am (all-local): Prime dejagnu site.exp file
        with libmudflapth presence indicator.
        with libmudflapth presence indicator.
        * testsuite/Makefile.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.
2003-05-16  Frank Ch. Eigler  
2003-05-16  Frank Ch. Eigler  
        * Makefile.am (AM_CFLAGS): Remove "-ansi".
        * Makefile.am (AM_CFLAGS): Remove "-ansi".
        * configure.in: Remove silly no-pthreads => no-shared logic.
        * configure.in: Remove silly no-pthreads => no-shared logic.
        * Makefile.in, configure: Regenerated.
        * Makefile.in, configure: Regenerated.
        * mf-heuristics.c (__mf_heuristic_check): Remove reentrancy hacks.
        * mf-heuristics.c (__mf_heuristic_check): Remove reentrancy hacks.
        * mf-hooks.c (BEGIN_PROTECT, END_PROTECT): Reorganize reentrancy
        * mf-hooks.c (BEGIN_PROTECT, END_PROTECT): Reorganize reentrancy
        code.  Count reentrancy events.
        code.  Count reentrancy events.
        (all hook functions): Don't directly manipulate __mf_state variable.
        (all hook functions): Don't directly manipulate __mf_state variable.
        Add TRACE calls to hook functions without them.
        Add TRACE calls to hook functions without them.
        * mf-impl.h (LOCKTH): Try to count lock contention events.
        * mf-impl.h (LOCKTH): Try to count lock contention events.
        (VERBOSE_TRACE, TRACE): Remove reentrancy hacks.
        (VERBOSE_TRACE, TRACE): Remove reentrancy hacks.
        * mf-runtime.c (BEGIN_RECURSION_PROTECT, END_RECURSION_PROTECT):
        * mf-runtime.c (BEGIN_RECURSION_PROTECT, END_RECURSION_PROTECT):
        Reorganize reentrancy code.
        Reorganize reentrancy code.
        (external __mf_ entry points): Use RECURSION_PROTECT mechanism to
        (external __mf_ entry points): Use RECURSION_PROTECT mechanism to
        identify reentrancy with mutex holding times.
        identify reentrancy with mutex holding times.
        (internal __mfu_ entry points): Remove internal reentrancy code.
        (internal __mfu_ entry points): Remove internal reentrancy code.
        (__mf_init): Use ordinary locked calls.
        (__mf_init): Use ordinary locked calls.
        (__mfu_report): Print the two new counts.
        (__mfu_report): Print the two new counts.
        * testsuite/lib/libmudflap.exp: Filter out junk ld/pthreads messages.
        * testsuite/lib/libmudflap.exp: Filter out junk ld/pthreads messages.
        * testsuite/libmudfap.cth/cthfrags.exp: New test driver.
        * testsuite/libmudfap.cth/cthfrags.exp: New test driver.
        * testsuite/libmudflap.cth/pass37-frag.c: New pthreads test.
        * testsuite/libmudflap.cth/pass37-frag.c: New pthreads test.
        * testsuite/libmudfap.cth/cfrags.exp: Adapt to new libmudflap
        * testsuite/libmudfap.cth/cfrags.exp: Adapt to new libmudflap
        option defaults.
        option defaults.
2003-05-09  Frank Ch. Eigler  
2003-05-09  Frank Ch. Eigler  
        * configure.in: Add pthread support, plus glibc and porting hacks.
        * configure.in: Add pthread support, plus glibc and porting hacks.
        * Makefile.am (LIBMUDFLAPTH): New conditional, to build -lmudflapth
        * Makefile.am (LIBMUDFLAPTH): New conditional, to build -lmudflapth
        from objects built into ./pth/.
        from objects built into ./pth/.
        * mf-runtime.c (__mfu_watch,register,...): Fork new unlocked
        * mf-runtime.c (__mfu_watch,register,...): Fork new unlocked
        functions for internal entry points.  Update callers to pick
        functions for internal entry points.  Update callers to pick
        locked vs. unlocked variants.
        locked vs. unlocked variants.
        (__mf_resolve_single_dynamic): Extend to support symbol versioning
        (__mf_resolve_single_dynamic): Extend to support symbol versioning
        info coming in from a static data structure.
        info coming in from a static data structure.
        (*): Reorder miscellaneous declarations to group data vs functions.
        (*): Reorder miscellaneous declarations to group data vs functions.
        (__mf_set_default_options): Simplify.
        (__mf_set_default_options): Simplify.
        (__mf_usage): Mention threading status of host executable.
        (__mf_usage): Mention threading status of host executable.
        * mf-impl.h: Move max/min decls here.  Reorganize __mf_dynamic
        * mf-impl.h: Move max/min decls here.  Reorganize __mf_dynamic
        decls to match above.
        decls to match above.
        (LOCKTH, UNLOCKTH): New macros for Big Libmudflap Lock management.
        (LOCKTH, UNLOCKTH): New macros for Big Libmudflap Lock management.
        * mf-heuristics.c: Choose between locked/unlocked calls.  Add
        * mf-heuristics.c: Choose between locked/unlocked calls.  Add
        some lock/unlock markers.  Remove some unused code.
        some lock/unlock markers.  Remove some unused code.
        * mf-hooks: Ditto.
        * mf-hooks: Ditto.
        (pthread_create): New hook function.
        (pthread_create): New hook function.
        (__mf_pthread_cleanup, _spawner): New helper functions.
        (__mf_pthread_cleanup, _spawner): New helper functions.
        * configure. aclocal.m4, config.h.in, Makefile.in: Regenerated.
        * configure. aclocal.m4, config.h.in, Makefile.in: Regenerated.
2003-05-02  Frank Ch. Eigler  
2003-05-02  Frank Ch. Eigler  
        * testsuite/libmudflap.c/fail27-frag.c: Add more volatile flags.
        * testsuite/libmudflap.c/fail27-frag.c: Add more volatile flags.
2002-04-28  Frank Ch. Eigler  
2002-04-28  Frank Ch. Eigler  
        * Makefile.am (HOOKOBJS): Add *time related hooks.
        * Makefile.am (HOOKOBJS): Add *time related hooks.
        * configure.in: Look for pthreads.h header.
        * configure.in: Look for pthreads.h header.
        * mf-hooks.c (asctime, ctime, gmtime, localtime): New wrappers.
        * mf-hooks.c (asctime, ctime, gmtime, localtime): New wrappers.
        * mf-runtime.c: Begin sketching some pthreads support.
        * mf-runtime.c: Begin sketching some pthreads support.
        (__mf_usage): Check for -lpthread presence.
        (__mf_usage): Check for -lpthread presence.
        (__mf_unregister): Confirm matching unregistration base.
        (__mf_unregister): Confirm matching unregistration base.
        (__mf_find_objects_rec): Reduce unnecessary recursion.
        (__mf_find_objects_rec): Reduce unnecessary recursion.
        * mf-runtime.h.in: Add "nothrow" attribute to functions.  Add
        * mf-runtime.h.in: Add "nothrow" attribute to functions.  Add
        #defines for new hook functions.
        #defines for new hook functions.
        * mf-impl.h: Corresponding changes.
        * mf-impl.h: Corresponding changes.
        * config.h.in, configure, Makefile.in: Regenerated.
        * config.h.in, configure, Makefile.in: Regenerated.
2002-04-27  Diego Novillo  
2002-04-27  Diego Novillo  
        * testsuite/libmudflap.c/fail1-frag.c: Add volatile
        * testsuite/libmudflap.c/fail1-frag.c: Add volatile
        modifiers to prevent being optimized away.
        modifiers to prevent being optimized away.
        * testsuite/libmudflap.c/fail10-frag.c: Likewise.
        * testsuite/libmudflap.c/fail10-frag.c: Likewise.
        * testsuite/libmudflap.c/fail13-frag.c: Likewise.
        * testsuite/libmudflap.c/fail13-frag.c: Likewise.
        * testsuite/libmudflap.c/fail14-frag.c: Likewise.
        * testsuite/libmudflap.c/fail14-frag.c: Likewise.
        * testsuite/libmudflap.c/fail15-frag.c: Likewise.
        * testsuite/libmudflap.c/fail15-frag.c: Likewise.
        * testsuite/libmudflap.c/fail2-frag.c: Likewise.
        * testsuite/libmudflap.c/fail2-frag.c: Likewise.
        * testsuite/libmudflap.c/fail20-frag.c: Likewise.
        * testsuite/libmudflap.c/fail20-frag.c: Likewise.
        * testsuite/libmudflap.c/fail3-frag.c: Likewise.
        * testsuite/libmudflap.c/fail3-frag.c: Likewise.
2003-04-15  Frank Ch. Eigler  
2003-04-15  Frank Ch. Eigler  
        * Makefile.am (libmudflap_la_LIBADD): Remove -ldl.
        * Makefile.am (libmudflap_la_LIBADD): Remove -ldl.
        * configure.in: Look for uintptr_t and -ldl on target.
        * configure.in: Look for uintptr_t and -ldl on target.
        * mf-runtime.h.in: Adjust uintptr_t declaration logic.
        * mf-runtime.h.in: Adjust uintptr_t declaration logic.
        * Makefile.in, aclocal.m4, configure, config.h.in: Regenerated.
        * Makefile.in, aclocal.m4, configure, config.h.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.
        * mf-runtime.c (__mf_sigusr1_respond): Tweak declaration and calls
        * mf-runtime.c (__mf_sigusr1_respond): Tweak declaration and calls
        for better C compliance.
        for better C compliance.
2003-04-15  Frank Ch. Eigler  
2003-04-15  Frank Ch. Eigler  
        * mf-hooks.c (MF_VALIDATE_EXTENT): Remove unnecessary reentrancy
        * mf-hooks.c (MF_VALIDATE_EXTENT): Remove unnecessary reentrancy
        prevention code.
        prevention code.
        * mf-runtime.c (__mf_set_default_options): Turn off
        * mf-runtime.c (__mf_set_default_options): Turn off
        check-initialization.
        check-initialization.
        (__mf_describe_object): Shorten description.
        (__mf_describe_object): Shorten description.
        * testsuite/libmudflap.c/fail25-frag.c: Turn on check-initialization.
        * testsuite/libmudflap.c/fail25-frag.c: Turn on check-initialization.
2003-04-07  Frank Ch. Eigler  
2003-04-07  Frank Ch. Eigler  
        * mf-hooks.c (__mf_0fn_mmap): Correct return value, as per .
        * mf-hooks.c (__mf_0fn_mmap): Correct return value, as per .
2003-04-02  Frank Ch. Eigler  
2003-04-02  Frank Ch. Eigler  
        * mf-hooks.c (BEGIN_PROTECT): Handle startup-time reentrant
        * mf-hooks.c (BEGIN_PROTECT): Handle startup-time reentrant
        calls specially.
        calls specially.
        (__mf_0fn_malloc ... _munmap): New dummy backup calls.
        (__mf_0fn_malloc ... _munmap): New dummy backup calls.
        * mf-impl.h (CALL_BACKUP): New macros.
        * mf-impl.h (CALL_BACKUP): New macros.
        * mf-runtime.c (__mf_init): Tweak __mf_state during startup.
        * mf-runtime.c (__mf_init): Tweak __mf_state during startup.
2003-03-31  Frank Ch. Eigler  
2003-03-31  Frank Ch. Eigler  
        * Makefile.am (AM_CFLAGS): Remove optimization flags.
        * Makefile.am (AM_CFLAGS): Remove optimization flags.
        (HOOKOBJS): Remove dlopen hook.
        (HOOKOBJS): Remove dlopen hook.
        (libmudflap_la_LIBADD): Add -ldl.
        (libmudflap_la_LIBADD): Add -ldl.
        * mf-hooks.c (dlopen): Remove hook.
        * mf-hooks.c (dlopen): Remove hook.
        * mf-impl.h (__mf_dynamic): Ditto.
        * mf-impl.h (__mf_dynamic): Ditto.
        * mf-runtime.c (__mf_resolve_dynamics): Ditto.
        * mf-runtime.c (__mf_resolve_dynamics): Ditto.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
2003-03-28  Frank Ch. Eigler  
2003-03-28  Frank Ch. Eigler  
        * configure.in: Check for target gettimeofday, signal, some headers.
        * configure.in: Check for target gettimeofday, signal, some headers.
        * mf-impl.h (__mf_opts): Add new "sigusr1_report" field.  Comment
        * mf-impl.h (__mf_opts): Add new "sigusr1_report" field.  Comment
        out inop multi_threaded field.
        out inop multi_threaded field.
        * mf-runtime.c (options): Handle new "-sigusr1-report" option.
        * mf-runtime.c (options): Handle new "-sigusr1-report" option.
        (__mf_set_options): Correct handling of "-help".
        (__mf_set_options): Correct handling of "-help".
        (__mf_sigusr1_respond): New function to manage SIGUSR1 response.
        (__mf_sigusr1_respond): New function to manage SIGUSR1 response.
        (__mf_check, __mf_register, __mf_unregister): Call it.
        (__mf_check, __mf_register, __mf_unregister): Call it.
        (__mf_insert_new_object, __mf_unregister): Respect HAVE_GETTIMEOFDAY.
        (__mf_insert_new_object, __mf_unregister): Respect HAVE_GETTIMEOFDAY.
        (__mf_report_leaks): Make callable
        (__mf_report_leaks): Make callable
        (__mf_tree_analyze): Traverse in-order.  Accumulate address bit
        (__mf_tree_analyze): Traverse in-order.  Accumulate address bit
        distribution statistics.
        distribution statistics.
        (__mf_adapt_cache): Rewrite shift guessing logic based on address
        (__mf_adapt_cache): Rewrite shift guessing logic based on address
        bit distributions.
        bit distributions.
        * config.h.in, configure: Regenerated.
        * config.h.in, configure: Regenerated.
        * testsuite/libmudflap.c/fail27-frag.c: New test.
        * testsuite/libmudflap.c/fail27-frag.c: New test.
        * testsuite/libmudflap.c/pass36-frag.c: New test.
        * testsuite/libmudflap.c/pass36-frag.c: New test.
2003-03-11  Frank Ch. Eigler  
2003-03-11  Frank Ch. Eigler  
        * mf-runtime.h.in: Tweak.
        * mf-runtime.h.in: Tweak.
        * Makefile.am, configure.in: Tweak mf-runtime.h generation some more.
        * Makefile.am, configure.in: Tweak mf-runtime.h generation some more.
        Don't use intermediate files nor AC_OUTPUT-time postprocessing.
        Don't use intermediate files nor AC_OUTPUT-time postprocessing.
        * Makefile.in, testsuite/Makefile.in, configure: Regenerated.
        * Makefile.in, testsuite/Makefile.in, configure: Regenerated.
2003-03-10  Frank Ch. Eigler  
2003-03-10  Frank Ch. Eigler  
        * configure.in: Tweak generation of mf-runtime.h some more.  It
        * configure.in: Tweak generation of mf-runtime.h some more.  It
        needs to work from both config.status and configure.
        needs to work from both config.status and configure.
        * configure: Regenerated.
        * configure: Regenerated.
2003-03-10  Frank Ch. Eigler  
2003-03-10  Frank Ch. Eigler  
        * Makefile.am: Reorganize hook file building.  Add auto dependencies.
        * Makefile.am: Reorganize hook file building.  Add auto dependencies.
        * configure.in: Tweak generation of mf-runtime.h.
        * configure.in: Tweak generation of mf-runtime.h.
        * mf-runtime.h.in: Add new __MF_TYPE_HEAP_I.
        * mf-runtime.h.in: Add new __MF_TYPE_HEAP_I.
        * mf-hooks.c (*): Adapt to initialized-heap object type.
        * mf-hooks.c (*): Adapt to initialized-heap object type.
        * mf-impl.h: Tweak cemetary boundaries.
        * mf-impl.h: Tweak cemetary boundaries.
        * mf-runtime.c (__mf_check): Adapt to new initialized-heap object
        * mf-runtime.c (__mf_check): Adapt to new initialized-heap object
        type.
        type.
        (__mf_insert_new_object, __mf_register, __mf_unregister): Ditto.
        (__mf_insert_new_object, __mf_register, __mf_unregister): Ditto.
        (__mf_describe_object, __mf_report_leaks, __mf_violation): Ditto.
        (__mf_describe_object, __mf_report_leaks, __mf_violation): Ditto.
        * testsuite/lib/libmudflap.exp (includes): Include build tree.
        * testsuite/lib/libmudflap.exp (includes): Include build tree.
        * testsuite/libmudflap.c/pass{26,5}: Further adapt to initialization
        * testsuite/libmudflap.c/pass{26,5}: Further adapt to initialization
        checking.
        checking.
        * testsuite/.../fail{25,26}-frag.c: New tests.
        * testsuite/.../fail{25,26}-frag.c: New tests.
        * testsuite/.../pass{32,33,34,35}-frag.c: New tests.
        * testsuite/.../pass{32,33,34,35}-frag.c: New tests.
        * Makefile.in, configure: Regenerated.
        * Makefile.in, configure: Regenerated.
2003-03-05  Frank Ch. Eigler  
2003-03-05  Frank Ch. Eigler  
        * mf-runtime.c (__mf_set_default_options): Turn on initialization
        * mf-runtime.c (__mf_set_default_options): Turn on initialization
        checking by default.
        checking by default.
        (__mf_insert_new_object): As a temporary hack, assume that new
        (__mf_insert_new_object): As a temporary hack, assume that new
        objects registered on the stack start out initialized.
        objects registered on the stack start out initialized.
        * testsuite/libmudflap.c/fail9,pass23,pass[6789]-*: Initialize
        * testsuite/libmudflap.c/fail9,pass23,pass[6789]-*: Initialize
        heap objects by hand.
        heap objects by hand.
2003-03-05  Frank Ch. Eigler  
2003-03-05  Frank Ch. Eigler  
        Switch to macro-style hooks for str*/mem*/b* functions.
        Switch to macro-style hooks for str*/mem*/b* functions.
        * mf-runtime.h.in (__MF_TYPE_*): Moved some internal values out.
        * mf-runtime.h.in (__MF_TYPE_*): Moved some internal values out.
        (mem*, str*, b*): Added macro-style hooks for _MUDFLAP case.
        (mem*, str*, b*): Added macro-style hooks for _MUDFLAP case.
        * mf-runtime.c: #include config.h to enable glibc backtraces again.
        * mf-runtime.c: #include config.h to enable glibc backtraces again.
        (__mf_set_default_options): Turn off heur_proc_map.
        (__mf_set_default_options): Turn off heur_proc_map.
        (*): Adapt to to macro-style hook functions.
        (*): Adapt to to macro-style hook functions.
        (__mf_object_dead_head, __mf_object_cemetary): Correct bounds.
        (__mf_object_dead_head, __mf_object_cemetary): Correct bounds.
        (__mf_check, __mf_register, __mf_unregister): Tweak tracing message.
        (__mf_check, __mf_register, __mf_unregister): Tweak tracing message.
        (__mf_violation): Handle __MF_VIOL_WATCH.
        (__mf_violation): Handle __MF_VIOL_WATCH.
        * mf-impl.h (__MF_TYPE_*): Moved these internal values here.
        * mf-impl.h (__MF_TYPE_*): Moved these internal values here.
        (__mf_dynamic): Removed mem*/str*/b* functions.
        (__mf_dynamic): Removed mem*/str*/b* functions.
        (TRACE, VERBOSE_TRACE): Add reentrancy locking.
        (TRACE, VERBOSE_TRACE): Add reentrancy locking.
        (WRAPPER2): New macro for macro-style hooks.
        (WRAPPER2): New macro for macro-style hooks.
        * mf-hooks.c: Convert mem*/str*/b* functions to simpler
        * mf-hooks.c: Convert mem*/str*/b* functions to simpler
        macro-style hooks.
        macro-style hooks.
        (BEGIN_PROTECT): Tweak tracing vs reentrancy-lock ordering.
        (BEGIN_PROTECT): Tweak tracing vs reentrancy-lock ordering.
        * mf-heuristics.c: Adapt to macro-style hook functions.
        * mf-heuristics.c: Adapt to macro-style hook functions.
        Correct some comments.
        Correct some comments.
        * testsuite/lib/mfdg.exp (dg-test): Simplify result string for
        * testsuite/lib/mfdg.exp (dg-test): Simplify result string for
        output pattern tests.
        output pattern tests.
        * testsuite/libmudflap.c/fail[89]-frag.c: Elaborate output test.
        * testsuite/libmudflap.c/fail[89]-frag.c: Elaborate output test.
        * testsuite/libmudflap.c++/c++frags.exp: Enable non-static tests.
        * testsuite/libmudflap.c++/c++frags.exp: Enable non-static tests.
2003-02-28  Frank Ch. Eigler  
2003-02-28  Frank Ch. Eigler  
        * testsuite/libmudflap.c/fail23-frag.c, pass30-frag.c: New tests
        * testsuite/libmudflap.c/fail23-frag.c, pass30-frag.c: New tests
        for global array registration.
        for global array registration.
        * testsuite/libmudflap.c++/fail24-frag.cxx, pass31-frag.cxx: Ditto.
        * testsuite/libmudflap.c++/fail24-frag.cxx, pass31-frag.cxx: Ditto.
        * testsuite/libmudflap.c++/c++frags.exp: Tweak -static multilib hack.
        * testsuite/libmudflap.c++/c++frags.exp: Tweak -static multilib hack.
2003-02-27  Frank Ch. Eigler  
2003-02-27  Frank Ch. Eigler  
        * Makefile.am: Add gross make bug workarounds.  Tweaked
        * Makefile.am: Add gross make bug workarounds.  Tweaked
        SUBDIRS and AM_CFLAGS.
        SUBDIRS and AM_CFLAGS.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
2003-02-26  Frank Ch. Eigler  
2003-02-26  Frank Ch. Eigler  
        Switch to dejagnu.
        Switch to dejagnu.
        * configure.in (AC_PROG_CXX): Don't look for C++ any more.
        * configure.in (AC_PROG_CXX): Don't look for C++ any more.
        * Makefile.am (TESTS): Remove simple automake testing.
        * Makefile.am (TESTS): Remove simple automake testing.
        * configure, Makefile.in: Regenerated.
        * configure, Makefile.in: Regenerated.
        (SUBDIRS): Include new testsuite/ directory.
        (SUBDIRS): Include new testsuite/ directory.
        * tests/*: Removed all files; moved bulk under:
        * tests/*: Removed all files; moved bulk under:
        * testsuite/*: New subdirectory tree.
        * testsuite/*: New subdirectory tree.
        * testsuite/libmudflap.c/cfrags.exp: New file, C test driver.
        * testsuite/libmudflap.c/cfrags.exp: New file, C test driver.
        * testsuite/libmudflap.c++/c++frags.exp: New file, C++ test driver.
        * testsuite/libmudflap.c++/c++frags.exp: New file, C++ test driver.
        * testsuite/lib/libmudflap.exp: New file, derived from libstdc++.
        * testsuite/lib/libmudflap.exp: New file, derived from libstdc++.
        * testsuite/lib/mfdg.exp: New file, derived from dejagnu.
        * testsuite/lib/mfdg.exp: New file, derived from dejagnu.
        * testsuite/config/default.exp: New file.
        * testsuite/config/default.exp: New file.
        * testsuite/Makefile.am, Makefile.in: New files.
        * testsuite/Makefile.am, Makefile.in: New files.
2003-01-29  Frank Ch. Eigler  
2003-01-29  Frank Ch. Eigler  
        * Makefile.am (TESTS_ENVIRONMENT): Remove redundant "-mode-check".
        * Makefile.am (TESTS_ENVIRONMENT): Remove redundant "-mode-check".
        (TESTS): Add fail22 and pass29 tests.
        (TESTS): Add fail22 and pass29 tests.
        * mf-runtime.h.in: Change API to take void*/size_t region parameters.
        * mf-runtime.h.in: Change API to take void*/size_t region parameters.
        Add new access-type parameter for __mf_check.  Move __MF_VIOL* out.
        Add new access-type parameter for __mf_check.  Move __MF_VIOL* out.
        * mf-impl.h: Corresponding changes.  Update CLAMP* macros for void*
        * mf-impl.h: Corresponding changes.  Update CLAMP* macros for void*
        values.  Move __MF_VIOL* here.
        values.  Move __MF_VIOL* here.
        * mf-runtime.c (*): Adapt to void*/size_t API in mf-runtime.h.
        * mf-runtime.c (*): Adapt to void*/size_t API in mf-runtime.h.
        (check_initialization): New field in __mf_opts.  Default off.
        (check_initialization): New field in __mf_opts.  Default off.
        (read_count,write_count): New fields in __mf_object.
        (read_count,write_count): New fields in __mf_object.
        (__mf_check): Implement basic initialization checking.
        (__mf_check): Implement basic initialization checking.
        (__mf_insert_new_object): Assume STATIC|GUESS regions are initialized.
        (__mf_insert_new_object): Assume STATIC|GUESS regions are initialized.
        (__mf_describe_object): Print new fields.
        (__mf_describe_object): Print new fields.
        (__mf_violation): Identify check/read vs. check/write in messages.
        (__mf_violation): Identify check/read vs. check/write in messages.
        * test/pass29-frag.c, test/fail22-frag.c: Basic tests for new
        * test/pass29-frag.c, test/fail22-frag.c: Basic tests for new
        "-check-initialized" mudflap option.
        "-check-initialized" mudflap option.
        * test/pass25-frag.c, test/fail21-frag.c: Adapt to API changes.
        * test/pass25-frag.c, test/fail21-frag.c: Adapt to API changes.
        * mf-hooks.c (MF_VALIDATE_EXTENT): Add new access-type parameter.
        * mf-hooks.c (MF_VALIDATE_EXTENT): Add new access-type parameter.
        Drop __FILE__/__LINE__ hack.  Update callers.
        Drop __FILE__/__LINE__ hack.  Update callers.
        (*): Adapt to new mf-runtime.h API.
        (*): Adapt to new mf-runtime.h API.
        * Makefile.in: regenerated.
        * Makefile.in: regenerated.
2003-01-24  Frank Ch. Eigler  
2003-01-24  Frank Ch. Eigler  
        * configure.in: Build mf-runtime.h a more proper way.
        * configure.in: Build mf-runtime.h a more proper way.
        * mf-hooks.c (strdup, strndup): Correct reentrancy logic.
        * mf-hooks.c (strdup, strndup): Correct reentrancy logic.
        * mf-runtime.c (verbose_violations): Turn on by default.
        * mf-runtime.c (verbose_violations): Turn on by default.
        * mf-runtime.h.in: Remove some miscellaneous stuff ...
        * mf-runtime.h.in: Remove some miscellaneous stuff ...
        * mf-impl.h: ... and move it here.
        * mf-impl.h: ... and move it here.
        * configure: Regenerated.
        * configure: Regenerated.
2003-01-22  Frank Ch. Eigler  
2003-01-22  Frank Ch. Eigler  
        * configure.in: Look for C++ compiler.
        * configure.in: Look for C++ compiler.
        * test/*-frag.c, mf-driver.c: Reformatted with GNU indent and
        * test/*-frag.c, mf-driver.c: Reformatted with GNU indent and
        fixed type warnings when built with C++.
        fixed type warnings when built with C++.
        * test/pass27-frag.cxx, pass28-frag.cxx: New C++ tests.
        * test/pass27-frag.cxx, pass28-frag.cxx: New C++ tests.
        * Makefile.am (TESTS): Run them.
        * Makefile.am (TESTS): Run them.
        (*) Add new rules for building and running C++ tests.
        (*) Add new rules for building and running C++ tests.
        (TESTFLAGS): Set new default to avoid libstdc++-v3 shlib issues.
        (TESTFLAGS): Set new default to avoid libstdc++-v3 shlib issues.
        * mf-runtime.h.in: Protect with extern "C".
        * mf-runtime.h.in: Protect with extern "C".
        * Makefile, configure: Regenerated.
        * Makefile, configure: Regenerated.
2003-01-06  Frank Ch. Eigler  
2003-01-06  Frank Ch. Eigler  
        Portability improvements.
        Portability improvements.
        * configure.in: Look for glibc backtrace headers/functions.
        * configure.in: Look for glibc backtrace headers/functions.
        * mf-hooks.c: Don't include  any more.
        * mf-hooks.c: Don't include  any more.
        * mf-runtime.c (__mf_set_options): Call more stdlib functions
        * mf-runtime.c (__mf_set_options): Call more stdlib functions
        via CALL_REAL.
        via CALL_REAL.
        (__mf_backtrace): Provide alternate baby implementation in
        (__mf_backtrace): Provide alternate baby implementation in
        absence of glibc.
        absence of glibc.
        * test/mf-driver.c: Portability tweaks.
        * test/mf-driver.c: Portability tweaks.
        * acinclude.m4: New file, containing top level libtool.m4.
        * acinclude.m4: New file, containing top level libtool.m4.
        * aclocal.m4, configure, Makefile.in, config.h.in: Regenerated.
        * aclocal.m4, configure, Makefile.in, config.h.in: Regenerated.
2002-12-19  Frank Ch. Eigler  
2002-12-19  Frank Ch. Eigler  
        * mf-runtime.h.in (HAVE_UINTPTR_T): Define unconditionally.
        * mf-runtime.h.in (HAVE_UINTPTR_T): Define unconditionally.
2002-11-08  Frank Ch. Eigler  
2002-11-08  Frank Ch. Eigler  
        * mf-runtime.c (options): Add new "wipe-heap", "wipe-stack"
        * mf-runtime.c (options): Add new "wipe-heap", "wipe-stack"
        options.
        options.
        (__mf_unregister): Implement stack/heap object wiping.
        (__mf_unregister): Implement stack/heap object wiping.
        (__mf_set_options): Renamed from __mf_process_opts.
        (__mf_set_options): Renamed from __mf_process_opts.
        (__mf_uncache_object): Change arg type, correct callers.
        (__mf_uncache_object): Change arg type, correct callers.
        * mf-impl.h: Corresponding changes.
        * mf-impl.h: Corresponding changes.
        * mf-hooks.c (realloc): Save/restore heap-wiping flag.
        * mf-hooks.c (realloc): Save/restore heap-wiping flag.
        * mf-runtime.h.in (__mf_set_options): Extend public API.
        * mf-runtime.h.in (__mf_set_options): Extend public API.
        * test/pass26-frag.c: New test for stack wiping.
        * test/pass26-frag.c: New test for stack wiping.
        * Makefile.am (TESTS): Run it.
        * Makefile.am (TESTS): Run it.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
2002-11-07  Frank Ch. Eigler  
2002-11-07  Frank Ch. Eigler  
        * mf-runtime.h.in (__mf_watch, __mf_unwatch): Extend public API.
        * mf-runtime.h.in (__mf_watch, __mf_unwatch): Extend public API.
        * mf-runtime.c (__mf_object_t): Add watching_p field.
        * mf-runtime.c (__mf_object_t): Add watching_p field.
        (__mf_watch_or_not): New function to implement
        (__mf_watch_or_not): New function to implement
        object watch flagging.
        object watch flagging.
        (__mf_watch, __mf_unwatch): New wrappers for above.
        (__mf_watch, __mf_unwatch): New wrappers for above.
        (__mf_check, __mf_describe_object): Handle objects with watching_p.
        (__mf_check, __mf_describe_object): Handle objects with watching_p.
        (__mf_count_violation): Enlarge array.
        (__mf_count_violation): Enlarge array.
        (__mf_uncache_object): Renamed from __mf_remove_old_object.  Don't
        (__mf_uncache_object): Renamed from __mf_remove_old_object.  Don't
        unlink object.  Clear cache properly.
        unlink object.  Clear cache properly.
        (__mf_unregister): Unlink object explicitly before uncaching.
        (__mf_unregister): Unlink object explicitly before uncaching.
        * test/fail21-frag.c, pass25-frag.c: New tests.
        * test/fail21-frag.c, pass25-frag.c: New tests.
        * Makefile.in, aclocal.m4: Regenerated.
        * Makefile.in, aclocal.m4: Regenerated.
2002-11-05  Frank Ch. Eigler  
2002-11-05  Frank Ch. Eigler  
        * test/fail20-frag.c: New test for NULL pointer dereferencing.
        * test/fail20-frag.c: New test for NULL pointer dereferencing.
        * Makefile.am (TESTS): Add it.
        * Makefile.am (TESTS): Add it.
        * test/pass-stratcliff.c: Add decls of stpcpy.
        * test/pass-stratcliff.c: Add decls of stpcpy.
        * configure.in: Test for .  Generate mf-runtime.h in
        * configure.in: Test for .  Generate mf-runtime.h in
        build tree from config.h and new file mf-runtime.h.in.
        build tree from config.h and new file mf-runtime.h.in.
        * mf-runtime.h.in: Renamed from mf-runtime.h.  Tweak uintptr_t decl.
        * mf-runtime.h.in: Renamed from mf-runtime.h.  Tweak uintptr_t decl.
        * Makefile.in, configure, config.h.in: Regenerated.
        * Makefile.in, configure, config.h.in: Regenerated.
        * mf-hooks.c: Add #undef for wrapped glibc str*/mem* macros.
        * mf-hooks.c: Add #undef for wrapped glibc str*/mem* macros.
        * mf-runtime.c (options, __mf_set_default_options): Support new
        * mf-runtime.c (options, __mf_set_default_options): Support new
        default "abbreviate" option.
        default "abbreviate" option.
        (__mf_object.description_epoch): New field.
        (__mf_object.description_epoch): New field.
        (__mf_describe_object): Conditionally abbreviate objects already
        (__mf_describe_object): Conditionally abbreviate objects already
        displayed in current epoch.  Accept NULL input to increment epoch.
        displayed in current epoch.  Accept NULL input to increment epoch.
        (__mf_fini, __mf_ini): Reset description epoch.
        (__mf_fini, __mf_ini): Reset description epoch.
        (__mf_register, __mf_unregister, __mf_adapt_cache, __mf_init): Ensure
        (__mf_register, __mf_unregister, __mf_adapt_cache, __mf_init): Ensure
        that NULL pointer slot in lookup cache is invalidated.  Register a
        that NULL pointer slot in lookup cache is invalidated.  Register a
        NOACCESS region around NULL.
        NOACCESS region around NULL.
        * mf-impl.h: Corresponding changes.
        * mf-impl.h: Corresponding changes.
2002-10-16  Frank Ch. Eigler  
2002-10-16  Frank Ch. Eigler  
        * test/fail19-frag.c, pass24-frag.c, pass-stratcliff.c: New tests.
        * test/fail19-frag.c, pass24-frag.c, pass-stratcliff.c: New tests.
        * Makefile.am: Run them.  Install mf-runtime.h.
        * Makefile.am: Run them.  Install mf-runtime.h.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * mf-hooks.c: Add some markers for more missing functions.
        * mf-hooks.c: Add some markers for more missing functions.
        * mf-runtime.c (__mf_adapt_cache): Experiment with a utilization-based
        * mf-runtime.c (__mf_adapt_cache): Experiment with a utilization-based
        statistic to tune tune cache size (mask).
        statistic to tune tune cache size (mask).
2002-10-01  Frank Ch. Eigler  
2002-10-01  Frank Ch. Eigler  
        * test/pass23-frag.c: New test for bit_field_ref expressions.
        * test/pass23-frag.c: New test for bit_field_ref expressions.
        * Makefile.am, Makefile.in: Add new test.
        * Makefile.am, Makefile.in: Add new test.
        * mf-hooks.c (mmap, munmap): Rewrite to track individual pages.
        * mf-hooks.c (mmap, munmap): Rewrite to track individual pages.
        (MF_VALIDATE_EXTENT): Accept zero-size mem/str operations.
        (MF_VALIDATE_EXTENT): Accept zero-size mem/str operations.
        * mf-runtime.c (__mf_init): Register errno global.
        * mf-runtime.c (__mf_init): Register errno global.
        (__mf_find_object): Removed function.
        (__mf_find_object): Removed function.
        (__mf_check): Rewrite logic to support accesses across some
        (__mf_check): Rewrite logic to support accesses across some
        contiguous but distinctly registered objects.
        contiguous but distinctly registered objects.
        (__mf_remove_old_object): Tolerate cache entries that span
        (__mf_remove_old_object): Tolerate cache entries that span
        contiguous objects.
        contiguous objects.
2002-09-30  Frank Ch. Eigler  
2002-09-30  Frank Ch. Eigler  
        * test/pass21-frag.c, pass22-frag.c: New tests: alloca, bitfields.
        * test/pass21-frag.c, pass22-frag.c: New tests: alloca, bitfields.
        * Makefile.am, Makefile.in: Run new tests.
        * Makefile.am, Makefile.in: Run new tests.
        * mf-hooks.c (alloca): Correct stack direction logic.
        * mf-hooks.c (alloca): Correct stack direction logic.
2002-09-26  Frank Ch. Eigler  
2002-09-26  Frank Ch. Eigler  
        * mf-impl.h (adapt_cache): New option.
        * mf-impl.h (adapt_cache): New option.
        * mf-runtime.c (__mf_set_default_options): Set its default value.
        * mf-runtime.c (__mf_set_default_options): Set its default value.
        Tweak the tree_aging parameter down.
        Tweak the tree_aging parameter down.
        (__mf_check): Maintain separate counter for cache-adaptation.
        (__mf_check): Maintain separate counter for cache-adaptation.
        (__mf_tree_analyze): New function to collect object tree stats.
        (__mf_tree_analyze): New function to collect object tree stats.
        (__mf_adapt_cache): New function to automate cache parameters.
        (__mf_adapt_cache): New function to automate cache parameters.
2002-09-24  Frank Ch. Eigler  
2002-09-24  Frank Ch. Eigler  
        * mf-heuristics.c (__init_misc, __mf_heuristic_check): Add
        * mf-heuristics.c (__init_misc, __mf_heuristic_check): Add
        hypothetical #if-0'd argv/envp region registration.
        hypothetical #if-0'd argv/envp region registration.
        * mf-runtime.c (__mf_init): Add kludged form of above.
        * mf-runtime.c (__mf_init): Add kludged form of above.
        (*) Add "heur_argv_environ" flag, default on, to govern this.
        (*) Add "heur_argv_environ" flag, default on, to govern this.
        * mf-impl.h: Corresponding changes.
        * mf-impl.h: Corresponding changes.
2002-09-20  Frank Ch. Eigler  
2002-09-20  Frank Ch. Eigler  
        * test/fail18-frag.c: New test file for NOACCESS regions.
        * test/fail18-frag.c: New test file for NOACCESS regions.
        * Makefile.am (TESTS): Add new test.
        * Makefile.am (TESTS): Add new test.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * mf-heuristics.c (__mf_heuristics_check): Correct deja_vu logic.
        * mf-heuristics.c (__mf_heuristics_check): Correct deja_vu logic.
        * mf-impl.h (tree_aging): Add new mudflap_option, default 1000000.
        * mf-impl.h (tree_aging): Add new mudflap_option, default 1000000.
        (optimize_object_tree): Remove unused mudflap_option.
        (optimize_object_tree): Remove unused mudflap_option.
        * mf-runtime.h (__MF_TYPE_NOACCESS): New region type.  Add printing
        * mf-runtime.h (__MF_TYPE_NOACCESS): New region type.  Add printing
        support throughout.  Use .._MAX_CEM for cemetary upper bound.
        support throughout.  Use .._MAX_CEM for cemetary upper bound.
        * mf-runtime.c (__mf_init): Register __mf_* globals as NOACCESS
        * mf-runtime.c (__mf_init): Register __mf_* globals as NOACCESS
        regions.
        regions.
        (__mf_object): Add new liveness field for use by tree aging.
        (__mf_object): Add new liveness field for use by tree aging.
        (__mf_check): Trigger tree aging when needed.
        (__mf_check): Trigger tree aging when needed.
        (__mf_age_tree): New function to decay liveness field.
        (__mf_age_tree): New function to decay liveness field.
        (__mf_find_objects_rec): Use liveness field to rotate tree.
        (__mf_find_objects_rec): Use liveness field to rotate tree.
        (__mf_insert_new_object): Only provide backtrace for HEAP objects.
        (__mf_insert_new_object): Only provide backtrace for HEAP objects.
        (__mf_unregister): Ditto.
        (__mf_unregister): Ditto.
        (__mf_register): Tweak duplicate-static message.
        (__mf_register): Tweak duplicate-static message.
        (__mf_violation: Tweak nearby-object counter printing.
        (__mf_violation: Tweak nearby-object counter printing.
2002-09-16  Frank Ch. Eigler  
2002-09-16  Frank Ch. Eigler  
        * test/pass20-frag.c: New test file.
        * test/pass20-frag.c: New test file.
        * Makefile.am (TESTS): Reorganize.  Add pass20 test.
        * Makefile.am (TESTS): Reorganize.  Add pass20 test.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * mf-impl.h (TRACE_IN, TRACE_OUT): Remove macros.  Update callers.
        * mf-impl.h (TRACE_IN, TRACE_OUT): Remove macros.  Update callers.
        * mf-hooks.c (BEGIN_PROTECT): Add hook tracing here.
        * mf-hooks.c (BEGIN_PROTECT): Add hook tracing here.
        * mf-heuristic.c (__mf_heuristic_check): Track seen /proc/self/map
        * mf-heuristic.c (__mf_heuristic_check): Track seen /proc/self/map
        entries to avoid repeat registration.
        entries to avoid repeat registration.
        * mf-runtime.c (__mf_object_cemetary): Don't bother bury GUESS regions.
        * mf-runtime.c (__mf_object_cemetary): Don't bother bury GUESS regions.
        (__mf_register, __mf_unregister): Rewrite GUESS handling logic.
        (__mf_register, __mf_unregister): Rewrite GUESS handling logic.
2002-09-09  Frank Ch. Eigler  
2002-09-09  Frank Ch. Eigler  
        * Makefile.am: Create test sources with #include, not cat>>.
        * Makefile.am: Create test sources with #include, not cat>>.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * test/buildtest.sh: Removed.
        * test/buildtest.sh: Removed.
        * test/driver.c (abort_handler, main): Be quiet.
        * test/driver.c (abort_handler, main): Be quiet.
2002-09-06  Frank Ch. Eigler  
2002-09-06  Frank Ch. Eigler  
        * test/pass18-frag.c, pass19-frag.c: New tests.
        * test/pass18-frag.c, pass19-frag.c: New tests.
        * Makefile.am (check): Run them.  Rebuild test programs each time.
        * Makefile.am (check): Run them.  Rebuild test programs each time.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
2002-09-06  Frank Ch. Eigler  
2002-09-06  Frank Ch. Eigler  
        * mf-runtime.c (__mf_register): Correct SEGV-inducing error in
        * mf-runtime.c (__mf_register): Correct SEGV-inducing error in
        overlapping object search.
        overlapping object search.
        (__mf_violation): Likewise for nearby objects.
        (__mf_violation): Likewise for nearby objects.
        Improve nearby-object listing.
        Improve nearby-object listing.
        cleanup:
        cleanup:
        * mf-runtime.c, mf-hooks.c: Remove "{{{"/"}}}" folding marks.
        * mf-runtime.c, mf-hooks.c: Remove "{{{"/"}}}" folding marks.
        * mf-heuristics.c (__mf_heuristic_check): Tweak message.
        * mf-heuristics.c (__mf_heuristic_check): Tweak message.
2002-09-03  Frank Ch. Eigler  
2002-09-03  Frank Ch. Eigler  
        alloca support:
        alloca support:
        * Makefile.am (AM_CFLAGS): New definition of needed settings.
        * Makefile.am (AM_CFLAGS): New definition of needed settings.
        (HOOKOBJS): Add alloca-hook.o.
        (HOOKOBJS): Add alloca-hook.o.
        * mf-hooks.c (alloca): New function to implement alloca in libiberty
        * mf-hooks.c (alloca): New function to implement alloca in libiberty
        style.
        style.
        * mf-runtime.c (__mf_report): Call alloca(0) to flush remaining blocks.
        * mf-runtime.c (__mf_report): Call alloca(0) to flush remaining blocks.
        (__mf_backtrace): Reimplement without using alloca.
        (__mf_backtrace): Reimplement without using alloca.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        cleanup:
        cleanup:
        * mf-hooks.c: Use VERBOSE_TRACE throughout instead of fprintf(stderr).
        * mf-hooks.c: Use VERBOSE_TRACE throughout instead of fprintf(stderr).
        Correct signedness bugs in length-tracking variables.
        Correct signedness bugs in length-tracking variables.
        * mf-impl.h: Make options unsigned.
        * mf-impl.h: Make options unsigned.
        (CALL_WRAP): New macro to parallel CALL_REAL().
        (CALL_WRAP): New macro to parallel CALL_REAL().
        (DECLARE): Remove erroneous ";" at end.
        (DECLARE): Remove erroneous ";" at end.
        * mf-runtime.c, mf-hooks.c, mf-heuristics.c: Replace remaining %p
        * mf-runtime.c, mf-hooks.c, mf-heuristics.c: Replace remaining %p
        formatting specs with %08lx.  Correct several compiler warnings.
        formatting specs with %08lx.  Correct several compiler warnings.
2002-08-28  Frank Ch. Eigler  
2002-08-28  Frank Ch. Eigler  
        * mf-runtime.c (__mf_violation): Try harder to locate nearby objects.
        * mf-runtime.c (__mf_violation): Try harder to locate nearby objects.
2002-08-27  Frank Ch. Eigler  
2002-08-27  Frank Ch. Eigler  
        libmudflap hook breakup:
        libmudflap hook breakup:
        * Makefile.am (TESTS_ENVIRONMENT): Add ../../gcc to LD_LIBRARY_PATH
        * Makefile.am (TESTS_ENVIRONMENT): Add ../../gcc to LD_LIBRARY_PATH
        for libgcc_s.
        for libgcc_s.
        (TESTS): Make dependent on libmudflap.
        (TESTS): Make dependent on libmudflap.
        (HOOKOBJS): Break up mf-hooks.o into many little hook objects,
        (HOOKOBJS): Break up mf-hooks.o into many little hook objects,
        compiled from segments of mf-hooks.c.
        compiled from segments of mf-hooks.c.
        * mf-hooks.c: Corresponding changes: wrap each function in
        * mf-hooks.c: Corresponding changes: wrap each function in
        #ifdef/#endif.
        #ifdef/#endif.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        Heuristics reorganization:
        Heuristics reorganization:
        * mf-heuristics.c (__mf_register_ro_sections, __mf_init_heuristics):
        * mf-heuristics.c (__mf_register_ro_sections, __mf_init_heuristics):
        Remove these functions.  Update callers.
        Remove these functions.  Update callers.
        (__mf_heuristic_check): Incorporate all the various heuristics.
        (__mf_heuristic_check): Incorporate all the various heuristics.
        Encode cacheability/retry judgement into trinary return value.
        Encode cacheability/retry judgement into trinary return value.
        Separate start-end logic into a separate fallback heuristic.  Only
        Separate start-end logic into a separate fallback heuristic.  Only
        register relevant /proc/self/map segments.
        register relevant /proc/self/map segments.
        * mf-impl.h: Corresponding changes.
        * mf-impl.h: Corresponding changes.
        * mf-runtime.c (__mf_check): Reorganize heuristics fallback logic.
        * mf-runtime.c (__mf_check): Reorganize heuristics fallback logic.
        (__mf_init): Don't call __mf_init_heuristics.
        (__mf_init): Don't call __mf_init_heuristics.
        Tracing cleanup:
        Tracing cleanup:
        * mf-heuristics.c, mf-runtime.c: Use new MUDFLAP_OPTION
        * mf-heuristics.c, mf-runtime.c: Use new MUDFLAP_OPTION
        "-verbose-trace" to emit all tracing messages other than those of
        "-verbose-trace" to emit all tracing messages other than those of
        basic public api.  Eliminate some duplicate/excessive messages.
        basic public api.  Eliminate some duplicate/excessive messages.
        * mf-runtime.h: Corresponding changes.
        * mf-runtime.h: Corresponding changes.
2002-08-27  Graydon Hoare  
2002-08-27  Graydon Hoare  
        * mf-impl.h (WRAPPER): Change to create linker aliases for __wrap
        * mf-impl.h (WRAPPER): Change to create linker aliases for __wrap
        and __real when compiled with -DPIC.
        and __real when compiled with -DPIC.
        * mf-hooks.c (WRAPPER): Change all uses of WRAPPER macro slightly.
        * mf-hooks.c (WRAPPER): Change all uses of WRAPPER macro slightly.
        * Makefile.am (AUTOMAKE_OPTIONS): Fix LD_LIBRARY_PATH for tests.
        * Makefile.am (AUTOMAKE_OPTIONS): Fix LD_LIBRARY_PATH for tests.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
2002-08-26  Graydon Hoare  
2002-08-26  Graydon Hoare  
        * mf-impl.h: New file, private implementation header.
        * mf-impl.h: New file, private implementation header.
        * mf-runtime.h: Reorganize a bit.
        * mf-runtime.h: Reorganize a bit.
        (CLAMPSZ): Fix arithmetic.
        (CLAMPSZ): Fix arithmetic.
        (__MF_CACHE_MISS_P): Fix arithmetic.
        (__MF_CACHE_MISS_P): Fix arithmetic.
        * mf-runtime.c: Reorganize a bit.
        * mf-runtime.c: Reorganize a bit.
        (__mf_dynamic): New structure.
        (__mf_dynamic): New structure.
        (resolve_single_dynamic): New function.
        (resolve_single_dynamic): New function.
        (__mf_resolve_dynamics): New function.
        (__mf_resolve_dynamics): New function.
        (__mf_init): Initialize dynamic wrappers.
        (__mf_init): Initialize dynamic wrappers.
        * mf-hooks.c: Macro-ize __real calls.
        * mf-hooks.c: Macro-ize __real calls.
        Clamp various bits of arithmetic.
        Clamp various bits of arithmetic.
        Add explicit __mf_check call contexts.
        Add explicit __mf_check call contexts.
        * Makefile.am: Add dependencies on mf-impl.h
        * Makefile.am: Add dependencies on mf-impl.h
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * configure.in: Comment out shared override.
        * configure.in: Comment out shared override.
        * configure: Regenerate.
        * configure: Regenerate.
2002-08-22  Graydon Hoare  
2002-08-22  Graydon Hoare  
        * mf-runtime.c (__mf_process_opts): Sanity-check free_queue_length.
        * mf-runtime.c (__mf_process_opts): Sanity-check free_queue_length.
        (__mf_check): Re-inialize and check heuristics before violation.
        (__mf_check): Re-inialize and check heuristics before violation.
        (__mf_register): Permit updating pure-guess regions.
        (__mf_register): Permit updating pure-guess regions.
        * mf-hooks.c (__wrap_free): Correct some free queue logic.
        * mf-hooks.c (__wrap_free): Correct some free queue logic.
        (__wrap_dlopen): New wrapper function.
        (__wrap_dlopen): New wrapper function.
        (__wrap_mmap): New wrapper function.
        (__wrap_mmap): New wrapper function.
        (__wrap_munmap): New wrapper function.
        (__wrap_munmap): New wrapper function.
        * mf-heuristics.c (__mf_register_ro_sections): Register *all* regions
        * mf-heuristics.c (__mf_register_ro_sections): Register *all* regions
        which are not stack addresses.
        which are not stack addresses.
        (is_stack_address): New function.
        (is_stack_address): New function.
        (__mf_init_heuristics): Save and restore state, always initialize with
        (__mf_init_heuristics): Save and restore state, always initialize with
        "starting" state.
        "starting" state.
2002-08-21  Frank Ch. Eigler  
2002-08-21  Frank Ch. Eigler  
        * mf-hooks.c (MF_VALIDATE_EXTENT): Rewrite to correct off-by-one
        * mf-hooks.c (MF_VALIDATE_EXTENT): Rewrite to correct off-by-one
        error.  Pass location string.
        error.  Pass location string.
        (wrap_strcpy, wrap_strncpy): Remove extra %s in trace strings.
        (wrap_strcpy, wrap_strncpy): Remove extra %s in trace strings.
        * mf-runtime.c (options): Add lc-mask, lc-shift options.
        * mf-runtime.c (options): Add lc-mask, lc-shift options.
        (__mf_process_opts): Apply some sanity checking for lc-mask.
        (__mf_process_opts): Apply some sanity checking for lc-mask.
        (__mf_check, __mf_violation): Take new location-string argument.
        (__mf_check, __mf_violation): Take new location-string argument.
        Update callers to pass NULL if necessary.
        Update callers to pass NULL if necessary.
        (__mf_backtrace): New smart backtracer function.  Calls replace
        (__mf_backtrace): New smart backtracer function.  Calls replace
        several ad-hoc blocks elsewhere.
        several ad-hoc blocks elsewhere.
        (__mf_describe_object): Remove bad reentrancy test.  Improve
        (__mf_describe_object): Remove bad reentrancy test.  Improve
        tracing message.
        tracing message.
        * mf-runtime.h: Corresponding changes.  Public/private markup.
        * mf-runtime.h: Corresponding changes.  Public/private markup.
        (__MF_CACHE_MISS_P): New macro.
        (__MF_CACHE_MISS_P): New macro.
2002-08-20  Graydon Hoare  
2002-08-20  Graydon Hoare  
        * mf-runtime.h: New option: stack_bound (heuristic).
        * mf-runtime.h: New option: stack_bound (heuristic).
        Move some macros out of implementation files.
        Move some macros out of implementation files.
        * mf-runtime.c: New option string: -stack-bound.
        * mf-runtime.c: New option string: -stack-bound.
        Unify recursion protection with hooks.
        Unify recursion protection with hooks.
        Add more logging.
        Add more logging.
        (__mf_check): Call __mf_heuristic_check.
        (__mf_check): Call __mf_heuristic_check.
        (__mf_process_opts): Fix "no-" processing.
        (__mf_process_opts): Fix "no-" processing.
        * mf-heuristics.c (__mf_heuristic_check): New function.
        * mf-heuristics.c (__mf_heuristic_check): New function.
        * mf-hooks.c: Much off-by-one fixing, recursion protection.
        * mf-hooks.c: Much off-by-one fixing, recursion protection.
2002-08-20  Frank Ch. Eigler  
2002-08-20  Frank Ch. Eigler  
        Option parsing improvements, region splitting bug fixes:
        Option parsing improvements, region splitting bug fixes:
        * mf-heuristics.c (__mf_register_ro_sections): Add warned casts.
        * mf-heuristics.c (__mf_register_ro_sections): Add warned casts.
        * mf-runtime.h (heur_proc_map): New libmudflap option.
        * mf-runtime.h (heur_proc_map): New libmudflap option.
        * mf-runtime.c (__mf_set_default_options): Set it.
        * mf-runtime.c (__mf_set_default_options): Set it.
        (__mf_usage): Print default values/status.
        (__mf_usage): Print default values/status.
        (__mf_process_opts): Support general "no-" option string prefix.
        (__mf_process_opts): Support general "no-" option string prefix.
        (__mf_init): Print __mf_usage on unknown-option error.
        (__mf_init): Print __mf_usage on unknown-option error.
        (__mf_register): Print trace message up front.
        (__mf_register): Print trace message up front.
        Correct region splitting logic for case where a subregion disappears.
        Correct region splitting logic for case where a subregion disappears.
        Correct memory leak.
        Correct memory leak.
        (__mf_violation): Make even basic message conditional on option.
        (__mf_violation): Make even basic message conditional on option.
        Build cleanup:
        Build cleanup:
        * Makefile.am (TESTS_ENVIRONMENT): Add -no-heur-proc-map.
        * Makefile.am (TESTS_ENVIRONMENT): Add -no-heur-proc-map.
        (clean-local): New target.
        (clean-local): New target.
        (test/*x rules): Add -g CFLAGS.
        (test/*x rules): Add -g CFLAGS.
        (CFLAGS): Add -freorder-blocks.
        (CFLAGS): Add -freorder-blocks.
        (MFCONFIG_CFLAGS, INCLUDE): Remove unneeded settings.
        (MFCONFIG_CFLAGS, INCLUDE): Remove unneeded settings.
        * Makefile.in: Regenerated.
        * Makefile.in: Regenerated.
        * Makefile, mf-config.h: Removed files.
        * Makefile, mf-config.h: Removed files.
2002-08-16  Graydon Hoare  
2002-08-16  Graydon Hoare  
        * mf-runtime.c (__mf_insert_new_object): Factor out of
        * mf-runtime.c (__mf_insert_new_object): Factor out of
        __mf_register.
        __mf_register.
        (__mf_remove_old_object): Factor out of __mf_unregister.
        (__mf_remove_old_object): Factor out of __mf_unregister.
        (__mf_register): Handle guessed regions, splitting
        (__mf_register): Handle guessed regions, splitting
        guesses when new registrations arrive.
        guesses when new registrations arrive.
        (__mf_unregister): Do not unregister guesses.
        (__mf_unregister): Do not unregister guesses.
        * mf-runtime.h: Move convenience macros around,
        * mf-runtime.h: Move convenience macros around,
        declare new option fields. Add __MF_TYPE_GUESS.
        declare new option fields. Add __MF_TYPE_GUESS.
        * mf-hooks.c (__wrap_*alloc): Use crumple zones.
        * mf-hooks.c (__wrap_*alloc): Use crumple zones.
        (__wrap_free): Call __real_free for deferred frees.
        (__wrap_free): Call __real_free for deferred frees.
        * Makefile.am: Add more tests, fix dependency.
        * Makefile.am: Add more tests, fix dependency.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * test/pass[13..17]-frag.c: New testcases.
        * test/pass[13..17]-frag.c: New testcases.
        * test/fail[13..17]-frag.c: New testcases.
        * test/fail[13..17]-frag.c: New testcases.
2002-08-15  Graydon Hoare  
2002-08-15  Graydon Hoare  
        * mf-heuristics.c: New file.
        * mf-heuristics.c: New file.
        * mf-runtime.c (options): Add -trace-calls option.
        * mf-runtime.c (options): Add -trace-calls option.
        (__mf_init): Call __mf_init_heuristics.
        (__mf_init): Call __mf_init_heuristics.
2002-08-14  Graydon Hoare  
2002-08-14  Graydon Hoare  
        * Makefile.am (TESTS): Add testsuite support.
        * Makefile.am (TESTS): Add testsuite support.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
        * test/mf-driver.c: New file.
        * test/mf-driver.c: New file.
        * test/buildtest.sh: New file.
        * test/buildtest.sh: New file.
        * test/passNN-frag.c: New testcases.
        * test/passNN-frag.c: New testcases.
        * test/failNN-frag.c: New testcases.
        * test/failNN-frag.c: New testcases.
2002-08-14  Graydon Hoare  
2002-08-14  Graydon Hoare  
        * mf-hooks.c: Change __real_strlen() to __real_strlen()+1 when
        * mf-hooks.c: Change __real_strlen() to __real_strlen()+1 when
        verifying non-size-limited string extents.
        verifying non-size-limited string extents.
2002-08-14  Frank Ch. Eigler  
2002-08-14  Frank Ch. Eigler  
        * mf-hooks.c: Make __wrap string* functions use __real_str[n]len
        * mf-hooks.c: Make __wrap string* functions use __real_str[n]len
        instead of plain str[n]len for internal checks.
        instead of plain str[n]len for internal checks.
        * mf-runtime.c (__mf_violation): Print optional stack traceback.
        * mf-runtime.c (__mf_violation): Print optional stack traceback.
2002-08-14  Frank Ch. Eigler  
2002-08-14  Frank Ch. Eigler  
        * mf-hooks.c: Remove #if-0 around hooks that are now ld-wrapped.
        * mf-hooks.c: Remove #if-0 around hooks that are now ld-wrapped.
2002-08-13  Graydon Hoare  
2002-08-13  Graydon Hoare  
        * mf-runtime.c: Rework configuration to operate on
        * mf-runtime.c: Rework configuration to operate on
        environment variable options rather than #defines
        environment variable options rather than #defines
        (__mf_violation): Add simple fork-a-gdb violaiton mode.
        (__mf_violation): Add simple fork-a-gdb violaiton mode.
        (__mf_init): Set static __mf_active_p flag on startup,
        (__mf_init): Set static __mf_active_p flag on startup,
        to inhibit mudflap wrap-based checking during crt0.s.
        to inhibit mudflap wrap-based checking during crt0.s.
        * mf-runtime.h: Declare options structure.
        * mf-runtime.h: Declare options structure.
        * mf-hooks.c: New wrappings for mem*, b*, str*
        * mf-hooks.c: New wrappings for mem*, b*, str*
        libc functions (temporarily #if 0-ed out).
        libc functions (temporarily #if 0-ed out).
2002-08-12  Frank Ch. Eigler  
2002-08-12  Frank Ch. Eigler  
        * Makefile.am, configure.in: New files.
        * Makefile.am, configure.in: New files.
        * Makefile.in, Makefile, configure, config.h.in: New generated files.
        * Makefile.in, Makefile, configure, config.h.in: New generated files.
        * stamp-h.in, aclocal.m4: Ditto.
        * stamp-h.in, aclocal.m4: Ditto.
2002-08-08  Frank Ch. Eigler  
2002-08-08  Frank Ch. Eigler  
        * Makefile: New file.
        * Makefile: New file.
        * mf-config.h: New file: runtime configuration.
        * mf-config.h: New file: runtime configuration.
        * mf-hooks.c: New file: interposed libc functions.
        * mf-hooks.c: New file: interposed libc functions.
        * mf-runtime.c: New file: bulk of runtime.
        * mf-runtime.c: New file: bulk of runtime.
        * mf-runtime.h: New file: public functions.
        * 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.