RESOLVED FIXED 140390
Devirtualize FontData
https://bugs.webkit.org/show_bug.cgi?id=140390
Summary Devirtualize FontData
Antti Koivisto
Reported 2015-01-13 08:22:46 PST
We have font ranges and simple fonts. Those don't need a common base.
Attachments
patch (67.52 KB, patch)
2015-01-13 08:30 PST, Antti Koivisto
no flags
patch (71.66 KB, patch)
2015-01-13 08:53 PST, Antti Koivisto
kling: review+
Antti Koivisto
Comment 1 2015-01-13 08:30:46 PST
Antti Koivisto
Comment 2 2015-01-13 08:53:24 PST
Andreas Kling
Comment 3 2015-01-13 11:51:13 PST
Comment on attachment 244519 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=244519&action=review r=me > Source/WebCore/css/CSSSegmentedFontFace.cpp:126 > + unsigned size = m_fontFaces.size(); > + for (unsigned i = 0; i < size; i++) { Range for? > Source/WebCore/platform/graphics/FontRanges.h:47 > + PassRefPtr<SimpleFontData> fontData() const { return m_fontData; } This should return RefPtr (or Ref.) > Source/WebCore/platform/graphics/FontRanges.h:57 > + static PassRefPtr<SegmentedFontData> create() { return adoptRef(new SegmentedFontData); } This should return Ref.
Antti Koivisto
Comment 4 2015-01-13 11:54:31 PST
> > Source/WebCore/platform/graphics/FontRanges.h:47 > > + PassRefPtr<SimpleFontData> fontData() const { return m_fontData; } > > This should return RefPtr (or Ref.) > > > Source/WebCore/platform/graphics/FontRanges.h:57 > > + static PassRefPtr<SegmentedFontData> create() { return adoptRef(new SegmentedFontData); } > > This should return Ref. This is just the move of a move-edit. The edit part fixed these.
Antti Koivisto
Comment 5 2015-01-13 16:10:06 PST
Chris Dumez
Comment 6 2015-01-13 16:11:52 PST
May have broken the build: /Volumes/Data/EWS/WebKit/Source/WebCore/platform/graphics/mac/FontComplexTextMac.cpp -o /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/FontComplexTextMac.o /Volumes/Data/EWS/WebKit/Source/WebCore/platform/graphics/mac/FontComplexTextMac.cpp:141:47: error: no member named 'isEmpty' in 'WebCore::FontRanges' for (unsigned i = 0; !fallbackRangesAt(i).isEmpty(); ++i) { ~~~~~~~~~~~~~~~~~~~ ^ 1 error generated.
Chris Dumez
Comment 7 2015-01-13 16:19:23 PST
(In reply to comment #6) > May have broken the build: > /Volumes/Data/EWS/WebKit/Source/WebCore/platform/graphics/mac/ > FontComplexTextMac.cpp -o > /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/ > Objects-normal/x86_64/FontComplexTextMac.o > /Volumes/Data/EWS/WebKit/Source/WebCore/platform/graphics/mac/ > FontComplexTextMac.cpp:141:47: error: no member named 'isEmpty' in > 'WebCore::FontRanges' > for (unsigned i = 0; !fallbackRangesAt(i).isEmpty(); ++i) { > ~~~~~~~~~~~~~~~~~~~ ^ > 1 error generated. Build fix landed in <http://trac.webkit.org/changeset/178389>.
Chris Dumez
Comment 8 2015-01-13 16:53:13 PST
Seems to have broken IOS build with errors like these: Source/WebKit/ios/Misc/EmojiFallbackFontSelector.h:36:24: error: no member named 'FontData' in namespace 'WebCore'; did you mean 'WebCore::GlyphData::fontData'
Chris Dumez
Comment 9 2015-01-13 17:25:15 PST
Another iOS build fix was landed in <https://trac.webkit.org/r178389>.
Note You need to log in before you can comment on or make changes to this bug.