<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/147346>147346</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[crash] clang reproducer.ll (X86 DAG->DAG Instruction Selection)
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
attila-lendvai
</td>
</tr>
</table>
<pre>
`clang -O` doesn't crash, but `clang` and `clang -g` does.
```
$ clang --version
clang version 20.1.7
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin
```
```
$ uname -a
Linux foo 6.14.11 #1 SMP PREEMPT_DYNAMIC 1 x86_64 GNU/Linux
```
```
$ guix describe
Generation 231 Jul 06 2025 13:09:57 (current)
guix 50b7528
repository URL: https://codeberg.org/guix/guix.git
branch: master
commit: 50b75285883623ee244d0a71a225807c0672ac33
```
```
$ clang test.ll
warning: overriding the module target triple with x86_64-unknown-linux-gnu [-Woverride-module]
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: /gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin/clang-20 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -dumpdir a- -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name eval1.ll -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fdebug-compilation-dir=/home/alendvai/common-lisp/maru -fcoverage-compilation-dir=/home/alendvai/common-lisp/maru -resource-dir /gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/lib/clang/20 -ferror-limit 19 -fmessage-length=159 -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/eval1-3d1a00.o -x ir build/llvm-linux/64bit-le/eval1.ll
1. Code generation
2. Running pass 'Function Pass Manager' on module 'build/llvm-linux/64bit-le/eval1.ll'.
3. Running pass 'X86 DAG->DAG Instruction Selection' on function '@memset'
#0 0x00007f7eab5fe1eb llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0xbfe1eb)
#1 0x00007f7eab5fb98d (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0xbfb98d)
#2 0x00007f7eaa860560 __restore_rt (/gnu/store/hw6g2kjayxnqi8rwpnmpraalxi0djkxc-glibc-2.39/lib/libc.so.6+0x3e560)
#3 0x00007f7eabfdd3d6 llvm::FastISel::handlePHINodesInSuccessorBlocks(llvm::BasicBlock const*) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0x15dd3d6)
#4 0x00007f7eabfe12a4 llvm::FastISel::selectInstruction(llvm::Instruction const*) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0x15e12a4)
#5 0x00007f7eac1e8ced llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0x17e8ced)
#6 0x00007f7eac1ea7e9 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0x17ea7e9)
#7 0x00007f7eac1da09d llvm::SelectionDAGISelLegacy::runOnMachineFunction(llvm::MachineFunction&) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0x17da09d)
#8 0x00007f7eabb60d65 (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0x1160d65)
#9 0x00007f7eab7bee72 llvm::FPPassManager::runOnFunction(llvm::Function&) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0xdbee72)
#10 0x00007f7eab7bf02c llvm::FPPassManager::runOnModule(llvm::Module&) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0xdbf02c)
#11 0x00007f7eab7bfa27 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/gnu/store/gvpppzhpsd0aflsimq7c479cg6r1zm64-llvm-20.1.7/lib/libLLVM.so.20.1+0xdbfa27)
#12 0x00007f7eb61c6b12 clang::emitBackendOutput(clang::CompilerInstance&, clang::CodeGenOptions&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/lib/libclang-cpp.so.20.1+0x23c6b12)
#13 0x00007f7eb66e6c83 clang::CodeGenAction::ExecuteAction() (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/lib/libclang-cpp.so.20.1+0x28e6c83)
#14 0x00007f7eb71126d1 clang::FrontendAction::Execute() (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/lib/libclang-cpp.so.20.1+0x33126d1)
#15 0x00007f7eb7081c2b clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/lib/libclang-cpp.so.20.1+0x3281c2b)
#16 0x00007f7eb71ab8d3 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/lib/libclang-cpp.so.20.1+0x33ab8d3)
#17 0x00000000004169ce cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin/clang-20+0x4169ce)
#18 0x000000000040e6b2 (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin/clang-20+0x40e6b2)
#19 0x0000000000411f3e clang_main(int, char**, llvm::ToolContext const&) (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin/clang-20+0x411f3e)
#20 0x000000000040e104 main (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin/clang-20+0x40e104)
#21 0x00007f7eaa84bbf7 __libc_start_call_main (/gnu/store/hw6g2kjayxnqi8rwpnmpraalxi0djkxc-glibc-2.39/lib/libc.so.6+0x29bf7)
#22 0x00007f7eaa84bcac __libc_start_main@GLIBC_2.2.5 (/gnu/store/hw6g2kjayxnqi8rwpnmpraalxi0djkxc-glibc-2.39/lib/libc.so.6+0x29cac)
#23 0x000000000040e141 _start (/gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin/clang-20+0x40e141)
clang: error: unable to execute command: Segmentation fault
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 20.1.7
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /gnu/store/hvi2iz7n4zk4pyxvibrxa6j43hkv4wn2-clang-20.1.7/bin
clang: note: diagnostic msg: Error generating preprocessed source(s) - no preprocessable inputs.
```
test.ll
```
%word = type i64
%oop = type ptr
define weak dso_local ptr @memset(ptr %dst, i32 %val, %word %len) {
entry:
%end = getelementptr i8, ptr %dst, %word %len
br label %loop
loop:
%cur = phi ptr [ %dst, %entry ], [ %next, %loop ]
%done = icmp eq ptr %cur, %end
br i1 %done, label %exit, label %store
store:
%val8 = trunc i32 %val to i8
store i8 %val8, ptr %cur
%next = getelementptr i8, ptr %cur, %word 1
br label %loop
exit:
ret ptr %dst
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzUWl-T26iW_zTqFwoXQpZkP_SDut3O7a1kpis9997dJxeCI5k0Ag0gtzuffgskR3YnmUzNJNm9qa6ydIDD73f-ASLMOdlqgOskv0nyzRUb_N7Ya-a9VAwr0OLA5FVtxMt1UhCumG4R_jUpCBIGnE5o6RG3zO0TeovqwaNTr9CFaYHmUe1p1CIhVfgryPRHqoQu0dQNH8A6aXRCqlEyvSNKFumiTEj1G7Mt-CSr0HFV7IolHvSTNs8aK6mHI271EDrtLTCBOiNAha69cfKYkOpeO8-UArGRNsgTug0D6NZ5YyGh2_1BUvmx1MuPT8v-5XiQtT2y4sMy2z8dls-a4ogKT2jotpb6NZnPuQ2adYAwS0j1NoBEjTGoWKTLRZqihGYpenz3gB7e3929e_htt_mfX6p397conQiiN7_8M6HbOPLbc7WDPCIBjltZQ0KqN6DBMh9NmKUJWf_XoBApECU0R2mWZBVZJ1mVlwlZJ3TFB2tB-4SuE1KhUVtO6jKnqyhAyEIwpjf2Bf3z_dtgxL33vUuyKqHbhG65EVCDbRfGtsG8gzxOP4tW-klJbZnm-zC4Y86DncTcdJ2Mvp3mzFerrKAZAF0uBWFlyijNV6TkpCgp41n2bYOMYeTB-YVSCamemdVSt2EScwBrpZChfQ8hWgYFyMcAQ97KXgF6ln7_1UhDSX6D_z2pATwqSPJNQqqHt3fV4x1yQ91JjxiqhzaaznrkzSuTtdLvh3rBTZfQrVKH0w_urfkA3Cd0K50bwCV0G9NKaq4GARF1zD9UM_7kLeMQMrG30FvDwTkQyJnBjuIwkjlnuGQeBLKDRiFMeh9S8tEz_oTE0PUBFqnIIiHrB2tayzrEbDt0oL37bjlDtychwpynCE_m_qqlMXTSY1N_QDiAFNIihhEW0rFaAW4sAMJcAbOYOY9raIwFHMwCWsz9olkPYGUjwUYxZ1bgA1MD4JCmDuGOSY0bqUYBggNT6UIphDsLyvCYTDiWFtRLjnAvOVZwAIXo-CId7iUg3DWWdYB7I3WI8WzDgpamY36PwVptEG6aHnOjg-t8km2MRrjRBlsz6BCXOPRFuONGO28H7o3FTEnmAs5m0M9SC-wDM5dkG4rwGLyY90MwJS6WCPtBQxS0oRQEwALqoW3BhqaYCptW1Ag3UY656XqpRpYilMlN8LHpgqvZtCbEPO86Ezzk-oRuO2YHhBsecoG18HeUWBhDNoz7-8GmZH0KtoRuQ7g1YK2xWMmQmOk6OAScC6AV6Nbvk2yT5kHc6oF_Wo-yzXJBFynCjXuSPTbCYr4H_oSlxm3XRO7KWCwka7VxXvLgISaEdbJFeLPbvbm93f2j-tfdbvPv6v2W7m6397vq8V2YDmETmPouWCHGG85EyghZGISPSFpUD1KJU1mIWZHQbbGspccKToPGApeGzL01AkaHRx8kpKJB_H7QweOoZ86hhJbbQfO4NjwEwTumWQs2oSUy-lQOE1r-6clpGUpJ9qWZ_ntVoE31BifZ3aZ6g-6neA5zP4KC-DRN3JxAJbRMlqSDzoEPzyQUn4wgciSEkLIpgdV5AynUKFbNrEqyyr248eHBSu1jWfttLIyruZNlzzvjvAXWJbQIxVHGRQ8ldPVZyLWHvu8_7nsnCGuUk93vJV-Wa94WNv3YFcuxqLyKOCXrt2__9W7hzCK0JPSGHOuIdVpb47p_yaRer8SPRhDmmBHQcwRsVZC8IGi3sxBn3ln_RTj756KlTx_Yy1H_Llf2udddbxlTR0nEh6cjx62SNcd0ka3P0fAApYg4MsgLMsPILgzRCJGJ4sylW-b8_WPcySVZtWdaKHj4x_0vRoC7148DD0udsTfK8Cd34ecb5iSPchRLaEKrH-7lNI_4Z3bLS3aQUrb8KjsXk-EsPS74nKfNTyQUIc-E8nNCPIUVB3FG6FM-b6o3M7FRWik1--TSV59q0USs-PHEygh9Jla8IsZKWH-TmB30r_od43up4cThgthnbT-FWcA-MysvmQlG1n_ksrfQMv7y_5lfZDDzW13kWF0QUeQ_GEIaJ5khrC8glDVASc_T_CGssacldrbsF036M20pItKRR1iUyCseDaH8T_B4Nx5-LgJjEv0MDgHlzCF9zYHR8oyDOgvvMzb3XT_n9P8dE0bLmcn5Cl0XKS_qlI5n2hFZOBbdjKecXwffDz4c4ufm27gPBxs_fGgO027nooeAN6B_7UO8uan9rDJ4K3X7HppL8ckg1SttE5Rqit7zIffa28HJA7yH5lb7B2-T7HZuPjTTvm0rFTy-OA9dkt0FFc6LsWXQ8vcBdv2rkWEz1z9b6WF32tKdDRLQsEH5nQAFHr4xMLub5vyc0q3RbujC7virK-5fO5uEnVGU876_CAWaRW_PsZBdxEIBBV9lX3DlZPwoujsCHzyc_LH6WdBXEdwM_XwPVJdpSguRnkPfWqP9HDjn2H8e6iyLuGbU-QVqsko5rdEfZdcXbf51ml-vJ9-bGY3YZ2bFpT9YvRIXoTRxmAkepg8f3yovPys5sixinhmddjjjv2VarDkgztNdx-RlMa-sZS-homW3fM_svJGeUv9CRm_RwUjxHYldfv6KZEa0M5fVJRcCRU1_2NxR-zz3-pUd0yaDMTJOloxH5dFO0SzVZZ3_zRh1G8L86L-5lf8utgsIP-Gn5LXtUrJEAfkPNGBKljOA9PJMvazrpkS7XYjknfPM-h1nSu2-Dulvn67pum7mLQSlrwFxxi8BRccuyZu39ze3O7qgiy_vnb8HMs7mbRrNPvPVMkUjph_preVU4k-FDMUvguFh0KxWgLxBMBbAeCXBdNhLoEdoO9B-vEyJm4ov6hgvHJqp0p8UoIZJBQKJIap3stVMBZKDA4QPUQaA5FmhXf9nXYJ9soQ2YZ9VoflTKOpcbLkLNvr0WVK3X76pWLlQLjDS5qw9-kXqfvDjDeLlpc98vXN5_ZM_GytQkm2Qf-kByWI5io3pZ2nYT0YtAhqpAT0De0LCmZ0ynKnQjM4-Q67iO82Fi1VQZqEy5wemwtunGWmuQMeqV94kpALt7ct4sYJCYwiMMH8LHhSEqApa5Sre3lzof6UxjK8tUqwGFWXG9CP4-DTPwAcbZ-j3ctSY31xqjZBQkm_i-9iq4XhqVtFE8Sor6hNGQ1Qoedcj-P0Ekw_2k0JxgifT05C4NJzAwlH6C8EYcBH--DjjPzC1Gl1kB83PzBwyRY6XkXEMkqtT_zPrBViTpkDqW8aeWURjp39g50hiwmnBn7uLVEm5eRWDV-I6E-tsza7gOi3zdE2KVZpd7a9TkmYrJkqxXq_zpShrwTJCipKWKU1FWV_Ja0poTkpSpsWyyLNFyRuSrvI1gVWT5ZQkSwIdk2oR1t6Fse1VvCW8TpdltiyuInYXr_YpnS5AaJJvrux1PIzWQ-uSJVHSeTer8NKr-P8Bxnv9fDPVs5iIYuBgFyrWrT_3QX99NVh1_devOycuh2v6vwEAAP__ikkf0g">