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

    <tr>
        <th>Summary</th>
        <td>
            Clang crash
        </td>
    </tr>

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

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

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

<pre>
    Happens with armv6, armv7, and armv7s but NOT armv5 or armv4t
Only happens when compiling without optimizations
Also happens with the latest Apple clang 1600.0.26.4 shipped with Xcode 16.1, but NOT with 1500.3.9.4 shipped with Xcode 15.4

```
0.      Program arguments: clang++ -target armv7-apple-ios -isysroot iossdk -Fsysroot/Library/Frameworks -c MobileCydia.mm -F/home/uniq/devel/iphoneports-cydia/iossdk/System/Library/PrivateFrameworks -I. -isystem sysroot/var/usr/include -isystem sysroot/usr/include -w -stdlib=libstdc++ -std=c++03
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'MobileCydia.mm'.
4.      Running pass 'ARM Assembly Printer' on function '@"\01-[Database _readCydia:]"'
 #0 0x00005be564706488 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x695d488)
 #1 0x00005be56470391e llvm::sys::RunSignalHandlers() (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x695a91e)
 #2 0x00005be564660597 CrashRecoverySignalHandler(int) (.llvm.2746408055151269361) CrashRecoveryContext.cpp:0:0
 #3 0x00007c31fe84c1d0 (/usr/lib/libc.so.6+0x3d1d0)
 #4 0x00005be5658f0aed llvm::EHStreamer::computeCallSiteTable(llvm::SmallVectorImpl<llvm::EHStreamer::CallSiteEntry>&, llvm::SmallVectorImpl<llvm::EHStreamer::CallSiteRange>&, llvm::SmallVectorImpl<llvm::LandingPadInfo const*> const&, llvm::SmallVectorImpl<unsigned int> const&) EHStreamer.cpp:0:0
 #5 0x00005be5658f163b llvm::EHStreamer::emitExceptionTable() EHStreamer.cpp:0:0
 #6 0x00005be56587935e llvm::AsmPrinter::emitFunctionBody() (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x7ad035e)
 #7 0x00005be562857536 llvm::ARMAsmPrinter::runOnMachineFunction(llvm::MachineFunction&) ARMAsmPrinter.cpp:0:0
 #8 0x00005be563be7ed9 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x5e3eed9)
 #9 0x00005be5640d86af llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x632f6af)
#10 0x00005be5640e24f3 llvm::FPPassManager::runOnModule(llvm::Module&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x63394f3)
#11 0x00005be5640d95c7 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x63305c7)
#12 0x00005be564fa78e3 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x71fe8e3)
#13 0x00005be564fbf47d clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x721647d)
#14 0x00005be567396b89 clang::ParseAST(clang::Sema&, bool, bool) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x95edb89)
#15 0x00005be56549a4c4 clang::FrontendAction::Execute() (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x76f14c4)
#16 0x00005be5653d35f0 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x762a5f0)
#17 0x00005be56559d0fa clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x77f40fa)
#18 0x00005be56201e58f cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x427558f)
#19 0x00005be56201a5bf ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#20 0x00005be5652251a9 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::$_0>(long) Job.cpp:0:0
#21 0x00005be564660158 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x68b7158)
#22 0x00005be565224df4 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x747bdf4)
#23 0x00005be5651e264b clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x743964b)
#24 0x00005be56520266b clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x745966b)
#25 0x00005be5620199ee clang_main(int, char**, llvm::ToolContext const&) (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x42709ee)
#26 0x00005be56202c57a main (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x428357a)
#27 0x00007c31fe834e08 (/usr/lib/libc.so.6+0x25e08)
#28 0x00007c31fe834ecc __libc_start_main (/usr/lib/libc.so.6+0x25ecc)
#29 0x00005be56200c265 _start (/home/uniq/LLVM-19.1.4-Linux-X64/bin/clang-19+0x4263265)
```

