summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* [mips] Move setDescriptionString to base class MipsTargetInfoBase and call itAkira Hatanaka2013-10-291-21/+29
| | | | | | | | at the end of handleTargetFeatures. No intended functionality change. llvm-svn: 193636
* R600: Add Sea Islands GPUsTom Stellard2013-10-291-1/+6
| | | | llvm-svn: 193622
* clang-format: Option to control spacing in template argument lists.Daniel Jasper2013-10-292-1/+7
| | | | | | | | | | | Same as SpacesInParentheses, this option allows adding a space inside the '<' and '>' of a template parameter list. Patch by Christopher Olsen. This fixes llvm.org/PR17301. llvm-svn: 193614
* Resubmit "Refactor DynTypedMatcher into a value type class, just like ↵Samuel Benzaquen2013-10-296-104/+79
| | | | | | | | | | | | | | Matcher<T>." Summary: This resubmits r193100, plus a fix for a breakage with MSVC. Reviewers: klimek, rnk CC: cfe-commits, revane Differential Revision: http://llvm-reviews.chandlerc.com/D2005 llvm-svn: 193613
* Fix an assertion when handling a custom case of virtual inheritance; also ↵Timur Iskhodzhanov2013-10-291-24/+2
| | | | | | reduce code duplication llvm-svn: 193610
* ARM: fix AST for __builtin_arm_strex callTim Northover2013-10-291-1/+4
| | | | | | | | | | | The AST was constructed so that this builtin returned the default BoolTy and since I'd opted for custom SemaChecking, I should have set it properly at that point. This caused an assertion failure when the types didn't match up with what we generated. This makes it return an IntTy, which is as good as anything. llvm-svn: 193606
* clang-format: Fix overloaded operator for global-scoped conversions.Daniel Jasper2013-10-291-1/+1
| | | | | | | | | | Before: operator::A(); After: operator ::A(); llvm-svn: 193605
* Teach the driver to not try to use 'lib32' multilib spellings on ARMChandler Carruth2013-10-291-6/+19
| | | | | | | | | | | | | | | | | | | | | | | which doesn't use that multilib. As a consequence, fix Clang's support for cross compiling environments that were relying on this quirk to ensure the correct library search path ordering. This also re-instates the new test cases from Rafael's r193528 for cross-compiling to ARM on Ubuntu 13.10 without any of the changes to the existing test cases (they were no longer needed). This solution was the result of a lot of IRC debugging and trying to understand *exactly* what quirk was being relied upon. It took some time for me to figure out that it was the use of 'lib32' is a multilib that was throwing a wrench in the works. In case you are thinking that its silly to use a multilib of 'lib' at all, entertainingly, GCC does so as well (you can see it with the .../lib/../lib/crt1.o pattern it uses), and the 2-phase sequence of search paths (multilib followed by non-multilib) has observable (if dubious) consequences. =/ Yuck. llvm-svn: 193601
* ARM: Add -m[no-]crc to dis/enable CRC subtargetfeature from clangBernard Ogden2013-10-292-1/+16
| | | | | | | | Allow users to disable or enable CRC subtarget feature. Differential Revision: http://llvm-reviews.chandlerc.com/D2037 llvm-svn: 193600
* Doh, got this turned around. This is in fact the consistent ordering.Chandler Carruth2013-10-291-4/+0
| | | | llvm-svn: 193596
* Clean up the deeply misleading name of the "MultiLibSuffix". This isChandler Carruth2013-10-292-44/+50
| | | | | | | | actually a MIPS-only hack to shim in random ABI directory suffixes in numerous places throughout the toolchain's path search. It shouldn't appear to be anything more general or useful. llvm-svn: 193595
* Use Rewriter::overwriteChangedFiles() directlyAlp Toker2013-10-291-17/+1
| | | | | | | | | | | | | This replaces the custom code in RefactoringTool::saveRewrittenFiles() which lacked atomic file saving and error diagnostics, resolving an old FIXME from r157331. Landing this time with the proper return code, plus a very unhelpful comment cleared up. Rubber-stamped by Manuel Klimek. llvm-svn: 193594
* Revert "Use Rewriter::overwriteChangedFiles() directly"Alp Toker2013-10-291-1/+17
| | | | | | | | This wasn't ready for prime time yet, seems to break tools-extra. This reverts commit r193590. llvm-svn: 193592
* Use Rewriter::overwriteChangedFiles() directlyAlp Toker2013-10-291-17/+1
| | | | | | | | | The old code in RefactoringTool::saveRewrittenFiles() lacked atomic moves and diagnostics and had FIXME to this effect. Rubber-stamped by Manuel Klimek. llvm-svn: 193590
* Cleanup comments and braces. No functionality changed, just trying toChandler Carruth2013-10-291-4/+15
| | | | | | | | | record what is *actually* going on here as the comments existing in the code are confusing at best, and in places outright misleading. The API is even more misleading. Yay. llvm-svn: 193577
* Revert "Support cross linking to arm on ubuntu."Rafael Espindola2013-10-281-23/+11
| | | | | | | | This reverts commit r193528 (and fixes). It broke Chandler's setup. llvm-svn: 193554
* Allow a new syntax in a module requires-declaration:Richard Smith2013-10-286-25/+48
| | | | | | | | | | | | requires ! feature The purpose of this is to allow (for instance) the module map for /usr/include to exclude <tgmath.h> and <complex.h> when building in C++ (these headers are instead provided by the C++ standard library in this case, and the glibc C <tgmath.h> header would otherwise try to include <complex.h>, resulting in a module cycle). llvm-svn: 193549
* Fix a parser crash when there are #pragmas in a context which requires a singleRichard Smith2013-10-281-0/+15
| | | | | | statement (after a case label, if, etc). Patch by Olivier Goffart! llvm-svn: 193545
* Support cross linking to arm on ubuntu.Rafael Espindola2013-10-281-11/+23
| | | | | | | | | | With this patch we correctly determine that ubuntu's ARM tree is not biarch and use "lib" istead of "lib32". Without this patch the search inside the arm tree for the crt files was failing and we would end up trying to use the i686 ones in lib32. llvm-svn: 193528
* StaticAnalyzer/Checkers/DynamicTypePropagation.cpp: Fix in comments. 80-col ↵NAKAMURA Takumi2013-10-281-2/+2
| | | | | | and an utf8 char. llvm-svn: 193513
* Define [U]LLONG_{MIN,MAX} for C++11, add tests.JF Bastien2013-10-271-2/+4
| | | | | | Add tests for limits.h, not just [U]LLONG_{MIN,MAX}. llvm-svn: 193506
* Fix the inconsistent order of parameters in the GetVBaseOffsetFromVBPtr ↵Timur Iskhodzhanov2013-10-271-3/+3
| | | | | | definition and declaration llvm-svn: 193505
* clang-format: Fix ObjC method exprs with variadic parameters.Daniel Jasper2013-10-261-1/+4
| | | | | | | | | | | | | | | | | Before: _versionLabel.text = [ NSString stringWithFormat:NSLocalizedString(@"version: %@", @"Label"), [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"] ]; After: _versionLabel.text = [NSString stringWithFormat:NSLocalizedString(@"version: %@", @"Label"), [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"]]; This fixed llvm.org/PR17695. llvm-svn: 193475
* Sema: Emit a nicer diagnostic when IndirectFieldDecls show up ↵David Majnemer2013-10-261-2/+2
| | | | | | inappropriately in non-type template arguments llvm-svn: 193462
* Sema: Correctly build pointer-to-member arguments from a template argument ↵David Majnemer2013-10-261-1/+2
| | | | | | | | | | | | with an IndirectFieldDecl We only considered FieldDecl and CXXMethodDecl as appropriate which would cause us to believe the IndirectFieldDecl corresponded to an argument of it's field type instead of a pointer-to-member type. This fixes PR17696. llvm-svn: 193461
* [analyzer] Don't emit an "Assuming x is <OP> y" if it's not a comparison op.Jordan Rose2013-10-261-1/+2
| | | | | | | | | We could certainly be more precise in many of our diagnostics, but before we were printing "Assuming x is && y", which is just ridiculous. <rdar://problem/15167979> llvm-svn: 193455
* ObjectiveC arc. Warn when an implicitly 'strong' property Fariborz Jahanian2013-10-261-0/+14
| | | | | | | is redeclared as 'weak' in class extension. // rdar://15304886 llvm-svn: 193453
* Minor performance improvement to not do unnecessary workFariborz Jahanian2013-10-251-6/+8
| | | | | | in my last patch. // rdar://14989999 llvm-svn: 193441
* ObjectiveC: under -Wunused-property-ivar warn if property'sFariborz Jahanian2013-10-258-4/+51
| | | | | | | backing warning is not used in one of its accessor methods. // rdar://14989999 llvm-svn: 193439
* I am about to change llvm::MemoryBuffer::getFile take take a Twine. ChangeRafael Espindola2013-10-253-3/+5
| | | | | | clang first so that the build still works. llvm-svn: 193428
* Just detect a distro as being fedora or not.Rafael Espindola2013-10-251-18/+4
| | | | | | | We don't have any checks that depend on the version of fedora, so we can simplify. llvm-svn: 193423
* Merge two adjacent ifs.Rafael Espindola2013-10-251-3/+2
| | | | llvm-svn: 193419
* Add -Wstring-plus-char, which warns when adding char literals to C strings.Jordan Rose2013-10-251-4/+57
| | | | | | | | | | | Specifically, this warns when a character literal is added (using '+') to a variable with type 'char *' (or any other pointer to character type). Like -Wstring-plus-int, there is a fix-it to change "foo + 'a'" to "&foo['a']" iff the character literal is on the right side of the string. Patch by Anders Rönnholm! llvm-svn: 193418
* Used OwningPtr to clean up some memory management in Consumed.cpp.Chris Wailes2013-10-251-12/+7
| | | | llvm-svn: 193414
* clang-format: Adapt line break penalties for LLVM style.Daniel Jasper2013-10-252-1/+6
| | | | | | | | | | | | | | | | | | | | Specifically make clang-format less eager to break after the opening parenthesis of a function call. Before: aaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa); After: aaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa); Apparently that is preferable. This penalties are adapted conservatively, we might have to increase them a little bit further. llvm-svn: 193410
* Sema: Do not allow lambda expressions to appear inside of constant expressionsDavid Majnemer2013-10-252-10/+24
| | | | | | | | | We would previously not diagnose this which would lead to crashes (on very strange code). This fixes PR17675. llvm-svn: 193397
* Remove dead variables.Benjamin Kramer2013-10-251-11/+2
| | | | llvm-svn: 193395
* Consider used attributes in hidden decls.Rafael Espindola2013-10-251-0/+10
| | | | | | Without this patch we would warn and fail to output the function in the test. llvm-svn: 193388
* Simplify and refactor the uninitialized field warning.Richard Trieu2013-10-251-190/+90
| | | | | | | | | | | Change the uninitialized field warnings so that field initializers are checked inside the constructor. Previously, in class initializers were checked separately. Running one set of checks also simplifies the logic for preventing duplicate warnings. Added new checks to warn when an uninitialized field is used in base class initialization. Also fixed misspelling of uninitialized and moved all code for this warning together. llvm-svn: 193386
* Refactor: Extract specializing the generic lambda call operator during ↵Faisal Vali2013-10-241-141/+133
| | | | | | | | | | | | conversion to fptr deduction into its own function. No functionality change. All clang regression tests pass. Thanks! llvm-svn: 193383
* Remove unused CodeGenOptions from CodeGenTypes.Mark Lacey2013-10-242-3/+0
| | | | llvm-svn: 193376
* Add driver support for FP, SIMD and crypto defaults.Bernard Ogden2013-10-242-7/+18
| | | | | | | | | Although we wire up a bit for v8fp for macro setting purposes, we don't set a macro yet. Need to ask list about that. Change-Id: Ic9819593ce00882fbec72757ffccc6f0b18160a0 llvm-svn: 193367
* Clean up char/numeric comparisons in ARM getTargetDefinesBernard Ogden2013-10-241-6/+9
| | | | | Change-Id: Ie07228411b68252adcd5cf80b27ccd2eb3b031d9 llvm-svn: 193366
* Set appropriate FPU default for Linux on v8Bernard Ogden2013-10-241-0/+2
| | | | | Change-Id: If9b649c92e7196e3e791948545dc80901a0761eb llvm-svn: 193365
* Teach clang driver about Cortex-A53 and Cortex-A57.Bernard Ogden2013-10-244-3/+4
| | | | | | | | | | | Adds some Cortex-A53 strings where they were missing before. Cortex-A57 is entirely new to clang. Doesn't touch code only used by Darwin, in consequence of which one of the A53 lines has been removed. Change-Id: I5edb58f6eae93947334787e26a8772c736de6483 llvm-svn: 193364
* ObjectiveC IRGen. Replace _objc_empty_vtable pointer in Objective-C Fariborz Jahanian2013-10-241-8/+18
| | | | | | class metadata for certain deployment targets. // rdar://14802916 llvm-svn: 193359
* clang-format: Properly reset nested AnnotatedLine structure.Daniel Jasper2013-10-241-0/+1
| | | | | | | | | | | | | | | | | | | | This fixes llvm.org/PR17682. Without this patch, the following code leads to invalid reads/writes: DEBUG({ return aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; }); #if a #else #endif Because of the #if-#else structure, the code is formatted and annotated twice and becauce of the nested block, the annotated lines form a hierarchical structure. This structure was not properly reset between runs. llvm-svn: 193352
* Replaced duplicate code with calls to forwardInfo.Chris Wailes2013-10-241-27/+17
| | | | | | Also made move constructor handling safer. llvm-svn: 193347
* clang-format: Be more conservative about column layout formatting.Daniel Jasper2013-10-241-1/+9
| | | | | | | | | | | Specifically, if a braced list has at least one nested braced list, format it either all on one line or in one column (i.e. one item per line). This seems in general to be an improvement as the structure of nested braced lists can make a tightly packed outer braced list hard to read. llvm-svn: 193345
* ARM-Darwin: Use the *-*-darwin-eabi triple for v6m & v7m archsTim Northover2013-10-242-5/+15
| | | | | | | These arch arguments are used for embedded targets (obviously) which need a different calling convention to iOS. llvm-svn: 193328
OpenPOWER on IntegriCloud