LLVM Bugzilla is read-only and represents the historical archive of all LLVM issues filled before November 26, 2021. Use github to submit LLVM bugs

Bug 32353 - Running pass 'Greedy Register Allocator' on function '@dtrmmBlock'
Summary: Running pass 'Greedy Register Allocator' on function '@dtrmmBlock'
Status: RESOLVED FIXED
Alias: None
Product: libraries
Classification: Unclassified
Component: Backend: AMDGPU (show other bugs)
Version: trunk
Hardware: PC Linux
: P normal
Assignee: Matthias Braun
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2017-03-20 11:57 PDT by Vedran Miletic
Modified: 2017-03-22 07:47 PDT (History)
3 users (show)

See Also:
Fixed By Commit(s):


Attachments
Bugpoint reduced LLVM IR (29.31 KB, text/plain)
2017-03-20 11:57 PDT, Vedran Miletic
Details
clBLAS kernel (26.43 KB, application/simple-filter+xml)
2017-03-20 11:58 PDT, Vedran Miletic
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vedran Miletic 2017-03-20 11:57:01 PDT
Created attachment 18135 [details]
Bugpoint reduced LLVM IR

$ clang --version
clang version 5.0.0 (https://github.com/llvm-mirror/clang.git 22ceb362cdbd367ec680a2960dbc0904d7531868) (https://github.com/llvm-mirror/llvm.git 56d588a7751d9c013d20d8820be103f57cbba191)
Target: x86_64-unknown-linux-gnu
Thread model: posix

$ llc -march=amdgcn -mcpu=fiji bugpoint-reduced-simplified.ll
#0 0x00007f5c1d4bedea llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/usr/local/bin/../lib64/libLLVMSupport.so.5+0xe5dea)
#1 0x00007f5c1d4bcf7e llvm::sys::RunSignalHandlers() (/usr/local/bin/../lib64/libLLVMSupport.so.5+0xe3f7e)
#2 0x00007f5c1d4bd0a2 SignalHandler(int) (/usr/local/bin/../lib64/libLLVMSupport.so.5+0xe40a2)
#3 0x00007f5c1cf535c0 __restore_rt (/lib64/libpthread.so.0+0x115c0)
#4 0x00007f5c1df60663 llvm::SplitEditor::removeBackCopies(llvm::SmallVectorImpl<llvm::VNInfo*>&) (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x2dd663)
#5 0x00007f5c1df62288 llvm::SplitEditor::hoistCopies() (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x2df288)
#6 0x00007f5c1df630f0 llvm::SplitEditor::finish(llvm::SmallVectorImpl<unsigned int>*) (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x2e00f0)
#7 0x00007f5c1defd97f (anonymous namespace)::RAGreedy::selectOrSplitImpl(llvm::LiveInterval&, llvm::SmallVectorImpl<unsigned int>&, llvm::SmallSet<unsigned int, 16u, std::less<unsigned int> >&, unsigned int) (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x27a97f)
#8 0x00007f5c1defe338 (anonymous namespace)::RAGreedy::selectOrSplit(llvm::LiveInterval&, llvm::SmallVectorImpl<unsigned int>&) (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x27b338)
#9 0x00007f5c1deea1e0 llvm::RegAllocBase::allocatePhysRegs() (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x2671e0)
#10 0x00007f5c1def9c11 (anonymous namespace)::RAGreedy::runOnMachineFunction(llvm::MachineFunction&) (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x276c11)
#11 0x00007f5c1de3c961 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/usr/local/bin/../lib64/libLLVMCodeGen.so.5+0x1b9961)
#12 0x00007f5c1db78c02 llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/local/bin/../lib64/libLLVMCore.so.5+0x14cc02)
#13 0x00007f5c1db78c93 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/local/bin/../lib64/libLLVMCore.so.5+0x14cc93)
#14 0x00007f5c1db795d7 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/local/bin/../lib64/libLLVMCore.so.5+0x14d5d7)
#15 0x0000000000418252 (llc+0x418252)
#16 0x000000000040dbb0 (llc+0x40dbb0)
#17 0x00007f5c1c2f2401 __libc_start_main (/lib64/libc.so.6+0x20401)
#18 0x000000000040dd8a (llc+0x40dd8a)
Stack dump:
0.	Program arguments: llc -march=amdgcn -mcpu=fiji bugpoint-reduced-simplified.ll 
1.	Running pass 'Function Pass Manager' on module 'bugpoint-reduced-simplified.ll'.
2.	Running pass 'Greedy Register Allocator' on function '@dtrmmBlock'
Segmentation fault (core dumped)
Comment 1 Vedran Miletic 2017-03-20 11:58:01 PDT
Created attachment 18136 [details]
clBLAS kernel
Comment 2 Vedran Miletic 2017-03-20 11:58:12 PDT
Works in LLVM 4.0.
Comment 3 Quentin Colombet 2017-03-20 12:11:14 PDT
That looks related to Matthias' changes r298024 and r298025.

If I revert those two changes the test case works.
Comment 4 Matthias Braun 2017-03-21 15:09:30 PDT
Thanks for the bugreport. Fixed in r298448.
Comment 5 Vedran Miletic 2017-03-22 07:47:08 PDT
Verified fixed. Thanks!