aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-07-18More replacing of target-dependent intrinsics with target-indepdent Joel Jones
intrinsics. The second instruction(s) to be handled are the vector versions of count set bits (ctpop). The changes here are to clang so that it generates a target independent vector ctpop when it sees an ARM dependent vector bits set count. The changes in llvm are to match the target independent vector ctpop and in VMCore/AutoUpgrade.cpp to update any existing bc files containing ARM dependent vector pop counts with target-independent ctpops. There are also changes to an existing test case in llvm for ARM vector count instructions and to a test for the bitcode upgrade. <rdar://problem/11892519> There is deliberately no test for the change to clang, as so far as I know, no consensus has been reached regarding how to test neon instructions in clang; q.v. <rdar://problem/8762292> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160409 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Remove unnecessary spacing around Objective-C object literal codeDouglas Gregor
completions. Fixes <rdar://problem/11889572>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160407 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Adding a fixit for includes that cannot be found with angle brackets, but ↵Aaron Ballman
can be found with quoted strings instead. Implements PR13201. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160406 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Improve comment for TypeDecl::getTypeForDecl(), from Sean Silva!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160405 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Eliminating the GCC_CAST hack, take two.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160404 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Comment AST nodes: rename Num*Bitfields to Num*Bits to be consistent with ↵Dmitri Gribenko
Stmt AST nodes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160402 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Reinstate the GCC_CAST hack; I apparently did not appease GCC with r160397.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160401 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Implement an optimization for finding the comment that occurs just after aDmitri Gribenko
given declaration. It is based on the observation that during parsing the comment that should be attached to the decl is usually among the last two documentation comments parsed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160400 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Robustify test in the face of no assertions.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160399 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Try to eliminate GCC_CAST hack in a manner that should work for bothDouglas Gregor
GCC and MSVC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160397 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17CommentBriefParser: use StringSwitch::Cases to group synonyms. Thanks Jordan!Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160396 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Teach the ASTImporter how to handle anonymous structs/unionsDouglas Gregor
better. Fixes <rdar://problem/11466212>; the test (and back-ported version of this code) were committed to LLDB in r160186. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160395 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Don't treat overflow in floating-point conversions as a hard error in ↵Eli Friedman
constant evaluation. <rdar://problem/11874571>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160394 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Handle the case where the base type is not dependent, but the derived one is.Rafael Espindola
Fixes pr13353.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160393 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Fixed whitespace issue introduced in r160373.Joao Matos
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160388 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Minor cleanups and additions to the users manual. UsersManual.html now ↵Dmitri Gribenko
validates as HTML 4.01 Strict. Patch by Jonathan Sauer! (With minor edits from me.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160386 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Fix regexp for this test to properly check.Eric Christopher
Patch by Eli Bendersky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160385 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17CommentBriefParser: make \short should equivalent to \brief, per Doxygen manual.Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160383 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Issue warning when assigning out-of-range integer values to enums.Fariborz Jahanian
Due to performance cost, this is an opt-in option placed under -Wassign-enum. // rdar://11824807 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160382 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17-Wobjc-literal-compare: don't warn when comparing against nil.Jordan Rose
Checks against nil often appear as guards in macros, and comparing Objective-C literals to nil has well-defined behavior (if tautological). On OS X, 'nil' has not been typed as 'id' since 10.6 (possibly earlier), so the warning was already not firing, but other runtimes continue to use ((id)0) or some variant. This change accepts comparisons to any null pointer; to keep it simple, it looks through all casts (not just casts to 'id'). PR13276 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160379 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Add -Wobjc-string-compare under -Wobjc-literal-compare.Jordan Rose
Suggested by Ted, since string literal comparison is at least slightly more sensible than comparison of runtime literals. (Ambiguous language on developer.apple.com implies that strings are guaranteed to be uniqued within a translation unit and possibly across a linked binary.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160378 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Now that -Wobjc-literal-compare is a warning, put the fixit on a note.Jordan Rose
Recovering as if the user had actually called -isEqual: is a bit too far from the semantics of the program as written, /even though/ it's probably what they intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160377 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17[analyzer] Remove stale result type lvalue code.Jordan Rose
This code has been moved around multiple times, but seems to have been obsolete ever since we started handled references like pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160375 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17[Windows] Abstract pure virtual method calls in the ABI. Fix the Windows ABI ↵Joao Matos
to forward to the correct function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160373 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Add a custom initialize hook for clang tools + minor fixes in ↵Alexander Kornienko
CustomCompilationDatabase.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160369 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Merge visibility from previous decls before looking at visibility pragma. ThisRafael Espindola
is a bit fuzzy, but matches gcc behavior and existing code bases seem to depend on it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160364 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17test/Driver/crash-report.c: Remove "REQUIRES: shell". env(1) can be used ↵NAKAMURA Takumi
also with gnuwin32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160362 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Fix unit test dependency in Makefile and remove unneccessary dependencyDaniel Jasper
again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160358 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Add missing dependency for unit test.Daniel Jasper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160356 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Finishing the move of RefactoringCallbacks and fixing the correspondingDaniel Jasper
buildbot failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160355 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Revert commit r160308. We decide to move builtins selection to the backend.Simon Atanasyan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160353 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Move RefactoringCallbacks to Tooling to avoid dependency fromDaniel Jasper
ASTMatchers (lower level abstraction) to Tooling (higher level abstraction). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160351 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Fixup for r160345 - uintptr_t is not always unsignedAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160349 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Make the isDerivedFrom matcher more generic.Daniel Jasper
It now accepts an arbitrary inner matcher but is fully backwards compatible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160348 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Fixed few warnings.Galina Kistanova
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160345 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17[Win32] Rework crash-report since r145389.NAKAMURA Takumi
- lib/Driver/Driver.cpp, tools/driver/driver.cpp: Exit status should not be propagated, although clang driver should catch exceptions. - test/Driver/crash-report.c: Add REQUIRES:shell for now. FIXME: setenv should work also on Lit.InternalShellRunner. - test/Driver/crash-report.c: Remove XFAIL. Thanks to Chad, To point out the issue. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160343 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17test/Driver/crash-report.c: Small tweaks. 1) Use %t instead %T for TMP. 2) ↵NAKAMURA Takumi
Set all of $TMPDIR, $TEMP and $TMP, or a certain host might set $TEMP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160342 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Record visibility pragmas when we see a tag declaration. We might use itRafael Espindola
to build a type before seeing the definition. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160339 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Uninitialized variables: two little changes:Richard Smith
* Treat compound assignment as a use, at Jordy's request. * Always add compound assignments into the CFG, so we can correctly diagnose the use in 'return x += 1;' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160334 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17clang/test/Tooling/clang-ast-dump.cpp: Mark it as REQUIRES: asserts, for now.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160332 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17Move clang_Cursor_getBriefCommentText implementation under `extern "C"'.Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160331 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-17-Wuninitialized: Split the classification of DeclRefExprs as initialization orRichard Smith
use out of TransferFunctions, and compute it in advance rather than on-the-fly. This allows us to handle compound assignments with DeclRefExprs on the RHS correctly, and also makes it trivial to treat const& function parameters as not initializing the argument. The patch also makes both of those changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160330 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16[analyzer] Handle new-expressions with initializers for scalars.Jordan Rose
<rdar://problem/11818967> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160328 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16Weaken Unicode fixit test to work even if the character is printed escaped.Jordan Rose
This should fix the failure on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160324 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16Fix BlockCommandComment::classof() to return true for objects of derived ↵Dmitri Gribenko
classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160323 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16This test appears to fail on win32.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160322 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16Add hack (provided by Jonathan Sauer) to fall back to assuming Xcode is ↵Ted Kremenek
installed in /Developer when using Python < 2.7.0. This is the case on Snow Leopard, where the tools are always installed in /Developer. This isn't a proper fix for really figuring out where Xcode is installed, but should work to fix an obvious problem on Snow Leopard. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160321 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16This test appears to be passing on win32.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160320 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16Don't crash when emitting fixits following Unicode characters.Jordan Rose
This code is very sensitive to the difference between "columns" as printed and "bytes" (SourceManager columns). All variables are now named explicitly and our assumptions are (hopefully) documented as both comment and assertion. Whether parseable fixits should use byte offsets or Unicode character counts is pending discussion on the mailing list; currently the implementation uses bytes (and has no problems on lines containing multibyte characters). This has been added to the user manual. <rdar://problem/11877454> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160319 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16Simplify float comparison checks by using early return.David Blaikie
Found while investigating PR13330 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160318 91177308-0d34-0410-b5e6-96231b3b80d8