Chandler Carruth
7da14f1ab9
[Layering] Move InstVisitor.h into the IR library as it is pretty
...
obviously coupled to the IR.
llvm-svn: 203064
2014-03-06 03:23:41 +00:00
Craig Topper
3e4c697ca1
[C++11] Add 'override' keyword to virtual methods that override their base class.
...
llvm-svn: 202953
2014-03-05 09:10:37 +00:00
Benjamin Kramer
b6d0bd48bd
[C++11] Replace llvm::next and llvm::prior with std::next and std::prev.
...
Remove the old functions.
llvm-svn: 202636
2014-03-02 12:27:27 +00:00
Rafael Espindola
935125126c
Make DataLayout a plain object, not a pass.
...
Instead, have a DataLayoutPass that holds one. This will allow parts of LLVM
don't don't handle passes to also use DataLayout.
llvm-svn: 202168
2014-02-25 17:30:31 +00:00
Rafael Espindola
612886fc8c
Rename a few more DataLayout variables.
...
llvm-svn: 201833
2014-02-21 01:53:35 +00:00
Richard Sandiford
1fb5c13e3a
Fix Scalarizer insertion point when replacing PHIs with insertelements
...
If the Scalarizer scalarized a vector PHI but could not scalarize
all uses of it, it would insert a series of insertelements to reconstruct
the vector PHI value from the scalar ones. The problem was that it would
emit these insertelements immediately after the PHI, even if there were
other PHIs after it.
llvm-svn: 197909
2013-12-23 14:51:56 +00:00
Richard Sandiford
3548cbb980
Fix Scalarizer handling of vector GEPs with multiple index operands
...
The old code only worked for one index operand. Also handle "inbounds".
llvm-svn: 197908
2013-12-23 14:45:00 +00:00
Richard Sandiford
8ee1b77de3
Add a Scalarizer pass.
...
llvm-svn: 195471
2013-11-22 16:58:05 +00:00