[llvm-commits] [llvm] r48175 - /llvm/trunk/lib/CodeGen/RegAllocLinearScan.cpp

Bill Wendling isanbard at gmail.com
Mon Mar 10 16:00:35 PDT 2008


I'm getting at least these two failures now. Should you XFAIL them?

FAIL: /Volumes/Gir/devel/llvm/llvm.src/test/CodeGen/Generic/badarg6.ll
Failed with signal(SIGABRT) at line 1
while running: llvm-as <
/Volumes/Gir/devel/llvm/llvm.src/test/CodeGen/Generic/badarg6.ll | llc
Register allocator ran out of registers!
0   llc                                 0x00680167
_ZN4llvm3sys20SetInterruptFunctionEPFvvE + 87
1   llc                                 0x006802d1
_ZN4llvm3sys20SetInterruptFunctionEPFvvE + 449
2   libSystem.B.dylib                   0x9141e5eb _sigtramp + 43
3   ???                                 0xffffffff 0x0 + 4294967295
4   libSystem.B.dylib                   0x914973f2 raise + 26
5   libSystem.B.dylib                   0x914a69af abort + 73
6   llc                                 0x004b9f4f
_ZN4llvm33createLinearScanRegisterAllocatorEv + 8117
7   llc                                 0x004bb5ce
_ZN4llvm33createLinearScanRegisterAllocatorEv + 13876
8   llc                                 0x004bbd5e
_ZN4llvm33createLinearScanRegisterAllocatorEv + 15812
9   llc                                 0x0004f3ee
_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE + 40
10  llc                                 0x00601881
_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE + 297
11  llc                                 0x00601ad8
_ZN4llvm23FunctionPassManagerImpl3runERNS_8FunctionE + 110
12  llc                                 0x00601c5d
_ZN4llvm19FunctionPassManager3runERNS_8FunctionE + 155
13  llc                                 0x000036cb main + 2575
14  llc                                 0x00002136 start + 54

FAIL: /Volumes/Gir/devel/llvm/llvm.src/test/CodeGen/Generic/cast-fp.ll
Failed with signal(SIGABRT) at line 1
while running: llvm-as <
/Volumes/Gir/devel/llvm/llvm.src/test/CodeGen/Generic/cast-fp.ll | llc
Register allocator ran out of registers!
0   llc                                 0x00680167
_ZN4llvm3sys20SetInterruptFunctionEPFvvE + 87
1   llc                                 0x006802d1
_ZN4llvm3sys20SetInterruptFunctionEPFvvE + 449
2   libSystem.B.dylib                   0x9141e5eb _sigtramp + 43
3   ???                                 0xffffffff 0x0 + 4294967295
4   libSystem.B.dylib                   0x914973f2 raise + 26
5   libSystem.B.dylib                   0x914a69af abort + 73
6   llc                                 0x004b9f4f
_ZN4llvm33createLinearScanRegisterAllocatorEv + 8117
7   llc                                 0x004bb5ce
_ZN4llvm33createLinearScanRegisterAllocatorEv + 13876
8   llc                                 0x004bbd5e
_ZN4llvm33createLinearScanRegisterAllocatorEv

-bw

On Mon, Mar 10, 2008 at 2:27 PM, Evan Cheng <evan.cheng at apple.com> wrote:
> Author: evancheng
>  Date: Mon Mar 10 16:27:20 2008
>  New Revision: 48175
>
>  URL: http://llvm.org/viewvc/llvm-project?rev=48175&view=rev
>  Log:
>  If the register allocator ran out of registers, just abort for now.
>
>  Modified:
>     llvm/trunk/lib/CodeGen/RegAllocLinearScan.cpp
>
>  Modified: llvm/trunk/lib/CodeGen/RegAllocLinearScan.cpp
>  URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/RegAllocLinearScan.cpp?rev=48175&r1=48174&r2=48175&view=diff
>
>  ==============================================================================
>  --- llvm/trunk/lib/CodeGen/RegAllocLinearScan.cpp (original)
>  +++ llvm/trunk/lib/CodeGen/RegAllocLinearScan.cpp Mon Mar 10 16:27:20 2008
>  @@ -685,8 +685,14 @@
>      }
>
>      // All registers must have inf weight. Just grab one!
>  -    if (!minReg)
>  +    if (!minReg) {
>  +      if (active_.size() == 0) {
>  +        // FIXME: All the registers are occupied by fixed intervals.
>  +        cerr << "Register allocator ran out of registers!\n";
>  +        abort();
>  +      }
>        minReg = *RC->allocation_order_begin(*mf_);
>  +    }
>    }
>
>    DOUT << "\t\tregister with min weight: "
>
>
>  _______________________________________________
>  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