aboutsummaryrefslogtreecommitdiff
path: root/lib/Frontend
AgeCommit message (Collapse)Author
2009-12-23More rewriting of __block variables.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92027 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23switch -Werror/-Wfatal-errors error conditions to use diagnostics insteadChris Lattner
of printf, patch by Christian Adaker! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92019 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23Remove RewriteBlocks. It has been superseded by RewriteObjCKovarththanan Rajaratnam
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92014 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23Add support for handling initializers in RewriteObjC::RewriteByRefVar().Steve Naroff
As the FIXME indicates, RewriteByRefVar() won't work for multiple declarators (in general). I've discussed this with Fariborz and he is aware of the limitation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92007 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23Register call inliner as the last checker.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91992 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23Migrate the call inliner to the Checker interface.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91991 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23Patch to do more rewrite of __block variables.Fariborz Jahanian
Still WIP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91977 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-22implement -W[no-]fatal-errors, patch by Christian Adåker!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91938 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-22Serialize the NoReturn bit on FunctionTypes for precompiled headersDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91911 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-22Work around PR5514.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91891 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-22Template code for rewrite of __block variables - wip.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91865 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-21Providing support for rewriting of block copy/dispose ofFariborz Jahanian
imported block variables. WIP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91856 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Fix a few MSVC warnings.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91714 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Debian has x86_64-linux-gnu, not x86_64-pc-linux-gnu, so add it.Torok Edwin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91698 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Move the 4.4.2 c++ include search to the top, otherwise it was picking the 4.1.3Torok Edwin
dirs on my system. Which is wrong, since it was missing the x86_64-pc-linux-gnu suffix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91694 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18clang -cc1: Rename -mcpu to -target-cpu to match other target options and ↵Daniel Dunbar
not alias driver/backend option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91671 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Add -dwarf-debug-flags, which provides a way to embed the cc1 level options usedDaniel Dunbar
to compile a translation unit into the debug info for that file. - Used by parts of Darwin build process to check compiler flags, etc. - <rdar://problem/7256886> clang does not emit AT_APPLE_flags git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91661 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Implemented rewriting of invocation of a block ivar.Fariborz Jahanian
(radar 7482224). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91652 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16Fix -fdollars-in-identifiers Clang translation.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91562 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16When value-initializing a class with no user-defined constructors butDouglas Gregor
with a non-trivial default constructor, zero-initialize the storage and then call the default constructor. Fixes PR5800. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91548 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16implement PR5654: add -fassume-sane-operator-new, which is enabled by ↵Nuno Lopes
default, and adds the malloc attribute to the global function new() and to the overloaded new operators. feel free to chage the name to this lengthy argument git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91543 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16Expose C++ methods to GRExprEngine.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91506 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16Switch the C++ new expression over to InitializationSequence, ratherDouglas Gregor
than using its own partial implementation of initialization. Switched CheckInitializerTypes over to InitializedEntity/InitializationKind, to help move us closer to InitializationSequence. Added InitializedEntity::getName() to retrieve the name of the entity, for diagnostics that care about such things. Implemented support for default initialization in InitializationSequence. Clean up the determination of the "source expressions" for an initialization sequence in InitializationSequence::Perform. Taught CXXConstructExpr to store more location information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91492 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15Implement conditional block invocation rewriteFariborz Jahanian
and some clean up and a block rewriter test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91435 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15Add comments.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91430 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15Remove displayProgress parameter.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91429 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15Add -resource-dir to clang -cc1, this allows the base directory for compilerDaniel Dunbar
resources (e.g., /usr/lib/clang/1.1) to be passed on the command line instead of computed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91370 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-13Lift builtin-include-path logic out of ASTUnit::LoadFromCommandLine and fix ↵Daniel Dunbar
CIndex to pass in the right directory (previously it was using the path to the main executable, which generally is wrong). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91238 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-13CompilerInvocation: Move builtin-include-path logic out of ↵Daniel Dunbar
CompilerInvocation::CreateFromArgs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91237 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12Backend: Switch to using TargetOptions or TargetMachine to set some options ↵Daniel Dunbar
instead of llvm::cl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91229 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12Un-namespace-qualify llvm_unreachable. It's a macro, so the qualification gaveJeffrey Yasskin
no extra safety anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91207 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12Fix for PR4642: move work in HTMLPrinter out of the destructor.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91205 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12Implement runtime checks for undefined behavior. WIP.Mike Stump
This implements a new flag -fcatch-undefined-behavior. The flag turns on additional runtime checks for: T a[I]; a[i] abort when i < 0 or i >= I. Future stuff includes shifts by >= bitwidth amounts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91198 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12We should only scan for nested blocks if we are analyzing the body of a ↵Ted Kremenek
function/method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91196 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-11Update docs/comments/utils/examples to refer to clang -cc1 instead of clang-cc.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91176 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-10spread 'const' love to some variables. this considerably reduces the amount ↵Nuno Lopes
of dirty data around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91002 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-09First pass at implementing C++ enum semantics: calculate (and store) anJohn McCall
"integer promotion" type associated with an enum decl, and use this type to determine which type to promote to. This type obeys C++ [conv.prom]p2 and is therefore generally signed unless the range of the enumerators forces it to be unsigned. Kills off a lot of false positives from -Wsign-compare in C++, addressing rdar://7455616 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90965 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-09Fix crash in DisplayFunction(). ObjCInterfaceDecls can also get passed to ↵Ted Kremenek
this function, but we don't want to display them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90944 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-09Neil points out that this could be simplified, do it.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90927 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Increase inlining threshold at -O3, to match llvm-gcc.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90897 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Twinify InitHeaderSearch::AddPath and use it in C++ include path generation.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90853 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Use StringRefs in InitHeaderSearch::AddDelimitedPaths.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90852 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08DeclRefExpr stores a ValueDecl internally.John McCall
Template instantiation can re-use DeclRefExprs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90848 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Small compatibility fix for -print-decl-contexts.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90838 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Remove several .c_str() to be forward-compatible with StringRef.Jeffrey Yasskin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90822 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-07Add clang-cc option '-analyzer-opt-analyze-nested-blocks' to treat block ↵Ted Kremenek
literals as an entry point for analyzer checks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90810 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-07add fedora 12 include pathNuno Lopes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90772 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-07DeclaratorInfo -> TypeSourceInfo. Makes an effort to rename associated ↵John McCall
variables, but the results are imperfect. For posterity, I did: cat <<EOF > $cmdfile s/DeclaratorInfo/TypeSourceInfo/g s/DInfo/TInfo/g s/TypeTypeSourceInfo/TypeSourceInfo/g s/SourceTypeSourceInfo/TypeSourceInfo/g EOF find lib -name '*.cpp' -not -path 'lib/Parse/*' -exec sed -i '' -f $cmdfile '{}' \; find lib -name '*.h' -exec sed -i '' -f $cmdfile '{}' \; find include -name '*.h' -not -path 'include/clang/Parse/*' -not -path 'include/clang/Basic/*' -exec sed -i '' -f $cmdfile '{}' \; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90743 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-07fix -dM with variadic macros, PR5699Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90735 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-07some code cleanup.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90732 91177308-0d34-0410-b5e6-96231b3b80d8