summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Re-materialization is for uses only.Evan Cheng2008-04-011-4/+4
| | | | llvm-svn: 49053
* Don't use __bzero for memset if the second argument isn't zero.Dan Gohman2008-04-011-1/+2
| | | | llvm-svn: 49050
* Speculatively micro-optimize memory-zeroing calls on Darwin 10.Dan Gohman2008-04-013-5/+35
| | | | llvm-svn: 49048
* Revert 49006 for the moment.Dale Johannesen2008-04-018-49/+25
| | | | llvm-svn: 49046
* Don't dereference MBB->end().Owen Anderson2008-04-011-1/+1
| | | | llvm-svn: 49043
* Change the MemoryBuffer::getFile* methods to take just a pointer to theChris Lattner2008-04-018-31/+20
| | | | | | | | start of a filename, not a filename+length. All clients can produce a null terminated name, and the system api's require null terminated strings anyway. llvm-svn: 49041
* Disabling remat of load from gv stub (temporarily) again to fix llvmgcc ↵Evan Cheng2008-04-011-0/+3
| | | | | | bootstrap miscompare. llvm-svn: 49037
* add some #includes.Chris Lattner2008-04-011-2/+8
| | | | llvm-svn: 49036
* MappedFile is dead, remove it.Chris Lattner2008-04-013-235/+0
| | | | llvm-svn: 49035
* Implement Path::MapInFilePages/UnMapFilePages on unix, which Chris Lattner2008-04-012-7/+11
| | | | | | provides fast MappedFile::getFile for large files. llvm-svn: 49034
* Reimplement MemoryBuffer::getFile with three enhancements:Chris Lattner2008-04-011-85/+64
| | | | | | | | | | | | | | | | | | | | | 1) stop using MappedFile. 2) if profitable use the sys::path::MapInFilePages api to read the file. 3) otherwise fallback to read. When sys::path::MapInFilePages is implemented, this provides several benefits: #1: this avoids fragmenting memory for small files. #2: this avoids extraneous stat calls when the file size is known. #3: this only keeps the file descriptor open while reading the file, not for the duration of the lifetime of the memory buffer. This fixes a serious clang FD 'leak' problem. I believe that this will work on a win32 machine, but I don't have one to test on. I'd appreciate it if someone could check. llvm-svn: 49031
* Stub out some sys::Path::MapInFilePages/UnMapFilePages methods.Chris Lattner2008-04-012-0/+20
| | | | llvm-svn: 49030
* change the archive stuff to use MemoryBuffer instead of mappedfile.Chris Lattner2008-04-013-47/+34
| | | | | | | MemoryBuffer is higher level and more closely matches the model needed. llvm-svn: 49029
* rewrite SourceFile to be in terms of MemoryBuffer, not MappedFile.Chris Lattner2008-04-011-13/+19
| | | | llvm-svn: 49027
* Make MappedFile::map return a const correct pointer, don't leak address ↵Chris Lattner2008-04-012-2/+3
| | | | | | space on Unix platforms. llvm-svn: 49026
* Remove the MappedFile::charBase member, rename base -> getBase() andChris Lattner2008-04-012-7/+8
| | | | | | make getBase() return a const-correct pointer. llvm-svn: 49025
* Change DiffFilesWithTolerance to be written in terms of MemoryBuffer,Chris Lattner2008-04-011-73/+56
| | | | | | | | not an mmapped file. This more closely matches its requirements and provides an implicitly null terminated buffer, something this routine had to emulate itself before. llvm-svn: 49024
* Remove MappedFile support for mapping files for write and execChris Lattner2008-04-016-112/+18
| | | | | | | and shared. This complicates the design, is not used, and probably doesn't even work. llvm-svn: 49022
* add missing #includesChris Lattner2008-04-013-0/+3
| | | | llvm-svn: 49020
* More soft fp fixes.Evan Cheng2008-04-011-1/+2
| | | | llvm-svn: 49016
* Pasto.Evan Cheng2008-04-011-1/+1
| | | | llvm-svn: 49014
* Add comment.Evan Cheng2008-04-011-0/+1
| | | | llvm-svn: 49013
* Unbreak ARM / Thumb soft FP support.Evan Cheng2008-04-012-9/+21
| | | | llvm-svn: 49012
* Accept 'y' constraint (MMX) in inline asm.Dale Johannesen2008-04-011-0/+1
| | | | llvm-svn: 49011
* cleanup the MappedFile API and comments. This removes and updatesChris Lattner2008-04-012-118/+119
| | | | | | | | tons of out of date comments (really nothing throws here!) and fixes some other fairly glaring issues: "size" used to return the size of the file *and* change it, depending on how you called it. llvm-svn: 49009
* remove DEFINING_FILE_FOR for MappedFile.hChris Lattner2008-04-011-1/+0
| | | | llvm-svn: 49008
* Emit exception handling info for functions which areDale Johannesen2008-03-318-25/+49
| | | | | | | | | | | not marked nounwind, or for all functions when -enable-eh is set, provided the target supports Dwarf EH. llvm-gcc generates nounwind in the right places; other FEs will need to do so also. Given such a FE, -enable-eh should no longer be needed. llvm-svn: 49006
* It's not safe to fold a load from GV stub or constantpool into a two-address ↵Evan Cheng2008-03-312-2/+11
| | | | | | use. llvm-svn: 49002
* Actually disable crash reporting on Mac OS X, returning bugpoint to speedyNate Begeman2008-03-311-23/+6
| | | | | | crash miscompilations. llvm-svn: 49000
* Set blockBegin to point to the beginning of the block,Dan Gohman2008-03-311-2/+2
| | | | | | not the end. llvm-svn: 48999
* Move reMaterialize() from TargetRegisterInfo to TargetInstrInfo.Evan Cheng2008-03-3122-141/+87
| | | | llvm-svn: 48995
* Fix a DAGCombiner optimization to respect volatile qualification.Dan Gohman2008-03-311-1/+2
| | | | llvm-svn: 48994
* Expose Function::viewCFG and Function::viewCFGOnly to bindings.Erick Tryzelaar2008-03-311-0/+9
| | | | llvm-svn: 48982
* Re-apply 48911.Evan Cheng2008-03-311-8/+12
| | | | llvm-svn: 48977
* The support for remat of instructions with a register operand is hackish, to ↵Evan Cheng2008-03-311-18/+7
| | | | | | say the least. Since the register operand guaranteed to be PIC base and that it is already live at all uses, we are making sure it will not be spilled after its uses are rematerialized for both performance and correctness reasons. llvm-svn: 48976
* Fix a major bug in the DFS calculation. Thanks for Christopher Lamb for ↵Owen Anderson2008-03-311-1/+1
| | | | | | pointing this out. llvm-svn: 48973
* Don't eliminate bitcast instructions that change the type of a pointerNate Begeman2008-03-312-19/+26
| | | | llvm-svn: 48971
* Fix comment typo.Duncan Sands2008-03-301-1/+1
| | | | llvm-svn: 48967
* Moved from PR1570.Nick Lewycky2008-03-301-0/+26
| | | | llvm-svn: 48965
* Fix "Control reaches the end of non-void function" warnings, Chris Lattner2008-03-309-0/+15
| | | | | | patch by David Chisnall. llvm-svn: 48963
* minor code cleanups, allow constant folding sinf/cosf.Chris Lattner2008-03-301-20/+26
| | | | llvm-svn: 48961
* Cosmetic changes.Evan Cheng2008-03-291-24/+3
| | | | llvm-svn: 48947
* change iterator invalidation avoidance to just move the iterator backwardChris Lattner2008-03-291-18/+25
| | | | | | | | | | | | | | | | | | | | | when something changes, instead of moving forward. This allows us to simplify memset lowering, inserting the memset at the end of the range of stuff we're touching instead of at the start. This, in turn, allows us to make use of the addressing instructions already used in the function instead of inserting our own. For example, we now codegen: %tmp41 = getelementptr [8 x i8]* %ref_idx, i32 0, i32 0 ; <i8*> [#uses=2] call void @llvm.memset.i64( i8* %tmp41, i8 -1, i64 8, i32 1 ) instead of: %tmp20 = getelementptr [8 x i8]* %ref_idx, i32 0, i32 7 ; <i8*> [#uses=1] %ptroffset = getelementptr i8* %tmp20, i64 -7 ; <i8*> [#uses=1] call void @llvm.memset.i64( i8* %ptroffset, i8 -1, i64 8, i32 1 ) llvm-svn: 48940
* make the common case of a single store (which clearly shouldn't be turnedChris Lattner2008-03-291-3/+12
| | | | | | into a memset!) faster by avoiding an allocation of an std::list node. llvm-svn: 48939
* give form-memset a significantly more sane heuristic, enable it by default.Chris Lattner2008-03-291-7/+49
| | | | llvm-svn: 48937
* Remove some unneeded code for LiveInterval joining, and fix a bug in the Phi ↵Owen Anderson2008-03-291-58/+25
| | | | | | | | elimination algorithm where we were accidentally reasoning about the source rather than the destination. llvm-svn: 48936
* Fix a tokenfactor node to use the load chain rather than theDan Gohman2008-03-281-1/+1
| | | | | | load value. This fixes PR2177. llvm-svn: 48932
* Backing out 48911 for now. It's breaking stuff.Evan Cheng2008-03-281-12/+8
| | | | llvm-svn: 48922
* ifdef out a dead function. Should this be removed?Chris Lattner2008-03-281-0/+2
| | | | llvm-svn: 48916
* Rename getAnyLoad to getLoad is suggested by Evan.Duncan Sands2008-03-282-17/+17
| | | | llvm-svn: 48914
OpenPOWER on IntegriCloud