| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 42565
|
| |
|
|
|
|
| |
seem significant as well.
llvm-svn: 42564
|
| |
|
|
|
|
| |
each one's runOnFunction method.
llvm-svn: 42563
|
| |
|
|
| |
llvm-svn: 42554
|
| |
|
|
| |
llvm-svn: 42552
|
| |
|
|
| |
llvm-svn: 42549
|
| |
|
|
| |
llvm-svn: 42548
|
| |
|
|
| |
llvm-svn: 42547
|
| |
|
|
| |
llvm-svn: 42546
|
| |
|
|
| |
llvm-svn: 42542
|
| |
|
|
| |
llvm-svn: 42537
|
| |
|
|
|
|
| |
instructions reverse map.
llvm-svn: 42509
|
| |
|
|
| |
llvm-svn: 42508
|
| |
|
|
|
|
| |
SourceFiles list is fully filled in so that it sees all of the files.
llvm-svn: 42506
|
| |
|
|
| |
llvm-svn: 42499
|
| |
|
|
|
|
| |
then it is safe to promote value even if there is another conditional use inside the loop.
llvm-svn: 42493
|
| |
|
|
| |
llvm-svn: 42492
|
| |
|
|
| |
llvm-svn: 42488
|
| |
|
|
| |
llvm-svn: 42486
|
| |
|
|
|
|
|
|
| |
use APFloat for int-to-float/double; use
round-to-nearest for these (implementation-defined,
seems to match gcc).
llvm-svn: 42484
|
| |
|
|
| |
llvm-svn: 42483
|
| |
|
|
|
|
| |
And not super's super, either.
llvm-svn: 42482
|
| |
|
|
|
|
| |
calculate() methods for DomTree and PostDomTree remain to be merged/template-ized.
llvm-svn: 42476
|
| |
|
|
| |
llvm-svn: 42474
|
| |
|
|
|
|
|
| |
can be resolved to a function. This is required
for codegen and used by instcombine.
llvm-svn: 42469
|
| |
|
|
| |
llvm-svn: 42467
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 42465
|
| |
|
|
| |
llvm-svn: 42462
|
| |
|
|
| |
llvm-svn: 42459
|
| |
|
|
| |
llvm-svn: 42457
|
| |
|
|
|
|
|
| |
terminator) the one that has a CopyToReg use. This fixes
2006-05-11-InstrSched.ll with -new-cc-modeling-scheme.
llvm-svn: 42453
|
| |
|
|
|
|
| |
this out.
llvm-svn: 42448
|
| |
|
|
| |
llvm-svn: 42444
|
| |
|
|
| |
llvm-svn: 42443
|
| |
|
|
| |
llvm-svn: 42442
|
| |
|
|
| |
llvm-svn: 42440
|
| |
|
|
| |
llvm-svn: 42439
|
| |
|
|
|
|
| |
add more such code for DIEDwarfLabel::SizeOf and DIEObjectLabel::SizeOf.
llvm-svn: 42435
|
| |
|
|
|
|
| |
targets with 64-bit addresses.
llvm-svn: 42434
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 42429
|
| |
|
|
| |
llvm-svn: 42428
|
| |
|
|
| |
llvm-svn: 42427
|
| |
|
|
|
|
| |
add) clobbers EFLAGS.
llvm-svn: 42426
|
| |
|
|
| |
llvm-svn: 42423
|
| |
|
|
|
|
| |
Fixes a SWB crash.
llvm-svn: 42422
|
| |
|
|
|
|
| |
it common to DomTree and PostDomTree.
llvm-svn: 42420
|
| |
|
|
|
|
|
|
| |
other than PPC64. Instead of fixing it, just remove it and fix all the
places that use it to use TargetData::getPointerSize() instead, as there
aren't very many. Most of the references were in DwarfWriter.cpp.
llvm-svn: 42419
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It includes:
- location and of each safe point in machine code (identified by a
label)
- location of each root within the stack frame (identified by an
offset), including the metadata tag provided to llvm.gcroot in
the user program
- size of the stack frame (for collectors which want to cheat on
stack crawling :)
- and eventually will include liveness
It is to be populated by back-ends during code-generation.
CollectorModuleMetadata aggregates this information across the
entire module.
llvm-svn: 42418
|