Bug 145377 - [ARM] Build SVGPathElement.cpp with -O2 due to a GCC bug
Summary: [ARM] Build SVGPathElement.cpp with -O2 due to a GCC bug
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Csaba Osztrogonác
Depends on:
Blocks: 108645
  Show dependency treegraph
Reported: 2015-05-26 03:41 PDT by Csaba Osztrogonác
Modified: 2017-05-10 01:20 PDT (History)
4 users (show)

See Also:

Patch (1.42 KB, patch)
2015-05-26 04:14 PDT, Csaba Osztrogonác
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Csaba Osztrogonác 2015-05-26 03:41:39 PDT
log from GTK ARM buildbot:

In file included from ../../Source/WebCore/svg/SVGPathElement.cpp:22:0:
../../Source/WebCore/svg/SVGPathElement.h: In member function ‘virtual WebCore::FloatRect WebCore::SVGPathElement::_ZTv0_n24_N7WebCore14SVGPathElement7getBBoxENS_12SVGLocatable19StyleUpdateStrategyE(WebCore::SVGLocatable::StyleUpdateStrategy)’:
../../Source/WebCore/svg/SVGPathElement.h:94:23: internal compiler error: in expand_expr_addr_expr_1, at expr.c:7671
     virtual FloatRect getBBox(StyleUpdateStrategy = AllowStyleUpdate) override;
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
Preprocessed source stored into /tmp/cc8TnIRO.out file, please attach this to your bugreport.

It is a known GCC bug - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64896 - 
which is already fixed in GCC trunk and 4.9 branch. 

But unfortunately the bug was fixed after 4.9.2 release, so we need to 
build this source with O2 until bumping to 4.9.3 (not yet released) or 5.1.

Patch is coming soon.
Comment 1 Csaba Osztrogonác 2015-05-26 04:14:37 PDT
Created attachment 253703 [details]

-O2 fixed this issue for me long long time ago - https://bugs.webkit.org/show_bug.cgi?id=140162#c94 , but I haven't tested it now. I tested the cmake version check, it adds the O2 flag for all 4.9 version older than the not yet released 4.9.3. There is only one possible issue ... Linaro has released GCC versions with the 4.9.3 version number which conatain this bug, but their latest 4.9.3 (15.03) release already contains the upstream fix. But I don't think if we can/should check the non official GCC version numbers.
Comment 2 Carlos Garcia Campos 2015-05-26 04:50:11 PDT
Comment on attachment 253703 [details]

Ok, let's try with this. Thanks Ossy!
Comment 3 Csaba Osztrogonác 2015-05-26 04:53:32 PDT
Comment on attachment 253703 [details]

Clearing flags on attachment: 253703

Committed r184857: <http://trac.webkit.org/changeset/184857>
Comment 4 Csaba Osztrogonác 2015-05-26 04:53:39 PDT
All reviewed patches have been landed.  Closing bug.
Comment 5 Silvio Frischknecht 2017-05-10 01:20:24 PDT
This patch does not work for allinone builds, in which case svg/SVGAllInOne.cpp is still compiled with -O3 and fails.