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

    <tr>
        <th>Summary</th>
        <td>
            A/F: I != ValueState.end() && "V not found in ValueState nor Paramstate map!" after commit de122cb92008
        </td>
    </tr>

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

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

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

<pre>
    A bunch of our internal tests started failing with an assertion failure which I bisected back to commit de122cb920080fd9e24b2777114271fbef932d5e. I was able to reduce it to the following test case:
```
typedef char __attribute__((ext_vector_type(6))) a;
a b;
void c() {
  static a d;
  b += d;
}
```
When compiled with optimizations, it hits an assertion failure in a compiler that includes de122cb920080fd9e24b2777114271fbef932d5e:
```
$ ~/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang -c -O2 test.cpp
clang: /home/dyung/src/upstream/llvm_clean_git/llvm/lib/Transforms/Utils/SCCPSolver.cpp:690: const llvm::ValueLatticeElement& llvm::SCCPInstVisitor::getLatticeValueFor(llvm::Value*) const: Assertion `I != ValueState.end() && "V not found in ValueState nor Paramstate map!"' failed.
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: /home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang -c -O2 test.cpp
1.      <eof> parser at end of file
2.      Optimizer
 #0 0x0000564fccea1caf llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x403fcaf)
 #1 0x0000564fcce9fc4c llvm::sys::CleanupOnSignal(unsigned long) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x403dc4c)
 #2 0x0000564fccdecf78 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x00007fd8107af420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007fd81027c00b raise /build/glibc-SzIz7B/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
 #5 0x00007fd81025b859 abort /build/glibc-SzIz7B/glibc-2.31/stdlib/abort.c:81:7
 #6 0x00007fd81025b729 get_sysdep_segment_value /build/glibc-SzIz7B/glibc-2.31/intl/loadmsgcat.c:509:8
 #7 0x00007fd81025b729 _nl_load_domain /build/glibc-SzIz7B/glibc-2.31/intl/loadmsgcat.c:970:34
 #8 0x00007fd81026cfd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
 #9 0x0000564fcd03d385 llvm::SCCPInstVisitor::getLatticeValueFor(llvm::Value*) const (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x41db385)
