summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Removed bogus "return true" in Expr::isConstantExpr that returned true for allTed Kremenek2008-05-151-1/+0
| | | | | | | | | | expressions. This appears to be a regression introduced in r51113 that caused many test cases to fail (there is still a test case in the Analysis directory that is failing): http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20080512/005706.html llvm-svn: 51164
* Fix rewriter bug <rdar://problem/5929344> clang ObjC rewriter: "extern int ↵Steve Naroff2008-05-152-4/+6
| | | | | | | | __CFConstantStringClassReference[];" should be extern "C". Have clang predefine OBJC_NEW_PROPERTIES (which is what gcc does). llvm-svn: 51163
* Allow an extra bit for CommonLinkage.Dale Johannesen2008-05-151-1/+1
| | | | | | | | This changes the .bc file format, but if I understand how it works correctly, old .bc files continue to be readable. llvm-svn: 51161
* Actually scalarize the operand to BIT_CONVERT instead of asking someone to doNate Begeman2008-05-151-1/+2
| | | | | | something with a v1 type. llvm-svn: 51160
* Reverting r51100...I need to use VC++ 2005.Steve Naroff2008-05-151-11/+172
| | | | llvm-svn: 51159
* Revert...Steve Naroff2008-05-159-9/+9
| | | | | | | | | | | | | Author: akirtzidis Date: Wed May 14 05:00:15 2008 New Revision: 51101 URL: http://llvm.org/viewvc/llvm-project?rev=51101&view=rev Log: Upgrading VC++ projects to VC++ 2008. I really need to build with VC++ 2005. llvm-svn: 51158
* IR support for extractvalue and insertvalue instructions. Also, beginDan Gohman2008-05-1515-360/+946
| | | | | | moving toward making structs and arrays first-class types. llvm-svn: 51157
* Use static and anonymous namespaces consistently with other passes.Dan Gohman2008-05-151-8/+8
| | | | llvm-svn: 51156
* Revert 51067 check-in for now.Devang Patel2008-05-1531-229/+220
| | | | llvm-svn: 51155
* Remove useless check.Devang Patel2008-05-151-6/+2
| | | | | | Patch by Matthijs Kooijman. llvm-svn: 51154
* Make isFileVarDecl() return true when the VarDecl is in a C++ namespace.Argyrios Kyrtzidis2008-05-151-1/+2
| | | | llvm-svn: 51153
* Disable JIT symbol table for now.Evan Cheng2008-05-151-1/+1
| | | | llvm-svn: 51152
* Comments fix.Argyrios Kyrtzidis2008-05-152-2/+2
| | | | llvm-svn: 51151
* Use of UINT_MAX requires climits, at least whenDuncan Sands2008-05-151-0/+1
| | | | | | compiling with gcc 4.3. llvm-svn: 51145
OpenPOWER on IntegriCloud