| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Improve style. | Owen Anderson | 2009-06-12 | 1 | -16/+16 | |
| | | | | | llvm-svn: 73258 | |||||
| * | This is supposed to be a preorder numbering of the dominator tree, not the CFG. | Owen Anderson | 2009-06-12 | 1 | -4/+5 | |
| | | | | | llvm-svn: 73257 | |||||
| * | Now with less iterator invalidation, and other forms of crashing! | Owen Anderson | 2009-06-12 | 1 | -3/+6 | |
| | | | | | llvm-svn: 73256 | |||||
| * | If killed register is defined by implicit_def, do not clear it since it's ↵ | Evan Cheng | 2009-06-12 | 1 | -5/+12 | |
| | | | | | | | live range may overlap another def of same register. llvm-svn: 73255 | |||||
| * | second half of fix for PR4366: don't zap store to null of | Chris Lattner | 2009-06-12 | 1 | -3/+7 | |
| | | | | | | | non-default addrspaces. llvm-svn: 73253 | |||||
| * | Mark some pattern-less instructions as neverHasSideEffects. | Evan Cheng | 2009-06-12 | 3 | -1/+9 | |
| | | | | | llvm-svn: 73252 | |||||
| * | Clear AbstractInstanceRootMap at the end of the function. | Devang Patel | 2009-06-12 | 1 | -0/+1 | |
| | | | | | llvm-svn: 73244 | |||||
| * | Don't do (x - (y - z)) --> (x + (z - y)) on floating-point types, because | Dan Gohman | 2009-06-12 | 1 | -15/+0 | |
| | | | | | | | it may round differently. This fixes PR4374. llvm-svn: 73243 | |||||
| * | Give Instruction::isSameOperationAs a corresponding comment to note | Dan Gohman | 2009-06-12 | 2 | -4/+8 | |
| | | | | | | | | | | | | the relationship with MergeFunctions.cpp's isEquivalentOperation, and make a trivial code reordering so that the two functions are easier to compare. Fix the name of Instruction::isSameOperationAs in MergeFunction.cpp's isEquivalentOperation's comment, and fix a nearby 80-column violation. llvm-svn: 73241 | |||||
| * | Keep callers of a weak function calling it, instead of the non-weak equivalent. | Nick Lewycky | 2009-06-12 | 1 | -0/+1 | |
| | | | | | llvm-svn: 73235 | |||||
| * | Fix Bug 4278: X86-64 with -tailcallopt calling convention | Arnold Schwaighofer | 2009-06-12 | 3 | -50/+2 | |
| | | | | | | | | | | | | | | | | out of sync with regular cc. The only difference between the tail call cc and the normal cc was that one parameter register - R9 - was reserved for calling functions through a function pointer. After time the tail call cc has gotten out of sync with the regular cc. We can use R11 which is also caller saved but not used as parameter register for potential function pointers and remove the special tail call cc on x86-64. llvm-svn: 73233 | |||||
| * | Don't forget to match the calling convention when producing a thunk. | Nick Lewycky | 2009-06-12 | 1 | -2/+2 | |
| | | | | | llvm-svn: 73231 | |||||
| * | Given two identical weak functions, produce one internal function and two weak | Nick Lewycky | 2009-06-12 | 1 | -4/+17 | |
| | | | | | | | thunks. llvm-svn: 73230 | |||||
| * | After obtaining the lock, look if the function has been codegen'd by | Nicolas Geoffray | 2009-06-12 | 1 | -0/+5 | |
| | | | | | | | another thread. llvm-svn: 73227 | |||||
| * | Add an "are types equivalent" operation that ignores the types that a pointer | Nick Lewycky | 2009-06-12 | 1 | -99/+354 | |
| | | | | | | | | | | | | | | | | points to while analyzing all other fields. Use FoldingSetNodeID to produce a good hash. This dramatically decreases run times. Emit thunks. This means that it can look at all functions regardless of what the linkage is or if the address is taken, but unfortunately some small functions can be even shorter than the thunk because our backend doesn't yet realize it can just turn these into jumps. This means that this pass will pessimize code on average. llvm-svn: 73222 | |||||
| * | Don't remove aggregate-typed module level constants before encoding functions | Nick Lewycky | 2009-06-12 | 3 | -31/+0 | |
| | | | | | | | since functions may contain aggregate constants too. llvm-svn: 73220 | |||||
| * | Misc x86 README updates: remove a couple of already-fixed issues, | Eli Friedman | 2009-06-11 | 1 | -57/+57 | |
| | | | | | | | add a few suggestions from looking at some assembly code. llvm-svn: 73210 | |||||
| * | Use forward declarations and move TargetELFWriterInfo impl to a new file. | Bruno Cardoso Lopes | 2009-06-11 | 3 | -2/+37 | |
| | | | | | llvm-svn: 73209 | |||||
| * | Support for ELF Visibility | Bruno Cardoso Lopes | 2009-06-11 | 7 | -98/+319 | |
| | | | | | | | | | Emission for globals, using the correct data sections Function alignment can be computed for each target using TargetELFWriterInfo Some small fixes llvm-svn: 73201 | |||||
| * | Fix 4366: store to null in non-default addr space should not be | Chris Lattner | 2009-06-11 | 1 | -1/+2 | |
| | | | | | | | turned into unreachable. llvm-svn: 73195 | |||||
| * | Generate libcalls for floating point arithmetic and casting operations. | Sanjiv Gupta | 2009-06-11 | 1 | -1/+22 | |
| | | | | | llvm-svn: 73194 | |||||
| * | Cosmetic changes to parameter attribute verification. | Duncan Sands | 2009-06-11 | 1 | -17/+18 | |
| | | | | | llvm-svn: 73188 | |||||
| * | Avoid leaking memory in an error path. Noticed | Duncan Sands | 2009-06-11 | 1 | -3/+4 | |
| | | | | | | | by cppcheck. llvm-svn: 73187 | |||||
| * | More formatting. | Sanjiv Gupta | 2009-06-11 | 1 | -3/+13 | |
| | | | | | llvm-svn: 73185 | |||||
| * | Fixed source comments. No functionality change. | Sanjiv Gupta | 2009-06-11 | 1 | -5/+15 | |
| | | | | | llvm-svn: 73184 | |||||
| * | CMake: Updated list of files on lib/CodeGen/CMakeLists.txt. | Oscar Fuentes | 2009-06-10 | 1 | -0/+1 | |
| | | | | | llvm-svn: 73174 | |||||
| * | Implement and use new method Function::hasAddressTaken(). | Jay Foad | 2009-06-10 | 4 | -38/+17 | |
| | | | | | llvm-svn: 73164 | |||||
| * | Remove warnings: no newline at end of file. | Sanjiv Gupta | 2009-06-10 | 1 | -1/+2 | |
| | | | | | llvm-svn: 73156 | |||||
| * | Silence a warning | Anton Korobeynikov | 2009-06-09 | 1 | -1/+1 | |
| | | | | | llvm-svn: 73152 | |||||
| * | Remove an unused function SafeToDestroyConstant(). Rename an almost | Jay Foad | 2009-06-09 | 2 | -24/+9 | |
| | | | | | | | | identical function ConstantIsDead() to SafeToDestroyConstant(), to emphasise the connection with Constant::destroyConstant(). llvm-svn: 73149 | |||||
| * | Simplified logic of this if-then statement to reduce nesting. No functionality | Bill Wendling | 2009-06-09 | 1 | -44/+46 | |
| | | | | | | | change. llvm-svn: 73143 | |||||
| * | Add the beginnings of an implementatation of lazy liveness analysis, based ↵ | Owen Anderson | 2009-06-09 | 1 | -0/+153 | |
| | | | | | | | | | on "Fast Liveness Checking for SSA-form Programs" by Boissinot, et al. This is still very early, hasn't been tested, and is not yet well documented. More to come soon. llvm-svn: 73141 | |||||
| * | Use expandCodeFor instead of expand when the result will be | Dan Gohman | 2009-06-09 | 1 | -29/+18 | |
| | | | | | | | | | | immediately casted. At present, this is just a minor code simplification. In the future, the expansion code may be able to make better choices if it knows what the desired result type will be. llvm-svn: 73137 | |||||
| * | PIC16 emits auto variables as globals. When optimizer removes a function ↵ | Sanjiv Gupta | 2009-06-09 | 3 | -1/+40 | |
| | | | | | | | entierly by estimating its side effects on globals, those globals(autos) without a function were not being printed by the Asm printer. llvm-svn: 73135 | |||||
| * | Typo | Anton Korobeynikov | 2009-06-08 | 1 | -1/+1 | |
| | | | | | llvm-svn: 73098 | |||||
| * | Revert hunk commited by accident | Anton Korobeynikov | 2009-06-08 | 1 | -7/+2 | |
| | | | | | llvm-svn: 73097 | |||||
| * | The attached patches implement most of the ARM AAPCS-VFP hard float | Anton Korobeynikov | 2009-06-08 | 7 | -12/+111 | |
| | | | | | | | | | | ABI. The missing piece is support for putting "homogeneous aggregates" into registers. Patch by Sandeep Patel! llvm-svn: 73095 | |||||
| * | Separate V6 from V6T2 since the latter has some extra nice instructions | Anton Korobeynikov | 2009-06-08 | 2 | -3/+8 | |
| | | | | | llvm-svn: 73085 | |||||
| * | Add helper for checking of Thumb1 mode | Anton Korobeynikov | 2009-06-08 | 1 | -0/+1 | |
| | | | | | llvm-svn: 73080 | |||||
| * | Revert r72898. It does not solve the problem I want it to solve. | Bill Wendling | 2009-06-08 | 1 | -16/+15 | |
| | | | | | llvm-svn: 73075 | |||||
| * | Delete comment and fix typo | Bruno Cardoso Lopes | 2009-06-07 | 2 | -2/+1 | |
| | | | | | llvm-svn: 73040 | |||||
| * | Fix wrong elf class and byte order initializations. | Bruno Cardoso Lopes | 2009-06-07 | 1 | -2/+2 | |
| | | | | | llvm-svn: 73039 | |||||
| * | Simple ELF32/64 binary files can now be emitted for x86 and x86_64 without | Bruno Cardoso Lopes | 2009-06-07 | 5 | -59/+162 | |
| | | | | | | | relocation sections. llvm-svn: 73038 | |||||
| * | Tweak the expansion code for BIT_CONVERT to generate better code | Eli Friedman | 2009-06-07 | 1 | -0/+20 | |
| | | | | | | | converting from an MMX vector to an i64. llvm-svn: 73024 | |||||
| * | Get rid of some unnecessary code. | Eli Friedman | 2009-06-07 | 1 | -25/+0 | |
| | | | | | llvm-svn: 73017 | |||||
| * | Create FunctionType::isValidArgumentType to go along with isValidReturnType. | Nick Lewycky | 2009-06-07 | 2 | -30/+74 | |
| | | | | | | | | | | | | | | | | Also create isValidElementType for ArrayType, PointerType, StructType and VectorType. Make LLParser use them. This closes up some holes like an assertion failure on: %x = type {label} but largely doesn't change any semantics. The only thing we accept now which we didn't before is vectors of opaque type such as "<4 x opaque>". The opaque can be resolved to an int or float when linking. llvm-svn: 73016 | |||||
| * | Slightly generalize the code that handles shuffles of consecutive loads | Eli Friedman | 2009-06-07 | 2 | -182/+76 | |
| | | | | | | | | | | | | on x86 to handle more cases. Fix a bug in said code that would cause it to read past the end of an object. Rewrite the code in SelectionDAGLegalize::ExpandBUILD_VECTOR to be a bit more general. Remove PerformBuildVectorCombine, which is no longer necessary with these changes. In addition to simplifying the code, with this change, we can now catch a few more cases of consecutive loads. llvm-svn: 73012 | |||||
| * | Remove cyclic MDNode detection. Any attempt to create a cyclic MDNode will | Nick Lewycky | 2009-06-07 | 1 | -57/+16 | |
| | | | | | | | crash LLVM first. llvm-svn: 73011 | |||||
| * | Refuse metadata* type for function arguments. | Nick Lewycky | 2009-06-07 | 1 | -1/+3 | |
| | | | | | llvm-svn: 73010 | |||||
| * | PR3628: Add patterns to match SHL/SRL/SRA to the corresponding Altivec | Eli Friedman | 2009-06-07 | 1 | -0/+22 | |
| | | | | | | | instructions. llvm-svn: 73009 | |||||

