| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767
llvm-svn: 164768
|
|
|
|
| |
llvm-svn: 164767
|
|
|
|
| |
llvm-svn: 163258
|
|
|
|
| |
llvm-svn: 160446
|
|
|
|
| |
llvm-svn: 156755
|
|
|
|
|
|
|
| |
the PassManager annoying and should be reimplemented as a decorator
on top of existing passes (as should the timing data).
llvm-svn: 153305
|
|
|
|
| |
llvm-svn: 149849
|
|
|
|
|
|
|
|
|
|
|
|
| |
The pass pointer should never be referenced after sending it to
schedulePass(), which may delete the pass. To fix this bug I had to
clean up the design leading to more goodness.
You may notice now that any non-analysis pass is printed. So things like loop-simplify and lcssa show up, while target lib, target data, alias analysis do not show up. Normally, analysis don't mutate the IR, but you can now check this by using both -print-after and -print-before. The effects of analysis will now show up in between the two.
The llc path is still in bad shape. But I'll be improving it in my next checkin. Meanwhile, print-machineinstrs still works the same way. With print-before/after, many llc passes that were not printed before now are, some of these should be converted to analysis. A few very important passes, isel and scheduler, are not properly initialized, so not printed.
llvm-svn: 149480
|
|
|
|
|
|
| |
http://llvm.org/docs/CodingStandards.html#ll_virtual_anch
llvm-svn: 146960
|
|
|
|
|
|
| |
While at it, merge some format strings.
llvm-svn: 142140
|
|
|
|
| |
llvm-svn: 139642
|
|
|
|
| |
llvm-svn: 138749
|
|
|
|
| |
llvm-svn: 138748
|
|
|
|
|
|
| |
Patch by Xiaoyi Guo!
llvm-svn: 138737
|
|
|
|
| |
llvm-svn: 138701
|
|
|
|
|
|
| |
Patch by Xiaoyi Guo!
llvm-svn: 138695
|
|
|
|
|
|
| |
Patch by Jingyue!
llvm-svn: 137072
|
|
|
|
|
|
|
|
| |
Added asserts whenever attempting to use a potentially
uninitialized pass. This helps people trying to develop a new pass and
people trying to understand the bug reports filed by the former people.
llvm-svn: 132520
|
|
|
|
| |
llvm-svn: 132519
|
|
|
|
|
|
| |
Luis Felipe Strano Moraes!
llvm-svn: 129558
|
|
|
|
|
|
|
|
|
|
|
|
| |
treating debugging information.
It generates output that lools like
8 times line number info lost by Scalar Replacement of Aggregates (SSAUp)
1 times line number info lost by Simplify well-known library calls
12 times variable info lost by Jump Threading
llvm-svn: 127381
|
|
|
|
|
|
| |
command line, they'll still be seen with -help-hidden.
llvm-svn: 127353
|
|
|
|
|
|
|
| |
The PassManager did not implement the transitivity of requiredTransitive. This
was unnoticed since 2006.
llvm-svn: 123942
|
|
|
|
| |
llvm-svn: 120298
|
|
|
|
| |
llvm-svn: 118790
|
|
|
|
|
|
|
| |
A RegionPass is executed like a LoopPass but on the regions detected by the
RegionInfo pass instead of the loops detected by the LoopInfo pass.
llvm-svn: 116905
|
|
|
|
| |
llvm-svn: 116279
|
|
|
|
| |
llvm-svn: 116278
|
|
|
|
| |
llvm-svn: 116277
|
|
|
|
| |
llvm-svn: 116276
|
|
|
|
|
|
| |
stop searching when it has found a match.
llvm-svn: 116262
|
|
|
|
| |
llvm-svn: 111500
|
|
|
|
| |
llvm-svn: 111200
|
|
|
|
|
|
|
|
|
|
| |
a Pass abstraction, since that's the level it's actually used at.
Rename Pass' dumpPassStructure to dumpPass.
This eliminates an awkward use of getAsPass() to convert a PMDataManager*
into a Pass* just to permit a dumpPassStructure call.
llvm-svn: 111199
|
|
|
|
| |
llvm-svn: 111192
|
|
|
|
|
|
|
| |
PMTopLevelManager's constructor take a PMDataManager *, which already
provides the needed abstraction support.
llvm-svn: 111189
|
|
|
|
| |
llvm-svn: 110983
|
|
|
|
| |
llvm-svn: 110982
|
|
|
|
| |
llvm-svn: 110981
|
|
|
|
| |
llvm-svn: 110499
|
|
|
|
| |
llvm-svn: 110496
|
|
|
|
|
|
| |
out of PassManager.cpp and into Core.cpp with the rest of the C binding code.
llvm-svn: 110494
|
|
|
|
| |
llvm-svn: 110460
|
|
|
|
| |
llvm-svn: 110410
|
|
|
|
|
|
|
|
| |
address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.
llvm-svn: 110396
|
|
|
|
|
|
| |
different direction with this.
llvm-svn: 108856
|
|
|
|
|
|
|
|
| |
working again. I don't see why this patch
would cause them to fail the way they are, but none of the other intervening patches seem likely either.
llvm-svn: 108818
|
|
|
|
| |
llvm-svn: 108813
|
|
|
|
|
|
|
| |
superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is
breaking teh everything.
llvm-svn: 108805
|
|
|
|
|
|
| |
(StaticPassInfo) and a constructor-ful subclass (PassInfo).
llvm-svn: 108794
|