Erik Eckstein
bfe843fd92
Fix crash in post-dominator-tree verification.
2016-01-05 18:40:41 -08:00
practicalswift
50baf2e53b
Use consistent formatting in top of file headers.
2016-01-04 02:17:48 +01:00
Zach Panzarino
e3a4147ac9
Update copyright date
2015-12-31 23:28:40 +00:00
Leo Shimonaka
70e66973ee
Fix spelling error in documentation / comments / method name
2015-12-05 00:28:08 -05:00
Michael Gottesman
f9eab6243d
Update LoopInfo for changes to LLVM.
...
The two changes were:
1. I added a graphtraits implementation for a const
DomTreeNodeBase<SILBasicBlock>.
2. LoopInfoBase::Analyze() => LoopInfoBase::analyze().
Swift SVN r31807
2015-09-09 04:37:25 +00:00
Michael Gottesman
eb6857aa88
Revert "Revert r29594 "Implement verification of dominance analysis.""
...
This reverts commit r29600.
Swift SVN r29602
2015-06-24 05:45:29 +00:00
Greg Parker
7088b2fe1b
Revert r29594 "Implement verification of dominance analysis."
...
This broke some builders.
Swift SVN r29600
2015-06-24 05:05:46 +00:00
Michael Gottesman
0cc8706c1a
Implement verification of dominance analysis.
...
Swift SVN r29594
2015-06-24 01:57:37 +00:00
Erik Eckstein
6d9a7a1045
Helper class for visiting basic blocks in dominance order.
...
It uses a worklist-based algorithm. In contrast to a recursive traversal algorithm,
it cannot cause a stack overflow for very deep dominator trees.
Swift SVN r24107
2014-12-23 09:09:34 +00:00
Michael Gottesman
a12880aa8c
[dominance] Implement PostDominanceInfo::properlyDominates(SILInstruction *, SILInstruction *)
...
I am going to use this for dead store elimination in multi-bb load store optimization.
rdar://17680758
Swift SVN r20002
2014-07-16 04:26:00 +00:00
Arnold Schwaighofer
4a5ba0ff87
DominanceInfo: Add a verification function
...
Swift SVN r19629
2014-07-07 21:05:20 +00:00
Andrew Trick
53cbc3e858
Add a ColdBlockInfo analysis based on DominanceAnalysis.
...
This will be used by PerformanceInliner, GlobalOpt, and other passes in the future.
Swift SVN r19454
2014-07-02 06:35:09 +00:00
Arnold Schwaighofer
a14aa42ce1
SILLoopInfo: Implement SIL loop info analysis using LLVM's LoopInfo
...
Swift SVN r18718
2014-06-05 22:25:42 +00:00
Chris Lattner
94d4de408b
adjust to llvm mainline changes.
...
Swift SVN r12226
2014-01-13 15:13:08 +00:00
Michael Gottesman
90082a51f1
Add in a swift namespace typedef DominanceInfoNode for llvm::DomTreeNodeBase<SILBasicBlock>.
...
This complements the DominanceInfo class.
Swift SVN r10736
2013-12-02 22:52:00 +00:00
Chris Lattner
a9e92a2b61
Expose basic post-dominance information.
...
Swift SVN r6421
2013-07-21 04:29:29 +00:00
John McCall
dd4f26c6dc
It does seem to make non-generic assumptions about the node
...
type, though; I had to define a WriteAsOperand function and
add a front() method to SILFunction to get this to work.
Rip out my dominators implementation and replace it with
LLVM's. I'd forgotten that LLVM's was actually generic.
Swift SVN r4717
2013-04-12 21:24:27 +00:00
John McCall
3274de9c21
Add a simple dominance analysis based on Cooper, Harvey, and
...
Kennedy (2001).
This hasn't been tested yet.
Swift SVN r4712
2013-04-12 08:15:09 +00:00