Skip to content

clang crashes on valid code at -O{2,3} on x86_64-linux-gnu: Assertion `(VF.isScalar() || Def->isLiveIn() || hasVectorValue(Def, Part) || !vputils::onlyFirstLaneUsed(Def) || (hasScalarValue(Def, VPIteration(Part, 0)) && Data.PerPartScalars[Def][Part].size() == 1)) && "Trying to access a single scalar per part but has multiple scalars " "per part."' failed #109581

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
zhendongsu opened this issue Sep 22, 2024 · 2 comments
Labels
crash Prefer [crash-on-valid] or [crash-on-invalid] vectorizers

Comments

@zhendongsu
Copy link

Compiler Explorer: https://godbolt.org/z/8nPY4WWMe

[527] % clangtk -v
clang version 20.0.0git (https://github.com/llvm/llvm-project.git d84411f686e7755c620c93d77c5f6adba88d28a5)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/software/local/clang-trunk/bin
Build config: +assertions
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Candidate multilib: .;@m64
Selected multilib: .;@m64
[528] % 
[528] % clangtk -O2 -c small.c
clangtk: /local/suz-local/software/clangbuild/llvm-project/llvm/lib/Transforms/Vectorize/VPlan.cpp:260: llvm::Value* llvm::VPTransformState::get(llvm::VPValue*, unsigned int, bool): Assertion `(VF.isScalar() || Def->isLiveIn() || hasVectorValue(Def, Part) || !vputils::onlyFirstLaneUsed(Def) || (hasScalarValue(Def, VPIteration(Part, 0)) && Data.PerPartScalars[Def][Part].size() == 1)) && "Trying to access a single scalar per part but has multiple scalars " "per part."' 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: clangtk -I/usr/local/include -I/local/suz-local/software/local/include -O2 -c small.c
1.	<eof> parser at end of file
2.	Optimizer
3.	Running pass "function<eager-inv>(float2int,lower-constant-intrinsics,loop(loop-rotate<header-duplication;no-prepare-for-lto>,loop-deletion),loop-distribute,inject-tli-mappings,loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only;>,infer-alignment,loop-load-elim,instcombine<max-iterations=1;no-verify-fixpoint>,simplifycfg<bonus-inst-threshold=1;forward-switch-cond;switch-range-to-icmp;switch-to-lookup;no-keep-loops;hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,slp-vectorizer,vector-combine,instcombine<max-iterations=1;no-verify-fixpoint>,loop-unroll<O2>,transform-warning,sroa<preserve-cfg>,infer-alignment,instcombine<max-iterations=1;no-verify-fixpoint>,loop-mssa(licm<allowspeculation>),alignment-from-assumptions,loop-sink,instsimplify,div-rem-pairs,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;speculate-unpredictables>)" on module "small.c"
4.	Running pass "loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only;>" on function "main"
 #0 0x0000561008fa6c6f llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x438ac6f)
 #1 0x0000561008fa47bc llvm::sys::CleanupOnSignal(unsigned long) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x43887bc)
 #2 0x0000561008eed878 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x00007f814dc82420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007f814d6b900b raise /build/glibc-LcI20x/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
 #5 0x00007f814d698859 abort /build/glibc-LcI20x/glibc-2.31/stdlib/abort.c:81:7
 #6 0x00007f814d698729 get_sysdep_segment_value /build/glibc-LcI20x/glibc-2.31/intl/loadmsgcat.c:509:8
 #7 0x00007f814d698729 _nl_load_domain /build/glibc-LcI20x/glibc-2.31/intl/loadmsgcat.c:970:34
 #8 0x00007f814d6a9fd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
 #9 0x000056100aa6cb2e llvm::VPTransformState::get(llvm::VPValue*, unsigned int, bool) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5e50b2e)
