aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-03-14Slightly improve formatting of longer pipe statements.Daniel Jasper
The stronger binding of a string ending in :/= does not really make sense if it is the only character. Before: llvm::outs() << aaaaaaaaaaaaaaaaaaaaaaaa << "=" << bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb; After: llvm::outs() << aaaaaaaaaaaaaaaaaaaaaaaa << "=" << bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177075 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Basic support for formatting asm() statments.Daniel Jasper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177073 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Documentation: improve formattingDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177066 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14[ASan] Update docs for -fsanitize=init-order optionAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177062 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14[ASan] Make -fsanitize=address imply -fsanitize=init-order (if the latter is ↵Alexey Samsonov
not explicitly disabled). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177061 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Fix an unused variable warning from Clang by sinking a dyn_cast into anChandler Carruth
isa and a cast inside the assert. The efficiency concern isn't really important here. The code should likely be cleaned up a bit more, especially getting a message into the assert. Please review Rafael. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177053 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Fix dereference formatting in for-loops.Daniel Jasper
Before: for (char **a = b; * a; ++a) {} After: for (char **a = b; *a; ++a) {} git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177037 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Add support for the 'endian' attribute for OpenCL.Joey Gouly
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177035 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Improve formatting of trailing annotations.Daniel Jasper
Before: bool aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa __attribute__(( unused)); After: bool aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa __attribute__((unused)); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177034 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Update GCOVProfiling pass creation for API change in r177002. No ↵Nick Lewycky
functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177004 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Flag that friend function definitions are "late parsed" so thatJohn McCall
template instantiation will still consider them to be definitions if we instantiate the containing class before we get around to parsing the friend. This seems like a legitimate use of "late template parsed" to me, but I'd appreciate it if someone responsible for the MS feature would look over this. This file already appears to access AST nodes directly, which is arguably not kosher in the parser, but the performance of this path matters enough that perpetuating the sin is justifiable. Probably we ought to reconsider this policy for very simple manipulations like this. The reason this entire thing is necessary is that function template instantiation plays some very gross games in order to not associate an instantiated function template with the class it came from unless it's a definition, and the reason *that's* necessary is that the AST currently cannot represent the instantiation history of individual function template declarations, but instead tracks it in common for the entire function template. That probably prevents us from correctly reporting ill-formed calls to ambiguously instantiated friend function templates. rdar://12350696 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177003 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14[modules] Don't write the UnusedFileScopedDecls vector to the module file.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177001 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14[modules] Check for delegating constructor cycles when building a module and ↵Argyrios Kyrtzidis
don't write them out to the module file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177000 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14Avoid computing the linkage too early. Don't invalidate it.Rafael Espindola
Before this patch we would compute the linkage lazily and cache it. When the AST was modified in ways that could change the value, we would invalidate the cache. That was fairly brittle, since any code could ask for the a linkage before the correct value was available. We should change the API to one where the linkage is computed explicitly and trying to get it when it is not available asserts. This patch is a first step in that direction. We still compute the linkage lazily, but instead of invalidating a cache, we assert that the AST modifications didn't change the result. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176999 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Really fix the MIPS test.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176991 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Attempt to fix test.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176987 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Have these attriubtes set to 'true' or 'false'.Bill Wendling
The back-end cannot differentiate between functions that are from a .ll file and those generated from the front-end. We cannot then take the non-precense of these attributes as a "false" value. Have the front-end explicitly set the value to 'true' or 'false' depending upon what is actually set. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176985 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13[Modules] Don't eagerly load and associate all the module header files.Argyrios Kyrtzidis
In a module-enabled Cocoa PCH file, we spend a lot of time stat'ing the headers in order to associate the FileEntries with their modules and support implicit module import. Use a more lazy scheme by enhancing HeaderInfoTable to store extra info about the module that a header belongs to, and associate it with its module only when there is a request for loading the header info for a particular file. Part of rdar://13391765 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176976 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13[Modules] Resolve top-headers of modules lazily.Argyrios Kyrtzidis
This allows resolving top-header filenames of modules to FileEntries when we need them, not eagerly. Note that that this breaks ABI for libclang functions clang_Module_getTopLevelHeader / clang_Module_getNumTopLevelHeaders but this is fine because they are experimental and not widely used yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176975 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Cause the mips16/nomips16 attribute to be passed to LLVM from ClangReed Kotler
in the LLVM assembly language output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176971 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13[analyzer] BugReporter - more precise tracking of C++ referencesAnna Zaks
When BugReporter tracks C++ references involved in a null pointer violation, we want to differentiate between a null reference and a reference to a null pointer. In the first case, we want to track the region for the reference location; in the second, we want to track the null pointer. In addition, the core creates CXXTempObjectRegion to represent the location of the C++ reference, so teach FindLastStoreBRVisitor about it. This helps null pointer suppression to kick in. (Patch by Anna and Jordan.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176969 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Remove stray space.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176966 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13[analyzer] Handle Objc Fast enumeration for "loop is executed 0 times".Ted Kremenek
Fixes <rdar://problem/12322528> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176965 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Fix incorrect cast identification.Daniel Jasper
Before: int a = sizeof(int *)+ b;" After: int a = sizeof(int *) + b; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176957 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13[analyzer] fixed the logic changed by r176949Anton Yartsev
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176956 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13relax check to allow for attributes (fix buildbot for elf-ppc64)Adrian Prantl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176954 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Fix comment indentation before labels.Daniel Jasper
Before: switch (x) { // if 1, do f() case 1: f(); } After: switch (x) { // if 1, do f() case 1: f(); } git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176953 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Fix formatting issue with builder-type calls.Daniel Jasper
Before: ->aaaaaa()->aaaaaaaaaaa(aaaaaaaa()->aaaaaa()->aaaaa() - aaaaaaaaa()->aaaaaa() ->aaaaa()); After: a->aaaaaa()->aaaaaaaaaaa(aaaaaaaa()->aaaaaa()->aaaaa() - aaaaaaaaa()->aaaaaa()->aaaaa()); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176952 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Added AnnotatedToken::isOneOf + a few other refactoringsAlexander Kornienko
Summary: <subj> Reviewers: djasper Reviewed By: djasper CC: cfe-commits, klimek Differential Revision: http://llvm-reviews.chandlerc.com/D536 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176951 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Refactoring:Anton Yartsev
+ Individual Report* method for each bug type + Comment improved: missing non-trivial alloca() case annotated + 'range' parameter of ReportBadFree() capitalized + 'SymbolRef Sym = State->getSVal(A, C.getLocationContext()).getAsSymbol();' shorten to 'SymbolRef Sym = C.getSVal(A).getAsSymbol();' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176949 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Documentation: formatting fixesDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176948 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Reverting r176944 until Author fixes test failure.Edwin Vane
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176945 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13ClangTool output cleanupEdwin Vane
Information messages sent to stdout by ClangTool now only happen when the -debug flag is set. Error messages that used to go to stdout now go to stderr. Author: Ariel J Bernal <ariel.j.bernal@intel.com> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176944 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Add llvm-symbolizer as test dependency.Evgeniy Stepanov
It is required when building tests with ASan or MSan. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176942 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Fix formatting of new arrays of pointers.Daniel Jasper
Before: A = new SomeType * [Length]; A = new SomeType *[Length](); After: A = new SomeType *[Length]; A = new SomeType *[Length](); Small formatting cleanups with clang-format. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176936 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Set symbolizer path in the test environment.Evgeniy Stepanov
This is needed to get symbolized stack traces when running Clang tests under (A|M)San. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176934 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Remove trailing comma in enum list.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176926 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13Tighten up the rules for precise lifetime and documentJohn McCall
the requirements on the ARC optimizer. rdar://13407451 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176924 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Test for LLVM r176911Matt Beaumont-Gay
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176912 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Objective-C: In my last path, also checkFariborz Jahanian
for existence of user setter before issuing the warning about non-synthesizable property. // rdar://13388503 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176906 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Make modules.m test portable, now that autolinking is dependent on whether ↵Ted Kremenek
or not the target uses the integrated assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176902 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Eliminate backend dependency in CFE testcase.Adrian Prantl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176901 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12[driver] Only enable -fmodules-autolink if we are using the integrated ↵Ted Kremenek
assembler. Fixes <rdar://problem/13289240> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176897 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Whitespace cleanup.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176896 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Force column info to be generated for call expressions so we canAdrian Prantl
differentiate multiple inlined call sites on the same line in the debug info. Fixes rdar://problem/13036237 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176895 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Driver: -ccc-install-dir should affect cc1 -resource-dirJim Grosbach
-ccc-install-dir is supposed to cause the compiler to behave as-if it were installed in the indicated location. It almost does, but misses anything that's relying on the resource directory (libc++ header search, in particular). The resource dir is resolved too early, before command line args are handled. The fix is simply to move handling of the resource dir until after we know if a -ccc-install-dir is present. rdar://13402696 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176894 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Revert "Revert r166370 and r166540 now that Xcode 4.6 has been available for ↵Bob Wilson
a while." This reverts commit 176887. Nico asked for more time to move to Xcode 4.6. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176892 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Make C++11 status page more consistent: we mark entries as "done" if weRichard Smith
implement correct functionality, even if it's not optimal. On this basis, mark "data dependency ordering" as done. Add footnotes for cases where our implementation is known to be suboptimal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176891 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Add an interesting testcase we already handle correctly.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176890 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Objective-C: Issue warning in couple of obscure casesFariborz Jahanian
when property autosynthesis does not synthesize a property. When property is declared 'readonly' in a super class and is redeclared 'readwrite' in a subclass. When a property autosynthesis causes it to share 'ivar' with another property. // rdar://13388503 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176889 91177308-0d34-0410-b5e6-96231b3b80d8