mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-03 17:32:59 +00:00
Dan points out that mem2reg also promotes vectors: be more precise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43715 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a461c4d75b
commit
a56b22d7f7
@ -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
|
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>
|
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
|
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
|
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>
|
more powerful and can promote structs, "unions", and arrays in many cases.</li>
|
||||||
|
Loading…
Reference in New Issue
Block a user