Commit Graph

46629 Commits

Author SHA1 Message Date
Daniel Dunbar 63fed4f35e Update ShuffeVectorExpr::getShuffleMaskIdx to use
getIntegerConstantExprValue.

Tweak getIntegerConstantExprValue to suppress warning in
  Release-Asserts mode.

llvm-svn: 54609
2008-08-10 06:58:01 +00:00
Daniel Dunbar 9a8d07321a Bug fix, inline string literals were getting an extra '\0'.
llvm-svn: 54608
2008-08-10 06:27:44 +00:00
Chris Lattner 7ab824e43d tighten up some code and some wording on diagnostics.
llvm-svn: 54607
2008-08-10 02:05:13 +00:00
Chris Lattner 28b4294ccf wrap some long diagnostics, make 'initializer is not a constant' diagnostic
a bit more clear (rdar://5646070)

llvm-svn: 54606
2008-08-10 01:58:45 +00:00
Chris Lattner 6307f19726 rename PreDefinedExpr -> PredefinedExpr
llvm-svn: 54605
2008-08-10 01:53:14 +00:00
Argyrios Kyrtzidis 8a23f55186 Add some C++ Decl statistics.
llvm-svn: 54604
2008-08-10 01:47:31 +00:00
Chris Lattner 113b336caa move some more stuff out of my email into readme.txt
llvm-svn: 54603
2008-08-10 01:14:08 +00:00
Chris Lattner 4afb010309 add a note
llvm-svn: 54602
2008-08-10 00:47:21 +00:00
Eli Friedman a3b2f6f2af Make sure to count the struct elements correctly; here, we want the
member count.  The count returned by numStructUnionElements is the 
number of initializers that will be consumed, not the number of members 
to iterate through.  Fixes PR2534.

llvm-svn: 54601
2008-08-09 23:45:45 +00:00
Eli Friedman 121ba0c4d3 Fix for PR2631; make va_arg work correctly on x86-64.
llvm-svn: 54600
2008-08-09 23:32:40 +00:00
Nico Weber 53c362e34e 80 cols
llvm-svn: 54599
2008-08-09 23:08:17 +00:00
Eli Friedman 5ce8cc7554 Remove the ICE pointer cast hack; the issue this was working around is
now fixed in an alternate way.

llvm-svn: 54598
2008-08-09 22:24:21 +00:00
Eli Friedman 5cf85cc977 Turn on the new constant expression evaluator; it isn't
anywhere near complete, but I don't know of any issues, and it can 
handle enough to allow removing the I-C-E pointer cast hack.

llvm-svn: 54597
2008-08-09 22:21:56 +00:00
Nico Weber 582be4db34 add assert, use make_pair() instead of pair constructor
llvm-svn: 54596
2008-08-09 22:13:42 +00:00
Argyrios Kyrtzidis 379d2edc29 Mention 'wchar_t' at the C++ status page.
llvm-svn: 54595
2008-08-09 22:12:36 +00:00
Nico Weber 6975aaf3c2 fix spello
llvm-svn: 54594
2008-08-09 22:12:22 +00:00
Argyrios Kyrtzidis dfaf82ac2d Handle BuiltinType::WChar inside CodeGenTypes::ConvertNewType().
llvm-svn: 54593
2008-08-09 22:01:55 +00:00
Chris Lattner 572100b648 Fix PR2400 by more graceful handling of invalid decls. Don't try to layout
an invalid struct decl.  Thanks to Martin Doucha for the 
isIncompleteArrayType part of this patch.

llvm-svn: 54592
2008-08-09 21:35:13 +00:00
Gordon Henriksen 04c50bd7e0 Expressive diagnostics-- worth their weight in gold?
(Fixing a spelling error.)

llvm-svn: 54591
2008-08-09 19:58:22 +00:00
Nico Weber 7094a5bfa8 do not serialize invalid asts. this fixes bug #2637
llvm-svn: 54590
2008-08-09 18:32:11 +00:00
Chris Lattner 09e3b65a99 "This patch adds a virtual call to AbstractLatticeFunction to derive a
type lattice value for an Argument*, giving clients the opportunity to
use something other than Top for it if they choose to."

Patch by John McCall!

llvm-svn: 54589
2008-08-09 17:23:35 +00:00
Argyrios Kyrtzidis cbad725bf4 Change 'Wchar' to 'WChar' casing, for consistency.
No functionality change.

llvm-svn: 54588
2008-08-09 17:20:01 +00:00
Argyrios Kyrtzidis d8f2f5f1b7 Handle WChar inside BuiltinType::getName().
llvm-svn: 54587
2008-08-09 17:11:33 +00:00
Argyrios Kyrtzidis 40e9e4828f Implement support for the 'wchar_t' C++ type.
llvm-svn: 54585
2008-08-09 16:51:54 +00:00
Steve Naroff 239255d2a6 Fix Sema::MergeVarDecl() to better handle type compatibility. The previous code was trying to handle arrays specially (which didn't work for pointers to array). Removed local helper function areEquivalentArrayTypes(), replacing it's use with the more general ASTContext::typesAreCompatible() predicate.
Even though the test case this fixes is in "tentative-decls.c", this bug didn't have anything to do with our handling of tentative definitions (which is what I first expected). In any event, this is a tricky area of the spec.

llvm-svn: 54583
2008-08-09 16:04:40 +00:00
Duncan Sands 059588a1ee Unbreak the llvm-gcc build: recent changes to
IRBuilder are not expecting null names.

llvm-svn: 54581
2008-08-09 15:14:59 +00:00
Cedric Venet 41dc330d2f update VS project.
llvm-svn: 54580
2008-08-09 11:57:39 +00:00
Chris Lattner ea74ea89fb Make 'Insert' set the name for Loads, instead of passing the name into the
LoadInst ctor, which causes std::string thrashing.

llvm-svn: 54577
2008-08-09 06:26:23 +00:00
Chris Lattner 6f76778fbf comment update
llvm-svn: 54576
2008-08-09 06:25:46 +00:00
Gordon Henriksen ada201c8c1 Fix some typos. Apparently I think C needs a power-of operator.
llvm-svn: 54574
2008-08-09 03:48:46 +00:00
Gordon Henriksen 72c1c7d694 Delete a redundant binding, LLVMHasInitializer.
Please use !LLVMIsDeclaration instead.

llvm-svn: 54572
2008-08-09 02:13:58 +00:00
Gordon Henriksen 2862ab967d [PR-2610] Adding Ocaml bindings for Switch::addCase.
llvm-svn: 54571
2008-08-09 01:55:52 +00:00
Gordon Henriksen 7086c05d10 Ignore output directories.
llvm-svn: 54570
2008-08-09 01:53:27 +00:00
Argyrios Kyrtzidis 2f67f37daf When in C++, invoke ASTConsumer::HandleTagDeclDefinition in Sema::ActOnFinishCXXClassDef,
at which point the C++ struct/class/union is fully parsed.

llvm-svn: 54569
2008-08-09 00:58:37 +00:00
Ted Kremenek 4455a9d378 Added FIXME.
llvm-svn: 54568
2008-08-09 00:41:45 +00:00
Argyrios Kyrtzidis 5c45c9b063 Passing right brace location to ActOnFinishCXXClassDef is redundant, since it gets passed to ActOnFinishCXXMemberSpecification too.
llvm-svn: 54567
2008-08-09 00:39:29 +00:00
Ted Kremenek 8f50b64eef Updated checker build.
llvm-svn: 54566
2008-08-09 00:22:35 +00:00
Ted Kremenek 0216b83d94 Don't use Expr::isIntegerConstantExpr just to check if a pointer value is initialize to NULL.
llvm-svn: 54563
2008-08-09 00:05:14 +00:00
Ted Kremenek 1a02630b63 Updated checker build.
llvm-svn: 54562
2008-08-08 22:25:17 +00:00
Argyrios Kyrtzidis 69bc5ba67a Make RecordDecl::Destroy() public.
llvm-svn: 54561
2008-08-08 22:25:06 +00:00
Gordon Henriksen 5225cd66cf Fix the LLVMCreateJITCompiler C binding.
Evan broke it in r54523 by adding a parameter in the implementation without
updating the header correspondingly.

llvm-svn: 54555
2008-08-08 20:49:28 +00:00
Ted Kremenek 994c8e393d Have scan-build/ccc-analyzer generate preprocessed .i/.mi files for sources that clang crashes on.
llvm-svn: 54552
2008-08-08 20:46:42 +00:00
Chris Lattner c893a67fe3 update to make IRBuilder API change.
llvm-svn: 54548
2008-08-08 19:57:58 +00:00
Eric Christopher 5927883970 Have IRBuilder take a template argument on whether or not to preserve
names. This can save a lot of allocations if you aren't going to be
looking at the output.

llvm-svn: 54546
2008-08-08 19:39:37 +00:00
Dan Gohman 223a5d2763 Canonicalize nested AddRecs in by nesting them in order of loop depth.
llvm-svn: 54545
2008-08-08 18:33:12 +00:00
Dan Gohman 4e2f3ace2c Add an EXTRACTPSmr pattern to match the pattern that
X86ISelLowering creates.

llvm-svn: 54544
2008-08-08 18:30:21 +00:00
Anton Korobeynikov bc506bbfdb Properly print flags on Sparc
llvm-svn: 54543
2008-08-08 18:26:10 +00:00
Anton Korobeynikov 793108b561 Generalize
llvm-svn: 54542
2008-08-08 18:25:52 +00:00
Anton Korobeynikov f6e3411aec Use mergeable strings sections on sparc
llvm-svn: 54541
2008-08-08 18:25:29 +00:00
Anton Korobeynikov ed47329174 Handle visibility printing with all generality. Remove bunch of duplicate code.
llvm-svn: 54540
2008-08-08 18:25:07 +00:00