forked from OSchip/llvm-project
Remove -simplify-libcalls pass form Passes documentation
This pass was removed in r184459. Also added note that the InstCombine pass does library call simplification. Patch slightly modified from one by Daniel Liew <daniel.liew@imperial.ac.uk>! llvm-svn: 206650
This commit is contained in:
parent
d0d38bf91e
commit
0177e18c51
|
@ -540,6 +540,8 @@ instructions that are obviously dead.
|
||||||
A trivial dead store elimination that only considers basic-block local
|
A trivial dead store elimination that only considers basic-block local
|
||||||
redundant stores.
|
redundant stores.
|
||||||
|
|
||||||
|
.. _passes-functionattrs:
|
||||||
|
|
||||||
``-functionattrs``: Deduce function attributes
|
``-functionattrs``: Deduce function attributes
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|
||||||
|
@ -648,7 +650,7 @@ program, and is used for a wide variety of program transformations.
|
||||||
------------------------------------------------
|
------------------------------------------------
|
||||||
|
|
||||||
Combine instructions to form fewer, simple instructions. This pass does not
|
Combine instructions to form fewer, simple instructions. This pass does not
|
||||||
modify the CFG This pass is where algebraic simplification happens.
|
modify the CFG. This pass is where algebraic simplification happens.
|
||||||
|
|
||||||
This pass combines things like:
|
This pass combines things like:
|
||||||
|
|
||||||
|
@ -681,6 +683,13 @@ program:
|
||||||
shifts.
|
shifts.
|
||||||
#. … etc.
|
#. … etc.
|
||||||
|
|
||||||
|
This pass can also simplify calls to specific well-known function calls (e.g.
|
||||||
|
runtime library functions). For example, a call ``exit(3)`` that occurs within
|
||||||
|
the ``main()`` function can be transformed into simply ``return 3``. Whether or
|
||||||
|
not library calls are simplified is controlled by the
|
||||||
|
:ref:`-functionattrs <passes-functionattrs>` pass and LLVM's knowledge of
|
||||||
|
library calls on different targets.
|
||||||
|
|
||||||
``-internalize``: Internalize Global Symbols
|
``-internalize``: Internalize Global Symbols
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
|
@ -1011,14 +1020,6 @@ as:
|
||||||
Note that this pass has a habit of making definitions be dead. It is a good
|
Note that this pass has a habit of making definitions be dead. It is a good
|
||||||
idea to run a :ref:`DCE <passes-dce>` pass sometime after running this pass.
|
idea to run a :ref:`DCE <passes-dce>` pass sometime after running this pass.
|
||||||
|
|
||||||
``-simplify-libcalls``: Simplify well-known library calls
|
|
||||||
---------------------------------------------------------
|
|
||||||
|
|
||||||
Applies a variety of small optimizations for calls to specific well-known
|
|
||||||
function calls (e.g. runtime library functions). For example, a call
|
|
||||||
``exit(3)`` that occurs within the ``main()`` function can be transformed into
|
|
||||||
simply ``return 3``.
|
|
||||||
|
|
||||||
.. _passes-simplifycfg:
|
.. _passes-simplifycfg:
|
||||||
|
|
||||||
``-simplifycfg``: Simplify the CFG
|
``-simplifycfg``: Simplify the CFG
|
||||||
|
|
Loading…
Reference in New Issue