Erick Tryzelaar [Thu, 3 Sep 2009 23:27:31 +0000 (23:27 +0000)]
Replace ocamlc tests with ocamlopt tests since they're less noisy.
There's a bug with ocamlc that uses "char*" instead of "const char*" for
global string variables. This causes g++ to be very noisy when linking
ocamlc programs. That's why the ocaml test used to cat to /dev/null.
ocamlopt doesn't have this problem, so we can get rid of the >/dev/null,
which may obscure some problems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80968
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 3 Sep 2009 23:13:46 +0000 (23:13 +0000)]
--- Reverse-merging r80908 into '.':
D test/Analysis/Profiling
--- Reverse-merging r80907 into '.':
U lib/Analysis/ProfileInfoLoaderPass.cpp
Attempt to remove failure in the self-hosting build bot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80966
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 22:57:02 +0000 (22:57 +0000)]
Add test for PR4873, which works for me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80965
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 22:53:57 +0000 (22:53 +0000)]
LLVM currently represents floating-point negation as -0.0 - x. Fix
FastISel to recognize this pattern and emit a floating-point
negation using xor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80963
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Thu, 3 Sep 2009 22:48:51 +0000 (22:48 +0000)]
Don't crash when target has no itineraries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80962
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 3 Sep 2009 22:19:22 +0000 (22:19 +0000)]
If we've pushed registers onto the stack, but aren't adjusting the stack pointer
(i.e., there are no local variables and stuff), we still need to output FDE
information for the pushed registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80960
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 22:17:40 +0000 (22:17 +0000)]
Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,
and exact flags. Because ConstantExprs are uniqued, creating an
expression with this flag causes all expressions with the same operands
to have the same flag, which may not be safe. Add, sub, mul, and sdiv
ConstantExprs are usually folded anyway, so the main interesting flag
here is inbounds, and the constant folder already knows how to set the
inbounds flag automatically in most cases, so there isn't an urgent need
for the API support.
This can be reconsidered in the future, but for now just removing these
API bits eliminates a source of potential trouble with little downside.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80959
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Thu, 3 Sep 2009 22:15:25 +0000 (22:15 +0000)]
Create our own block initializer for kill fixups as the scheduling one wasn't doing the right thing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80958
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Thu, 3 Sep 2009 22:12:28 +0000 (22:12 +0000)]
Calls clobber FPSCR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80956
91177308-0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 3 Sep 2009 22:07:30 +0000 (22:07 +0000)]
Make ImmutableMap/ImmutableSet quicker by only canonicalizing the tree after an
Add or Remove operation complete, and not while building the intermediate tree.
This trades a little bit more memory usage for less accesses to the FoldingSet. On a benchmark for the clang static analyzer, this shaves off another 13% of execution time when using field/array sensitivity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80955
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 21:09:53 +0000 (21:09 +0000)]
Disable some parts of the profiling-tool-chain test, which is currently failing
on a self-hosted build (although it seems to work on non-self hosted). I'll work
with Andreas to figure this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80947
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 20:59:02 +0000 (20:59 +0000)]
Remove dead greps.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80946
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 3 Sep 2009 20:58:42 +0000 (20:58 +0000)]
Overhaul the TwoAddressInstructionPass to simplify the logic, especially
for the complicated case where one register is tied to multiple destinations.
This avoids the extra scan of instruction operands that was introduced by
my recent change. I also pulled some code out into a separate
TryInstructionTransform method, added more comments, and renamed some
variables.
Besides all those changes, this takes care of a FIXME in the code regarding
an assumption about there being a single tied use of a register when
converting to a 3-address form. I'm not aware of cases where that assumption
is violated, but the code now only attempts to transform an instruction,
either by commuting its operands or by converting to a 3-address form,
for the simple case where there is a single pair of tied operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80945
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 20:36:13 +0000 (20:36 +0000)]
Smallvectorize switchExitBlocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80942
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Sep 2009 20:35:57 +0000 (20:35 +0000)]
There is not any need to copy metadata while merging modules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80941
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 20:34:31 +0000 (20:34 +0000)]
Recognize more opportunities to use SSE min and max instructions,
swapping the operands if necessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80940
91177308-0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Thu, 3 Sep 2009 19:57:35 +0000 (19:57 +0000)]
Test cases for vector shifts changes r80935
Changed the old vector shift test to use FileCheck
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80936
91177308-0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Thu, 3 Sep 2009 19:56:25 +0000 (19:56 +0000)]
Fixed a few problems with vector shifts
- when transforming a vector shift of a non-immediate scalar shift amount, zero
extend the i32 shift amount to i64 since the vector shift reads 64 bits
- when transforming i16 vectors to use a vector shift, zero extend i16 shift amount
- improve the code quality in some cases when transforming vectors to use a vector shift
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80935
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 17:18:51 +0000 (17:18 +0000)]
Add a -disable-16bit flag and associated support for experimenting with
disabling the use of 16-bit operations on x86. This doesn't yet work for
inline asms with 16-bit constraints, vectors with 16-bit elements,
trampoline code, and perhaps other obscurities, but it's enough to try
some experiments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80930
91177308-0d34-0410-b5e6-
96231b3b80d8
Kevin Enderby [Thu, 3 Sep 2009 17:15:07 +0000 (17:15 +0000)]
Removed the non-target independent AsmToken::Register enum constant
from MCAsmLexer.h in preparation of supporting other targets. Changed the
X86AsmParser code to reflect this by removing AsmLexer::LexPercent and looking
for AsmToken::Percent when parsing in places that used AsmToken::Register.
Then changed X86ATTAsmParser::ParseRegister to parse out registers as an
AsmToken::Percent followed by an AsmToken::Identifier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80929
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Sep 2009 17:03:47 +0000 (17:03 +0000)]
Use WeakVH to hold dead mdnodes. Check use_empty() before deleting a node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80928
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 16:32:58 +0000 (16:32 +0000)]
Make bugpoint use ParseIRFile instead of doing the same thing manually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80927
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 16:31:42 +0000 (16:31 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80926
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 16:11:53 +0000 (16:11 +0000)]
Remove some unnecessary -f options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80924
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 16:10:48 +0000 (16:10 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80923
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 16:00:08 +0000 (16:00 +0000)]
Use IRReader.h in opt, to support reading of LLVM Assembly files directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80922
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 15:34:35 +0000 (15:34 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80920
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 15:09:24 +0000 (15:09 +0000)]
Don't try to verify a LoopPass analysis if the loop has been deleted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80919
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 3 Sep 2009 15:00:26 +0000 (15:00 +0000)]
Remove references to expression "handles", which are no longer used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80918
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Thu, 3 Sep 2009 14:58:24 +0000 (14:58 +0000)]
CppBackend: avoid printing unnecessary whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80917
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Thu, 3 Sep 2009 13:37:16 +0000 (13:37 +0000)]
Keep track of how many memmove calls were turned into
memcpy calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80915
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Thu, 3 Sep 2009 09:11:10 +0000 (09:11 +0000)]
Fix build warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80912
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Thu, 3 Sep 2009 08:52:52 +0000 (08:52 +0000)]
Code Cleanup.
Removed inverted flag form MaximumSpanningTree, also do not handle so much
information to MaximumSpanningTree.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80911
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 08:41:19 +0000 (08:41 +0000)]
Filter out -fno-rtti from CXXFLAGS as well (in an expensive checks build).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80910
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Thu, 3 Sep 2009 08:41:05 +0000 (08:41 +0000)]
Code Cleanup.
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20090831/086139.html)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80909
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 07:38:00 +0000 (07:38 +0000)]
Reapply profiling tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80908
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 07:37:42 +0000 (07:37 +0000)]
Remove undefined behavior when loading optimal edge profile info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80907
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 07:36:42 +0000 (07:36 +0000)]
don't call getOffset() on jump tables, this fixes three failing olden benchmarks
with the new asmprinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80906
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 07:30:56 +0000 (07:30 +0000)]
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
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80905
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 3 Sep 2009 07:04:02 +0000 (07:04 +0000)]
Reference to hidden symbols do not have to go through non-lazy pointer in non-pic mode. rdar://
7187172.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80904
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Thu, 3 Sep 2009 06:43:15 +0000 (06:43 +0000)]
Remove VISIBILITY_HIDDEN from this file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80903
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 06:29:23 +0000 (06:29 +0000)]
merge all the basic linux/32 pic tests together into one test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80902
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 06:16:49 +0000 (06:16 +0000)]
rename test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80901
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 06:15:11 +0000 (06:15 +0000)]
use a darwin triple
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80900
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 06:13:54 +0000 (06:13 +0000)]
TAI -> MAI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80899
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 06:13:45 +0000 (06:13 +0000)]
adjust expected lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80898
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 06:00:00 +0000 (06:00 +0000)]
improve comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80897
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:57:47 +0000 (05:57 +0000)]
fix MCSymbol printing to exactly match the normal mangler rules so
we can diff .s files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80894
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:54:00 +0000 (05:54 +0000)]
remove extraneous hack.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80893
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 05:47:34 +0000 (05:47 +0000)]
Make these functions static and local.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80892
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 05:47:22 +0000 (05:47 +0000)]
Tweak comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80891
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:46:51 +0000 (05:46 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80890
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:39:09 +0000 (05:39 +0000)]
just use dump()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80889
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:33:01 +0000 (05:33 +0000)]
inline insertion operators.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80888
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:19:59 +0000 (05:19 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80887
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 05:06:07 +0000 (05:06 +0000)]
merge globaladdress symbol processing stuff into other stuff. Now
all global variable operand flag processing stuff is shared between
different operand types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80886
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 3 Sep 2009 05:01:00 +0000 (05:01 +0000)]
Unbreak x86_64 build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80885
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 04:56:20 +0000 (04:56 +0000)]
Split the "operand -> symbol" logic from the "get offset and other munging
from operand" logic. GlobalAddress still todo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80884
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 04:44:53 +0000 (04:44 +0000)]
implement lowering support for constant pool index operands, this gets a bunch more
olden programs working.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80881
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 3 Sep 2009 04:37:05 +0000 (04:37 +0000)]
X86JITInfo::getLazyResolverFunction() should not read cpu id to determine whether sse is available. Just use consult subtarget.
No functionality changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80880
91177308-0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 3 Sep 2009 04:21:34 +0000 (04:21 +0000)]
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).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80877
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 04:03:44 +0000 (04:03 +0000)]
update test for alignment value in hex
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80876
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 04:01:10 +0000 (04:01 +0000)]
output alignment value in hex so that we get:
.align 3, 0x90
instead of,
.align 3, 144
suggested by eric.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80875
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Sep 2009 03:54:02 +0000 (03:54 +0000)]
simplify this by using SmallString::str(), much nicer!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80874
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Thu, 3 Sep 2009 02:52:02 +0000 (02:52 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80872
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Thu, 3 Sep 2009 02:02:59 +0000 (02:02 +0000)]
back out my recent commit (r80858), it seems to break self-hosting buildbot's stage 2 configure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80871
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Sep 2009 01:39:20 +0000 (01:39 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80868
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Sep 2009 01:38:02 +0000 (01:38 +0000)]
Add new value for given index in MDValuePtrs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80867
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 3 Sep 2009 01:10:13 +0000 (01:10 +0000)]
Improve llvm::getHostTriple for some cases where the LLVM_HOSTTRIPLE is not
reliable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80863
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Thu, 3 Sep 2009 00:18:58 +0000 (00:18 +0000)]
re-commit r66920 (which has been backed out in r66953) I may have more luck this time. I'll back out if needed...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80858
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Thu, 3 Sep 2009 00:04:47 +0000 (00:04 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80857
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 2 Sep 2009 23:52:38 +0000 (23:52 +0000)]
Show derived host triple in --version.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80855
91177308-0d34-0410-b5e6-
96231b3b80d8
Shantonu Sen [Wed, 2 Sep 2009 23:52:23 +0000 (23:52 +0000)]
Improve support for cross-hosted builds of LLVM.
--build=triple and other configure options are passed
to the BuildTools/ sub-invocation more consistently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80854
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 2 Sep 2009 22:45:31 +0000 (22:45 +0000)]
Unbreak my CMake build. Say you'll link again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80842
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 2 Sep 2009 21:49:26 +0000 (21:49 +0000)]
Revert 80839 for now. It causes test failures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80841
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 2 Sep 2009 21:22:09 +0000 (21:22 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80839
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 2 Sep 2009 21:21:28 +0000 (21:21 +0000)]
More missed vdup patterns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80838
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 19:35:19 +0000 (19:35 +0000)]
Switch llc from ParseBitcodeFile to ParseIRFile. This lets llc
transparently read either LLVM Assembly or LLVM Bitcode files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80829
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 19:21:56 +0000 (19:21 +0000)]
Add a comment noting the memory ownership rules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80827
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 17:54:06 +0000 (17:54 +0000)]
Add convenience functions for reading in LLVM IR that autodetect
and LLVM Assembly and LLVM Bitcode and automatically call the
corresponding reader.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80809
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Sep 2009 17:37:38 +0000 (17:37 +0000)]
switch from std::string to SmallString + raw_svector_ostream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80807
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Sep 2009 17:35:12 +0000 (17:35 +0000)]
split mcinst lowering stuff out to its own file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80806
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 17:31:42 +0000 (17:31 +0000)]
Fix the syntax of add/sub/mul nsw/nuw and sdiv exact.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80805
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 17:21:29 +0000 (17:21 +0000)]
Add const qualifiers for isBitcodeWrapper, and add new functions
isRawBitcode and isBitcode to allow clients to test whether a given
memory buffer holds a bitcode image.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80804
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 17:18:19 +0000 (17:18 +0000)]
Refactor common code from ParseAssemblyString and ParseAssemblyFile,
to expose a low-level interface for parsing from an existing MemoryBuffer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80803
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 2 Sep 2009 17:05:05 +0000 (17:05 +0000)]
Add const qualifiers to dominates' arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80801
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Wed, 2 Sep 2009 16:47:24 +0000 (16:47 +0000)]
Removed temporarily because of breaking Darwin builds.
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20090831/086214.html)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80799
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 2 Sep 2009 16:35:35 +0000 (16:35 +0000)]
Rearrange code to eliminate redundancy and avoid gotos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80798
91177308-0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 2 Sep 2009 15:02:57 +0000 (15:02 +0000)]
plug another leak in LLParser::PerFunctionState::SetInstName()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80792
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Wed, 2 Sep 2009 14:24:08 +0000 (14:24 +0000)]
Changed profiling-tool-chain.ll test to use optimal-edge-profiling instead of
edge-profiling, this is more useful since the loading of the
optimal-edge-profiling is more complicated.
The edge-profiling is tested in edge-profiling.ll where only the
instrumentation is tested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80791
91177308-0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 2 Sep 2009 14:22:03 +0000 (14:22 +0000)]
plug memory leak in LLParser::PerFunctionState::SetInstName() by deleting a value after replacing it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80790
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Wed, 2 Sep 2009 14:03:11 +0000 (14:03 +0000)]
Sort edges in MaximumSpanningTree more stable in case of equal weight.
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20090824/085890.html)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80789
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Wed, 2 Sep 2009 13:59:05 +0000 (13:59 +0000)]
Changed set of BlocksToInstrument to set of InsertedBlocks that do not have to
be instrumented.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80788
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Neustifter [Wed, 2 Sep 2009 12:38:39 +0000 (12:38 +0000)]
Code cleanups and added comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80781
91177308-0d34-0410-b5e6-
96231b3b80d8
Torok Edwin [Wed, 2 Sep 2009 12:23:05 +0000 (12:23 +0000)]
Opaque types didn't work if llvm_is_multithreaded().
AlwaysOpaqueTy is always NULL at this point, and it causes an assertion failure.
Fix it by using the just constructed tmp instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80780
91177308-0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 2 Sep 2009 11:58:01 +0000 (11:58 +0000)]
set svn:ignore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80779
91177308-0d34-0410-b5e6-
96231b3b80d8
Torok Edwin [Wed, 2 Sep 2009 11:13:56 +0000 (11:13 +0000)]
Fix DbgStopPointInst->getFileName/getDirectory, broken by the MDNodification in
r80406, and readd a -print-dbginfo test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80778
91177308-0d34-0410-b5e6-
96231b3b80d8
Sandeep Patel [Wed, 2 Sep 2009 08:44:58 +0000 (08:44 +0000)]
Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80773
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Sep 2009 06:34:22 +0000 (06:34 +0000)]
Fix month.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80769
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Sep 2009 06:31:02 +0000 (06:31 +0000)]
fix PR4815: some cases where DeleteDeadInstruction can delete
the instruction BBI points to.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80768
91177308-0d34-0410-b5e6-
96231b3b80d8