Ted Kremenek
cf768cd202
Replace uses of ImmutableSet in SymbolReaper with DenseSet. This was
...
motivated from Shark profiles that shows that 'markLive' was very
heavy when using --analyzer-store=region. On my benchmark file, this
reduces the analysis time for --analyzer-store=region from 19.5s to
13.5s and for --analyzer-store=basic from 5.3s to 3.5s. For the
benchmark file, this is a reduction of about 30% analysis time for
both analysis modes (a huge win).
llvm-svn: 80765
2009-09-02 06:03:18 +00:00
Chris Lattner
d5f4fcceae
refactor select 'sched insertion' out to its own method.
...
llvm-svn: 80764
2009-09-02 05:57:00 +00:00
Chris Lattner
cc8c581a5b
Add support for modeling whether or not the processor has support for
...
conditional moves as a subtarget feature. This is the easy part of
PR4841.
llvm-svn: 80763
2009-09-02 05:53:04 +00:00
Chris Lattner
950e60ea97
fix PR4848 an infinite loop when indexing down through a recursive gep
...
and we get the original pointer type. This doesn't mean that we're
at the first pointer being indexed. Correct the predicate.
llvm-svn: 80762
2009-09-02 05:35:45 +00:00
Chris Lattner
64b5842986
fix PR4837, some bugs folding vector compares. These
...
return a vector of i1, not i1 itself.
llvm-svn: 80761
2009-09-02 05:12:37 +00:00
Chris Lattner
65fb597793
revert my patch, duncan points out what is wrong with my logic. Add
...
a comment so that I don't change this in the future :)
llvm-svn: 80760
2009-09-02 04:39:04 +00:00
Chris Lattner
8f23276431
one more try at making this simpler, hopefully it won't break everything :)
...
llvm-svn: 80759
2009-09-02 04:34:06 +00:00
Duncan Sands
5632d96176
Complicate Chris's simplification, avoiding complaints
...
about singular iterators when building with expensive
checks turned on.
llvm-svn: 80757
2009-09-02 03:48:41 +00:00
Ted Kremenek
ad5a600a24
Implement: <rdar://problem/6337100> CWE-338: Use of cryptographically weak prng
...
Patch by Geoff Keating!
llvm-svn: 80752
2009-09-02 02:47:41 +00:00
Daniel Dunbar
0935339f81
Don't force the triple or data layout in this test. We just have to get them
...
from the host and hope that works.
llvm-svn: 80751
2009-09-02 02:43:11 +00:00
John McCall
e94dd7ccf5
When adding a friend class declaration to the lookup tables, use the access specifier
...
of any previous declaration in case we replace it in a class's declaration table.
Fixes bug 4858. This sort of thing makes me reconsider putting friend declarations in
declaration lists.
llvm-svn: 80750
2009-09-02 02:15:17 +00:00
Dan Gohman
24a60cd2eb
Add a comment.
...
llvm-svn: 80749
2009-09-02 01:14:16 +00:00
John McCall
e8dbaef730
Fix a little crasher in friend decls. Thanks again to Eli for finding this.
...
llvm-svn: 80748
2009-09-02 01:07:03 +00:00
Mike Stump
3f707e9f14
Add mangling for covariant thunks.
...
llvm-svn: 80747
2009-09-02 00:56:18 +00:00
Sean Callanan
a8ee2e7496
Fixed the asmstrings for 8-bit, 16-bit, and 32-bit ADD %rAX, imm instructions.
...
Added a 64-bit ADD %RAX, imm32 instruction.
Added all 4 forms for AND %rAX, imm and CMP %rAX, imm.
llvm-svn: 80746
2009-09-02 00:55:49 +00:00
John McCall
2dc078f24e
Ensure that the tag decls of friend decls aren't added to the friending class's
...
decl list, and remove some workarounds that were due to this. Thanks to Eli for
pointing this out and providing the test case.
llvm-svn: 80745
2009-09-02 00:55:30 +00:00
Mike Stump
a119813218
Shorten name.
...
llvm-svn: 80744
2009-09-02 00:28:47 +00:00
Mike Stump
9cc7d30435
Add mangling for thunks.
...
llvm-svn: 80743
2009-09-02 00:25:38 +00:00
Evan Cheng
10a5dabfd5
Fix PR4845: r77946 completely broke x86_64 Darwin (or any situation where the
...
desired triplet is a sub-target, e.g. thumbv7 vs. arm host). Reverting the
patch isn't quite right either since the previous behavior does not allow the
triplet to be overridden with -march.
llvm-svn: 80742
2009-09-02 00:19:03 +00:00
Devang Patel
34455c9c65
Disable uniqueness test for now.
...
llvm-svn: 80741
2009-09-02 00:16:33 +00:00
Fariborz Jahanian
f40183f436
Test for my last patch.
...
llvm-svn: 80740
2009-09-02 00:05:10 +00:00
Fariborz Jahanian
086ac11606
It is illegal to derefrercne to an interface in
...
objc's non-fragile ABI.
llvm-svn: 80739
2009-09-02 00:00:05 +00:00
Devang Patel
8c7f86e698
For now disable MDNode uniquing. This fixes llvm-gcc bootstrap failure on certain Mac OS X 10.5. I am working on a proper fix.
...
llvm-svn: 80738
2009-09-01 23:56:42 +00:00
Mike Stump
2348e62498
More overriding base work and some cleanups. WIP.
...
llvm-svn: 80737
2009-09-01 23:22:44 +00:00
Bob Wilson
fcd618bf1d
Avoid calling removeVirtualRegisterKilled which iterates over the operands
...
to find the kill, since we already have the operand.
llvm-svn: 80736
2009-09-01 23:18:46 +00:00
Fariborz Jahanian
5083e2623b
After a conversation with Doug. I added a fix me to
...
where we build the constructor's initializer list.
llvm-svn: 80735
2009-09-01 23:08:16 +00:00
Bob Wilson
efe96918f8
Refactor some code into separate functions. No functional changes.
...
llvm-svn: 80733
2009-09-01 22:51:08 +00:00
Mike Stump
40dc64bcfc
Split out overriding. WIP.
...
llvm-svn: 80732
2009-09-01 22:20:28 +00:00
Bob Wilson
71e77ea89b
Move use of LV inside condition that guards for null LV.
...
llvm-svn: 80731
2009-09-01 22:19:00 +00:00
Daniel Dunbar
2a275102d3
Fix build warning.
...
llvm-svn: 80730
2009-09-01 22:07:12 +00:00
Daniel Dunbar
ff0e622d1c
Simplify.
...
llvm-svn: 80729
2009-09-01 22:07:06 +00:00
Daniel Dunbar
9ab9e0aa25
Fix what I believe is a copy-n-pasto introduced in r78129.
...
- Bruno, please check!!
llvm-svn: 80728
2009-09-01 22:07:00 +00:00
Daniel Dunbar
6c3843866c
X86/Encoding: Support ExternalSymbol operands in emitDisplacementField (for consistency).
...
llvm-svn: 80727
2009-09-01 22:06:53 +00:00
Daniel Dunbar
f7a14aa43d
Remove Offset from ExternalSybmol MachineOperands, this is unused (and at least partly unsupported, in X86 encoding at least).
...
llvm-svn: 80726
2009-09-01 22:06:46 +00:00
Mike Stump
843b78412a
Testcase for recent checkin.
...
llvm-svn: 80725
2009-09-01 22:01:25 +00:00
Chris Lattner
6190bb01be
debug intrinsics do not go in the callgraph, this fixes a couple
...
clang regtest failures.
llvm-svn: 80724
2009-09-01 21:37:50 +00:00
Anders Carlsson
c82555fb85
Handle member expressions that return references correctly.
...
llvm-svn: 80723
2009-09-01 21:18:52 +00:00
Anders Carlsson
783ab50b33
Assert that we don't have any virtual bases. We can emit dtors for polymorphics classes just fune.
...
llvm-svn: 80722
2009-09-01 21:12:16 +00:00
Douglas Gregor
a3a3f6fecd
In CXXBaseOrMemberInitializer, don't confuse CtorTocall with
...
AnonUnionMember. Fixes PR4826.
llvm-svn: 80721
2009-09-01 21:04:42 +00:00
Anders Carlsson
f1ae6d45dd
Use the correct cast kinds for bit casts and function to pointer decay. Fixes PR4827.
...
llvm-svn: 80720
2009-09-01 20:52:42 +00:00
Anders Carlsson
6904f644e7
Add a CK_FunctionToPointerDecay cast kind.
...
llvm-svn: 80719
2009-09-01 20:37:18 +00:00
Chris Lattner
339c82df85
Fix a regression I introduced in r80708, found by llvm-test.
...
llvm-svn: 80718
2009-09-01 20:33:43 +00:00
Bruno Cardoso Lopes
92e18c456a
Fix ELF Writter related memory leaks
...
llvm-svn: 80717
2009-09-01 19:25:52 +00:00
Andreas Neustifter
e3cdafc70b
OptimalEdgeProfiling: Reading in Profiles.
...
This enables LLVM to read the OptimalEdgeProfiles.
llvm-svn: 80715
2009-09-01 19:08:51 +00:00
Andreas Neustifter
e7fa9fa3cc
Addedum to r80712, forgot to add files.
...
llvm-svn: 80713
2009-09-01 19:05:58 +00:00
Andreas Neustifter
759094e323
OptimalEdgeProfiling: Creation of profiles.
...
This adds the instrumentation and runtime part of OptimalEdgeProfiling.
llvm-svn: 80712
2009-09-01 19:03:44 +00:00
Andreas Neustifter
4fde5c756d
Small fix in ProfileEstimator that eliminates duplicated code.
...
llvm-svn: 80711
2009-09-01 19:01:59 +00:00
Jim Grosbach
e4459e466f
reduce size of SmallString to something more reasonable
...
llvm-svn: 80710
2009-09-01 18:55:08 +00:00
Chris Lattner
9b463729d7
remove CallGraphNode::replaceCallSite, it is redundant with other APIs.
...
llvm-svn: 80708
2009-09-01 18:52:39 +00:00
Bob Wilson
d7797754d4
Add support for generating code for vst{234}lane intrinsics.
...
llvm-svn: 80707
2009-09-01 18:51:56 +00:00