<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/112715>112715</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Clang Crash (SegFault)
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          Hubold17
      </td>
    </tr>
</table>

<pre>
    Every time I run `clang -o 6.exe 6.c 6.ll -Wno-override-module`, where '6' is the file name, I get this error:

```
clang -o 6.exe 6.c 6.ll -Wno-override-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: /usr/local/bin/clang-20 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -dumpdir 6.exe- -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name 6.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/sebas/compiler-design/llvmexercises -fcoverage-compilation-dir=/home/sebas/compiler-design/llvmexercises -resource-dir /usr/local/lib/clang/20 -Wno-override-module -ferror-limit 19 -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/6-c0a290.o -x ir 6.ll
1.      Code generation
2.      Running pass 'Function Pass Manager' on module '6.ll'.
3.      Running pass 'X86 DAG->DAG Instruction Selection' on function '@sum_arr_llvm'
 #0 0x00005638e5e81550 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/local/bin/clang-20+0x3b29550)
 #1 0x00005638e5e7ed8e SignalHandler(int) Signals.cpp:0:0
 #2 0x00007f275f82e520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #3 0x00005638e6fa8226 llvm::FastISel::handlePHINodesInSuccessorBlocks(llvm::BasicBlock const*) (/usr/local/bin/clang-20+0x4c50226)
 #4 0x00005638e6fad6d4 llvm::FastISel::selectInstruction(llvm::Instruction const*) (/usr/local/bin/clang-20+0x4c556d4)
 #5 0x00005638e70cc41b llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/usr/local/bin/clang-20+0x4d7441b)
 #6 0x00005638e70cddf9 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/usr/local/bin/clang-20+0x4d75df9)
 #7 0x00005638e70bd1fd llvm::SelectionDAGISelLegacy::runOnMachineFunction(llvm::MachineFunction&) (/usr/local/bin/clang-20+0x4d651fd)
 #8 0x00005638e528bdbf llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (.part.0) MachineFunctionPass.cpp:0:0
 #9 0x00005638e57f2641 llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/local/bin/clang-20+0x349a641)
#10 0x00005638e57f2804 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/local/bin/clang-20+0x349a804)
#11 0x00005638e57f327b llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/local/bin/clang-20+0x349b27b)
#12 0x00005638e611028d clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, 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*) (/usr/local/bin/clang-20+0x3db828d)
#13 0x00005638e67951e1 clang::CodeGenAction::ExecuteAction() (/usr/local/bin/clang-20+0x443d1e1)
#14 0x00005638e6a79cc1 clang::FrontendAction::Execute() (/usr/local/bin/clang-20+0x4721cc1)
#15 0x00005638e69ecb1b clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/local/bin/clang-20+0x4694b1b)
#16 0x00005638e6b483d3 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/local/bin/clang-20+0x47f03d3)
#17 0x00005638e32b721c cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/local/bin/clang-20+0xf5f21c)
#18 0x00005638e32aeee2 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#19 0x00005638e32b2780 clang_main(int, char**, llvm::ToolContext const&) (/usr/local/bin/clang-20+0xf5a780)
#20 0x00005638e318ed0b main (/usr/local/bin/clang-20+0xe36d0b)
#21 0x00007f275f815d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#22 0x00007f275f815e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#23 0x00005638e32ae945 _start (/usr/local/bin/clang-20+0xf56945)
clang: error: unable to execute command: Segmentation fault (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 20.0.0git (https://github.com/llvm/llvm-project.git e1f8f84acec05997893c305c78fbf7feecf44dd7)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/local/bin
clang: note: diagnostic msg: 
********************

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/6-8bd0d3.c
clang: note: diagnostic msg: /tmp/6-8bd0d3.sh
clang: note: diagnostic msg: 

********************
make: *** [Makefile:2: 6.exe] Error 1
```

The source code `6.ll` I try to compile (probably wrong, ik):
```llvm
define i64 @sum_arr_llvm(i64* %arr, i64 %n) {
entry:
    br label %loop_header

loop_header:
    %i = phi i64 [0, %entry], [%i_inc, %loop_header]
    %sum = phi i64 [0, %entry], [%sum_upd, %loop_header]
    %1 = icmp slt i64 %i, %n
    br i1 %1, label %loop_body, label %exit 

loop_body:
    %e_ptr = getelementptr i64, i64* %arr, i64 %i 
    %e = load i64, i64* %e_ptr
 %sum_upd = add i64 %sum, %e 
    %i_inc = add i64 %i, 1
    br label %loop_header


exit:
    ret i64 %sum
}
```

