- Feb 13, 2009
-
-
Bill Wendling authored
the new way, where all of the information is passed on SDNodes and machine instructions. llvm-svn: 64427
-
Ted Kremenek authored
- Add 'EvalBind', which will be used by 'EvalStore' to pull much of the value binding logic out of GRTransferFuncs. - Rename many cases of 'St' to 'state'. llvm-svn: 64426
-
Douglas Gregor authored
llvm-svn: 64425
-
Eli Friedman authored
type doesn't do anything. llvm-svn: 64424
-
Douglas Gregor authored
llvm-svn: 64423
-
Ted Kremenek authored
AnalysisConsumer: Explicitly destroy the PathDiagnosticClient at the end of HandleTranslationUnit to ensure that the client's destructor is called even with --disable-free. llvm-svn: 64422
-
Chris Lattner authored
only insert spaces between tokens if the code had them or if they are actually required to avoid pasting. This reuses the same logic as -E mode. llvm-svn: 64421
-
Daniel Dunbar authored
llvm-svn: 64420
-
Daniel Dunbar authored
<rdar://problem/6515236> [ccc] generate expected output files when used with PCH llvm-svn: 64419
-
Chris Lattner authored
PrintPreprocessedOutput into its own file. No functionality change. llvm-svn: 64418
-
Ted Kremenek authored
llvm-svn: 64417
-
Daniel Dunbar authored
llvm-svn: 64416
-
Dan Gohman authored
after sorting by stride value. This prevents it from missing IV reuse opportunities in a host-sensitive manner. llvm-svn: 64415
-
Douglas Gregor authored
given name in a given scope is marked as "overloadable", every function declaration and definition with that same name and in that same scope needs to have the "overloadable" attribute. Essentially, the "overloadable" attribute is not part of attribute merging, so it must be specified even for redeclarations. This keeps users from trying to be too sneaky for their own good: double sin(double) __attribute__((overloadable)); // too sneaky #include <math.h> Previously, this would have made "sin" overloadable, and therefore given it a mangled name. Now, we get an error inside math.h when we see a (re)declaration of "sin" that doesn't have the "overloadable" attribute. llvm-svn: 64414
-
Douglas Gregor authored
ABI to the CodeGen library. Since C++ code-generation is so incomplete, we can't exercise much of this mangling code. However, a few smoke tests show that it's doing the same thing as GCC. When C++ codegen matures, we'll extend the ABI tester to verify name-mangling as well, and complete the implementation here. At this point, the major client of name mangling is in the uses of the new "overloadable" attribute in C, which allows overloading. Any "overloadable" function in C (or in an extern "C" block in C++) will be mangled the same way that the corresponding C++ function would be mangled. llvm-svn: 64413
-
Mike Stump authored
llvm-svn: 64412
-
Daniel Dunbar authored
llvm-svn: 64411
-
Dale Johannesen authored
llvm-svn: 64410
-
Dale Johannesen authored
Modify callers. llvm-svn: 64409
-
Mike Stump authored
_GCC_LIMITS_H_ is defined, when __GNUC__ is defined. Also, we need to stay away from possible conflicts with header guards. We should use CLANG_ to prefix all header guards. llvm-svn: 64408
-
- Feb 12, 2009
-
-
Dan Gohman authored
loop induction on LP64 targets. When the induction variable is used in addressing, IndVars now is usually able to inserst a 64-bit induction variable and eliminates the sign-extending cast. This is also useful for code using C "short" types for induction variables on targets with 32-bit addressing. Inserting a wider induction variable is easy; the tricky part is determining when trunc(sext(i)) expressions are no-ops. This requires range analysis of the loop trip count. A common case is when the original loop iteration starts at 0 and exits when the induction variable is signed-less-than a fixed value; this case is now handled. This replaces IndVarSimplify's OptimizeCanonicalIVType. It was doing the same optimization, but it was limited to loops with constant trip counts, because it was running after the loop rewrite, and the information about the original induction variable is lost by that point. Rename ScalarEvolution's executesAtLeastOnce to isLoopGuardedByCond, generalize it to be able to test for ICMP_NE conditions, and move it to be a public function so that IndVars can use it. llvm-svn: 64407
-
Nate Begeman authored
type of the vectors being shuffled. llvm-svn: 64401
-
Dale Johannesen authored
in inline asm as signed (what gcc does). Add partial support for x86-specific "e" and "Z" constraints, with appropriate signedness for printing. llvm-svn: 64400
-
Dan Gohman authored
gets left behind, it's less cryptic. llvm-svn: 64399
-
Daniel Dunbar authored
llvm-svn: 64397
-
Douglas Gregor authored
llvm-svn: 64396
-
-
Douglas Gregor authored
union subobject initialization before checking whether the next initiailizer was actually a designated initializer. This led to spurious "excess elements in union initializer" errors. Thanks to rdivacky for reporting the bug! llvm-svn: 64392
-
Fariborz Jahanian authored
to a base class (nonfragile abi ir gen bug). llvm-svn: 64391
-
Mike Stump authored
tried to put FIXMEs on the most important things to fix up. Lots left to do including more codegen, more documentation and cleaning code and style cleanups. llvm-svn: 64390
-
Steve Naroff authored
llvm-svn: 64389
-
Dan Gohman authored
when the loop has exactly one exit, and make use of it in LoopIndexSplit. llvm-svn: 64388
-
Anders Carlsson authored
llvm-svn: 64387
-
Fariborz Jahanian authored
abi for objective-c programs. llvm-svn: 64386
-
Steve Naroff authored
- rename isObjCIdType/isObjCClassType -> isObjCIdStructType/isObjCClassStructType. The previous name didn't do what you would expect. - add back isObjCIdType/isObjCClassType to do what you would expect. Not currently used, however many of the isObjCIdStructType/isObjCClassStructType clients could be converted over time. - move static Sema function areComparableObjCInterfaces to ASTContext (renamed to areComparableObjCPointerTypes, since it now operates on pointer types). llvm-svn: 64385
-
Chris Lattner authored
llvm-svn: 64384
-
Chris Lattner authored
llvm-svn: 64383
-
Chris Lattner authored
leaving them in the DAG and then getting selection errors. This is a fix for PR3538. llvm-svn: 64382
-
Dan Gohman authored
llvm-svn: 64381
-
Daniel Dunbar authored
llvm-svn: 64380
-