| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 59262
|
| |
|
|
| |
llvm-svn: 59261
|
| |
|
|
|
|
| |
candidates. Thanks to Chris for the review!
llvm-svn: 59260
|
| |
|
|
|
|
| |
corresponding interface (found while doing random testing on another bug).
llvm-svn: 59259
|
| |
|
|
| |
llvm-svn: 59258
|
| |
|
|
| |
llvm-svn: 59257
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. In the top level of ParseStatementOrDeclaration, don't eat a } if we
just parsed a statement if it list there. Also, don't even bother
emitting an error about a missing semicolon if the statement had a
bug (an rbrace is fine).
2. In do/while parsing, don't require a 'while' to be present if the do
body didn't parse.
This allows us to generate a clean diagnostic for this code:
t.c:1:22: error: expected expression
void foo (void) { do . while (0); }
^
Thanks to Neil for pointing this out.
llvm-svn: 59256
|
| |
|
|
| |
llvm-svn: 59255
|
| |
|
|
|
|
| |
crashreporter etc.
llvm-svn: 59254
|
| |
|
|
| |
llvm-svn: 59253
|
| |
|
|
|
|
| |
and <rdar://problem/6344601> clang ObjC rewriter: crash passing Block parameter?
llvm-svn: 59251
|
| |
|
|
|
|
| |
ownership semantics of these objects explicit within the Preprocessor and also tightens up the code (explicit deletes not needed).
llvm-svn: 59249
|
| |
|
|
|
|
| |
from IncludeMacroStack. This is both cleaner and makes the include stack transparently extensible.
llvm-svn: 59248
|
| |
|
|
| |
llvm-svn: 59247
|
| |
|
|
|
|
| |
BitVector, instead of manually testing each bit.
llvm-svn: 59246
|
| |
|
|
|
|
| |
- Temporarily disabled test Analysis/array-struct.c for region store.
llvm-svn: 59245
|
| |
|
|
| |
llvm-svn: 59242
|
| |
|
|
| |
llvm-svn: 59241
|
| |
|
|
| |
llvm-svn: 59240
|
| |
|
|
| |
llvm-svn: 59239
|
| |
|
|
|
|
| |
it to be evaluated by APSInt::operators.
llvm-svn: 59238
|
| |
|
|
|
|
|
|
|
|
| |
"parameter" types. An intrinsic can now return a multiple return values like
this:
def add_with_overflow : Intrinsic<[llvm_i32_ty, llvm_i1_ty],
[LLVMMatchType<0>, LLVMMatchType<0>]>;
llvm-svn: 59237
|
| |
|
|
| |
llvm-svn: 59236
|
| |
|
|
| |
llvm-svn: 59235
|
| |
|
|
| |
llvm-svn: 59234
|
| |
|
|
| |
llvm-svn: 59233
|
| |
|
|
|
|
|
| |
This is required by some operations, e.g., *p = 1; p[0] = 1;.
Also set the AllocaRegion's type during the cast.
llvm-svn: 59232
|
| |
|
|
| |
llvm-svn: 59231
|
| |
|
|
| |
llvm-svn: 59230
|
| |
|
|
|
|
| |
type when assigning to it.
llvm-svn: 59229
|
| |
|
|
| |
llvm-svn: 59228
|
| |
|
|
| |
llvm-svn: 59227
|
| |
|
|
|
|
| |
enumeration for blocks to the appropriate basic blocks.
llvm-svn: 59226
|
| |
|
|
|
|
| |
of vector types. Add explicit checks that when we process integers that they really are scalars.
llvm-svn: 59225
|
| |
|
|
|
|
|
|
|
|
| |
some more bullet-proofing/enhancements for tryEvaluate. This shouldn't
cause any behavior changes except for handling cases where we were
crashing before and being able to evaluate a few more cases in tryEvaluate.
This should settle the minor mess surrounding r59196.
llvm-svn: 59224
|
| |
|
|
|
|
|
|
| |
- Resume running the always inliner pass always now that LLVM has
been improved and functions with debug info can be inlined.
- Remove unused header.
llvm-svn: 59223
|
| |
|
|
| |
llvm-svn: 59222
|
| |
|
|
|
|
|
|
| |
the Backend output should be done in binary mode.
- I'd appreciate it if someone who has a Windows build could verify
this.
llvm-svn: 59221
|
| |
|
|
|
|
|
| |
- Don't crash on vector types.
- Handle typedefs.
llvm-svn: 59220
|
| |
|
|
|
|
| |
Document raw_fd_ostream's treatment of "-".
llvm-svn: 59219
|
| |
|
|
| |
llvm-svn: 59218
|
| |
|
|
|
|
|
| |
- Logic such as this quite possibly should be optional builder
behavior.
llvm-svn: 59213
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
little rude; I figure it's cleaner to just back this out now so
it doesn't get forgotten or mixed up with other checkins.
The modification to isICE is simply wrong; I've added a test that the
change to isICE breaks.
I'm pretty sure the modification to tryEvaluate is also wrong.
At the very least, there's some serious miscommunication going on here,
as this is going in exactly the opposite direction of r59105. My
understanding is that tryEvaluate is not supposed to care about side
effects. That said, a lot of the clients to tryEvaluate are
expecting it to enforce a no-side-effects policy, so we probably need
another method that provides that guarantee.
llvm-svn: 59212
|
| |
|
|
|
|
|
|
|
|
| |
landing pads.
- Primarily a cleanliness issue instead of a performance issue (this
eliminates all blocks w/o predecessors on 176.gcc/expr.c), but this
also allows subsequent code to recognize it is unreachable and
potentially avoid IRgen.
llvm-svn: 59211
|
| |
|
|
|
|
|
|
|
|
| |
- Use dotted notation for blocks related to a particular statement
type.
- Use .end for landing pads.
No functionality change in NDEBUG mode. :)
llvm-svn: 59210
|
| |
|
|
| |
llvm-svn: 59209
|
| |
|
|
| |
llvm-svn: 59208
|
| |
|
|
|
|
|
|
|
|
| |
- Indicates that caller is done with the block and it can be dropped
if it has no predecessors. Useful for callers who need to make
landing pads but which may not be reached.
No functionality change.
llvm-svn: 59207
|
| |
|
|
| |
llvm-svn: 59206
|
| |
|
|
| |
llvm-svn: 59204
|