summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Fixes for generation of ELF relocations. Patch by Roman Divacky.Eli Friedman2010-08-161-6/+18
| | | | llvm-svn: 111183
* Don't attempt to SimplifyShortMoveForm in 64-bit mode.Eli Friedman2010-08-161-9/+13
| | | | llvm-svn: 111182
* Until uleb/sleb are MC-ized, add a hack to make them work with ELF objectEli Friedman2010-08-161-2/+2
| | | | | | emission. llvm-svn: 111177
* Fix a few warnings in and detabify MCELFStreamer and ELFObjectWriter.Eli Friedman2010-08-162-17/+18
| | | | llvm-svn: 111175
* Add ELF ObjectWriter and Streamer support.Matt Fleming2010-08-162-0/+1433
| | | | | | I forgot to add these files in commit 111172. llvm-svn: 111174
* Hookup ELF support for X86.Matt Fleming2010-08-162-6/+14
| | | | llvm-svn: 111173
* Add ELF ObjectWriter and Streamer support.Matt Fleming2010-08-162-2/+4
| | | | llvm-svn: 111172
* Layout helper function.Matt Fleming2010-08-161-0/+34
| | | | | | | | Introduce a helper method to add a section to the end of a layout. This will be used by the ELF ObjectWriter code to add the metadata sections (symbol table, etc) to the end of an object file. llvm-svn: 111171
* Record a symbol's size which is needed for ELF symbol tables.Matt Fleming2010-08-161-1/+2
| | | | llvm-svn: 111170
* Rename sat_shift operand to shift_imm, in preparation for using it for otherBob Wilson2010-08-165-14/+17
| | | | | | instructions besides saturate instructions. No functional changes. llvm-svn: 111168
* Partially revert r111155. It looks like MSVC is calling an operator<() thatJakob Stoklund Olesen2010-08-161-0/+3
| | | | | | clang says is unused. llvm-svn: 111167
* track local frame size in MFI, not local to the pass, since PEI needs it.Jim Grosbach2010-08-161-4/+1
| | | | llvm-svn: 111164
* Remove unused functions.Jakob Stoklund Olesen2010-08-162-35/+0
| | | | llvm-svn: 111156
* Remove unused functions.Jakob Stoklund Olesen2010-08-161-8/+0
| | | | llvm-svn: 111155
* Remove unused code.Bob Wilson2010-08-161-5/+0
| | | | llvm-svn: 111154
* To create a copy of a SmallVector with an element removed from theDan Gohman2010-08-161-6/+7
| | | | | | | | | middle, copy the elements in two groups, rather than copying all the elements and then doing an erase on the middle of the result. These are SmallVectors, so we shouldn't expect to hit dynamic allocation in the common case. llvm-svn: 111151
* silence a vc2010 warning: " result of 32-bit shift implicitly converted toChris Lattner2010-08-161-1/+1
| | | | | | 64 bits (was 64-bit shift intended?)", pointed out by 'nobled' on llvmdev llvm-svn: 111148
* Tidy whitespace.Dan Gohman2010-08-161-5/+4
| | | | llvm-svn: 111147
* Add a comment.Dan Gohman2010-08-161-0/+5
| | | | llvm-svn: 111145
* Use const_iterator in a few places.Dan Gohman2010-08-161-3/+3
| | | | llvm-svn: 111144
* Use iterators instead of indices in a few more places.Dan Gohman2010-08-161-6/+9
| | | | llvm-svn: 111143
* Micro-optimize SCEVConstant comparison.Dan Gohman2010-08-161-4/+4
| | | | llvm-svn: 111142
* Move SCEVNAryExpr's virtual member functions out of line, and convertDan Gohman2010-08-161-0/+33
| | | | | | them to iterators. llvm-svn: 111140
* Use iterators instead of indices in simple cases.Dan Gohman2010-08-161-6/+4
| | | | llvm-svn: 111138
* Avoid gratuitous inefficiency in ifndef NDEBUG code.Dan Gohman2010-08-161-8/+8
| | | | llvm-svn: 111137
* Make one getAddExpr call when analyzing a+b+c+d+e+... instead of oneDan Gohman2010-08-161-6/+31
| | | | | | for each add instruction. Ditto for Mul. llvm-svn: 111136
* Delete an unused function.Dan Gohman2010-08-161-35/+0
| | | | llvm-svn: 111135
* Instead of having CollectSubexpr's categorize operands as interesting orDan Gohman2010-08-161-19/+14
| | | | | | | | uninteresting, just put all the operands on one list and make GenerateReassociations make the decision about what's interesting. This is simpler, and it avoids an extra ScalarEvolution::getAddExpr call. llvm-svn: 111133
* Put add operands in ScalarEvolution-canonical order, when convenient.Dan Gohman2010-08-161-2/+2
| | | | | | | This isn't necessary, because ScalarEvolution sorts them anyway, but it's tidier this way. llvm-svn: 111132
* Add hooks to FoldingSetTrait to allow specializations to provideDan Gohman2010-08-161-35/+52
| | | | | | | | implementations of equality comparison and hash computation. This can be used to optimize node lookup by avoiding creating lots of temporary ID values just for hashing and comparison purposes. llvm-svn: 111130
* Reverse the order of GetNodeProfile's arguments, for consistencyDan Gohman2010-08-161-4/+4
| | | | | | with FoldingSetTrait::Profile. llvm-svn: 111127
* Avoid #include <ScalarEvolution.h> in LoopSimplify.cpp, which doesn'tDan Gohman2010-08-161-2/+1
| | | | | | actually use ScalarEvolution. llvm-svn: 111124
* Instead, teach SimplifyCFG to trim non-address-taken blocks fromDan Gohman2010-08-161-2/+3
| | | | | | indirectbr destination lists. llvm-svn: 111122
* Revert r111058, the lint check for indirectbr successors that aren'tDan Gohman2010-08-161-6/+0
| | | | | | | address-taken. This can occur normally, if the code which took the address got DCEd. llvm-svn: 111121
* Revert r111082. No warnings for this common pattern.Argyrios Kyrtzidis2010-08-155-10/+9
| | | | llvm-svn: 111102
* llvmc: remove dynamic plugins.Mikhail Glushenkov2010-08-153-118/+9
| | | | llvm-svn: 111094
* Rework how the non-sse2 memory barrier is lowered so that theEric Christopher2010-08-142-11/+22
| | | | | | | | encoding is correct for the built-in assembler. Based on a patch from Chris. llvm-svn: 111083
* Add ATTRIBUTE_UNUSED to methods that are not supposed to be used.Argyrios Kyrtzidis2010-08-145-9/+10
| | | | llvm-svn: 111082
* improve indentationChris Lattner2010-08-141-19/+18
| | | | llvm-svn: 111073
* T2I_rbin_irs rr variant is for disassembly only, so don't provide a pattern.Bob Wilson2010-08-141-1/+1
| | | | llvm-svn: 111068
* Update CMake build.Ted Kremenek2010-08-141-1/+1
| | | | llvm-svn: 111063
* LoopSimplify shouldn't split loop backedges that use indirectbr. PR7867.Dan Gohman2010-08-141-0/+5
| | | | llvm-svn: 111061
* Teach SimplifyCFG how to simplify indirectbr instructions.Dan Gohman2010-08-143-16/+45
| | | | | | | | | | | - Eliminate redundant successors. - Convert an indirectbr with one successor into a direct branch. Also, generalize SimplifyCFG to be able to be run on a function entry block. It knows quite a few simplifications which are applicable to the entry block, and it only needs a few checks to avoid trouble with the entry block. llvm-svn: 111060
* Add a local stack object block allocation pass. This is still anJim Grosbach2010-08-144-0/+218
| | | | | | | | | | | | | | | | | | experimental pass that allocates locals relative to one another before register allocation and then assigns them to actual stack slots as a block later in PEI. This will eventually allow targets with limited index offset range to allocate additional base registers (not just FP and SP) to more efficiently reference locals, as well as handle situations where locals cannot be referenced via SP or FP at all (dynamic stack realignment together with variable sized objects, for example). It's currently incomplete and almost certainly buggy. Work in progress. Disabled by default and gated via the -enable-local-stack-alloc command line option. rdar://8277890 llvm-svn: 111059
* Add a lint check for an indirectbr destination which has notDan Gohman2010-08-131-0/+6
| | | | | | had its address taken. llvm-svn: 111058
* Add a Thumb2 t2RSBrr instruction for disassembly only.Bob Wilson2010-08-131-5/+18
| | | | | | This fixes another part of PR7792. llvm-svn: 111057
* Clean up the Spiller.h interface.Jakob Stoklund Olesen2010-08-136-44/+31
| | | | | | | | | The earliestStart argument is entirely specific to linear scan allocation, and can be easily calculated by RegAllocLinearScan. Replace std::vector with SmallVector. llvm-svn: 111055
* Temporarily disable tail calls on ARM to work around some linker problems.Bob Wilson2010-08-131-0/+9
| | | | llvm-svn: 111050
* Move the Thumb2 SSAT and USAT optional shift operator out of theBob Wilson2010-08-132-39/+21
| | | | | | instruction opcode. This fixes part of PR7792. llvm-svn: 111047
* Various optimizations. Don't compare two loops' depthsDan Gohman2010-08-131-18/+26
| | | | | | | when they are the same loop. Don't compare two instructions' loop depths when they are in the same block. llvm-svn: 111045
OpenPOWER on IntegriCloud