<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJzNmFFz26oSgH-N_MJYIyFblh784DjJaWfak0yT9szcFw9CSKaVhQ6gJD6__i4gJ8J23HbufTid1LYA7X67C8tCIcr98iPakieGlNgxREXJkN4SDb92HW-YQs9cb1ErkJaiLxqG-rZkEtGGtDVKEWlLVFOKshCH6AujrNXNHj2DEMlZibRARc-bEnHtBLn34iSMwjjAa_t-JUCm06qfBSiAwZoprRCVRG2NmC07AEn0vGWtk8pBlJUqOs13_B-iuWgVCnBWSbFDQRpN72L4NBj2IYHPAOdhEF0H0cp9Dub3CvRAN5Ws7CmbWtCpBQi7_SDE9Rlj4IEgtSNNY1ERJYpZexQiWhNqqHmLgvlVJUTo3itDTWRY_xPMrwFxq3WngmQV4Fv4q8GMvgjBSHhomqfD17ST4jujGh4rEw74zuIkzheJaTkVDcahR_CW6HXXa8QVEhWSfdsaXxk3WlpFJe9Mr9E_8oVxj_uzj_efblYPN0j1xQ5MJuD0GlzQCWnt9w2APhUa4lDIGp5tZHlLm97OKOZiiQpCf2hJqHVWB8KkoEwZ3yvRS9ds3iRKCcqJhg6gH4CHuD2Af3-gst91r_gRdOX3UtSS7BCRdb-DiWjgUAgsLpZxgqaUxmjKwJqpKL6jackAe8rbSkx_8LYMkmsKE0jLnmohEUweNHYx7TqnLTbagmTNRBUkN6gjUsG8hOnLgBz8bSLlRmIzcm0WVc1aJu0EdT2J6fkyBKYDc2HaLm77lpoh6N40fCYtqZmEdgRNO1H2sPzg6ZgJLwbHzM7J_MRhdn8jkhOzelctafYKAu-EVgeF8BzMos1_MN09md9WHrQmEYpeosM_nGJSLRJkJyj4PlmpvXI_7iVvtY3Mowtv9jZIkueNALcyAtM6NSGGsTBVzUodxyfAV9HLoAO63yDiI4isStk5CLD9gddg4geYQ5ArwMzsgh4jxtODj_QUuKqQJxEkDeyuWdkIJKvI_n8VlAyCFlVOijTGLMsjtNlIWHxCsg0sIEt22_ACPl-ydJPOpg1v-5dp3fauo9Nb8FgZKhFGljjGIMXjnY154yJJqlkx8osJ_SHyg4ecGd-41F9Y_VX5cYImrrQxcj2S8hmyGW_ZFVGcXjWC_gjw6uyIj2bp2ACf9_gA6FkwP7Ignc3ZZQsgHdy1g6rsAsMY8MEk6m_MrOqPu66Bpdu3CuJnk7SGNXyZ2kB51OkxdZaSX6AevHdKfeJbD-8CGOj1wBZHYIuYVr8ANmAc0s85xLe-S54y-jygzAfKyiJnpzPnINykvRHWWZ5fArF6PJDcA6lmUZ6VI5Dbe6P7kHH_DwhOwyuCSWLREcIiw8kvIHy2id-PydB0Sb2R7qmPj9THcTQbqW9YTeh-SOZvIG69DDC_DWF0eBB-hs3m2GQseJm0ot3vRK9QS3ZMdXYLyZ2iG9ivV1Aj7Ipm_4E13cE74_a_oH76kz2PPYgzS-PGXsHGBLvzaojbGilduh4oN__u2aaDtJGs_T2re5Zcs81h5xq9VLKK9I3elKxhmv3kRSgRbIrJ0UDxVfPmdN8w7kl898xozhZoZIYxeRByZys838prTuoWdlpO1U1bw8IaMuFoyAfYUph8YETS7V3nCmZb9JwONXXLH6z9yahHKLeY_smgT_Dr3JBRioYDQ1t_YdXR1jJMstWRwH9HPM_WFS5q3qz39ukkyfMqYWesWYNnoHKV460aqqlWNbZw_AoHIz_eq4dHeEezF31hGQ76PCBv202qeTKnszHQvSlpQbqv7oHtyBC4Qojm7fsdxU6up9jbOXFZxXOWjxXfSmPPa2DdpH9htNfsUi3nBHmaFr6mdE7T1J_d7jxpKgbSQroZ6zrMq-x9tPcdPijzaLx9ELM8o5h6C9vpfYN6EpScMpxAm4XxDoVT4lF4m2CUVxnOEgRnos2OcD-5r6Qke7MakzXdEnlYtCs78WElem3Q8CR4eQHGqRqz4OiIBcrxDB3csI4f7cTKLtVwp2A2JKWEKkeeza84PlYazVJkjH-H2vR71Hhc2M-KYl7kCyjsoVynkB6I1JtB2q29oTAne9M3vXtUN5_mr484hDMWaFOm1g_D15-208oJKZAns5nPnxzxJxEmyCl-xwIz4s0C_3zvPv9i7gYEDjPCHrb1lit7oYFIDcaY2w13azMLozCaSmpvbuzFiznYK9iwEZxsIH-Gk3KZlHmSkwnp9VbI5fcnziXTk142y9--8eBK9fbKYz6L5tlku0yzimRpwWhVFjNMGWE4wtGCMowXOGJ00pCCNWoZzK8CjFv2jKwI-B3Mryf_OwFfgj7zB4VNDOs4LHPCkixdlLBK6ZzO4QwNORJ298NNyEQurUhzPQKdDZyv3q5JJlCtmDKfWWAg1Fw3bDm-IxuuTcxd0m-d6yaWfGmx_wvSa_nH>54058</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            clang 13.0.1 crash  in llvm::LiveVariables::HandleVirtRegUse
        </td>
    </tr>

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

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

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

