<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 - ToT fails to compile LegalizeIntegerTypes with code coverage enabled"
href="https://bugs.llvm.org/show_bug.cgi?id=32285">32285</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>ToT fails to compile LegalizeIntegerTypes with code coverage enabled
</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>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>Common Code Generator Code
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>vsk@apple.com
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org
</td>
</tr></table>
<p>
<div>
<pre>Created <span class=""><a href="attachment.cgi?id=18098" name="attach_18098" title="Reduced *.ll reproducer">attachment 18098</a> <a href="attachment.cgi?id=18098&action=edit" title="Reduced *.ll reproducer">[details]</a></span>
Reduced *.ll reproducer
ToT hits an assertion failure when compiling LegalizeIntegerTypes.cpp with
clang-based code coverage. I am attaching some reproducers:
* bugpoint-reduced-simplified.ll (simply run with 'opt -O3')
* A traditional preprocessed source / repro script
I suspect the following patch is responsible:
<a href="https://reviews.llvm.org/D29540">https://reviews.llvm.org/D29540</a>
Here is the backtrace:
Assertion failed: (Ty->isVectorTy() && "Can only scalarize vectors"), function
getScalarizationOverhead, file
/Users/vk/src/llvm.org-master/llvm/include/llvm/CodeGen/BasicTTIImpl.h, line
294.
4 libsystem_c.dylib 0x0000000104190f83 abort + 127
5 libsystem_c.dylib 0x00000001041596a6 basename_r + 0
6 opt 0x0000000101caedc3
llvm::BasicTTIImplBase<llvm::X86TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID,
llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int) +
1267
7 opt 0x00000001022282dc
llvm::TargetTransformInfo::getIntrinsicInstrCost(llvm::Intrinsic::ID,
llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
const + 28
8 opt 0x0000000102cdf678
getVectorIntrinsicCost(llvm::CallInst*, unsigned int, llvm::TargetTransformInfo
const&, llvm::TargetLibraryInfo const*) + 376
9 opt 0x0000000102cde4d6 (anonymous
namespace)::LoopVectorizationCostModel::getInstructionCost(llvm::Instruction*,
unsigned int) + 3190
10 opt 0x0000000102cdf92e (anonymous
namespace)::LoopVectorizationCostModel::expectedCost(unsigned int) + 222
11 opt 0x0000000102cc33b9
llvm::LoopVectorizePass::processLoop(llvm::Loop*) + 11913
12 opt 0x0000000102cce620
llvm::LoopVectorizePass::runImpl(llvm::Function&, llvm::ScalarEvolution&,
llvm::LoopInfo&, llvm::TargetTransformInfo&, llvm::DominatorTree&,
llvm::BlockFrequencyInfo&, llvm::TargetLibraryInfo*, llvm::DemandedBits&,
llvm::AAResults&, llvm::AssumptionCache&,
std::__1::function<llvm::LoopAccessInfo const& (llvm::Loop&)>&,
llvm::OptimizationRemarkEmitter&) + 528
13 opt 0x0000000102ccfefc (anonymous
namespace)::LoopVectorize::runOnFunction(llvm::Function&) + 1196
14 opt 0x0000000102657e7d
llvm::FPPassManager::runOnFunction(llvm::Function&) + 541
15 opt 0x00000001026580e3
llvm::FPPassManager::runOnModule(llvm::Module&) + 51
16 opt 0x000000010265862d
llvm::legacy::PassManagerImpl::run(llvm::Module&) + 957</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>