Preprocessed source: [MobileCydia-5b9246.mm](https://github.com/user-attachments/files/17965810/MobileCydia-5b9246.mm.txt)
Run script: [MobileCydia-5b9246.sh](https://github.com/user-attachments/files/17965811/MobileCydia-5b9246.sh.txt)

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzkWc1y4yoWfhqyoexCSOhnkYXixNM9lUynktxbd-dC6MhmWkK-gNLxPP0UWI4kx0nuVDyzmaruWILD4ePj_IG4MXKtAC4Ru0Ls-oJ3dtPqy99U8GdIL4q23F1-49stKIN_SbvBXDfPMaIL_5D4B1XuXwwuOov_8ePJvzLcav8QWUTyH6re4c1B0QYUFm2zlbVUa6-37Sxut1Y28l_cylYZRPK8Nu0wxk1uN4BrbsFYnG-3NWBRc7XGQUzInMxpPI-w2cjtFsq9_B-iLQEH8TxwQA_ofFfACJmH8-ydIWweIZK7fzHp_5GczBHJ7nW71rzBXK-7BpQ1KMz3OBC9QvQKzyzXa7B7Tmbc4ZzJ1uCZNDuj29Zi2RpT_sSzZd-A6PJWFprrHaLLpeYN_Gr1T4NnAt-1haxhsSslnzcNni0RXW7aBhBddkr-ieiyhGeoEV3K7aZVsG21NTPh5F2bnwjR5ePOWGgm89xr-cwtjKf7Pt-DtNDgAdoz12424_5KJequhFNiRwK_8MzYspYFCq9rWRhbigM_xpYovO5fSYhIHjhiUbiAtkLhDd5ybUBjbjGoErcVrmQNiOTUiS3c_qxBgfaGgkgeuuaHTilnTFtuDEY0WXZKuH587xruuOJr0IgmuFW4acuuBic1pRfRZI5IHp3Slz_c4dwYaIp6h--1VPZVXXWYCtEERQRRitiCBDPErq655QU3gFcaeOnnQWGO2LUTogkiOUY0JJi8EEIIK4DFUULiKE1xXT83TjbMzc7sH_y0j5aLn0-aC0A0HYQ0_7VqjdXAG0S9g0plEc0woukbm7m9_f1uFmTzYB7NbqXqXmZ_xBGiy0IqRJfemGdB5nbnJc5YGaUpolkPNjgCG2YBnAL70KlHuVa8_sZVWYM2Hsg58PAsgAEPneCJY8KyBC80N5sHEO0z6N0EBqLpQMzc4Z7TJIojkhLGAhbQOAvjwPVPdCxaZeHFzsV2i8Kc-P_7-cN-_kSEQQVpJIKS9Ivcu4TzAf9XzE07j_0qwjIoybCGaLwGllaEQzni9Obbo99Y0Pt3Fzo7Cwte14_SwhMv6qkxPDa8rn8HYVv9vdnWKFy8r-yg5UZZvUPhTW89X1P2wNUa_lNlt1yVUq3vefldVS0WrTIW0dxFhP75U2Wd8tms9MY_GZfhAeuJXWRHOxDEYfHBDkAj7c2LgK3z-wP_n04STydJspCNXSc3zSGwvE5yCGNXbbk7jwMlvCQhGzlQMkZFU5awMB6jerg7BqY79UPdcbGRCg4AJ_b3ps9vwETTCXrSMZCwgATKDL-r1MX1EZyTOI4AfJE5BiFAmQ3MZZPQQ8o05tUI8PLeYTyknv8p1DikVcyrPVQXtKcphgCNqvAvQL3zmXK6t33TeWCGWVSFA8zgiNGMiWQEs4Y1F7s-GQ6A987fg_5vgiVMJAPYaeapeJJC2FeC-6DRSHvFxU9Q5Y_ObjuLaDrqvpZ8rVpjpTA3ai0V9PFtJPINeAn6EbgWmx8-1phJKByJurLob6A-kXrypeknQrdcrU-JjAKv1VKtH6CaNh_Yzo8U9iTkvYGPh3xXVndGPsMDVAtl762epITnqvfxpayhL2JdVllgX0S6HreRHay2RyNdPbT9paWF1aEqGg0qoeJdbVcl1GDhk4HhTT_n2yUtWmU6lxXcmr8eml0BASN3CKcWVlRRUn6EYm80vtB50lyZ2pfIvyl5ZHr541Nf0JzHNRIaxFFSDsAnBU0SZnGRZmPg967Czx-fprAeoeG9rRVtWw-_XwaYMSiLNBsATvN9lPFIRGOAS-34ebXZvT-_gOgsnCkNx1UQiWhANC0OwjJkFZk6uDsvg_6ujOVKwATTwbXS95dwno2OKWcVGVBPigfGspJUfBID9_gG8M-t4G-xvlncefwpqSJS8QHtpMKgJACWVliIYNVwOU0cudZ85wJcuBAbrsfFqI8Ekza6wM-tLM8DOqIJY-kodWdHoDkrKnzgdRE8eQ_5sPh_u4KjeO509AFhUjKXWj6_KdXcmWtSTjBKWcAzz8FI6eFYvNKeRt-79x0fUf1Bhtd1wcXPVaUczMEe9hP3trEIFm3TcFUeu-HJ7XqN8a1PYXx6xhgy12tUfx2wWomXlyDYvxTcSOEygHSYPIUTYdewsppLaw7dR-p4XTtbb_Wo34nkQ1zz9rIn3A9BNFoRL5TWrVq73r-3xQn-g-NDb8DGNwanjq7DqZxXUO8m9H28VWcondIiCVj6atOUHtlPVFaT8Pt_t_9fDnVRUpTVkE7opHRgAdA4Kt5l2Edf_ibTHWifhOqjgU7gvULyA9F8kufPRkKYxVExkDC9V6GExvG7JFyPnidZ60S6eo-8zy8oXq1jy6UzDH8X9ddJ603oLKk8Ylkcj8hiR3kmy6C_YD-kxwNY7wt5b8mfZ5GvJ0SSAQxA4ylQKljCsYP49ZnSkCVDvUCT6d1eGAFJP73bowzIKNSlb3QIgVcrN2ZlLNd2NYL-oVYhBq1HRQERNGZ4r-_rLMQhjVk_1-jzByL5vYatbgUYAyU2bad9HYoRuxrdpM9YkdEonjeNv-hON9Zu_TGOLhFdrqXddMVctI1fL-gZt5aLzf5bCl1Wsgb3GyRZzNKAILo8qXtu3enFYXzoFDZCy619H4vZnAFLcBqL2QxYLsrLsMzCjF_AZZCENEtJHNGLzSUrMyFEKRIhgiwpkyKKI5pmBWMkzgRhF_KSEhoFQUgCFpKIziGIkqzgKRExqWgYoohAw2W9v7Ru9fpCGtPBZRCkQcIual5AbfxnPEr771EUsesLfekGzIpubVBEammsGVRYaWu4XPjPaMJVDRedri8_YMm7-_5nttXtP0FYRJceiWdqD-b5kv47AAD__-xyes4">