summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Factor out asmprinter out of ppcAnton Korobeynikov2008-08-175-8/+57
| | | | llvm-svn: 54887
* Move X86 assembler printers into separate directory. This allows JIT-only ↵Anton Korobeynikov2008-08-1710-8/+55
| | | | | | users not to link it in (use 'x86codegen' llvm-config arg for this) llvm-svn: 54886
* Move all assembler printing related stuff into new libAsmPrinterAnton Korobeynikov2008-08-175-1/+173
| | | | llvm-svn: 54885
* Factor out asmprinters from collector interface.Anton Korobeynikov2008-08-171-0/+18
| | | | llvm-svn: 54884
* Factor GC metadata table assembly generation out of Collector in preparation ↵Gordon Henriksen2008-08-1710-50/+94
| | | | | | for splitting AsmPrinter into its own library. llvm-svn: 54881
* Factor GC metadata table assembly generation out of Collector in preparation ↵Gordon Henriksen2008-08-174-18/+72
| | | | | | for splitting AsmPrinter into its own library. llvm-svn: 54880
* Get raw_ostream.cpp to compile on MSVC.Argyrios Kyrtzidis2008-08-171-5/+11
| | | | llvm-svn: 54879
* Revert 54821. It's miscompiling 252.eon and 447.dealIIEvan Cheng2008-08-171-118/+1
| | | | llvm-svn: 54878
* I found a better place for this optz'n.Nick Lewycky2008-08-171-14/+10
| | | | llvm-svn: 54877
* Xor'ing both sides of icmp by sign-bit is equivalent to swapping signedness ofNick Lewycky2008-08-171-22/+50
| | | | | | | | the predicate. Also, make this optz'n apply in more cases where it's safe to do so. llvm-svn: 54876
* avoid an extraneous std::string constructionChris Lattner2008-08-171-1/+1
| | | | llvm-svn: 54875
* Rework the routines that convert AP[S]Int into a string. Now, instead ofChris Lattner2008-08-179-121/+128
| | | | | | | | | | | | | | | | | returning an std::string by value, it fills in a SmallString/SmallVector passed in. This significantly reduces string thrashing in some cases. More specifically, this: - Adds an operator<< and a print method for APInt that allows you to directly send them to an ostream. - Reimplements APInt::toString to be much simpler and more efficient algorithmically in addition to not thrashing strings quite as much. This speeds up llvm-dis on kc++ by 7%, and may also slightly speed up the asmprinter. This also fixes a bug I introduced into the asmwriter in a previous patch w.r.t. alias printing. llvm-svn: 54873
* remove a dead APInt ctor.Chris Lattner2008-08-172-8/+2
| | | | llvm-svn: 54869
* avoid string thrashing when formatting names in output. ThisChris Lattner2008-08-171-54/+130
| | | | | | speeds up release-asserts llvm-dis on kc++ from 1.86s to 1.04s (~79%) llvm-svn: 54868
* random cleanups.Chris Lattner2008-08-171-53/+28
| | | | llvm-svn: 54866
* add support for a cout/cerr analog (outs()/errs()) as well asChris Lattner2008-08-171-0/+31
| | | | | | | a simple adaptor class to give raw output capabilities to something that wants to write to an ostream. llvm-svn: 54865
* opening "-" automatically yields stdout.Chris Lattner2008-08-171-0/+7
| | | | llvm-svn: 54863
* rename OutputData to 'write' to match ostream.Chris Lattner2008-08-171-1/+1
| | | | llvm-svn: 54857
* add a new raw_ostream class which is an extremely high performance ostream thatChris Lattner2008-08-171-0/+64
| | | | | | | | can *only* output data (no seeking, reading, etc). This is adapted from the clang "-E outputter", and is roughly 10% faster than stdio on darwin and 30% (or more) faster than std::ostream. llvm-svn: 54855
* PPC/Linux normally uses named section for bssAnton Korobeynikov2008-08-161-0/+5
| | | | llvm-svn: 54847
* Use proper strings section name for PPCAnton Korobeynikov2008-08-161-1/+1
| | | | llvm-svn: 54846
* Use correct name for TLS address resolution routine on x86-64Anton Korobeynikov2008-08-161-2/+2
| | | | llvm-svn: 54845
* Add interface for section override. Use this for Sparc, since it should use ↵Anton Korobeynikov2008-08-162-4/+11
| | | | | | named BSS section. llvm-svn: 54844
* Move SLEB/ULEB size calculation routines from AsmPrinter to TargetAsmInfo. ↵Anton Korobeynikov2008-08-164-468/+464
| | | | | | This makes JIT asmprinter-free. llvm-svn: 54843
* Reduce heap trashing due to std::string construction / concatenation via ↵Anton Korobeynikov2008-08-166-7/+20
| | | | | | caching of section flags string representations llvm-svn: 54842
* Remove GCSE, ValueNumbering, and LoadValueNumbering. These have been ↵Owen Anderson2008-08-153-1021/+0
| | | | | | deprecated for almost a year; it's finally time for them to go away. llvm-svn: 54822
* Reapply 54786. Add overflow and number of mantissa bits checks.Devang Patel2008-08-151-1/+118
| | | | llvm-svn: 54821
* Convert several std::vectors over to SmallVector, and use reserve() as ↵Owen Anderson2008-08-151-2/+4
| | | | | | appropriate for cases where std::vector is still used. llvm-svn: 54820
* Inline the fastpath of PATypeHolder::get(). This is a small speedup in Chris Lattner2008-08-151-15/+0
| | | | | | instcombine among other things. llvm-svn: 54814
* Revert 54786. It's not checking for overflows, etc.Evan Cheng2008-08-151-101/+0
| | | | llvm-svn: 54813
* use smallvector instead of vector for a couple worklists. This speeds up ↵Chris Lattner2008-08-151-2/+2
| | | | | | | | instcombine by ~10% on some testcases. llvm-svn: 54811
* Use SmallSet instead of std::set to save allocations.Owen Anderson2008-08-141-3/+3
| | | | llvm-svn: 54810
* Move MachineInstr::getOpcode inline.Owen Anderson2008-08-141-6/+0
| | | | llvm-svn: 54807
OpenPOWER on IntegriCloud