- Apr 28, 2009
-
-
Evan Cheng authored
llvm-svn: 70291
-
Jakob Stoklund Olesen authored
llvm-svn: 70290
-
Ted Kremenek authored
llvm-svn: 70286
-
Ted Kremenek authored
add "Looping back to the head of the loop" diagnostic for loops. llvm-svn: 70285
-
Ted Kremenek authored
llvm-svn: 70284
-
Eli Friedman authored
llvm-svn: 70283
-
Eli Friedman authored
llvm-svn: 70282
-
Eli Friedman authored
scheme to be more useful. The new scheme introduces a set of categories that should be more readable, and also reflects what we want to consider as an extension more accurately. Specifically, it makes the "what is a keyword" determination accurately reflect whether the keyword is a GNU or Microsoft extension. I also introduced separate flags for keyword aliases; this is useful because the classification of the aliases is mostly unrelated to the classification of the original keyword. This patch treats anything that's in the implementation namespace (prefixed with "__", or "_X" where "X" is any upper-case letter) as a keyword without marking it as an extension. This is consistent with the standards in that an implementation is allowed to define arbitrary extensions in the implementation namespace without violating the standard. This gets rid of all the nasty "extension used" warnings for stuff like __attribute__ in -pedantic mode. We still warn for extensions outside of the the implementation namespace, like typeof. If someone wants to implement -Wextensions or something like that, we could add additional information to the keyword table. This also removes processing for the unused "Boolean" language option; such an extension isn't supported on any other C implementation, so I don't see any point to adding it. The changes to test/CodeGen/inline.c are required because previously, we weren't actually disabling the "inline" keyword in -std=c89 mode. I'll remove Boolean and NoExtensions from LangOptions in a follow-up commit. llvm-svn: 70281
-
Ted Kremenek authored
llvm-svn: 70280
-
Evan Cheng authored
llvm-svn: 70279
-
Mike Stump authored
diagnostics to improve gcc compatibility; useful for dejagnu testing. llvm-svn: 70278
-
Mike Stump authored
llvm-svn: 70277
-
Bill Wendling authored
llvm-svn: 70275
-
Ted Kremenek authored
- Add 'LoopTarget' pointer field to CFGBlock. This records if the block is used as the 'loop back' path back to the head of a loop. - For ForStmt, encode the loop back target as the increment code. llvm-svn: 70274
-
Eli Friedman authored
that if we're going to print an extension warning anyway, there's no point to changing behavior based on NoExtensions: it will only make error recovery worse. Note that this doesn't cause any behavior change because NoExtensions isn't used by the current front-end. I'm still considering what to do about the remaining use of NoExtensions in IdentifierTable.cpp. llvm-svn: 70273
-
Bill Wendling authored
use the old behavior, the flag is -O0. This change allows for finer-grained control over which optimizations are run at different -O levels. Most of this work was pretty mechanical. The majority of the fixes came from verifying that a "fast" variable wasn't used anymore. The JIT still uses a "Fast" flag. I'm not 100% sure if it's necessary to change it there... llvm-svn: 70270
-
Eli Friedman authored
builds to work (PR4088). llvm-svn: 70269
-
Eli Friedman authored
llvm-svn: 70268
-
Devang Patel authored
llvm-svn: 70266
-
Douglas Gregor authored
Clang version value rather than hard-coding "1.0". Add PCH and Clang version information into the PCH file. Reject PCH files with the wrong version information. llvm-svn: 70264
-
Chris Lattner authored
llvm-svn: 70263
-
Dan Gohman authored
llvm-svn: 70262
-
Chris Lattner authored
llvm-svn: 70259
-
- Apr 27, 2009
-
-
Chris Lattner authored
processing to after PCH is loaded. -Eonly and -parse-noop are close to working with PCH now but are not quite there yet. llvm-svn: 70257
-
Sebastian Redl authored
llvm-svn: 70256
-
Douglas Gregor authored
ignore a PCH file. llvm-svn: 70251
-
Chris Lattner authored
llvm-svn: 70250
-
Daniel Dunbar authored
- Forces input file to be empty to time startup/shutdown costs. llvm-svn: 70249
-
Sebastian Redl authored
llvm-svn: 70248
-
Dale Johannesen authored
llvm-svn: 70247
-
Evan Cheng authored
llvm-svn: 70245
-
Dan Gohman authored
between the comparison's iv stride and the candidate stride is exactly -1. llvm-svn: 70244
-
Jeffrey Yasskin authored
the comparison operators were not only unnecessary in the presence of the implicit conversion; they caused ambiguous overload errors. So I deleted them. llvm-svn: 70243
-
Sebastian Redl authored
Improve validation of C++ exception handling: diagnose throwing incomplete types and jumps into protected try-catch scopes. llvm-svn: 70242
-
Dan Gohman authored
information to simplify [sz]ext({a,+,b}) to {zext(a),+,[zs]ext(b)}, as appropriate. These functions and the trip count code each call into the other, so this requires careful handling to avoid infinite recursion. During the initial trip count computation, conservative SCEVs are used, which are subsequently discarded once the trip count is actually known. Among other benefits, this change lets LSR automatically eliminate some unnecessary zext-inreg and sext-inreg operation where the operand is an induction variable. llvm-svn: 70241
-
Douglas Gregor authored
Add Sema::ExtVectorDecls and Sema::ObjCCategoryImpls to the PCH file. Since these vectors are very, very rarely used and, when used in headers, and even when used are relatively small, we load them eagerly. llvm-svn: 70240
-
Chris Lattner authored
only llvm-bcanalyzer wants this info. llvm-svn: 70239
-
Owen Anderson authored
This should have no effect on generated code, but makes the intermediate state of the coalescer more sane. llvm-svn: 70238
-
Ted Kremenek authored
'objc_ownership_cfrelease'. These are the 'release' equivalents of 'objc_ownership_retain' and 'objc_ownership_cfretain' respectively. llvm-svn: 70235
-
Duncan Sands authored
no-longer needed workarounds. llvm-svn: 70234
-