Commit Graph

34 Commits

Author SHA1 Message Date
Frank Ch. Eigler
5d0001f015 re PR libmudflap/41433 (security: mudflap accepts environment variables if setuid)
2009-09-22  Frank Ch. Eigler  <fche@redhat.com>

	PR libmudflap/41433
	* mf-runtime.c (__mf_init): Ignore $MUDFLAP_OPTIONS if
	running setuid or setgid.

From-SVN: r152026
2009-09-22 16:17:50 +00:00
Loren J. Rittle
f05816a5ee mf-runtime.c (__mf_init): Support FreeBSD.
2009-09-01  Loren J. Rittle  <ljrittle@acm.org>

	* mf-runtime.c (__mf_init): Support FreeBSD.
	Prime mutex which calls calloc upon first lock to avoid deadlock.
	* mf-hooks1.c (__mf_0fn_mmap): Support FreeBSD.
	Ignore red zone allocation request for initial thread's stack.

From-SVN: r151278
2009-09-01 18:13:18 +00:00
Jakub Jelinek
748086b7b2 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Jakub Jelinek
d4f4bc84b0 gcc.c (process_command): Update copyright notice dates.
* gcc.c (process_command): Update copyright notice dates.
	* gcov.c (print_version): Likewise.
	* gcov-dump.c (print_version): Likewise.
	* mips-tfile.c (main): Likewise.
	* mips-tdump.c (main): Likewise.

	* gfortranspec.c (lang_specific_driver): Update copyright notice
	dates.

	* jcf-dump.c (version): Update copyright notice dates.

	* mf-runtime.c (__mf_usage): Update copyright notice dates.

	* gnu/gcj/convert/Convert.java (version): Update copyright notice
	dates.
	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Likewise.

	* gnu/java/rmi/registry/RegistryImpl.java (version): Update
	copyright notice dates.
	* tools/gnu/classpath/tools/orbd/Main.java (run): Likewise.

From-SVN: r143907
2009-02-03 21:48:23 +01:00
Jie Zhang
5cf9cc965f mf-impl.h (__mf_get_state, [...]): Don't use __thread when TLS support is emulated.
libmudflap/
	* mf-impl.h (__mf_get_state, __mf_set_state): Don't use
	__thread when TLS support is emulated.
	* mf-hooks3.c (__mf_get_state, __mf_set_state): Likewise.
	* mf-runtime.c (__mf_state_1): Likewise.
	* configure.ac: Use GCC_CHECK_EMUTLS.
	* configure: Regenerate.
	* config.h.in: Regenerate.

	config/
	* tls.m4 (GCC_CHECK_EMUTLS): Define.

From-SVN: r143583
2009-01-23 04:58:03 +00:00
Jakub Jelinek
0e5997c0ff re PR driver/35420 (--version copyright date vs. 2008)
PR driver/35420
	* gcc.c (process_command): Update copyright notice dates.
	* gcov.c (print_version): Likewise.
	* gcov-dump.c (print_version): Likewise.
	* mips-tfile.c (main): Likewise.
	* mips-tdump.c (main): Likewise.

	* jcf-dump.c (version): Update copyright notice dates.

	* gfortranspec.c (lang_specific_driver): Update copyright notice
	dates.

	* mf-runtime.c (__mf_usage): Update copyright notice dates.

	* gnu/gcj/convert/Convert.java (version): Update copyright notice
	dates.
	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Likewise.

	* gnu/java/rmi/registry/RegistryImpl.java (version): Update
	copyright notice dates.
	* tools/gnu/classpath/tools/orbd/Main.java (run): Likewise.

From-SVN: r132823
2008-03-02 23:50:02 +01:00
Frank Ch. Eigler
3b088eb09a 2007-05-31 Frank Ch. Eigler <fche@redhat.com>
From Andi Kleen <ak@suse.de>:
	* mf-runtime.c (options): Rename structure for compatibility with
	glibc getopt_long.

From-SVN: r125237
2007-05-31 20:04:53 +00:00
Frank Ch. Eigler
841745310d 2006-11-06 Frank Ch. Eigler <fche@redhat.com>
From Herman ten Brugge <hermantenbrugge@home.nl>:
	* mf-runtime.c (__mf_uncache_object): Optimize the code so that
	small and large objects are handled a lot faster.

