Open karka228 opened 6 years ago
I've noticed the same error on an AArch64 test:
bin/llc < test/CodeGen/AArch64/postra-mi-sched.ll -O3 -mtriple=aarch64-eabi -mcpu=cortex-a53 -verify-misched
I am also seeing this on a SystemZ test:
Exit Code: 1
PDiff: GR32Bit 1 GRH32Bit 1 DELTA: %4:addr64bit = COPY $r2d CurrMx2 GRH32Bit 1 RegP Delta Mismatch UNREACHABLE executed at llvm/lib/CodeGen/RegisterPressure.cpp:1123!
Extended Description
The alternate algorithm for getMaxUpwardPressureDelta() do not yields the same result.
$ ./llc -verify-misched -O1 -filetype=obj -mtriple x86_64-unknown-linux-gnu -mcpu=x86-64 regpressure.ll PDiff: GR32_BSI -1 GR8_ABCD_L+GR32_BSI -1 GR8_NOREX -1 GR32_TC -1 GR32_BPSP+GR32_TC -1 GR64_NOREX -1 GR64_TCW64 -1 GR32_BPSP+GR64_TCW64 -1 GR8 -1 GR8+GR32_DIBP -1 GR8+GR32_BSI -1 GR64_TC+GR64_TCW64 -1 GR8+LOW32_ADDR_ACCESS_with_sub_32bit -1 GR8+GR64_NOREX -1 GR64_TC -1 GR8+GR64_TCW64 -1 DELTA: $cl = COPY %4.sub_8bit:gr32 CurrMx1 GR16 1 RegP Delta Mismatch UNREACHABLE executed at ../lib/CodeGen/RegisterPressure.cpp:1124! Stack dump:
0 0x000000000212be34 PrintStackTraceSignalHandler(void*) (./llc+0x212be34)
1 0x0000000002129f90 llvm::sys::RunSignalHandlers() (./llc+0x2129f90)
2 0x000000000212c198 SignalHandler(int) (./llc+0x212c198)
3 0x00007f684a74c330 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
4 0x00007f684933bc37 gsignal /build/eglibc-ripdx6/eglibc-2.19/signal/../nptl/sysdeps/unix/sysv/linux/raise.c:56:0
5 0x00007f684933f028 abort /build/eglibc-ripdx6/eglibc-2.19/stdlib/abort.c:91:0
6 0x00000000020dcf7d llvm::llvm_unreachable_internal(char const, char const, unsigned int) (./llc+0x20dcf7d)
7 0x0000000001927256 (./llc+0x1927256)
8 0x000000000189c9f4 llvm::GenericScheduler::initCandidate(llvm::GenericSchedulerBase::SchedCandidate&, llvm::SUnit*, bool, llvm::RegPressureTracker const&, llvm::RegPressureTracker&) (./llc+0x189c9f4)
9 0x000000000189d062 llvm::GenericScheduler::pickNodeFromQueue(llvm::SchedBoundary&, llvm::GenericSchedulerBase::CandPolicy const&, llvm::RegPressureTracker const&, llvm::GenericSchedulerBase::SchedCandidate&) (./llc+0x189d062)
10 0x000000000189dbb1 llvm::GenericScheduler::pickNode(bool&) (./llc+0x189dbb1)
11 0x00000000018962f2 llvm::ScheduleDAGMILive::schedule() (./llc+0x18962f2)
12 0x00000000018a67a4 (anonymous namespace)::MachineSchedulerBase::scheduleRegions(llvm::ScheduleDAGInstrs&, bool) (./llc+0x18a67a4)
13 0x00000000018a6eb8 (anonymous namespace)::MachineScheduler::runOnMachineFunction(llvm::MachineFunction&) (./llc+0x18a6eb8)
14 0x00000000018139dd llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (./llc+0x18139dd)
15 0x0000000001b49b0d llvm::FPPassManager::runOnFunction(llvm::Function&) (./llc+0x1b49b0d)
16 0x0000000001b49dc8 llvm::FPPassManager::runOnModule(llvm::Module&) (./llc+0x1b49dc8)
17 0x0000000001b4a22a llvm::legacy::PassManagerImpl::run(llvm::Module&) (./llc+0x1b4a22a)
18 0x00000000007279de compileModule(char**, llvm::LLVMContext&) (./llc+0x7279de)
19 0x00000000007251c0 main (./llc+0x7251c0)
20 0x00007f6849326f45 __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:321:0
21 0x000000000072324a _start (./llc+0x72324a)
Aborted (core dumped)