summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Revert constant-folding change that will miscompile in some cases.Nick Lewycky2008-05-172-31/+0
| | | | llvm-svn: 51223
* trip count computation deficiencyChris Lattner2008-05-171-0/+9
| | | | llvm-svn: 51222
* On Darwin, the string header file isn't 64-bit clean. The use ofBill Wendling2008-05-171-3/+3
| | | | | | | | | | | | | | | | | | | "-Wshorten-64-to-32 -Werror" will cause a failure when compiling this complex program: #include <string> class Path { mutable std::string path; public: bool operator == (const Path &that) { return path == that.path; } }; Using strcmp gets us past this annoying error. llvm-svn: 51218
* Unbreak the build.Nick Lewycky2008-05-171-1/+1
| | | | llvm-svn: 51217
* Constant fold inttoptr and ptrtoint.Nick Lewycky2008-05-172-0/+31
| | | | llvm-svn: 51216
* Move isTrueWhenEqual to ICmpInst.Nick Lewycky2008-05-172-20/+20
| | | | llvm-svn: 51215
* Micro-optimization when checking for panic functions.Ted Kremenek2008-05-171-1/+4
| | | | llvm-svn: 51214
* Fix 80 col violation.Ted Kremenek2008-05-171-1/+3
| | | | llvm-svn: 51213
* Added panic function _XCAssertionFailureHandler.Ted Kremenek2008-05-171-0/+4
| | | | llvm-svn: 51212
* Less conservative verison of previous patch,Dale Johannesen2008-05-161-2/+2
| | | | | | suggested by Duncan. llvm-svn: 51211
* Add CommonLinkage, in a way that preserves theDale Johannesen2008-05-161-0/+3
| | | | | | behavior on old .bc files. llvm-svn: 51210
* Add CommonLinkage to lto (treated same as weak AFAICT)Dale Johannesen2008-05-162-1/+4
| | | | | | and llvm-nm (prints as C). llvm-svn: 51209
* Add CommonLinkage.Dale Johannesen2008-05-161-1/+2
| | | | llvm-svn: 51208
* Weak functions not declared non-throwing might beDale Johannesen2008-05-161-1/+3
| | | | | | | | | replaced at linktime with a body that throws, even if the body in this file does not. Make PruneEH be more conservative in this case. g++.dg/eh/weak1.C llvm-svn: 51207
* Add functions to enable adding a single attribute to a function andEric Christopher2008-05-164-0/+27
| | | | | | its associated call site. llvm-svn: 51204
* Backout of codegen-based fix to PR2334; this has been fixed differently Eli Friedman2008-05-161-4/+2
| | | | | | at the Sema layer. llvm-svn: 51203
* Sema-based fix for PR2334. The issue is that even if the two sides of Eli Friedman2008-05-161-2/+5
| | | | | | | | | | the condidtional have compatible types, they are not necessarily the same type. Therefore, we cast to the composite type. As a hack, for the moment we assume that the composite type is the type of the left-hand expression; this isn't correct, but it's good enough for most purposes. llvm-svn: 51202
* Record weak external linkage in a case where we wereDale Johannesen2008-05-161-0/+12
| | | | | | | missing it. gcc.dg/darwin-weakimport-2.c. Handle common and weak differently for darwin ppc32. llvm-svn: 51201
* API change for {BinaryOperator|CmpInst|CastInst}::create*() --> Create. ↵Gabor Greif2008-05-1631-524/+617
| | | | | | Legacy interfaces will be in place for some time. (Merge from use-diet branch.) llvm-svn: 51200
* Fix some prototypes, and implement some builtins until we have our header ↵Nate Begeman2008-05-162-4/+7
| | | | | | files completed. llvm-svn: 51199
* Cache leaks by the allocation site, not the leak location.Ted Kremenek2008-05-161-28/+58
| | | | llvm-svn: 51198
* Partitioned BugTypeCachedLocation::isCached() into two methods: one that ↵Ted Kremenek2008-05-162-1/+7
| | | | | | | | accepts and ExplodedNode, and the other that accepts a ProgramPoint. The default behavior is to cache bug reports by the location they occur (the end node). Subclasses can override this behavior by providing a different ProgramPoint. llvm-svn: 51197
* Review nit.Eli Friedman2008-05-161-2/+2
| | | | llvm-svn: 51196
* Clean up ownership per review comment.Eli Friedman2008-05-161-24/+13
| | | | llvm-svn: 51195
* Fix review nit.Eli Friedman2008-05-161-1/+2
| | | | llvm-svn: 51194
* Patch for PR2334, and a similar ObjC bug.Eli Friedman2008-05-162-2/+9
| | | | llvm-svn: 51193
* If the result of a BIT_CONVERT is a v1* vector, it doesn't mean its source ↵Evan Cheng2008-05-161-3/+6
| | | | | | is a v1* vector. llvm-svn: 51192
* Fix test.Evan Cheng2008-05-161-1/+1
| | | | llvm-svn: 51191
* Added CFGBlock::hasBinaryBranchTerminator().Ted Kremenek2008-05-162-0/+26
| | | | llvm-svn: 51190
* Minor cleanup to isBuiltinConstantExpr.Eli Friedman2008-05-161-7/+2
| | | | llvm-svn: 51188
* Bill pointed out that system headers should beDuncan Sands2008-05-161-1/+1
| | | | | | included after local headers. llvm-svn: 51187
* Silence the compiler warning differently. TheDuncan Sands2008-05-161-1/+1
| | | | | | original method caused gcc-4.2 to complain. llvm-svn: 51186
* Re-enable tail duplication pass (now with default threshold down to 1 ↵Evan Cheng2008-05-161-0/+1
| | | | | | instruction). llvm-svn: 51184
* Do not dup malloc, vector instructions, etc. Throttle the default theshold ↵Evan Cheng2008-05-161-5/+15
| | | | | | way down. llvm-svn: 51183
* Remove ADCE's ability to delete loops. This ability is now implemented in aOwen Anderson2008-05-161-4/+21
| | | | | | safer manner by loop deletion. llvm-svn: 51182
* Move this test from ADCE to loop deletion, where it is more appropriate.Owen Anderson2008-05-161-1/+1
| | | | llvm-svn: 51181
* Use loop deletion instead of ADCE in these tests.Owen Anderson2008-05-162-2/+2
| | | | llvm-svn: 51180
* Clean ups for loop deletion based on Chris' feedback.Owen Anderson2008-05-161-28/+32
| | | | | | | Also, use SCEV to determine the trip count of the loop, which is more powerful and accurate that Loop::getTripCount. llvm-svn: 51179
* Use loop deletion instead of ADCE for removing loops.Owen Anderson2008-05-164-4/+4
| | | | llvm-svn: 51178
* Fix this test. It was testing broken behavior in that it required ADCE to ↵Owen Anderson2008-05-161-3/+2
| | | | | | | | | eliminate a potentially infinite loop, which is undesirable. Instead, test the LICM behavior that we're really interested in. llvm-svn: 51177
* implement PR2328.Chris Lattner2008-05-162-2/+16
| | | | llvm-svn: 51176
* Use common where we mean common, not weak.Dale Johannesen2008-05-161-1/+1
| | | | llvm-svn: 51173
* Treat common as distinct from weak global on Darwin x86.Dale Johannesen2008-05-161-0/+10
| | | | llvm-svn: 51172
* Revert the change from r51157 inDan Gohman2008-05-162-4/+4
| | | | | | | | test/Verifier/2002-11-05-GetelementptrPointers.ll, which was incorrect. Instead, fix getIndexedType to not follow pointer types, as PointerType is a subclass of CompositeType. llvm-svn: 51171
* Update comments based on Duncan's feedback.Dan Gohman2008-05-151-23/+23
| | | | llvm-svn: 51170
* Fix a bug in LoopStrengthReduce that caused it to emit IR withDan Gohman2008-05-152-3/+42
| | | | | | | | | | | | | | | | | use-before-def. The problem comes up in code with multiple PHIs where one PHI is being rewritten in terms of the other, but the other needs to be casted first. LLVM rules requre the cast instruction to be inserted after any PHI instructions, but when instructions were inserted to replace the second PHI value with a function of the first, they were ended up going before the cast instruction. Avoid this problem by remembering the location of the cast instruction, when one is needed, and inserting the expansion of the new value after it. This fixes a bug that surfaced in 255.vortex on x86-64 when instcombine was removed from the middle of the loop optimization passes. llvm-svn: 51169
* Fixed another regression introduced by r51113 caused by some refactoringTed Kremenek2008-05-151-3/+3
| | | | | | | | | | | | | | in Sema::CheckFunctionCall: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20080512/005706.html The bug was that the logic from the helper methods used by CheckFunctionCall were being inverted (a subtle bug). This would cause the parser to discard any valid AST nodes involving several builtins (see patch). This removes the last regression failure I'm seeing in the test suite: Analysis-Apple/NoReturn. llvm-svn: 51168
* Remove the S92 code, which really has nothing to doDale Johannesen2008-05-151-7/+0
| | | | | | with what the test is testing; makes it pass again on ppc32. llvm-svn: 51167
* Evan has implemented this on ppc, so run the test there.Dale Johannesen2008-05-151-2/+2
| | | | llvm-svn: 51166
* Fix typos and comments.Evan Cheng2008-05-154-6/+6
| | | | llvm-svn: 51165
OpenPOWER on IntegriCloud