summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Moved the MachOWriter and ELFWriter out of the Target/* files. Placed theBill Wendling2007-02-087-36/+20
| | | | | | | | definition of it into the CodeGen library. This is so that a backend doesn't necessarily add in these writers if it doesn't use them (like in the lli program). llvm-svn: 34034
* Added new method to add a "simple" code emitter. That is, to only addBill Wendling2007-02-082-0/+7
| | | | | | the code emitter and not set variables. llvm-svn: 34033
* Split the addPassesToEmitFile method up into two. This is so that we canBill Wendling2007-02-081-48/+52
| | | | | | | do some common stuff, then on our own add an object file writer (by calling a concrete function), and then do some finishing stuff, if need be. llvm-svn: 34032
* Add function to create a file writer.Bill Wendling2007-02-082-3/+28
| | | | llvm-svn: 34031
* Dead files. Functionality has been taken over by the Add*Writer functions.Bill Wendling2007-02-082-75/+0
| | | | llvm-svn: 34029
* Moved from include/llvm/CodeGen to lib/CodeGen.Bill Wendling2007-02-082-0/+850
| | | | llvm-svn: 34027
* For PR1188:Reid Spencer2007-02-082-2/+2
| | | | | | | | Compute BitMask correctly. Patch by Leo (wenwenti@hotmail.com). llvm-svn: 34026
* move archive-specific stuff out of bcreader into archive library.Chris Lattner2007-02-073-70/+80
| | | | llvm-svn: 34022
* move an llvmc-specific function out of the bcreader into llvmc.Chris Lattner2007-02-071-16/+0
| | | | llvm-svn: 34021
* move AnalyzeBytecodeFile out of ReaderWrappers.cpp into Analyzer.cpp. NowChris Lattner2007-02-073-36/+15
| | | | | | lli doesn't link in Analyzer.cpp. llvm-svn: 34020
* isLowRegister() expects input is a physical register.Evan Cheng2007-02-071-2/+2
| | | | llvm-svn: 34013
* push bytecode decompressor out through APIs. Now the bytecode readerChris Lattner2007-02-077-63/+63
| | | | | | | | | | | | | | | | | | | | api's look like this: ModuleProvider *getBytecodeModuleProvider( const std::string &Filename, ///< Name of file to be read BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer, std::string* ErrMsg = 0, ///< Optional error message holder BytecodeHandler* H = 0 ///< Optional handler for reader events ); This is ugly, but allows a client to say: getBytecodeModuleProvider("foo", 0); If they do this, there is no dependency on the compression libraries, saving codesize. llvm-svn: 34012
* Rename.Evan Cheng2007-02-071-6/+7
| | | | llvm-svn: 34011
* If sp offset will be materialized in a register. Clear the offset field of ↵Evan Cheng2007-02-071-8/+10
| | | | | | str / ldr. llvm-svn: 34010
* Get rid of references to iostream.Evan Cheng2007-02-072-4/+2
| | | | llvm-svn: 34009
* Automatically generating intrinsic declarations from Dan Gohman. ModifiedJim Laskey2007-02-071-0/+19
| | | | | | | to construct FunctionType in separate function, and, have getDeclaration return a Function instead of a Constant. llvm-svn: 34008
* Move compressor out of the core Reader.cpp file.Chris Lattner2007-02-073-6/+14
| | | | llvm-svn: 34007
* Do not drop transferred last uses on the floor.Devang Patel2007-02-071-0/+3
| | | | | | Use handleLastUserOverflow(). llvm-svn: 34006
* Fix Transforms/DeadArgElim/2007-02-07-FuncRename.ll, fallout from PR411.Chris Lattner2007-02-071-2/+4
| | | | | | | | | This happened because deadargelim now causes VMCore to auto-rename every function that it hacks arguments out of. Because it hacks arguments out of functions in a non-deterministic order, this caused the resultant numbering to be nondet. The fix is to just be careful to not rename functions! llvm-svn: 34005
* New entry.Evan Cheng2007-02-071-0/+9
| | | | llvm-svn: 34000
* In thumb mode, R3 is reserved, but it can be live in to the function. IfEvan Cheng2007-02-072-7/+32
| | | | | | | | that is the case, whenever we use it as a scratch register, save it to R12 first and then restore it after the use. This is a temporary and truly horrible workaround! llvm-svn: 33999
* UpdateEvan Cheng2007-02-071-0/+4
| | | | llvm-svn: 33998
* - If fp (r7) is used to reference stack objects, use [r, r] address mode.Evan Cheng2007-02-071-28/+67
| | | | | | | | - If there is a dynamic alloca, in the epilogue, restore the value of sp using r7 - offset. - Other bug fixes. llvm-svn: 33997
* remove dead ivars, thanks to Reid for noticing this!Chris Lattner2007-02-071-22/+1
| | | | llvm-svn: 33995
* remove the handleVBR32/handleVBR64 callbacks. They are very fine-grained.Chris Lattner2007-02-072-26/+0
| | | | llvm-svn: 33994
* constants can't be in the symtab anymoreChris Lattner2007-02-071-8/+4
| | | | llvm-svn: 33993
* update comment.Chris Lattner2007-02-071-3/+3
| | | | llvm-svn: 33992
* shrink vmcore by moving symbol table stripping support out of VMCore intoChris Lattner2007-02-073-29/+23
| | | | | | the one IPO pass that uses it. llvm-svn: 33990
* As Chris suggested, fixed some problems. (This is the first part)Zhou Sheng2007-02-071-147/+157
| | | | llvm-svn: 33989
* eliminate ValueSymbolTable::rename, it has no advantage over using ↵Chris Lattner2007-02-072-42/+5
| | | | | | | | remove+insert. Make insert/remove assert if used incorrectly instead of returning a bool. llvm-svn: 33988
* speed up conflict handling.Chris Lattner2007-02-071-2/+7
| | | | llvm-svn: 33985
* Fix a fixme by correctly calculating preferred alignments for functions,Nate Begeman2007-02-071-11/+14
| | | | | | | | | based on the alignment of the symbol and the target data's preferred align for that type. Also, rename some arguments for consistency. llvm-svn: 33984
* Eliminate the O(n) version of TypeSymbolTable::remove, it is dead. WhenChris Lattner2007-02-071-21/+21
| | | | | | | inserting a type into the type symbol table, only compute unique name if not in symtab already. llvm-svn: 33983
* TypeSymbolTable::rename is dead, remove itChris Lattner2007-02-071-18/+0
| | | | llvm-svn: 33982
* Eliminate a bunch of work from ValueSymbolTable::insert for the common caseChris Lattner2007-02-071-1/+7
| | | | | | where a symbol name doesn't conflict. This speeds up bc reading 16% on 176.gcc! llvm-svn: 33981
* parse constantexpr arguments into a smallvector: 1.5% speedup reading 176.gccChris Lattner2007-02-071-1/+1
| | | | llvm-svn: 33980
* Eliminate std::vectors from the bcanalyzer interface.Chris Lattner2007-02-073-32/+45
| | | | llvm-svn: 33978
* eliminateFrameIndex() is even more complicated if frame ptr is used instead ↵Evan Cheng2007-02-071-20/+34
| | | | | | of SP when there are dynamic alloca's. llvm-svn: 33975
* redesign the primary datastructure used by mem2reg to eliminate anChris Lattner2007-02-071-103/+156
| | | | | | std::map of std::vector's (ouch!). This speeds up mem2reg by 10% on 176.gcc. llvm-svn: 33974
* do not let the table fill up with tombstones.Chris Lattner2007-02-071-1/+5
| | | | llvm-svn: 33973
* Spill / restore should avoid modifying the condition register.Evan Cheng2007-02-074-36/+64
| | | | llvm-svn: 33971
* Two fixes:Chris Lattner2007-02-061-38/+33
| | | | | | | | 1. Memset takes an i32 for the value to set, not i8. This was causing GCC to ICE all over the place (PR1183). 2. memcpy/memmove were not properly zext/trunc'ing the size in some cases. llvm-svn: 33970
* Support var arg intrinsics.Jim Laskey2007-02-061-0/+4
| | | | llvm-svn: 33962
* Select add FI, c correctly.Evan Cheng2007-02-061-1/+6
| | | | llvm-svn: 33960
* foldMemoryOperand() cannot fold tMOVrr sp into load / store in thumb mode. ↵Evan Cheng2007-02-061-13/+19
| | | | | | tLDRspi / tSTRspi cannot target / store high registers. llvm-svn: 33958
* Fix PR1181 and CodeGen/CBackend/2007-02-05-memset.llChris Lattner2007-02-061-6/+16
| | | | llvm-svn: 33957
* As Reid suggested, fixed some problems.Zhou Sheng2007-02-061-150/+143
| | | | llvm-svn: 33955
* Disable this for now.Chris Lattner2007-02-061-0/+5
| | | | llvm-svn: 33953
* Add a class APInt to represent arbitrary precision constant integral values.Zhou Sheng2007-02-061-0/+1113
| | | | | | | | | It is a functional replacement for common case integer type like "unsigned", "uint64_t", but also allows non-byte-width integer type and large integer value types such as 3-bits, 15-bits, or more than 64-bits of precision. For more details, see pr1043. llvm-svn: 33951
* Fix Transforms/ConstProp/2007-02-05-BitCast.llChris Lattner2007-02-061-1/+5
| | | | llvm-svn: 33948
OpenPOWER on IntegriCloud