| Issue |
185411
|
| Summary |
assertion failed on aarch64 - legality mutation invalid for match
|
| Labels |
new issue
|
| Assignees |
|
| Reporter |
Equinoxx4978
|
In release mode clang freezes and keeps leaking memory (until it gets killed by the OOM killer). Attached backtrace is generated on release/21.x. I couldn't build release/22.x but I can reproduce the memory leak issue on the build downloaded from the releases page.
## Failing Command
```
clang -c -target aarch64-linux reduced.ll
```
With this file:
```llvm
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32"
target triple = "aarch64-unknown-linux5.10.0-musl"
define <4 x i4> @failing(<4 x i4> %0) {
%2 = call <4 x i4> @llvm.ctlz.v4i4(<4 x i4> %0, i1 false)
ret <4 x i4> %2
}
```
## Backtrace
```
clang: /home/jackal/Documents/Code/C/llvm-project/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp:206: llvm::LegalizeActionStep llvm::LegalizeRuleSet::apply(const llvm::LegalityQuery&) const: Assertion `mutationIsSane(Rule, Query, Mutation) && "legality mutation invalid for match"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: "/run/media/jackal/disk/llvm21-debug/bin/clang" -c -target aarch64-linux reduced.ll
1. Code generation
2. Running pass 'Function Pass Manager' on module 'reduced.ll'.
3. Running pass 'Legalizer' on function '@failing'
#0 0x0000000004bb4bdc (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4bb4bdc)
#1 0x0000000004bb50a6 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4bb50a6)
#2 0x0000000004bb2619 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4bb2619)
#3 0x0000000004bb4443 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4bb4443)
#4 0x0000000004ad63ff (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4ad63ff)
#5 0x0000000004ad688d (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4ad688d)
#6 0x00007fb5fa706290 __restore_rt (/lib64/libc.so.6+0x1a290)
#7 0x00007fb5fa7603cc __pthread_kill_implementation (/lib64/libc.so.6+0x743cc)
#8 0x00007fb5fa70615e gsignal (/lib64/libc.so.6+0x1a15e)
#9 0x00007fb5fa6ed6d0 abort (/lib64/libc.so.6+0x16d0)
#10 0x00007fb5fa6ed639 __assert_perror_fail (/lib64/libc.so.6+0x1639)
#11 0x0000000005faf8d3 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5faf8d3)
#12 0x0000000005fb0380 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5fb0380)
#13 0x0000000005fb0672 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5fb0672)
#14 0x0000000005f568af (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5f568af)
#15 0x0000000005f4ce50 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5f4ce50)
#16 0x0000000005f4d787 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5f4d787)
#17 0x0000000003aca4c9 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x3aca4c9)
#18 0x00000000042cec53 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x42cec53)
#19 0x00000000042ceeb5 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x42ceeb5)
#20 0x00000000042cf2c0 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x42cf2c0)
#21 0x00000000042caa34 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x42caa34)
#22 0x00000000042cfadd (/run/media/jackal/disk/llvm21-debug/bin/clang+0x42cfadd)
#23 0x0000000004eb2cbe (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4eb2cbe)
#24 0x00000000054b0e76 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x54b0e76)
#25 0x00000000057e4e41 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x57e4e41)
#26 0x0000000005760ca3 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5760ca3)
#27 0x00000000058cb11a (/run/media/jackal/disk/llvm21-debug/bin/clang+0x58cb11a)
#28 0x00000000007b66c2 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x7b66c2)
#29 0x00000000007adb68 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x7adb68)
#30 0x0000000005518f39 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5518f39)
#31 0x00000000037c5482 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x37c5482)
#32 0x0000000004ad6a3d (/run/media/jackal/disk/llvm21-debug/bin/clang+0x4ad6a3d)
#33 0x0000000005519726 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x5519726)
#34 0x00000000054d943b (/run/media/jackal/disk/llvm21-debug/bin/clang+0x54d943b)
#35 0x00000000054da3cf (/run/media/jackal/disk/llvm21-debug/bin/clang+0x54da3cf)
#36 0x00000000054e8825 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x54e8825)
#37 0x00000000007b2e9a (/run/media/jackal/disk/llvm21-debug/bin/clang+0x7b2e9a)
#38 0x000000000079915f (/run/media/jackal/disk/llvm21-debug/bin/clang+0x79915f)
#39 0x00007fb5fa6ef5b5 __libc_start_call_main (/lib64/libc.so.6+0x35b5)
#40 0x00007fb5fa6ef668 __libc_start_main@GLIBC_2.2.5 (/lib64/libc.so.6+0x3668)
#41 0x00000000007aced5 (/run/media/jackal/disk/llvm21-debug/bin/clang+0x7aced5)
clang: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 21.1.8 (https://github.com/llvm/llvm-project/ 2078da43e25a4623cab2d0d60decddf709aaea28)
Target: aarch64-unknown-linux
Thread model: posix
InstalledDir: /run/media/jackal/disk/llvm21-debug/bin
Build config: +unoptimized, +assertions
clang: note: diagnostic msg: Error generating preprocessed source(s) - no preprocessable inputs.
```
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs