| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
lib dir and move all the libraries into it. This follows the main
llvm tree, and allows the libraries to be built in parallel. The
top level now enforces that all the libs are built before Driver,
but we don't care what order the libs are built in. This speeds
up parallel builds, particularly incremental ones.
llvm-svn: 48402
|
|
|
|
|
|
| |
all Create methods.
llvm-svn: 48398
|
|
|
|
|
|
| |
argument to Create should be first, not last.
llvm-svn: 48397
|
|
|
|
| |
llvm-svn: 48396
|
|
|
|
|
|
| |
from "Block", not the CFGBlock* returned from visiting its subexpression.
llvm-svn: 48392
|
|
|
|
|
|
|
|
|
|
| |
Right now only some ctors are switched over. I need to switch them all
over so I can change the dtor over.
This lets us experiment with region allocation and other things in the
future.
llvm-svn: 48390
|
|
|
|
| |
llvm-svn: 48389
|
|
|
|
|
|
|
| |
Set the start of DeclStmt range. Right now the end is meaningless
though.
llvm-svn: 48330
|
|
|
|
|
|
|
|
|
|
| |
we gracefully back out and return NULL for the CFG, allowing clients to skip
analyzing functions with these CFGs. We will add support later.
Modified base ASTConsumer "CFGVisitor" to detect when a CFG is not constructed
and to emit a warning.
llvm-svn: 48322
|
|
|
|
|
|
| |
-Wrap objc runtime calls with "extern "C"" (for now).
llvm-svn: 48284
|
|
|
|
| |
llvm-svn: 48153
|
|
|
|
|
|
| |
which is simpler to use and provide.
llvm-svn: 48051
|
|
|
|
|
|
| |
different widths. Start simplifying TargetInfo accessor methods.
llvm-svn: 48050
|
|
|
|
| |
llvm-svn: 47995
|
|
|
|
| |
llvm-svn: 47954
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
theoretically useful, but not useful in practice. It adds a bunch of
complexity, and not much value. It's best to nuke it. One big advantage
is that it means the target interfaces will soon lose their SLoc arguments
and target queries can never emit diagnostics anymore (yay). Removing this
also simplifies some of the core preprocessor which should make it slightly
faster.
Ted, I didn't simplify TripleProcessor, which can now have at most one
triple, and can probably just be removed. Please poke at it when you have
time.
llvm-svn: 47930
|
|
|
|
| |
llvm-svn: 47913
|
|
|
|
|
|
| |
DeclStmt initializers when the initializer is a literal.
llvm-svn: 47771
|
|
|
|
| |
llvm-svn: 47769
|
|
|
|
|
|
|
|
|
|
|
| |
Removed VarDecl::hasAutoStorage() (only used by hasLocalStorage())
Merged logic from VarDecl::hasAutoStorage() into VarDecl::hasLocalStorage(),
and expanded (fixed) the logic of hasLocalStorage() to handle Extern and PrivateExtern.
Renamed Expr::hasStaticStorage() to Expr::hasGlobalStorage().
llvm-svn: 47681
|
|
|
|
|
|
| |
properly back-patched.
llvm-svn: 47675
|
|
|
|
|
|
| |
successor of blocks created above it.
llvm-svn: 47666
|
|
|
|
|
|
|
|
| |
multiple basic blocks (which can happen when they contain '&&', '||', '?'). The
bug was that the loop backedge when to the last block in the loop condition, not
the first.
llvm-svn: 47649
|
|
|
|
| |
llvm-svn: 47588
|
|
|
|
|
|
| |
Patch by Mike Stump!
llvm-svn: 47582
|
|
|
|
|
|
| |
This caused the whole body to get dropped from the CFG.
llvm-svn: 47579
|
|
|
|
|
|
| |
failures on OS X in some cases. (Thank you valgrind.)
llvm-svn: 47568
|
|
|
|
| |
llvm-svn: 47560
|
|
|
|
| |
llvm-svn: 47530
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch fixes some debug assertions that the msvcrt throws:
1)
- if (isprint(value) && value < 256) {
+ if (value < 256 && isprint(value)) {
isprint() does an assertion check of its own for value < 256; check value before calling it to prevent it.
2)
- Stmt->Names.push_back(std::string(&data[0], data.size()));
+ if (data.size() == 0)
+ Stmt->Names.push_back(std::string());
+ else
+ Stmt->Names.push_back(std::string(&data[0], data.size()));
If data.size() == 0 then data[0] throws "out of range" assertion.
llvm-svn: 47512
|
|
|
|
|
|
|
|
|
| |
because silly gcc 3.4.6 barfs on this
construct.
Type.h defines an "enum TQ", which makes
the parser to err.
llvm-svn: 47438
|
|
|
|
| |
llvm-svn: 47429
|
|
|
|
|
|
|
|
|
| |
rename QualType::getQualifiers to getCVRQualifiers.
Add some fixme's and clean up some code relevant to qualifiers.
Change ASQualType to contain a Type* instead of a QualType.
Any CVR qualifiers should be on the outer qual type.
llvm-svn: 47398
|
|
|
|
| |
llvm-svn: 47269
|
|
|
|
| |
llvm-svn: 47260
|
|
|
|
|
|
| |
that is not a type.
llvm-svn: 47259
|
|
|
|
| |
llvm-svn: 47233
|
|
|
|
| |
llvm-svn: 47216
|
|
|
|
| |
llvm-svn: 47210
|
|
|
|
| |
llvm-svn: 47202
|
|
|
|
| |
llvm-svn: 47191
|
|
|
|
|
|
|
|
|
|
| |
IncompleteArrayType. This should make code dealing with both incomplete
and variable length arrays much more readable, plus it allows properly
making the distinction between isVariableArrayType() and
isVariablyModifiedType(). The patch is a little big, but it's
strightforward. so I don't think there should be any issues.
llvm-svn: 47165
|
|
|
|
| |
llvm-svn: 47156
|
|
|
|
| |
llvm-svn: 47155
|
|
|
|
|
|
| |
going on with mixing scopes, though.
llvm-svn: 47152
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
branch ALWAYS be the last successor for a switch-terminated block. This allows
clients to distinguish cases like the following:
switch(...)
case XXX:
switch(...) {
case YYY: ...
}
case ZZZ: ..
}
In this case, the block with "case ZZZ:" is the default block for the inner
switch statement, but that case is associated with the outer switch statement,
and not the inner one. Clients can test for this behavior by checking if a
successor block is the last one (and thus just assume that this is the "default"
case).
llvm-svn: 47088
|
|
|
|
|
|
|
|
| |
"default" case. In such cases, we now correctly add the CFGBlock representing
the code after the switch statement as a successor to the block terminated by
the switch statement.
llvm-svn: 47087
|
|
|
|
|
|
|
|
|
| |
tgmath.h.
Note that there is another issue with tgmath.h, so mandel.c still
doesn't work.
llvm-svn: 47069
|
|
|
|
| |
llvm-svn: 47040
|
|
|
|
| |
llvm-svn: 47005
|