[Bug tree-optimization/55923] New: tree passes pessimize complex load/store operations
amylaar at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jan 9 18:21:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55923
Bug #: 55923
Summary: tree passes pessimize complex load/store operations
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Keywords: missed-optimization
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: amylaar@gcc.gnu.org
Target: epiphany-elf
Created attachment 29130
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29130
preprocessed test case
The Epiphany can do aligned 64 bit loads/stores just fine, and do that
with post-increment / modify too, so one ldrd and one strd instruction
(each 64 bit) with post-increment would be sufficient to do the loads / stores
in the inner loop of the testcase.
But because the tree optimizers think they know best how to handle complex
values, we end up with three address computation instructions, two loads, and
two stores (each 32 bit).
More information about the Gcc-bugs
mailing list