summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* Add missing includes.Daniel Dunbar2009-07-151-0/+2
| | | | llvm-svn: 75862
* Verify that there is no kill flag on tied operands on two-address instructions.Jakob Stoklund Olesen2009-07-151-4/+7
| | | | | | | | | | This extra check is not trigged when runnning "make check" on top-of-tree. Change error message to better match llvm_unreachable() grammar. Don't call llvm_unreachable() when writing error messages to a file, but keep going. llvm-svn: 75860
* Lift addAssemblyEmitter into LLVMTargetMachine.Daniel Dunbar2009-07-1523-154/+11
| | | | | | - No functionality change. llvm-svn: 75859
* Change raw_ostream so that it doesn't call llvm_report_errorDan Gohman2009-07-151-4/+14
| | | | | | | | | | | | | | | | | | immediately on every output error. Instead, add a flag to raw_ostream, and set the flag whenever an error is detected. The flag can be queried and cleared from the public API. This gives applications more flexibility to handling errors in application-specific ways. If the flag is not cleared when the raw_ostream is destructed, llvm_report_error is called from the destructor. This ensures that errors are not implicitly silenced, and provides convenient default behavior for tools like llc and opt. Clients wishing to avoid llvm_report_error calls from raw_ostream should check for errors and clear the error flag. llvm-svn: 75857
* Register AsmPrinter for XCore, MSP430, and PIC16 targets.Daniel Dunbar2009-07-1510-20/+37
| | | | | | - Switch to standard addAssemblyEmitter logic. llvm-svn: 75854
* Switch invars away from using isTrapping when it really shouldn't be Eli Friedman2009-07-151-1/+7
| | | | | | using it. llvm-svn: 75852
* Lift DumpAsm / -print-emitted-asm functionality into LLVMTargetMachine.Daniel Dunbar2009-07-159-111/+42
| | | | | | - No intended functionality change. llvm-svn: 75848
* Fix bug in RegScavenger::scavengeRegister().Jakob Stoklund Olesen2009-07-151-1/+1
| | | | | | | | | | | | | Reserved registers are not candidates for scavenging, and they were removed from the candidate list like this: CreateRegClassMask(RC, Candidates); Candidates ^= ReservedRegs; However, when there are reserved registers outside RC, this causes invalid bits to be set in Candidates. llvm-svn: 75847
* Don't restrict the set of instructions where we try to constant-fold the Eli Friedman2009-07-151-3/+1
| | | | | | | operands; it's possible to end up with a constant-foldable operand to most instructions, even those which can't trap. llvm-svn: 75845
* Remove old style hacks to register AsmPrinter into TargetMachine.Daniel Dunbar2009-07-1524-227/+38
| | | | | | - No intended functionality change. llvm-svn: 75843
* Update the C bindings to keep the LLVMTypeKind up to date between the C/C++Chris Lattner2009-07-151-1/+34
| | | | | | stuff. Patch by Zoltan Varga! llvm-svn: 75842
* Move a few more convenience factory functions from Constant to LLVMContext.Owen Anderson2009-07-158-46/+57
| | | | llvm-svn: 75840
* move createAlphaLLRPPass out of addAssemblyEmitter to make AlphaChris Lattner2009-07-151-1/+1
| | | | | | more like other targets. llvm-svn: 75839
* ShortenDeadCopySrcLiveRange needs to be more conservative in multi-kill ↵Evan Cheng2009-07-151-1/+6
| | | | | | situations. llvm-svn: 75838
* Lexically order files in CMakeLists.txt files.Ted Kremenek2009-07-157-10/+10
| | | | llvm-svn: 75831
* Move the ConstantStruct factory methods over to LLVMContext.Owen Anderson2009-07-152-11/+8
| | | | llvm-svn: 75830
* Remove unused function.Daniel Dunbar2009-07-151-16/+0
| | | | llvm-svn: 75829
* use std::vector instead of std::list for both Section and Symbol lists becauseBruno Cardoso Lopes2009-07-155-191/+194
| | | | | | we care more about random access than insertion/deletion of elements. llvm-svn: 75828
* Update CMakeLists for reapplication.Daniel Dunbar2009-07-151-1/+0
| | | | llvm-svn: 75825
OpenPOWER on IntegriCloud