<html>
<head>
<base href="https://bugs.llvm.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - [RA] Crash in SlotIndex::getIndex()"
href="https://bugs.llvm.org/show_bug.cgi?id=33079">33079</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>[RA] Crash in SlotIndex::getIndex()
</td>
</tr>
<tr>
<th>Product</th>
<td>libraries
</td>
</tr>
<tr>
<th>Version</th>
<td>trunk
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>enhancement
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>Register Allocator
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>davide@freebsd.org
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org, matze@braunis.de, qcolombet@apple.com
</td>
</tr></table>
<p>
<div>
<pre>The input IR crashes in SlotIndex if invoked with the following:
./llc -opt-bisect-limit=19 ren.ll
Relevant stacktrace:
#3 0x00007ff6f048dc30 __restore_rt (/lib64/libpthread.so.0+0x10c30)
#4 0x000000000146d5f9 llvm::SlotIndex::getIndex() const
/home/davide/work/llvm/build-rel-noassert/../include/llvm/CodeGen/SlotIndexes.h:118:0
#5 0x000000000146d5f9 llvm::SlotIndex::operator>=(llvm::SlotIndex) const
/home/davide/work/llvm/build-rel-noassert/../include/llvm/CodeGen/SlotIndexes.h:186:0
#6 0x000000000146d5f9 llvm::LiveRange::find(llvm::SlotIndex)
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/LiveInterval.cpp:340:0
#7 0x000000000165fc79 llvm::LiveRange::FindSegmentContaining(llvm::SlotIndex)
const
/home/davide/work/llvm/build-rel-noassert/../include/llvm/CodeGen/LiveInterval.h:425:0
#8 0x000000000165fc79 llvm::LiveRange::getVNInfoAt(llvm::SlotIndex) const
/home/davide/work/llvm/build-rel-noassert/../include/llvm/CodeGen/LiveInterval.h:404:0
#9 0x000000000165fc79 spillAroundUses
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/InlineSpiller.cpp:914:0
#10 0x000000000165fc79 spillAll
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/InlineSpiller.cpp:996:0
#11 0x000000000165fc79 (anonymous
namespace)::InlineSpiller::spill(llvm::LiveRangeEdit&)
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/InlineSpiller.cpp:1045:0
#12 0x000000000157f25b setStage<unsigned int*>
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/RegAllocGreedy.cpp:225:0
#13 0x000000000157f25b (anonymous
namespace)::RAGreedy::selectOrSplitImpl(llvm::LiveInterval&,
llvm::SmallVectorImpl<unsigned int>&, llvm::SmallSet<unsigned int, 16u,
std::less<unsigned int> >&, unsigned int)
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/RegAllocGreedy.cpp:2623:0
#14 0x0000000001581681 (anonymous
namespace)::RAGreedy::selectOrSplit(llvm::LiveInterval&,
llvm::SmallVectorImpl<unsigned int>&)
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/RegAllocGreedy.cpp:2285:0
#15 0x000000000168608d llvm::RegAllocBase::allocatePhysRegs()
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/RegAllocBase.cpp:111:0
#16 0x000000000157cede llvm::SmallVectorTemplateCommon<llvm::LiveInterval*,
void>::end()
/home/davide/work/llvm/build-rel-noassert/../include/llvm/ADT/SmallVector.h:119:0
#17 0x000000000157cede llvm::SetVector<llvm::LiveInterval*,
llvm::SmallVector<llvm::LiveInterval*, 8u>,
llvm::SmallDenseSet<llvm::LiveInterval*, 8u,
llvm::DenseMapInfo<llvm::LiveInterval*> > >::end()
/home/davide/work/llvm/build-rel-noassert/../include/llvm/ADT/SetVector.h:94:0
#18 0x000000000157cede tryHintsRecoloring
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/RegAllocGreedy.cpp:2528:0
#19 0x000000000157cede (anonymous
namespace)::RAGreedy::runOnMachineFunction(llvm::MachineFunction&)
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/RegAllocGreedy.cpp:2743:0
#20 0x00000000014d5af9
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
/home/davide/work/llvm/build-rel-noassert/../lib/CodeGen/MachineFunctionPass.cpp:62:0
#21 0x00000000017440f1 llvm::FPPassManager::runOnFunction(llvm::Function&)
/home/davide/work/llvm/build-rel-noassert/../lib/IR/LegacyPassManager.cpp:1519:0
#22 0x0000000001744193 llvm::FPPassManager::runOnModule(llvm::Module&)
/home/davide/work/llvm/build-rel-noassert/../lib/IR/LegacyPassManager.cpp:1540:0
#23 0x0000000001744ae0 runOnModule
/home/davide/work/llvm/build-rel-noassert/../lib/IR/LegacyPassManager.cpp:1596:0
#24 0x0000000001744ae0 llvm::legacy::PassManagerImpl::run(llvm::Module&)
/home/davide/work/llvm/build-rel-noassert/../lib/IR/LegacyPassManager.cpp:1699:0
#25 0x00000000008867b0 compileModule(char**, llvm::LLVMContext&)
/home/davide/work/llvm/build-rel-noassert/../tools/llc/llc.cpp:587:0
#26 0x0000000000810c10 main
/home/davide/work/llvm/build-rel-noassert/../tools/llc/llc.cpp:338:0
#27 0x00007ff6eefe5731 __libc_start_main (/lib64/libc.so.6+0x20731)
#28 0x000000000087be49 _start (./llc+0x87be49)</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>