[LLVMbugs] [Bug 10719] New: attempting to inline spill CRBITRC:%vreg
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Mon Aug 22 13:14:03 PDT 2011
http://llvm.org/bugs/show_bug.cgi?id=10719
Summary: attempting to inline spill CRBITRC:%vreg
Product: libraries
Version: trunk
Platform: PC
OS/Version: FreeBSD
Status: NEW
Severity: normal
Priority: P
Component: Backend: PowerPC
AssignedTo: unassignedbugs at nondot.org
ReportedBy: rdivacky at freebsd.org
CC: llvmbugs at cs.uiuc.edu
I added this assert:
Index: PPCInstrInfo.cpp
===================================================================
--- PPCInstrInfo.cpp (revision 138231)
+++ PPCInstrInfo.cpp (working copy)
@@ -444,6 +444,7 @@
else if (SrcReg == PPC::CR7LT || SrcReg == PPC::CR7GT ||
SrcReg == PPC::CR7EQ || SrcReg == PPC::CR7UN)
Reg = PPC::CR7;
+ assert(Reg != 0 && "not a physical register!");
return StoreRegToStackSlot(MF, Reg, isKill, FrameIdx,
PPC::CRRCRegisterClass, NewMIs);
and the attached is crashing
selectOrSplit CRBITRC:%vreg130,9.456929e-04 = [2616d,4352d:0) 0 at 2616d
RS_Spill Cascade 0
Inline spilling CRBITRC:%vreg130,9.456929e-04 = [2616d,4352d:0) 0 at 2616d
>From original %vreg64,1.191038e-03 = [2208d,4352d:0) 0 at 2208d
Tracing value %vreg130:0 at 2616d
copy of %vreg131:0 at 2208d
hoist in BB#25: %vreg131:0 at 2208d
def %vreg131:0 at 2208d %vreg131<def> = CRSET; CRBITRC:%vreg131
Prefer to spill %vreg131:0 at 2208d
Merged spilled regs: SS#0 = [2616d,4352d:0) 0 at invalid
spillAroundUses %vreg130
merged orig valno 0: SS#0 = [2208d,4352d:0) 0 at invalid
Checking redundant spills for 0 at 2208d in %vreg131,3.750000e-03 =
[2208d,2616d:0) 0 at 2208d
Merged to stack int: SS#0 = [2208d,4352d:0) 0 at invalid
Checking redundant spills for 0 at 2616d in %vreg130,9.456929e-04 =
[2616d,4352d:0) 0 at 2616d
Assertion failed: (Reg != 0 && "not a physical register!"), function
StoreRegToStackSlot, file PPCInstrInfo.cpp, line 447.
without the assert it will just crash later on during asm printing of the
instruction MFCRpseudo, but the real problem is that we're trying to spill a
CRBITRC:%vreg instead of a physical reg.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list