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

    <tr>
        <th>Summary</th>
        <td>
            [flang] [OpenMP] flang-new crashes with assertion "llvm::LexicalScope *llvm::LexicalScopes::getOrCreateRegularScope(const llvm::DILocalScope *): Assertion `cast<DISubprogram>(Scope)->describes(&MF->getFunction())' failed."
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          k-arrows
      </td>
    </tr>
</table>

<pre>
    Revisit https://github.com/llvm/llvm-project/issues/61464. When compiling with the specific options (`-g`, and `-O1` or higher), we still fail to compile this program(https://github.com/gcc-mirror/gcc/blob/master/gcc/testsuite/gfortran.dg/gomp/pr43337.f90).

Step to reproduce:
```txt
flang-new -c -fopenmp -O1 -g pr43337.f90
```

Assertion:
```txt
llvm::LexicalScope *llvm::LexicalScopes::getOrCreateRegularScope(const llvm::DILocalScope *): Assertion `cast<DISubprogram>(Scope)->describes(&MF->getFunction())' failed.
```

Stack dump:
```console
1.      Running pass 'Function Pass Manager' on module 'FIRModule'.
2.      Running pass 'Debug Variable Analysis' on function '@_QFpr43337Pfoo..omp_par.1'
 #0 0x000055893cf1fc74 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int)
 #1 0x000055893cf202c4 SignalHandler(int) Signals.cpp:0:0
 #2 0x00007fd101e4f520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #3 0x00007fd101ea3a7c __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #4 0x00007fd101ea3a7c __pthread_kill_internal ./nptl/pthread_kill.c:78:10
 #5 0x00007fd101ea3a7c pthread_kill ./nptl/pthread_kill.c:89:10
 #6 0x00007fd101e4f476 gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #7 0x00007fd101e357f3 abort ./stdlib/abort.c:81:7
 #8 0x00007fd101e3571b _nl_load_domain ./intl/loadmsgcat.c:1177:9
 #9 0x00007fd101e46e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#10 0x000055893e3543a8 llvm::LexicalScopes::getOrCreateRegularScope(llvm::DILocalScope const*)
