summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Scan for presence of calls and determine max callframe size early. To allow ↵Anton Korobeynikov2009-07-162-25/+37
| | | | | | ProcessFunctionBeforeCalleeSaveScan() use this information llvm-svn: 75942
* Some preliminary call loweringAnton Korobeynikov2009-07-167-11/+302
| | | | llvm-svn: 75941
* Prologue / epilogue emissionAnton Korobeynikov2009-07-162-3/+91
| | | | llvm-svn: 75940
* Add simple frame index eliminationAnton Korobeynikov2009-07-163-2/+42
| | | | llvm-svn: 75939
* Swap the order of imm and idx field for rri addrmode in order to make ↵Anton Korobeynikov2009-07-163-11/+11
| | | | | | handling of rri and ri addrmodes common llvm-svn: 75937
* Do not truncate sign bits for negative immsAnton Korobeynikov2009-07-162-21/+23
| | | | llvm-svn: 75936
* Add address computation stuffAnton Korobeynikov2009-07-162-4/+82
| | | | llvm-svn: 75935
* CleanupAnton Korobeynikov2009-07-161-4/+21
| | | | llvm-svn: 75934
* Add mem-imm storesAnton Korobeynikov2009-07-162-1/+14
| | | | llvm-svn: 75933
* [PATCH 023/155] TypoAnton Korobeynikov2009-07-161-1/+1
| | | | llvm-svn: 75932
* Add stores and truncstoresAnton Korobeynikov2009-07-162-3/+30
| | | | llvm-svn: 75931
* Add patterns for various extloadsAnton Korobeynikov2009-07-162-1/+44
| | | | llvm-svn: 75930
* Do some heroic rri address matching (shamelessly stolen from x86 backend). ↵Anton Korobeynikov2009-07-163-12/+268
| | | | | | Not tested though. llvm-svn: 75929
* Change register allocation order, so R0 will be allocated the last among ↵Anton Korobeynikov2009-07-161-2/+2
| | | | | | scratch. This will make address-calculation code much more happy. llvm-svn: 75928
* Add shifts and reg-imm address matchingAnton Korobeynikov2009-07-166-3/+245
| | | | llvm-svn: 75927
* Add bunch of 32-bit patterns... Uffff :)Anton Korobeynikov2009-07-165-9/+115
| | | | llvm-svn: 75926
* Propagate return result extension typeAnton Korobeynikov2009-07-161-0/+7
| | | | llvm-svn: 75925
* Add 32 bit subregsAnton Korobeynikov2009-07-164-29/+90
| | | | llvm-svn: 75923
* Add another bunch of reg-imm patterns for add/or/and/xorAnton Korobeynikov2009-07-161-0/+27
| | | | llvm-svn: 75922
* Add bunch of reg-imm movsAnton Korobeynikov2009-07-162-0/+57
| | | | llvm-svn: 75921
* Proper match halfword-imm operands for mov and addAnton Korobeynikov2009-07-161-7/+14
| | | | llvm-svn: 75920
* Provide masked reg-imm 'or' and 'and'Anton Korobeynikov2009-07-162-3/+77
| | | | llvm-svn: 75919
* Add reg-reg and patternAnton Korobeynikov2009-07-161-0/+8
| | | | llvm-svn: 75917
* Add sub reg-reg patternAnton Korobeynikov2009-07-161-0/+6
| | | | llvm-svn: 75916
* Add xor reg-reg patternAnton Korobeynikov2009-07-161-0/+7
| | | | llvm-svn: 75915
* Add or reg-reg pattern.Anton Korobeynikov2009-07-161-0/+8
| | | | llvm-svn: 75914
* Add add reg-reg and reg-imm patternsAnton Korobeynikov2009-07-162-1/+33
| | | | llvm-svn: 75913
* Add simple reg-reg and reg-imm movesAnton Korobeynikov2009-07-163-8/+68
| | | | llvm-svn: 75912
* Minimal lowering for formal_arguments / retAnton Korobeynikov2009-07-163-1/+174
| | | | llvm-svn: 75911
* Let's start another backend :)Anton Korobeynikov2009-07-1623-0/+1873
| | | | llvm-svn: 75909
* Combine an unaligned store of unaligned load into a memmove.Richard Osborne2009-07-162-0/+54
| | | | llvm-svn: 75908
* Lower the threshold at which memcpy / memmove / memset stop being expandedRichard Osborne2009-07-161-0/+3
| | | | | | inline in the XCore. llvm-svn: 75906
* Fix typo in last commit on expansion of unaligned loads.Richard Osborne2009-07-161-2/+2
| | | | llvm-svn: 75903
* Expand unaligned 32 bit loads from an address which is a constantRichard Osborne2009-07-161-0/+109
| | | | | | | | | | | | | | | offset from a 32 bit aligned base as follows: ldw low, base[offset >> 2] ldw high, base[(offset >> 2) + 1] shr low_shifted, low, (offset & 0x3) * 8 shl high_shifted, high, 32 - (offset & 0x3) * 8 or result, low_shifted, high_shifted Expand 32 bit loads / stores with 16 bit alignment into two 16 bit loads / stores. llvm-svn: 75902
* Custom lower unaligned 32 bit stores and loads into libcalls. This is Richard Osborne2009-07-162-1/+90
| | | | | | | a big code size win since before they were expanding to upto 16 instructions. llvm-svn: 75901
* Let callers decide the sub-register index on the def operand of ↵Evan Cheng2009-07-1617-46/+60
| | | | | | | | rematerialized instructions. Avoid remat'ing instructions whose def have sub-register indices for now. It's just really really hard to get all the cases right. llvm-svn: 75900
* use SUBREG_TO_REG instead of INSERT_SUBREG, this way the codeChris Lattner2009-07-161-1/+1
| | | | | | | generator can know the top bits are zero, not undefined. Thanks to Dan for pointing this out. llvm-svn: 75899
* Fix coding style issues pointed by Bill.Bruno Cardoso Lopes2009-07-163-26/+30
| | | | llvm-svn: 75898
* add a knob to turn off PrettyStackTrace globally. Patch by ZoltanChris Lattner2009-07-161-1/+6
| | | | | | Varga! llvm-svn: 75897
* implement .include in the lexer/parser instead of passing it into the streamer.Chris Lattner2009-07-161-6/+0
| | | | llvm-svn: 75896
* fix some casts that I improperly refactored, patch by Artur Pietrek!Chris Lattner2009-07-161-2/+2
| | | | llvm-svn: 75894
* Remove unused header.Daniel Dunbar2009-07-161-1/+1
| | | | llvm-svn: 75893
* Switch llc and createJIT to use simpler command line parsing for -march.Daniel Dunbar2009-07-161-9/+22
| | | | llvm-svn: 75890
* Add registered target list to --version output.Daniel Dunbar2009-07-162-20/+39
| | | | llvm-svn: 75889
* Kill off <TARGET>MachineModule variables, and <TARGETASMPRINTER>ForceLinkDaniel Dunbar2009-07-1612-86/+0
| | | | | | | variables. - Module initialization functions supplanted the need for these. llvm-svn: 75886
* fix section switching to ensure that stubs are emitted to the rightChris Lattner2009-07-161-4/+5
| | | | | | section on ppc. llvm-svn: 75881
* Skip special LLVM prefix '1' while emitting linknage name.Devang Patel2009-07-161-4/+25
| | | | | | This prefix is used by LLVM to inform the asm printer to not emit usual global symbol prefix before the symbol name. llvm-svn: 75875
* Now that we have contexts on types, convert some more internals to use contexts.Owen Anderson2009-07-161-8/+11
| | | | llvm-svn: 75866
* We don't need to use llvm_report_error, this interface can deal with errorsDaniel Dunbar2009-07-151-2/+2
| | | | | | (although we don't get a very good error message). llvm-svn: 75864
* Revert yesterday's change by removing the LLVMContext parameter to ↵Owen Anderson2009-07-1522-70/+53
| | | | | | AllocaInst and MallocInst. llvm-svn: 75863
OpenPOWER on IntegriCloud