Eli Friedman
e94e0f66cd
Make header use the new __builtin_shufflevector builtin.
...
llvm-svn: 51117
2008-05-14 20:11:29 +00:00
Ted Kremenek
e3fc13a3e0
Added "-a" option to scan-build to select the analysis (ASTConsumer) used by clang. The default is -checker-cfref.
...
llvm-svn: 51116
2008-05-14 20:10:33 +00:00
Eli Friedman
a1b4ed8003
Implementation of __builtin_shufflevector, a portable builtin capable of
...
expressing the full flexibility of the LLVM shufflevector instruction.
The expected immediate usage is in *mmintrin.h, so that they don't
depend on the mess of gcc-inherited (and not completely implemented)
shuffle builtins.
llvm-svn: 51113
2008-05-14 19:38:39 +00:00
Ted Kremenek
0a8a0fa0b5
Zero-pad the month and day fields in the output HTML directory.
...
llvm-svn: 51109
2008-05-14 17:23:56 +00:00
Argyrios Kyrtzidis
881848119c
Update the clangSema VC++ project.
...
llvm-svn: 51104
2008-05-14 10:50:44 +00:00
Argyrios Kyrtzidis
3722daf62d
Change CRLF line endings to LF.
...
llvm-svn: 51103
2008-05-14 10:49:47 +00:00
Argyrios Kyrtzidis
7ebefaf3c7
Upgrading VC++ projects to VC++ 2008.
...
llvm-svn: 51101
2008-05-14 10:00:15 +00:00
Eli Friedman
7e452e59e4
An array of VLAs is a VLA. Shouldn't make any significant difference at
...
the moment, but it what you'd expect in the AST from reading the
standard, and it should make VLA codegen a bit more strightforward.
llvm-svn: 51086
2008-05-14 00:40:18 +00:00
Eli Friedman
9fd8b68568
Add codegen support for block-level compound literals.
...
llvm-svn: 51081
2008-05-13 23:18:27 +00:00
Eli Friedman
dd7406e65c
Add support for init lists for complex variables.
...
llvm-svn: 51080
2008-05-13 23:11:35 +00:00
Ted Kremenek
20a44ed730
Output #LINE for computing line counts.
...
llvm-svn: 51079
2008-05-13 22:56:36 +00:00
Ted Kremenek
7147584d03
Use "-i" option with make when ignoring errors.
...
llvm-svn: 51070
2008-05-13 21:28:02 +00:00
Nate Begeman
d386215916
Remove AST dependency on VMCore by switching ExtVectorElementExpr off Constant.
...
llvm-svn: 51068
2008-05-13 21:03:02 +00:00
Eli Friedman
58639e584c
Both operands to && have to be scalars, not just one.
...
llvm-svn: 51065
2008-05-13 20:16:47 +00:00
Ted Kremenek
52387a1828
Re-enable the analyzer.
...
llvm-svn: 51055
2008-05-13 17:10:28 +00:00
Eli Friedman
1a5754a26a
Detabify.
...
llvm-svn: 51042
2008-05-13 14:40:48 +00:00
Ted Kremenek
80ff5f0696
Place "-x" option before other analyzer options.
...
llvm-svn: 51014
2008-05-12 23:56:50 +00:00
Ted Kremenek
ece302d75b
Directly invoke gcc immediately instead of before we process the command line arguments.
...
llvm-svn: 51012
2008-05-12 23:47:41 +00:00
Steve Naroff
a98fe19c7e
Fix <rdar://problem/5924576> clang -fsyntax-only generates "redefinition" errors when parsing AppKit that gcc does not.
...
Teach Sema::MergeVarDecl() about __private_extern__.
llvm-svn: 51005
2008-05-12 22:36:43 +00:00
Ted Kremenek
f5a94e7114
Added internal command logging.
...
llvm-svn: 51003
2008-05-12 22:07:14 +00:00
Steve Naroff
bf1516c618
Fix <rdar://problem/5928590> clang -fsyntax-only: "incompatible operand types ('int' and 'void')" on input that 'gcc -fsyntax-only' eats
...
llvm-svn: 51002
2008-05-12 21:44:38 +00:00
Chris Lattner
c9c296d235
testcase for PR2263, fixed by Nate's r50903 patch.
...
llvm-svn: 50983
2008-05-12 18:31:17 +00:00
Ted Kremenek
2abde809ce
Unbreak build.
...
llvm-svn: 50980
2008-05-12 17:42:30 +00:00
Ted Kremenek
a0055a8ef5
Support StringLiteralVal when comparing LVal types.
...
llvm-svn: 50979
2008-05-12 17:41:30 +00:00
Ted Kremenek
8322da5fa3
Grammar cleanup in comment.
...
Remove redundant assignment.
llvm-svn: 50978
2008-05-12 17:40:56 +00:00
Ted Kremenek
babaa52efb
80 col violation fix.
...
llvm-svn: 50977
2008-05-12 17:40:13 +00:00
Ted Kremenek
92f78f4c04
When reading in the DeclCtx during deserialization, register the DeclCtx of the
...
ScopedDecl with the backpatcher, and *not* a local variable on the stack. The
value of DeclCtx gets filled in *later* by the backpatcher.
This fixes: http://llvm.org/bugs/show_bug.cgi?id=2308
llvm-svn: 50976
2008-05-12 17:29:34 +00:00
Ted Kremenek
9a15a9477b
Add Type::getAsTypedefType().
...
llvm-svn: 50970
2008-05-12 16:22:53 +00:00
Eli Friedman
6a7087e455
Emit basic block for switch body; fixes PR2307.
...
llvm-svn: 50968
2008-05-12 16:08:04 +00:00
Eli Friedman
6e31321043
Don't try to take the address of a bitfield; fixes PR2310.
...
llvm-svn: 50966
2008-05-12 15:06:05 +00:00
Nuno Lopes
de9746cd45
fix free/delete mismatch problem in add/mergeProperties (found by valgrind)
...
llvm-svn: 50945
2008-05-10 10:31:54 +00:00
Chris Lattner
14196c099f
Implement -rewrite-macros, which is a crazy macro expander that expands
...
macros but doesn't expand #includes, remove comments, remove #defines
etc.
For example:
----
#include <stdio.h>
#define bbaa
#define funclike(x) x "a" x "b" x
bbaa bbaa
#if 1
funclike("gar")
foo /*blah*/ bar
bar
#endif
#if 0
funclike()
#endif
----
rewrites to:
----
#include <stdio.h>
#define bbaa
#define funclike(x) x "a" x "b" x
/*bbaa bbaa*/
#if 1
"gar" "a" "gar" "b" "gar"/*funclike*//*("gar")*/
foo /*blah*/ bar
bar
#endif
#if 0
/*funclike()*/
#endif
----
llvm-svn: 50925
2008-05-10 00:02:33 +00:00
Ted Kremenek
acdde6f099
Rename IsPointerType to LVal::IsLValType, and update CFRefCount::EvalSummary to use IsLValType when conjuring symbols for return values (this fixes a bug with an assertion firing in the analyzer when two qualified objective-c types were compared).
...
llvm-svn: 50924
2008-05-09 23:45:33 +00:00
Argyrios Kyrtzidis
fa8e15bfa5
-Implement proper name lookup for namespaces.
...
-identifierResolver exposes an iterator interface to get all decls through the scope chain.
-The semantic staff (checking IdentifierNamespace and Doug's checking for shadowed tags were moved out of IdentifierResolver and back into Sema. IdentifierResolver just gives an iterator for all reachable decls of an identifier.
llvm-svn: 50923
2008-05-09 23:39:43 +00:00
Chris Lattner
664ef65981
make #if 0 code compile, even though it still isn't very useful.
...
llvm-svn: 50920
2008-05-09 22:43:24 +00:00
Mon P Wang
b84407d6ec
Added support to generate some atomic operators (add, sub, and, or etc..)
...
llvm-svn: 50919
2008-05-09 22:40:52 +00:00
Steve Naroff
d30f8c5b54
Fix <rdar://problem/5924225> clang ObjC rewriter: objc_exception_throw declaration in preamble does not match objc/objc-exception.h.
...
llvm-svn: 50915
2008-05-09 21:17:56 +00:00
Steve Naroff
530c3f9403
DO NOT pre-defined __OBJC2__. The __OBJC2__ macro should only be defined when targeting the new, Apple 2.0 *runtime ABI*. It is not intended to be used to #ifdef ObjC 2.0 langauge features. This is unfortunate (given it's name). In a perfect world, this defined would be named __OBJC2_RUNTIME_ABI__. Oh well.
...
llvm-svn: 50913
2008-05-09 20:52:28 +00:00
Steve Naroff
0889b9bfac
More VC++ project file updates.
...
llvm-svn: 50909
2008-05-09 19:10:27 +00:00
Ted Kremenek
82e8d07b02
Remove repeated word.
...
llvm-svn: 50907
2008-05-09 17:53:57 +00:00
Ted Kremenek
712c91f8a9
Add attribute "format" support for typedefs of function pointers.
...
llvm-svn: 50906
2008-05-09 17:36:24 +00:00
Ted Kremenek
bbd4695a45
Grammar.
...
llvm-svn: 50905
2008-05-09 17:13:18 +00:00
Ted Kremenek
4d180b36f3
Added text on librewrite and libanalysis to the README.
...
llvm-svn: 50904
2008-05-09 17:12:45 +00:00
Nate Begeman
1d30431002
Handle all attributes on a parameter
...
llvm-svn: 50903
2008-05-09 16:56:01 +00:00
Nate Begeman
f322eabbce
Extend vector member references to include {.hi, .lo, .e, .o} which return a
...
vector of the same element type and half the width, with the high, low, even,
and odd elements respectively.
Allow member references to member references, so that .hi.hi gives you the high
quarter of a vector. This is fairly convenient syntax for some insert/extract
operations.
Remove some unnecessary methods/types in the ExtVectorElementExpr class.
llvm-svn: 50892
2008-05-09 06:41:27 +00:00
Chris Lattner
ba7a6c14ed
set long/pointers to 64-bits on ppc64/x86-64
...
llvm-svn: 50891
2008-05-09 06:17:04 +00:00
Chris Lattner
5e2ef0c18a
parameterize pointer size/align better without doing virtual method calls in normal case.
...
llvm-svn: 50890
2008-05-09 06:08:39 +00:00
Chris Lattner
55258cf278
simplify some code, don't assume that sizeof(long) < sizeof(long long).
...
llvm-svn: 50888
2008-05-09 05:59:00 +00:00
Chris Lattner
5a9aaaf687
parameterize long long.
...
llvm-svn: 50887
2008-05-09 05:50:02 +00:00
Chris Lattner
5dc7ff1cf3
correctly parameterize long, patch by Nate.
...
llvm-svn: 50886
2008-05-09 05:47:41 +00:00