Andreas Neustifter
0a324aa53a
Broke line before break.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79404 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-19 05:44:39 +00:00
Dan Gohman
107f41fad5
Fix SimplifyLibcalls and ValueTracking to check mayBeOverridden
...
before performing optimizations based on constant string values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79384 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-19 00:11:12 +00:00
Dan Gohman
c40f17b087
Generalize ScalarEvolution to be able to analyze GEPs when
...
TargetData is not present. It still uses TargetData when available.
This generalization also fixed some limitations in the TargetData
case; the attached testcase covers this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79344 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-18 16:46:41 +00:00
Devang Patel
4c77dfa20c
Oops. find all llvm.dbg.global_variables.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79274 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-17 20:36:20 +00:00
Dan Gohman
094ae454e8
Fix more missing newlines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79244 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-17 15:29:31 +00:00
Owen Anderson
0e275dc538
Actually privatize a IntegerTypes, and fix a few bugs exposed by this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78955 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-13 23:27:32 +00:00
Owen Anderson
1d0be15f89
Push LLVMContexts through the IntegerType APIs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-13 21:58:54 +00:00
Dan Gohman
0c0932f5e2
Fix a missing newline (now that Value*'s operator<< doesn't append one).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78814 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-12 16:48:27 +00:00
Dan Gohman
104eac156e
Use isa instead of dyn_cast when the result is only converted to bool.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78685 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-11 17:20:16 +00:00
Dan Gohman
ffef8acc3e
Tidy #includes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78677 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-11 16:02:12 +00:00
Dan Gohman
004072508b
Don't assume that external global variables are aligned at their preferred
...
alignment. Only the minimum alignment guaranteed by the ABI may be assumed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78668 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-11 15:50:03 +00:00
Devang Patel
72bcdb6c9b
Keep track of DIType.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78602 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-10 22:09:58 +00:00
Daniel Dunbar
c43782cf71
Some ProfileInfo cleanups.
...
- Part of optimal static profiling patch sequence by Andreas Neustifter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78485 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-08 18:59:03 +00:00
Daniel Dunbar
55e354ac0e
Add a basic static ProfileInfo provider (ProfileEstimatorPass).
...
- Part of optimal static profiling patch sequence by Andreas Neustifter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78484 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-08 18:44:18 +00:00
Daniel Dunbar
caaa49336b
More ProfileInfo improvements.
...
- Part of optimal static profiling patch sequence by Andreas Neustifter.
- Store edge, block, and function information separately for each functions
(instead of in one giant map).
- Return frequencies as double instead of int, and use a sentinel value for
missing information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78477 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-08 17:43:09 +00:00
Andreas Bolka
8a11c98b1d
Fix copy-pasto.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78426 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-07 22:55:26 +00:00
Andreas Bolka
699db99c1a
SIV/MIV classification for LDA.
...
LoopDependenceAnalysis::getLoops is currently O(N*M) for a loop-nest of
depth N and a compound SCEV of M atomic SCEVs. As both N and M will
typically be very small, this should not be a problem. If it turns out
to be one, rewriting getLoops as SCEVVisitor will reduce complexity to
O(M).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78394 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-07 18:23:41 +00:00
Daniel Dunbar
0912e585b8
Remove unused function.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78366 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-07 03:52:07 +00:00
Dan Gohman
7db949df78
Fix a bunch of namespace pollution.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78363 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-07 01:32:21 +00:00
Devang Patel
bceda93251
Remove dead code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78335 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-06 20:57:44 +00:00
Andreas Bolka
6151f67285
Simplify the ZIV tester to the max.
...
As suggested by Nick Lewycky.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78277 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-06 03:10:33 +00:00
Owen Anderson
d7f2a6cb3f
Privatize the StructType table, which unfortunately involves routing contexts through a number of APIs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78258 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05 23:16:16 +00:00
Daniel Dunbar
c9008c5cc7
Make block and function count available via ProfileInfo.
...
- Part of optimal static profiling patch sequence by Andreas Neustifter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78247 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05 21:51:16 +00:00
Daniel Dunbar
ee16638bfc
Remove unnecessary ProfileInfoLoader methods.
...
- Part of optimal static profiling patch sequence by Andreas Neustifter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78199 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05 15:55:56 +00:00
Andreas Bolka
831f6f6d2a
ZIV tester for LDA.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78157 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05 04:26:05 +00:00
Andreas Bolka
a1b78d133e
Restrict LDA to GEPs with the same pointer offset.
...
We can not simply apply ZIV testing to the pointer offsets, as this
would incorrectly return independence for e.g. (GEP x,0,i; GEP x,1,-i).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78155 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05 04:13:41 +00:00
Andreas Bolka
5eca4525f4
Restrict LDA to affine subscripts.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77932 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-03 01:03:48 +00:00
Dan Gohman
b41fc9f05c
LibCallAliasAnalysis doesn't use TargetData.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77729 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 20:56:29 +00:00
Dan Gohman
f581213bfb
Make TargetData optional in MemoryDependenceAnalysis.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77727 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 20:53:12 +00:00
Dan Gohman
cc726599ae
Remove an unnecessary header.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77725 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 20:47:45 +00:00
Owen Anderson
a7235ea724
Move a few more APIs back to 2.5 forms. The only remaining ones left to change back are
...
metadata related, which I'm waiting on to avoid conflicting with Devang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77721 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 20:28:14 +00:00
Dan Gohman
a818c30d66
Fix some problems with ASTCallbackVH in its use as a DenseMap key.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77696 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 18:21:48 +00:00
Devang Patel
b4d31306a4
Process DbgDeclareInst.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77694 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 18:18:52 +00:00
Owen Anderson
5defacc6e6
Move getTrue() and getFalse() to 2.5-like APIs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77685 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 17:39:07 +00:00
Owen Anderson
9e9a0d5fc2
Move more code back to 2.5 APIs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77635 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 23:03:37 +00:00
Dan Gohman
b5b56ba9d4
Use CallbackVH in AliasSetTracker to avoid getting stuck with
...
dangling Value*s.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77623 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 20:21:41 +00:00
Devang Patel
98c65173bb
s/DebugInfoEnumerator/DebugInfoFinder/g
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77615 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 18:25:15 +00:00
Devang Patel
e802f1c4c3
walk DbgRegionStartInst and DbgRegionEndInst
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77604 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 17:30:23 +00:00
Andreas Bolka
713395950a
Equal SCEVs of a subscript give rise to dependence.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77570 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 02:26:01 +00:00
Douglas Gregor
f485b3bbab
Eliminate a few unused-variable warnings
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77519 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 22:41:10 +00:00
Owen Anderson
debcb01b0f
Move types back to the 2.5 API.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77516 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 22:17:13 +00:00
Owen Anderson
baf3c40440
Move ConstantExpr to 2.5 API.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77494 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 18:55:55 +00:00
Andreas Bolka
15f72dbf97
Skeleton for pairwise subscript testing.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77437 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 05:35:53 +00:00
Owen Anderson
af7ec97587
Return ConstantVector to 2.5 API.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77366 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 21:19:26 +00:00
Devang Patel
d2f79a1346
Add DebugInfoEnumerator to collect debug info.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77360 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 19:55:13 +00:00
Andreas Bolka
c3cc45aa8b
Simplify LDA-internal interface.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77359 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 19:50:13 +00:00
Andreas Bolka
328fb3d210
Add LDA statistics.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77358 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 19:49:49 +00:00
Andreas Bolka
34ce687144
Minor factoring, naming and formatting cleanups.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77357 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 19:49:25 +00:00
Owen Anderson
1fd7096407
Change ConstantArray to 2.5 API.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77347 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 18:32:17 +00:00
Dan Gohman
d6aa02de10
Teach instcombine to respect and preserve inbounds. Add inbounds
...
to a few tests where it is required for the expected transformation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77290 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 01:40:03 +00:00