#10 0x000056100aa9835f llvm::VPBlendRecipe::execute(llvm::VPTransformState&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5e7c35f)
#11 0x000056100aa64167 llvm::VPBasicBlock::executeRecipes(llvm::VPTransformState*, llvm::BasicBlock*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5e48167)
#12 0x000056100aa65a1e llvm::VPBasicBlock::execute(llvm::VPTransformState*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5e49a1e)
#13 0x000056100aa6786f llvm::VPRegionBlock::execute(llvm::VPTransformState*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5e4b86f)
#14 0x000056100aa6cfc6 llvm::VPlan::execute(llvm::VPTransformState*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5e50fc6)
#15 0x000056100a940f80 llvm::LoopVectorizationPlanner::executePlan(llvm::ElementCount, unsigned int, llvm::VPlan&, llvm::InnerLoopVectorizer&, llvm::DominatorTree*, bool, llvm::DenseMap<llvm::SCEV const*, llvm::Value*, llvm::DenseMapInfo<llvm::SCEV const*, void>, llvm::detail::DenseMapPair<llvm::SCEV const*, llvm::Value*>> const*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5d24f80)
#16 0x000056100a959a70 llvm::LoopVectorizePass::processLoop(llvm::Loop*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5d3da70)
#17 0x000056100a95bae1 llvm::LoopVectorizePass::runImpl(llvm::Function&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5d3fae1)
#18 0x000056100a95c153 llvm::LoopVectorizePass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x5d40153)
#19 0x000056100a4caa36 llvm::detail::PassModel<llvm::Function, llvm::LoopVectorizePass, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x58aea36)
#20 0x0000561008936431 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x3d1a431)
#21 0x000056100646bb06 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x184fb06)
#22 0x0000561008934d9d llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x3d18d9d)
#23 0x000056100646a6e6 llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x184e6e6)
#24 0x00005610089347d1 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x3d187d1)
#25 0x000056100925fc83 (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>>&, clang::BackendConsumer*) BackendUtil.cpp:0:0
#26 0x00005610092631dd 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*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x46471dd)
#27 0x000056100993f74c clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4d2374c)
#28 0x000056100b7d588c clang::ParseAST(clang::Sema&, bool, bool) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x6bb988c)
#29 0x000056100993fb68 clang::CodeGenAction::ExecuteAction() (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4d23b68)
#30 0x0000561009c07089 clang::FrontendAction::Execute() (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4feb089)
#31 0x0000561009b835ce clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4f675ce)
#32 0x0000561009cf3946 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x50d7946)
#33 0x0000561006033365 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x1417365)
#34 0x000056100602ae7a ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#35 0x0000561009985acd 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
#36 0x0000561008eedd80 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x42d1d80)
#37 0x00005610099860ef 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
#38 0x0000561009949d64 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4d2dd64)
#39 0x000056100994ae7d clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4d2ee7d)
#40 0x0000561009952f65 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x4d36f65)
#41 0x000056100603013b clang_main(int, char**, llvm::ToolContext const&) (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x141413b)
#42 0x0000561005f1c4fb main (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x13004fb)
#43 0x00007f814d69a083 __libc_start_main /build/glibc-LcI20x/glibc-2.31/csu/../csu/libc-start.c:342:3
#44 0x000056100602a90e _start (/local/suz-local/software/local/clang-trunk/bin/clang-20+0x140e90e)
clangtk: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 20.0.0git (https://github.com/llvm/llvm-project.git d84411f686e7755c620c93d77c5f6adba88d28a5)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/software/local/clang-trunk/bin
Build config: +assertions
clangtk: note: diagnostic msg: 
********************

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

********************
[529] % 
[529] % cat small.c
short a, j;
int c, d, f, k, l, e, g, h, m, n, o, p, q, r;
volatile int i;
extern int s();
short t(int u) { return a ? u / a : 0; }
int main() {
  while (e) {
    int b = 0;
    if (h) {
      for (; r; r++)
        l = a ? o / a : 0;
    af:
      while (s())
        ;
      while (i)
        p = b;
      while (q)
        s();
      for (; p; p++) {
        j = t(m < 1);
        d = c >> j;
        if (k)
          b = 1;
      }
    }
    if (f)
      goto af;
    while (g)
      ;
    while (1)
      if (n)
        break;
  }
  return 0;
}
@github-actions github-actions bot added the clang Clang issues not falling into any other category label Sep 22, 2024
@dyung
Copy link
Collaborator

dyung commented Sep 22, 2024

One of our internal tests also hit this assertion failure with a repro that I reduced to the following:

#define a(b) safe_##b
long c, d;
int i[];
long *e;
int f;
int a(mod_func_uint64_t_u_u)(long g) { return g == 0 ? c : c % g; }
int h() {
  for (; f; f++) {
    *i = safe_mod_func_uint64_t_u_u(*e);
    d = 7;
  }
}

Compiling with optimizations and -mavx2 shows the crash:

$ ~/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang -c -O2 -mavx2 repro.c
repro.c:12:1: warning: non-void function does not return a value [-Wreturn-type]
   12 | }
      | ^
