[LLVMbugs] [Bug 11915] New: [llvm][llc]slatallocator memory full error
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Thu Feb 2 21:32:09 PST 2012
http://llvm.org/bugs/show_bug.cgi?id=11915
Bug #: 11915
Summary: [llvm][llc]slatallocator memory full error
Product: new-bugs
Version: 3.0
Platform: Other
OS/Version: Linux
Status: NEW
Severity: release blocker
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: bogon82.kim at samsung.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 7990
--> http://llvm.org/bugs/attachment.cgi?id=7990
gcc test case which generate slatallocator memory full error
Log:
When passing a huge parameter using the byval mechanism, a long
sequence of loads and stores was being generated to perform the
copy on the arm targets if the parameter was less than 4 byte
aligned, causing llc to use up vast amounts of memory and time
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20101101/111138.html
This problem is similar testcase as above link.
However, the dying point is different like below callstacks
I assume that this comes from invalid NumValues which obtains by ValueVTs
ComputeValueVTs(TLI, Ty, ValueVTs, &Offsets);
unsigned NumValues = ValueVTs.size();
I attached testcase I used.
Please test it.
Call stack
llc.exe!llvm::MallocSlabAllocator::Allocate(unsigned int Size) Line 171
C++
llc.exe!llvm::BumpPtrAllocator::StartNewSlab() Line 53 + 0x1b bytes
C++
llc.exe!llvm::BumpPtrAllocator::Allocate(unsigned int Size, unsigned int
Alignment) Line 125 C++
llc.exe!llvm::Recycler<llvm::SDNode,136,8>::Allocate<llvm::SDNode,llvm::BumpPtrAllocator>(llvm::BumpPtrAllocator
& Allocator) Line 97 + 0x38 bytes C++
llc.exe!llvm::Recycler<llvm::SDNode,136,8>::Allocate<llvm::BumpPtrAllocator>(llvm::BumpPtrAllocator
& Allocator) Line 103 C++
llc.exe!llvm::RecyclingAllocator<llvm::BumpPtrAllocator,llvm::SDNode,136,8>::Allocate()
Line 46 + 0x1d bytes C++
llc.exe!operator new<llvm::BumpPtrAllocator,llvm::SDNode,136,8>(unsigned
int __formal,
llvm::RecyclingAllocator<llvm::BumpPtrAllocator,llvm::SDNode,136,8> &
Allocator) Line 64 C++
> llc.exe!llvm::SelectionDAG::getNode(unsigned int Opcode, llvm::DebugLoc DL, llvm::EVT VT, llvm::SDValue N1, llvm::SDValue N2) Line 3096 + 0xe bytes C++
llc.exe!llvm::SelectionDAGBuilder::visitLoad(const llvm::LoadInst & I)
Line 3227 C++
llc.exe!llvm::SelectionDAGBuilder::visit(unsigned int Opcode, const
llvm::User & I) Line 134 + 0xc bytes C++
llc.exe!llvm::SelectionDAGBuilder::visit(const llvm::Instruction & I)
Line 920 C++
llc.exe!llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::Instruction
const > Begin, llvm::ilist_iterator<llvm::Instruction const > End, bool &
HadTailCall) Line 413 + 0x14 bytes C++
llc.exe!llvm::SelectionDAGISel::SelectAllBasicBlocks(const llvm::Function
& Fn) Line 992 C++
llc.exe!llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction
& mf) Line 294 C++
llc.exe!llvm::MachineFunctionPass::runOnFunction(llvm::Function & F) Line
33 + 0x13 bytes C++
llc.exe!llvm::FPPassManager::runOnFunction(llvm::Function & F) Line 1512
+ 0x17 bytes C++
llc.exe!llvm::FPPassManager::runOnModule(llvm::Module & M) Line 1534 +
0x15 bytes C++
llc.exe!llvm::MPPassManager::runOnModule(llvm::Module & M) Line 1588 +
0x17 bytes C++
llc.exe!llvm::PassManagerImpl::run(llvm::Module & M) Line 1672 + 0x1b
bytes C++
llc.exe!llvm::PassManager::run(llvm::Module & M) Line 1717 C++
llc.exe!main(int argc, char * * argv) Line 375 C++
llc.exe!__tmainCRTStartup() Line 555 + 0x19 bytes C
llc.exe!mainCRTStartup() Line 371 C
kernel32.dll!76deed6c()
[Frames below may be incorrect and/or missing, no symbols loaded for
kernel32.dll]
ntdll.dll!773f37f5()
ntdll.dll!773f37c8()
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list