[llvm-commits] [llvm] r51440 - /llvm/trunk/lib/CodeGen/LiveIntervalAnalysis.cpp

Evan Cheng evan.cheng at apple.com
Fri May 23 15:59:19 PDT 2008


Hi David,

This breaks quite a few tests. See Grawp-PIC nightly tester results.  
I'll back it out for now.

New Test Failures:
Applications/ClamAV/clamscan [LLC compile, LLC-BETA compile, , LLC]
Applications/JM/lencod/lencod [LLC compile, LLC-BETA compile, , LLC,  
LLC-BETA]
Applications/kimwitu++/kc [LLC compile, LLC-BETA compile, , LLC, LLC- 
BETA]
Applications/oggenc/oggenc [LLC compile, LLC-BETA compile, , LLC, LLC- 
BETA]
Applications/SPASS/SPASS [LLC compile, LLC-BETA compile, , LLC, LLC- 
BETA]
Applications/sqlite3/sqlite3 [LLC compile, LLC-BETA compile, , LLC,  
LLC-BETA]
Applications/treecc/treecc [LLC compile, LLC-BETA compile, , LLC, LLC- 
BETA]
Benchmarks/FreeBench/analyzer/analyzer []
Benchmarks/llubenchmark/llu [LLC compile, LLC-BETA compile, , LLC, LLC- 
BETA]
Benchmarks/MallocBench/cfrac/cfrac [LLC compile, LLC-BETA compile, ,  
LLC, LLC-BETA]
Benchmarks/MallocBench/espresso/espresso [LLC compile, LLC-BETA  
compile, , LLC, LLC-BETA]
Benchmarks/MiBench/automotive-susan/automotive-susan [LLC compile, LLC- 
BETA compile, , LLC, LLC-BETA]
Benchmarks/MiBench/consumer-jpeg/consumer-jpeg [LLC compile, LLC-BETA  
compile, , LLC, LLC-BETA]
Benchmarks/MiBench/consumer-lame/consumer-lame [LLC compile, LLC-BETA  
compile, , LLC, LLC-BETA]
Benchmarks/MiBench/consumer-typeset/consumer-typeset [LLC compile, LLC- 
BETA compile, , LLC, LLC-BETA]
Benchmarks/MiBench/office-ispell/office-ispell [LLC compile, LLC-BETA  
compile, , LLC]
...

Evan


On May 22, 2008, at 2:16 PM, David Greene wrote:

> Author: greened
> Date: Thu May 22 16:16:33 2008
> New Revision: 51440
>
> URL: http://llvm.org/viewvc/llvm-project?rev=51440&view=rev
> Log:
>
> When rewriting defs and uses after spilling, don't set the weight of a
> live interval to infinity if the instruction being rewritten is an
> original remat def instruction.  We were only checking against the  
> clone
> of the remat def which doesn't actually appear in the IR at all.
>
> Modified:
>    llvm/trunk/lib/CodeGen/LiveIntervalAnalysis.cpp
>
> Modified: llvm/trunk/lib/CodeGen/LiveIntervalAnalysis.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/LiveIntervalAnalysis.cpp?rev=51440&r1=51439&r2=51440&view=diff
>
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- llvm/trunk/lib/CodeGen/LiveIntervalAnalysis.cpp (original)
> +++ llvm/trunk/lib/CodeGen/LiveIntervalAnalysis.cpp Thu May 22  
> 16:16:33 2008
> @@ -1150,7 +1150,9 @@
>     }
>     MachineBasicBlock *MBB = MI->getParent();
>
> -    if (ImpUse && MI != ReMatDefMI) {
> +    // ReMatDefMI is a clone and not in the IR at all, so check
> +    // RefMatOrigDefMI too.
> +    if (ImpUse && MI != ReMatDefMI && MI != ReMatOrigDefMI) {
>       // Re-matting an instruction with virtual register use. Update  
> the
>       // register interval's spill weight to HUGE_VALF to prevent it  
> from
>       // being spilled.
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20080523/af0013b2/attachment.html>


More information about the llvm-commits mailing list