summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Support for trampolines, except for X86 codegen which isDuncan Sands2007-07-2715-5/+113
| | | | | | still under discussion. llvm-svn: 40549
* Move subreg lowering pass to be right after regalloc, per feedback.Christopher Lamb2007-07-271-4/+10
| | | | llvm-svn: 40548
* Reverting 40504 for now. It's breaking oggenc.Evan Cheng2007-07-273-35/+70
| | | | llvm-svn: 40547
* Fix thinko. Update return status appropriately.Devang Patel2007-07-261-1/+1
| | | | llvm-svn: 40546
* Fix a bug introduced in my last commit.Owen Anderson2007-07-261-1/+7
| | | | llvm-svn: 40542
* Fix a couple more bugs in the phi construction by pulling in code that doesOwen Anderson2007-07-262-61/+35
| | | | | | almost the same things from LCSSA. llvm-svn: 40540
* Make sure epilogue esp adjustment is placed before any terminator and pop ↵Evan Cheng2007-07-261-2/+3
| | | | | | instructions. llvm-svn: 40538
* Don't pollute the meaning of isUnpredicatedTerminator.Evan Cheng2007-07-261-7/+12
| | | | llvm-svn: 40537
* Minor bug.Evan Cheng2007-07-261-3/+3
| | | | llvm-svn: 40535
* Fix the alias analysis query in DAGCombiner to not add in twoDan Gohman2007-07-261-2/+2
| | | | | | | offsets. The SrcValueOffset values are the real offsets from the SrcValue base pointers. llvm-svn: 40534
* Move the GET_SIDE_EFFECT_INFO logic from isInstructionTriviallyDeadDan Gohman2007-07-262-11/+12
| | | | | | | to Instruction::mayWriteToMemory, fixing a FIXME, and helping various places that call mayWriteToMemory directly. llvm-svn: 40533
* Remove a bogus return statement, what appears to have been a pastoDan Gohman2007-07-261-1/+0
| | | | | | from Relation::contradicts in Relation::incorporate. llvm-svn: 40531
* DummyInst's member functions don't need to be virtual.Dan Gohman2007-07-261-2/+2
| | | | llvm-svn: 40530
* In the .loc directive, print the fields as "debug" fields, so theyDan Gohman2007-07-261-1/+1
| | | | | | don't get decorated as if for immediate fields for instructions. llvm-svn: 40529
* Fix a whitespace difference between CMPSSrr and CMPSDrr.Dan Gohman2007-07-261-2/+1
| | | | llvm-svn: 40528
* Add a MachineFunction pass, which runs post register allocation, that turns ↵Christopher Lamb2007-07-262-0/+230
| | | | | | subreg insert/extract instruction into register copies. This ensures correct code gen if the coalescer isn't able to remove all subreg instructions. llvm-svn: 40521
* Teach DAG scheduling how to properly emit subreg insert/extract machine ↵Christopher Lamb2007-07-261-0/+150
| | | | | | instructions. PR1350 llvm-svn: 40520
* Add target independent MachineInstr's to represent subreg insert/extract in ↵Christopher Lamb2007-07-261-0/+12
| | | | | | MBB's. PR1350 llvm-svn: 40518
* Same goes for constantpool, etc.Evan Cheng2007-07-261-5/+5
| | | | llvm-svn: 40517
* Add selection DAG nodes for subreg insert/extract. PR1350Christopher Lamb2007-07-263-2/+26
| | | | llvm-svn: 40516
* Remove subreg index from MachineInstr's and also keep vregs as unsigned when ↵Christopher Lamb2007-07-261-2/+0
| | | | | | adding operands. llvm-svn: 40514
* Fix infinite recursion for when extract_vector_elt is legal. Unfortunately ↵Christopher Lamb2007-07-261-1/+1
| | | | | | no public targets use this code-path, so no test. llvm-svn: 40510
* Add support for 3 element 32-bit vector ValueTypes.Christopher Lamb2007-07-261-0/+4
| | | | llvm-svn: 40506
* Remove X86ISD::LOAD_PACK and X86ISD::LOAD_UA and associated code from theDan Gohman2007-07-263-70/+35
| | | | | | | x86 target, replacing them with the new alignment attributes on memory references. llvm-svn: 40504
* Fix what is _hopefully_ the last corner case for loops.Owen Anderson2007-07-251-2/+6
| | | | llvm-svn: 40503
* Mac OS X x86-64 lower 4G address is not available.Evan Cheng2007-07-251-1/+2
| | | | llvm-svn: 40502
* Mac OS X should use 0x90 to fill in gaps to satisfy function alignment ↵Evan Cheng2007-07-251-3/+12
| | | | | | requirements. llvm-svn: 40501
* EmitAlignment() also emits optional fill value.Evan Cheng2007-07-251-2/+5
| | | | llvm-svn: 40500
* Functions with LinkOnce and weak linkage still need to be aligned. Doh.Evan Cheng2007-07-251-0/+1
| | | | llvm-svn: 40499
* My last commit was not correct for nested loops. Fix it, and add a testcase ↵Owen Anderson2007-07-251-1/+3
| | | | | | for it. llvm-svn: 40498
* Fix an infinite loop on 300.twolf.Owen Anderson2007-07-251-6/+17
| | | | llvm-svn: 40497
* Fix a bug in non-local memdep that was causing an infinite loop on 175.vpr.Owen Anderson2007-07-251-3/+12
| | | | llvm-svn: 40495
* Fix a bug that was causing GVN to crash on 252.eon.Owen Anderson2007-07-251-2/+9
| | | | llvm-svn: 40494
* Add basic support for performing whole-function RLE.Owen Anderson2007-07-252-42/+133
| | | | | | Note: This has not yet been thoroughly tested. Use at your own risk. llvm-svn: 40489
* Don't ignore the return value of AsmPrinter::doInitialization andDan Gohman2007-07-258-32/+23
| | | | | | AsmPrinter::doFinalization. llvm-svn: 40487
* Add BasicInliner interface. Devang Patel2007-07-253-246/+418
| | | | | | | This interface allows clients to inline bunch of functions with module level call graph information.:wq llvm-svn: 40486
* Fix debug info and globals filled with zeros.Nick Lewycky2007-07-252-13/+26
| | | | llvm-svn: 40483
* Minor cleanup:Anton Korobeynikov2007-07-252-2/+5
| | | | | | | - Split EH and debug infiormation - Make DwarfWriter more verbose in some cases llvm-svn: 40481
* Add const to CanBeFoldedBy, CheckAndMask, and CheckOrMask.Dan Gohman2007-07-242-4/+4
| | | | llvm-svn: 40480
* Use movaps to load a v4f32 build_vector of all-constant values into aDan Gohman2007-07-241-0/+9
| | | | | | register instead of loading each element individually. llvm-svn: 40478
* Add initial support for non-local memory dependence analysis.Owen Anderson2007-07-241-6/+53
| | | | | | NOTE: This has only been cursorily tested. Expected improvements soon. llvm-svn: 40476
* Make the copy constructor of SmallPtrSet much faster.Owen Anderson2007-07-241-22/+12
| | | | llvm-svn: 40474
* Heal EH handling stuff by emitting correct offsets to callee-saved registers.Anton Korobeynikov2007-07-241-1/+13
| | | | | | Pretty hackish, but code itself is dirty mess, so we won't make anything worse. :) llvm-svn: 40472
* Add a GVN pass, using the value numbering code I developed for GVNPRE and theOwen Anderson2007-07-241-0/+816
| | | | | | load elimination code from RedundantLoadElimination. llvm-svn: 40469
* Make output match actual condition tested. Thanks, Duncan.Reid Spencer2007-07-241-1/+1
| | | | llvm-svn: 40464
* Unreachable block is not a root node in post dominator tree.Devang Patel2007-07-241-2/+6
| | | | llvm-svn: 40458
* Rename a lot of things to change FastDLE to RedundantLoadElimination.Owen Anderson2007-07-241-7/+7
| | | | llvm-svn: 40457
* Rename FastDLE as RedundantLoadElimination.Owen Anderson2007-07-241-0/+0
| | | | llvm-svn: 40456
* 1. Make sure we print the Function Value for parameter attribute errorsReid Spencer2007-07-231-10/+10
| | | | | | 2. Fold an if statement into the Assert1 macro call. llvm-svn: 40455
* Add better verification of attributes on function types. It is not permittedReid Spencer2007-07-231-0/+9
| | | | | | | | to use sret or inreg on the function. It is equally illegal to use noreturn or nounwind on a parameter; they only go with the function. This patch enforces these rules. llvm-svn: 40453
OpenPOWER on IntegriCloud