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

    <tr>
        <th>Summary</th>
        <td>
            A combination of Enabling regalloc advisor related options crashes `llc`
        </td>
    </tr>

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

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

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

<pre>
    The option `--regalloc-enable-priority-advisor` and `--regalloc-priority-interactive-channel-base` cooperate to crash.
The value of `--regalloc-enable-priority-advisor` should be `release`, then it requires option `--regalloc-priority-interactive-channel-base`.
The value of `--regalloc-priority-interactive-channel-base` can be any inexistent string path, and it will crash due to Segmentation fault.
Crash has be reproduced in `llvm-18.1.2`.

Reproduced with:
`/mnt/llvm-project-llvmorg-18.1.2/build/bin/llc --regalloc-enable-priority-advisor=release --regalloc-priority-interactive-channel-base=foo  /mnt/data/acpi_listen.bc -o /mnt/data/acpi_listen.s`

trace:
```s
 error: Cannot open inbound file: No such file or directory
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /mnt/llvm-project-llvmorg-18.1.2/build/bin/llc --regalloc-enable-priority-advisor=release --regalloc-priority-interactive-channel-base=foo /mnt/data/acpi_listen.bc -o /mnt/data/acpi_listen.s
1.      Running pass 'Function Pass Manager' on module '/mnt/data/acpi_listen.bc'.
2.      Running pass 'Greedy Register Allocator' on function '@main'
 #0 0x00006292a4e2bcb8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/Support/Unix/Signals.inc:723:22
 #1 0x00006292a4e2c0d9 PrintStackTraceSignalHandler(void*) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/Support/Unix/Signals.inc:798:1
 #2 0x00006292a4e29529 llvm::sys::RunSignalHandlers() /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/Support/Signals.cpp:105:20
 #3 0x00006292a4e2b550 SignalHandler(int) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/Support/Unix/Signals.inc:413:1
 #4 0x00007f1749842520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #5 0x00006292a0b469f6 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_data() const /usr/include/c++/11/bits/basic_string.h:195:28
 #6 0x00006292a0b46b1b std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_is_local() const /usr/include/c++/11/bits/basic_string.h:230:23
 #7 0x00006292a0b4122f std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) /usr/include/c++/11/bits/basic_string.h:720:18
 #8 0x00006292a5e20f34 llvm::Logger::switchContext(llvm::StringRef) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/Analysis/TrainingLogger.cpp:52:28
 #9 0x00006292a5d9d377 llvm::InteractiveModelRunner::switchContext(llvm::StringRef) /mnt/llvm-project-llvmorg-18.1.2/llvm/include/llvm/Analysis/InteractiveModelRunner.h:53:15
#10 0x00006292a3ea912f llvm::MLPriorityAdvisor::MLPriorityAdvisor(llvm::MachineFunction const&, llvm::RAGreedy const&, llvm::SlotIndexes*, llvm::MLModelRunner*) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/CodeGen/MLRegAllocPriorityAdvisor.cpp:293:1
#11 0x00006292a3ea9d5f std::_MakeUniq<llvm::MLPriorityAdvisor>::__single_object std::make_unique<llvm::MLPriorityAdvisor, llvm::MachineFunction const&, llvm::RAGreedy const&, llvm::SlotIndexes*, llvm::MLModelRunner*>(llvm::MachineFunction const&, llvm::RAGreedy const&, llvm::SlotIndexes*&&, llvm::MLModelRunner*&&) /usr/include/c++/11/bits/unique_ptr.h:962:69
#12 0x00006292a3ea9928 llvm::ReleaseModePriorityAdvisorAnalysis::getAdvisor(llvm::MachineFunction const&, llvm::RAGreedy const&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/CodeGen/MLRegAllocPriorityAdvisor.cpp:153:58
#13 0x00006292a3bac5db llvm::RAGreedy::runOnMachineFunction(llvm::MachineFunction&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/CodeGen/RegAllocGreedy.cpp:2755:75
#14 0x00006292a3924992 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/CodeGen/MachineFunctionPass.cpp:93:33
#15 0x00006292a4105692 llvm::FPPassManager::runOnFunction(llvm::Function&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/IR/LegacyPassManager.cpp:1443:20
#16 0x00006292a4105968 llvm::FPPassManager::runOnModule(llvm::Module&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/IR/LegacyPassManager.cpp:1489:13
#17 0x00006292a4105dc9 (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/IR/LegacyPassManager.cpp:1558:20
#18 0x00006292a4100a44 llvm::legacy::PassManagerImpl::run(llvm::Module&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/IR/LegacyPassManager.cpp:541:13
#19 0x00006292a41066bf llvm::legacy::PassManager::run(llvm::Module&) /mnt/llvm-project-llvmorg-18.1.2/llvm/lib/IR/LegacyPassManager.cpp:1686:1
#20 0x00006292a0b36ac2 compileModule(char**, llvm::LLVMContext&) /mnt/llvm-project-llvmorg-18.1.2/llvm/tools/llc/llc.cpp:745:34
#21 0x00006292a0b342da main /mnt/llvm-project-llvmorg-18.1.2/llvm/tools/llc/llc.cpp:412:35
#22 0x00007f1749829d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#23 0x00007f1749829e40 call_init ./csu/../csu/libc-start.c:128:20
#24 0x00007f1749829e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#25 0x00006292a0b32fa5 _start (/mnt/llvm-project-llvmorg-18.1.2/build/bin/llc+0xae0fa5)
Segmentation fault (core dumped)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMWd9v2zgS_muUF8KGROrngx_ctN4rEN8FSfeAezIoaiTzSpMuSTX2f78gJVuy6m2z2aTdwHBsiZr5vm-GwyFNjeGNBFgEybsgeX9DW7tVevHpCP8Dur0pVXVcfNoCUnvLlURBGs5mGhoqhGIzkLQUMNtrrjS3xxmtvnKjdJCGiMpqMvg8iksLmjLLv8KMbamUIGYlNeAeY0rtQVMLyCrENDXbeRC-D8Klw_CVihaQqp-PwmxVKypUgntEg4DOTYBvkd2CRNwiDV9arsFcZ_gc0D9G-DzqVDqgVB4Rl3DgxoK0yFjNZYP21G4daicrt-iJC9HJg6rWa_UIzQ6kpZ5DTVthe1i3ftSWGmdcw16rqmVQIe6pCvF1N4vyeTTHA5Pu_WEY-8TtNiD9da_faidtgFf-8b1W_wdmZ-6L0s3JHF6VLReV-8-lH8vQM6JG3vdxQn9JQPK-VgqhM7KKWhrgFWV7vhFey3nJ0Ex9d4Rx3EYSWE0ZXBD3L9N9R6C1A7xEt1RKZZHau5SSpWplhWou3KPo3wqZlm39d6Q0qrgGZpU-dkbu7z4sHz8g05Y7bhFFZdu4KCltXVS31u6NA4BXAV413G7bcs7Urpd-EoEAr7gxLZgAr7pMkUy0Fbhc77OlpOyzZ9WH-tFS9hlV7W5_phnOkf-716rRdIeoblqXWg4H-sdG_u8G3lOPeuoPrZTdrDMGBThbtZL5iXXvLqyppA3oAGdISbRTVSvAjfo-hABnveb4T7z8pgGqI3qAxj2j0dIJQK06eapPKJyvONxRJ27W52KASYjCQxiGYYoLTGPAJStz5NOELAOyNEfTfbjXXFof-E8-v3E-DNL0aaOM1UB3AU5dxeGOUvHcwJ-ykpcBXj22e5fIAV79LvnBXeCNpMLMuWQBWWaYBGSJ8cAgmjBgYVWgCdzOxr-orISLQf5V8SrAy7fCWOQBWUYDRDyBWCS4uCbyQysvkJoA538f4wkc27v5GoWJEzAc0JFpCiRJiKaKvV1E44hcqhX3eLI6yuIij3GCQ-SV6A0e8nSTxjPBZXuYNbLtbrC5UfM0wO_Cg38kwMVgMxlzDMs4LeoUGVt1um827HCIou5LSQ1nm24JDcgt21LtUvo82F3YWE25K27dbfLhYgQ9z8Hhvnt5V-tNN9N9YJmSxjpRW6NdIe5Kb4BXLMDv_GsVRb4kWlefx9DmbnGNCh_MfCCaTomWUfmriHKzcffFK5HFJPTvA9lsQjbCuP4lZLv-0y9HAc5_MgJXctN-cr5Q2gw7aaNRHuVjaRPAYU3iUcm6U41bzbry9cQt294qaeFgLxaGR-_hAeqXlo6lpOJouMP8SVPuVr7Oc1_MEjxJ_-ICdlVUJMtGsD8O_cBaVSDcavqmNIZI9BdGjK6D8fFIfElM-hYSk-himSZAiwjXI17ru_u-5Vme-qLrl8e01pRtuYRzn-LnZ7-AD6Meln2Lcf32o1D2o6zg4BrI5eW99d1Y5Jcvt7eqgt_ANYXruwdofIszIdbnAy5Ga4nTLZrqViXjCrGmn-F3yb8E5Pa7Yp5q2sZw2QjYqNLBHgzt6GfYtJJ_aeEHpi4F-ukRcOXirVMg_WbEt4nwl0tWJ-5mb7sJUqRu5qfFEGk8jXSBx43sQ7dLcDgmITnPSD-uAfuqc-WtMz7ypSLJByEu2jlSUpZU5RWMfeveyv_ICbnvEX8VTidGHZDT1M0S18tko6IXXzApcFwU-M9nj9tmjUhdZfOqNK7477n4KkTIwOSi_YyjMEkvmKzu3cOnLeLbc_j4EODVHTSUHUeOTxkVx2S0Q3Dw0yn8Is2fAX_td7mX6dRfeivoeeH-jZTPptAr5hznVCp53KnWIEl3YPZ-T1v0IP8xfJIkn4Qin_AJaTzuy4S31G_ZB3sfd3txJvITCSRxNIlHMcGfpmX9Y_y_AnuU5ulFM4HDy-0GSSnDiKndngs450bX1y-_WYrv7v67PjeXL0BslRKmOxfr3nuYWezKJokHmNEEZowrinaUy1fyGEdu7SVDocb4cseOi6oI0WbjNuUbY6m2G0aF2HgMc7fEG7dnn7uP5mgq2Ds3cm9Fv5OfPtT1xP5QJR28kqlXiEPkn-GS26mj7qOzPvPW58yZw5P5heNrRi-oXGNx1TjJXD0ZyTQ5hCC4pgnqrPbnGy86JvVHHhTCmibnM49vT_adB6Y0-HNbqM4jzwfUN9WCVAUp6A0soiyKsihL4-hmu2BRktZFVIdRmWesziEHiCvIchIXGa3SG77AIY5DgouIhBmO5pgkWUzziNQ4JTEtgziEHeVi7sjMlW5u_JHzIs_CFN8IWoIw_rckjCU8IX8zwDhI3t_ohVejbBsTxKHgxprBiuVWwGLp5mDJZUdW1eiDpKXgskGnA2HUnxYjDYJaqPqfbUx3vg2m-1GDORFaLRYvP0D3hP4IAAD__3eqZtA">