[llvm-commits] [llvm] r40916 - in /llvm/trunk: include/llvm/CodeGen/LiveInterval.h lib/CodeGen/LiveInterval.cpp lib/CodeGen/LiveIntervalAnalysis.cpp lib/CodeGen/SimpleRegisterCoalescing.cpp

Chris Lattner clattner at apple.com
Tue Aug 7 22:16:03 PDT 2007


> - Each val# can have multiple kills.
> - Fix some minor bugs related to special markers on val# def. ~0U  
> means
>   undefined, ~1U means dead val#.

> +      unsigned def;  // instruction # of the definition
> +      unsigned reg;  // src reg: non-zero iff val# is defined by a  
> copy
> +      SmallVector<unsigned, 4> kills;  // instruction #s of the kills

Thanks!

> +    /// getKillsForValNum - Return the kill instruction indexes of  
> the specified
> +    /// value number.
> +    SmallVector<unsigned, 4> getKillsForValNum(unsigned ValNo)  
> const {

This should return the vector by const reference, instead of by copy.

>        //assert(ValNo < ValueNumberInfo.size());

Why not leave the assert in? :)

> @@ -300,7 +300,7 @@
>    // we want to avoid the interval scan if not.
>    bool MustMapCurValNos = false;
>    for (unsigned i = 0, e = getNumValNums(); i != e; ++i) {
> -    if (ValueNumberInfo[i].def == ~1U) continue;  // tombstone  
> value #
> +    //if (ValueNumberInfo[i].def == ~1U) continue;  // tombstone  
> value #

Will it stay or will it go? :)

-Chris



More information about the llvm-commits mailing list