diff options
author | Simon Marlow <marlowsd@gmail.com> | 2010-06-18 08:21:47 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2010-06-18 08:21:47 +0000 |
commit | 4e589b58e1bf3d36b95d48fd45ec76cb84a1b46d (patch) | |
tree | c0ab955ed112cbdbb6a0071c86312fe5d424d641 /compiler/nativeGen | |
parent | 368a69a51c3787991e1a1a8726a33fcdff3a39d2 (diff) | |
download | haskell-4e589b58e1bf3d36b95d48fd45ec76cb84a1b46d.tar.gz |
joinToTargets: fix a case of panic "handleComponent cyclic"
Diffstat (limited to 'compiler/nativeGen')
-rw-r--r-- | compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs b/compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs index 8ff06eb886..a9367f9f01 100644 --- a/compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs +++ b/compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs @@ -289,7 +289,8 @@ handleComponent delta _ (AcyclicSCC (vreg, src, dsts)) -- require a fixup. -- handleComponent delta instr - (CyclicSCC ( (vreg, InReg sreg, [InReg dreg]) : rest)) + (CyclicSCC ( (vreg, InReg sreg, (InReg dreg: _)) : rest)) + -- dest list may have more than one element, if the reg is also InMem. = do -- spill the source into its slot (instrSpill, slot) |