aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-11-01Disable some timing codeDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117910 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-01Explicitly handle CXXBindTemporaryExpr, CXXFunctionalCastExpr, Zhongxing Xu
and ImplicitCastExpr to propagate asLValue AddStmtChoice property. But do not propagate AlwaysAdd property. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117909 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-01Now initializer of C++ record type is visited as block-level expr. Zhongxing Xu
Let the destination of AggExprVisitor be an explicit MemRegion. Reenable the test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117908 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-01Make all CXXConstructExpr's block-level expressions. This is required by Zhongxing Xu
method inlining. Temporarily fail a test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117907 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-01Only apply -fvisibility-inlines-hidden to definitions. ApparentlyJohn McCall
isInlined() just gives meaningless results for non-definitions. Fixes rdar://problem/8614470 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117887 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-01Get rid of more calls to getBaseClassOffsetInBits.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117883 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Port over a couple of getVBaseClassOffsetInBits call sites to use ↵Anders Carlsson
getVBaseClassOffset instead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117882 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Rename getBaseClassOffset to getBaseClassOffsetInBits and introduce a ↵Anders Carlsson
getBaseClassOffset which returns the offset in CharUnits. Do the same thing for getVBaseClassOffset. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117881 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Start converting over the RecordLayoutBuilder next.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117878 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31EmptyObjectMap now uses CharUnits wherever possible.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117877 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31More CharUnits conversion.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117875 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31More CharUnits conversion.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117874 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Use CharUnits in the EmptyClassOffsets map.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117873 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Add a DenseMapInfo specializaiton for CharUnits.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117872 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Correct typos and whitespace, spotted by Nico Weber!Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117871 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Fix typo spotted by Nico Weber.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117870 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Baby steps towards using only CharUnits for base class offsets in ↵Anders Carlsson
ASTRecordLayout. Start by storing the offsets in CharUnits in the ASTRecordLayout object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117869 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Teach the constant expr evaluator about derived-to-base casts when no ↵Anders Carlsson
virtual bases are involved. Fixes PR5974. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117868 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Make Clang static analyzer skip function template definitions. This fixes ↵Zhanyong Wan
Clang PR 8426, 8427, & 8433. Reviewed by Ted Kremenek and Doug Gregor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117853 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31Don't try to evaluate the LHS or RHS of a member pointer binary operation. ↵Anders Carlsson
Fixes PR8507. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117850 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Emit an error when trying to form a pointer-to-member to a bitfield.Argyrios Kyrtzidis
As a bonus, avoids a crash on the IRGen side due to accepting invalid code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117842 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30renamed: test/SemaCXX/ptrtomember-badcall.cpp -> test/SemaCXX/ptrtomember.cppArgyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117841 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Revert r117678, "Qualified 'id' should implement all of static class ↵Daniel Dunbar
type's", it breaks things. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117829 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Turns out that we may end up calling dladdr on GetExecutablePath, give it ↵Benjamin Kramer
external linkage to make sure the lookup works on all platforms. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117813 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30This function doesn't need external linkage either.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117786 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Better solution: calculate the visibility of functions and variablesJohn McCall
independently of whether they're definitions, then teach IR generation to ignore non-explicit visibility when emitting declarations. Use this to make sure that RTTI, vtables, and VTTs get the right visibility. More of rdar://problem/8613093 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117781 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30GCC faithfully calculates visibility for variables independently ofJohn McCall
whether it's a declaration or not, then ignores that information for declarations unless it was explicitly given. It's not totally clear how that should be mapped into a sane system, but make an effort. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117780 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Use the expanded form of S_ISREG. Hopefully this unbreaks the MSVC build.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117779 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Preserve the template type parameter name when instantiating a templace.Nick Lewycky
Fixes PR8489. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117776 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Rename alignof -> alignOf to avoid irritating C++'0x compilers,Chris Lattner
PR8423 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117775 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Flush statements after writing each DECL_CXX_BASE_SPECIFIERS nodeDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117770 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Don't remove the init expression from the initializer list if it had a ↵Argyrios Kyrtzidis
semantic error. We already flag the error with InitListChecker's hadError and we mess up the AST unnecessarily. Fixes rdar://8605381. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117760 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Add test/SemaCXX/crash-PR7625.cpp into test/SemaCXX/crashes.cppArgyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117759 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30test/SemaCXX/crash-8124080.cpp -> test/SemaCXX/crashes.cppArgyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117758 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Add test case for <rdar://problem/8610363> (a bogus report of using an ↵Ted Kremenek
uninitialized field). This was already fixed, but this serves for detecting regressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117754 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30Make the deserialization of macro definitions lazy, so that we canDouglas Gregor
load identifiers without loading their corresponding macro definitions. This is likely to improve PCH performance slightly, and reduces deserialization stack depth considerably when using preprocessor metaprogramming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117750 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30When list-initializing a vector, try to copy-initialize from vectors insteadJohn McCall
of descending into the subelements. rdar://problem/8345836 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117749 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Don't test isRegularFile before calling eraseFromDisk, sinceDan Gohman
eraseFromDisk does the same check. This avoids a stat call in the common case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117744 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Handle Type.h a better way.Dale Johannesen
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117743 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Improve diagnostics reporting of un-implementedFariborz Jahanian
methods in protocols when protocols are in system headers and thus ignored. //rdar: //8227199 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117739 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Generate bitcasts going in and out of MMX parametersDale Johannesen
in asm's. PR 8501, 8602988. I don't like including Type.h where it is; the idea was to get references to X86_MMXTy out of the common code. Maybe there's a better way? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117736 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Use CodeGenFunction's getContext(), for consistency.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117734 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29These functions don't need external linkage.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117733 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Make the deserialization of C++ base class specifiers lazy, improvingDouglas Gregor
the performance of C++ PCH and reducing stack depth in the reader. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117732 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Restore r117644, this time properly ignoring -fvisibility and type visibilityJohn McCall
for namespace-scope variable declarations. Apply visibility in IR gen to variables that are merely declared and never defined. We were previously emitting these with default visibility unless they were declared with private_extern. Ignore global visibility settings when computing visibility for a declaration's context, and key several conditions on whether a visibility attribute exists anywhere in the hierarchy as opposed to whether it exists at the current level. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117729 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Use objdir != srcdir in the getting started doc.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117723 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Update tests to not search of as.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117711 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Switch to using the integrated assembler by default on x86 and x86-64 ELFRafael Espindola
systems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117697 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29If Consumer object failed to create due to someFariborz Jahanian
user error, fail gracefully. Fixes pr8508. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117692 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Qualified 'id' should implement all of static class type'sFariborz Jahanian
protocols, including those added to class, super class and categories; otherewise issue a warning. This fixes pr8453. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117678 91177308-0d34-0410-b5e6-96231b3b80d8