Dan Gohman
7296225414
Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify
...
that these passes are properly preserved.
Fix several transformation passes that claimed to preserve LoopSimplify
form but weren't.
llvm-svn: 80926
2009-09-03 16:31:42 +00:00
Dan Gohman
7591ad5a87
Remove some unnecessary -f options.
...
llvm-svn: 80924
2009-09-03 16:11:53 +00:00
Dan Gohman
382f174be1
Move getUniqueExitBlocks from LoopBase to Loop, since they depend on
...
LoopSimplify form, which is currently only available on Loops (and
not MachineLoops). Also, move the code out of the header file.
llvm-svn: 80923
2009-09-03 16:10:48 +00:00
Dan Gohman
7a60ef0f45
Use IRReader.h in opt, to support reading of LLVM Assembly files directly.
...
llvm-svn: 80922
2009-09-03 16:00:08 +00:00
Dan Gohman
66c853f17f
Change PHINode::hasConstantValue to have a DominatorTree argument
...
instead of a bool argument, and to do the dominator check itself.
This makes it eaiser to use when DominatorTree information is
available.
llvm-svn: 80920
2009-09-03 15:34:35 +00:00
Dan Gohman
addca8bad6
Don't try to verify a LoopPass analysis if the loop has been deleted.
...
llvm-svn: 80919
2009-09-03 15:09:24 +00:00
Dan Gohman
d32bdb4c58
Remove references to expression "handles", which are no longer used.
...
llvm-svn: 80918
2009-09-03 15:00:26 +00:00
Benjamin Kramer
f675bc0497
CppBackend: avoid printing unnecessary whitespace.
...
llvm-svn: 80917
2009-09-03 14:58:24 +00:00
Duncan Sands
ada22828c4
Keep track of how many memmove calls were turned into
...
memcpy calls.
llvm-svn: 80915
2009-09-03 13:37:16 +00:00
Andreas Neustifter
9fd76dee00
Fix build warning.
...
llvm-svn: 80912
2009-09-03 09:11:10 +00:00
Andreas Neustifter
c389a5dd4a
Code Cleanup.
...
Removed inverted flag form MaximumSpanningTree, also do not handle so much
information to MaximumSpanningTree.
llvm-svn: 80911
2009-09-03 08:52:52 +00:00
Daniel Dunbar
28838cdd68
Filter out -fno-rtti from CXXFLAGS as well (in an expensive checks build).
...
llvm-svn: 80910
2009-09-03 08:41:19 +00:00
Andreas Neustifter
0b3bf54823
Code Cleanup.
...
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090831/086139.html )
llvm-svn: 80909
2009-09-03 08:41:05 +00:00
Daniel Dunbar
eed0ecc21a
Reapply profiling tests.
...
llvm-svn: 80908
2009-09-03 07:38:00 +00:00
Daniel Dunbar
51ec7bb5aa
Remove undefined behavior when loading optimal edge profile info.
...
llvm-svn: 80907
2009-09-03 07:37:42 +00:00
Chris Lattner
6ea9973a0b
don't call getOffset() on jump tables, this fixes three failing olden benchmarks
...
with the new asmprinter.
llvm-svn: 80906
2009-09-03 07:36:42 +00:00
Chris Lattner
d7cc632fcf
Implement support for X86II::MO_GOT_ABSOLUTE_ADDRESS. We get very
...
different formatting from the old asmprinter, but it should be
semantically the same. We used to get:
popl %eax
addl $_GLOBAL_OFFSET_TABLE_ + [.-.Lllvm$6.$piclabel], %eax
...
Now we get:
popl %eax
.Lpicbaseref6:
addl $(_GLOBAL_OFFSET_TABLE_ + (.Lpicbaseref6 - .Lllvm$6.$piclabel)), %eax
...
llvm-svn: 80905
2009-09-03 07:30:56 +00:00
Evan Cheng
41e87f2f13
Reference to hidden symbols do not have to go through non-lazy pointer in non-pic mode. rdar://7187172.
...
llvm-svn: 80904
2009-09-03 07:04:02 +00:00
Nick Lewycky
68de201065
Remove VISIBILITY_HIDDEN from this file.
...
llvm-svn: 80903
2009-09-03 06:43:15 +00:00
Chris Lattner
e460c8f660
merge all the basic linux/32 pic tests together into one test.
...
llvm-svn: 80902
2009-09-03 06:29:23 +00:00
Chris Lattner
51fec7f6f6
rename test
...
llvm-svn: 80901
2009-09-03 06:16:49 +00:00
Chris Lattner
4d3c6058a3
use a darwin triple
...
llvm-svn: 80900
2009-09-03 06:15:11 +00:00
Chris Lattner
344ada1f5e
TAI -> MAI
...
llvm-svn: 80899
2009-09-03 06:13:54 +00:00
Chris Lattner
8739ae0c8a
adjust expected lines.
...
llvm-svn: 80898
2009-09-03 06:13:45 +00:00
Chris Lattner
52f982c2f9
improve comments.
...
llvm-svn: 80897
2009-09-03 06:00:00 +00:00
Chris Lattner
6fce76a106
fix MCSymbol printing to exactly match the normal mangler rules so
...
we can diff .s files.
llvm-svn: 80894
2009-09-03 05:57:47 +00:00
Chris Lattner
bbff3ebc25
remove extraneous hack.
...
llvm-svn: 80893
2009-09-03 05:54:00 +00:00
Daniel Dunbar
80f8fc8a2a
Make these functions static and local.
...
llvm-svn: 80892
2009-09-03 05:47:34 +00:00
Daniel Dunbar
92d6efefb4
Tweak comment.
...
llvm-svn: 80891
2009-09-03 05:47:22 +00:00
Chris Lattner
d4f19950e3
Thread an MCAsmInfo pointer through the various MC printing APIs,
...
and fix a few things using << on MCSymbols to use ->print(). No
functionality change other than unbreaking my previous patch.
llvm-svn: 80890
2009-09-03 05:46:51 +00:00
Chris Lattner
edb398b7db
just use dump()
...
llvm-svn: 80889
2009-09-03 05:39:09 +00:00
Chris Lattner
2f6f020b42
inline insertion operators.
...
llvm-svn: 80888
2009-09-03 05:33:01 +00:00
Chris Lattner
3ac0c58031
In C++, code is not allowed to call main. In C it is, this
...
simplifylibcalls optimization is thus valid for C++ but not C.
It's not important enough to worry about for C++ apps, so just
remove it.
rdar://7191924
llvm-svn: 80887
2009-09-03 05:19:59 +00:00
Chris Lattner
763a1843ff
merge globaladdress symbol processing stuff into other stuff. Now
...
all global variable operand flag processing stuff is shared between
different operand types.
llvm-svn: 80886
2009-09-03 05:06:07 +00:00
Evan Cheng
fa9e67ebbe
Unbreak x86_64 build.
...
llvm-svn: 80885
2009-09-03 05:01:00 +00:00
Chris Lattner
72cfe4f49c
Split the "operand -> symbol" logic from the "get offset and other munging
...
from operand" logic. GlobalAddress still todo.
llvm-svn: 80884
2009-09-03 04:56:20 +00:00
Chris Lattner
3609f4e4b7
implement lowering support for constant pool index operands, this gets a bunch more
...
olden programs working.
llvm-svn: 80881
2009-09-03 04:44:53 +00:00
Evan Cheng
6d2d69faf9
X86JITInfo::getLazyResolverFunction() should not read cpu id to determine whether sse is available. Just use consult subtarget.
...
No functionality changes.
llvm-svn: 80880
2009-09-03 04:37:05 +00:00
Ted Kremenek
6d0baa578a
Set the 'cached digest' flag after computing the digest for an
...
ImutAVLTree. This was accidentally left out, and essentially caused
digest caching to be ignored in ImmutableMap and ImmutableSet (this
bug was detected from shark traces that showed ComputeDigest was in
the hot path in the clang static analyzer).
This reduces the running time of the clang static analyzer on an
example benchmark by ~32% for both RegionStore (field-sensitivty) and
BasicStore (without field-sensitivity).
llvm-svn: 80877
2009-09-03 04:21:34 +00:00
Chris Lattner
443c84a6a9
update test for alignment value in hex
...
llvm-svn: 80876
2009-09-03 04:03:44 +00:00
Chris Lattner
25817ab343
output alignment value in hex so that we get:
...
.align 3, 0x90
instead of,
.align 3, 144
suggested by eric.
llvm-svn: 80875
2009-09-03 04:01:10 +00:00
Chris Lattner
dfb8d9adcd
simplify this by using SmallString::str(), much nicer!
...
llvm-svn: 80874
2009-09-03 03:54:02 +00:00
Lang Hames
3c7f6b706c
Fixed a test that ensures the LocalRewriter does not attempt to
...
avoid reloads by reusing clobbered registers.
This was causing issues in 256.bzip2 when compiled with PIC for
a while (starting at r78217), though the problem has since been masked.
llvm-svn: 80872
2009-09-03 02:52:02 +00:00
Gabor Greif
4604e0739b
back out my recent commit (r80858), it seems to break self-hosting buildbot's stage 2 configure
...
llvm-svn: 80871
2009-09-03 02:02:59 +00:00
Devang Patel
27616c3c80
Now Bitcode reader bug is fixed. Reapply 80839.
...
Use CallbackVH, instead of WeakVH, to hold MDNode elements.
Use FoldingSetNode to unique MDNodes in a context.
Use CallbackVH hooks to update context's MDNodeSet appropriately.
llvm-svn: 80868
2009-09-03 01:39:20 +00:00
Devang Patel
8d50a366e4
Add new value for given index in MDValuePtrs.
...
llvm-svn: 80867
2009-09-03 01:38:02 +00:00
Daniel Dunbar
ac461a55ce
Improve llvm::getHostTriple for some cases where the LLVM_HOSTTRIPLE is not
...
reliable.
llvm-svn: 80863
2009-09-03 01:10:13 +00:00
Gabor Greif
68c4f27e59
re-commit r66920 (which has been backed out in r66953) I may have more luck this time. I'll back out if needed...
...
llvm-svn: 80858
2009-09-03 00:18:58 +00:00
Sean Callanan
1c6706b750
Added opaque 32-, 48-, and 80-bit memory operand types to the X86
...
instruction tables to support segmented addressing (and other objects
of obscure type).
Modified the X86 assembly printers to handle these new operand types.
Added JMP and CALL instructions that use segmented addresses.
llvm-svn: 80857
2009-09-03 00:04:47 +00:00
Daniel Dunbar
79025e46a2
Show derived host triple in --version.
...
llvm-svn: 80855
2009-09-02 23:52:38 +00:00