summaryrefslogtreecommitdiffstats
path: root/llvm/docs/tutorial
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-11-05 17:45:54 +0000
committerChris Lattner <sabre@nondot.org>2007-11-05 17:45:54 +0000
commit2172186c7b0902cf1b6685348c0d7993583253b7 (patch)
treeac603726fcabdb77c8f95b32e64976ee4c26a406 /llvm/docs/tutorial
parent8bb30184a8bd735ee6bfad7e30dbc6684aee65ed (diff)
downloadbcm5719-llvm-2172186c7b0902cf1b6685348c0d7993583253b7.tar.gz
bcm5719-llvm-2172186c7b0902cf1b6685348c0d7993583253b7.zip
Dan points out that mem2reg also promotes vectors: be more precise.
llvm-svn: 43715
Diffstat (limited to 'llvm/docs/tutorial')
-rw-r--r--llvm/docs/tutorial/LangImpl7.html4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/docs/tutorial/LangImpl7.html b/llvm/docs/tutorial/LangImpl7.html
index 6664c7c5802..b002f7a4519 100644
--- a/llvm/docs/tutorial/LangImpl7.html
+++ b/llvm/docs/tutorial/LangImpl7.html
@@ -258,7 +258,9 @@ once, which makes analysis simpler.</li>
the address of the stack object is passed to a function, or if any funny pointer
arithmetic is involved, the alloca will not be promoted.</li>
-<li>mem2reg only works on allocas of scalar values, and only if the array size
+<li>mem2reg only works on allocas of <a
+href="../LangRef.html#t_classifications">first class</a>
+values (such as pointers, scalars and vectors), and only if the array size
of the allocation is 1 (or missing in the .ll file). mem2reg is not capable of
promoting structs or arrays to registers. Note that the "scalarrepl" pass is
more powerful and can promote structs, "unions", and arrays in many cases.</li>
OpenPOWER on IntegriCloud