summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Use empty() member functions when that's what's being tested for insteadDan Gohman2007-10-0317-38/+36
| | | | | | of comparing begin() and end(). llvm-svn: 42585
* Fix a using namespace llvm; in a header file.Dan Gohman2007-10-031-0/+1
| | | | llvm-svn: 42584
* Tone down an overzealous optimization.Dale Johannesen2007-10-031-3/+21
| | | | llvm-svn: 42582
* add a noteChris Lattner2007-10-031-0/+32
| | | | llvm-svn: 42579
* Fix PR1719, by not marking llvm.global.annotations internal.Tanya Lattner2007-10-031-0/+1
| | | | llvm-svn: 42578
* Tweak RoundAwayFromZero the bit number below which is truncated, and makeNeil Booth2007-10-031-8/+13
| | | | | | | | it const. Preparation for APFloat -> hexadecimal string conversion. llvm-svn: 42576
* add a noteChris Lattner2007-10-031-0/+16
| | | | llvm-svn: 42573
* Fix PR1719, by not marking llvm.noinline internal.Chris Lattner2007-10-031-0/+1
| | | | llvm-svn: 42565
* Bill's example is still not enough to repro this, but it has other issues thatChris Lattner2007-10-031-0/+8
| | | | | | seem significant as well. llvm-svn: 42564
* Factor some code from the DomTree and PostDomTree calculate methods up into Owen Anderson2007-10-034-20/+29
| | | | | | each one's runOnFunction method. llvm-svn: 42563
* Another micro-opt.Bill Wendling2007-10-021-0/+16
| | | | llvm-svn: 42554
* Another missed optimization with LICM.Bill Wendling2007-10-021-0/+23
| | | | llvm-svn: 42552
* Small label changes.Bill Wendling2007-10-021-5/+2
| | | | llvm-svn: 42549
* Now with source code.Bill Wendling2007-10-021-0/+16
| | | | llvm-svn: 42548
* Now with LL code!Bill Wendling2007-10-021-1/+17
| | | | llvm-svn: 42547
* Another missed optimization.Bill Wendling2007-10-021-0/+28
| | | | llvm-svn: 42546
* Micro-optimization -- missed LICM opportunity.Bill Wendling2007-10-021-0/+24
| | | | llvm-svn: 42542
* Rewrite sqrt and powi to use anyfloat. By popular demand.Dale Johannesen2007-10-024-55/+36
| | | | llvm-svn: 42537
* Refactor code to add load / store folded instructions -> register onlyEvan Cheng2007-10-012-607/+599
| | | | | | instructions reverse map. llvm-svn: 42509
* Fix stride computations for long double arrays.Dale Johannesen2007-10-013-4/+8
| | | | llvm-svn: 42508
* Move the code that emits the .file directives so that it runs after theDan Gohman2007-10-011-16/+17
| | | | | | SourceFiles list is fully filled in so that it sees all of the files. llvm-svn: 42506
* Remove simple scheduler.Evan Cheng2007-10-011-1165/+0
| | | | llvm-svn: 42499
* Relax unsafe use check. If there is one unconditional use inside the loop ↵Devang Patel2007-10-011-22/+22
| | | | | | then it is safe to promote value even if there is another conditional use inside the loop. llvm-svn: 42493
* Typo. X86comi doesn't read / write chain's.Evan Cheng2007-10-011-2/+1
| | | | llvm-svn: 42492
* Add getABITypeSize, getABITypeSizeInBitsDale Johannesen2007-10-011-1/+6
| | | | llvm-svn: 42488
* remove dup commentDale Johannesen2007-09-301-1/+0
| | | | llvm-svn: 42486
* Constant fold int-to-long-double conversions;Dale Johannesen2007-09-304-21/+13
| | | | | | | | use APFloat for int-to-float/double; use round-to-nearest for these (implementation-defined, seems to match gcc). llvm-svn: 42484
* Simplify and fix signed int -> FP conversions.Dale Johannesen2007-09-301-11/+3
| | | | llvm-svn: 42483
* AsmPrinters overriding getAnalysisUsage should call super.Gordon Henriksen2007-09-302-1/+2
| | | | | | And not super's super, either. llvm-svn: 42482
* Template-ize more of the DomTree internal implementation details. Only the ↵Owen Anderson2007-09-303-146/+7
| | | | | | calculate() methods for DomTree and PostDomTree remain to be merged/template-ized. llvm-svn: 42476
* Add a new DenseSet abstraction.Chris Lattner2007-09-301-4/+4
| | | | llvm-svn: 42474
* Check that the second parameter of init_trampolineDuncan Sands2007-09-291-2/+6
| | | | | | | can be resolved to a function. This is required for codegen and used by instcombine. llvm-svn: 42469
* This is done already.Gordon Henriksen2007-09-291-7/+0
| | | | llvm-svn: 42467
* Collector is the base class for garbage collection code generators.Gordon Henriksen2007-09-292-0/+391
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This version enhances the previous patch to add root initialization as discussed here: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053455.html Collector gives its subclasses control over generic algorithms: unsigned NeededSafePoints; //< Bitmask of required safe points. bool CustomReadBarriers; //< Default is to insert loads. bool CustomWriteBarriers; //< Default is to insert stores. bool CustomRoots; //< Default is to pass through to backend. bool InitRoots; //< If set, roots are nulled during lowering. It also has callbacks which collectors can hook: /// If any of the actions are set to Custom, this is expected to /// be overriden to create a transform to lower those actions to /// LLVM IR. virtual Pass *createCustomLoweringPass() const; /// beginAssembly/finishAssembly - Emit module metadata as /// assembly code. virtual void beginAssembly(Module &M, std::ostream &OS, AsmPrinter &AP, const TargetAsmInfo &TAI) const; virtual void finishAssembly(Module &M, CollectorModuleMetadata &CMM, std::ostream &OS, AsmPrinter &AP, const TargetAsmInfo &TAI) const; Various other independent algorithms could be implemented, but were not necessary for the initial two collectors. Some examples are listed here: http://llvm.org/docs/GarbageCollection.html#collector-algos llvm-svn: 42466
* Demoting CHelpers.h to include/llvm/Support.Gordon Henriksen2007-09-292-2/+2
| | | | llvm-svn: 42465
* Switch to densemap rather than std::setDaniel Berlin2007-09-291-3/+26
| | | | llvm-svn: 42462
* Enabling new condition code modeling scheme.Evan Cheng2007-09-2910-1649/+308
| | | | llvm-svn: 42459
* Teach SplitVectorOp how to split INSERT_VECTOR_ELT.Dan Gohman2007-09-281-0/+12
| | | | llvm-svn: 42457
* If two instructions are both two-address code, favors (schedule closer toEvan Cheng2007-09-282-8/+25
| | | | | | | terminator) the one that has a CopyToReg use. This fixes 2006-05-11-InstrSched.ll with -new-cc-modeling-scheme. llvm-svn: 42453
* really fix PR1581, thanks to Daniel Dunbar for pointingChris Lattner2007-09-281-1/+1
| | | | | | this out. llvm-svn: 42448
* Make Value::getNameLen not crash on an empty name, fixing PR1712.Chris Lattner2007-09-281-1/+1
| | | | llvm-svn: 42444
* Remove a poor scheduling heuristic.Evan Cheng2007-09-281-34/+5
| | | | llvm-svn: 42443
* Trim some unneeded fields.Evan Cheng2007-09-283-26/+12
| | | | llvm-svn: 42442
* Fix long double -> uint64 conversion.Dale Johannesen2007-09-281-1/+5
| | | | llvm-svn: 42440
* minor long double related changesDale Johannesen2007-09-283-4/+21
| | | | llvm-svn: 42439
* Make the checks for DW_FORM_data4 consistent with the others, andDan Gohman2007-09-281-2/+6
| | | | | | add more such code for DIEDwarfLabel::SizeOf and DIEObjectLabel::SizeOf. llvm-svn: 42435
* Use 32-bit data directives for DW_FORM_data4 format data, even onDan Gohman2007-09-281-8/+10
| | | | | | targets with 64-bit addresses. llvm-svn: 42434
* Refactor the memcpy lowering for the x86 target.Rafael Espindola2007-09-282-56/+62
| | | | | | | | The only generated code difference is that now we call memcpy when the size of the array is unknown. This matches GCC behavior and is better since the run time value can be arbitrarily large. llvm-svn: 42433
* Stop inventing new words. :-)Evan Cheng2007-09-281-1/+1
| | | | llvm-svn: 42429
* Remove unneeded #include.Owen Anderson2007-09-281-1/+0
| | | | llvm-svn: 42428
OpenPOWER on IntegriCloud