aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-10-05Thread PerFileData through the ASTReader again, this time with the LLVM changes.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115625 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05Register the __builtin_va_list_type node when we parse it, rather thanDouglas Gregor
waiting until we think we need it: we didn't catch all of the places where we actually needed it, and we probably wouldn't ever. Fixes a C++ PCH crasher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115621 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05Remove a rogue typoDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115618 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05Register the __builtin_va_list_type node when we parse it, rather thanDouglas Gregor
waiting until we think we need it: we didn't catch all of the places where we actually needed it, and we probably wouldn't ever. Fixes a C++ PCH crasher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115617 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05* Simplify codeZhongxing Xu
* Fix dump() to make it consistent with the test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115609 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05Added support for base and member destructors in destructor.Marcin Swiderski
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115592 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05Add test case for r115588.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115590 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05In Sema's TryRefInitWithConversionFunction, suppress user conversions for ↵Argyrios Kyrtzidis
the overload candidates. Fixes an infinite recursion in overload resolution for rdar://8499524. Many thanks to Doug! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115588 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05If we're resolving all outstanding fixups, and there are multiple fixupsJohn McCall
for the same destination, then we must potentially rewrite the initial branch of every fixup. Without this patch, a short-circuit check meant to prevent a switch case from being redundantly added was preventing later fixups from being processed. Fixes PR8175 (again). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115586 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04In the fragile ObjC ABI, save the caught exception to the side if there areJohn McCall
both @catches and a @finally, because the second call to @objc_exception_try_enter will clobber the exception slot. Fixes rdar://problem/8440970. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115575 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04dyn_cast is more appropriate here.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115569 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04Add missing '}' :)Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115568 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04Emit debug info for an aggregate while processing MemberExpr if the ↵Devang Patel
aggregate's debug info was delayed untill now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115564 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04Fix filename in header comment.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115561 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04When a type comes from a previously-loaded PCH/AST file, don't try to write ↵Douglas Gregor
it into a chained PCH file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115527 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04www: Add a "Clang Related Projects" page, to collect links to external projectsDaniel Dunbar
using Clang in one way or another. Additions welcome! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115508 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04Added support for C++ initializers in CFG.Marcin Swiderski
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115493 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03Change to match 115473.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115474 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03Do x86_64.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115460 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03Test to verify that all of the MMX builtins are handled by the front-end.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115459 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02When providing a block literal as a code completion for aDouglas Gregor
function/method argument, include the parameter name and always include parentheses (even for zero-parameter blocks). Otherwise, the block literal placeholder '^' can look very weird. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115444 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Introduce a new libclang function, clang_getCursorDisplayName(), whichDouglas Gregor
produces a simple "display" name that captures the arguments/parameters for a function, function template, class template, or class template specialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115428 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Teach clang_getCursorType() about base specifiers and other referencesDouglas Gregor
to types. Also, teach clang_getTypeDeclaration() about template specializations, injected-class-names, and elaborated types. Fixes <rdar://problem/8506460>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115425 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02the mmx intrinsic for pshufw should map to the IR intrinsic, notChris Lattner
to a shufflevector. Otherwise it doesn't turn into a pshufw. This bug was introduced in the mmx rewrite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115423 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02When we insert a category (or class extension) into an interface, markDouglas Gregor
the interface as having changed since it was originally serialized. This ensures that we see class extensions/categories in chained PCH files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115421 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Don't add -fno-spell-checking in libclang if a spell-checking-related ↵Douglas Gregor
argument is already in the command-line arguments git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115420 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Provide proper source location and range information for C++ baseDouglas Gregor
specifier cursors in libclang. FIXME -=2, fixes the rest of <rdar://problem/8274883>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115419 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Implement chained PCH support for the macro definitions stored withinDouglas Gregor
the "detailed" preprocessing record. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115417 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Use ParseObjCSelectorPiece for parsing getter and setter names in @property ↵Anders Carlsson
declarations. Fixes PR8169. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115411 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02Rename a test in preparation for fixing PR8169.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115410 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02when expanding a builtin, if the argument is required to be a constant,Chris Lattner
force it to be a constant instead of emitting with EmitScalarExpr. In -ftrapv mode, they are not the same. This fixes rdar://8478728 + PR8221 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115388 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Don't add an imported function into its lexical context until *after*Douglas Gregor
we've set all of its parameters. Fixes <rdar://problem/8499598>; thanks to Sean for the diagnosis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115387 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01tidyChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115383 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01kill off CheckX86BuiltinFunctionCallChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115382 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01move imperative code to declarative definitions.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115381 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Mark explict methods as explict in debug info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115379 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01diagnose errors when a builtin that require constant arguments don't have them.Chris Lattner
For example, on: #include <emmintrin.h> int foo(int N) { __m128i white2; white2 = _mm_slli_si128(white2, N); return 0; } we used to get: fatal error: error in backend: Cannot yet select: intrinsic %llvm.x86.sse2.psll.dq now we get: /Users/sabre/t.c:4:11: error: argument to '__builtin_ia32_pslldqi128' must be a constant integer white2 = _mm_slli_si128(white2, N); ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /Users/sabre/t.c:1: /Volumes/Projects/cvs/llvm/Debug+Asserts/lib/clang/2.9/include/emmintrin.h:781:13: note: instantiated from: ((__m128i)__builtin_ia32_pslldqi128((__m128i)(VEC), (IMM)*8)) ^ ~~~~~~~ 1 error generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115374 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01enhance ASTContext::GetBuiltinType to return a bitmask indicating which ↵Chris Lattner
arguments are required to be ICE's. No clients of this new functionality yet! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115366 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01random cleanups, no functionality change.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115361 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Doug's feedbackGabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115356 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Factor out enumerator APSInt adjustment intoGabor Greif
a helper function (AdjustAPSInt) and use that for adjusting the high bounds of case ranges before APSInt comparisons. Fixes http://llvm.org/bugs/show_bug.cgi?id=8135 Some minor refacorings while I am here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115355 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Restore test. Is for //rdar://8493239Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115349 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Better diagnostic for superfluous scope specifier inside a class definition ↵Francois Pichet
for member functions. + Fixit. Example: class A { void A::foo(); //warning: extra qualification on member 'foo' }; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115347 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Teach clang_getCursorReferenced() about Objective-C property referenceDouglas Gregor
and protocol expressions. Fixes <rdar://problem/7833565>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115346 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01UnreachableCodeChecker does not need to inherit from CheckerVisitor, only ↵Tom Care
Checker. It does not use any AST Stmt hooks, only VisitEndAnalysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115345 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Revert r115336 ("Thread PerFileData through everything."), becauseDouglas Gregor
we're missing the corresponding changes in the LLVM repository. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115340 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Extend libclang with an API that determines, given a C++ virtualDouglas Gregor
member function or an Objective-C method, which other member functions/methods it overrides. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115338 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Thread PerFileData through everything. This allows us to remap stuff later.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115336 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01Record module loaders and module source order.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115334 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01fix a bogus "I" that I added to the per-function attribute list.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115333 91177308-0d34-0410-b5e6-96231b3b80d8