From-SVN: r118526
2006-11-06 20:04:14 +00:00
Frank Ch. Eigler
a548d7b753 configure.ac (__libc_freeres): Look for it.
2006-11-06  Frank Ch. Eigler  <fche@redhat.com>

	* configure.ac (__libc_freeres): Look for it.
	* mf-impl.h (call_libc_freeres): New configuration flag.
	* mf-runtime.c (__mf_set_default_options): Set it by default.
	(__mfu_report): Call it if needed.
	(__mfu_unregister): Remove "unaccessed registered object" warning.
	* configure, config.h.in: Regenerated.

From-SVN: r118523
2006-11-06 18:02:13 +00:00
Kelley Cook
f9d09c4359 All files: Update FSF address.
2005-08-17  Kelley Cook  <kcook@gcc.gnu.org>

	* All files: Update FSF address.

From-SVN: r103197
2005-08-17 03:21:42 +00:00
Ulrich Weigand
22f99b8212 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-hooks3.c (__mf_pthread_spawner): Always set thread
	state active.
	(pthread_create wrapper): Always use thread spawner.

	* testsuite/libmudflap.cth/pass37-frag.c: Increase timeout.
	* testsuite/libmudflap.cth/pass39-frag.c: Likewise.

From-SVN: r103084
2005-08-14 19:38:34 +00:00
Richard Henderson
7544a87f13 gcc.c (MFWRAP_SPEC): Don't wrap pthread_join or pthread_exit.
* gcc.c (MFWRAP_SPEC): Don't wrap pthread_join or pthread_exit.

        * acinclude.m4: New file.
        * configure.ac: Invoke LIBMUDFLAP_CHECK_TLS.
        * configure, config.h.in, Makefile.in, testsuite/Makefile.in: Rebuild.
        * mf-hooks1.c (__mf_0fn_malloc): Move body from ...
        (__mf_0fn_calloc): ... here.
        * mf-hooks3.c (struct pthread_info): Remove.
        (__mf_pthread_info, __mf_pthread_info_idx): Remove.
        (LIBMUDFLAPTH_THREADS_MAX): Set to 1021.
        (struct mf_thread_data): New.
        (mf_thread_data, mf_thread_data_lock): New.
        (__mf_allocate_blank_threadinfo): Remove.
        (__mf_find_threadinfo): Rewrite and simplify.  Only use if TLS is
        not available.
        (__mf_state_perthread): Remove.
        (__mf_get_state, __mf_set_state): New.
        (__mf_pthread_cleanup): Use &errno, rather than saved pointer.
        Update mf_thread_data killing procedure.
        (__mf_pthread_spawner): Similarly.
        (__mf_0fn_pthread_create): Only use wrapper if necessary.  Remove
        code to allocate thread stack space.
        (__mf_0fn_pthread_join, pthread_join): Remove.
        (__mf_0fn_pthread_exit, 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_get_state, __mf_set_state): New.  Update all users.
        * mf-runtime.c (begin_recursion_protect1): New.
        (BEGIN_RECURSION_PROTECT): Use it.
        (__mf_state_1): Rename from __mf_state; use TLS when available.
        (threads_active_p): Remove.
        (__mf_usage): Compute it directly.

From-SVN: r102108
2005-07-16 19:29:00 -07:00
Frank Ch. Eigler
e1f4adc93b Fix for uncaching bug reported by Herman ten Brugge.
2005-06-15  Frank Ch. Eigler  <fche@redhat.com>

	Fix for uncaching bug reported by Herman ten Brugge.
	* mf-runtime.c (__mf_uncache_object): Search whole cache.
	* testsuite/libmudflap.c/fail40-frag.c: New test.

