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

    <tr>
        <th>Summary</th>
        <td>
            Segment fault compile Linux 6.10.2 KCFLAGS="-march=native"
        </td>
    </tr>

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

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

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

<pre>
    OK, so not exactly a supported environment from the Linux kernel point of view, but...
I have the following environment variables specified:
```
CC="clang"
LLVM="1"
KCFLAGS="-march=native"
MAKEFLAGS="--jobs 32"
```
and the kernel configuration includes:
```
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=180108
CONFIG_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_HAS_LTO_CLANG=y
# CONFIG_LTO_CLANG_FULL is not set
CONFIG_LTO_CLANG_THIN=y
CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
CONFIG_CFI_CLANG=y
```
The LLVM/Clang toolchain is at 18.1.  This is on Gentoo.
Note, **the kernel compiles OK without the "-march=native" override.**

The stack trace and bug report are:
```
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Running pass 'Function Pass Manager' on module 'vmlinux.a(ip6_input.o at 1413720)'.
1.      Running pass 'X86 DAG->DAG Instruction Selection' on function '@ip6_rcv_core'
 #0 0x00007f9f9dd8f78a llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x398f78a)
 #1 0x00007f9f9dd8cd46 llvm::sys::RunSignalHandlers() (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x398cd46)
 #2 0x00007f9f9dd9006b (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x399006b)
 #3 0x00007f9f99e579d0 (/lib64/libc.so.6+0x3c9d0)
 #4 0x00007f9f99eb8455 __libc_realloc (/lib64/libc.so.6+0x9d455)
 #5 0x00007f9f9dd12e93 llvm::SmallVectorBase<unsigned int>::grow_pod(void*, unsigned long, unsigned long) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x3912e93)
 #6 0x00007f9f9e47e763 llvm::SUnit::addPred(llvm::SDep const&, bool) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x407e763)
 #7 0x00007f9f9e7706aa llvm::ScheduleDAGSDNodes::AddSchedEdges() (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x43706aa)
 #8 0x00007f9f9e76549d (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x436549d)
 #9 0x00007f9f9e843fb2 llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x4443fb2)
#10 0x00007f9f9e8427ff llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x44427ff)
#11 0x00007f9f9e83f64f llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x443f64f)
#12 0x00007f9fa16c2abe (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x72c2abe)
#13 0x00007f9f9e262169 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x3e62169)
#14 0x00007f9f9df39b38 llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x3b39b38)
#15 0x00007f9f9df420d3 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x3b420d3)
#16 0x00007f9f9df3a381 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x3b3a381)
#17 0x00007f9f9f9faa19 (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x55faa19)
#18 0x00007f9f9f9fc157 (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x55fc157)
#19 0x00007f9f9f9fbd14 llvm::lto::thinBackend(llvm::lto::Config const&, unsigned int, std::function<llvm::Expected<std::unique_ptr<llvm::CachedFileStream, std::default_delete<llvm::CachedFileStream>>> (unsigned int, llvm::Twine const&)>, llvm::Module&, llvm::ModuleSummaryIndex const&, llvm::DenseMap<llvm::StringRef, std::unordered_set<unsigned long, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<unsigned long>>, llvm::DenseMapInfo<llvm::StringRef, void>, llvm::detail::DenseMapPair<llvm::StringRef, std::unordered_set<unsigned long, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<unsigned long>>>> const&, llvm::DenseMap<unsigned long, llvm::GlobalValueSummary*, llvm::DenseMapInfo<unsigned long, void>, llvm::detail::DenseMapPair<unsigned long, llvm::GlobalValueSummary*>> const&, llvm::MapVector<llvm::StringRef, llvm::BitcodeModule, llvm::DenseMap<llvm::StringRef, unsigned int, llvm::DenseMapInfo<llvm::StringRef, void>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned int>>, llvm::SmallVector<std::pair<llvm::StringRef, llvm::BitcodeModule>, 0u>>*, std::vector<unsigned char, std::allocator<unsigned char>> const&) (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x55fbd14)
#20 0x00007f9f9f9f1e77 (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x55f1e77)
#21 0x00007f9f9f9f10db (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x55f10db)
#22 0x00007f9f9dc758f6 (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x38758f6)
#23 0x00007f9f9dd2a966 (/usr/lib/llvm/18/bin/../lib64/libLLVM.so.18.1+0x392a966)
#24 0x00007f9f99ea75c1 (/lib64/libc.so.6+0x8c5c1)
#25 0x00007f9f99f2685c (/lib64/libc.so.6+0x10b85c)
Segmentation fault
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzUWV1v4rzy_zTujbUocd4vuEihsGj7ptJd_e-QE0_Azwabx3Fo--3_ssNLTEt79ojnHJ0KiXQynt9vxmPP2NCm4UsBMETRNYrGV7TVK6mGS7kFtbkqJHsbPvxAZIQbiYXUGF5pqes3THHTbjZSaWAYxJYrKdYgNK6UXGO9AnzLRfuKf4MSUOON5EJjWeEthxdjrWj1YDBA3hh5-Qyv6BbsoErWtXzhYunY3FLFaVFDg5sNlLziwFCQd4NR7O0-9t_RCAVjREhZU7FEhHTS29tfd53cP8h-jCa3-XTeib-tqSpXKBgLqvkWDkp3-Y-bvtq3v2TR4IAcFE7gqWDWj53bpRQVX7aKai4F5qKsWwbNWe4P95PZdDEaLWbzxeg2v5-iYPzmvjPSxa-bp_ns4R4FYz_1fC91VG6fH84Mzp9G3xfzn4-PD0_P8z_XWzx_n92_U_6ef2gKkQCfElpMft7eYt7YPGpAf0z7YxiX02gyOxeg929OovxsctPkA5mMTJJgLWVdrigXhhrV2E8H_gDj5xVvjEQKPAWhpdxl673UYDIYkRyR3Jns9YabJH34gV-4XslW21z4ML2wWV-KMxh0dnZUDwwbTcvfWCtaAjZJVbRLrMCsN0wVnMugx9ubfH6Dm7ZYc41pf5SWeKX1xiYfmSAyWXK9aotBKdeITOp6u__6tlHyLyg1IhPeNC00iEwshV36Wp9KRZsVLmj521LchWZuSbN2vTkQ9AbY_j21QphlvaFNgxFJJq0o7aJ4NII7KugSFCKJCfdasrY2cUu269rsIgOKSMo38YKLTasH0s5S6AcJ8RDJEEl2-P4ZsP9LYzzOp99QcDPOp3gmGq3aDn4ONdinHXa154VIgkLPgKpyuyilAiOxMBiRwMPeq-d5XlJlVcZYWiUpxTaKQY6CvHlruodHxYW2cXk2gUIkPSop-rKQjVZA14jEJqe40IhkGJEUkUnbKDMlvDjOj2_kBReITAaD7mUcdt8mpQeNHJjsReTaew0yS8oE6MDaP2FdsjD-iPVTK-Z8KWj9nQpWg2oso8sRM7gOMeISyzwvLi6FZo05aEEfLYMoyZi3Q-uZKo2duDNSZsxzTISuiSINowgvFmbYQgGta1l-ajFjYRQ5FiM3BD6BLOjNzXxN6_oXlFqqa9oACkatsJWb2awJbjq1pZIvi41kiKRbyZndXEb4oFpLUxXfCS42s5a141bcdwvCBJLYceun4Lp7pIw9KmDOEpmPYWOqaKN3K6SQsr4Y39CzdBy-icM3SbyY9hf2vFyB2Z3G-XQ-vpe7ah7kOWP21Q1bwkVXSxhYCg7H1OUYR2HGLoVmjTlomYOWhkFVkH5E9jvoOJ_O5lB30pFkMAWRC3az5nqcTy8ak9CSOLA0O5t3wpIkVfUly06a1_U1bXh5Xcvyd-Pk36FMHXPwcj4Yio4PvutDUMXh1z6oVjyIO1quuIA9XceHd-8u6YTl6DjR38qpH5eEFnAZtIRYYw6as5UDiYkfZ_is76bZ6EXtw3D9E3EKwBJzmDsVhFVBVgRpj_nk0ZDdN0b_Dc6FpeRwdmtUFRKPBf8C5zvb0LlJuRNdkq-l4_CNT2JMg9Tv8a1hScu3XaN2ZD5bb45r6x9nbUk5rJ0SZFYR9S-EFkXWmIOWnqCVfpRcDM0Yc9CyE7SC-WF_RrTsHvSKi2ta_gbhNgQHhZE9Wju9gdMQkRFuNOt09009CkZHSzevGyg1MBSMDoqt4H-3sNho5aiOqCntE17DfNet94wzqGhb6wWDGjR8Ps50aeZj4nvK9jjs-YUL6FccM8jR6OXhe_G8Xa-pepsJBq9OfI6KYxAN3NGNw3auFRfLJ6gc91ohFQMFbGFO7L2uc99KHjRXtFm9U-iYH3Tg75bWCzOHn-vZBppqqT5SPI3G3puZqOR5j2w7fDqUgaa8ds08Uq7-ZwPTpdeXs_6O7FFrWsuC1r9o3e4zaXeIOBvwd8b-NNR_zOYzL-_opjsmnZ_Do_ia61Iy2K-nP1sj51fwfzQj350DTyz2To79vW7zqdFzIeqMe-0eKHeyc7tHOXAqV1R9ncBW63RSL1fzTJHpVyHinVQhH5LL1TxjzEHzT9E8dqHLDYPmscJBc69SyiRKq_hCvUpqjTlogXtrQWgWXwots8YctJNbF5pEpf_pNUtaRqXTXBGnhc0qEqfR5zc1vlekUXmwMYflGoTubvRt5T-5ib1iw4BlQUavYOgnhERBGnnJ1WqY0tRP4yApwGcBo0CiKioK4ieeF2d-FVzxIfFI6KWe76dR5EWDmJEoS8PIK6KQZmWEQg_WlNcDE86BVMsre0M79D0_CslVTQuoG_tDDiECXrB9iwhB0fhKDe3lbtEuGxR6NW90czSjua5huHOt82p_nb37HSce-N6A4C9-NLlqVT3896-Zd35sh-T_AwAA__-ox8Ii">