#10 0x0000564fcd03d68f llvm::refineInstruction(llvm::SCCPSolver&, llvm::SmallPtrSetImpl<llvm::Value*>&, llvm::Instruction&)::'lambda0'(llvm::Value*)::operator()(llvm::Value*) const (.isra.0) SCCPSolver.cpp:0:0
#11 0x0000564fcd03fe92 llvm::refineInstruction(llvm::SCCPSolver&, llvm::SmallPtrSetImpl<llvm::Value*>&, llvm::Instruction&) SCCPSolver.cpp:0:0
#12 0x0000564fcd0428aa llvm::SCCPSolver::simplifyInstsInBlock(llvm::BasicBlock&, llvm::SmallPtrSetImpl<llvm::Value*>&, llvm::TrackingStatistic&, llvm::TrackingStatistic&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x41e08aa)
#13 0x0000564fcc8c99c0 runIPSCCP(llvm::Module&, llvm::DataLayout const&, llvm::AnalysisManager<llvm::Function>*, std::function<llvm::TargetLibraryInfo const& (llvm::Function&)>, std::function<llvm::TargetTransformInfo& (llvm::Function&)>, std::function<llvm::AssumptionCache& (llvm::Function&)>, llvm::function_ref<llvm::AnalysisResultsForFn (llvm::Function&)>, bool) SCCP.cpp:0:0
#14 0x0000564fcc8cb823 llvm::IPSCCPPass::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x3a69823)
#15 0x0000564fce2b7f16 llvm::detail::PassModel<llvm::Module, llvm::IPSCCPPass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x5455f16)
#16 0x0000564fcc7073ba llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x38a53ba)
#17 0x0000564fcd29db98 (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
#18 0x0000564fcd2a0b34 (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>) BackendUtil.cpp:0:0
#19 0x0000564fcd2a1675 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>>) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x443f675)
#20 0x0000564fce25dbcb clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x53fbbcb)
#21 0x0000564fcf1d4d05 clang::ParseAST(clang::Sema&, bool, bool) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x6372d05)
#22 0x0000564fce25c648 clang::CodeGenAction::ExecuteAction() (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x53fa648)
#23 0x0000564fcdac84d9 clang::FrontendAction::Execute() (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x4c664d9)
#24 0x0000564fcda4f06e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x4bed06e)
#25 0x0000564fcdbaf5e3 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x4d4d5e3)
#26 0x0000564fca3355dd cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x14d35dd)
#27 0x0000564fca3316f7 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) driver.cpp:0:0
#28 0x0000564fcd8b7109 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#29 0x0000564fccded460 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x3f8b460)
#30 0x0000564fcd8b79bf clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (.part.0) Job.cpp:0:0
#31 0x0000564fcd88019c clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x4a1e19c)
#32 0x0000564fcd880c1d clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x4a1ec1d)
#33 0x0000564fcd889dec clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x4a27dec)
#34 0x0000564fca333d42 clang_main(int, char**) (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x14d1d42)
#35 0x00007fd81025d083 __libc_start_main /build/glibc-SzIz7B/glibc-2.31/csu/../csu/libc-start.c:342:3
#36 0x0000564fca32c3de _start (/home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin/clang+0x14ca3de)
clang-16: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 16.0.0 (https://github.com/llvm/llvm-project.git de122cb920080fd9e24b2777114271fbef932d5e)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/dyung/src/upstream/de122cb920080fd9e24b2777114271fbef932d5e-linux/bin
```
I'm going to revert the change for now so we don't have this issue in the upcoming release branch.

@fhahn can you take a look?
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzkWtty4zaTfhr6BjUqEqR4uPCFxh5tnJrUuMaT7KWqCTQlrEmAC4A-5GKffQsgJROy_I-TnWjzV6o0YwmnRn_9daNxAGPEViJeRsuP0fL6Aga7U_qSPw9ye1Er_ny5IvUg2Y6ohqhBEyEtagktsWisIcaCtshJA6IVcksehd0RkASMQW2Fkr5m0Eged4LtyA2phUHmutTA7olVhKmuE5ZwTChldUXjuIwbXiHNaloURZJktEiaGpsqpXyJC3JDHsEQqFt03TXygSER1v2wOySNalv16CbjpkgYGIzSVRRfR_EqyuPp43_a5x45NoTtQJPNBqzVoh4sbjYRLSNa4pPdPCCzSm9c04iWeUSr8UMgSj-OwwCpD98flOCE-e4ViYqplDigrGAECD80JaQmEf0Ypdezwqi4PjnV_9yhdFD1okU-wqx6KzrxOziYTUSvHAY7Yc1p_IUksB9AE7sDS4Rk7cDRvBv7t3CMaEb-J6Jro1lE10NvrEboIrp-78AfWiGHp4iuayEjumYtyC35wMiHL9RbccH6fhTlq6J0RSK63qkOnRBH1lPS2_ah27AWQW62wk4F7o-oI7r-pkGaRunORHT9qxWt-3t3dXV7p9oH1F5kusqr2EljShpLfP90FaWr36Ad8DNYKxh-arFDaSOazxq4gW6ksb8JI6zSY-EW7dTH918rHdHyaNCIrhx1vEAneXWwZJTHNySiiSOMb3pnweICJd_TjeZuEhGlvxGpLGnUILkz_EtrIpUmt6ChM_5nB70bkdKIFp4qyBcj0LefP63uPhEz1M47gdTDlmjslfaOtrO2N27WdB3R9VbY3VAvmOpmILcP3Ydeq_9C5qAXxgzoECbg5-SZ5_2VaTA7Hw2sBoaOyL3GXiuGxiAnRg16LHY9wRjFBLgAogdJDNOit9OU76wLKXzo-gNR40UUV7dabTV0BPR2cJYy7-TPj2dv4qYTpVeomij9RHrQBjUBS1ByF2Eb0eLYkrqWX0YPRz0FjIimMYmf4jiOl3nWMIaQMGhmtDPPZvxyq4W0HpBvI6oznml43Ki9lrmPHI6-jkDlXwxLRD_GT1mcNgwaF0cPeiWhXlXDMnZKryvnzkP_Rd6JrYQ2ouUg_RLGSavc-OfUgrOMBVrQQAuOrClKcuUI_hWZekD9PE77J5C8Ref9E_JBmyslLT7ZKQLF_t9BRDqJKBpeJnEBTUZjstloNFZp3Gg76T8Guacy3-TZqMOHrRzGit7uNAJfGLWIvS5JltE40CQLxNCCxXFNNAiDznPqQbTcOX4ravbh7veb34uPh590kSYO8clA68XC_Xo2HHsXAAYpnsaCBz-bEV0_9IJF6WqZROkqeZnJMpzJsi6XFYFaeU3fNxPLRzR8Ly-kdEKKFyH5sZCCVmSLdjPOe2Nw6yLH5sFF0vfKFdI6_VsFvDNbBqPopYsAq_JFdnFK9ka2G9dxw1UHQv7fRFaFI1GavcgsQ5k5a3j-DuIwR5ncUyZNG54HlKnm5OdxytNy-aNXxLM5d8LrtFwe9HMRKj7WLy_noVdjIyQ6DfXA3IIdaPKSWEwhd1bVQdveWn2H9qbr2yi9OgFA-ulVv0CUN4UvjmjRQldziCNavIXmWKB61GA95j6p_R7yC2E0uJBRkVeJ0ixMObCSI7AarOjfCqzvakBDDTJaApCTcxxXKNH1rWienSBzIz-2it0HSn0EI9hU_IOUckv7vZBbl9oJYwV7Z4vzrZEJxiVA4EZpsEaWrKpY7HK5m1sHaQDZL4oPLb5S6hosfIZnNdgpTT5usJLQPhthfgEJW2egGZ7rQY4scHiuXD9j-VjVHKpm7b-BdkFK1Br0841s1EEmCeZ6GHdyxU_vHfqwD3GD_4hhV8YMXe-Kr4Dt8H1DvlTvx9xobMJxJ1S_ohlaa9ZKr-U7Rq6Vavf-dtrTsiNG1CVN567riXELZkoB9SDfw5J_RYKpy-RSZ3OHFPKqpGngDsu58kjroknm-0iOFkQ75fRgzC-KY3tKlzDavUAWlN9qNKgfkI_goPkzkLnPv7cdltly2SR5YIc8IGERF2k9D_ce-7c1-EfCmJawTOswuhfBqkkrXlelmw9IJZ87NRgioUPT-z3plIZ86oRdGYNd3T7_hG2_X1K_DvLL7IzrVvTYCun2svtTIL-ssnuUfDUFnllwHKT47wE3vQ3Bcrvf_lELi5s9FLNOHBsYWrvh2KLF73QcrTha6ntivynVfhlsP9i1GAnzHplHvV4EVmRS_Fcr2tNhtQxNAXGdZn_WFPPyvx3-78CiOsIiyYslmWnh9JsGGeEOlbwWsJXK5U_mk9x6Dnqjz5r8hMBR3yFotvviV18TZCezpleK43-g_E6rMTv4TqPPILenmsxyS6uF3H7FJizeR5nV0YB_C3OeKzvN0iYvgk0ejcPleMlrVp_A50pJM3R77xiPc3wi1_pQ9asURwxa3X2bjnXOvNSlTV2zOtAx2Js1Cc94HDjDLWiDq7tvoQZ32MHErjGle0ntzqRLnhaUx6G96JG9WJ6VJ3xt4vPo60_IBot7ipfntQbkWRloEOyHOLAy49Vcg7V2vDm45FyF804-Y3me8SqYfBZOPmviHEP4xwsntysGyfC0Bd7W9ry71Rp5nGOgYJCe8xqaJabBwjGq8qLng2LwWq1XOIwnK-dSjGd8icG-gwb5LqTpcsk5YSzZdCDChHSlNTx_9ZtBf1E6rTOraX8XltEr8qAEP69-ScbTJeeBfsWRfkneFGRvravkmw9d5dEZzG_-snc6g3mtrCcj1-KtMyMaplxlXSRx5fF4e3_ta6cDuP2WgEHb1sDuN43b2c9oNMqeKHWVXKmuA8mPY8JJ0x2WZOXTBQg3kS9ZwrQIz9bwzYY9PSXJ-KMGI5hbsIWbk8coaOwKNlaDsGZffTQctK1zEaVn9YezmHFFCW5A50ea44nm_myh3N_4_Kzq0_aoju5jeJbHM1OcunU5bD3uoEGf7L7XdGfceDVlneXxnO_hxaCjXlU35J9MHX9g3YO244H1WxwJbx55WcZJxd4EzodxeLUQ79EMYv5RR9fgrTT-XzRdBTnXua9BIMGkYgHR6DFeLOF_FK-fVW3eButnVX8W5q3D3deB-sCPHoSjhr9TfT--8138_xvKLAmWrzQ9Qrni-CYrr2ffg3zkRCLylnXOiPL50h6gBceQvdlRWpDyjI467BOfvV4-PK3OnsgkPKPBjI_vv3lcpmSzaUXtgilou_kjF8TMDPsr-fGrr_Tj-KviNKPu_xfxR3kiZSlHMgo-HyoMUv6Sl_uaD0kepSuCWvu75NGGpJm2D_5VoePf-KZpfDCHT8IFFY4kGU_CBoPkwwOxihhEIma5-1wSeUBthJIkyRfxInYd_9jzp8X2D7xvPMgez3-catNd_CDvpXqUszv5sZ1_y0G68WJgRXplxNNY5XcbbYv8Wui_8s3TqTeBNxEtOrJV_iGmIhofUNvxwdcO5BZJozSR6pEYRR6RcId6YckOHpDYnTDEvxgjQvo-Q89U54bS2CIYJLUGyXbTw6_p_yxudrCThIEkz2ogFu6RAGmVuo_S9QW_THmVVnCBl0leZDnNkqK62F3CkucpbyqeU8qAZsCKhFdFjJgsy6zkF-KSxjSNE7qMl5QuqwXLGYWqYmmClC6bJMpi7EC0C2f1hdLbCz_5yzymZXzRQo2t8S9sKZX4OGoWURotry_0pWdKPWxNlMWtMNa8jGKFbfHSsWztzPfXvf4j0FjUp57iXgy6vfzzr_08Av8bAAD__2sydZg">