aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-12-29implement codegen support for most unary operators when Chris Lattner
initializing a global. This handles important cases like: float foo3 = -0.01f; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45427 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29remove attributions from .def files.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45413 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29remove attribution from makefiles.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45412 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29Don't attribute in file headers anymore. See llvmdev for theChris Lattner
discussion of this change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45410 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29Fix OCUVector case in struct layout code.Christopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45396 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29Enable CodeGen for member expressions based on call expressions returning ↵Christopher Lamb
aggregate types. This enables expressions like 'foo().member.submember'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45395 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29Make MemberExpr code safe w.r.t. address spaces.Christopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45394 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28Fix an error in the base/idx accessors for ArraySubscriptExpr's that crops ↵Christopher Lamb
up with vector element access. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45390 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28various cleanups. Use IgnoreParenCasts instead of inlined versions.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45382 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28unindent cases in a switch stmt, no functionality change.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45381 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28Change Sema::ActOnCallExpr to construct the CallExpr early and put it intoChris Lattner
and OwningPtr instead of constructing only after all of sema is done. This has a couple of effects: 1. it fixes memory leaks from all the error cases in sema 2. it simplifies the code significantly. The cost of this is that the error case now new's and delete's an expr where it did not before, but we don't care about the perf of the error case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45380 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28move file to proper place in project.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45379 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28Add accessors + iterator interface.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45378 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28From Lucas Newman:Chris Lattner
"Here's a tiny patch that lets the clang Xcode project build in any location, so llvm doesn't have to be checked out in your home folder." git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45376 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-27add a file I forgot to svn add.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45374 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-27alphabetize in project.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45373 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-27use -emit-llvm-bcChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45372 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-27no need to verify this, no errors/warnings are expected.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45371 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-27Fix a crash on a top-level objc string, patch by Nico WeberChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45370 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-27 - Use Tok.isObjCAtKeyword instead of ↵Chris Lattner
Tok.getIdentifierInfo()->getObjCKeywordID(). The later fails if the token is not an identifier. - Replace tabs with spaces. - Various other cleanups. Patch by Nico Weber! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45368 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-26No need to do work that the folding builder does for us.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45361 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-26Remove broken assert from CodeGen. Better check is done in Sema.Seo Sanghyeon
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45358 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Make output files binary mode for -emit-llvm-bcChristopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45348 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Almost the best possible handling of stdin/stdout for llvm-emit-bc!Christopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45346 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Better handing of stdin/stdout for -emit-llvm-bcChristopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45345 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Allow bitcode output to be redirected to stdout.Christopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45340 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Implement -emit-llvm-bc optionSeo Sanghyeon
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45339 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-23String literal in aggregate expressionSeo Sanghyeon
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45330 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-23remove use of alloca.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45329 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-23Unbreak mingw buildAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45328 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-22Added (incomplete) implementation of SimulEngine, a worklist-based dataflowTed Kremenek
solver for path-sensitive, intra-procedural analysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45306 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-22Another test case, testing a variety of objective-c type comparisons.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45302 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Another test for objective-c's type comparison.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45301 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Converted Loc back to being of type ProgramEdge. Ultimately I believe we wantTed Kremenek
the ability to refer to the vertex set for all the vertices associated with an edge. This will allow some nice queries over the graph, and (hopefully) will reduce the memory footprint of SimulVertex. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45299 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Added preliminary implementation of SimulGraph, which represents theTed Kremenek
intra-procedural supergraph of a path-sensitive dataflow analysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45298 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Changed "Location" from "ProgramEdge" to "ProgramEdge&" (slightly more sveltTed Kremenek
memory representation). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45297 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21SimulVertex now subclasses FoldingSetNode.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45296 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Added Profile method to SimulVertex.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45295 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21This patch implements some of the more obscure type-checking involvingFariborz Jahanian
'id' quallified with protocols and static types which have categories and inheritance which implement these protocols. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45294 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Updated Xcode project to be in sync with recent changes in file locationsTed Kremenek
introduced in r45292 (http://llvm.org/viewvc/llvm-project?rev=45292&view=rev) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45293 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Directory restructing of Analysis files.Ted Kremenek
Created include/clang/Analysis/Analyses directory. - Moved LiveVariables.h and UninitializedValues.h into this dir. Moved ExprDeclBitVector.h into Analysis/Support. Updated all clients who use these headers to reflect the new paths. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45292 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Renamed file AnalysisVertex.h to SimulVertex.hTed Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45291 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Renamed class AnalysisVertex to SimulVertexTed Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45290 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Fixed successor order for CFG basic blocks when handling: x && y. The bugTed Kremenek
is best explained by illustration: [ B2 ] 1: x T: [B2.1] && ... Predecessors (1): B4 Successors (2): B3 B1 Block "B3" should be the block where we evaluate "y" when "x" evaluates to true. Previously we had the successor list reversed. Now this behavior matches with how we handle other conditional branches. Thanks to Nuno Lopes for reporting this problem. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45288 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Convert opaque type when struct definition is seen.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45287 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Keep track of llvm struct size while adding fields.Devang Patel
Update addPaddingFields() interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45284 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Patch to compare to objective-c static types where one or the otherFariborz Jahanian
(but not both) may be a protocol qualified static type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45283 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Test case for my last patch.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45277 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21More objective-c type analysis. This time involving objective typesFariborz Jahanian
of conforming protocols (or not). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45276 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Added class "StateVariant", a template class which serves to wrap states thatTed Kremenek
are generated by transfer functions used by the path-sensitive dataflow solver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45273 91177308-0d34-0410-b5e6-96231b3b80d8