- Nov 18, 2008
-
-
Owen Anderson authored
Fix a bug introduced by my previous patch. With this change, SPEC is now clean with prealloc splitting enabled. llvm-svn: 59544
-
Fariborz Jahanian authored
llvm-svn: 59543
-
Dan Gohman authored
llvm-svn: 59542
-
rdar://problem/6329769Steve Naroff authored
As soon as we detect duplicate interfaces, discontinue further semantic checks (returning the original interface). This is now consistent with how we handle protocols (and less error prone in general). llvm-svn: 59541
-
Dan Gohman authored
llvm-svn: 59540
-
Torok Edwin authored
llvm-svn: 59539
-
Devang Patel authored
llvm-svn: 59538
-
Nuno Lopes authored
llvm-svn: 59537
-
Daniel Dunbar authored
suite with clang. llvm-svn: 59536
-
Daniel Dunbar authored
- PR3094. - No test case, ccc is not really a supported product (llvmc2 already got this right). llvm-svn: 59535
-
Torok Edwin authored
llvm-svn: 59534
-
Chris Lattner authored
llvm-svn: 59533
-
Dan Gohman authored
llvm-svn: 59532
-
Dan Gohman authored
llvm-svn: 59531
-
Duncan Sands authored
SCALAR_TO_VECTOR. I didn't add the testcase, because once llc gets past scalar-to-vector it hits a SPU target lowering bug and explodes. llvm-svn: 59530
-
Nick Lewycky authored
Use it to safely handle less-than-or-equals-to exit conditions in loops. These also occur when the loop exit branch is exit on true because SCEV inverses the icmp predicate. Use it again to handle non-zero strides, but only with an unsigned comparison in the exit condition. llvm-svn: 59528
-
Douglas Gregor authored
DeclRefExprs and BlockDeclRefExprs into a single function Sema::ActOnDeclarationNameExpr, eliminating a bunch of duplicate lookup-name-and-check-the-result code. Note that we still have the three parser entry points for identifiers, operator-function-ids, and conversion-function-ids, since the parser doesn't (and shouldn't) know about DeclarationNames. This is a Good Thing (TM), and there will be more entrypoints coming (e.g., for C++ pseudo-destructor expressions). llvm-svn: 59527
-
Douglas Gregor authored
operator+, directly, using the same mechanism as all other special names. Removed the "special" identifiers for the overloaded operators from the identifier table and IdentifierInfo data structure. IdentifierInfo is back to representing only real identifiers. Added a new Action, ActOnOperatorFunctionIdExpr, that builds an expression from an parsed operator-function-id (e.g., "operator +"). ActOnIdentifierExpr used to do this job, but operator-function-ids are no longer represented by IdentifierInfo's. Extended Declarator to store overloaded operator names. Sema::GetNameForDeclarator now knows how to turn the operator name into a DeclarationName for the overloaded operator. Except for (perhaps) consolidating the functionality of ActOnIdentifier, ActOnOperatorFunctionIdExpr, and ActOnConversionFunctionExpr into a common routine that builds an appropriate DeclRefExpr by looking up a DeclarationName, all of the work on normalizing declaration names should be complete with this commit. llvm-svn: 59526
-
Zhongxing Xu authored
llvm-svn: 59523
-
Zhongxing Xu authored
llvm-svn: 59522
-
Zhongxing Xu authored
handle the case that the array element is of structure type when bind the whole array to a single value (for example, UnknownVal, UndefinedVal). llvm-svn: 59521
-
Bill Wendling authored
llvm-svn: 59519
-
Bill Wendling authored
llvm-svn: 59518
-
Nicolas Geoffray authored
encoded on 32 bytes, and the personality function is not encoded as relative. llvm-svn: 59516
-
Duncan Sands authored
llvm-svn: 59515
-
Duncan Sands authored
when softening FNEG. llvm-svn: 59513
-
Chris Lattner authored
llvm-svn: 59512
-
Chris Lattner authored
llvm-svn: 59511
-
Chris Lattner authored
llvm-svn: 59510
-
Chris Lattner authored
and let the clients push whatever they want into the DiagnosticInfo instead of hard coding a few forms. Also switch various clients to use Diag(Tok, ...) instead of Diag(Tok.getLocation(), ...) as the canonical form to simplify the code a bit. llvm-svn: 59509
-
Chris Lattner authored
invalid expr/stmt, etc. llvm-svn: 59508
-
Chris Lattner authored
is destructive. llvm-svn: 59507
-
Chris Lattner authored
llvm-svn: 59506
-
Bill Wendling authored
llvm-svn: 59505
-
Bill Wendling authored
llvm-svn: 59504
-
Ted Kremenek authored
llvm-svn: 59503
-
Chris Lattner authored
are formed. In particular, a diagnostic with all its strings and ranges is now packaged up and sent to DiagnosticClients as a DiagnosticInfo instead of as a ton of random stuff. This has the benefit of simplifying the interface, making it more extensible, and allowing us to do more checking for things like access past the end of the various arrays passed in. In addition to introducing DiagnosticInfo, this also substantially changes how Diagnostic::Report works. Instead of being passed in all of the info required to issue a diagnostic, Report now takes only the required info (a location and ID) and returns a fresh DiagnosticInfo *by value*. The caller is then free to stuff strings and ranges into the DiagnosticInfo with the << operator. When the dtor runs on the DiagnosticInfo object (which should happen at the end of the statement), the diagnostic is actually emitted with all of the accumulated information. This is a somewhat tricky dance, but it means that the accumulated DiagnosticInfo is allowed to keep pointers to other expression temporaries without those pointers getting invalidated. This is just the minimal change to get this stuff working, but this will allow us to eliminate the zillions of variant "Diag" methods scattered throughout (e.g.) sema. For example, instead of calling: Diag(BuiltinLoc, diag::err_overload_no_match, typeNames, SourceRange(BuiltinLoc, RParenLoc)); We will soon be able to just do: Diag(BuiltinLoc, diag::err_overload_no_match) << typeNames << SourceRange(BuiltinLoc, RParenLoc)); This scales better to support arbitrary types being passed in (not just strings) in a type-safe way. Go operator overloading?! llvm-svn: 59502
-
Ted Kremenek authored
llvm-svn: 59499
-
Chris Lattner authored
Use mutable to make it so. llvm-svn: 59498
-
Chris Lattner authored
delete huge trailing whitespace to fit in 80 cols. llvm-svn: 59497
-