summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* [PCH/Modules] Don't tie TargetOptions::LinkerVersion to a module/PCH, it's a ↵Argyrios Kyrtzidis2014-04-296-6/+18
| | | | | | | | driver only thing and doesn't affect any language/preprocessor/etc. semantics. rdar://16714526 llvm-svn: 207570
* Android uses -fpic for aarch64.Logan Chien2014-04-292-0/+3
| | | | llvm-svn: 207567
* [analyzer] Improve test from r207486.Jordan Rose2014-04-291-5/+8
| | | | | | | | | | | | The constructor that comes right before a variable declaration in the CFG might not be the initialization of that variable. Previously, we just checked that the variable's initializer expression was different from the construction expression, but forgot to see whether the variable had an initializer expression at all. Thanks for the prompting, David. llvm-svn: 207562
* [analyzer] Don't assert when combining using .* on a temporary.Jordan Rose2014-04-292-1/+25
| | | | | | | | | | | | | While we don't model pointer-to-member operators yet (neither .* nor ->*), CallAndMessageChecker still checks to make sure the 'this' object is not null or undefined first. However, it also expects that the object should always have a valid MemRegion, something that's generally important elsewhere in the analyzer as well. Ensure this is true ahead of time, just like we do for member access. PR19531 llvm-svn: 207561
* Reapply r207477 and r207479 without cyclic dependencyBen Langmuir2014-04-2913-23/+275
| | | | | | | | Fixed by moving ProcessWarningOptions from Frontend into Basic. All of the dependencies for ProcessWarningOptions were already in Basic, so this was a small change. llvm-svn: 207549
* Objective-C. Improve diagnosis of bridging types.Fariborz Jahanian2014-04-297-190/+411
| | | | | | // rdar://16737117 llvm-svn: 207542
* clang-format: Don't bin-pack text-proto-formatted options.Daniel Jasper2014-04-292-0/+5
| | | | | | | | | | | | | | | Before: repeated double value = 1 [(aaaaaaa.aaaaaaaaa) = {aaaaaaaaaaaaaaaa: AAAAAAAAAA, bbbbbbb: BBBB, bbbb: BBB}]; After: repeated double value = 1 [(aaaaaaa.aaaaaaaaa) = {aaaaaaaaaaaaaaaa: AAAAAAAAAA, bbbbbbb: BBBB, bbbb: BBB}]; llvm-svn: 207538
* clang-format: Remove accidentally added debug output.Daniel Jasper2014-04-291-2/+0
| | | | llvm-svn: 207533
* clang-format: Allow single-line function in WebKit style.Daniel Jasper2014-04-293-2/+7
| | | | | | | | | | | Before: void f() { return; } After: void f() { return; } llvm-svn: 207527
* Add comments regarding isPIEDefault usage for r207520Alexey Volkov2014-04-291-0/+2
| | | | | | Differential Revision: http://reviews.llvm.org/D2668 llvm-svn: 207521
* Pass -pie to linker when generating executable on AndroidAlexey Volkov2014-04-292-1/+9
| | | | | | | | This fixes problem with LTO on Android. Differential Revision: http://reviews.llvm.org/D2668 llvm-svn: 207520
* AST: Fix visibility calculation for VarTemplateSpecializationDeclDavid Majnemer2014-04-292-0/+12
| | | | | | | | | | | | It is possible that a variable template specialization might not have a VisibilityAttr attached to it while the template that it specializes does, in fact, have one. We should consider the template in such cases. This fixes PR19597. llvm-svn: 207498
* Revert r207477 (and r207479), "Check -Werror options during module validation"NAKAMURA Takumi2014-04-299-266/+12
| | | | | | It tried to introduce cyclic dependencies. Serialization shouldn't depend on Frontend, since Frontend depends on Serialization. llvm-svn: 207497
* CodeGen: Reference temporaries inherit visibilityDavid Majnemer2014-04-292-0/+15
| | | | | | | Reference temporaries inherited many properties from the variable that they correspond to but visibility wasn't one of them. llvm-svn: 207496
* Make test independent of label. Thanks to Richard Smith for catching this!Adrian Prantl2014-04-291-4/+2
| | | | llvm-svn: 207489
* Run this test through instnamer to stop it failing on non-asserts clang builds.Richard Smith2014-04-291-1/+1
| | | | llvm-svn: 207488
* [analyzer] Don't crash when a construction is followed by an uninitialized ↵Jordan Rose2014-04-292-1/+28
| | | | | | | | | | variable. This could happen due to unfortunate CFG coincidences. PR19579 llvm-svn: 207486
* scan-build: Don't use realpath when the user provides an explicit path.Jordan Rose2014-04-291-1/+1
| | | | | | PR19583 llvm-svn: 207484
* Revert r207482; I fail at reading IRC.Nico Weber2014-04-292-36/+0
| | | | llvm-svn: 207483
* Let stddef.h redefine NULL if __need_NULL is set, as needed by glibc, PR12997.Nico Weber2014-04-292-0/+36
| | | | | | | | | See the bug and the cfe-commits thread "[patch] Let stddef.h redefine NULL if __need_NULL is set" for discussion. Fixes PR12997 and is similar to the __need_wint_t bits already in this file. llvm-svn: 207482
* Debug info: Improve line table for functions with cleanups an early exitAdrian Prantl2014-04-292-0/+45
| | | | | | | | | | | | | and no return expr at the end of the function. The "function has only simple returns" check in FinishFunction tests whether the number of simple return exprs equals the number of return exprs, but so far a fallthrough at the end of a function was not counted as a return, which would result in cleanup code being associated with the wrong source line. rdar://problem/16733984. llvm-svn: 207480
* Add missing triple to make -isysroot workBen Langmuir2014-04-291-3/+3
| | | | llvm-svn: 207479
* [analyzer] Clean up the lists of current and potential checkers.Jordan Rose2014-04-293-1073/+2544
| | | | | | Patch by Anton Yartsev, modified by me. llvm-svn: 207478
* Check -Werror options during module validationBen Langmuir2014-04-299-12/+266
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch checks whether the diagnostic options that could lead to errors (principally -Werror) are consistent between when a module was built and when it is loaded. If there are new -Werror flags, then the module is rebuilt. In order to canonicalize the options we do this check at the level of the constructed DiagnosticsEngine, which contains the final set of diag to diagnostic level mappings. Currently we only rebuild with the new diagnostic options, but we intend to refine this in the future to include the union of the new and old flags, since we know the old ones did not cause errors. System modules are only rebuilt when -Wsystem-headers is enabled. One oddity is that unlike checking language options, we don’t perform this diagnostic option checking when loading from a precompiled header. The reason for this is that the compiler cannot rebuild the PCH, so anything that requires it to be rebuilt effectively leaks into the build system. And in this case, that would mean the build system understanding the complex relationship between diagnostic options and the underlying diagnostic mappings, which is unreasonable. Skipping the check is safe, because these options do not affect the generated AST. You simply won’t get new build errors due to changed -Werror options automatically, which is also true for non-module cases. llvm-svn: 207477
* LLVM supports TLS on Windows and we can use it from ClangReid Kleckner2014-04-292-5/+2
| | | | | | | | Patch by Martell Malone! Differential Revision: http://reviews.llvm.org/D3421 llvm-svn: 207470
* When Driver::generateCompilationDiagnostics is filtering the list ofPaul Robinson2014-04-282-4/+5
| | | | | | | inputs to the preprocessor, check for invalid types first because not all linker inputs have an option value to retrieve. llvm-svn: 207454
* Move all CUDA testing inputs to Inputs/ subdirectory inside the tests.Eli Bendersky2014-04-2814-24/+64
| | | | llvm-svn: 207453
* CodeGen: Fix linkage of reference temporariesDavid Majnemer2014-04-2816-133/+221
| | | | | | | | | | | | | | | Summary: A reference temporary should inherit the linkage of the variable it initializes. Otherwise, we may hit cases where a reference temporary wouldn't have the same value in all translation units. Reviewers: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D3515 llvm-svn: 207451
* [cleanup] Fix an 80-column violationJustin Bogner2014-04-281-1/+2
| | | | llvm-svn: 207446
* [driver] Disable the slp vectorizer at -O0, -O1, and -Oz. This mirrors theChad Rosier2014-04-282-3/+16
| | | | | | | | behavior of the loop vectorizer, which is enabled at -O2, -O3, -O4, -Ofast and -Os. PR19568 llvm-svn: 207433
* Remove unused using statement.Nico Weber2014-04-281-1/+0
| | | | llvm-svn: 207427
* Renaming range-based for loop variables so they don't appear iterator-like.Aaron Ballman2014-04-281-23/+23
| | | | llvm-svn: 207422
* [C++11] Converting to range-based for loops. No functional changes intended.Aaron Ballman2014-04-281-46/+27
| | | | llvm-svn: 207416
* clang-format: Improve binary operator detection.Daniel Jasper2014-04-282-1/+2
| | | | | | | | | | | | Before: *(int *)(p &~3UL) = 0; After: *(int *)(p & ~3UL) = 0; This fixes llvm.org/PR19464. llvm-svn: 207405
* clang-format: Fixes spaces in case statements.Daniel Jasper2014-04-282-2/+7
| | | | | | | | | | | | | | | | | | This fixes llvm.org/PR19482. Before: switch (a) { case(B) : return; } After: switch (a) { case (B): return; } llvm-svn: 207402
* [ARM64]Fix a bug cannot select UQSHL/SQSHL with constant i64 shift amount.Hao Liu2014-04-282-10/+18
| | | | llvm-svn: 207401
* clang-format: Don't wrap after @interface.Daniel Jasper2014-04-282-0/+12
| | | | | | | | | | | | | | | | | | | | | | This fixes llvm.org/PR19450. Before: @interface BookmarkHomeHandsetViewController ()<BookmarkAllCollectionViewDelegate, BookmarkFolderCollectionViewDelegate, BookmarkMenuViewControllerDelegate, BookmarkSearchViewControllerDelegate> { } After: @interface aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ()< aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa> { } llvm-svn: 207400
* Follow-up to r207071: Let newFrontendActionFactory() return a unique_ptr.Nico Weber2014-04-282-10/+12
| | | | | | This exposed a leak, fix that. llvm-svn: 207396
* libclang: split out the documentation comment APIAlp Toker2014-04-286-536/+574
| | | | | | | | | | | | | | | | | It's possible that the "comment AST" may be replaced or split out in the midterm, any anyway this makes the headers easier to read. Developers don't currently need to include "clang-c/Documentation.h" explicitly and there's no macro to test for availability yet. The raw comment and brief comment accessors have been kept in Index.h though brief support may also move here as a separate proposal. This is not a deprecation, just a gentle separation of concerns as we look to simplify the built-in representation of comment nodes and support external comment processors. llvm-svn: 207392
* [objcmt] Revert r191796, it's not needed anymore.Argyrios Kyrtzidis2014-04-284-49/+9
| | | | | | rdar://16223810 llvm-svn: 207391
* CodeGen: remove an unused variableSaleem Abdulrasool2014-04-281-3/+0
| | | | llvm-svn: 207390
* [SemaCXX] Silence -Wconstant-logical-operand if the operand is a 0/1 from a ↵Argyrios Kyrtzidis2014-04-282-1/+12
| | | | | | | | | | | macro. Libraries specify enabled/disabled features using macro defs of 0/1, in such cases the -Wconstant-logical-operand is noise. rdar://15410291 llvm-svn: 207386
* [Index/DocComments] When cloning a full comment, pick the template ↵Argyrios Kyrtzidis2014-04-272-0/+17
| | | | | | | | | | parameters from the original FullComment, if the parameters are not already set (e.g. because it is a typedef). Fixes crash of rdar://16128173 llvm-svn: 207382
* remove less relevant information + about packaging/Mac OS X + link to cfe-devSylvestre Ledru2014-04-272-4/+3
| | | | llvm-svn: 207362
* Remove no longer relevant information in the gcc/llvm comparison page + ↵Sylvestre Ledru2014-04-271-9/+2
| | | | | | minor updates llvm-svn: 207361
* remove useless codeSylvestre Ledru2014-04-271-1/+0
| | | | llvm-svn: 207360
* Remove deprecated information about performances:Sylvestre Ledru2014-04-271-57/+4
| | | | | | | | | | * It is better if we leave third parties to do "independent" benchmark. * We compare Clang (version unspecified) with gcc 4.0 or 4.2. * The graphs have not been updated for a while. * Clang is well known now. I don't think we still need to explain why Clang is great. llvm-svn: 207358
* clang-format: Fix bug when aligning trailing /**/-comments in macros.Daniel Jasper2014-04-272-1/+13
| | | | | | | Previously this could lead to a column limit violation with the required escaped newlines. llvm-svn: 207351
* Fix the method len of the CompletionString object. Patch by Christopher GreeneSylvestre Ledru2014-04-271-1/+1
| | | | llvm-svn: 207348
* c-arcmt-test/Makefile: Update USEDLIBS for -static.NAKAMURA Takumi2014-04-271-1/+4
| | | | llvm-svn: 207340
OpenPOWER on IntegriCloud