https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114881
Bug ID: 114881
Summary: Very slow compilation on SPARC
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: ian at airs dot com
Target Milestone: ---
Created attachment 58059
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58059&action=edit
Test case
This is repeat of PR 53125, which was closed in 2012.
The attached test case is a conversion to C of a machine generated test case in
Go (the machine generated Go source is in
gcc/testsuite/go.test/test/cmplxdivide1.go).
When I compile this test case without optimization on an x86_64 GNU/Linux
system, it takes 9.7 seconds. With -O2 it takes 4.9 seconds.
When I compile this test case without optimization on a SPARC Solaris 2.11
system, it takes 3 minutes 30 seconds. With -O2 it takes 2 minutes 30 seconds.
The SPARC machine is slower than the x86_64 machine. But it's not that much
slower. The time difference is extreme.
In -ftime-report on the SPARC system, most of the time is:
integrated RA : 33.43 ( 16%) 0.05 ( 4%) 33.56 ( 16%)
12M ( 14%)
LRA hard reg assignment : 144.62 ( 70%) 0.35 ( 30%) 145.52 ( 70%)
0 ( 0%)