From-SVN: r100985
2005-06-15 16:15:40 +00:00
Alan Modra
58dc8547f2 * mf-runtime.c (__mfu_unregister): Warning fix for char unsigned.
From-SVN: r97532
2005-04-04 19:39:46 +09:30
Mike Stump
fb925a5148 mf-heuristics.c: Fix whitespace at end of line.
* mf-heuristics.c: Fix whitespace at end of line.
        * mf-hooks1.c: Likewise.
        * mf-hooks2.c: Likewise.
        * mf-hooks3.c: Likewise.
        * mf-impl.h: Likewise.
        * mf-runtime.c: Likewise.
        * mf-runtime.h: Likewise.

From-SVN: r96850
2005-03-22 02:14:33 +00:00
Frank Ch. Eigler
0ee4e76d11 mf-runtime.c (__mfu_check): Respect ignore_reads configuration.
2005-03-17  Frank Ch. Eigler  <fche@redhat.com>

	* mf-runtime.c (__mfu_check): Respect ignore_reads configuration.
	* testsuite/libmudflap.c/{pass56,fail39}-frag.c: New tests.

From-SVN: r96620
2005-03-17 17:20:49 +00:00
Frank Ch. Eigler
ddfabf89bb configure.ac: Check for more headers, functions.
2004-10-12  Frank Ch. Eigler  <fche@redhat.com>

	* configure.ac: Check for more headers, functions.
	* mf-hooks2.c (mkbuffer, unmkbuffer): New helper functions for
	tracking overridden FILE buffers.
	(fopen, setvbuf): New/revised hook functions for buffer overriding.
	(setbuf,setlinebuf,fdopen,freopen,fopen64,freopen64,fclose): Ditto.
	(fflush): Accept given NULL stream (means "all streams").
	* mf-runtime.h.in:
	* mf-runtime.c (__mfu_check): Accept accesses that span adjacent
	HEAP/GUESS objects.
	(LOOKUP_CACHE_SIZE_MAX): Raise to 64K entries tentatively.
	(__mf_adapt_cache): Use them all.
	* testsuite/libmudflap.c/pass35-frag.c: Update warning message.
	* testsuite/libmudflap.c++/ctors.exp: Ditto.
	* testsuite/libmudflap.c/{pass51,pass52}-frag.c: New tests.
	* configure, config.h.in: Regenerated.

From-SVN: r88996
2004-10-13 18:27:16 +00:00
Frank Ch. Eigler
07c2f075fc configure.ac: Look for more headers & functions.
2004-10-04  Frank Ch. Eigler  <fche@redhat.com>

	* configure.ac: Look for more headers & 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.c (options): Clean up integer signedness warnings.
	(main): Add a declaration to fix a warning.
	* mf-hooks3.c (pthread_exit): Add not-reached exit() to wrapper.
	* configure, config.h.in: Regenerated.

From-SVN: r88517
2004-10-04 17:33:54 +00:00
Frank Ch. Eigler
66a5d3b1c1 configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
2004-09-07  Frank Ch. Eigler  <fche@redhat.com>

	* configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
	* mf-hooks2.c (strerror): Unregister previous string returned by
	previous strerror.
	(getlogin,cuserid,getpwnam,getpwuid,getgrnam,getgrgid): New wrappers.
	(getservent,getservbyname,getservbyport,gai_strerror): Ditto.
	* mf-runtime.h.in: Add redefine_extname pragmas for them all.
	* mf-runtime.c (__mf_describe_object): Clarify object life status.
	* testsuite/libmudflap.c/pass48-frag.c, pass49-frag.c, fail32-frag.c:
	New tests.
	* configure, config.h.in: Regenerated.

From-SVN: r87160
2004-09-07 21:52:52 +00:00
Dale Johannesen
029277b7c7 mf-runtime.c: Conditionalize POSIX_SOURCE for Darwin.
2004-08-03  Dale Johannesen  <dalej@apple.com>

         * mf-runtime.c: Conditionalize POSIX_SOURCE for Darwin.

From-SVN: r85478
2004-08-03 14:19:26 +00:00
Frank Ch. Eigler
73c3d5687f mf-runtime.c (compare_uintptr_t): Remove function.
2004-08-03  Frank Ch. Eigler  <fche@redhat.com>

	* mf-runtime.c (compare_uintptr_t): Remove function.  Inline
	simplified contents in all former callers.

