-
Notifications
You must be signed in to change notification settings - Fork 15.3k
Open
Labels
compiler-rt:rtsanRealtime sanitizerRealtime sanitizer
Description
running opt with rtsan pass enabled crashes on:
declare void @my_very_own_hash() sanitize_realtimeFound while trying to debug rust-lang/rust#149250.
If the function doesn't have the sanitize_realtime attribute or the rtsan pass isn't enabled it doesn't crash.
Backtrace:
Assertion failed: (!NodePtr->isKnownSentinel()), function operator*, file ilist_iterator.h, line 168.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: ../rust/build/host/llvm/bin/opt --passes=rtsan test2-ir.ll -S
1. Running pass "rtsan" on module "test2-ir.ll"
#0 0x00000001049ec104 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/Users/_/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x102894104)
#1 0x00000001049e9e90 llvm::sys::RunSignalHandlers() (/Users/_/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x102891e90)
#2 0x00000001049ecbfc SignalHandler(int, __siginfo*, void*) (/Users/_/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x102894bfc)
#3 0x000000019c4416a4 (/usr/lib/system/libsystem_platform.dylib+0x1804ad6a4)
#4 0x000000019c407848 (/usr/lib/system/libsystem_pthread.dylib+0x180473848)
#5 0x000000019c3109e4 (/usr/lib/system/libsystem_c.dylib+0x18037c9e4)
#6 0x000000019c30fc18 (/usr/lib/system/libsystem_c.dylib+0x18037bc18)
#7 0x00000001056185a0 (anonymous namespace)::AArch64InstructionSelector::setupMF(llvm::MachineFunction&, llvm::GISelValueTracking*, llvm::CodeGenCoverage*, llvm::ProfileSummaryInfo*, llvm::BlockFrequencyInfo*) (.cold.8) (/Users/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x1034c05a0)
#8 0x0000000104624614 llvm::RealtimeSanitizerPass::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/Users/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x1024cc614)
#9 0x0000000104184f04 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/Users/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x10202cf04)
#10 0x0000000104e2420c llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::ArrayRef<std::__1::function<void (llvm::PassBuilder&)>>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool, bool) (/Users//rust/build/aarch64-apple-darwin/llvm/bin/opt+0x102ccc20c)
#11 0x0000000104e2bd88 optMain (/Users/rust/build/aarch64-apple-darwin/llvm/bin/opt+0x102cd3d88)
#12 0x000000019c066b98
zsh: abort ../rust/build/host/llvm/bin/opt --passes=rtsan test2-ir.ll -S
Metadata
Metadata
Assignees
Labels
compiler-rt:rtsanRealtime sanitizerRealtime sanitizer