summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* SizeofPointerChecker: If an explicit type specifier is used, do not issue ↵Zhongxing Xu2009-11-101-0/+5
| | | | | | warnings. llvm-svn: 86662
* Use PP.getLocForEndOfToken as suggested by John.Anders Carlsson2009-11-101-2/+2
| | | | llvm-svn: 86661
* Use the source range of the whole sizeof expression, otherwise it crashes whenZhongxing Xu2009-11-101-1/+1
| | | | | | the argument is not an expression. llvm-svn: 86660
* If a function with a default argument is redefined and the new function also ↵Anders Carlsson2009-11-102-1/+19
| | | | | | has a defualt argument then add a fixit hint that removes the default argument. Fixes PR5444. llvm-svn: 86659
* Update xode project.Anders Carlsson2009-11-101-0/+12
| | | | llvm-svn: 86658
* Add test case for PointerSubChecker.Zhongxing Xu2009-11-101-0/+5
| | | | llvm-svn: 86657
* CMake: Support for building llvm loadable modules.Oscar Fuentes2009-11-103-2/+17
| | | | llvm-svn: 86656
* lit: Start documentation testing architecture.Daniel Dunbar2009-11-101-0/+116
| | | | llvm-svn: 86655
* lit: Add ExampleTests, for testing lit and demonstrating test suite features.Daniel Dunbar2009-11-1026-0/+555
| | | | llvm-svn: 86654
* lit: Fix bug in --show-suites which accidentally override the list of tests.Daniel Dunbar2009-11-101-2/+2
| | | | llvm-svn: 86653
* Refine PointerSubChecker: compare the base region instead of the original Zhongxing Xu2009-11-104-3/+34
| | | | | | region, so that arithmetic within a memory chunk is allowed. llvm-svn: 86652
* Fix PR5445Bruno Cardoso Lopes2009-11-101-1/+1
| | | | llvm-svn: 86651
* Be sure to clear out VCall when we clear out VCalls.Mike Stump2009-11-102-0/+42
| | | | | | Start implementing VTTs. WIP. llvm-svn: 86650
* Rename: StripCasts describes what it does better. Zhongxing Xu2009-11-109-11/+11
| | | | | | getBaseRegion will be used in another method. llvm-svn: 86649
* I misread the parens, not so redundant after all.Chris Lattner2009-11-101-4/+4
| | | | llvm-svn: 86648
* Finish off mangling for the VTT.Mike Stump2009-11-101-0/+8
| | | | llvm-svn: 86647
* make jump threading recursively simplify expressions instead of doing it Chris Lattner2009-11-102-20/+74
| | | | | | | | | | | | | | | | | | | just one level deep. On the testcase we go from getting this: F1: ; preds = %T2 %F = and i1 true, %cond ; <i1> [#uses=1] br i1 %F, label %X, label %Y to a fully threaded: F1: ; preds = %T2 br label %Y This changes gets us to the point where we're forming (too many) switch instructions on doug's strswitch testcase. llvm-svn: 86646
* remove some redundant parens.Chris Lattner2009-11-101-4/+4
| | | | llvm-svn: 86645
* CMake: Remove unnecessary `unset' which was not supported by old cmakeOscar Fuentes2009-11-101-1/+0
| | | | | | releases. llvm-svn: 86644
* Add mangling for the construction vtable.Mike Stump2009-11-102-0/+25
| | | | llvm-svn: 86643
* Remove an unused variable.Dan Gohman2009-11-101-1/+0
| | | | llvm-svn: 86642
* Minor code simplification.Dan Gohman2009-11-101-1/+1
| | | | llvm-svn: 86641
* Trim a bunch of unneeded code from this testcase.Dan Gohman2009-11-101-94/+1
| | | | llvm-svn: 86640
* don't invalidate PN, rewrite of this code is in progress anyway.Chris Lattner2009-11-101-4/+5
| | | | llvm-svn: 86639
* Fix clang's use of DenseMap iterators after r86636 fixed their constness.Jeffrey Yasskin2009-11-106-6/+6
| | | | | | Patch by Victor Zverovich! llvm-svn: 86638
* add a new SimplifyInstruction API, which is like ConstantFoldInstruction, Chris Lattner2009-11-103-7/+30
| | | | | | | | except that the result may not be a constant. Switch jump threading to use it so that it gets things like (X & 0) -> 0, which occur when phi preds are deleted and the remaining phi pred was a zero. llvm-svn: 86637
* Fix DenseMap iterator constness.Jeffrey Yasskin2009-11-1014-61/+76
| | | | | | | | | | | | | | | | | | | This patch forbids implicit conversion of DenseMap::const_iterator to DenseMap::iterator which was possible because DenseMapIterator inherited (publicly) from DenseMapConstIterator. Conversion the other way around is now allowed as one may expect. The template DenseMapConstIterator is removed and the template parameter IsConst which specifies whether the iterator is constant is added to DenseMapIterator. Actually IsConst parameter is not necessary since the constness can be determined from KeyT but this is not relevant to the fix and can be addressed later. Patch by Victor Zverovich! llvm-svn: 86636
* factor simplification logic for AND and OR out to InstSimplify from instcombine.Chris Lattner2009-11-103-111/+196
| | | | llvm-svn: 86635
* Fixed to address code review. No functional changes.David Goodwin2009-11-107-23/+40
| | | | llvm-svn: 86634
* Simplify, following MemoryBuffer::getSTDIN API fix.Daniel Dunbar2009-11-101-8/+0
| | | | llvm-svn: 86633
* Switch to getFileOrSTDIN().Daniel Dunbar2009-11-101-4/+1
| | | | llvm-svn: 86632
* Remove some if-0'd code, we can resurrect this if we ever decide to supportDaniel Dunbar2009-11-101-12/+1
| | | | | | continuing after invalid PCH loads. llvm-svn: 86631
* Fix MemoryBuffer::getSTDIN to *not* return null if stdin is empty, this is a ↵Daniel Dunbar2009-11-104-41/+33
| | | | | | | | lame API. Also, Stringrefify some more MemoryBuffer functions, and add two performance FIXMEs. llvm-svn: 86630
* Move all of the type-printing logic to its own C++ source fileDouglas Gregor2009-11-105-756/+723
| | | | llvm-svn: 86629
* Allow targets to specify register classes whose member registers should not ↵David Goodwin2009-11-106-11/+37
| | | | | | be renamed to break anti-dependencies. llvm-svn: 86628
* pull a bunch of logic out of instcombine into instsimplify for compare Chris Lattner2009-11-092-61/+106
| | | | | | simplification, this handles the foldable fcmp x,x cases among many others. llvm-svn: 86627
* Pass the (optional) TargetData object to ConstantFoldInstOperandsDan Gohman2009-11-091-9/+10
| | | | | | and ConstantFoldCompareInstOperands. llvm-svn: 86626
* inline a simple function.Chris Lattner2009-11-091-17/+20
| | | | llvm-svn: 86625
* rename SimplifyCompare -> SimplifyCmpInst and split it into Chris Lattner2009-11-095-14/+65
| | | | | | | Simplify[IF]Cmp pieces. Add some predicates to CmpInst to determine whether a predicate is fp or int. llvm-svn: 86624
* Add PreprocessorOptions to CompilerInvocation.Daniel Dunbar2009-11-092-21/+31
| | | | llvm-svn: 86623
* Now that the default is 'enabled,' a separate command line option for ARM isJim Grosbach2009-11-091-8/+1
| | | | | | not necessary. llvm-svn: 86621
* Add testcase for recent checkin.Mike Stump2009-11-091-0/+55
| | | | llvm-svn: 86620
* fix ConstantFoldCompareInstOperands to take the LHS/RHS asChris Lattner2009-11-095-36/+28
| | | | | | individual operands instead of taking a temporary array llvm-svn: 86619
* Add StringSwitch::Cases overloads, for matching multiple strings to a singleDaniel Dunbar2009-11-091-0/+19
| | | | | | value. llvm-svn: 86618
* Privatize InitHeaderSearch, this functionality is only exposed viaDaniel Dunbar2009-11-095-113/+92
| | | | | | ApplyHeaderSearchOptions now. llvm-svn: 86617
* use instructionsimplify instead of a weak clone of ad-hoc folding stuff.Chris Lattner2009-11-091-22/+2
| | | | llvm-svn: 86616
* Update testJim Grosbach2009-11-091-1/+1
| | | | llvm-svn: 86614
* stub out a new libanalysis "instruction simplify" interface thatChris Lattner2009-11-093-0/+95
| | | | | | | | takes decimated instructions and applies identities to them. This is pretty minimal at this point, but I plan to pull some instcombine logic out into these and similar routines. llvm-svn: 86613
* Move LangOptions, HeaderSearchOptions, and the target feature map intoDaniel Dunbar2009-11-092-38/+69
| | | | | | CompilerInvocation. llvm-svn: 86612
* Switch Target* to Target&.Daniel Dunbar2009-11-091-9/+9
| | | | llvm-svn: 86611
OpenPOWER on IntegriCloud