From-SVN: r85475
2004-08-03 13:40:21 +00:00
Ulrich Weigand
6687a26359 mf-runtime.c (__mf_fini): Set mudflap_mode to mode_nop in the statically linked case.
2004-07-27  Ulrich Weigand  <weigand@informatik.uni-erlangen.de>

	* mf-runtime.c (__mf_fini): Set mudflap_mode to mode_nop in
	the statically linked case.

From-SVN: r85229
2004-07-27 19:41:20 +00:00
Frank Ch. Eigler
fc5515a8a0 splay-tree.[ch]: Remove.
2004-07-27  Frank Ch. Eigler  <fche@redhat.com>

	* splay-tree.[ch]: Remove.  Merge contents into ...
	* mf-runtime.c: ... here, renaming symbols and making all functions
	static.  Remove unused min/max functions.
	* Makefile.am: Forget about splay-tree.[ch].
	* Makefile.in, testsuite/Makefile.in: Regenerated.

From-SVN: r85224
2004-07-27 18:03:18 +00:00
Frank Ch. Eigler
54419590e8 mf-runtime.c (__mfu_check): Remove mistaken mode-nop handling.
2004-07-21  Frank Ch. Eigler  <fche@redhat.com>

	* mf-runtime.c (__mfu_check): Remove mistaken mode-nop
	handling.
	(__mfu_usage): Include (C) 2004.
	* mf-hooks3.c (__mf_find_threadinfo): Don't call tracing functions
	here.  Include a comment explaining why.

From-SVN: r85014
2004-07-21 18:50:14 +00:00
Frank Ch. Eigler
a082fc7afc mf-impl.h (__mf_options): Add ignore_reads and timestamps fields.
2004-07-20  Frank Ch. Eigler  <fche@redhat.com>

	* mf-impl.h (__mf_options): Add ignore_reads and timestamps fields.
	* mf-runtime.c (options): Give them a name.
	(__mf_set_default_options): Set them.
	(__mf_insert_new_object, __mfu_unregister): Optionalize timestamps.
	(__mf_violation): Warning cleanup.
	* mf-impl.h (MF_VALIDATE_EXTENT): Support ignore_reads option.
	* splay-tree.c (splay_tree_delete_helper): Remove obsolete decl.

From-SVN: r84971
2004-07-20 20:00:56 +00:00
Frank Ch. Eigler
429b4470bd * Fix for g++/15861
2004-07-15  Frank Ch. Eigler  <fche@redhat.com>

	g++/15861
	* mf-runtime.c (__mf_init): Make it non-static.  Tolerate
	repeated invocation.

From-SVN: r84761
2004-07-15 17:33:23 +00:00
Frank Ch. Eigler
dfdf6a9440 [multiple changes]
2004-06-29  Frank Ch. Eigler  <fche@redhat.com>

	Splay tree implementation fork.
	* splay-tree.c, splay-tree.h: Copied & modified from libiberty.
	Use hard-coded comparison function for uintptr_t.  Remove key/value
	deallocation logic.  Cache last splayed key for consecutive lookups.
	* Makefile.am, Makefile.in: Use them, don't link to them.
	* mf-runtime.c (__mf_object_tree): Adapt to simpler splay_tree_new.
	(__mf_find_objects2): Flip successor/predecessor search sequence.
	* ansidecl.h, libiberty.h: Removed dummy files.


2004-06-29  Nick Clifton  <nickc@redhat.com>

From-SVN: r83879
2004-06-29 22:30:53 +00:00
Nick Clifton
35a1e17e48 (pthread_join): Only apply the weak pragma if the function actually exists.
From-SVN: r83847
2004-06-29 09:53:50 +00:00
Frank Ch. Eigler
cfbd22d765 Adopt splay trees for object database.
2004-06-24  Frank Ch. Eigler  <fche@redhat.com>

	Adopt splay trees for object database.
	* Makefile.am: Copy splay-tree.* from libiberty.
	* Makefile.in, testsuite/Makefile.in: Regenerated.
	* mf-runtime.h.in (__mf_unregister): Add third parameter (type).
	* mf-hooks[123].c (*): Add new third parameter to mf_unregister.
	* mf-impl.h (BEGIN_PROTECT): Remove some trace text.
	* mf-runtime.c: Rewrite code dealing with object database to use
	libiberty splay trees.  Remove tree liveness aging option.
	* testsuite/libmudflap.c/fail18-frag.c: Add volatile flag.

