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

    <tr>
        <th>Summary</th>
        <td>
             Assertion `L.isLCSSAForm(DT)' failed.
        </td>
    </tr>

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

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

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

<pre>
    Godbolt repro: https://godbolt.org/z/P7j1z1T1P
Run clang++ -O3 on the following test:
[Test.zip](https://github.com/llvm/llvm-project/files/9995807/Test.zip)

Stack dump:
0.      Program arguments: /opt/compiler-explorer/clang-assertions-trunk/bin/clang++ -gdwarf-4 -g -o /app/output.s -S --gcc-toolchain=/opt/compiler-explorer/gcc-snapshot -fcolor-diagnostics -fno-crash-diagnostics -O3 <source>
1.      <eof> parser at end of file
2.      Optimizer
 #0 0x000055b4b1eb1d44 PrintStackTraceSignalHandler(void*) Signals.cpp:0:0
 #1 0x000055b4b1eafadc llvm::sys::CleanupOnSignal(unsigned long) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3fc8adc)
 #2 0x000055b4b1deae78 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x00007f1e46b84420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007f1e4665100b raise (/lib/x86_64-linux-gnu/libc.so.6+0x4300b)
 #5 0x00007f1e46630859 abort (/lib/x86_64-linux-gnu/libc.so.6+0x22859)
 #6 0x00007f1e46630729 (/lib/x86_64-linux-gnu/libc.so.6+0x22729)
 #7 0x00007f1e46641fd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
 #8 0x000055b4b1f79d1d (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4092d1d)
 #9 0x000055b4b1f79d8b llvm::formLCSSARecursively(llvm::Loop&, llvm::DominatorTree const&, llvm::LoopInfo const*, llvm::ScalarEvolution*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4092d8b)
#10 0x000055b4b1f79d71 llvm::formLCSSARecursively(llvm::Loop&, llvm::DominatorTree const&, llvm::LoopInfo const*, llvm::ScalarEvolution*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4092d71)
#11 0x000055b4b1f79d71 llvm::formLCSSARecursively(llvm::Loop&, llvm::DominatorTree const&, llvm::LoopInfo const*, llvm::ScalarEvolution*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4092d71)
#12 0x000055b4b1c74fdd llvm::LoopUnrollPass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3d8dfdd)
#13 0x000055b4b33d8ca6 llvm::detail::PassModel<llvm::Function, llvm::LoopUnrollPass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x54f1ca6)
#14 0x000055b4af6d3884 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x17ec884)
#15 0x000055b4b165032f llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x376932f)
#16 0x000055b4af6b97c6 llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x17d27c6)
#17 0x000055b4b164e48a llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x376748a)
#18 0x000055b4b2287ac0 (anonymous namespace)::EmitAssemblyHelper::RunOptimizationPipeline(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>&, std::unique_ptr<llvm::ToolOutputFile, std::default_delete<llvm::ToolOutputFile>>&) BackendUtil.cpp:0:0
#19 0x000055b4b228a052 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>>) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x43a3052)
#20 0x000055b4b31e6ffb clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x52ffffb)
#21 0x000055b4b4484db5 clang::ParseAST(clang::Sema&, bool, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x659ddb5)
#22 0x000055b4b31e5aa8 clang::CodeGenAction::ExecuteAction() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x52feaa8)
#23 0x000055b4b2a76b09 clang::FrontendAction::Execute() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4b8fb09)
#24 0x000055b4b29fd58e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4b1658e)
#25 0x000055b4b2b5bd83 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4c74d83)
#26 0x000055b4af358e34 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x1471e34)
#27 0x000055b4af354c37 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) driver.cpp:0:0
#28 0x000055b4b2867479 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#29 0x000055b4b1deb61a llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3f0461a)
#30 0x000055b4b2867ccf clang::driver::CC1Command::Execute(llvm::ArrayRef<llvm::Optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (.part.0) Job.cpp:0:0
#31 0x000055b4b2830ff9 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4949ff9)
#32 0x000055b4b2831a7d clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x494aa7d)
#33 0x000055b4b283b51c clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x495451c)
#34 0x000055b4af357422 clang_main(int, char**) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x1470422)
#35 0x00007f1e46632083 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x24083)
#36 0x000055b4af35056e _start (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x146956e)
clang-16: error: clang frontend command failed with exit code 134 (use -v to see invocation)
Compiler returned: 134

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWltz4rgS_jXkRQXl--WBB4ZMduZUtiY1MPtKyZYM2rUlH0lOyPz607INWA6ZSbbg1J6zmyJgLKn766_b7W6LTJDn-S-CZKLUSNJaiom_QDutawUHE-8OXttueCbkFr59h_-H-Hf3u7t2HybO7cRZfG04ykvMYfgDvND0i48ER3pHUSHKUjwxvkWaKm1Etism4Yc1fJ99Z_UkvJ14yUgj07smm-Wigi9l-Xj4mAK-32mu4WvBSqrgM03TMHFiODoK9NJeSfu-0jj_A5Gmqo_andnESR-k2EpcISy3TUW5NtoRiBG1EQ-qa9Agp3Rfl0JSac4ZE6dYKSo1E1xNtWz4HzCQMX4YPjCwJU9YFtMAjtBUGLm4ro30RteNnik0XaHpdJvnUy1Eme8wiPBvf6jeTFYc12onNJoWuYCBKWF4y4XSLAeRBRfTXGK1s0-DNyb-UolG5nTif-w4cA0HcJqKAs6hGkswC2GNKCdIFMjw2830zMwvtWYV-w5A2nNgkO8gZ-_AXxhmQebSzCVBgB4k47qlfC1xTldsy3H5CXNSGhuSR8HIxAMvp6gbUrO8No5x2v-jbNeWjQtMctQGAvjQX6hn1R0sS4p5U3_hnTTQ0HAFh5SgUhhvpCAtuZBX4eXs_SJPAMwxyAxaz0JLKKZxgpbGEV9pLh6pfB7zACQZbNacpeCa7vV5QvxeRVy4NIiyJAg8B202EmIe7NhI3dtZsgze90m0iYJpyXizn2550w3UeicpJjMlZk5ri2ukWJYElpoodB0nQxIzRd8gPzeSo1Zy4MNCS3JoS_adJEwRzsSbkA8kex4stCRHY8nx0etvlglLLJmxLTNwCxK9T6bvwxJLZmJFSRGnxCWXjs7AST0Qa-lNX-hNssG1VAhZ3S9XqwXEYSMVe6TlM6A6TbgXAjIX2LIcrLoVFeMYYm8tKUU5INMv5piFn3khDsMLe3iV4xLLj4-ibIxpfVq4BiHJKRRNbnFeEBK7fy9CYtcixP2HEJsQO6HncVAQMoL9jUsobR5ATXcOdFic3DU870CPbF7AjeBZMfUr5ngLgP3lmUVwlzbrLn_3IgkBWyxj_aGxPszIcTTAS6jGrOyOjbm_CkLL86hf-HZAkjX2APctKh8p6cig6s9RZF7_O9yHQeECtRb3wYB7XETET5LgAty3c39k45-l-x8vujHNwUmWF0MrXUSh43vFAC94rSnpWhywGe8sCK4hN563vFvwLrv7JVfLG3GUglGW1ZEdu1ka5-_LGwczl2_k6lLBd-LqtdD76znAjYkH_FoOiO2wC2iQ4DckgXO0_7_RBfEaAxsWXVb9DW1EjHPH6MVc8OdKNApxXFFVQ9tq1rUwP1ZML0BplZXPn2hZ0_6K_drwviPGbZSymkIrAOuSDkk76QN0wdBNL44pV2nSjTSc_buhm1rbpEj8tKmfJNN0ozS0apW1iNACN6XewGVENf3Jwj5dR29Ruxai_NI-l7hjXWC8Redo1UlhinrDv2lWvuxmjSvSkSuwE3powJyhvRfSqbCJvT093fjIty3vraGDKZ-g0aVyRbHMd8ZTEDJWDTqYuoTE9AvlP5m1xnJL9U8m3cPRuSmDklZLxrdfaXEu7fUF8F8rhC5fcPvYB38Pr03Pasl8l0ZFkZ3hYQnSm-pwEXaPU9YSc1W2l-E3zkaRslit-8cqV6rpvAL-rPbSs7qpIEgCkoVDWx7MozYAZiNd0Qr30ZLBlXX6vDjmKEwJQLIweyP-Q4yTM9dIH4fdNbqHblDTQ2gm12GXAhALqdWteDiOMicdIr2Txt_HS2YI9ToggywpAIMFMrBApgUJE2rT2an9DCkCc_NU9hyjr1t1lVhuS9eEWoZYla2XhRlJfCtRd5BP9jyKHL-E_8Le63Ty0KgDPssAu0j1wT4_QHnubirzxH1YxCykxM8mMfvLfIfl6ZFE1_bY5-DE4FH2pWu9IHYBpmVHPLIjyP0YHdhfuus2VQysWVW4LH-jOdTNn6u6PGtUG0REskcqz96mPbtiSqCkitPW7uHDob5Q38iWuna0u9CO5WIOUDJI4JuCGxynsOh09yGydCFKKkjp42v2rItOJ7v7LbZbi9Nt9ti3Hm-Cm02-37tu9yXDiuXmjscMqJYka7I5sdESM7M_1A2PxIFxJuZNL3ccN1MWpxTeBklHfbtk4sUlrjICCT8-cQWW9lsW_xLZeYeko42GLHKHFf-57YRjvbrCxfi53Y99d429EycAxMPAtneRTIzleYH-1jFiWJ_VWGqzS_N6MNh7ZF7iO0WRvspc6zz84pZ4oNPK1qOFZsJrBe8Ppi6samZg20VTfhqkYLYVUd6IFxfH5L28AOnqdVJg9J6BMa-U-C9S7zEOasxMCLS7f2_ncdjLXZtNDGRZbPojNrPQzV9Dfjs4tiqDMyXBa174L7J5-QIkDQOgx-IvGN2448DrW91DCXLA36aVxdVKCgcUW8jGO7KeA7XdZmO2MSHZQf5pAb5zJzVw7ALMHxdgThhR1Mm_vJFRCtKP6rvlbgRRgKiU7dPWjnpU9PU0hEUXHgUG5QQ9Mb1DdM_MtU0ocsF95jcFiqLpI9ICKUoRGxS5vaZDfYsk1Y3k1ASoWdyN3tC5G0WJSdGec0PmPkn9FN9opks6R4uDeWgSOfczptqttjshoXVPbtdGB1R_Hb7ZTSPL-bt_K8OUatofy4QJEHSzm0cOiUO_CGkS4iQhOAmKJE2g3fJ8J6YpvSlxRks1n4TArMfpE2pFwPEkvL1hc8_xPNd1PTcNY8eZOQkp4owG0FhG1CfFJHCgm2XlzOAwPxu6kfMWUtZsFQyWkDzVaRAcbH6yQVt1IB83eifkfI31M-b4VjSZVjctgHlrwH8AmpRPNg">