summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Allow the fast-path spilling code to attempt folding, but still leaving out ↵Owen Anderson2008-08-191-59/+68
| | | | | | remat and splitting. llvm-svn: 55012
* Instantiate FastISel for X86.Dan Gohman2008-08-193-2/+56
| | | | llvm-svn: 55011
* The X86 target will soon have an implementation of createFastISel.Dan Gohman2008-08-192-0/+14
| | | | llvm-svn: 55010
* Use the BuildMI overload that sets up a destination registerDan Gohman2008-08-191-6/+3
| | | | | | instead of the one that doesn't and then adding it manually. llvm-svn: 55006
* Handle the case where target-specific fastisel code doesn't haveDan Gohman2008-08-191-0/+5
| | | | | | a desired opcode. llvm-svn: 55005
* The fast-path still needs to set kill markers and spill/restore points as ↵Owen Anderson2008-08-191-0/+3
| | | | | | | | | appropriate. With this patch, all of MultiSource/Applications and all of SPEC2000/2006 pass with the SimpleSpiller and this fast-path enabled. llvm-svn: 55000
* Add support for 8 and 16 bit forms of __syncDale Johannesen2008-08-194-23/+143
| | | | | | | | | | builtins on X86. Change "lock" instructions to be on a separate line. This is needed to work around a bug in the Darwin assembler. llvm-svn: 54999
* Delete a dead field.Gordon Henriksen2008-08-191-1/+0
| | | | llvm-svn: 54995
* [PR2327] Leverage TargetRegisterInfo to compute frame offsets for GC metadata.Gordon Henriksen2008-08-191-7/+5
| | | | llvm-svn: 54994
* Update the JIT exception writer to better mimic the codegen exception writer.Nicolas Geoffray2008-08-191-11/+10
| | | | | | | Also skip indirect encoding for platforms that ask for one: we direclty write an address, not a pointer to the address. llvm-svn: 54987
* add a noteChris Lattner2008-08-191-0/+17
| | | | llvm-svn: 54985
* more cleanups, random methods shouldn't return ostreams.Chris Lattner2008-08-191-23/+30
| | | | llvm-svn: 54984
* more cleanup, eliminate getLLVMName when printing outChris Lattner2008-08-191-24/+18
| | | | | | type names at the top of the file. llvm-svn: 54983
* random cleanups, factor some printing code for linkage and visibilityChris Lattner2008-08-191-167/+187
| | | | llvm-svn: 54982
* Change WriteTypeSymbolic/WriteAsOperand to return void instead of Chris Lattner2008-08-191-36/+25
| | | | | | | | | | | | an ostream, which is just weird. Rename SC_DEBUG -> ST_DEBUG Remove static indentation strangeness from WriteConstantInt. This makes it so that large structs are not broken down and printed on multiple lines. If there is demand for this to return, there are better ways to implement this. llvm-svn: 54981
* whitespace cleanupChris Lattner2008-08-191-1/+1
| | | | llvm-svn: 54980
* don't use the result of WriteAsOperandChris Lattner2008-08-191-4/+5
| | | | llvm-svn: 54979
* don't use the result of WriteTypeSymbolic or WriteAsOperand.Chris Lattner2008-08-192-6/+8
| | | | llvm-svn: 54978
* Don't use the result of WriteAsOperand or WriteTypeSymbolic.Chris Lattner2008-08-192-5/+10
| | | | llvm-svn: 54977
* rearrange code and make more legible.Chris Lattner2008-08-191-251/+280
| | | | llvm-svn: 54976
* put SlotTracker in an anon namespace since it is private.Chris Lattner2008-08-191-3/+3
| | | | llvm-svn: 54975
* Reid had to call this class "slot machine" out of some strange referenceChris Lattner2008-08-191-39/+39
| | | | | | to the gambling device. Name it something more meaningful. llvm-svn: 54974
* Make SimpleSpiller respect subregister indices.Owen Anderson2008-08-191-2/+5
| | | | llvm-svn: 54968
* add a noteChris Lattner2008-08-191-0/+37
| | | | llvm-svn: 54964
* Add a flag to enable the fast spilling path.Owen Anderson2008-08-191-0/+7
| | | | llvm-svn: 54958
* Fix a few more bugs:Owen Anderson2008-08-181-3/+8
| | | | | | | 1) Assign stack slots to new temporaries. 2) Don't insert an interval into the return vector more than once. llvm-svn: 54956
* remove empty fileChris Lattner2008-08-181-0/+0
| | | | llvm-svn: 54950
* Fix several bugs in the new fast-path:Owen Anderson2008-08-181-16/+16
| | | | | | | | 1) Remove an incorrect assertion. 2) Set the stack slot weight properly. 3) Resize the VirtRegMap when needed. llvm-svn: 54949
* Unbreak cpp backend: upgrade output due to change in APInt APIAnton Korobeynikov2008-08-181-1/+2
| | | | llvm-svn: 54942
* Clients of addIntervalForSpills expect the added intervals to be returned ↵Owen Anderson2008-08-181-0/+9
| | | | | | sorted by starting index. llvm-svn: 54939
* Fix a bug daniel pointed out to me, where asmprinter startedChris Lattner2008-08-181-5/+5
| | | | | | | printing ascii code for hex numbers instead of the hex numbers themselves. llvm-svn: 54936
* Simplify the fast-patch interval spilling by using ↵Owen Anderson2008-08-181-72/+50
| | | | | | MachineRegisterInfo::reg_iterator. llvm-svn: 54930
* Resurrect some ancient code to add spill ranges without attempting folding, ↵Owen Anderson2008-08-181-0/+105
| | | | | | | | | remat, or splitting. This code has been updated to current APIs in so far as it compiles and, in theory, works, but does not take advantage of recent advancements. For instance, it could be improved by using MachineRegisterInfo::use_iterator. llvm-svn: 54924
* Register the frame register function when allocating the JIT,Nicolas Geoffray2008-08-181-5/+5
| | | | | | so that lli works out of the box with -enable-eh. llvm-svn: 54920
* ARM asm printer can't handle dwarf info yet.Evan Cheng2008-08-181-6/+12
| | | | llvm-svn: 54913
* Don't hoist instructions that have implicit uses or defines. Before, it wasBill Wendling2008-08-181-0/+5
| | | | | | hoisting out some "test" and "cmp" instructions. This was obvious badness. llvm-svn: 54908
* Make this comment clearer. Instead of using an ambiguous ~ (not) on an icmpNick Lewycky2008-08-171-1/+1
| | | | | | predicate, swap the order of the operands. llvm-svn: 54907
* Consider the case where xor by -1 and xor by 128 have been combined already toNick Lewycky2008-08-171-1/+23
| | | | | | produce an xor by 127. llvm-svn: 54906
* Fix a (u)comiss intrinsic lowering bug. It was using anyext which can return ↵Evan Cheng2008-08-172-2/+4
| | | | | | junk in higher bits. Patch by Nate Begeman. llvm-svn: 54903
* Don't require Registry specializations to define random static variables.Gordon Henriksen2008-08-173-25/+0
| | | | llvm-svn: 54902
* Drop an unnecessary include.Gordon Henriksen2008-08-171-1/+0
| | | | llvm-svn: 54901
* Regenerate.Gordon Henriksen2008-08-173-291/+291
| | | | llvm-svn: 54900
* Rename some GC classes so that their roll will hopefully be clearer.Gordon Henriksen2008-08-1721-321/+295
| | | | | | | | | | | | | | | | | | In particular, Collector was confusing to implementors. Several thought that this compile-time class was the place to implement their runtime GC heap. Of course, it doesn't even exist at runtime. Specifically, the renames are: Collector -> GCStrategy CollectorMetadata -> GCFunctionInfo CollectorModuleMetadata -> GCModuleInfo CollectorRegistry -> GCRegistry Function::getCollector -> getGC (setGC, hasGC, clearGC) Several accessors and nested types have also been renamed to be consistent. These changes should be obvious. llvm-svn: 54899
* Make it compile on VC2005:Cedric Venet2008-08-175-15/+15
| | | | | | | | - update VC projects. - Add an overload to llvm::Stream for <<, since std::hex and std::dec have type std::ios_base& (*)(std::ios_base&) in VC++. (templating the function don't work, due to ambiguities) - add ../ on several include in X86/AsmPrinter/ llvm-svn: 54898
* getLLVMName is only used for types now, which always pass in LocalPrefix. ↵Chris Lattner2008-08-171-15/+10
| | | | | | Specialize on it. llvm-svn: 54897
* switch valuemap's from std::map to densemap. This speeds up llvm-disChris Lattner2008-08-171-11/+8
| | | | | | on a stripped kc++ .bc file from 0.83 to 0.77s (8%) llvm-svn: 54896
* Don't instantiate GC metadata for declarations.Gordon Henriksen2008-08-172-1/+3
| | | | llvm-svn: 54895
* Fix merge errorAnton Korobeynikov2008-08-173-175/+0
| | | | llvm-svn: 54891
* Move ARM to pluggable asmprinterAnton Korobeynikov2008-08-175-20/+71
| | | | llvm-svn: 54889
* Use correct name for PPC codegen libraryAnton Korobeynikov2008-08-171-1/+1
| | | | llvm-svn: 54888
OpenPOWER on IntegriCloud