<pre>
    I have some code that compiles with no trouble under clang 6 and gcc 8.2. Recently we tried to build it with clang 13.0.1, and found that two unit tests crashed the compiler when building with optimizations (from `-O1` to `-O3`).

I have used `creduce-clang-crash.py` to reduce it to a small test case, as attached in [foo.reduced.tar.gz](https://github.com/llvm/llvm-project/files/8131973/foo.reduced.tar.gz). The output is of running the test script is:

```
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: ./clang-13 -cc1 -emit-obj -debug-info-kind=constructor -O1 foo.reduced.cpp
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'foo.reduced.cpp'.
4.      Running pass 'Live Variable Analysis' on function '@_Z2cmv'
 #0 0x000000000262af73 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (./clang-13+0x262af73)
 #1 0x0000000002628f6e llvm::sys::RunSignalHandlers() (./clang-13+0x2628f6e)
 #2 0x000000000262b2ff SignalHandler(int) Signals.cpp:0:0
 #3 0x00007f9ab612e890 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12890)
 #4 0x0000000001b33f4b llvm::LiveVariables::HandleVirtRegUse(llvm::Register, llvm::MachineBasicBlock*, llvm::MachineInstr&) (./clang-13+0x1b33f4b)
 #5 0x0000000001b3645e llvm::LiveVariables::runOnInstr(llvm::MachineInstr&, llvm::SmallVectorImpl<unsigned int>&) (./clang-13+0x1b3645e)
 #6 0x0000000001b3686a llvm::LiveVariables::runOnBlock(llvm::MachineBasicBlock*, unsigned int) (./clang-13+0x1b3686a)
 #7 0x0000000001b371cf llvm::LiveVariables::runOnMachineFunction(llvm::MachineFunction&) (./clang-13+0x1b371cf)
 #8 0x0000000001b8db9e llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (./clang-13+0x1b8db9e)
 #9 0x0000000001f4098d llvm::FPPassManager::runOnFunction(llvm::Function&) (./clang-13+0x1f4098d)
#10 0x0000000001f47823 llvm::FPPassManager::runOnModule(llvm::Module&) (./clang-13+0x1f47823)
#11 0x0000000001f41104 llvm::legacy::PassManagerImpl::run(llvm::Module&) (./clang-13+0x1f41104)
#12 0x0000000002852f4b (anonymous namespace)::EmitAssemblyHelper::EmitAssemblyWithNewPassManager(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >) BackendUtil.cpp:0:0
#13 0x000000000284c9e7 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> >) (./clang-13+0x284c9e7)
#14 0x0000000003399f3e clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (./clang-13+0x3399f3e)
#15 0x0000000003f535c4 clang::ParseAST(clang::Sema&, bool, bool) (./clang-13+0x3f535c4)
#16 0x0000000002df15e9 clang::FrontendAction::Execute() (./clang-13+0x2df15e9)
#17 0x0000000002d65c66 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (./clang-13+0x2d65c66)
#18 0x0000000002e98c2c clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (./clang-13+0x2e98c2c)
#19 0x00000000009f8283 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (./clang-13+0x9f8283)
#20 0x00000000009f6288 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) driver.cpp:0:0
#21 0x00000000009f6046 main (./clang-13+0x9f6046)
#22 0x00007f9ab4bb5b97 __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:344:0
#23 0x00000000009f302a _start (./clang-13+0x9f302a)
```

We have also run this case against clang 14.0.0-rc1, with the same result.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzNWEtv2zgQ_jXKhbAgUbItHXxwnGRboN0ETdoF9mJQFCWzlUUtSSVxf_0OSTkRbcdNgT1s4NjiQ_N98-BwyEKUu8VHtCGPDCmxZYiKkiG9IRqeth1vmEJPXG9QK5CWoi8ahvq2ZBLRhrQ1miHSlqimFGUhDtEXRlmrmx16AiGSsxJpgYqeNyXi2gly78VJGIVxgFf2_UqATIeqnwQAwGTNlFaISqI2RsyG7QlJ9LRhrZPKQZSVKjrNt_wn0Vy0CgU4q6TYomAWTW5j-DY0bCOB7wDnYRBdBdHSfQ_q9wpwYJhKVvaUTSzRiSUQdrtBiBszykCDILUlTWOpIkoUs_ooRLQm1LDmLQqml5UQoXuvDDWRYf0zmF4BxY3WnQqSZYBv4FODGn0RgpLQaJrH_c-kk-I7oxqalXEH_GZxEufzxPQciwbl0ANYS_S66zXiCokKyb5tja2MGS1bRSXvzKjBH9nCmMd9bPPu0_Xy_hqpvtiCygSMXoMJOiGt_r4CMKZCwzgUsoa29SxvadPbiGLOl6gg9IeWhFpjdSBMCsqUsb0SvXTd5k2ilKCcaBgA9gPhwW_3YN8fqOy33Qv9CIbyOylqSbaIyLrfQiAacigELs6XcYImlMZowkCbiSi-o0nJgPaEt5WY_OBtGSRXFAJIy55qIREEDxqbmHadQ4sNWpCsmKiC5Bp1RCqISwhfBszB3sZTbiY2M1dmUdWsZdIGqBtJzMiXwTEdqAthO7_pW2qmoDvT8Zm0pGYS-hF0bUXZw_KD1iEnPB8Mk56S-YlDdH8jkhOzepctaXYKHO-EVntAaAdptP4b0-2jebbyoDeJUPQc7f_wDJNqniAboGD7ZKl2yj3cSd5q65kH597sdZIkT2sBZmUEwnpmXAxzIVTNSh37J8CX0fOAAcOvJOIDElk1Y6dIgO73vAYVP0AMQa4ANbMzOEaMh4MPcApcVciTCJIG7q5bWQ8ky8j-vwhKBkHzKifFLMYsyyO0XktYfEKyNSwgy-ym4QV8P2ez9SydNLztnyd127uBTm_AYmWoRBhZxjEGKR7fdMw3LpKkSouRXYzr954fLOTU-Mal_sLqr8r3E3RxpY2Sq5GUz5DNeMsuieL0shH0R4CXJ2d8NEvHOvi0xQeCngbTAw1m6ZSd1wDSwW07QGVnOIwJ3ptE_Y2ZVf1x2zWwdPtWgf9sktawhs-zNqQ81rND1tmMvIP1YL1j1ke29eidIQa4HrH5AbF5TKt3EBto7NPPKYqvY-csZfA8QplPKCuLnB1Hzl64SXsjWif5vIuIxfGI5B6RKo3yrBwRubkz2PuM-x9QcAgvFEwSiw4ozDOcvIPCZ5v4fZ8MXefgjXQPPj6Aj-MoHcE3rCZ0NyTzVyJuvQxkfpuEwfBI-Bk2m2KTseBl0op2txW9Qi3ZMtXZLSR3QNewXy-hRtgWze4Da7q9dcb9f0H99Cd7GlsQZ5aNm3sJGxPszsvBbyukdOlGoNz8p2frDtJGsvL3rO5Jcs3W-51r9FLJKtI3el2yhmn2ixehRLApJkcDi6-aN8f7hjFP4psnpTmbo5EaRuVByK2t8HwtrzipW9hpOVXXbQ0La8iEoykfYEth8p4RSTe3nSuYbdFzPNXULX-w9hezHqDcYvoXkz7B06kpoxQNB4a2_sKqg61lCLLlgcD_hz9P1hXOa17Ue_t0kuR5lbAT2qzAMlC5yvFWDdVUqxpbOH6Fg5Hv7-X9A7yj2bM-swwHPI-Qt-0m1TSZ0nRM6M6UtCDdh7tnWzI4rhCief19A9jJ9YC9nROXVTxl-Rj4Rhp9Xhzrgv6Z0V6zc7WcE-QhzX2k2ZTOZn50u_OkqRhIC-lmjLWPq-xtam8bfADz2Hj7IGZ5RjH1FrbDfSX1KCg55nBE2iyMN1g4EI-FtwlGeZXhLEFwJlpvCfeT-1JKsjOrMVnRDZH7Rbu0gQ8r0euDjkfByzNkHNSYC44OuEA5nqG9GVbxgw2s7FwNd0zMuqSUUOXIk_kVx4egUTpDRvk3WJtxjzUeF_ZpUUyLfA6FPZTrFNIDkXo9SLuxNxTmZG_GJrcP6vrT9KWJQzhjAZoytX4YvjzaQSsnpMA8SVOff3LAP4kwQQ74DQ3MjFcN_PO9-_6LuRsQOMwIe9jWG67shQYiNShjbjfcrU0aRmE0kdTe3NiLF3OwV7BhIzjZQP4ML8pFUuZJTi401w1bjK97hhsAcy3yW0eUi142i9--LeFK9fa6ZJpG0-xis5hThuOUJfMqjlhFcQWlappHBS7nhOUwpSEFa9QimF4GGLfsCVkR8BxMry74AkfYfKCkiWEFh2VOWJLN5iWsTzqlUzg9Q3aEfX1_B3IhF5aSuRiBwQZOVq8XJBdQp5gCn1k4kE96vRFy8f2Rc8n0hYVeWOr_AoZv5AE">