repro.c:3:5: warning: tentative array definition assumed to have one element [-Wtentative-definition-array]
    3 | int i[];
      |     ^
clang: /home/dyung/src/upstream/llvm_clean_git/llvm/lib/Transforms/Vectorize/VPlan.cpp:260: llvm::Value* llvm::VPTransformState::get(llvm::VPValue*, unsigned int, bool): Assertion `(VF.isScalar() || Def->isLiveIn() || hasVectorValue(Def, Part) || !vputils::onlyFirstLaneUsed(Def) || (hasScalarValue(Def, VPIteration(Part, 0)) && Data.PerPartScalars[Def][Part].size() == 1)) && "Trying to access a single scalar per part but has multiple scalars " "per part."' 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/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang -c -O2 -mavx2 repro.c
1.      <eof> parser at end of file
2.      Optimizer
3.      Running pass "function<eager-inv>(float2int,lower-constant-intrinsics,loop(loop-rotate<header-duplication;no-prepare-for-lto>,loop-deletion),loop-distribute,inject-tli-mappings,loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only;>,infer-alignment,loop-load-elim,instcombine<max-iterations=1;no-verify-fixpoint>,simplifycfg<bonus-inst-threshold=1;forward-switch-cond;switch-range-to-icmp;switch-to-lookup;no-keep-loops;hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;sink-common-insts;speculate-blocks;simplify-con
d-branch;no-speculate-unpredictables>,slp-vectorizer,vector-combine,instcombine<max-iterations=1;no-verify-fixpoint>,loop-unroll<O2>,transform-warning,sroa<preserve-cfg>,infer-alignment,instcombine<max-iterations=1;no-verify-fixpoint>,loop-mssa(licm<allowspeculation>),alignment-from-assumptions,loop-sink,instsimplify,div-rem-pairs,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-
blocks;simplify-cond-branch;speculate-unpredictables>)" on module "repro.c"
4.      Running pass "loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only;>" on function "h"
 #0 0x000055cb582c2def llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2335def)
 #1 0x000055cb582c093c llvm::sys::CleanupOnSignal(unsigned long) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x233393c)
 #2 0x000055cb58212ce8 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x00007f00f41e7420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007f00f3cb400b raise /build/glibc-LcI20x/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
 #5 0x00007f00f3c93859 abort /build/glibc-LcI20x/glibc-2.31/stdlib/abort.c:81:7
 #6 0x00007f00f3c93729 get_sysdep_segment_value /build/glibc-LcI20x/glibc-2.31/intl/loadmsgcat.c:509:8
 #7 0x00007f00f3c93729 _nl_load_domain /build/glibc-LcI20x/glibc-2.31/intl/loadmsgcat.c:970:34
 #8 0x00007f00f3ca4fd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
 #9 0x000055cb59e3a5ce llvm::VPTransformState::get(llvm::VPValue*, unsigned int, bool) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3ead5ce)
#10 0x000055cb59e65dff llvm::VPBlendRecipe::execute(llvm::VPTransformState&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3ed8dff)
#11 0x000055cb59e31c07 llvm::VPBasicBlock::executeRecipes(llvm::VPTransformState*, llvm::BasicBlock*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3ea4c07)
#12 0x000055cb59e334be llvm::VPBasicBlock::execute(llvm::VPTransformState*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3ea64be)
#13 0x000055cb59e3530f llvm::VPRegionBlock::execute(llvm::VPTransformState*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3ea830f)
#14 0x000055cb59e3aa66 llvm::VPlan::execute(llvm::VPTransformState*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3eada66)
#15 0x000055cb59d16980 llvm::LoopVectorizationPlanner::executePlan(llvm::ElementCount, unsigned int, llvm::VPlan&, llvm::InnerLoopVectorizer&, llvm::DominatorTree*, bool, llvm::DenseMap<llvm::SCEV const*, llvm::Value*, llvm::DenseMapInfo<llvm::SCEV const*, void>, llvm::detail::DenseMapPair<llvm::SCEV const*, llvm::Value*>> const*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3d89980)
#16 0x000055cb59d2f470 llvm::LoopVectorizePass::processLoop(llvm::Loop*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3da2470)
#17 0x000055cb59d314e1 llvm::LoopVectorizePass::runImpl(llvm::Function&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3da44e1)
#18 0x000055cb59d31b53 llvm::LoopVectorizePass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3da4b53)
#19 0x000055cb59759fa6 llvm::detail::PassModel<llvm::Function, llvm::LoopVectorizePass, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x37ccfa6)
#20 0x000055cb57d7e6d1 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x1df16d1)
#21 0x000055cb56ea7d26 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0xf1ad26)
#22 0x000055cb57d7d03d llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x1df003d)
#23 0x000055cb56ea86e6 llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0xf1b6e6)
#24 0x000055cb57d7ca71 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x1defa71)
#25 0x000055cb58558f73 (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>>&, clang::BackendConsumer*) BackendUtil.cpp:0:0
#26 0x000055cb5855c4cd 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/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x25cf4cd)
#27 0x000055cb58c3a64c clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2cad64c)
#28 0x000055cb5aba792c clang::ParseAST(clang::Sema&, bool, bool) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x4c1a92c)
#29 0x000055cb58c3aa68 clang::CodeGenAction::ExecuteAction() (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2cada68)
#30 0x000055cb58f02939 clang::FrontendAction::Execute() (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2f75939)
#31 0x000055cb58e7ee4e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2ef1e4e)
#32 0x000055cb58fef236 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x3062236)
#33 0x000055cb56e2c175 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0xe9f175)
#34 0x000055cb56e23efa ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#35 0x000055cb58c80b2d 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
#36 0x000055cb582131f0 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x22861f0)
#37 0x000055cb58c8114f 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
#38 0x000055cb58c44c64 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2cb7c64)
#39 0x000055cb58c45d7d clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2cb8d7d)
#40 0x000055cb58c4de95 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0x2cc0e95)
#41 0x000055cb56e2910b clang_main(int, char**, llvm::ToolContext const&) (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0xe9c10b)
#42 0x000055cb56d5906b main (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0xdcc06b)
#43 0x00007f00f3c95083 __libc_start_main /build/glibc-LcI20x/glibc-2.31/csu/../csu/libc-start.c:342:3
#44 0x000055cb56e2398e _start (/home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin/clang+0xe9698e)
clang: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 20.0.0 (https://github.com/llvm/llvm-project.git 8ec406757cb92f352888a3d4092397f2b5a7d1d9)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/dyung/src/upstream/8ec406757cb92f352888a3d4092397f2b5a7d1d9-linux/bin
Build config: +assertions

I bisected this back to commit 8ec4067.

@fhahn fhahn closed this as completed in 53266f7 Sep 22, 2024
@EugeneZelenko EugeneZelenko added vectorizers crash Prefer [crash-on-valid] or [crash-on-invalid] and removed clang Clang issues not falling into any other category labels Sep 22, 2024
@fhahn
Copy link
Contributor

fhahn commented Sep 23, 2024

Thanks for the reports, should be fixed now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crash Prefer [crash-on-valid] or [crash-on-invalid] vectorizers
Projects
None yet
Development

No branches or pull requests

4 participants