aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>2013-10-26 04:14:34 -0600
committerJeff Law <law@gcc.gnu.org>2013-10-26 04:14:34 -0600
commit98906124e3aa4cb17695d900fe19498e5bde63e4 (patch)
treedb4fb2e3b3425e4080112ab6c0fa8e4922a5a2d7 /gcc/doc
parent19b632c6dd5e1e901ae1bac3fc92164a724ccab5 (diff)
downloadgcc-98906124e3aa4cb17695d900fe19498e5bde63e4.zip
gcc-98906124e3aa4cb17695d900fe19498e5bde63e4.tar.gz
gcc-98906124e3aa4cb17695d900fe19498e5bde63e4.tar.bz2
Makefile.def (target_modules): Remove libmudflap
* Makefile.def (target_modules): Remove libmudflap (languages): Remove check-target-libmudflap). * Makefile.in: Rebuilt. * Makefile.tpl (check-target-libmudflap-c++): Remove. * configure.ac (target_libraries): Remove target-libmudflap. Remove checks which disabled libmudflap on some systems. * configure: Rebuilt. * libmudflap: Directory removed. * Makefile.in (C_COMMON_OBJS): Remove tree-mudflap. (OBJS): Remove tree-nomudflap.o (GTFILES): Remove tree-mudflap.c * builtins.c (expand_builtin_alloc): Remove mudflap support. * gcc.c (MFWRAP_SPEC, MFLIB_SPEC): Likewise. (mfwrap_spec, mflib_spec): Likewise. (cpp_unique_options, cc1_options, static_specs): Likewise. * gimplify (gimplify_vla_decl, build_va_arg_indirect_ref): Likewise. * passes.def: Likewise. * toplev.c (compile_file, process_options): Likewise. * tree-inline.c (copy_tree_r): Likewise. * tree-pass.,h (make_pass_mudflap_1, make_pass_mudflap_2): Likewise. * varasm.c (make_decl_rtl, make_decl_rtl_for_debug): Likewise. (build_constant_desc, output_constant_def_contents): Likewise. (categorize_decl_for_section): Likewise. * tree-mudflap.c: Removed. * tree-mudflap.h: Removed. * tree-nomudflap.c: Removed. * bfin/uclinux.h (MFWRAP_SPEC): Remove. * moxie/uclinux.h (MFWRAP_SPEC): Likewise. * rs6000/aix.h (MFWRAP_SPEC, MFLIB_SPEC): Likewise. * config/sol2.h (MFLIB_SPEC): Likewise. * doc/install.texi: Remove mudflap references. * doc/passes.texi: Similarly. * doc/sourcebuild.texi: Similarly. * doc/invoke.texi: Remove mudlfap related options. * c-family/c-common.c (c_define_builtins): Remove mudflap support. * c-family/c.opt: Ignore and warn for mudflap options. * g++.dg/torture/pr49309.C: Removed. * gcc.dg/dfp/pr35739.c: Removed. From-SVN: r204090
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/install.texi2
-rw-r--r--gcc/doc/invoke.texi41
-rw-r--r--gcc/doc/passes.texi31
-rw-r--r--gcc/doc/sourcebuild.texi4
4 files changed, 4 insertions, 74 deletions
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 5cb4d3c..308f3e8 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -1391,7 +1391,7 @@ addition, @samp{libstdc++}'s include files will be installed into
@option{--with-gxx-include-dir=@var{dirname}}. Using this option is
particularly useful if you intend to use several versions of GCC in
parallel. This is currently supported by @samp{libgfortran},
-@samp{libjava}, @samp{libmudflap}, @samp{libstdc++}, and @samp{libobjc}.
+@samp{libjava}, @samp{libstdc++}, and @samp{libobjc}.
@item --enable-languages=@var{lang1},@var{lang2},@dots{}
Specify that only a particular subset of compilers and
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index d9d81a9..ab25922 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -256,7 +256,6 @@ Objective-C and Objective-C++ Dialects}.
-Wlogical-op -Wlong-long @gol
-Wmain -Wmaybe-uninitialized -Wmissing-braces -Wmissing-field-initializers @gol
-Wmissing-include-dirs @gol
--Wno-mudflap @gol
-Wno-multichar -Wnonnull -Wno-overflow @gol
-Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol
-Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol
@@ -308,7 +307,7 @@ Objective-C and Objective-C++ Dialects}.
-fdump-tree-ch @gol
-fdump-tree-ssa@r{[}-@var{n}@r{]} -fdump-tree-pre@r{[}-@var{n}@r{]} @gol
-fdump-tree-ccp@r{[}-@var{n}@r{]} -fdump-tree-dce@r{[}-@var{n}@r{]} @gol
--fdump-tree-gimple@r{[}-raw@r{]} -fdump-tree-mudflap@r{[}-@var{n}@r{]} @gol
+-fdump-tree-gimple@r{[}-raw@r{]} @gol
-fdump-tree-dom@r{[}-@var{n}@r{]} @gol
-fdump-tree-dse@r{[}-@var{n}@r{]} @gol
-fdump-tree-phiprop@r{[}-@var{n}@r{]} @gol
@@ -384,7 +383,7 @@ Objective-C and Objective-C++ Dialects}.
-floop-parallelize-all -flto -flto-compression-level @gol
-flto-partition=@var{alg} -flto-report -flto-report-wpa -fmerge-all-constants @gol
-fmerge-constants -fmodulo-sched -fmodulo-sched-allow-regmoves @gol
--fmove-loop-invariants fmudflap -fmudflapir -fmudflapth -fno-branch-count-reg @gol
+-fmove-loop-invariants -fno-branch-count-reg @gol
-fno-defer-pop -fno-function-cse -fno-guess-branch-probability @gol
-fno-inline -fno-math-errno -fno-peephole -fno-peephole2 @gol
-fno-sched-interblock -fno-sched-spec -fno-signed-zeros @gol
@@ -4991,11 +4990,6 @@ This option is only supported for C and Objective-C@. It is implied by
This option is only active when @option{-fstack-protector} is active. It
warns about functions that are not protected against stack smashing.
-@item -Wno-mudflap
-@opindex Wno-mudflap
-Suppress warnings about constructs that cannot be instrumented by
-@option{-fmudflap}.
-
@item -Woverlength-strings
@opindex Woverlength-strings
@opindex Wno-overlength-strings
@@ -6200,11 +6194,6 @@ by appending @file{.store_copyprop} to the source file name.
Dump each function after dead code elimination. The file name is made by
appending @file{.dce} to the source file name.
-@item mudflap
-@opindex fdump-tree-mudflap
-Dump each function after adding mudflap instrumentation. The file name is
-made by appending @file{.mudflap} to the source file name.
-
@item sra
@opindex fdump-tree-sra
Dump each function after performing scalar replacement of aggregates. The
@@ -7071,32 +7060,6 @@ assumptions based on that.
The default is @option{-fzero-initialized-in-bss}.
-@item -fmudflap -fmudflapth -fmudflapir
-@opindex fmudflap
-@opindex fmudflapth
-@opindex fmudflapir
-@cindex bounds checking
-@cindex mudflap
-For front-ends that support it (C and C++), instrument all risky
-pointer/array dereferencing operations, some standard library
-string/heap functions, and some other associated constructs with
-range/validity tests. Modules so instrumented should be immune to
-buffer overflows, invalid heap use, and some other classes of C/C++
-programming errors. The instrumentation relies on a separate runtime
-library (@file{libmudflap}), which is linked into a program if
-@option{-fmudflap} is given at link time. Run-time behavior of the
-instrumented program is controlled by the @env{MUDFLAP_OPTIONS}
-environment variable. See @code{env MUDFLAP_OPTIONS=-help a.out}
-for its options.
-
-Use @option{-fmudflapth} instead of @option{-fmudflap} to compile and to
-link if your program is multi-threaded. Use @option{-fmudflapir}, in
-addition to @option{-fmudflap} or @option{-fmudflapth}, if
-instrumentation should ignore pointer reads. This produces less
-instrumentation (and therefore faster execution) and still provides
-some protection against outright memory corrupting writes, but allows
-erroneously read data to propagate within a program.
-
@item -fthread-jumps
@opindex fthread-jumps
Perform optimizations that check to see if a jump branches to a
diff --git a/gcc/doc/passes.texi b/gcc/doc/passes.texi
index 045f964..d8e4315 100644
--- a/gcc/doc/passes.texi
+++ b/gcc/doc/passes.texi
@@ -225,20 +225,6 @@ stuff quickly rather than wait until later when it's more work to get
rid of it. This pass is located in @file{tree-cfg.c} and described by
@code{pass_remove_useless_stmts}.
-@item Mudflap declaration registration
-
-If mudflap (@pxref{Optimize Options,,-fmudflap -fmudflapth
--fmudflapir,gcc,Using the GNU Compiler Collection (GCC)}) is
-enabled, we generate code to register some variable declarations with
-the mudflap runtime. Specifically, the runtime tracks the lifetimes of
-those variable declarations that have their addresses taken, or whose
-bounds are unknown at compile time (@code{extern}). This pass generates
-new exception handling constructs (@code{try}/@code{finally}), and so
-must run before those are lowered. In addition, the pass enqueues
-declarations of static variables whose lifetimes extend to the entire
-program. The pass is located in @file{tree-mudflap.c} and is described
-by @code{pass_mudflap_1}.
-
@item OpenMP lowering
If OpenMP generation (@option{-fopenmp}) is enabled, this pass lowers
@@ -576,18 +562,6 @@ run last so that we have as much time as possible to prove that the
statement is not reachable. It is located in @file{tree-cfg.c} and
is described by @code{pass_warn_function_return}.
-@item Mudflap statement annotation
-
-If mudflap is enabled, we rewrite some memory accesses with code to
-validate that the memory access is correct. In particular, expressions
-involving pointer dereferences (@code{INDIRECT_REF}, @code{ARRAY_REF},
-etc.) are replaced by code that checks the selected address range
-against the mudflap runtime's database of valid regions. This check
-includes an inline lookup into a direct-mapped cache, based on
-shift/mask operations of the pointer value, with a fallback function
-call into the runtime. The pass is located in @file{tree-mudflap.c} and
-is described by @code{pass_mudflap_2}.
-
@item Leave static single assignment form
This pass rewrites the function such that it is in normal form. At
@@ -968,10 +942,7 @@ This pass outputs the assembler code for the function. The source files
are @file{final.c} plus @file{insn-output.c}; the latter is generated
automatically from the machine description by the tool @file{genoutput}.
The header file @file{conditions.h} is used for communication between
-these files. If mudflap is enabled, the queue of deferred declarations
-and any addressed constants (e.g., string literals) is processed by
-@code{mudflap_finish_file} into a synthetic constructor function
-containing calls into the mudflap runtime.
+these files.
@item Debugging information output
diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index 90bd0bd..1a70916 100644
--- a/gcc/doc/sourcebuild.texi
+++ b/gcc/doc/sourcebuild.texi
@@ -103,10 +103,6 @@ The runtime support library for transactional memory.
@item libjava
The Java runtime library.
-@item libmudflap
-The @code{libmudflap} library, used for instrumenting pointer and array
-dereferencing operations.
-
@item libobjc
The Objective-C and Objective-C++ runtime library.