[LLVMbugs] [Bug 21671] New: backend crash with large structure variables
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Nov 25 13:25:46 PST 2014
http://llvm.org/bugs/show_bug.cgi?id=21671
Bug ID: 21671
Summary: backend crash with large structure variables
Product: clang
Version: 3.5
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
Assignee: unassignedclangbugs at nondot.org
Reporter: Dale.Martin at mathworks.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 13395
--> http://llvm.org/bugs/attachment.cgi?id=13395&action=edit
An example that crashes when process with llc
The X86 backend crashes when compiling the attached example that has load/store
of large structures "alloca"ed on the stack. It looks like a merge_values
instruction with more than 16k children gets generated, despite the fact that
the number is stored in an unsigned short.
Note that if you slight reduce the number of nested fields, the example will
generate code it takes many minutes and generates thousands of discrete movb
instructions.
The workaround is to directly call memcpy instead of using load/store but this
seems like it is intended to work as is and that an optimization should be
responsible for generating the memcpy and that it should not have to come from
a front-end directly.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20141125/05e96f46/attachment.html>
More information about the llvm-bugs
mailing list