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

    <tr>
        <th>Summary</th>
        <td>
            Clang-18 crash:  Unsupported library call operation!
        </td>
    </tr>

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

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

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

<pre>
    Clang-18 with -mgeneral-regs-only -c crashes on the test case.
Compiler explorer: https://godbolt.org/z/x5sscsK57
```
$cat mutant.c
_Complex long double r;

_Complex long double foo()
{
  _Complex float t1;
 _Complex double t2;
  _Complex long double t3;

  r = t1 + t2 + t3;
  return r;
}

$clang-18 -mgeneral-regs-only -c mutant.c
fatal error: error in backend: Unsupported library call operation!
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: clang-18 -mgeneral-regs-only -c mutant.c
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'mutant.c'.
4.      Running pass 'X86 DAG->DAG Instruction Selection' on function '@foo'
 #0 0x00007f5c49493266 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xd2b266)
 #1 0x00007f5c49491170 llvm::sys::RunSignalHandlers() (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xd29170)
 #2 0x00007f5c494928c4 llvm::sys::CleanupOnSignal(unsigned long) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xd2a8c4)
 #3 0x00007f5c493e09ae (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xc789ae)
 #4 0x00007f5c493e096b (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xc7896b)
 #5 0x00007f5c4948da67 llvm::sys::Process::Exit(int, bool) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xd25a67)
 #6 0x000055ea29943c23 (/usr/lib/llvm-18/bin/clang+0x13c23)
 #7 0x00007f5c493eec4f llvm::report_fatal_error(llvm::Twine const&, bool) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xc86c4f)
 #8 0x00007f5c493eeb26 (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xc86b26)
 #9 0x00007f5c49cf4537 llvm::TargetLowering::makeLibCall(llvm::SelectionDAG&, llvm::RTLIB::Libcall, llvm::EVT, llvm::ArrayRef<llvm::SDValue>, llvm::TargetLowering::MakeLibCallOptions, llvm::SDLoc const&, llvm::SDValue) const (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x158c537)
#10 0x00007f5c49b9fe0d (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x1437e0d)
#11 0x00007f5c49b9e200 (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x1436200)
#12 0x00007f5c49bdbaaf (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x1473aaf)
#13 0x00007f5c49bdf416 llvm::SelectionDAG::LegalizeTypes() (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x1477416)
#14 0x00007f5c49cdb4bb llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x15734bb)
#15 0x00007f5c49cdab71 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x1572b71)
#16 0x00007f5c49cd8cf6 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x1570cf6)
#17 0x00007f5c4c07152f (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x390952f)
#18 0x00007f5c49847552 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0x10df552)
#19 0x00007f5c495d90df llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xe710df)
#20 0x00007f5c495dedc3 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xe76dc3)
#21 0x00007f5c495d97d4 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xe717d4)
#22 0x00007f5c51c7609f 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>>) (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x1ade09f)
#23 0x00007f5c5200c5fe (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x1e745fe)
#24 0x00007f5c50c28866 clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0xa90866)
#25 0x00007f5c52a80645 clang::FrontendAction::Execute() (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x28e8645)
#26 0x00007f5c529fecc4 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x2866cc4)
#27 0x00007f5c52afb1c0 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x29631c0)
#28 0x000055ea29943837 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm-18/bin/clang+0x13837)
#29 0x000055ea29940905 (/usr/lib/llvm-18/bin/clang+0x10905)
#30 0x00007f5c52696909 (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x24fe909)
#31 0x00007f5c493e094c llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/lib/llvm-18/bin/../lib/libLLVM-18.so.1+0xc7894c)
#32 0x00007f5c526962ae clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x24fe2ae)
#33 0x00007f5c5265e0f1 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x24c60f1)
#34 0x00007f5c5265e33e clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x24c633e)
#35 0x00007f5c5267a39c clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/lib/llvm-18/bin/../lib/libclang-cpp.so.18+0x24e239c)
#36 0x000055ea2994025c clang_main(int, char**, llvm::ToolContext const&) (/usr/lib/llvm-18/bin/clang+0x1025c)
#37 0x000055ea2994df32 main (/usr/lib/llvm-18/bin/clang+0x1df32)
#38 0x00007f5c47977c87 __libc_start_main /build/glibc-CVJwZb/glibc-2.27/csu/../csu/libc-start.c:344:0
#39 0x000055ea2993d1ea _start (/usr/lib/llvm-18/bin/clang+0xd1ea)
clang-18: error: clang frontend command failed with exit code 70 (use -v to see invocation)
Ubuntu clang version 18.0.0 (++20231018091808+48a53509e851-1~exp1~20231018091910.1571)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
clang-18: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-18: note: diagnostic msg: /tmp/mutant-ca8f02.c
clang-18: note: diagnostic msg: /tmp/mutant-ca8f02.sh
clang-18: note: diagnostic msg: 

********************
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8Wltz4yry_zTKC2UXAl0f8uA48UzOP_NPKsmZ3doXF0Ithx0MWkAZ5zycz76li23h2Ds3nzM1VZGh6f7R9I2WmLVipQAug_gqiK8vWONetLkUbM2UVm9r3VhuLwpdvl3OJVOrSZihr8K9oMl6BQoMkxMDKzvRSr6hCUfcMPsCFmmF3AsgB9YhzixMA3wd4Nlcr2shwSDY1FIbMAGdoRfnahvQWUAWAVmsdFlo6abarAKy-CMgi01sLbf_F6c9jyDBw__-J4k4c2jdOKbclPeDy1aQhA2SWq1QqZtCAjIBvRrWnCaqtA5IFpB8oEyHJQjtyCupmUMu3LHbTw1MHNnPoaNiHD0Ag5BBAb1GLkQBuUKO9H_oiJEB1xg13kZ6PWbRamJ7RieOx9dSxRyTCIzR3Tl0D0goVDD-BVTZjv2ubFPX2jgokRSFYeYNcSYl0jUY5oRWAQl7bg93N7OnG2SbYi0cYqhoVshAuxY5fXjIwr00xZTrdUAWUr5u_0xqo_8N3AVkIaxtwAZkgZgqkVBcNiV0RtXZWAfSGcYhIHNUG6iN5mAtlMjqxvTD7UpmreaCtRswjUKWG1G7wRyfHONfUNms6xZZN4Sn6MHolWFrxMyqWYNyLWz0Y5oNp6j7F9A56CqgN6hmxoJBzCFQJdIVqoSEnpgMxHNdAuqZd4rtJukw-dgoJdQK1cxaFJB00SjeUqGHduATU2wFJiBp63lrXTYSWqodKpIOW45O8PtnlqDr2YdJQG-uZx_QrbLONL2EJ5DA-6Pu2Fdb0QFJgwh3HjP4JgoIxQhvMMY4rWIe5VFOSZKg7ozpLKAz-2b7hwcjlOtO4Lk_xmxPZNjXpbbOAFsHJGmPUigXkBx1vrlorGkNRhRbswnb0UKogCym0_2UKO7uPn-ahNnU6mkYkCu8KUlBkmTn3y3g8ABwGKb4GODHRj2JlWLyI1OlBGP7QHEOTHmYYg8TOcBEMh4dwzSXwFRT3w_IApI1qovoZRduzgSPZTzy4FEPHgWcM_h1QTzNcgaeoOidoKQ4j6Ck8ATFvsKzkiXpcavtwkz_42YjXECyzjbnqNBanknhMUtSD14ywItjYCTPI8oJ_Q5BXdTqeIbtCo9leqBa4FE12nEfupddjlj2OWLsoc9fhQLEtbJu8NCzbZ9nCY8qD2t2iLUgyVkEFcSPBbkniFdRTMdm8MzMCtyd_gpGqFU_tmZf4E4Ucyalp6Fd2LyefRhUtJ98fL67veof70TBu7Xj-ZvPz_7AzBj29ghVQOcjEdefmWwgoDc-8TGYn_Yw7-sWlvXXPF3fae4d6Hs5JO8Jfl31YZzxmO5tvA3DfuIo8gpweQZJEU0Bl56k8EASEIzPIikhGHuS_DhelAVj1TkkpZSxypNEDyRVUThOu5419nYHKybFH_D8VsPZUlkYpWkUJh4yP4bzsoiK4gSy2yeQQ2LTJXwANVPlzVq4zoXOhDBOaVQUHsL4ACEr0vCbCPvRmZRXzAp-JTX_Yr0AsCvR9k51HvykSEMPf3KAP-PVqbPf4zeNulefGH8RCrZQPfzv5s62Acwr30S8XMRxGsbkDG5Cc5zHxHcTP5NkURrHBJ3cc1tcj7R1VE1n1w8uqzgmHmo_LcVljstxrl48tEC3l4C_GS-kLeIxXIIP4ELJ6XfA_dTdW3wbHIbOBTUpOfWghoeaTctxoS1hxfjbUPrtQd-u670X_aWAw7SMPMDjjBKHPE1wXvW306FyWAt31V_g7xtXN22BOpq-FmyltHWC2xu1EgqGZD8i-QisBPMEzPCXoVTw6oIR6RClv0HVlyPfILpjanWMZBTGXFvNtDWQN7zV-OyA4aCE2WDs4yW3ypnGild4hGqu3IMzXln1Wg1OvxASnt6sg_VQYllX9jONEv9pYFkfrGzvrfVXIxwst7fX0aISKtZItyxBgoNvLKQ3ncwfN6K-U8HrujOjrI8prASc-046LhhigjGPqx-_wx0VBmkUV-AJG9cAMeYky5JkfFgPzFiYPT37xvoEa-bdLn7-lnEMKMtxlniJiMSeUliGkyge41wYrdzeqoZbIPDGwU8WKMeAkQyyJIo9ZImHLK-A88h3xb61equsY4qDh23rBNnprfxcxDqOPkk496NW6uu1KkKOvajV49xv4lVz9h7zu022Xn8m1HlCQ-5V7yQ7vHVnNEWch8s1E37YH13P-Asz2wg2G-KGP0bm6FWL8rvBj2_xmX9pIvkBRJzj-MdYtivGLL0GXkySPMnxmVQcVZDj3BMWvmvwRHwUqeeG2ZdH4PoVzNu8NdiN23fjWAXyzTuHbW9yabqzaNWMhn7-z0XTo72jiHt7IIcKIwzGxl0a8botdObzcK7Xa6bKw-Bx1Jh2uUN3qZFJ__6_y4hDthglm-WSbzZh2P8o2itKm1m6dkBnoh5xO7B0hglnt9MH7JiUrUdqM5pvSWb7oDz7-f7AKWshzEsj1M9ZSQy4Ck9quosV7F2c3qrfCywHC1uCU4XK_yCdHbTCzqkMnuDKu_V5vdFOGZSeNrsTyvhNF_a0Jn7TxZ2w7lQ9tmZSfgbu9FAP7621ZqI1lKEx-r3KG0zqL1Qhpb49-ek-SRnN-Sm416NnL10dyVOnVP83qvBcIRsIzf1wd9iLxiQelLbNi1vQXZiZDUFi1J7UWg6x_Ad7I-O0RWIfVnoAq6woQS2gH-PbLvP4eh2DNE9TnqVouWwVtrSOGbcchCyKRsgyIItVOzeZf_7t67-K3U8yJWkryTZbxfeP3WTHZ8oDOqNRFNAZ3os_SPC0DIGhXvAPbaxdt9vX9m3m7rXv7hUnqoayEPHBtiomJJT9W3_YiPbISkBp1zBtLKDJK3IaWQAkRlXbIOj3olGuGVi_grFCKxRmUzwdGq5XAbkimNAQhxnOwwy3Y1HGYhrjHLI4nIR_wqYO_xwR5SGehvGoB9ZfMNs9bLJkmUSTmk-kUM1mslLNQPJigJVorcuu_4VqbcWmn-qKSSmhvBadHnYqbVX4Tl1Kt1e3GSp3F2m0tqtu3XBmv_B_9DZ_eJ0-e36ezT-i5483aHF_d3f_j9v__4AWt3c3T-j5vhu--v0Derx5uH983r3Efjj2OjyzrY-dfCW-IzCAulQPJWJux_I7VUAWbl0HZNG_eJ5wllWYbN-K_xIP-_ITZ3GuE9l-cnJRXtIypzm7gMswxTjFeUzIxctlViRxmtOCxpTyLA858IrQHOKKFpTz6kJcdgYcEoppmEVkmqQlS7KqiEsMSU6SIMKwZkJOWxeearO66L6AuEwpweGFZAVI232lQ4iCr6ibDAgJ4usLc9m5fdGsbBBhKayzey5OOAn7j3e6jydaDX3fpx0XjZGXP__tRgf-vwEAAP__CSqauw">