summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* add a pass that can extract all kinds of global values, not just functions. ↵Andrew Lenharth2008-03-071-0/+174
| | | | | | Update llvm-extract to use it and optionally extract a global variable if you want it too llvm-svn: 48015
* Clarify some important bitsAnton Korobeynikov2008-03-071-1/+2
| | | | llvm-svn: 48010
* Small cleanup: propagate thread-localness via generic routine.Anton Korobeynikov2008-03-071-7/+10
| | | | | | No functionality change. llvm-svn: 48009
* mark frem as expand for all legal fp types on x86, regardless of whetherChris Lattner2008-03-071-3/+2
| | | | | | we're using SSE or not. This fixes PR2122. llvm-svn: 48006
* When setting the "unused" info, take into account something like this:Bill Wendling2008-03-061-8/+38
| | | | | | | | %r3<def> = OR %x3<kill>, %x3 We don't want to mark the %r3 as unused even though it's a sub-register of %x3. llvm-svn: 48003
* 80 col violation.Evan Cheng2008-03-061-2/+4
| | | | llvm-svn: 47998
* some more spelling changesGabor Greif2008-03-062-2/+2
| | | | llvm-svn: 47996
* fix typosGabor Greif2008-03-062-2/+2
| | | | llvm-svn: 47994
* Constant fold SIGN_EXTEND_INREG with ashr not lshr.Evan Cheng2008-03-061-1/+1
| | | | llvm-svn: 47992
* Don't try to simplify urem and srem using arithmetic rules that don't workNick Lewycky2008-03-061-43/+96
| | | | | | under modulo (overflow). Fixes PR1933. llvm-svn: 47987
* Refine Cell's i64 constant generation code to cover more constants where theScott Michel2008-03-061-7/+28
| | | | | | upper and lower 32-bits are the same (in addition to 0 and -1 previously.) llvm-svn: 47985
* gcc likes things spelled correctlyAndrew Lenharth2008-03-051-1/+1
| | | | llvm-svn: 47981
* Skip, for now, callsites where use of sret argument is not dominated by ↵Devang Patel2008-03-051-0/+4
| | | | | | callsite. llvm-svn: 47980
* Next bit of PPC ByVal handling; call-site code seemsDale Johannesen2008-03-051-3/+11
| | | | | | correct now. llvm-svn: 47978
* Missed patch from my last commitAnton Korobeynikov2008-03-051-0/+10
| | | | llvm-svn: 47977
* Resolve aliases to aliasees, where possibleAnton Korobeynikov2008-03-051-0/+3
| | | | llvm-svn: 47975
* Handle functions as targets during linking of aliases as wellAnton Korobeynikov2008-03-051-1/+25
| | | | llvm-svn: 47974
* - Fix support for "special" i64 immediates that can be loadedScott Michel2008-03-054-647/+361
| | | | | | | | | | | using IL, ILA, et. al. v2i64 and i64 are now supported by the select bits (SELB) instruction. - Add missing comparison operations (testcase forthcoming) - More multiclass refactoring. llvm-svn: 47973
* Try hard to link aliases. Checks can be too strict by now.Anton Korobeynikov2008-03-051-20/+101
| | | | llvm-svn: 47968
* Fix a coalescer bug wrt how dead copy interval is shortened.Evan Cheng2008-03-052-13/+36
| | | | llvm-svn: 47966
* Handle 'ret' with multiple values.Devang Patel2008-03-051-11/+23
| | | | llvm-svn: 47965
* Add Hybrid Cycle Detection to Andersen's analysis.Daniel Berlin2008-03-051-32/+272
| | | | | | Patch by Curtis Dunham. llvm-svn: 47959
* Clarify that CALLSEQ_START..END may not be nested,Dale Johannesen2008-03-051-0/+7
| | | | | | and add some protection against creating such. llvm-svn: 47957
* evan implemented this.Chris Lattner2008-03-051-26/+0
| | | | llvm-svn: 47948
* Remember the source->dest mapping when copying aliases. This fixes PR2054Anton Korobeynikov2008-03-051-4/+10
| | | | llvm-svn: 47945
* Clarify the state-of-the-artAnton Korobeynikov2008-03-051-9/+12
| | | | llvm-svn: 47944
* isTwoAddress = 1 -> Constraints.Evan Cheng2008-03-051-47/+47
| | | | llvm-svn: 47941
* PSLLWri etc. are two-address instructions.Evan Cheng2008-03-051-1/+3
| | | | llvm-svn: 47940
* add a noteChris Lattner2008-03-051-0/+30
| | | | llvm-svn: 47939
* Generalize FP constant shrinking optimization to apply to any vtChris Lattner2008-03-051-26/+25
| | | | | | | | except ppc long double. This allows us to shrink constant pool entries for x86 long double constants, which in turn allows us to use flds/fldl instead of fldt. llvm-svn: 47938
* Improve comment, pass in the original VT so that we can shrink a long double ↵Chris Lattner2008-03-051-2/+4
| | | | | | | | constant all the way to float, not stopping at double. llvm-svn: 47937
* Ignore debugging related instructions if they get this far.Evan Cheng2008-03-051-0/+4
| | | | llvm-svn: 47934
* Rather than asserting. Dump out the MI that we are not able to encode and abort.Evan Cheng2008-03-051-1/+6
| | | | llvm-svn: 47933
* Codegen support for i128 UINT_TO_FP. This just fixes aDan Gohman2008-03-052-6/+2
| | | | | | | | bug in r47928 (Int64Ty is the correct type for the constant pool entry here) and removes the asserts, now that the code is capable of handling i128. llvm-svn: 47932
* Add a target lowering hook to control whether it's worthwhile to compress fp ↵Evan Cheng2008-03-052-1/+12
| | | | | | | | constant. For x86, if sse2 is available, it's not a good idea since cvtss2sd is slower than a movsd load and it prevents load folding. On x87, it's important to shrink fp constant since fldt is very expensive. llvm-svn: 47931
* 64bit CAS on 32bit x86.Andrew Lenharth2008-03-054-8/+75
| | | | llvm-svn: 47929
* Codegen support for i128 SINT_TO_FP.Dan Gohman2008-03-053-21/+56
| | | | llvm-svn: 47928
* Refactor code. Remove duplicated functions that basically do the same thing asEvan Cheng2008-03-0513-171/+111
| | | | | | findRegisterUseOperandIdx, findRegisterDefOperandIndx. Fix some naming inconsistencies. llvm-svn: 47927
* Skip functions that return multiple values.Devang Patel2008-03-051-0/+5
| | | | llvm-svn: 47924
* Check struct return type first. Devang Patel2008-03-051-6/+7
| | | | llvm-svn: 47922
* Removed spurious EnablePPCRS check.Bill Wendling2008-03-041-4/+3
| | | | llvm-svn: 47918
* Move PPC lowering functions into PPCTargetLoweringDale Johannesen2008-03-042-28/+120
| | | | | | | class (cosmetic). First piece of byval implementation; this doesn't work yet. No functional change. llvm-svn: 47917
* Use a command-line option to turn register scavenging on/off for PPC.Bill Wendling2008-03-042-39/+51
| | | | llvm-svn: 47915
* Print types for all ret operands.Devang Patel2008-03-041-1/+2
| | | | llvm-svn: 47911
* Use while loop.Devang Patel2008-03-041-3/+2
| | | | llvm-svn: 47909
* Revert SmallVector ctor variants.Devang Patel2008-03-041-51/+0
| | | | llvm-svn: 47908
* Use cast instead of dyn_cast.Devang Patel2008-03-041-2/+1
| | | | | | Update test to use multiple return value directly, instead of relying on -sretpromotion. llvm-svn: 47907
* Filter nested structsDevang Patel2008-03-041-0/+16
| | | | llvm-svn: 47906
* Handle multiple return values.Devang Patel2008-03-041-3/+15
| | | | llvm-svn: 47904
* x86-64 atomicsAndrew Lenharth2008-03-042-2/+35
| | | | llvm-svn: 47903
OpenPOWER on IntegriCloud