summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* ARM/MC/ELF relocation "hello world" for movw/movt.Jason W Kim2010-12-012-45/+172
| | | | | | | | | | | Lifted adjustFixupValue() from Darwin for sharing w ELF. Test added TODO: refactor ELFObjectWriter::RecordRelocation more. Possibly share more code with Darwin? Lots more relocations... llvm-svn: 120534
* Formatting. It's all the rage!Bill Wendling2010-12-011-35/+37
| | | | llvm-svn: 120533
* More refactoring. This time the T1pI pattern.Bill Wendling2010-12-011-131/+96
| | | | llvm-svn: 120532
* Refactor load/store handling again. Simplify and make some room forEric Christopher2010-12-011-103/+60
| | | | | | reg+reg handling. llvm-svn: 120526
* Initialize an ARMConstantPoolValue field.Jan Wen Voung2010-12-011-1/+1
| | | | llvm-svn: 120525
* s/T1pIEncode/T1pILdStEncode/gBill Wendling2010-12-012-62/+62
| | | | | | s/T1pIEncodeImm/T1pILdStEncodeImm/g llvm-svn: 120524
* Renaming variables to coincide with documentation. No functionality change.Bill Wendling2010-12-012-21/+21
| | | | llvm-svn: 120522
* fix a bozo bug I introduced in r119930, causing a miscompile ofChris Lattner2010-12-011-1/+2
| | | | | | | 20040709-1.c from the gcc testsuite. I was using the size of a pointer instead of the pointee. This fixes rdar://8713376 llvm-svn: 120519
* Refactor T1sI and T1sIt encodings into helper classes.Bill Wendling2010-12-011-93/+78
| | | | llvm-svn: 120518
* Support/PathV2: Add replace_extension implementation.Michael J. Spencer2010-12-011-0/+20
| | | | llvm-svn: 120514
* Support/PathV2: Add remove_filename implementation.Michael J. Spencer2010-12-011-0/+8
| | | | llvm-svn: 120513
* Refactor the T1sIt encodings into a parent class to get rid of all of the "let"Bill Wendling2010-12-011-131/+85
| | | | | | statements. llvm-svn: 120512
* Use by-name rather than by-order matching for NEON operands.Owen Anderson2010-12-011-318/+318
| | | | llvm-svn: 120507
* Comment typo.Andrew Trick2010-11-301-1/+1
| | | | llvm-svn: 120504
* Enable sibling call optimization of libcalls which are expanded duringEvan Cheng2010-11-309-68/+147
| | | | | | | | | | | legalization time. Since at legalization time there is no mapping from SDNode back to the corresponding LLVM instruction and the return SDNode is target specific, this requires a target hook to check for eligibility. Only x86 and ARM support this form of sibcall optimization right now. rdar://8707777 llvm-svn: 120501
* Rename operands to match ARM documentation. No functionality change.Bill Wendling2010-11-302-101/+105
| | | | llvm-svn: 120500
* Fix typo.Jim Grosbach2010-11-301-1/+1
| | | | llvm-svn: 120499
* Enhance DSE to handle the variable index case in PR8657.Chris Lattner2010-11-301-2/+31
| | | | llvm-svn: 120498
* Trailing whitespace.Jim Grosbach2010-11-301-3/+3
| | | | llvm-svn: 120497
* Support/PathV2: Implement reverse iteration and parent_path.Michael J. Spencer2010-11-301-8/+115
| | | | llvm-svn: 120496
* Support/ADT/StringRef: Add find_last_of.Michael J. Spencer2010-11-301-0/+15
| | | | llvm-svn: 120495
* Thanks to JimG for catching this!Jason W Kim2010-11-301-0/+2
| | | | llvm-svn: 120494
* Coding style. No significant functionality. Abandon linear scan styleAndrew Trick2010-11-304-524/+548
| | | | | | | | in favor of the widespread llvm style. Capitalize variables and add newlines for visual parsing. Rename variables for readability. And other cleanup. llvm-svn: 120490
* Inline classes that were used in only one place.Bill Wendling2010-11-301-5/+2
| | | | llvm-svn: 120488
* teach DSE to use GetPointerBaseWithConstantOffset to analyzeChris Lattner2010-11-301-16/+49
| | | | | | | | may-aliasing stores that partially overlap with different base pointers. This implements PR6043 and the non-variable part of PR8657 llvm-svn: 120485
* * Add support for encoding t_addrmode_s2 and t_addrmode_s1. They are the same asBill Wendling2010-11-305-90/+151
| | | | | | | | | | t_addrmode_s4, but with a different scaling factor. * Encode the Thumb1 load and store instructions. This involved a bit of refactoring (hi, Chris! :-). Some of the patterns became dead afterwards and were removed. llvm-svn: 120482
* Simplify the encoding of reg+/-imm12 values that allow PC-relative encoding. ↵Owen Anderson2010-11-304-88/+16
| | | | | | | | | This allows the Thumb2 encoding to share code with the ARM encoding, which gets use fixup support for free. It also allows us to fold away at least one codegen-only pattern. llvm-svn: 120481
* Fix handling of ARM negative pc-relative fixups for loads and stores.Jim Grosbach2010-11-302-9/+36
| | | | llvm-svn: 120480
* move GetPointerBaseWithConstantOffset out of GVN into ValueTracking.hChris Lattner2010-11-302-58/+53
| | | | llvm-svn: 120476
* remove a fixed fixmeChris Lattner2010-11-301-2/+0
| | | | llvm-svn: 120474
* Make DeleteDeadInstruction be a static function, move some code around.Chris Lattner2010-11-301-59/+64
| | | | llvm-svn: 120471
* Move X86InstrFPStack.td over to PseudoI as well.Eric Christopher2010-11-301-27/+9
| | | | llvm-svn: 120470
* switch RemoveAccessedObjects to use AliasAnalysis::Location to simplifyChris Lattner2010-11-301-17/+13
| | | | | | | the code. We now get accurate sizes on Loads, though it surely doesn't matter in practice. llvm-svn: 120469
* two improvements to RemoveAccessedObjects:Chris Lattner2010-11-301-28/+7
| | | | | | | | | | | | | 1. if the underlying pointer passed in can be resolved to any argument or alloca, then we don't need to scan. Previously we would only avoid the scan if the alloca or byval was actually considered dead. 2. The dead store processing code is itself completely dead and didn't handle volatile stores right anyway, so delete it. This allows simplifying the interface to RemoveAccessedObjects. llvm-svn: 120467
* Migrate X86InstrControl.td to use PseudoI and fix a couple of 80-col violationsEric Christopher2010-11-301-19/+15
| | | | | | while I'm in there. llvm-svn: 120466
* remove the "undead" terminology, which is nonstandard and never Chris Lattner2010-11-301-40/+47
| | | | | | | | made sense to me. We now have a set of dead stack objects, and they become live when loaded. Fix a theoretical problem where we'd pass in the wrong pointer to the alias query. llvm-svn: 120465
* move call handling in handleEndBlock up a bit, and simplify it.Chris Lattner2010-11-301-37/+40
| | | | | | | | If the call might read all the allocas, stop scanning early. Convert a vector to smallvector, shrink SmallPtrSet to 16 instead of 64 to avoid crazy linear scans. llvm-svn: 120463
* Avoid exponential growth of a table. It feels likeDale Johannesen2010-11-301-5/+22
| | | | | | there should be a better way to do this. PR 8679. llvm-svn: 120457
* Provide Thumb2 encodings for a few miscellaneous instructions.Owen Anderson2010-11-301-8/+22
| | | | llvm-svn: 120455
* various cleanups and code simplificationChris Lattner2010-11-301-87/+63
| | | | llvm-svn: 120454
* make getPointerSize a static function. Add ivars to DSE forChris Lattner2010-11-301-46/+42
| | | | | | AA and MD pass info instead of using getAnalysis<> all over. llvm-svn: 120453
* reduce indentation, clean up TD use a bit.Chris Lattner2010-11-301-28/+31
| | | | llvm-svn: 120452
* Add FIXMEJim Grosbach2010-11-301-0/+1
| | | | llvm-svn: 120451
* Add encoding support for Thumb2 PLD and PLI instructions.Owen Anderson2010-11-303-1/+43
| | | | llvm-svn: 120449
* Noticed this on inspection, fix and update some comments.Eric Christopher2010-11-301-3/+4
| | | | llvm-svn: 120447
* enhance isRemovable to refuse to delete volatile mem transfersChris Lattner2010-11-301-4/+19
| | | | | | | now that DSE hacks on them. This fixes a regression I introduced, by generalizing DSE to hack on transfers. llvm-svn: 120445
* Pseudo-ize ARM MOVPCRXJim Grosbach2010-11-302-8/+19
| | | | llvm-svn: 120442
* Provide encodings for a few more load/store variants.Owen Anderson2010-11-301-4/+16
| | | | llvm-svn: 120439
* Pseudo-ize BX_CALL and friends. Remove dead instruction format classes.Jim Grosbach2010-11-303-46/+66
| | | | | | rdar://8685712 llvm-svn: 120438
* add TLI support indicating that jumps are more expensive than logical operationsChris Lattner2010-11-302-1/+4
| | | | | | and use this to disable a specific optimization. Patch by Micah Villmow! llvm-svn: 120435
OpenPOWER on IntegriCloud