-
Notifications
You must be signed in to change notification settings - Fork 803
Open
Labels
Description
Describe the bug
I got an exception trying to build a program that simply includes Eigen3.
The following message was thrown:
unexpected Neon vector element type
UNREACHABLE executed at /tmp/llvm/clang/lib/AST/ItaniumMangle.cpp:4012!
PLEASE submit a bug report to https://github.com/intel/llvm/issues and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /opt/sycl/bin/clang-21 -cc1 -triple spir64-unknown-unknown -aux-triple aarch64-unknown-linux-gnu -fsycl-is-device -fdeclare-spirv-builtins -O2 -mllvm -sycl-opt -fenable-sycl-dae -Wno-sycl-strict -fsycl-int-header=/tmp/failed-header-9953d2.h -fsycl-int-footer=/tmp/failed-footer-ca97a3.h -sycl-std=2020 -ffine-grained-bitfield-accesses -fsycl-unique-prefix=uidc9772056fd4c0499 -D__SYCL_ANY_DEVICE_HAS_ANY_ASPECT__=1 -Wspir-compat -fno-offload-use-alloca-addrspace-for-srets -emit-llvm-bc -emit-llvm-uselists -disable-free -clear-ast-before-backend -main-file-name failed.cc -mrelocation-model static -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -aux-target-cpu generic -aux-target-feature +v8a -aux-target-feature +fp-armv8 -aux-target-feature +neon -debug-info-kind=constructor -dwarf-version=5 -debugger-tuning=gdb -fdebug-compilation-dir=/workspaces/moptim/build -fcoverage-compilation-dir=/workspaces/moptim/build -resource-dir /opt/sycl/lib/clang/21 -dependency-file CMakeFiles/failed.dir/src/failed.cc.o.d -MT CMakeFiles/failed.dir/src/failed.cc.o -sys-header-deps -internal-isystem /opt/sycl/bin/../include/sycl/stl_wrappers -internal-isystem /opt/sycl/bin/../include -internal-isystem /opt/sycl/bin/../include/sycl/stl_wrappers -internal-isystem /opt/sycl/bin/../include -isystem /usr/include/eigen3 -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../include/c++/13 -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../include/aarch64-linux-gnu/c++/13 -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../include/c++/13/backward -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../include/c++/13 -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../include/aarch64-linux-gnu/c++/13 -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../include/c++/13/backward -internal-isystem /opt/sycl/lib/clang/21/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../aarch64-linux-gnu/include -internal-externc-isystem /usr/include/aarch64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -internal-isystem /opt/sycl/lib/clang/21/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/aarch64-linux-gnu/13/../../../../aarch64-linux-gnu/include -internal-externc-isystem /usr/include/aarch64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -std=gnu++20 -fdeprecated-macro -ferror-limit 19 -fmessage-length=165 -fgpu-rdc -fno-signed-char -fgnuc-version=4.2.1 -fno-implicit-modules -fskip-odr-check-in-gmf -fcxx-exceptions -fexceptions -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/failed-e57e1e.bc -x c++ /workspaces/moptim/src/failed.cc
1. /opt/sycl/lib/clang/21/include/arm_neon.h:5074:1 <Spelling=/opt/sycl/lib/clang/21/include/arm_neon.h:126:14>: current parser token 'static'
2. /opt/sycl/lib/clang/21/include/arm_neon.h:5057:49: LLVM IR generation of declaration 'vaddq_u64'
3. /opt/sycl/lib/clang/21/include/arm_neon.h:5057:49: Mangling declaration 'vaddq_u64'
#0 0x0000aaaac90bc5f8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/sycl/bin/clang-21+0x22ec5f8)
#1 0x0000aaaac90b9ad0 llvm::sys::RunSignalHandlers() (/opt/sycl/bin/clang-21+0x22e9ad0)
#2 0x0000aaaac90b9c38 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#3 0x0000ffffbcb5f7a0 (linux-vdso.so.1+0x7a0)
#4 0x0000ffffbc617628 (/lib/aarch64-linux-gnu/libc.so.6+0x87628)
#5 0x0000ffffbc5ccb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c)
#6 0x0000ffffbc5b7e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00)
#7 0x0000aaaac9016a9c (/opt/sycl/bin/clang-21+0x2246a9c)
#8 0x0000aaaacca4dc08 (anonymous namespace)::CXXNameMangler::mangleType(clang::VectorType const*) ItaniumMangle.cpp:0:0
#9 0x0000aaaacca4b610 (anonymous namespace)::CXXNameMangler::mangleType(clang::QualType) ItaniumMangle.cpp:0:0
#10 0x0000aaaacca54bb4 (anonymous namespace)::CXXNameMangler::mangleFunctionEncoding(clang::GlobalDecl) ItaniumMangle.cpp:0:0
#11 0x0000aaaacca5e1d8 (anonymous namespace)::ItaniumMangleContextImpl::mangleCXXName(clang::GlobalDecl, llvm::raw_ostream&) ItaniumMangle.cpp:0:0
#12 0x0000aaaac95d37b8 getMangledNameImpl(clang::CodeGen::CodeGenModule&, clang::GlobalDecl, clang::NamedDecl const*, bool) CodeGenModule.cpp:0:0
#13 0x0000aaaac95e10a8 clang::CodeGen::CodeGenModule::getMangledName(clang::GlobalDecl) (/opt/sycl/bin/clang-21+0x28110a8)
#14 0x0000aaaac96056d4 clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl) (/opt/sycl/bin/clang-21+0x28356d4)
#15 0x0000aaaac960de48 clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) (.part.0) CodeGenModule.cpp:0:0
#16 0x0000aaaac99c378c (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) ModuleBuilder.cpp:0:0
#17 0x0000aaaac99b3d10 clang::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) (/opt/sycl/bin/clang-21+0x2be3d10)
#18 0x0000aaaacb508150 clang::ParseAST(clang::Sema&, bool, bool) (/opt/sycl/bin/clang-21+0x4738150)
#19 0x0000aaaac99c06f0 clang::CodeGenAction::ExecuteAction() (/opt/sycl/bin/clang-21+0x2bf06f0)
#20 0x0000aaaac9cb137c clang::FrontendAction::Execute() (/opt/sycl/bin/clang-21+0x2ee137c)
#21 0x0000aaaac9c44bb4 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/opt/sycl/bin/clang-21+0x2e74bb4)
#22 0x0000aaaac9d86fec clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/opt/sycl/bin/clang-21+0x2fb6fec)
#23 0x0000aaaac7b01a34 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/opt/sycl/bin/clang-21+0xd31a34)
#24 0x0000aaaac7af8c64 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#25 0x0000aaaac7afbe64 clang_main(int, char**, llvm::ToolContext const&) (/opt/sycl/bin/clang-21+0xd2be64)
#26 0x0000aaaac7a2f250 main (/opt/sycl/bin/clang-21+0xc5f250)
#27 0x0000ffffbc5b84c4 (/lib/aarch64-linux-gnu/libc.so.6+0x284c4)
#28 0x0000ffffbc5b8598 __libc_start_main (/lib/aarch64-linux-gnu/libc.so.6+0x28598)
#29 0x0000aaaac7af8270 _start (/opt/sycl/bin/clang-21+0xd28270)
clang++: error: unable to execute command: Aborted
clang++: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 21.0.0git (https://github.com/intel/llvm c7ff66105a7b7dfa2c8a3544f0b132e39ace7594)
Target: aarch64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/sycl/bin
Build config: +assertions
clang++: note: diagnostic msg: Error generating preprocessed source(s).
To reproduce
- Include a code snippet that is as short as possible:
Source:
#include <Eigen/Dense>
int main() {}
- Specify the command which should be used to compile the program:
/opt/sycl/bin/clang++ -isystem /usr/include/eigen3 -g -std=gnu++20 -fsycl -fsycl-targets=native_cpu -MD -MT CMakeFiles/failed.dir/src/failed.cc.o -MF CMakeFiles/failed.dir/src/failed.cc.o.d -o CMakeFiles/failed.dir/src/failed.cc.o -c /workspaces/moptim/src/failed.cc
- Specify the command which should be used to launch the program: failed before
- Indicate what is wrong and what was expected: failed before
Environment
- OS: Linux/Docker from MacOS
- Target device and vendor: native_cpu
- DPC++ version: clang version 21.0.0git (https://github.com/intel/llvm c7ff661) (How I built: https://github.com/Marcus-Forte/learning-sycl/blob/main/.devcontainer/Dockerfile)
- Dependencies version:
Platform [#1]:
Version : 0.1
Name : SYCL_NATIVE_CPU
Vendor : tbd
Devices : 1
Device [#0]:
Type : cpu
Version : 0.1
Name : SYCL Native CPU
Vendor : Intel(R) Corporation
Driver : 0.0.0
DeviceID : UNKNOWN
Num SubDevices : 0
Num SubSubDevices : 0
Aspects : cpu fp64 online_compiler online_linker queue_profiling usm_device_allocations usm_host_allocations usm_shared_allocations usm_system_allocations usm_atomic_host_allocations usm_atomic_shared_allocations atomic64
info::device::sub_group_sizes: 1
Architecture: unknown
default_selector() : cpu, SYCL_NATIVE_CPU, SYCL Native CPU 0.1 [0.0.0]
accelerator_selector() : No device of requested type available.
cpu_selector() : cpu, SYCL_NATIVE_CPU, SYCL Native CPU 0.1 [0.0.0]
gpu_selector() : No device of requested type available.
custom_selector(gpu) : No device of requested type available.
custom_selector(cpu) : cpu, SYCL_NATIVE_CPU, SYCL Native CPU 0.1 [0.0.0]
custom_selector(acc) : No device of requested type available.
Additional context
No response