-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Crash compiling RISC-V Vector code #87897
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
bisection seems to indicate this problem was introduced in 29e8bfc |
@llvm/issue-subscribers-backend-risc-v Author: Benjamin S. Scarlet (bscarlet)
```
$ clang --version
clang version 19.0.0git (https://github.com/llvm/llvm-project.git fa8a726)
...
```
[Full stack dump](https://github.com/llvm/llvm-project/files/14895116/stack-dump.txt). Top of stack dump:
```
#0 0x000055c11459608b llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /usr/local/google/home/bscarlet/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:727:3
#1 0x000055c114593eb4 llvm::sys::RunSignalHandlers() /usr/local/google/home/bscarlet/src/llvm-project/llvm/lib/Support/Signals.cpp:105:20
#2 0x000055c114500638 HandleCrash /usr/local/google/home/bscarlet/src/llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:73:5
#3 0x000055c114500638 CrashRecoverySignalHandler(int) /usr/local/google/home/bscarlet/src/llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:390:62
#4 0x00007fab6bc5a510 (/lib/x86_64-linux-gnu/libc.so.6+0x3c510)
#5 0x000055c113c1ab0f llvm::MCRegisterInfo::DiffListIterator::operator++() /usr/local/google/home/bscarlet/src/llvm-project/llvm/include/llvm/MC/MCRegisterInfo.h:216:24
#6 0x000055c113c1ab0f llvm::MCSuperRegIterator::operator++() /usr/local/google/home/bscarlet/src/llvm-project/llvm/include/llvm/MC/MCRegisterInfo.h:588:24
#7 0x000055c113c1ab0f llvm::MCSuperRegIterator::MCSuperRegIterator(llvm::MCRegister, llvm::MCRegisterInfo const*, bool) /usr/local/google/home/bscarlet/src/llvm-project/llvm/include/llvm/MC/MCRegisterInfo.h:581:10
#8 0x000055c113c1ab0f llvm::MCRegisterInfo::superregs(llvm::MCRegister) const /usr/local/google/home/bscarlet/src/llvm-project/llvm/include/llvm/MC/MCRegisterInfo.h:793:20
#9 0x000055c113c1ab0f llvm::MCRegisterInfo::isSuperRegister(llvm::MCRegister, llvm::MCRegister) const /usr/local/google/home/bscarlet/src/llvm-project/llvm/include/llvm/MC/MCRegisterInfo.h:599:32
#10 0x000055c113c1ab0f llvm::MCRegisterInfo::isSubRegister(llvm::MCRegister, llvm::MCRegister) const /usr/local/google/home/bscarlet/src/llvm-project/llvm/include/llvm/MC/MCRegisterInfo.h:457:27
```
Source, (manually simplified from code in google highway, also in attached tarball, along with bugpoint output):
```c++
#pragma clang riscv intrinsic vector
unsigned long out_of_line_vsetvl() { return __builtin_rvv_vsetvlimax(2, 7); } template <class Unused> const __rvv_float32mf2_t f1_vf1 = __riscv_vfsgnjx_vv_f32mf2(f0_vf0, f0_vf0, f1_vl0); void function0(const unsigned num, float* buf) {
|
The issue is handled in this PR: 87736, thanks! |
Full stack dump. Top of stack dump:
Source, (manually simplified from code in google highway, also in attached tarball, along with bugpoint output):
llvm-rvv-crash-2024-04-06.tar.gz
The text was updated successfully, but these errors were encountered: