summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Make MachineFrameInfo::print not crash when no TargetFrameInfo is available.Matthijs Kooijman2008-11-031-1/+2
| | | | llvm-svn: 58606
* Silence a compiler warning.Evan Cheng2008-11-031-1/+1
| | | | llvm-svn: 58598
* Replace explicit loop with utility function.Nick Lewycky2008-11-031-4/+2
| | | | llvm-svn: 58593
* Don't crash analyzing certain quadratics (addrec of {X,+,Y,+,1}).Nick Lewycky2008-11-031-0/+5
| | | | | | We're still waiting on code that actually analyzes them properly. llvm-svn: 58592
* Revert my last patch until I consult with Evan about it.Owen Anderson2008-11-031-10/+0
| | | | llvm-svn: 58591
* Changes from Duncan's review:Nick Lewycky2008-11-021-9/+28
| | | | | | | | * merge two weak functions by making them both alias a third non-weak fn * don't reimplement CallSite::hasArgument * whitelist the safe linkage types llvm-svn: 58568
* Silence a warningAnton Korobeynikov2008-11-021-4/+6
| | | | llvm-svn: 58563
* Get this building on 64 bit machines (error:Duncan Sands2008-11-021-5/+5
| | | | | | | cast from ‘const llvm::PointerType*’ to ‘unsigned int’ loses precision). llvm-svn: 58561
* Don't do pre-splitting if doing so would create a value join that did notOwen Anderson2008-11-021-0/+10
| | | | | | | | | exist before. Updating the live intervals in that care is tricky in the general case. Evan, if you see a tighter guard condition for this, let me know. llvm-svn: 58560
* CMake: added a source file.Oscar Fuentes2008-11-021-0/+1
| | | | llvm-svn: 58559
* Add a new MergeFunctions pass. It finds identical functions and merges them.Nick Lewycky2008-11-021-0/+358
| | | | | | | | This triggers only 60 times in llvm-test (look at .llvm.bc, not .linked.rbc) and so it probably wont be turned on by default. Also, may of those are likely to go away when PR2973 is fixed. llvm-svn: 58557
* Fix demanded bits analysis with srem by negative number. Based on a patchNick Lewycky2008-11-021-3/+3
| | | | | | by Richard Osborne. llvm-svn: 58555
* Fix this recently moved code to use the correct type. CI is now aDan Gohman2008-11-021-2/+2
| | | | | | | ConstantInt, and SI is the original cast instruction. This fixes PR2996. llvm-svn: 58549
* Added interface to allow clients to create a MemIntrinsicNode forMon P Wang2008-11-011-4/+17
| | | | | | target intrinsics that touches memory llvm-svn: 58548
* Reverting back 58505. Will commit it once I have the bc reader/writer/docsSanjiv Gupta2008-11-011-2/+1
| | | | | | ready. llvm-svn: 58547
* Whitespace fixes. No functionality change.Bill Wendling2008-10-311-27/+27
| | | | llvm-svn: 58539
* Invalidate debug/eh/gc labels when unreachable MBB is deleted.Anton Korobeynikov2008-10-311-13/+27
| | | | | | Based on patch by Martin Nowack! llvm-svn: 58536
* Add comment.Evan Cheng2008-10-311-0/+2
| | | | llvm-svn: 58533
* Use better data structure for ConstPoolId2AddrMap.Evan Cheng2008-10-312-15/+20
| | | | llvm-svn: 58532
* Actually make debug output understandable.Evan Cheng2008-10-311-4/+4
| | | | llvm-svn: 58529
* x86_64 rip-relative and magic mode addressMon P Wang2008-10-311-4/+8
| | | | llvm-svn: 58528
* Forgot this in last commit.Evan Cheng2008-10-311-1/+1
| | | | llvm-svn: 58527
* Encode PICADD; some code clean up.Evan Cheng2008-10-311-76/+101
| | | | llvm-svn: 58526
* Remove some unused virtual function bodies.Dan Gohman2008-10-311-7/+5
| | | | llvm-svn: 58524
* Revert r58489. It isn't correct for all cases.Bill Wendling2008-10-312-3/+4
| | | | llvm-svn: 58523
* Change x86 register allocation ordering to match that of gcc. Otherwise some ↵Evan Cheng2008-10-311-19/+19
| | | | | | tools get confused by prologue generated by llvm. llvm-svn: 58517
* Add a fixme.Evan Cheng2008-10-311-0/+3
| | | | llvm-svn: 58514
* Add a bunch of libcalls for ppcf128 that were somehowDuncan Sands2008-10-313-38/+249
| | | | | | completely forgotten about when writing LegalizeTypes. llvm-svn: 58508
* For some targets pointer and int are 16-bits. Allow 16-bits as a valid indexSanjiv Gupta2008-10-311-1/+2
| | | | | | in such cases. llvm-svn: 58505
* Don't skip over all "terminator" instructions when determining where to put theBill Wendling2008-10-312-4/+3
| | | | | | | callee-saved restore code. It could skip over conditional jumps accidentally. Instead, just skip the "return" instructions. llvm-svn: 58489
* Fix warning.Daniel Dunbar2008-10-311-1/+1
| | | | llvm-svn: 58486
* Use MOVSSmr instead of EXTRACTPSmr in the case of extractingDan Gohman2008-10-311-2/+6
| | | | | | vector element 0 for a store, as it's smaller and faster. llvm-svn: 58483
* Revert errant deletion. The target needs to be able to specify that it ↵Jim Grosbach2008-10-301-0/+5
| | | | | | doesn't want the generic constant pool to be emitted. llvm-svn: 58475
* I think we got non-machine specific constpool entries covered.Evan Cheng2008-10-301-1/+2
| | | | llvm-svn: 58474
* Canonicalize sext(i1) to i1?-1:0, and update various instcombineDan Gohman2008-10-301-40/+91
| | | | | | optimizations accordingly. llvm-svn: 58457
* Fix PR2986: do not use a potentially illegalDuncan Sands2008-10-301-1/+6
| | | | | | | | | | type for the shift amount type. Add a check that shifts and rotates use the type returned by getShiftAmountTy for the amount. This exposed some problems in CellSPU and PPC, which have already been fixed. llvm-svn: 58455
* Shift amounts should have type getShiftAmountTyDuncan Sands2008-10-301-9/+9
| | | | | | | (i32 for PPC, not i8). Correct this, and some formatting while there. llvm-svn: 58451
* Add InlineCost class for represent the estimated cost of inlining aDaniel Dunbar2008-10-305-15/+43
| | | | | | | | | function. - This explicitly models the costs for functions which should "always" or "never" be inlined. This fixes bugs where such costs were not previously respected. llvm-svn: 58450
* Shift amounts should have the type given byDuncan Sands2008-10-301-5/+5
| | | | | | getShiftAmountTy (i32 in the case of CellSPU). llvm-svn: 58449
* Add missing vsetcc expansion for wideningMon P Wang2008-10-301-1/+12
| | | | llvm-svn: 58443
* ARM JIT should observe -relocation-model command line option.Evan Cheng2008-10-302-2/+6
| | | | llvm-svn: 58433
* Add initial support for vector widening. Logic is set to widen for X86.Mon P Wang2008-10-305-31/+926
| | | | | | | One will only see an effect if legalizetype is not active. Will move support to LegalizeType soon. llvm-svn: 58426
* Resolve bug 2947: vararg-marked functions must spill registers R3-R79 to stackScott Michel2008-10-302-114/+69
| | | | | | | | | so that va_start/va_arg/et.al. will walk arguments correctly for Cell SPU. N.B.: Because neither clang nor llvm-gcc-4.2 can be built for CellSPU, this is still unexorcised code. llvm-svn: 58415
* Correct way to handle CONSTPOOL_ENTRY instructions.Evan Cheng2008-10-294-37/+82
| | | | llvm-svn: 58409
* Add debugging support.Evan Cheng2008-10-292-1/+26
| | | | llvm-svn: 58408
* Let target resolve some relocation results.Evan Cheng2008-10-291-30/+23
| | | | llvm-svn: 58407
* Fix PEXTRQ encodingNate Begeman2008-10-291-1/+1
| | | | llvm-svn: 58403
* Add a RM pseudoreg for the rounding mode, whichDale Johannesen2008-10-294-165/+200
| | | | | | | | | | | | | | | | | allows ppcf128->int conversion to work with DeadInstructionElimination. This is now turned off but RM is harmless. It does not do a complete job of modeling the rounding mode. Revert marking MFCR as using all 7 CR subregisters; while correct, this caused the problem in PR 2964, plus the local RA crash noted in the comments. This was needed to make DeadInstructionElimination, but as we are not running that, it is backed out for now. Eventually it should go back in and the other problems fixed where they're broken. llvm-svn: 58391
* Uniformize capitalization of NodeId.Duncan Sands2008-10-292-12/+12
| | | | llvm-svn: 58386
* Fix PR2967 by not deleting volatile load/stores that occur before unreachable.Chris Lattner2008-10-291-0/+11
| | | | | | | I don't really see this as being needed, but there is little harm from doing it. llvm-svn: 58385
OpenPOWER on IntegriCloud