#11 0x000055893e353b3b llvm::LexicalScopes::extractLexicalScopes(llvm::SmallVectorImpl<std::pair<llvm::MachineInstr const*, llvm::MachineInstr const*>>&, llvm::DenseMap<llvm::MachineInstr const*, llvm::LexicalScope*, llvm::DenseMapInfo<llvm::MachineInstr const*, void>, llvm::detail::DenseMapPair<llvm::MachineInstr const*, llvm::LexicalScope*>>&)
#12 0x000055893e3539ac llvm::LexicalScopes::initialize(llvm::MachineFunction const&)
#13 0x000055893e5ff23c (anonymous namespace)::LDVImpl::runOnMachineFunction(llvm::MachineFunction&, bool) LiveDebugVariables.cpp:0:0
#14 0x000055893e3c9443 llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
#15 0x000055893f926da3 llvm::FPPassManager::runOnFunction(llvm::Function&)
#16 0x000055893f92b4eb llvm::FPPassManager::runOnModule(llvm::Module&)
#17 0x000055893f927251 llvm::legacy::PassManagerImpl::run(llvm::Module&)
#18 0x000055893d06ff54 Fortran::frontend::CodeGenAction::executeAction()
#19 0x000055893cf41468 Fortran::frontend::FrontendAction::execute()
#20 0x000055893cf39315 Fortran::frontend::CompilerInstance::executeAction(Fortran::frontend::FrontendAction&)
#21 0x000055893cf43c40 Fortran::frontend::executeCompilerInvocation(Fortran::frontend::CompilerInstance*)
#22 0x000055893bf6b0b9 fc1_main(llvm::ArrayRef<char const*>, char const*)
#23 0x000055893bf6a0c3 main
#24 0x00007fd101e36d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#25 0x00007fd101e36e40 call_init ./csu/../csu/libc-start.c:128:20
#26 0x00007fd101e36e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#27 0x000055893bf69635 _start
flang-new: error: unable to execute command: Aborted
flang-new: error: flang frontend command failed due to signal (use -v to see invocation)
flang-new version 18.0.0 (https://github.com/llvm/llvm-project.git 34ffc30a90d7ee1c57a57d4bf3a548d7374f7f51)
Target: x86_64-unknown-linux-gnu
Thread model: posix
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzcWE1z4ywS_jXkQlmFQJ8HHzzJeDdVk0o2eWv26EIIyewgUAHKx_76LZBsS07Gk5m9vSknMQ08T9PdNA3UWtEqztcg_QLSmys6uL026x8raox-sVeVrt_Wj_xZWOHg3rneArIBeAvwthVuP1QR0x3AWymfD_9WvdH_4cwBvBXWDtwCvM3iJEsi-O89V5DprhdSqBa-CLeHbs-h7TkTjWBQ905oZSHABcjQqgUZAvgaUlVD376PQYagNnAv2j03AJe-94VD64SUsKFCQqcnBg7dXljYG90a2gFcXFC_ZWzVCWO0GRsAbyupK4C3HbWOn6SOW2cH4biXNNo4Q1VUt76lux7gbW8SQkgeNSUCuIwAugFoM_59crz36hneG10PjHtdxv4MjR_36kZJI6lqV4q_wBWDq0b3XHU9XN3HcNXCOcdy_pxuYy033pwXaILbyAaQzTf-KhiVT0z3HAL8kx47ilru7s214dTxR94OkprQC3DBtLIOnibf3H7Tc1jvMrKBR928Wxm1DpDrm9unoTp4i3wFuJhAyxUgX2tumRGVj6YC4Oxu64Utd9tBsbBILy7DJw-BwOvognGeHGU_YD10_Xvr-DVoyUdpHMHw8zgo5WO2p9aHZ37ghQ9ecEcVbX2Y5FAr2Ol6kDyMun28Cw2A80kd_BPAG14NLfxOjaCV5HCjqHyzwk6QzYEO4BwkaPevQ6A9NFpHke76XU9NFPvuQAMBJgiiV4QQStOiJKyJG5YnM9_Yt8mdD0YoFyzyl6HMu_E0yNCXnbbOcL-FMr_dhHLezEeWeMmCEWYJfBKtovKfVNXSm6UYJ01iG7He2x2F3yMQnoDypo5RzJMmxShkAryVwu_F1yLbZclKCjW8rlo1jB0ssjrKAP6CXhOcYrRQjiwxKaE5g7td7_aG03r3Q0i5E10veceVo8HCEcBb1TvpN_NsWMQA2SQJIJs8O-Enn8FXjhtF5UXkvABkE8-skX6EPJ92Ea4oz-Cyc-MmeQZbG_wRkMavAG-j0HqzNe996u61Fa8Abw0VlgdsnAOymdkgX0KTNG8IpJU2bgR29ei-IBq1i_2KTwjFO4S4gjsld1LTelfrjorRL0KF5XpxZ1tGR7g4zr1KM7eXZ6vNeJn9XiiRkpfZMZR8mC92EydpQmgB_zBN_iRBhuw5Zckjb3zGSypSXeblr85Q5pY9c9Knjkr5nTOnzW3XS0CuravHrp4KA8j1aewdZXuh-K2yzswUvIa_GkK-hiyeLcfecGX5He1_l2O-mHedB9Bb1ejPAT9rUQf15jA1d1TIJeTDH9jjXNeTJWZuxeduLSm77FahhBNUiv8uI2hS6HggTTot2ciCLW0aTJjfEFRp9dbpwUJFO277kP7LSYWb72N0hHNgUPfqjOqSGpPjK62lT_zfxDMPJ9zhgPvgDPB6JkursDJJyPtIO5D4s3em3od6LRSaWSSdMzUlzmo6Z9o-ePDDuf6HHNkZR5Xw6hMch5Jhbt1JtMTPz_BznMYzfMlbyt6mM_7EtHDqJ1iKOUuNsqZJE7gda99xXmO0clxNKeRa1_wfXG3Yofj0GYmzwfHNvFQ74pfLAiKJk6y4hL-dWh8QnEHjswqIlN7vF1UPNwfjdzdVY4X-XvvP67a0JD4rlRLCEnRJnYn4pNWzZvTXSrxbxfJEwYvUUzVZhaoSNize-XN2ERAbY-jbI28AuWZ7ukzu-BouZXMKckZBESMwwB-HnJVOJKtLBHc7fwzvrKPG7RiVcnc8-5kd3lcnU_3z0aRoD8gmDWVVdmJNz1l5gmCY49PrOdH41aOvAvpYbmAPik9ZC2cfgS6W8tEqPgQnuc--6Qk7P7NkmZEUjqhnV0V_seLhDks2cFDhGuE0nILI34o7GkIEbnwlxutL84MUHuLqMHm6WcF6CNBT-QhwMVgOV89BxjkUs0Atzy-0z9xYf07FRYSiUOD_3rtC1AoHSdI0jCBaojrnPGZpTtO8TqqG0DQp6pzkSZM3aXzk_4ualju_sqn0G9QPpV_UrAQcx4VC2l_huE-ScCx_lxfEq3pN6pKU9Iqv46yMMSJJnF3t10WSsZIwRLKSJryoapSGVlHknNQsvhJrjDBBBUoRTgjJoryiuMY4Q6RuKkQykCDeUSEjv-JIm_YqvKGssyRJ0ytJKy7t4a3GrINZqqG1IEFSWGdP05xwMrzqBMOD9AaC9Mt9z9Xdg2-c3MEMtXtux8cYerqXY_w3fxzA-Gowcv1_PGp5n_wvAAD__197zfo">