From-SVN: r83611
2004-06-24 21:12:18 +00:00
Frank Ch. Eigler
dc88d66f1a ctype support.
2004-06-09  Frank Ch. Eigler  <fche@redhat.com>

	ctype support.
	* configure.in: Look for ctype header and glibc implementation.
	* mf-hooks2.c (__ctype_{b,toupper,tolower}_loc): Sample ctype
	array hooks for glibc 2.3.
	* mf-runtime.h.in: Wrap them.
	* mf-runtime.c (__mf_init): Leave marker regarding other ctype
	implementations.
	* testsuite/libmudflap.c/pass47-frag.c: New test.
	* configure, config.h.in: Regenerated.

From-SVN: r82848
2004-06-09 19:04:56 +00:00
Frank Ch. Eigler
7954e85c00 Portability improvements, e.g., libmudflap/15293.
2004-06-04  Frank Ch. Eigler  <fche@redhat.com>

	Portability improvements, e.g., libmudflap/15293.
	* configure.in: Look for glibc extension functions.  Look for
	support of -f{function,data}-sections.  Look for more headers.
	Create testsuite/mfconfig.exp.  Correct more "test x.." thinkos.
	* Makefile.am: Use $(SECTION_FLAGS).  Collapse piecemeal-compiled
	mf-hooks* into usual single object per source.
	* mf-hooks*.c: Remove all #if WRAP_foo conditionals.
	* mf-hooks2.c: #include a bunch more system headers.  Define strnlen
	if system doesn't provide one.
	* mf-hooks3.c (struct pthread_info): Add stack_*_alloc fields.
	(pthread_create): Use it to properly GC dead thread stacks.
	* mf-runtime.c (__mf_violation): Correct snprintf type warning.
	* testsuite/Makefile.am: Stop generating site.exp.
	* testsuite/mfconfig.exp.in: New file.
	* testsuite/config/default.exp: Load new mfconfig.exp.
	* testsuite/lib/libmudflap.exp (libmudflap-init): Add extra libraries.
	(prune_gcc_output): Add glibc static linking warnings.
	* testsuite/libmudflap.*/*frags.exp: Enumerate needed -lmudflap* libs.
	* testsuite/libmudflap.c/pass46-frag.c: Ditto.
	* configure, Makefile, aclocal.m4, config.h.in, testsuite/Makefile.in:
	Regenerated with autoconf 2.57 and automake 1.7.

From-SVN: r82632
2004-06-04 20:12:01 +00:00
Per Bothner
b9d71ce3e4 configure.in (LIBMUDFLAPTH): Fix thinko.
* configure.in (LIBMUDFLAPTH):  Fix thinko.

	* configure.in:  Check for more headers.
	* mf-hooks2.c:  Conditionalize on HAVE_SYS_SOCKET_H etc.

	* mf-runtime.c:  In two places conditionalize on SIUSR1 rather than
	HAVE_SIGNAL as mingw has signal.h but not SIUSR1.

From-SVN: r82627
2004-06-04 10:20:22 -07:00
Frank Ch. Eigler
9193542205 libmudflap.exp (libmudflap-init): For C++ test cases only...
2004-05-17  Frank Ch. Eigler  <fche@redhat.com>

	* lib/libmudflap.exp (libmudflap-init): For C++ test cases only,
	import some build settings from libstdc++-v3 testsuite_flags.
	* .../cfrags.exp, .../c++frags.exp, .../cthfrags.exp: Corresponding
	changes to pass test language.

	* mf-runtime.c (__mfu_check): Poison the cache with antidote for
	quicker mode-nop handling.

From-SVN: r81944
2004-05-17 20:34:19 +00:00
Diego Novillo
6de9cd9a88 Merge tree-ssa-20020619-branch into mainline.
From-SVN: r81764
2004-05-13 02:41:07 -04:00