[llvm-bugs] [Bug 42355] New: Do not know how to custom type legalize this operation!
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Jun 21 10:42:03 PDT 2019
https://bugs.llvm.org/show_bug.cgi?id=42355
Bug ID: 42355
Summary: Do not know how to custom type legalize this
operation!
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: Backend: X86
Assignee: unassignedbugs at nondot.org
Reporter: rupprecht at google.com
CC: craig.topper at gmail.com, llvm-bugs at lists.llvm.org,
llvm-dev at redking.me.uk, spatel+llvm at rotateright.com
Clang crashes while building libaom (specifically
https://aomedia.googlesource.com/aom/+/refs/heads/master/av1/encoder/rdopt.c)
with avx512f, reduced to:
$ cat repro.c
int a, b;
char f[1];
void g() {
for (int i = 0; i < b; ++i)
if (a)
f[i] |= 1;
else
f[i] &= 1;
}
$ clang -mavx512f -O1 -fvectorize -c repro.c
Do not know how to custom type legalize this operation!
UNREACHABLE executed at
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Target/X86/X86ISelLowering.cpp:27254!
Stack dump:
0. Program arguments:
/usr/local/google/home/rupprecht/src/llvm-build/dev/bin/clang-9 -cc1 -triple
x86_64-unknown-linux-gnu -emit-obj -disable-free -main-file-name repro.c
-mrelocation-model static -mthread-model posix -fmath-errno -masm-verbose
-mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64
-target-feature +avx512f -dwarf-column-info -debugger-tuning=gdb
-momit-leaf-frame-pointer -coverage-notes-file
/google/src/cloud/rupprecht/aom-crash/google3/experimental/users/rupprecht/llvm/repro.gcno
-resource-dir
/usr/local/google/home/rupprecht/src/llvm-build/dev/lib/clang/9.0.0
-internal-isystem /usr/local/include -internal-isystem
/usr/local/google/home/rupprecht/src/llvm-build/dev/lib/clang/9.0.0/include
-internal-externc-isystem /usr/include/x86_64-linux-gnu
-internal-externc-isystem /include -internal-externc-isystem /usr/include -O1
-fdebug-compilation-dir
/google/src/cloud/rupprecht/aom-crash/google3/experimental/users/rupprecht/llvm
-ferror-limit 19 -fmessage-length 0 -fobjc-runtime=gcc
-fdiagnostics-show-option -vectorize-loops -faddrsig -o repro.o -x c repro.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module 'repro.c'.
4. Running pass 'X86 DAG->DAG Instruction Selection' on function '@g'
#0 0x00007f7abb82bdc9 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:494:11
#1 0x00007f7abb82bf79 PrintStackTraceSignalHandler(void*)
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:558:1
#2 0x00007f7abb82a886 llvm::sys::RunSignalHandlers()
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Support/Signals.cpp:67:5
#3 0x00007f7abb82c61b SignalHandler(int)
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:357:1
#4 0x00007f7abaac53a0 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x123a0)
#5 0x00007f7ab7dc2cfb raise (/lib/x86_64-linux-gnu/libc.so.6+0x36cfb)
#6 0x00007f7ab7dad8ad abort (/lib/x86_64-linux-gnu/libc.so.6+0x218ad)
#7 0x00007f7abb6c88d0 llvm::install_out_of_memory_new_handler()
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Support/ErrorHandling.cpp:192:0
#8 0x00007f7abf95cc7b
llvm::X86TargetLowering::ReplaceNodeResults(llvm::SDNode*,
llvm::SmallVectorImpl<llvm::SDValue>&, llvm::SelectionDAG&) const
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/Target/X86/X86ISelLowering.cpp:0:5
#9 0x00007f7ab76abc7d llvm::DAGTypeLegalizer::CustomLowerNode(llvm::SDNode*,
llvm::EVT, bool)
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp:910:5
#10 0x00007f7ab76cbaa5 llvm::DAGTypeLegalizer::SplitVectorResult(llvm::SDNode*,
unsigned int)
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp:808:7
#11 0x00007f7ab76a8314 llvm::DAGTypeLegalizer::run()
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp:277:17
#12 0x00007f7ab76adbab llvm::SelectionDAG::LegalizeTypes()
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp:1115:3
#13 0x00007f7ab78293c4 llvm::SelectionDAGISel::CodeGenAndEmitDAG()
/usr/local/google/home/rupprecht/src/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:839:13
Running git bisect points to https://reviews.llvm.org/rL343723 from October of
last year as the culprit.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190621/7290e614/attachment-0001.html>
More information about the llvm-bugs
mailing list