aboutsummaryrefslogtreecommitdiffstats
path: root/docs/Passes.rst
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-05-29 02:49:00 -0700
committerStephen Hines <srhines@google.com>2014-05-29 02:49:00 -0700
commitdce4a407a24b04eebc6a376f8e62b41aaa7b071f (patch)
treedcebc53f2b182f145a2e659393bf9a0472cedf23 /docs/Passes.rst
parent220b921aed042f9e520c26cffd8282a94c66c3d5 (diff)
downloadexternal_llvm-dce4a407a24b04eebc6a376f8e62b41aaa7b071f.zip
external_llvm-dce4a407a24b04eebc6a376f8e62b41aaa7b071f.tar.gz
external_llvm-dce4a407a24b04eebc6a376f8e62b41aaa7b071f.tar.bz2
Update LLVM for 3.5 rebase (r209712).
Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
Diffstat (limited to 'docs/Passes.rst')
-rw-r--r--docs/Passes.rst28
1 files changed, 10 insertions, 18 deletions
diff --git a/docs/Passes.rst b/docs/Passes.rst
index a288933..b51829d 100644
--- a/docs/Passes.rst
+++ b/docs/Passes.rst
@@ -302,15 +302,6 @@ standard error in a human-readable form.
This pass, only available in ``opt``, printsthe SCCs of each function CFG to
standard error in a human-readable fom.
-``-print-dbginfo``: Print debug info in human readable form
------------------------------------------------------------
-
-Pass that prints instructions, and associated debug info:
-
-#. source/line/col information
-#. original variable name
-#. original type name
-
``-print-dom-info``: Dominator Info Printer
-------------------------------------------
@@ -549,6 +540,8 @@ instructions that are obviously dead.
A trivial dead store elimination that only considers basic-block local
redundant stores.
+.. _passes-functionattrs:
+
``-functionattrs``: Deduce function attributes
----------------------------------------------
@@ -657,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
-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:
@@ -690,6 +683,13 @@ program:
shifts.
#. … 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
--------------------------------------------
@@ -1020,14 +1020,6 @@ as:
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.
-``-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:
``-simplifycfg``: Simplify the CFG