llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
28.27k stars 11.68k forks source link

fatal error: error in backend: Cannot select: 0x7fffe4f5a020: ch = store<(store (s256) into %ir.30 + 32, align 8)> 0x7fffe4f97a20, 0x7fffe4f96de0, 0x7fffe4fddcc0, undef:i64 #93372

Open yzewei opened 4 months ago

yzewei commented 4 months ago

Clang front-end optimizer compilation error.

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang: note: diagnostic msg: /tmp/csidh-a7a0a9.c clang: note: diagnostic msg: /tmp/csidh-a7a0a9.sh clang: note: diagnostic msg:

xen0n commented 4 months ago

This is because the LSX codegen support in LLVM 17 is incomplete, so if one passes a march implicitly enabling LSX / LASX, one risks encountering such unimplemented code path. Other users have run into similar issues as well.

Ideally we would have disabled LSX/LASX codegen for LLVM 17, but for now one can simply reduce their march setting to generic or loongarch64 so as to avoid SIMD instructions. LLVM 18 onwards should be fine.