summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* avoid bogus warnings about "unknown" pragmas with -frewrite-includes (pr#14831)Lubos Lunak2013-07-202-0/+12
| | | | llvm-svn: 186764
* fix sometimes incorrect line numbers in -frewrite-includes mode (pr#14795)Lubos Lunak2013-07-202-9/+45
| | | | | | | | Every #include is surrounded by #if 0 in order to comment it out, which adds lines. That is fixed up right after, but that all can be inside #if part that is not processed, so fix up also after every end of a conditional part. llvm-svn: 186763
* Silence GCC warning for using both enum and unsigned in a ternary expr.Benjamin Kramer2013-07-201-1/+1
| | | | llvm-svn: 186762
* SROA: Microoptimization: Remove dead entries first, then sort.Benjamin Kramer2013-07-201-9/+4
| | | | | | While there replace an explicit struct with std::mem_fun. llvm-svn: 186761
* DiagnosticIDs: Forbid Diag ID from being validDavid Majnemer2013-07-202-9/+7
| | | | | | | | | | Diag ID is used throughout clang as a sentinel id meaning "this is an invalid diagnostic id." Confusingly, Diag ID maps to a valid, usable, diagnostic id. Instead, start diagnostic ids at ID one. Incidently, remove an unused element from StaticDiagInfo. llvm-svn: 186760
* InstCombine: call FoldOpIntoSelect for all floating binops, not just fmulStephen Lin2013-07-203-3/+94
| | | | llvm-svn: 186759
* Have InlineCost check constant fcmpsMatt Arsenault2013-07-202-4/+39
| | | | llvm-svn: 186758
* If a default argument is a dependent type, get the real type from the desugaredRichard Trieu2013-07-202-5/+31
| | | | | | | template. Passing around dependent types can lead to integral arguments that cannot be evaluated. llvm-svn: 186757
* Add Option unit tests to the make buildHans Wennborg2013-07-202-2/+25
| | | | | | Previously, they were only built and run in the CMake build. llvm-svn: 186756
* [mach-o] factor out all cputype <-> arch conversions to one table driven ↵Nick Kledzik2013-07-203-37/+76
| | | | | | location llvm-svn: 186755
* Fix bug in computing POD-for-layout.Eli Friedman2013-07-203-2/+473
| | | | | | | | | | | | A class with a field of non-POD-for-layout type is not POD-for-layout. This computation should not depend on whether the field is of POD type in the language sense. Fixes PR16537. Patch by Josh Magee. llvm-svn: 186741
* Use -lines option instead of -offset/-length. This fixes problems with files ↵Alexander Kornienko2013-07-201-6/+3
| | | | | | using dos newlines (<CR><LF>). llvm-svn: 186740
* [PECOFF][Driver] Add -base command line option.Rui Ueyama2013-07-206-9/+64
| | | | llvm-svn: 186739
* Make IgnoreParens() look through ChooseExprs.Eli Friedman2013-07-2017-104/+92
| | | | | | | | | | | | | This is the same way GenericSelectionExpr works, and it's generally a more consistent approach. A large part of this patch is devoted to caching the value of the condition of a ChooseExpr; it's needed to avoid threading an ASTContext into IgnoreParens(). Fixes <rdar://problem/14438917>. llvm-svn: 186738
* Debug Info Verifier: simplify DIxxx::VerifyManman Ren2013-07-203-28/+23
| | | | | | | | Simplify DIxxx:Verify to not call Verify on an operand. Instead, we use DebugInfoFinder to list all MDNodes that should be a DIScope and all MDNodes that should be a DIType and we will call Verify on those lists. llvm-svn: 186737
* Fix size_t -> uint warnings with MSVC 64-bit buildMatt Arsenault2013-07-204-15/+15
| | | | llvm-svn: 186736
* Refactor AnalyzeBranch on ARM. The previous version did not always analyzeLang Hames2013-07-193-91/+102
| | | | | | | | | | | | | | | | | | indirect branches correctly. Under some circumstances, this led to the deletion of basic blocks that were the destination of indirect branches. In that case it left indirect branches to nowhere in the code. This patch replaces, and is more general than either of the previous fixes for indirect-branch-analysis issues, r181161 and r186461. For other branches (not indirect) this refactor should have *almost* identical behavior to the previous version. There are some corner cases where this refactor is able to analyze blocks that the previous version could not (e.g. this necessitated the update to thumb2-ifcvt2.ll). <rdar://problem/14464830> llvm-svn: 186735
* Retry submitting r186623: COFFDumper: Dump data directory entries.Rui Ueyama2013-07-195-48/+120
| | | | | | | | The original change was rolled back in r186627 because of test failures on the big endian machine. I believe I fixed the issue so re-submitting. llvm-svn: 186734
* fix an 80-col line.Nadav Rotem2013-07-191-2/+2
| | | | llvm-svn: 186733
* Use LLVMs ADTs that improve the compile time of this pass.Nadav Rotem2013-07-191-2/+2
| | | | llvm-svn: 186732
* SLPVectorizer: Improve the compile time of isConsecutive by reordering the ↵Nadav Rotem2013-07-191-22/+19
| | | | | | conditions that check GEPs and eliminate two of the calls to accumulateConstantOffset. llvm-svn: 186731
* FIXME fix: improving diagnostics for template arguments deduction of class ↵Larisse Voufo2013-07-1917-233/+473
| | | | | | | | templates and explicit specializations This patch essentially removes all the FIXMEs following calls to DeduceTemplateArguments() that want to keep track of deduction failure info. llvm-svn: 186730
* Revert "Use function overloading instead of template specialization for ↵Larisse Voufo2013-07-1915-473/+222
| | | | | | | | diagnosis of bad template argument deductions." This reverts commit a730f548325756d050d4caaa28fcbffdae8dfe95. llvm-svn: 186729
* Fix pack instantiation with function types.Eli Friedman2013-07-192-0/+11
| | | | | | | Make sure we correctly expand packs which expand to another pack in a function type. llvm-svn: 186728
* Use function overloading instead of template specialization for diagnosis of ↵Larisse Voufo2013-07-1915-222/+473
| | | | | | bad template argument deductions. llvm-svn: 186727
* Correctly handle packs for variadic type traits.Eli Friedman2013-07-191-0/+13
| | | | | | | | | | | | | | | I'm not sure how to write a test for this; the following shows the difference in -ast-dump: template <int x> struct A {}; template <class T> struct B { }; template <class ...Args> using C = A<(__is_trivially_constructible(Args...))>; template <class ...Args> using D = C<B<Args>...>; However, I can't seem to write a test that triggers a visible difference in behavior. llvm-svn: 186726
* R600: Don't emit empty then clause and use alu_pop_afterVincent Lejeune2013-07-196-17/+175
| | | | llvm-svn: 186725
* R600: Simplify AMDILCFGStructurize by removing templates and assuming single ↵Vincent Lejeune2013-07-193-2494/+1324
| | | | | | exit llvm-svn: 186724
* R600: Replace legacy debug code in AMDILCFGStructurizer.cppVincent Lejeune2013-07-191-228/+235
| | | | llvm-svn: 186723
* Remove trailing whitespaceCraig Topper2013-07-191-28/+28
| | | | llvm-svn: 186722
* Fix inserting new elements in a specified location.Rafael Espindola2013-07-192-7/+38
| | | | | | We were only handling the 'a' and 'b' options during moves before. llvm-svn: 186721
* Add a cl.exe compatible driver modeHans Wennborg2013-07-197-3/+29
| | | | | | | The mode doesn't actually do anything yet, but this provides a way to get into it. llvm-svn: 186720
* Use an i686 triple for this test now that it uses stdcallReid Kleckner2013-07-191-1/+3
| | | | | | | There seems to be a crash here if we have a calling convention attribute that gets ignored and then we instantiate templates. llvm-svn: 186719
* Fix another place where clang check objc selector name instead of checking ↵Jean-Daniel Dupas2013-07-192-4/+5
| | | | | | | | | | | | the selector family Summary: In ARC mode, clang emits a warning if the result of an 'init' method is unused but miss cases where the method does not follows the Cocoa naming convention but is properly declared as an init family method. CC: cfe-commits, eli.friedman Differential Revision: http://llvm-reviews.chandlerc.com/D1163 llvm-svn: 186718
* Reworked the test decorators to match the test results on the buildbots.Ashok Thirumurthi2013-07-192-2/+2
| | | | llvm-svn: 186717
* ObjectiveC migrator: Another use case of enumFariborz Jahanian2013-07-193-3/+48
| | | | | | declaration which can be migrated to NS_ENUM. llvm-svn: 186716
* Add support for raw_ostream on the printing methods of Diagnostics.Samuel Benzaquen2013-07-194-51/+60
| | | | | | | | | | | | | | Summary: Add printToStream*(llvm::raw_ostream&) methods to Diagnostics, and reimplement everything based on streams instead of concatenating strings. Also, fix some functions to start with lowercase to match the style guide. Reviewers: klimek CC: cfe-commits, revane Differential Revision: http://llvm-reviews.chandlerc.com/D1187 llvm-svn: 186715
* Create calling convention AttributedType sugar nodesReid Kleckner2013-07-195-49/+132
| | | | | | | | | | | | Canonical types are unchanged. The type printer had to be changed to avoid printing any non-default implicit calling convention as well as the calling convention attribute. Reviewers: rjmccall Differential Revision: http://llvm-reviews.chandlerc.com/D1132 llvm-svn: 186714
* Fix for template substitution with packs.Eli Friedman2013-07-192-38/+50
| | | | | | | | | | When we see a pack, and replace it with a template argument which is also a pack, we want to use the pack pattern, not the expanded pack. The caller should take care of expanding the pack afterwards. Fixes PR16646. llvm-svn: 186713
* Add another link to the Python API docs.Daniel Malea2013-07-191-1/+1
| | | | llvm-svn: 186712
* Update users manual to indicate:Richard Smith2013-07-191-3/+11
| | | | | | | 1) clang++ must be used when linking C++ programs using -fsanitize=undefined, and 2) MSan can't be combined with TSan or ASan. llvm-svn: 186711
* [mips] Add support for command-line options -mno-check-zero-division andAkira Hatanaka2013-07-193-0/+23
| | | | | | -mcheck-zero-division. llvm-svn: 186710
* [arcmt] After checking is successful disable auto-synthesize to avoid ↵Argyrios Kyrtzidis2013-07-192-0/+50
| | | | | | | | | | "@synthesize of 'weak' property is only allowed in ARC" errors. rdar://14461559 llvm-svn: 186709
* Replace some existing type attribute diagnostics with aAaron Ballman2013-07-192-26/+20
| | | | | | single diagnostic that selects. No functional changes intended. llvm-svn: 186708
* Add SourceRange to PPCallbacks::Defined callback.John Thompson2013-07-194-15/+24
| | | | llvm-svn: 186707
* Updated the test suite to fix xpasses on the gcc buildbot primarily due to ↵Ashok Thirumurthi2013-07-193-3/+4
| | | | | | | | r186347 (thanks Greg!). Your mileage may vary depending on the gcc and stl versions in use (see llvm.org/pr15301). llvm-svn: 186706
* s/compiler_used/compiler.used/.Rafael Espindola2013-07-195-13/+13
| | | | | | | We were incorrectly using compiler_used instead of compiler.used. Unfortunately the passes using the broken name had tests also using the broken name. llvm-svn: 186705
* Add some flag exclusion tests.Reid Kleckner2013-07-192-12/+49
| | | | llvm-svn: 186704
* [Option] Add inclusion and exclusion flags to option parsingReid Kleckner2013-07-192-8/+36
| | | | | | | | | | | | | | | | | | | Summary: This allows the clang driver to put MSVC compatible options in the same enumerator space as its normal options but exclude them from normal option parsing. Also changes the standard ParseArgs() method to consider unknown arguments with a leading slash as being inputs rather than flags. High level discussion for clang-cl is here: http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-June/030404.html CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1049 llvm-svn: 186703
* Fix source range of implicitly instantiated friend declaration.Enea Zaffanella2013-07-193-0/+25
| | | | llvm-svn: 186702
OpenPOWER on IntegriCloud