summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Make ImmutableMap/ImmutableSet quicker by only canonicalizing the tree after anTed Kremenek2009-09-032-62/+61
| | | | | | | 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. llvm-svn: 80955
* Update C++ status, since a bunch of the comments were out-of-dateDouglas Gregor2009-09-031-52/+71
| | | | llvm-svn: 80954
* Improve template instantiation for member access expressions thatDouglas Gregor2009-09-0310-85/+236
| | | | | | | | | involve qualified names, e.g., x->Base::f. We now maintain enough information in the AST to compare the results of the name lookup of "Base" in the scope of the postfix-expression (determined at template definition time) and in the type of the object expression. llvm-svn: 80953
* Mark constructors used in initialization of base(s) and fieldsFariborz Jahanian2009-09-032-28/+48
| | | | | | | as referecned with location where they are used. Still need to look at destructor aspects of them. llvm-svn: 80950
* Disable some parts of the profiling-tool-chain test, which is currently failingDaniel Dunbar2009-09-031-5/+9
| | | | | | | on a self-hosted build (although it seems to work on non-self hosted). I'll work with Andreas to figure this out. llvm-svn: 80947
* Remove dead greps.Daniel Dunbar2009-09-031-3/+0
| | | | llvm-svn: 80946
* Overhaul the TwoAddressInstructionPass to simplify the logic, especiallyBob Wilson2009-09-031-159/+210
| | | | | | | | | | | | | | | | | 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. llvm-svn: 80945
* Support building for a single target architecture.Daniel Dunbar2009-09-033-6/+44
| | | | llvm-svn: 80943
* Smallvectorize switchExitBlocks.Dan Gohman2009-09-031-1/+1
| | | | llvm-svn: 80942
* There is not any need to copy metadata while merging modules.Devang Patel2009-09-033-8/+57
| | | | llvm-svn: 80941
* Recognize more opportunities to use SSE min and max instructions,Dan Gohman2009-09-034-3/+112
| | | | | | swapping the operands if necessary. llvm-svn: 80940
* Use -lc -lm to link with (in tests) on non-Darwin.Daniel Dunbar2009-09-031-1/+4
| | | | llvm-svn: 80939
* Don't use -arch on non-Darwin.Daniel Dunbar2009-09-031-2/+13
| | | | llvm-svn: 80938
* Convert tabs to spaces.Daniel Dunbar2009-09-031-32/+32
| | | | llvm-svn: 80937
* Test cases for vector shifts changes r80935Mon P Wang2009-09-035-12/+126
| | | | | | Changed the old vector shift test to use FileCheck llvm-svn: 80936
* Fixed a few problems with vector shiftsMon P Wang2009-09-031-6/+39
| | | | | | | | | - 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 llvm-svn: 80935
* Issue diagnostics in variety of situations involvingFariborz Jahanian2009-09-036-162/+217
| | | | | | | | reference/const data members when user has declared the constructor. This necessitated some non-minor refactoring. llvm-svn: 80934
* Don't use '%ll', this doesn't workin on Win32.Daniel Dunbar2009-09-031-1/+3
| | | | llvm-svn: 80933
* Add ASTUnit::getOriginalSourceFileName() and use in ↵Steve Naroff2009-09-033-3/+7
| | | | | | clang_getTranslationUnitSpelling(). llvm-svn: 80932
* Add a -disable-16bit flag and associated support for experimenting withDan Gohman2009-09-033-9/+55
| | | | | | | | | 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. llvm-svn: 80930
* Removed the non-target independent AsmToken::Register enum constantKevin Enderby2009-09-035-25/+12
| | | | | | | | | | 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. llvm-svn: 80929
* Use WeakVH to hold dead mdnodes. Check use_empty() before deleting a node.Devang Patel2009-09-031-5/+7
| | | | llvm-svn: 80928
* Make bugpoint use ParseIRFile instead of doing the same thing manually.Dan Gohman2009-09-031-12/+5
| | | | llvm-svn: 80927
* Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verifyDan Gohman2009-09-0310-143/+287
| | | | | | | | | that these passes are properly preserved. Fix several transformation passes that claimed to preserve LoopSimplify form but weren't. llvm-svn: 80926
* Improved handling for dependent, qualified member access expressions, e.g.,Douglas Gregor2009-09-036-49/+100
| | | | | | | | | | | | | | | t->Base::f where t has a dependent type. We save the nested-name-specifier in the CXXUnresolvedMemberExpr then, during instantiation, substitute into the nested-name-specifier with the (transformed) object type of t, so that we get name lookup into the type of the object expression. Note that we do not yet retain information about name lookup into the lexical scope of the member access expression, so several regression tests are still disabled. llvm-svn: 80925
* Remove some unnecessary -f options.Dan Gohman2009-09-031-2/+2
| | | | llvm-svn: 80924
* Move getUniqueExitBlocks from LoopBase to Loop, since they depend onDan Gohman2009-09-032-68/+78
| | | | | | | LoopSimplify form, which is currently only available on Loops (and not MachineLoops). Also, move the code out of the header file. llvm-svn: 80923
* Use IRReader.h in opt, to support reading of LLVM Assembly files directly.Dan Gohman2009-09-033-13/+6
| | | | llvm-svn: 80922
* - Add back some harmless code that part of a reverted commit (r80859). I'll ↵Steve Naroff2009-09-034-14/+74
| | | | | | | | investigate the lifetime snafu (with ASTUnit) separately. - Traverse category methods, add a "class ref" and make the little test harness a bit more flexible. llvm-svn: 80921
* Change PHINode::hasConstantValue to have a DominatorTree argumentDan Gohman2009-09-037-37/+49
| | | | | | | | 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
* Don't try to verify a LoopPass analysis if the loop has been deleted.Dan Gohman2009-09-031-1/+3
| | | | llvm-svn: 80919
* Remove references to expression "handles", which are no longer used.Dan Gohman2009-09-032-3/+3
| | | | llvm-svn: 80918
* CppBackend: avoid printing unnecessary whitespace.Benjamin Kramer2009-09-031-2/+2
| | | | llvm-svn: 80917
* Save/load POSIXThreads flag for PCHDouglas Gregor2009-09-032-0/+2
| | | | llvm-svn: 80916
* Keep track of how many memmove calls were turned intoDuncan Sands2009-09-031-1/+4
| | | | | | memcpy calls. llvm-svn: 80915
* Adding FreeBSD to supported platforms list. Credit to Roman Divacky for testing.Edward O'Callaghan2009-09-031-0/+4
| | | | llvm-svn: 80914
* Fix some files that got left behind in early changeset to unnamed unions ↵Edward O'Callaghan2009-09-0315-33/+33
| | | | | | fix. Credit to Roman Divacky. llvm-svn: 80913
* Fix build warning.Andreas Neustifter2009-09-031-1/+1
| | | | llvm-svn: 80912
* Code Cleanup.Andreas Neustifter2009-09-033-18/+14
| | | | | | | Removed inverted flag form MaximumSpanningTree, also do not handle so much information to MaximumSpanningTree. llvm-svn: 80911
* Filter out -fno-rtti from CXXFLAGS as well (in an expensive checks build).Daniel Dunbar2009-09-031-0/+1
| | | | llvm-svn: 80910
* Code Cleanup.Andreas Neustifter2009-09-031-16/+9
| | | | | | (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090831/086139.html) llvm-svn: 80909
* Reapply profiling tests.Daniel Dunbar2009-09-033-0/+341
| | | | llvm-svn: 80908
* Remove undefined behavior when loading optimal edge profile info.Daniel Dunbar2009-09-031-1/+1
| | | | llvm-svn: 80907
* don't call getOffset() on jump tables, this fixes three failing olden benchmarksChris Lattner2009-09-031-1/+1
| | | | | | with the new asmprinter. llvm-svn: 80906
* Implement support for X86II::MO_GOT_ABSOLUTE_ADDRESS. We get veryChris Lattner2009-09-031-15/+26
| | | | | | | | | | | | | | | | | | 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
* Reference to hidden symbols do not have to go through non-lazy pointer in ↵Evan Cheng2009-09-0314-58/+99
| | | | | | non-pic mode. rdar://7187172. llvm-svn: 80904
* Remove VISIBILITY_HIDDEN from this file.Nick Lewycky2009-09-031-4/+3
| | | | llvm-svn: 80903
* merge all the basic linux/32 pic tests together into one test.Chris Lattner2009-09-036-97/+114
| | | | llvm-svn: 80902
* rename testChris Lattner2009-09-031-0/+0
| | | | llvm-svn: 80901
* use a darwin tripleChris Lattner2009-09-031-1/+1
| | | | llvm-svn: 80900
OpenPOWER on IntegriCloud