The mentioned files `/tmp/6-8bd0d3.c`:
```c
# 1 "<built-in>"
# 1 "6.c"
long sum_arr_llvm(long *arr, long n);
long sum_arr(long *arr, long n) {
    long sum = 0;
    for (long i = 0; i < n; i++) {
 sum += arr[i];
    }
    return sum;
}

int main() {
 long arr[] = { 1, 2, 3, 4, 5 };
    __builtin_printf("array: {%ld, %ld, %ld, %ld, %ld}\n",
                     arr[0], arr[1], arr[2], arr[3], arr[4]);
    __builtin_printf("sum_arr(arr, 5)     = %ld\n", sum_arr(arr, 5));
    __builtin_printf("sum_arr_llvm(arr, 5) = %ld\n", sum_arr_llvm(arr, 5));
}
```

and `/tmp/6-8bd0d3.sh`:
```sh
# Crash reproducer for clang version 20.0.0git (https://github.com/llvm/llvm-project.git e1f8f84acec05997893c305c78fbf7feecf44dd7)
# Driver args: "-o" "6.exe" "6.c" "6.ll" "-Wno-override-module"
# Original command: "/usr/local/bin/clang-20" "-cc1" "-triple" "x86_64-unknown-linux-gnu" "-emit-obj" "-dumpdir" "6.exe-" "-disable-free" "-clear-ast-before-backend" "-disable-llvm-verifier" "-discard-value-names" "-main-file-name" "6.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/sebas/compiler-design/llvmexercises" "-fcoverage-compilation-dir=/home/sebas/compiler-design/llvmexercises" "-resource-dir" "/usr/local/lib/clang/20" "-Wno-override-module" "-ferror-limit" "19" "-fgnuc-version=4.2.1" "-fskip-odr-check-in-gmf" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-o" "/tmp/6-c0a290.o" "-x" "ir" "6.ll"
 "/usr/local/bin/clang-20" "-cc1" "-triple" "x86_64-unknown-linux-gnu" "-emit-obj" "-dumpdir" "6.exe-" "-disable-free" "-clear-ast-before-backend" "-disable-llvm-verifier" "-discard-value-names" "-main-file-name" "6.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/sebas/compiler-design/llvmexercises" "-fcoverage-compilation-dir=/home/sebas/compiler-design/llvmexercises" "-Wno-override-module" "-ferror-limit" "19" "-fgnuc-version=4.2.1" "-fskip-odr-check-in-gmf" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-x" "ir" "6-8bd0d3.c"

```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWltv4zqS_jXKCyFDou4PeXDsuDtA93TQ6Z2zbwZFlmROJFJLUenk3y9IXSw5zsUzjV1gdxo5OeKt6mPdWGSFtC0vBcC1E9040faKdPog1fXXLpcV85OrXLKX69snUC9I8xrQHVKdQE7s0YqIErkSxSt4BhSvKIpXVYXcv4R05RMoxRm4tWRdBU7sOXiDfh9AAXJwEjs4QbxF-gCo4BUgQWowM-5QCRrpA28RKCWVE6wdb-t44-_YG35s8yIIdsX9t9v1wy1qu7zmGhGUdyVS0EilkZbooHXTGpZ45-BdyfWhy1dU1g7eVdXT-D-3UfIfQLWDd7xtO2gdvENEMMQFrToGdldUkfaAckIftSLU7q1R0ChJoW2BoVZ2qu82K0nbSsqJBmal21LFG73qIT9oQh8R6-pmEoa3QvdKlorUiKiyq0FoAxs5eNe1ysCUlFQO3uVcOHhnxeRiD7mU-sjVijcVoOc03seh24lHIX8Lt-Kie3ZL0SEXaq5dmf8DuYYr46qXr4tcxluSV-AWCgC5tAKiXNJqN4dCKnDNdkGw4zwrridQvOCgbDclirlPpOrANTpvkVsTLlxjBLZjUGCtwOxBcymM_qBCDafIbTh1K3iCCuG-wVu34YDculCkBreRXGhQTrAlhkpRE31wQSkhkVsUjUulMOrQTrCVArmFkK6SnWBclK6Zi9yaStFq1VEtlUsqTlqDsejEby6Yq82uWifYYuRqokrQLm06I0o3DpGrOwG2owQBygBmkHdlCcoMcVE6wbZkOXIL2-9SWTe86nfJuIHt4N1BGlfYtZATY1n9HFAuA-Oogw3CMyjKe2zUWDop4c-QU9CbpqHw2qAqno8G5eCdMakzrobcwjqvW3HjZX6G3KIUHTWW0HIpnGAbrvDKR27RPvLGlUy59AD00eXCLevC7qmSymWclEK2mlOzT8KYanmJ3O1-_2Wz2X9d__12v_1r_XOH95vd3X798N0Jtr6JBw7e6bpx8C52qUdw5q0kcp-RteSq6p3IXyH7byMZ9AqzkusH8TD4sxNGb6ghbWsC164T1MxC96bjOxGkBGWCmRRo2LwJb4YJTgYHDt6g9Z9pjLbrL64T3G7XX9DdYHeG-gNUYL8G0sXI1sGJE3ptV--JUvs-KCU9G-TgwEPes-d5XhQHKUSQ-lHkITsrWDvBun1p-497xYW2geVXH53S4yRFfu9lqxWQ2sGxiVBcaAdnyMHpBwHGwTfec5DjLIo8B2dHXP4SVwIsBfTAS0Gqr0SwysgwHdj03e2KNibgefa_iRAeCCUFTqIixRBhbwDWm-YQ1aZo1g_QVStXsYUX4ggvwQVzcHFBUozjmdB2pNV3D1D1rYOFe__17m-SQXsnHjpqIrpUN5Wkj-1Ckjek5dT2IxtVHLy-QI4hjTxsFDCDGp5AZTEL34TaWiOamdUC3Nzc_jl0UczCBbpoji7xKA39fIZuMurt-ssRZd-7rqqjtJZSnFxuQBlfgpIlYejnC5TxCUrGiuxDlKoTP8R3Qg9cwAhogfLV2IUwI1ZkC5jJEmbO_IK9A_MblIS-_M-AjSO_YAuw6cK_cZqzvEBv8jOxc4b0LMTX2FYNUXplXBedoXc-XGQLXEmB49Cf-8u9WTpG8YsRfSoahhmJQ3-SlgmG3imq1As_gep7n8cuFDl0XYoo9cIFIv8EUYCTuedWM-OaYburm6N7_AlcOU7yBS68iHe-7-GUoT77sHxua65v-qTzR6ebTjs4nQ1vj_nDrSi5gOFAm035CoSBegCi6OFHY_TbzgLNYqpJFL6A-GDWL5sWfjDpGxHluSkz_9aKi_InFMvuUbDrE4KDENaDhc6X3AmtupY_wU8oNkLfa-UEm-PwUzH44o5X8PDSaqid4NaQaDXrRzrB_6uDfXOy0iQKzW_FNezHdGG2iEFBukrvGVSg4YOFwe3A8_WWNlK0XW0ShEuOp4DlKU7ZwpiW53ySRT74Z_Q7yLC3r2egnYZRrOklYTIMmA9Lx18e3yTJzH1shmCnpNBHNc4hXMg8wT6lS-aL0znOgOZ-vtx-fzMwiQERFM5L4G20lx0icRbm_tLZFwdznIdpwIKFs_dQjjifhhviEtarfVyW1ySFF7BgAWxxFAc4N8JFlPp7c3VdxL21UuTFOG2woQeijonVYN2LPrxBT5Kzy_AVUYF9uoCXLuERAMBoFNbG_yVltQD5UJOq-juYG24fwc9gPYlGhsbGaPtZL9IwpvgTqNdnr4GVnUgNJ6nXq3OUm034e6lYIaw_x_TTkiJJ6s0lhRcHb-CnwLwcGTCfpQlBzLyF1WJ_eSPxI5ZdeCPBGcuWOPEpTQg9tN-bZftWE6X3M9Cf5gLhkktwajdZGKGe_udlHGdhNFEdvXB6u0OdIHkFSEsEvUEiKuuaCHNIoAcoaxDa-jCyp4XhS6UC-9wF7B3C_dNfMYSgkSoqCK-AIdZZnq29ShqiXQvIfbJ9AIjPQsecAxoeKBD2Vt7KK7kFdNmr4MqsAr9IizQkFKgXZVmSZgENvIgmaZEXSQFAizBkLJnY91mD2dhbz3LDvIMCwpB9EjOzG9ny537IxruqArbl6s3HwKU0hTQn8xod31lQ3dqR0Ur-hZ_Zs-3w6rr-9Wu9-Yp-fb1Fux_fvv346-5vX9Du7tvtA_r1w3bf_McX9PP2_sfPX9Nb5_25V9O0NYHgzZfTaYICZJ8RgSGiJ5Kf2f_xASnNmceCFf0X1raHSwX_h8Rfk0foIQ3dyIluvpNHKHhlBrAZtI-7TrRFt8a5kH_2qX00Pxh0gKhkgJzYs29dsYfukFYvxsGGF0bjOY2SOcmrF_RbSVHap6RHY_LB6XO-9SPbxaDgAhCPQ_TqoSvlcWj3gCOilCVnpuFI2GMhuelJgNDqZeKBEEK5QhXJwUSCqJKy2R9s1j_f2bx7vtTBEUdOsEXNgffsohtby3Bw1DOKtrYZ3Zipey7oMDqnGG0XFNuu_jxNI4OuYR9T9S1NTusGtZUeZcOHhWIhDu7bFfbAXUgml-xl0QvPJgqeSspOO5GTvSFYDCVoqMDEdtNjtbZBbymPoyUVS6GShL1e2N9Bxtv9KBm7gDA2Emy7ehTmkrTVzulsKx__IlsZzOyZ64UIFOg5hH5qsv3AnYyUuBTAbCGsRbZU9jr4xN5rr6HTWY6MOrETbPKOV9rlwiZx-GQ8XtGps5KiRCfuZfscvB70Y5v2hAxuXi96Z_7RFY1YxkVW8N5EywwVUqGRDp_G7ecGCfvp4Bv7MydqieEbq0ilnOiGG1eYE57EPuilU8KsmuYc1WJ_c6HRkJMuOVlkPQ8TIA1HJ7lB1m-w-RWYX9ZKI8t0DmK_t9rgYt8oLnRhqWNirgg2JifGu6vJsd_9SLZOtBFGe3hz5PDqXw_VG-JH3_IXLbxoBYtWaFvZJzZxtIFB9yYHtAisiCzkCS86O_siRqOFzrm9w-nM9Dm7953SZBVnnbA9nPXC8XA3braxVV-bsbCOgrIW_r-cWhpcW3tPQ0SVQ50Yu9LBuA8K5vQfv-n0VVXD59li-jy2_FC85CbPnqX2Vh8f3B966vaZov_sC9ND6808eJg8FqnH9lCqnu_KncZmZeuJ7xvF69M1ixL2bPC0kD0OLcvZZ8T5qrQ9DDR8FP6xzD104PlAX_KeqJ0pfI9js_L31HVaBJ8GTkvhE4MzBfFp0auy-KTKqTh-VKdrzvFheCiUD-2hXD5J91zRfOL5x0rnE8U_WUAfic7L6EPfh8X09x2uxzorrA99fjYNniuyT4NnS-0zGZwU3KeRoew-tt8vvo-z5HHPp4X4ccrz8DHzWWu6U3737wjy7wjy_ziC_B-IAq9d_HihmTKIZTZ1xa4DlgUZuYJrP8GZn4RRGlwdrvMwiwj4LIuJ7-dRnhdBGvg0zvyQxBkkV_waezj0PT_xQz_G_ooEmOEEcFZ4OMJB6oQe1IRXKyPulVTllf3zvWvfx4kfXdlbX2v_DBLjISibbPlKXVsPzruydUKv4q1ujyQ01xVcb2yK12d_Dk4foNyRrtIOzq46VV3_839XOGB7usb_HQAA__-ZdlE-">