<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 - Regression(360859): Assertion failed: Dead.count(Pred) && "All predecessors must be dead!" on 32-bit win"
href="https://bugs.llvm.org/show_bug.cgi?id=41917">41917</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Regression(360859): Assertion failed: Dead.count(Pred) && "All predecessors must be dead!" on 32-bit win
</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>Windows NT
</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>Transformation Utilities
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>nicolasweber@gmx.de
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org
</td>
</tr></table>
<p>
<div>
<pre>thakis@thakis:~/src/llvm-project$ ./Path-4503c7.reduced.sh
clang: ../../llvm/lib/Transforms/Utils/BasicBlockUtils.cpp:97: void
llvm::DeleteDeadBlocks(ArrayRef<llvm::BasicBlock *>, llvm::DomTreeUpdater *,
bool): Assertion `Dead.count(Pred) && "All predecessors must be dead!"' failed.
Stack dump:
0. Program arguments:
/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang -cc1 -triple
i386-pc-windows-msvc19.11.0 -emit-obj -Os Path-4503c7.reduced.cpp
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module
'Path-4503c7.reduced.cpp'.
4. Running pass 'Merge contiguous icmps into a memcmp' on function
'@"?f@@YA_NVa@@0@Z"'
#0 0x0000000002f81d6d PrintStackTraceSignalHandler(void*)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2f81d6d)
#1 0x0000000002f7faee llvm::sys::RunSignalHandlers()
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2f7faee)
#2 0x0000000002f81f28 SignalHandler(int)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2f81f28)
#3 0x00007f3beeb490c0 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x110c0)
#4 0x00007f3bedd0cfcf raise (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf)
#5 0x00007f3bedd0e3fa abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa)
#6 0x00007f3bedd05e37 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37)
#7 0x00007f3bedd05ee2 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2)
#8 0x000000000342f6e1
llvm::DeleteDeadBlocks(llvm::ArrayRef<llvm::BasicBlock*>,
llvm::DomTreeUpdater*, bool)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x342f6e1)
#9 0x00000000033670a2 (anonymous
namespace)::MergeICmps::runOnFunction(llvm::Function&)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x33670a2)
#10 0x0000000002dbdd56 llvm::FPPassManager::runOnFunction(llvm::Function&)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2dbdd56)
#11 0x0000000002dbe063 llvm::FPPassManager::runOnModule(llvm::Module&)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2dbe063)
#12 0x0000000002dbe6ac llvm::legacy::PassManagerImpl::run(llvm::Module&)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2dbe6ac)
#13 0x0000000002171cbd clang::EmitBackendOutput(clang::DiagnosticsEngine&,
clang::HeaderSearchOptions const&, clang::CodeGenOptions const&,
clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout
const&, llvm::Module*, clang::BackendAction,
std::unique_ptr<llvm::raw_pwrite_stream,
std::default_delete<llvm::raw_pwrite_stream> >)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2171cbd)
#14 0x0000000002752bc7
clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x2752bc7)
#15 0x0000000003983aa5 clang::ParseAST(clang::Sema&, bool, bool)
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x3983aa5)
#16 0x00000000026b4c60 clang::FrontendAction::Execute()
(/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang+0x26b4c60)
thakis@thakis:~/src/llvm-project$ cat Path-4503c7.reduced.sh
/usr/local/google/home/thakis/src/llvm-project/out/gn/bin/clang -cc1 -triple
i386-pc-windows-msvc19.11.0 -emit-obj -Os Path-4503c7.reduced.cpp
thakis@thakis:~/src/llvm-project$ cat Path-4503c7.reduced.cpp
class a {
int b;
int c;
int h;
int d;
int e;
friend bool f(a, a);
};
bool fn2();
bool f(a g, a p2) {
fn2() && fn2();
return g.c == p2.c && g.h == p2.h;
}</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>