[llvm-commits] [llvm] r62178 - /llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp

Evan Cheng echeng at apple.com
Tue Jan 13 12:58:00 PST 2009


You trust my comments too much. :-) Are you sure these won't happen?

Evan

On Jan 13, 2009, at 12:25 PM, Dan Gohman wrote:

> Author: djg
> Date: Tue Jan 13 14:25:24 2009
> New Revision: 62178
>
> URL: http://llvm.org/viewvc/llvm-project?rev=62178&view=rev
> Log:
> Use assertions to check for conditions that should never happen.
>
> Modified:
>    llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp
>
> Modified: llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp?rev=62178&r1=62177&r2=62178&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp (original)
> +++ llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp Tue Jan 13  
> 14:25:24 2009
> @@ -104,8 +104,7 @@
>   // BValNo is a value number in B that is defined by a copy from  
> A.  'B3' in
>   // the example above.
>   LiveInterval::iterator BLR = IntB.FindLiveRangeContaining(CopyIdx);
> -  if (BLR == IntB.end()) // Should never happen!
> -    return false;
> +  assert(BLR != IntB.end() && "Live range not found!");
>   VNInfo *BValNo = BLR->valno;
>
>   // Get the location that B is defined at.  Two options: either  
> this value has
> @@ -116,8 +115,7 @@
>
>   // AValNo is the value number in A that defines the copy, A3 in  
> the example.
>   LiveInterval::iterator ALR =  
> IntA.FindLiveRangeContaining(CopyIdx-1);
> -  if (ALR == IntA.end()) // Should never happen!
> -    return false;
> +  assert(ALR != IntA.end() && "Live range not found!");
>   VNInfo *AValNo = ALR->valno;
>   // If it's re-defined by an early clobber somewhere in the live  
> range, then
>   // it's not safe to eliminate the copy. FIXME: This is a temporary  
> workaround.
> @@ -153,8 +151,7 @@
>
>   // Get the LiveRange in IntB that this value number starts with.
>   LiveInterval::iterator ValLR = IntB.FindLiveRangeContaining(AValNo- 
> >def-1);
> -  if (ValLR == IntB.end()) // Should never happen!
> -    return false;
> +  assert(ValLR != IntB.end() && "Live range not found!");
>
>   // Make sure that the end of the live range is inside the same  
> block as
>   // CopyMI.
> @@ -288,8 +285,7 @@
>   // BValNo is a value number in B that is defined by a copy from A.  
> 'B3' in
>   // the example above.
>   LiveInterval::iterator BLR = IntB.FindLiveRangeContaining(CopyIdx);
> -  if (BLR == IntB.end()) // Should never happen!
> -    return false;
> +  assert(BLR != IntB.end() && "Live range not found!");
>   VNInfo *BValNo = BLR->valno;
>
>   // Get the location that B is defined at.  Two options: either  
> this value has
> @@ -300,8 +296,7 @@
>
>   // AValNo is the value number in A that defines the copy, A3 in  
> the example.
>   LiveInterval::iterator ALR =  
> IntA.FindLiveRangeContaining(CopyIdx-1);
> -  if (ALR == IntA.end()) // Should never happen!
> -    return false;
> +  assert(ALR != IntA.end() && "Live range not found!");
>   VNInfo *AValNo = ALR->valno;
>   // If other defs can reach uses of this def, then it's not safe to  
> perform
>   // the optimization.
> @@ -462,8 +457,7 @@
>                                                        MachineInstr  
> *CopyMI) {
>   unsigned CopyIdx = li_->getUseIndex(li_- 
> >getInstructionIndex(CopyMI));
>   LiveInterval::iterator SrcLR =  
> SrcInt.FindLiveRangeContaining(CopyIdx);
> -  if (SrcLR == SrcInt.end()) // Should never happen!
> -    return false;
> +  assert(SrcLR != SrcInt.end() && "Live range not found!");
>   VNInfo *ValNo = SrcLR->valno;
>   // If other defs can reach uses of this def, then it's not safe to  
> perform
>   // the optimization.
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list