summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* Emit function entry code after lowering hte arguments.Chris Lattner2005-05-131-2/+2
| | | | llvm-svn: 21931
* Allow targets to emit code into the entry block of each functionChris Lattner2005-05-131-0/+2
| | | | llvm-svn: 21930
* allow a virtual register to be associated with live-in values.Chris Lattner2005-05-132-8/+8
| | | | llvm-svn: 21927
* Fix a problem that nate reduced for me.Chris Lattner2005-05-131-1/+2
| | | | llvm-svn: 21923
* rename variables and functions to match renamed DAG nodes. Bonus feature:Chris Lattner2005-05-131-32/+32
| | | | | | I can actually remember which one is which now! llvm-svn: 21922
* do not call expandop on the same value more than once. This fixesChris Lattner2005-05-131-4/+5
| | | | | | X86/2004-02-22-Casts.llx llvm-svn: 21919
* fix a bad typeoChris Lattner2005-05-121-2/+2
| | | | llvm-svn: 21917
* update commentChris Lattner2005-05-121-1/+1
| | | | llvm-svn: 21916
* rename the ADJCALLSTACKDOWN/ADJCALLSTACKUP nodes to be CALLSEQ_START/BEGIN.Chris Lattner2005-05-122-22/+22
| | | | llvm-svn: 21915
* Pass calling convention to use into lower call toChris Lattner2005-05-122-7/+8
| | | | llvm-svn: 21900
* fix expansion of ct[lt]z nodesChris Lattner2005-05-121-0/+2
| | | | llvm-svn: 21896
* Expand 64-bit ctlz/cttz nodes for 32-bit targetsChris Lattner2005-05-121-4/+28
| | | | llvm-svn: 21895
* Fix uint->fp casts on PPC, allowing UnitTests/2005-05-12-Int64ToFP toChris Lattner2005-05-121-4/+3
| | | | | | work on it. llvm-svn: 21894
* Allow something to be legalized multiple times. This can be used to reduceChris Lattner2005-05-121-12/+30
| | | | | | legalization iteration llvm-svn: 21892
* Oops, don't do this after we figure out where to insert the call chains.Chris Lattner2005-05-121-6/+6
| | | | llvm-svn: 21890
* Make sure to expand all nodes, avoiding unintentional node duplication.Chris Lattner2005-05-121-0/+7
| | | | llvm-svn: 21889
* handle a common case generated by the uint64 -> FP code path betterChris Lattner2005-05-121-1/+17
| | | | llvm-svn: 21888
* add fixmeChris Lattner2005-05-121-0/+1
| | | | llvm-svn: 21887
* Fix a problem where early legalization can cause token chain problems.Chris Lattner2005-05-121-7/+8
| | | | llvm-svn: 21885
* Make legalize a bit more efficient, and canonicalize sub X, C -> add X, -CChris Lattner2005-05-122-8/+12
| | | | llvm-svn: 21882
* Necessary changes to codegen cttz efficiently on PowerPCNate Begeman2005-05-111-3/+13
| | | | | | | | | | 1. Teach LegalizeDAG how to better legalize CTTZ if the target doesn't have CTPOP, but does have CTLZ 2. Teach PPC32 how to do sub x, const -> add x, -const for valid consts 3. Teach PPC32 how to do and (xor a, -1) b -> andc b, a 4. Teach PPC32 that ISD::CTLZ -> PPC::CNTLZW llvm-svn: 21880
* Fix lowering of ctlz, so now UnitTests/2005-05-11-Popcount-ffs-fls passesChris Lattner2005-05-111-40/+26
| | | | | | with the CBE llvm-svn: 21875
* Fix lowering of cttz to work with signed valuesChris Lattner2005-05-111-5/+4
| | | | llvm-svn: 21874
* fix and concisify intinsic lowering for ctpop. Unfortunately, this codeChris Lattner2005-05-111-167/+61
| | | | | | looks completely untested. :( llvm-svn: 21873
* Fix the last remaining bug preventing us from switching the X86 BE overChris Lattner2005-05-111-30/+68
| | | | | | | | | from the simple isel to the pattern isel. This forces inserted libcalls to serialize against other function calls, which was breaking UnitTests/2005-05-12-Int64ToFP. Hopefully this will fix issues on other targets as well. llvm-svn: 21872
* Do not memoize ADJCALLSTACKDOWN nodes, provide a method to hack on them.Chris Lattner2005-05-111-3/+24
| | | | llvm-svn: 21871
* wrap long lineChris Lattner2005-05-111-1/+2
| | | | llvm-svn: 21870
* Make sure to legalize generated ctpop nodes, convert tabs to spacesChris Lattner2005-05-111-18/+18
| | | | llvm-svn: 21868
* expand count-leading/trailing-zeros; the test 2005-05-11-Popcount-ffs-fls.cDuraid Madina2005-05-111-19/+32
| | | | | | should now pass (the "LLVM" and "REF" results should be identical) llvm-svn: 21866
* Add some notes for expanding clz/ctzChris Lattner2005-05-111-4/+21
| | | | llvm-svn: 21862
* Simplify this code, use the proper shift amountChris Lattner2005-05-111-11/+10
| | | | llvm-svn: 21861
* Legalize this correctlyChris Lattner2005-05-111-1/+3
| | | | llvm-svn: 21859
* implement expansion of ctpop nodes, implementing ↵Chris Lattner2005-05-111-5/+16
| | | | | | CodeGen/Generic/llvm-ct-intrinsics.ll llvm-svn: 21856
* Print bit count nodes correctlyChris Lattner2005-05-111-0/+6
| | | | llvm-svn: 21855
* Silence some VC++ warningsJeff Cohen2005-05-101-2/+2
| | | | llvm-svn: 21838
* The semantics of cast X to bool are a comparison against zero, not a truncation!Chris Lattner2005-05-091-0/+5
| | | | llvm-svn: 21833
* legalize readio/writeio into a load/store if requestedChris Lattner2005-05-091-5/+55
| | | | llvm-svn: 21827
* legalize READPORT, WRITEPORT, READIO, WRITEIO, at least in the basic casesChris Lattner2005-05-091-9/+43
| | | | | | | where they are directly supported by the architecture. Wrap a bunch of long lines :( llvm-svn: 21826
* Add support for matching the READPORT, WRITEPORT, READIO, WRITEIO intrinsicsChris Lattner2005-05-091-14/+28
| | | | llvm-svn: 21825
* Add support for READPORT, WRITEPORT, READIO, WRITEIOChris Lattner2005-05-091-1/+10
| | | | llvm-svn: 21824
* Fold shifts into subsequent SHL's. These shifts often arise due to addrsesChris Lattner2005-05-091-0/+28
| | | | | | arithmetic lowering. llvm-svn: 21818
* Don't use the load/store instruction as the source pointer, use the pointerChris Lattner2005-05-092-2/+4
| | | | | | being stored/loaded through! llvm-svn: 21806
* memoize all nodes, even null Value* nodes. Do not add two token chain outputsChris Lattner2005-05-091-7/+5
| | | | llvm-svn: 21805
* wrap long linesChris Lattner2005-05-091-2/+4
| | | | llvm-svn: 21804
* Print SrcValue nodes correctlyChris Lattner2005-05-092-0/+11
| | | | llvm-svn: 21803
* Wrap long lines. Fix "warning: conflicting types for built-in function ↵Chris Lattner2005-05-081-8/+15
| | | | | | | | 'memset'" warning from the CBE+GCC. llvm-svn: 21779
* * Order #includes alphabeticallyMisha Brukman2005-05-051-4/+1
| | | | | | * Remove commented-out debug printouts llvm-svn: 21707
* When hitting an unsupported intrinsic, actually print itChris Lattner2005-05-051-0/+10
| | | | | | Lower debug info to noops. llvm-svn: 21698
* ctpop lowering in legalizeAndrew Lenharth2005-05-051-1/+33
| | | | llvm-svn: 21697
* Make promoteOp work for CT*Andrew Lenharth2005-05-041-0/+28
| | | | | | | | | | | | | | | | | | | | Proof? ubyte %bar(ubyte %x) { entry: %tmp.1 = call ubyte %llvm.ctlz( ubyte %x ) ret ubyte %tmp.1 } ==> zapnot $16,1,$0 CTLZ $0,$0 subq $0,56,$0 zapnot $0,1,$0 ret $31,($26),1 llvm-svn: 21691
OpenPOWER on IntegriCloud