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

    <tr>
        <th>Summary</th>
        <td>
            Segfault trying to compile a file with a large main function
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    Hi there,

I'm trying to compile an LLVM file, where main is ~8 thousand lines long. When I try, I get a segfault from Clang. 

The file is here: https://gist.github.com/sinistersnare/d7c5f2e379b170f7fdc3cc00c6361501

The main reason I am avoiding using functions in LLVM is to avoid usage of the C-stack, FYI, I am not sure if thats the issue though, but it certainly probably is.

Here is the error message:

```
dasilver@subook: ~/code/SinScheme (master) 
ยป /usr/lib/llvm-14/bin/clang++ big.ll -o big.x
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/lib/llvm-14/bin/clang -cc1 -triple x86_64-pc-linux-gnu -emit-obj -mrelax-all --mrelax-relocations -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name generated_combined10813.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 -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -fcoverage-compilation-dir=/home/dasilver/code/SinScheme -resource-dir /usr/lib/llvm-14/lib/clang/14.0.1 -fdebug-compilation-dir=/home/dasilver/code/SinScheme -ferror-limit 19 -fgnuc-version=4.2.1 -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/generated_combined10813-656e7a.o -x ir build/generated_combined10813.ll
1.      Code generation
2.      Running pass 'Function Pass Manager' on module 'build/generated_combined10813.ll'.
3.      Running pass 'X86 DAG->DAG Instruction Selection' on function '@main'
 #0 0x00007f5693a0db11 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0xe3cb11)
 #1 0x00007f5693a0b85e llvm::sys::RunSignalHandlers() (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0xe3a85e)
 #2 0x00007f5693a0e04b (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0xe3d04b)
 #3 0x00007f569cc6a420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007f56940c8b90 llvm::FastISel::handlePHINodesInSuccessorBlocks(llvm::BasicBlock const*) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0x14f7b90)
 #5 0x00007f56940c8279 llvm::FastISel::selectInstruction(llvm::Instruction const*) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0x14f7279)
 #6 0x00007f569421cb8b llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0x164bb8b)
 #7 0x00007f569421ae69 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0x1649e69)
 #8 0x00007f56961a5c2d (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0x35d4c2d)
 #9 0x00007f5693d8fc2e llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0x11bec2e)
#10 0x00007f5693b47b50 llvm::FPPassManager::runOnFunction(llvm::Function&) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0xf76b50)
#11 0x00007f5693b4f143 llvm::FPPassManager::runOnModule(llvm::Module&) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0xf7e143)
#12 0x00007f5693b486f6 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/lib/x86_64-linux-gnu/libLLVM-14.so.1+0xf776f6)
#13 0x00007f569acce4be clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >) (/lib/x86_64-linux-gnu/libclang-cpp.so.14+0x185e4be)
#14 0x00007f569afef29a clang::CodeGenAction::ExecuteAction() (/lib/x86_64-linux-gnu/libclang-cpp.so.14+0x1b7f29a)
#15 0x00007f569b9893b7 clang::FrontendAction::Execute() (/lib/x86_64-linux-gnu/libclang-cpp.so.14+0x25193b7)
#16 0x00007f569b8e2086 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/lib/x86_64-linux-gnu/libclang-cpp.so.14+0x2472086)
#17 0x00007f569ba023db clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/lib/x86_64-linux-gnu/libclang-cpp.so.14+0x25923db)
#18 0x00000000004131b3 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm-14/bin/clang+0x4131b3)
#19 0x000000000041140c (/usr/lib/llvm-14/bin/clang+0x41140c)
#20 0x0000000000411257 main (/usr/lib/llvm-14/bin/clang+0x411257)
#21 0x00007f56926b5083 __libc_start_main /build/glibc-SzIz7B/glibc-2.31/csu/../csu/libc-start.c:342:3
#22 0x000000000040e30e _start (/usr/lib/llvm-14/bin/clang+0x40e30e)
clang: error: unable to execute command: Segmentation fault (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see invocation)
Ubuntu clang version 14.0.1-++20220426083040+0e27d08cdeb3-1~exp1~20220426083051.129
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-14/bin
clang: note: diagnostic msg: Error generating preprocessed source(s) - no preprocessable inputs.
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy1Wdly2zgW_Rr5BUUVN5HSgx_kRbGr4okrynTPPKlAEJTQoUgNAHrpr59zQUoi1crYcWdcikRiuffg3AXATVbnr5d3itmN1HIUXo_8m5E_b7_vR2G6ZVa_qmrNbM1Evd2pUjJesc-ff3tgBV4whT3TXLblqmLKsFF6O4W4ujG8ylmpKmlYWVfrMft9Iyt2TwJp1j1bS8s4M3Jd8Ka0rND1ll2XnIb2YXzbSKeKhDuU0ZxtrN0ZPIzCBT5rZex4reymycYAiRajKrRJbSpOy1rkqZgUoYzSWRakfpEWuYiE8H2RREkw8YNTfW4xWnJTE2K-ZfypVjnx0Bj6LppKWFVXhqmODIADRW4YxvC1ZHVBrLJrz1guvtOSF_--b1cOgVVtmWnAm6Jh3Bo3WBnTSMfeekNDs8YyZZmQ2gJR-cp2us54hgdlxn3Qd2QC1QqRWteabaUhGERSb9wo8buPe825UeWT1KPYN01W19-JXFgQlIk6J-aWqlqKjdxKNgqnW06kjsLZ3kDX4ejqCj2LxqB5UaqMvsunrRfEeMpURZLIpqPwCh-WqfW4LJlXu6eXVszj59v58hZ0ZFtFLpE1a5C_q7UlTk9t3TMzadorBDN_SGHx6kg0eGDkgaoSZZNLx4zQ3GxYBnNYzYVz3h0U6VqALJkzUze6baaZ3JhaKG7RoZuKGaHVznasL8mmLG-2uwPBPrpmj7pea_IXvW62srLGEfoOfpgnRMA8Cx1w9Zdpskpibyc8BFDz4q2rhnkS7Hh19gfztlqW_MXjxOT-Bd-14K1Terky8BLpFVpKSC4l1x5s52WyqLX0iAGJFR7GOUjwA1UoqV2z4Dr3nnjZSK_i8CUohQd6FIiuAdFbSU3krGALLETmgT8NImfd7RGMt4UflWynBPPw5ZXyCa9h-6IMfgBwW4Az6e1qVZF_RTduZcWW240Hb65qvBQ7T9QV2c1iAOLSK6ra03VTUVx6NBaCMMRY3QhbY8Gl4oaQI1qfVZV7ltYKi9xAvYWFpPXEriGyvSRGU1NJ1-CWRoC3xAsZRXLrgZKyJVW9yNxzUQZSvWeuK8oJXi7huGupSRAaoGedZ9AuajCLUPTaBNrSkitaJ6y_qbcuQ-0j8UzkwbatZ9KsH3tT-95F2yKIx_4YHlU4WB_XXbQLLRXFZjBDA5xRkLMYyIKceBw6PaIuMS5XfF3VxipBxPM8xzBwc7Nafbq-Xt3Nf7td3fw-_7oIV9eL-9V8-QAJAeUDaLWIJkT4ecfykkkiUz6GL7ww0JA1qsx_PBx-2IZlQGF5jWXtPZZQu56Qer42lbPeDtEODOmiy-zskRoeeAXDgZiUoQmu3JSUCNN3KA_TLlVE59T8a5qwm_knbxTd4ofdd15LipeylO6p07rfa2ga8jSFIT052WiLfOa_-PhLi0kyi7ifZ0HAXGZEZorm5tW0D48a0eXy1rc2-U2PgzR_XsFo8HPk04QSIMa6PB9OD57VJaVDRmo7aPeD_41NPQ6Q4f0XGQkgwOQjxOAEYjadyHMQwdJSrSte3iH_lvAwp_6DKDiUDFCEJyikH2cfE51j5kB01BctRMLj0GerFeIWiUiusJG9rWdnN-A_Jz2-0xPEkDJQE_fVxL6YZjO_x-MCKf4e7tO-bRyHj3f3_4Dzm_tq2Qja5mp9hdz83Qzsf4UMIFw7cxl0FM4_yHsQFylQDWBPTmGH6eyHsI1z_15ADID2A-UXIAWQAdJkgDQMRDbNekgPoYmYPSJuW-dleWRxyO4hp3SIk48iTuIMgAaI0xPEXCazNxHjOPOleuBig4y1BzdA_Je-vwF5BkQDyNM-5CTgExHmH5EdTfIYUweyZ4MYz6eFCPuZ5mRdlON7jJyl4hdwEGQSMA44KSEOk3YWp9lkEMmPBG2_-_zfERZpAv0DgMEJwCKIo3cAfHBb5NCXuqaPg5PQPQAXnoCbJkXSA1fKNRev3a53hHm_3R39_xdDTIFgAHGwI3Bk3jjD_cOdzZzKWxynrtpj-JfG7hqkhWmv--Z4jLqt1nDZblvuDbnDZiH1Ekd7sfmyaw_-xwQzGErHn0-yemPUN3ckfmPQZzydG9JLObjDVOuvshg27zmenwjsSJh3LnzNjM3bHpyi_9PI1c7Cwa6HZ5Xds1ZWrvYnlt6kXLpqwgqXDmnlGxOjW4Z_7zO6g4zrwc6ZPW4jG0cM2HVg-MEezQtZhDN-xhbdeltfeJGisXJPwTuPPGcBZSnpGwAa7L7ZbIqASfuAFhrXqqMF-oj-FpZwEpCqAZbB_ppNZejjHDwgx5WYNG3zvBLyPD8_Bv_eCD6LN04JzgDvYHfNuB9GuNH1o7hFdoT91F17hyj_sqz3HlrO8zojGAOc-y21_YuDKMgiJkSwam8LvVQ315q_UnBG12LD9fEQRXGAwBy0oYEKWgO476n0-C8thAHG2QnGACfBn5RJU_oyQ_9UZjhJ2-LdTwrGvIHgwfYX0u44jXCgJ5MgeXBtV52WxeEqSH3e8s_7P9Orw2s4jgJSZcie4_Hh0XU6OWMBo0RxSN9H9eFwXb6MfMlaxT-3MjfzsLK9S7YlQnpoKippUJlNtq5MVd4tbg7UuZRrqmE5h2ZtkZb8GjcaV_mS-f8Q3Ba1ii4891IhBXGQY7rTadxlj4Q2RjLvybVJicvnMY46Df_Mmso2ndiu-MDaGofX1hZDPwz9OExgKTBGy5dhmvtTkcss8oJReitfdvTTHzgJxsFeRbv_Efgz5bd9bZiuaMzVtGjgrjaqK2K62C6xuBul3yz6DUmrauuq2sfaCdsa13PrSrn7wgXVD86VK6eGwtODnF6_s6uqcLI4VIr3td-L_DLKZ9GMX1hlS3m53Jfgz9T629L7s7IbPJfEUBtf-6rERaPLy4-XaCeTSRpfbC6zNJ3MZlIUkzDNApkl2TRMkojjrBcUfp5elDyTpbkcTWDqsJLPbakcz6PJzYW6dDadBNMwmCT-ZBxLLmPfz7MZl0Wc5iMEAmCXY8IxrvX6Ql86SFmzNugslQFNh06cGeGZUjp1kM8bu6n15eB_FS4cgEu3gP8CvizCsA">