7c5a806bf67e1818b0272a2ae8d854ae1fd72e82 |
|
20-Jan-2017 |
Herb Derby <herb@google.com> |
Move from SkChunkAlloc to SkArenaAlloc for SkGlyphCache. Change-Id: I221dd1c35898fe2703584f90d14192c8b546af40 Reviewed-on: https://skia-review.googlesource.com/7112 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
/external/skia/src/core/SkGlyphCache.cpp
|
6e9ac12495f3b64b6ea8860bb9f99c43cd33aa08 |
|
11-Nov-2016 |
Ben Wagner <bungeman@google.com> |
Clean up glyph id handling. Extract SkPackedID and its strongly typed subclasses SkPackedGlyphID and SkPackedUnicharID out of SkGlyph. This simplifies the code handling these types, as well as making it clearer that we wouuld eventually like to get away from this scheme. Changes SkScalerContext::getPath to take SkPackedGlyphID. Changes SkScalerContext::generatePath to take SkGlyphID. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4722 Change-Id: I365c0c618b7ae0d348272155fac7761a69faa920 Reviewed-on: https://skia-review.googlesource.com/4722 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com>
/external/skia/src/core/SkGlyphCache.cpp
|
7cfd46aebda7b7d2b88e73621ed0d1be7244c2ca |
|
20-Oct-2016 |
bungeman <bungeman@google.com> |
SkScalerContext to use smart pointers. CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot;master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN-Trybot Change-Id: I27a714388b8ded7dfc968e322b0a587205f575f1 Reviewed-on: https://skia-review.googlesource.com/3731 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
/external/skia/src/core/SkGlyphCache.cpp
|
520ced63cf0750e207223169a31edb2a16e5ca96 |
|
18-Oct-2016 |
bungeman <bungeman@google.com> |
SkDescriptors to be held in unique_ptr. This also removes the class operator new override along with directly calling malloc in SkData, since it has a similar requirements. CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot;master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN-Trybot Change-Id: Ic68aacf2028d6964d9735a55558862afc9edd19b Reviewed-on: https://skia-review.googlesource.com/3541 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
/external/skia/src/core/SkGlyphCache.cpp
|
fa1a45ee1317ce603be78e96cdeb6d5ea1b91b30 |
|
17-Oct-2016 |
Ben Wagner <bungeman@google.com> |
Remove aux procs from SkGlyphCache. Doesn't appear that anyone is using these anymore. The last user was removed with https://codereview.chromium.org/1985163002/ landed as https://skia.googlesource.com/skia/+/c2878e23d405e7ae77f6110602ad75ce1f6b941c Change-Id: I224354cd0d1ecbbb1100aa1e4b415d48637a51f3 Reviewed-on: https://skia-review.googlesource.com/3582 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com>
/external/skia/src/core/SkGlyphCache.cpp
|
5e3a63075397f641536b2e463ad25d87bec6b112 |
|
08-Sep-2016 |
mtklein <mtklein@chromium.org> |
GN: default to -O1 In a GN world we are no longer tied to the Debug/Release dichotomy of GYP, and extra_cflags makes it trivially easy to override any flags we set by default. These two together mean we don't have to make the default Debug build pointlessly unoptimized. -O1 takes negligibly longer to compile than -O0, doesn't make debugging difficult, and the code is considerably better. DM runs ~4x faster this way. Backstory: I just re-noticed we do this for our Debug MSAN builds, which has had a serious wall-time slimming effect. I was about to restore it to my GN MSAN builds when I realized, hey, maybe we should do this for all builds. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2322753002 Review-Url: https://codereview.chromium.org/2322753002
/external/skia/src/core/SkGlyphCache.cpp
|
1ae57b37bd718418f564e13675b5cfebe499f7db |
|
17-Aug-2016 |
herb <herb@google.com> |
Eagerly update the unichar to glyphID mapping. In addition, some small cleanups. BUG=chromium:635005 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2249063005 Review-Url: https://codereview.chromium.org/2249063005
/external/skia/src/core/SkGlyphCache.cpp
|
632d004677de66a985d05c25a25e25272c740ede |
|
22-Jun-2016 |
herb <herb@google.com> |
Add guards around access to font cache global fields. BUG=589439 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2082423002 Review-Url: https://codereview.chromium.org/2082423002
/external/skia/src/core/SkGlyphCache.cpp
|
f10637f2795b147751ef413237389d230b869360 |
|
10-Jun-2016 |
mtklein <mtklein@chromium.org> |
Type-erase SkAutoMutexAcquire and SkAutoExclusive. This is purely for convenience, to not need to write the lock type in the guard anymore. This should all inline away. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2055023003 Review-Url: https://codereview.chromium.org/2055023003
/external/skia/src/core/SkGlyphCache.cpp
|
de3c3568ee5137fa8752491362893ae1d701d709 |
|
19-May-2016 |
bungeman <bungeman@google.com> |
Assert complex precondition in SkGlyphCache::Visit. SkGlyphCache::Visit takes a descriptor and a typeface, but it is implied that the fFontID in the descriptor is the id of the typeface. This seems to be handled correctly by current callers but this is a subtle requirement which if violated could lead to subtle bugs. Review-Url: https://codereview.chromium.org/1992053002
/external/skia/src/core/SkGlyphCache.cpp
|
c5d07faced11ab20218aef04cbc3388d7a85eb28 |
|
17-May-2016 |
bsalomon <bsalomon@google.com> |
Rename SkDescriptor::equals to SkDescriptor::operator== BUG=chromium:608566 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986253002 Review-Url: https://codereview.chromium.org/1986253002
/external/skia/src/core/SkGlyphCache.cpp
|
ffa4a9213b4e754adc210fa02a3c4b1ae8d3b6d0 |
|
06-May-2016 |
mtklein <mtklein@chromium.org> |
SkOncePtr -> SkOnce It's always nice to kill off a synchronization primitive. And while less terse, I think this new code reads more clearly. ... and, SkOncePtr's tests were the only thing now using sk_num_cores() outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02 Review-Url: https://codereview.chromium.org/1953533002
/external/skia/src/core/SkGlyphCache.cpp
|
959a2937d55279c6d020f2511007bb39ed322ace |
|
05-May-2016 |
reed <reed@google.com> |
Revert of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1949313003/ ) Reason for revert: ok, I have no idea what's going on Original issue's description: > Reland of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1945293004/ ) > > Reason for revert: > previous revert unneeded (I think) > > Original issue's description: > > Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ ) > > > > Reason for revert: > > broken the Mac and Linux builders, e.g.: > > > > https://build.chromium.org/p/chromium/builders/Mac/builds/15151 > > https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052 > > > > Original issue's description: > > > SkOncePtr -> SkOnce > > > > > > It's always nice to kill off a synchronization primitive. > > > And while less terse, I think this new code reads more clearly. > > > > > > ... and, SkOncePtr's tests were the only thing now using sk_num_cores() > > > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp. > > > > > > BUG=skia: > > > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002 > > > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot > > > > > > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02 > > > > TBR=herb@google.com,mtklein@chromium.org > > # Skipping CQ checks because original CL landed less than 1 days ago. > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=skia: > > > > Committed: https://skia.googlesource.com/skia/+/7eb33da7eede34c050b865dbb1b60c3dcea7191b > > TBR=herb@google.com,mtklein@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/82da9a8aa0ce648f36882830765b42e0ada6c0fa TBR=herb@google.com,mtklein@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/1948313002
/external/skia/src/core/SkGlyphCache.cpp
|
82da9a8aa0ce648f36882830765b42e0ada6c0fa |
|
05-May-2016 |
reed <reed@google.com> |
Reland of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1945293004/ ) Reason for revert: previous revert unneeded (I think) Original issue's description: > Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ ) > > Reason for revert: > broken the Mac and Linux builders, e.g.: > > https://build.chromium.org/p/chromium/builders/Mac/builds/15151 > https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052 > > Original issue's description: > > SkOncePtr -> SkOnce > > > > It's always nice to kill off a synchronization primitive. > > And while less terse, I think this new code reads more clearly. > > > > ... and, SkOncePtr's tests were the only thing now using sk_num_cores() > > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp. > > > > BUG=skia: > > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002 > > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot > > > > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02 > > TBR=herb@google.com,mtklein@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/7eb33da7eede34c050b865dbb1b60c3dcea7191b TBR=herb@google.com,mtklein@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/1949313003
/external/skia/src/core/SkGlyphCache.cpp
|
7eb33da7eede34c050b865dbb1b60c3dcea7191b |
|
05-May-2016 |
reed <reed@google.com> |
Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ ) Reason for revert: broken the Mac and Linux builders, e.g.: https://build.chromium.org/p/chromium/builders/Mac/builds/15151 https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052 Original issue's description: > SkOncePtr -> SkOnce > > It's always nice to kill off a synchronization primitive. > And while less terse, I think this new code reads more clearly. > > ... and, SkOncePtr's tests were the only thing now using sk_num_cores() > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002 > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot > > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02 TBR=herb@google.com,mtklein@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/1945293004
/external/skia/src/core/SkGlyphCache.cpp
|
9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02 |
|
04-May-2016 |
mtklein <mtklein@chromium.org> |
SkOncePtr -> SkOnce It's always nice to kill off a synchronization primitive. And while less terse, I think this new code reads more clearly. ... and, SkOncePtr's tests were the only thing now using sk_num_cores() outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/1953533002
/external/skia/src/core/SkGlyphCache.cpp
|
a9322c2d86aaef1085c267dfc43cf0747f170a86 |
|
12-Apr-2016 |
reed <reed@google.com> |
Revert "Revert of Pass effects directly to fontcache (patchset #8 id:140001 of https://codereview.chromium.org/1863013003/ )" add SK_SUPPORT_NEW_ONCREATESCALERCONTEXT for chrome this has now landed https://codereview.chromium.org/1878913002/ TBR= BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1880873002 Review URL: https://codereview.chromium.org/1880873002
/external/skia/src/core/SkGlyphCache.cpp
|
25e0a0416e5b37c1e0bef1934dc67ff62e442916 |
|
11-Apr-2016 |
borenet <borenet@google.com> |
Revert of Pass effects directly to fontcache (patchset #8 id:140001 of https://codereview.chromium.org/1863013003/ ) Reason for revert: Seems to have broken the DEPS roll. Original issue's description: > Pass effects directly to fontcache > > BUG=skia:5176 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003 > > Committed: https://skia.googlesource.com/skia/+/c79172857c3f69cc46837e1beeae0c1ead377bb2 TBR=djsollen@google.com,bungeman@google.com,mtklein@google.com,fmalita@chromium.org,msarett@google.com,reed@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:5176 Review URL: https://codereview.chromium.org/1872253004
/external/skia/src/core/SkGlyphCache.cpp
|
c79172857c3f69cc46837e1beeae0c1ead377bb2 |
|
11-Apr-2016 |
reed <reed@google.com> |
Pass effects directly to fontcache BUG=skia:5176 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003 Review URL: https://codereview.chromium.org/1863013003
/external/skia/src/core/SkGlyphCache.cpp
|
9d524f22bfde5dc3dc8f48e1be39bdebd3bb0304 |
|
29-Mar-2016 |
halcanary <halcanary@google.com> |
Style bikeshed - remove extraneous whitespace GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842753002 Review URL: https://codereview.chromium.org/1842753002
/external/skia/src/core/SkGlyphCache.cpp
|
0449bcfb2fa1dd33cb3a4c0c8b17960d17edf01a |
|
09-Feb-2016 |
caryclark <caryclark@google.com> |
add helper to create fancy underlines Add a couple of utility functions to SkPaint that return the bounds of glyphs between a pair of lines. The common use case envisioned generates the edges of descenders between the top and bottom bounds of an underline to allow computing a stroke that skips those descenders. The implementation stores a linked list in each glyph containing the bounds of the lines parallel to the advance and the outermost intersections within those bounds. When the glyph cache is constructed, the glyph path is intersected with the bounds and the extreme min and max values within the bounds is added to an intercept. Share the text to path iter to construct the data. Make a half-hearted attempt to support vertical text; while the vertical implementation is complete; surrounding code (e.g. paint align) has short-comings with vertical. R=fmalita@chromium.org, reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1654883003 Review URL: https://codereview.chromium.org/1654883003
/external/skia/src/core/SkGlyphCache.cpp
|
043a75e234864161013863c0bf92002a165bb31b |
|
23-Oct-2015 |
herb <herb@google.com> |
Use SkAutoTExclusive in SkGlyphCache. This replaces the local AutoAcquire class. Review URL: https://codereview.chromium.org/1424563002
/external/skia/src/core/SkGlyphCache.cpp
|
93775bd279e7db34f074ce9820531663fa708696 |
|
23-Oct-2015 |
ssid <ssid@chromium.org> |
[tracing] Remove counter logic and just use address on glyph cache dumps This CL removes the logic of counting the index of glyphs and uses the address of the glyph object for dump name. This makes the dump names consistent across multiple dumps. BUG=543479 Review URL: https://codereview.chromium.org/1425443002
/external/skia/src/core/SkGlyphCache.cpp
|
8d57faf31819e714de797ba43194f199d7616c39 |
|
06-Oct-2015 |
mtklein <mtklein@google.com> |
Revert of Stop using SkScalerContext::getAdvance() in SkGlyphCache. (patchset #2 id:20001 of https://codereview.chromium.org/1321243004/ ) Reason for revert: Suspect this is the cause of regressions in crbug.com/527445. It's triggering on Windows and Linux, where getting advances does less than getting full metrics. It's not triggering on Mac, where this CL was a no-op. Original issue's description: > Stop using SkScalerContext::getAdvance() in SkGlyphCache. > > We think it'll simplify things to just always get the full metrics. > On most platforms, it's no different, and we think the platforms that > do differ (FreeType) will be nearly just as cheap. > > Removing this distinction helps us make SkGlyphCaches concurrent by > removing a state (we-have-only-advances) from its logical state machine. > > We see no significant changes running SKPs before and after this CL. > That makes sense, of course, because the SKPs bake some of this into drawPosText. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/518a2923f11b819fa44ed5cff54155326959540f TBR=reed@google.com,bungeman@google.com,herb@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1383403003
/external/skia/src/core/SkGlyphCache.cpp
|
60df542afc3b792c6d563db2dfe233f65a2c3632 |
|
01-Oct-2015 |
ssid <ssid@chromium.org> |
Strip font name of special characters before dumping The font name can contain special characters in some OS that is considered as delimiters ('/') by the traces. This causes error in the dump name. This CL strips the fone name obtained before adding it to traces. This also adds discardable memory size for resources in cache. BUG=532838 Review URL: https://codereview.chromium.org/1346993006
/external/skia/src/core/SkGlyphCache.cpp
|
f0c986503b982cfbd4d859573c11bc2a154b42f5 |
|
30-Sep-2015 |
ssid <ssid@chromium.org> |
Add support for light dumps in SkTraceMemoryDump interface. SkGlyphCache dumps too many glyphs, and to reduce the trace size, RequestDetails enum is added to SkTraceMemoryDump interface. This would tell caches to dump only requested details or not a detailed dump. BUG=499731 Review URL: https://codereview.chromium.org/1310123007
/external/skia/src/core/SkGlyphCache.cpp
|
cd7f03597475ea423aa819bdae03996b26874dd5 |
|
16-Sep-2015 |
herb <herb@google.com> |
Revert of Parallel cache - preliminary (patchset #24 id:460001 of https://codereview.chromium.org/1264103003/ ) Reason for revert: Breaks DrMemory in the chrome roll. Original issue's description: > Parallel cache. > > TBR=reed@google.com > > BUG=skia:1330,528560 > > Committed: https://skia.googlesource.com/skia/+/6f2a486040cb25465990196c229feb47e668e87f > > Committed: https://skia.googlesource.com/skia/+/bf2988833e5a36c6b430da6fdd2cfebd0015adec > > Committed: https://skia.googlesource.com/skia/+/014ffdb01ea5317614a1569efc30c50f06434222 TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:1330,528560 Review URL: https://codereview.chromium.org/1345903002
/external/skia/src/core/SkGlyphCache.cpp
|
014ffdb01ea5317614a1569efc30c50f06434222 |
|
15-Sep-2015 |
herb <herb@google.com> |
Parallel cache. TBR=reed@google.com BUG=skia:1330,528560 Committed: https://skia.googlesource.com/skia/+/6f2a486040cb25465990196c229feb47e668e87f Committed: https://skia.googlesource.com/skia/+/bf2988833e5a36c6b430da6fdd2cfebd0015adec Review URL: https://codereview.chromium.org/1264103003
/external/skia/src/core/SkGlyphCache.cpp
|
951d8543271ff541a45576bea207b33748802d2e |
|
11-Sep-2015 |
jyasskin <jyasskin@chromium.org> |
Revert of Parallel cache - preliminary (patchset #23 id:440001 of https://codereview.chromium.org/1264103003/ ) Also reverts https://codereview.chromium.org/1333003002/ which was layered on top. Reason for revert: Appears to leak GDI handles: http://build.chromium.org/p/chromium.memory.fyi/builders/Windows%20Unit%20%28DrMemory%20full%29%20%282%29/builds/8247 ~~Dr.M~~ Error #1: HANDLE LEAK: GDI handle 0x03050a84 and 3 similar handle(s) were opened but not closed: ~~Dr.M~~ # 0 system call NtGdiCreateDIBSection ~~Dr.M~~ # 1 GDI32.dll!CreateDIBSection +0xdc (0x768ead23 <GDI32.dll+0x1ad23>) ~~Dr.M~~ # 2 skia.dll!HDCOffscreen::draw [third_party\skia\src\ports\skfonthost_win.cpp:499] ~~Dr.M~~ # 3 skia.dll!SkScalerContext_GDI::generateImage [third_party\skia\src\ports\skfonthost_win.cpp:1233] ~~Dr.M~~ # 4 skia.dll!SkScalerContext::getImage [third_party\skia\src\core\skscalercontext.cpp:530] ~~Dr.M~~ # 5 skia.dll!SkGlyphCache::OnceFillInImage [third_party\skia\src\core\skglyphcache.cpp:252] ~~Dr.M~~ # 6 skia.dll!sk_once_slow<> [third_party\skia\include\core\skonce.h:76] ~~Dr.M~~ # 7 skia.dll!SkGlyphCache::findImage [third_party\skia\src\core\skglyphcache.cpp:260] ~~Dr.M~~ # 8 skia.dll!D1G_RectClip [third_party\skia\src\core\skdraw.cpp:1479] ~~Dr.M~~ # 9 skia.dll!SkDraw::drawPosText [third_party\skia\src\core\skdraw.cpp:1838] ~~Dr.M~~ #10 skia.dll!SkBitmapDevice::drawPosText [third_party\skia\src\core\skbitmapdevice.cpp:348] ~~Dr.M~~ #11 skia.dll!SkCanvas::onDrawPosText [third_party\skia\src\core\skcanvas.cpp:2433] ~~Dr.M~~ #12 skia.dll!SkCanvas::drawPosText [third_party\skia\src\core\skcanvas.cpp:2507] ~~Dr.M~~ #13 skia.dll!SkRecords::Draw::draw<> [third_party\skia\src\core\skrecorddraw.cpp:109] ~~Dr.M~~ #14 skia.dll!SkRecord::Record::visit<> [third_party\skia\src\core\skrecord.h:170] ~~Dr.M~~ #15 skia.dll!SkRecordDraw [third_party\skia\src\core\skrecorddraw.cpp:55] ~~Dr.M~~ #16 skia.dll!SkBigPicture::playback [third_party\skia\src\core\skbigpicture.cpp:43] ~~Dr.M~~ #17 skia.dll!SkCanvas::onDrawPicture [third_party\skia\src\core\skcanvas.cpp:2800] ~~Dr.M~~ #18 skia.dll!SkCanvas::drawPicture [third_party\skia\src\core\skcanvas.cpp:2770] ~~Dr.M~~ #19 cc.dll!cc::DrawingDisplayItem::Raster [cc\playback\drawing_display_item.cc:51] ~~Dr.M~~ #20 cc.dll!cc::DisplayItemList::Raster [cc\playback\display_item_list.cc:107] ~~Dr.M~~ #21 cc.dll!cc::DisplayListRasterSource::RasterCommon [cc\playback\display_list_raster_source.cc:122] ~~Dr.M~~ #22 cc.dll!cc::DisplayListRasterSource::PlaybackToCanvas [cc\playback\display_list_raster_source.cc:100] ~~Dr.M~~ #23 cc.dll!cc::TileTaskWorkerPool::PlaybackToMemory [cc\raster\tile_task_worker_pool.cc:208] ~~Dr.M~~ #24 cc.dll!cc::OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread [cc\raster\one_copy_tile_task_worker_pool.cc:413] ~~Dr.M~~ #25 cc.dll!cc::`anonymous namespace'::RasterBufferImpl::Playback [cc\raster\one_copy_tile_task_worker_pool.cc:53] ~~Dr.M~~ #26 cc.dll!cc::`anonymous namespace'::RasterTaskImpl::Raster [cc\tiles\tile_manager.cc:131] ~~Dr.M~~ #27 cc.dll!cc::`anonymous namespace'::RasterTaskImpl::RunOnWorkerThread [cc\tiles\tile_manager.cc:90] ~~Dr.M~~ #28 cc.dll!cc::TaskGraphRunner::RunTaskWithLockAcquired [cc\raster\task_graph_runner.cc:418] ~~Dr.M~~ #29 cc.dll!cc::TaskGraphRunner::Run [cc\raster\task_graph_runner.cc:361] ~~Dr.M~~ #30 base.dll!base::SimpleThread::ThreadMain [base\threading\simple_thread.cc:66] ~~Dr.M~~ #31 base.dll!base::`anonymous namespace'::ThreadFunc [base\threading\platform_thread_win.cc:82] ~~Dr.M~~ #32 KERNEL32.dll!BaseThreadInitThunk +0x11 (0x7570337a <KERNEL32.dll+0x1337a>) ~~Dr.M~~ Note: @0:15:51.087 in thread 196 ~~Dr.M~~ Note: handles created with the same callstack are closed here: ~~Dr.M~~ Note: # 0 system call NtGdiDeleteObjectApp ~~Dr.M~~ Note: # 1 GDI32.dll!DeleteObject +0x149 (0x768e57d3 <GDI32.dll+0x157d3>) ~~Dr.M~~ Note: # 2 skia.dll!HDCOffscreen::draw [third_party\skia\src\ports\skfonthost_win.cpp:471] ~~Dr.M~~ Note: # 3 skia.dll!SkScalerContext_GDI::generateImage [third_party\skia\src\ports\skfonthost_win.cpp:1233] ~~Dr.M~~ Note: # 4 skia.dll!SkScalerContext::getImage [third_party\skia\src\core\skscalercontext.cpp:530] ~~Dr.M~~ Note: # 5 skia.dll!SkGlyphCache::OnceFillInImage [third_party\skia\src\core\skglyphcache.cpp:252] ~~Dr.M~~ Note: # 6 skia.dll!sk_once_slow<> [third_party\skia\include\core\skonce.h:76] ~~Dr.M~~ Note: # 7 skia.dll!SkGlyphCache::findImage [third_party\skia\src\core\skglyphcache.cpp:260] ~~Dr.M~~ Note: # 8 skia.dll!D1G_RectClip [third_party\skia\src\core\skdraw.cpp:1479] ~~Dr.M~~ Note: # 9 skia.dll!SkDraw::drawPosText [third_party\skia\src\core\skdraw.cpp:1838] ~~Dr.M~~ Note: #10 skia.dll!SkBitmapDevice::drawPosText [third_party\skia\src\core\skbitmapdevice.cpp:348] ~~Dr.M~~ Note: #11 skia.dll!SkCanvas::onDrawPosText [third_party\skia\src\core\skcanvas.cpp:2433] ~~Dr.M~~ Note: #12 skia.dll!SkCanvas::drawPosText [third_party\skia\src\core\skcanvas.cpp:2507] ~~Dr.M~~ Note: #13 skia.dll!SkRecords::Draw::draw<> [third_party\skia\src\core\skrecorddraw.cpp:109] ~~Dr.M~~ Note: #14 skia.dll!SkRecord::Record::visit<> [third_party\skia\src\core\skrecord.h:170] ~~Dr.M~~ Note: #15 skia.dll!SkRecordDraw [third_party\skia\src\core\skrecorddraw.cpp:55] ~~Dr.M~~ Note: #16 skia.dll!SkBigPicture::playback [third_party\skia\src\core\skbigpicture.cpp:43] ~~Dr.M~~ Note: #17 skia.dll!SkCanvas::onDrawPicture [third_party\skia\src\core\skcanvas.cpp:2800] ~~Dr.M~~ Note: #18 skia.dll!SkCanvas::drawPicture [third_party\skia\src\core\skcanvas.cpp:2770] ~~Dr.M~~ Note: #19 cc.dll!cc::DrawingDisplayItem::Raster [cc\playback\drawing_display_item.cc:51] ~~Dr.M~~ Note: #20 cc.dll!cc::DisplayItemList::Raster [cc\playback\display_item_list.cc:107] ~~Dr.M~~ Note: #21 cc.dll!cc::DisplayListRasterSource::RasterCommon [cc\playback\display_list_raster_source.cc:122] ~~Dr.M~~ Note: #22 cc.dll!cc::DisplayListRasterSource::PlaybackToCanvas [cc\playback\display_list_raster_source.cc:100] ~~Dr.M~~ Note: #23 cc.dll!cc::TileTaskWorkerPool::PlaybackToMemory [cc\raster\tile_task_worker_pool.cc:208] ~~Dr.M~~ Note: #24 cc.dll!cc::OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread [cc\raster\one_copy_tile_task_worker_pool.cc:413] ~~Dr.M~~ Note: #25 cc.dll!cc::`anonymous namespace'::RasterBufferImpl::Playback [cc\raster\one_copy_tile_task_worker_pool.cc:53] ~~Dr.M~~ Note: #26 cc.dll!cc::`anonymous namespace'::RasterTaskImpl::Raster [cc\tiles\tile_manager.cc:131] ~~Dr.M~~ Note: #27 cc.dll!cc::`anonymous namespace'::RasterTaskImpl::RunOnWorkerThread [cc\tiles\tile_manager.cc:90] ~~Dr.M~~ Note: #28 cc.dll!cc::TaskGraphRunner::RunTaskWithLockAcquired [cc\raster\task_graph_runner.cc:418] ~~Dr.M~~ Note: #29 cc.dll!cc::TaskGraphRunner::Run [cc\raster\task_graph_runner.cc:361] ~~Dr.M~~ Note: #30 base.dll!base::SimpleThread::ThreadMain [base\threading\simple_thread.cc:66] ~~Dr.M~~ Note: #31 base.dll!base::`anonymous namespace'::ThreadFunc [base\threading\platform_thread_win.cc:82] ~~Dr.M~~ Note: #32 KERNEL32.dll!BaseThreadInitThunk +0x11 (0x7570337a <KERNEL32.dll+0x1337a>) Original issue's description: > Parallel cache. > > TBR=reed@google.com > > BUG=skia:1330 > > Committed: https://skia.googlesource.com/skia/+/6f2a486040cb25465990196c229feb47e668e87f > > Committed: https://skia.googlesource.com/skia/+/bf2988833e5a36c6b430da6fdd2cfebd0015adec TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org,herb@google.com BUG=skia:1330 [mtklein mucking around] NOTREECHECKS=true Review URL: https://codereview.chromium.org/1339493002
/external/skia/src/core/SkGlyphCache.cpp
|
83e599a7ab49a9ef2e736d3d501b376f7b1993d6 |
|
10-Sep-2015 |
herb <herb@google.com> |
Correct a possible free after use. This shows up in TSAN runs as a use-after-free warning. BUG=skia: Review URL: https://codereview.chromium.org/1333003002
/external/skia/src/core/SkGlyphCache.cpp
|
bf2988833e5a36c6b430da6fdd2cfebd0015adec |
|
09-Sep-2015 |
herb <herb@google.com> |
Parallel cache. TBR=reed@google.com BUG=skia:1330 Committed: https://skia.googlesource.com/skia/+/6f2a486040cb25465990196c229feb47e668e87f Review URL: https://codereview.chromium.org/1264103003
/external/skia/src/core/SkGlyphCache.cpp
|
6c59d80858f453a426df9b07fdf3a8cc01e0b906 |
|
09-Sep-2015 |
mtklein <mtklein@chromium.org> |
Port uses of SkLazyPtr to SkOncePtr. This gives SkOncePtr a non-trivial destructor that uses std::default_delete by default. This is overrideable, as seen in SkColorTable. SK_DECLARE_STATIC_ONCE_PTR still just leaves its pointers hanging at EOP. BUG=skia: No public API changes. TBR=reed@google.com Committed: https://skia.googlesource.com/skia/+/a1254acdb344174e761f5061c820559dab64a74c Review URL: https://codereview.chromium.org/1322933005
/external/skia/src/core/SkGlyphCache.cpp
|
2ac6793efc9b33f6104f9c39810bee5714bdc208 |
|
09-Sep-2015 |
mtklein <mtklein@google.com> |
Revert of Port uses of SkLazyPtr to SkOncePtr. (patchset #7 id:110001 of https://codereview.chromium.org/1322933005/ ) Reason for revert: Breaks Chrome roll. obj/skia/ext/skia_chrome.skia_memory_dump_provider.o does not have -I include/private on its include path, but transitively includes SkMessageBus.h. Original issue's description: > Port uses of SkLazyPtr to SkOncePtr. > > This gives SkOncePtr a non-trivial destructor that uses std::default_delete > by default. This is overrideable, as seen in SkColorTable. > > SK_DECLARE_STATIC_ONCE_PTR still just leaves its pointers hanging at EOP. > > BUG=skia: > > No public API changes. > TBR=reed@google.com > > Committed: https://skia.googlesource.com/skia/+/a1254acdb344174e761f5061c820559dab64a74c TBR=herb@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1334523002
/external/skia/src/core/SkGlyphCache.cpp
|
a1254acdb344174e761f5061c820559dab64a74c |
|
09-Sep-2015 |
mtklein <mtklein@chromium.org> |
Port uses of SkLazyPtr to SkOncePtr. This gives SkOncePtr a non-trivial destructor that uses std::default_delete by default. This is overrideable, as seen in SkColorTable. SK_DECLARE_STATIC_ONCE_PTR still just leaves its pointers hanging at EOP. BUG=skia: No public API changes. TBR=reed@google.com Review URL: https://codereview.chromium.org/1322933005
/external/skia/src/core/SkGlyphCache.cpp
|
ef2df09997f5afa836bbffdab1ff732d0c766a93 |
|
04-Sep-2015 |
herb <herb@google.com> |
Revert of Parallel cache - preliminary (patchset #22 id:420001 of https://codereview.chromium.org/1264103003/ ) Reason for revert: Seems to freeze android devices. Original issue's description: > Parallel cache. > > TBR=reed@google.com > > BUG=skia:1330 > > Committed: https://skia.googlesource.com/skia/+/6f2a486040cb25465990196c229feb47e668e87f TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:1330 Review URL: https://codereview.chromium.org/1327703003
/external/skia/src/core/SkGlyphCache.cpp
|
6f2a486040cb25465990196c229feb47e668e87f |
|
04-Sep-2015 |
herb <herb@google.com> |
Parallel cache. TBR=reed@google.com BUG=skia:1330 Review URL: https://codereview.chromium.org/1264103003
/external/skia/src/core/SkGlyphCache.cpp
|
518a2923f11b819fa44ed5cff54155326959540f |
|
01-Sep-2015 |
mtklein <mtklein@chromium.org> |
Stop using SkScalerContext::getAdvance() in SkGlyphCache. We think it'll simplify things to just always get the full metrics. On most platforms, it's no different, and we think the platforms that do differ (FreeType) will be nearly just as cheap. Removing this distinction helps us make SkGlyphCaches concurrent by removing a state (we-have-only-advances) from its logical state machine. We see no significant changes running SKPs before and after this CL. That makes sense, of course, because the SKPs bake some of this into drawPosText. BUG=skia: Review URL: https://codereview.chromium.org/1321243004
/external/skia/src/core/SkGlyphCache.cpp
|
33c594c9611529ba72474ec52586be65f3e2d76f |
|
27-Aug-2015 |
ssid <ssid@chromium.org> |
[tracing] Add support for skia caches to dump memory stats Dump the memory statistics of resource cache and glyph cache using the SkTraceMemoryDump interface. BUG=chromium:503168 Review URL: https://codereview.chromium.org/1313793004
/external/skia/src/core/SkGlyphCache.cpp
|
96fcdcc219d2a0d3579719b84b28bede76efba64 |
|
27-Aug-2015 |
halcanary <halcanary@google.com> |
Style Change: NULL->nullptr DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
/external/skia/src/core/SkGlyphCache.cpp
|
385fe4d4b62d7d1dd76116dd570df3290a2f487b |
|
26-Aug-2015 |
halcanary <halcanary@google.com> |
Style Change: SkNEW->new; SkDELETE->delete DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
/external/skia/src/core/SkGlyphCache.cpp
|
216b643fc77e754a3fabbb0ed397e7cf55d1954d |
|
19-Aug-2015 |
reed <reed@google.com> |
private iterator to visit all resource cache entries BUG=skia: TBR= Review URL: https://codereview.chromium.org/1271033002
/external/skia/src/core/SkGlyphCache.cpp
|
c71239b9ff7d8c19dc03cb6c9081e7dc4e0947d2 |
|
22-Jul-2015 |
herb <herb@google.com> |
Change the GlyphCache to use a hash table instead of doing its own ad-hoc hashing. This change appears to be performance neutral. BUG=skia: Review URL: https://codereview.chromium.org/1216983003
/external/skia/src/core/SkGlyphCache.cpp
|
3547505278f5f9fe9602ec767c20d461f7a5dab6 |
|
09-Jul-2015 |
herb <herb@google.com> |
Add RAII for other types of locks. Change SkGlyphCache_Globals to use a SkSpinlock instead of SkMutex. This results in significant performance increase for mpd in nanobench. BUG=skia: Review URL: https://codereview.chromium.org/1210143004
/external/skia/src/core/SkGlyphCache.cpp
|
1b24933e52f50773de29332387a12721811f3012 |
|
07-Jul-2015 |
mtklein <mtklein@chromium.org> |
Remove SkThread.h, include SkMutex.h or SkAtomics.h as appropriate. SkThread.h doesn't do anything anymore execept include those two, and thankfully, it doesn't seem to be mentioned outside Skia. No public API changes. TBR=reed@google.com BUG=skia: Committed: https://skia.googlesource.com/skia/+/c50acf2321d7a934c80d754e9cbe936dfb8eb4cc Review URL: https://codereview.chromium.org/1215393002
/external/skia/src/core/SkGlyphCache.cpp
|
02802f64ea0b1fc9223386328a95280b74092c94 |
|
02-Jul-2015 |
jvanverth <jvanverth@google.com> |
Revert of Remove SkThread.h, include SkMutex.h or SkAtomics.h as appropriate. (patchset #4 id:60001 of https://codereview.chromium.org/1215393002/) Reason for revert: Breaking the roll. E.g. on android_chromium_gn_compile_dbg: FAILED: /b/build/goma/gomacc ../../third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ -MMD -MF obj/skia/ext/libskia.SkMemory_new_handler.o.d -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=1 -DENABLE_NOTIFICATIONS -DENABLE_BROWSER_CDMS -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DDONT_EMBED_BUILD_METADATA -DUSE_OPENSSL=1 -DUSE_OPENSSL_CERTS=1 -DNO_TCMALLOC -DDISABLE_NACL -DENABLE_CONFIGURATION_POLICY -DENABLE_SUPERVISED_USERS=1 -DENABLE_AUTOFILL_DIALOG=1 -DUSE_PROPRIETARY_CODECS -DV8_USE_EXTERNAL_STARTUP_DATA -DVIDEO_HOLE=1 -DMOBILE_SAFE_BROWSING -DSAFE_BROWSING_SERVICE -DCHROMIUM_BUILD -D_FILE_OFFSET_BITS=64 -DANDROID -DHAVE_SYS_UIO_H -DCOMPONENT_BUILD -D__GNU_SOURCE=1 -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DSKIA_IMPLEMENTATION=1 -DSK_ARM_HAS_OPTIONAL_NEON -DSK_GAMMA_APPLY_TO_A8 -DSK_GAMMA_EXPONENT=1.4 -DSK_GAMMA_CONTRAST=0.0 -DSK_DEFAULT_FONT_CACHE_LIMIT=1048576 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DSK_BUILD_FOR_ANDROID -DUSE_CHROMIUM_SKIA -DXML_STATIC -I../.. -Igen -I../../third_party/skia/include/private -I../../third_party/skia/src/core -I../../third_party/skia/src/image -I../../third_party/skia/src/opts -I../../third_party/skia/src/pdf -I../../third_party/skia/src/ports -I../../third_party/skia/src/sfnt -I../../third_party/skia/src/utils -I../../third_party/skia/src/lazy -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/zlib -I../../third_party/expat/files/lib -I../../third_party/freetype-android/include -I../../third_party/freetype-android/src/include -I../../third_party/android_tools/ndk/sources/android/cpufeatures -fno-strict-aliasing -march=armv7-a -mfloat-abi=softfp -mtune=generic-armv7-a -mthumb -mthumb-interwork -fno-tree-sra -fno-caller-saves -funwind-tables -fPIC -pipe -ffunction-sections -funwind-tables -fno-short-enums -finline-limit=64 -mfpu=vfpv3-d16 -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++abi/libcxxabi/include -isystem../../third_party/android_tools/ndk/sources/android/support/include -fvisibility=hidden --sysroot=/b/build/slave/android_chromium_gn/build/src/third_party/android_tools/ndk/platforms/android-16/arch-arm -Os -fdata-sections -ffunction-sections -fomit-frame-pointer -g1 -Wno-format -Wendif-labels -Werror -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wno-extra -Wno-ignored-qualifiers -Wno-type-limits -Wno-unused-local-typedefs -fno-threadsafe-statics -fvisibility-inlines-hidden -std=gnu++11 -fno-rtti -fno-exceptions -Wno-deprecated -Wno-narrowing -Wno-literal-suffix -Wno-error=c++0x-compat -Wno-non-virtual-dtor -Wno-sign-promo -c ../../skia/ext/SkMemory_new_handler.cpp -o obj/skia/ext/libskia.SkMemory_new_handler.o ../../skia/ext/SkMemory_new_handler.cpp:12:52: fatal error: third_party/skia/include/core/SkThread.h: No such file or directory #include "third_party/skia/include/core/SkThread.h" Original issue's description: > Remove SkThread.h, include SkMutex.h or SkAtomics.h as appropriate. > > SkThread.h doesn't do anything anymore execept include those two, > and thankfully, it doesn't seem to be mentioned outside Skia. > > No public API changes. > TBR=reed@google.com > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/c50acf2321d7a934c80d754e9cbe936dfb8eb4cc TBR=mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1214603003
/external/skia/src/core/SkGlyphCache.cpp
|
c50acf2321d7a934c80d754e9cbe936dfb8eb4cc |
|
01-Jul-2015 |
mtklein <mtklein@chromium.org> |
Remove SkThread.h, include SkMutex.h or SkAtomics.h as appropriate. SkThread.h doesn't do anything anymore execept include those two, and thankfully, it doesn't seem to be mentioned outside Skia. No public API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1215393002
/external/skia/src/core/SkGlyphCache.cpp
|
c2ff52920b43304e83d7def592dfacc73b54373e |
|
07-Mar-2015 |
herb <herb@google.com> |
Fix bit rot in SkGlyphCache validate code. TESTED CFLAGS=-DSK_DEBUG_GLYPH_CACHE CPPFLAGS=-DSK_DEBUG_GLYPH_CACHE ./gyp_skia ninja -C out/Debug dm out/Debug/dm Review URL: https://codereview.chromium.org/989683002
/external/skia/src/core/SkGlyphCache.cpp
|
c1e97b372e21edf9c7e45cfea0eca7f1a52fe9e5 |
|
05-Mar-2015 |
herb <herb@google.com> |
Fix uninitialized memory bug in the SkGlyphCache. The core of the problem is that the system is asked to lookup the metrics for a character with id == 0. This causes a hit in the fCharToGlyphHash matching the sentinel glyph. This happens because fCharToGlpyhHash is initialized with all zeros, therefore, the fID is zero matching the char with id == 0. The fAdvanceX field of the sentinel glyph is in fact not initialized. The bigger question is now did a zero character get passed to getUnicharMetrics? The breaking code is basically as follows: wchar_t glyph = L'S'; paint.measureText(&glyph, 2); This get mischaracterized as a utf8 string instead of a utf16(?) string. Because of the little endian ordering, this is the character string 'L' '\0'. Since the size of the original string is two bytes (but a single character) the '\0' is treated as its own character and past to getUnicharMetrics. TEST: On windows failed using DrMemory. With this change does not fail. BUG=463204 Review URL: https://codereview.chromium.org/977063002
/external/skia/src/core/SkGlyphCache.cpp
|
e70de9e4f0b7bf73f7cd1a20dbabcb233ffbb7f1 |
|
27-Feb-2015 |
herb <herb@google.com> |
Make the glyph array entries inline. Perf Reports bin/c --match nytimes --config 8888 desk_nytimes.skp_1_mpd 1.41ms -> 1.38ms 0.98x desk_nytimes.skp_1 1.94ms -> 1.87ms 0.97x bin/c --match nytimes --config gpu desk_nytimes.skp_1_mpd 1.63ms -> 1.59ms 0.97x desk_nytimes.skp_1 1.56ms -> 1.5ms 0.97x Here are results from mac instruments: --match nytimes --config gpu --samples 10000 --skps /Users/herb/src/skia/skps Inline: Total Samples Running Time Self Symbol Name 94335 94335.0ms 98.3% 0.0 start 2365 2365.0ms 2.4% 2365.0 SkGlyphCache::getGlyphIDMetrics(unsigned short, int, int) 975 975.0ms 1.0% 975.0 SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType) Clean: Total Samples Running Time Self Symbol Name 96833 96833.0ms 97.3% 0.0 start 3418 3418.0ms 3.4% 3418.0 SkGlyphCache::getGlyphIDMetrics(unsigned short, int, int) 1961 1961.0ms 1.9% 1961.0 SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType) BUG=skia: Committed: https://skia.googlesource.com/skia/+/4c08f16b252a55e438a61f26e5581394ed177da1 Committed: https://skia.googlesource.com/skia/+/b4c29ac173e6f8844327338687248b98bc94132d Review URL: https://codereview.chromium.org/885903002
/external/skia/src/core/SkGlyphCache.cpp
|
b69d0e0ac45e13f667bc11a937dcb547072bc93d |
|
25-Feb-2015 |
herb <herb@google.com> |
BUG=skia: (mtklein from here on) No public API changes. TBR=reed@google.com Committed: https://skia.googlesource.com/skia/+/f8d24e2c0c7b44b7ccf20e40890514db4cde7b15 Review URL: https://codereview.chromium.org/939123002
/external/skia/src/core/SkGlyphCache.cpp
|
e59bbf1cd5dcce66181083821c43a157998bc78b |
|
24-Feb-2015 |
scroggo <scroggo@google.com> |
Revert of Make fID and MixedID calculations private (patchset #5 id:80001 of https://codereview.chromium.org/939123002/) Reason for revert: This actually *does* change the public API - fID is now private, and it was being used on Android. See https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantis-userdebug/1751533/5242b865d3e9bebc650c9b326dfa9d68c8bd1f59562bf32b85301fb984dc8b26/logs/build.log?Signature=Q0el9M4kTu1KQ8u02KX9TH1Pa22y9BkDK1IW%2B9OeJJNfrDEVzLXAz0XQ%2BHHQM8xVjft06jZJva1V8InZmgjcOk6PdZQbQW6XwwsHLKsbpbAE48iTWH3AlJAAoTtj9cifzgeHW8g80IcVxwHXmINRER%2BLPz3eHGisgfTTFUoWYCc%3D&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Expires=1424786471 : In file included from frameworks/base/libs/hwui/tests/../font/Font.cpp:26:0: external/skia/src/core/SkGlyph.h: In member function 'android::uirenderer::CachedGlyphInfo* android::uirenderer::Font::cacheGlyph(const SkPaint*, glyph_t, bool)': external/skia/src/core/SkGlyph.h:157:17: error: 'uint32_t SkGlyph::fID' is private uint32_t fID; ^ frameworks/base/libs/hwui/tests/../font/Font.cpp:482:39: error: within this context newGlyph->mGlyphIndex = skiaGlyph.fID; We need to update Android in order to hide fID. Original issue's description: > BUG=skia: > > (mtklein from here on) > No public API changes. > TBR=reed@google.com > > Committed: https://skia.googlesource.com/skia/+/f8d24e2c0c7b44b7ccf20e40890514db4cde7b15 TBR=mtklein@google.com,herb@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/951353002
/external/skia/src/core/SkGlyphCache.cpp
|
f8d24e2c0c7b44b7ccf20e40890514db4cde7b15 |
|
24-Feb-2015 |
herb <herb@google.com> |
BUG=skia: (mtklein from here on) No public API changes. TBR=reed@google.com Review URL: https://codereview.chromium.org/939123002
/external/skia/src/core/SkGlyphCache.cpp
|
5a2a5e729c081aa8ddfaab3311b7730622689abf |
|
09-Feb-2015 |
mtklein <mtklein@google.com> |
Revert of Make the glyph array entries inline. (patchset #11 id:190001 of https://codereview.chromium.org/885903002/) Reason for revert: Still broken. Original issue's description: > Make the glyph array entries inline. > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/4c08f16b252a55e438a61f26e5581394ed177da1 > > Committed: https://skia.googlesource.com/skia/+/b4c29ac173e6f8844327338687248b98bc94132d TBR=reed@google.com,herb@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/911513003
/external/skia/src/core/SkGlyphCache.cpp
|
b4c29ac173e6f8844327338687248b98bc94132d |
|
09-Feb-2015 |
herb <herb@google.com> |
Make the glyph array entries inline. BUG=skia: Committed: https://skia.googlesource.com/skia/+/4c08f16b252a55e438a61f26e5581394ed177da1 Review URL: https://codereview.chromium.org/885903002
/external/skia/src/core/SkGlyphCache.cpp
|
9bf4e5bbf6ca96042c0e0f5dca9a52a943f25716 |
|
03-Feb-2015 |
bsalomon <bsalomon@google.com> |
Revert of Make the glyph array entries inline. (patchset #10 id:170001 of https://codereview.chromium.org/885903002/) Reason for revert: I suspect this is causing the off-by-one character issues that show up in gold.skia.org as of now. All the errors I've seen are on a Win7 bot. Example: good: https://gold.skia.org/img/images/35396bb0d299b81c0031dc0632a019d4.png bad: https://gold.skia.org/img/images/484e511f9e696d95031cd25aeae59da0.png Original issue's description: > Make the glyph array entries inline. > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/4c08f16b252a55e438a61f26e5581394ed177da1 TBR=mtklein@google.com,reed@google.com,herb@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/897463004
/external/skia/src/core/SkGlyphCache.cpp
|
4c08f16b252a55e438a61f26e5581394ed177da1 |
|
03-Feb-2015 |
herb <herb@google.com> |
Make the glyph array entries inline. BUG=skia: Review URL: https://codereview.chromium.org/885903002
/external/skia/src/core/SkGlyphCache.cpp
|
f8dd0765c04cd029f90cadd040b18a0724d2a2df |
|
28-Jan-2015 |
herb <herb@google.com> |
Make char hash dynamic when needed. BUG=skia: Review URL: https://codereview.chromium.org/880383002
/external/skia/src/core/SkGlyphCache.cpp
|
40dab98de1bdb803035304077f43410d1f86f2d2 |
|
28-Jan-2015 |
reed <reed@google.com> |
Use murmur3 finisher to improve font hash efficiency. Add dump() method to inspect glyphcache strikes. Murmur addition improves hash efficient roughly 50% BUG=skia: Review URL: https://codereview.chromium.org/877113002
/external/skia/src/core/SkGlyphCache.cpp
|
25b76119e949fb064c840003a2e92633c25e8cdf |
|
28-Jan-2015 |
mtklein <mtklein@google.com> |
Revert of patch from issue 885453002 at patchset 20001 (http://crrev.com/885453002#ps20001) (patchset #1 id:1 of https://codereview.chromium.org/881953002/) Reason for revert: ==32435==ERROR: AddressSanitizer: alloc-dealloc-mismatch (operator new [] vs operator delete) on 0x621000d8cd00 Lots of info here: http://build.chromium.org/p/client.skia/builders/Test-Ubuntu13.10-GCE-NoGPU-x86_64-Debug-ASAN/builds/1198/steps/dm/logs/stdio Original issue's description: > patch from issue 885453002 at patchset 20001 (http://crrev.com/885453002#ps20001) > > Make the char cache dynamic in SkGlyphCache > because it is rarely used. > > Landing on behalf of Herb. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/95faa61d63a6f62916f6f7be58c4624da8357e3b TBR=mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/881023003
/external/skia/src/core/SkGlyphCache.cpp
|
95faa61d63a6f62916f6f7be58c4624da8357e3b |
|
28-Jan-2015 |
mtklein <mtklein@chromium.org> |
patch from issue 885453002 at patchset 20001 (http://crrev.com/885453002#ps20001) Make the char cache dynamic in SkGlyphCache because it is rarely used. Landing on behalf of Herb. BUG=skia: Review URL: https://codereview.chromium.org/881953002
/external/skia/src/core/SkGlyphCache.cpp
|
a27b82ddf0fad959371a4ab1fba931826edb2f54 |
|
07-Jan-2015 |
jvanverth <jvanverth@google.com> |
Remove distance field generation and storage from SkGlyphCache. BUG=skia:3103 Review URL: https://codereview.chromium.org/834103004
/external/skia/src/core/SkGlyphCache.cpp
|
148ec59001ca7d7e54aec580a048c6dd2a085991 |
|
13-Oct-2014 |
mtklein <mtklein@chromium.org> |
Require SK_DECLARE_STATIC_LAZY_PTR is used in global scope. Function- or method- local scope isn't threadsafe; the pointer is generally zero-initialized on first use in function scope (i.e. lazily... we have to go deeper), but for globals we can be pretty sure the linker will do that for us. BUG=skia: No public API changes. TBR=reed@google.com Review URL: https://codereview.chromium.org/651723003
/external/skia/src/core/SkGlyphCache.cpp
|
49f085dddff10473b6ebf832a974288300224e60 |
|
05-Sep-2014 |
bsalomon <bsalomon@google.com> |
"NULL !=" = NULL R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/544233002
/external/skia/src/core/SkGlyphCache.cpp
|
8a986721926f77aba3772acb5d1c575072acd05c |
|
18-Aug-2014 |
bungeman <bungeman@google.com> |
Remove unused SkGlyphCache::VisitAllCaches. R=reed@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/472153002
/external/skia/src/core/SkGlyphCache.cpp
|
78358bf624c7e7c09ffccf638c50870808d884d6 |
|
02-Jun-2014 |
mtklein <mtklein@chromium.org> |
Port most uses of SkOnce to SkLazyPtr. BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=15006 Committed: http://code.google.com/p/skia/source/detail?r=15014 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005
/external/skia/src/core/SkGlyphCache.cpp
|
f71e8fd0c5d2da9795d00a5b81b716ae585be14a |
|
31-May-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/) Reason for revert: linux x86-64 release segfault in src/ports/SkFontHost_fontconfig.cpp:107 http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86_64-Release/builds/905/steps/RunTests/logs/stdio Original issue's description: > Port most uses of SkOnce to SkLazyPtr. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=15006 > > Committed: http://code.google.com/p/skia/source/detail?r=15014 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/306063004 git-svn-id: http://skia.googlecode.com/svn/trunk@15015 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
56f7cca144c539ec01f00d6382fded362ff193a3 |
|
31-May-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Port most uses of SkOnce to SkLazyPtr. BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=15006 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005 git-svn-id: http://skia.googlecode.com/svn/trunk@15014 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
f6351a071810b3a848a5002a0c0ba7e1490fd0db |
|
30-May-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/) Reason for revert: Leaking refs on SkTypeface on Macs. Original issue's description: > Port most uses of SkOnce to SkLazyPtr. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=15006 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/304283007 git-svn-id: http://skia.googlecode.com/svn/trunk@15009 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
5a70945ddd036b8079987954123ff8f382c285af |
|
30-May-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Port most uses of SkOnce to SkLazyPtr. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005 git-svn-id: http://skia.googlecode.com/svn/trunk@15006 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
261d0153e2ce1828355221f8dad0855eb6e6e243 |
|
12-May-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Clean up global gSkSuppressFontCachePurgeSpew. No one is using it except to flick it to true to shut up the spew, but the spew is already guarded by #ifdef SPEW_PURGE_STATUS. Let's leave it to SPEW_PURGE_STATUS. Noticed this specificially when TSAN complained about FontScalerBench modifying it in a thread-unsafe way. BUG=skia:1792 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/264333008 git-svn-id: http://skia.googlecode.com/svn/trunk@14697 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
72b7bf859d8c1af3797d0c7e1ab661e6572ad898 |
|
28-Apr-2014 |
bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Add missing include for r14397. git-svn-id: http://skia.googlecode.com/svn/trunk@14398 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
b6ad00b17f1c983707013f7adec54bca72c0917b |
|
28-Apr-2014 |
bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Create SkGlyphCache globals with SkOnce. VC++ will have magic statics with VS2014, but does not currently have them. The thread unsafe implementation was causing the DirectWrite bots to randomly crash when running multi-threaded tests, as gGlobals could be seen as NULL. R=mtklein@google.com Review URL: https://codereview.chromium.org/252713002 git-svn-id: http://skia.googlecode.com/svn/trunk@14397 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
762cd804375ff8478427dba4fe29379562b8fb60 |
|
15-Apr-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Move distance field generation to the glyph cache. Distance fields are currently created in GrTextStrike, which is the wrong place. This moves that to the glyph cache where it belongs. As part of my testing, I found that when we fall back to paths in the GrDistanceFieldTextContext it was not scaling them properly, so that's fixed in here too. R=robertphillips@google.com, reed@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/227593010 git-svn-id: http://skia.googlecode.com/svn/trunk@14193 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
a8c7f7702fb4bbedb615031bc653c5cd161a038e |
|
24-Jan-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
fix (some) 64bit warnings -- size_t -> int BUG=skia: R=mtklein@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/147053003 git-svn-id: http://skia.googlecode.com/svn/trunk@13178 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
d6bab0238655dbab24dfe92bd0b16b464310a8c7 |
|
02-Dec-2013 |
rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Reverting r12427 git-svn-id: http://skia.googlecode.com/svn/trunk@12428 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
5b39f5ba9c339d1e4dae391fee9ec1396feec180 |
|
02-Dec-2013 |
skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Sanitizing source files in Housekeeper-Nightly git-svn-id: http://skia.googlecode.com/svn/trunk@12427 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
49360dfa6144621db9f3ec25995b8e817a0003c0 |
|
27-Nov-2013 |
bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Remove unused fields from SkGlyphCache. Review URL: https://codereview.chromium.org/89423003 git-svn-id: http://skia.googlecode.com/svn/trunk@12407 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
65caeaf32d09f5886f3c740cfef2f1c26ef9cb50 |
|
27-Sep-2013 |
skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Sanitizing source files in Housekeeper-Nightly git-svn-id: http://skia.googlecode.com/svn/trunk@11493 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
baed71fbfeee030184af74eb7e8622e99952bbf8 |
|
26-Sep-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
add counting to Globals, and refactor some for clarity BUG= Review URL: https://codereview.chromium.org/24447003 git-svn-id: http://skia.googlecode.com/svn/trunk@11484 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
dfc740393e3476905af1964a280cd1e7a0940cc2 |
|
24-Sep-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
remove obsolete USE_CACHE_HASH BUG= Review URL: https://codereview.chromium.org/23526082 git-svn-id: http://skia.googlecode.com/svn/trunk@11450 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
84e22d847fc84727bc220947162363ee1fe068fc |
|
10-Jul-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
allow createScalerContext to return null, and then have the GDI backend trigger that if we fail to create the necessary GDI resources BUG= R=bungeman@google.com Review URL: https://codereview.chromium.org/18484005 git-svn-id: http://skia.googlecode.com/svn/trunk@9957 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
4b60dbe661feadc276f911ee6dfc2058e5aea7ca |
|
09-Jul-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
move failable work outside of constructors for SkGlyphCache and SkScalerContextGDI. If we fail, try to purge everything and try again, in case the failure was from memory/os-resource exhaustion (e.g. out of HDC handles in windows) BUG= Review URL: https://codereview.chromium.org/18132009 git-svn-id: http://skia.googlecode.com/svn/trunk@9930 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
4d494f031cd52c79fec69adeaab2c02134b7959b |
|
20-Jun-2013 |
skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Sanitizing source files in Housekeeper-Nightly git-svn-id: http://skia.googlecode.com/svn/trunk@9695 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
6757a3c71fd6c16af6bbd76f268307f0177b17ae |
|
19-Jun-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
combine glyph and image bulk alloc, and adjust initial alloc size, to reduce total waste from 50% to 30% add diagnostics to measure cache efficiency BUG= Review URL: https://codereview.chromium.org/17449012 git-svn-id: http://skia.googlecode.com/svn/trunk@9691 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
0a01f5a2c44f3d6a7fa2d3c837f46894d9b29e5d |
|
08-May-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
we only need one fontmetrics, since the paint (and fontcache) now know explicitly if they are horizontal or vertical. Review URL: https://codereview.chromium.org/14940018 git-svn-id: http://skia.googlecode.com/svn/trunk@9058 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
90808e87c21e93b8e670360655e0b0eb12cb2f87 |
|
19-Mar-2013 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Add SkTypeface* parameter to SkScalerContext (and its callers) Use SkTypeface to create scalercontext instead of SkFontHost Review URL: https://codereview.chromium.org/12706010 git-svn-id: http://skia.googlecode.com/svn/trunk@8223 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
e16efc1882ab34a0bb3ae361a2d37f840044cf87 |
|
26-Jan-2013 |
skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Sanitizing source files in Skia_Periodic_House_Keeping git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
000dea7573e5c902c3e04e93ad6a1aaf83c44d88 |
|
30-Nov-2012 |
djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Disabling validation of the glyph cache for standard debug builds. The validation step is adding 50% overhead to the rendering of text heavy SkPicture files. Review URL: https://codereview.appspot.com/6856123 git-svn-id: http://skia.googlecode.com/svn/trunk@6635 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
0c3b9cfebaa40bd67d21fd4abd990e478f2006a1 |
|
29-Oct-2012 |
bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Use consistent globals in AttachCache. https://codereview.appspot.com/6816052/ git-svn-id: http://skia.googlecode.com/svn/trunk@6188 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
fbfcd5602128ec010c82cb733c9cdc0a3254f9f3 |
|
23-Aug-2012 |
rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) This CL is part I of IV (I broke down the 1280 files into 4 CLs). Review URL: https://codereview.appspot.com/6485054 git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
c73dd5c6880739f26216f198c757028fd28df1a4 |
|
07-Aug-2012 |
djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Update SkFlattenable buffers to be more modular. This CL is an effort to stage the conversion to named parameters for all SkFlattenable commands. This particular stage only does the following two things... 1. Move flattenable buffers from SkFlattenable.h into their own header. 2. Update and Add new read write methods for better clarity and convenience. BUG= Review URL: https://codereview.appspot.com/6448095 git-svn-id: http://skia.googlecode.com/svn/trunk@4980 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
79a1c34ee45a3eb5edd568fd97626dff1b64a0db |
|
30-Jul-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
land https://codereview.appspot.com/6448046/ Add a method reporting used font cache size to the SkGraphics API git-svn-id: http://skia.googlecode.com/svn/trunk@4825 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
73c48f17137e332f4d1f06ff230d00c98ef92d27 |
|
20-Jul-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
removing trailing ',' on last entry in enum, to fix warning git-svn-id: http://skia.googlecode.com/svn/trunk@4686 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
26344cfaffa6a78c545c3e2253ec26cc277f82c9 |
|
27-Jun-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
add explicit purgeAll() so we don't get foiled by the min cache-limit call unref instead of delete on the GrFontScaler Review URL: https://codereview.appspot.com/6353045 git-svn-id: http://skia.googlecode.com/svn/trunk@4366 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
df9d656c352928f995abce0a62c4ec3255232a45 |
|
07-Jun-2012 |
bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Add SkPath::getVerbs/countVerbs Review URL: http://codereview.appspot.com/6306053/ git-svn-id: http://skia.googlecode.com/svn/trunk@4209 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
7b578928a5705f40cfe051ae1c41c1b2e1df0bdd |
|
21-May-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
~glyphcache_globals needs to actually delete its cache git-svn-id: http://skia.googlecode.com/svn/trunk@4011 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
803c67dbd766185a1d72eda2561df006d2ecf382 |
|
17-May-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
change SetTLSFontCacheLimit to be void, since it doesn't easily know the prev value git-svn-id: http://skia.googlecode.com/svn/trunk@3987 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
6172d67d1ca81876333d6753e7ce407e2d6d9c3f |
|
17-May-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Allow font-cache to use thread_local_storage for a private cache Review URL: https://codereview.appspot.com/6200051 git-svn-id: http://skia.googlecode.com/svn/trunk@3986 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
82d447d4f193f10a5ea77a0bcb5737fc35fb340d |
|
07-May-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
revert TLS change (until we impl windows backend) git-svn-id: http://skia.googlecode.com/svn/trunk@3858 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
09dcf754ff979dd30c3a1bd4443b54d99562fff0 |
|
07-May-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
allow thread-local font cache Review URL: https://codereview.appspot.com/6101053 git-svn-id: http://skia.googlecode.com/svn/trunk@3857 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
098370137fc9c13acf1631bcc16d9ffbb0abf45f |
|
23-Apr-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
move FontCacheLimit implementations into SkGlyphCache.cpp, in prep for TLS Review URL: https://codereview.appspot.com/6110043 git-svn-id: http://skia.googlecode.com/svn/trunk@3751 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
331560e461a5ea12ebf2f0fba2371d0944b3a3a3 |
|
23-Apr-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
fix debug build git-svn-id: http://skia.googlecode.com/svn/trunk@3750 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
eb9a9bfc73d7fa03e2dab16dd4734290a738e9e7 |
|
23-Apr-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
cleanups in prep for tls cache Review URL: https://codereview.appspot.com/6109045 git-svn-id: http://skia.googlecode.com/svn/trunk@3749 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
8887be06192f85ad3c7c11df04dc03428627c76b |
|
25-Jan-2012 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
disable SPEW_PURGE_STATUS git-svn-id: http://skia.googlecode.com/svn/trunk@3085 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
9998c669300281b5682fce72b036c1a6a619a44e |
|
17-Nov-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
remove all references to SkGlobals (obsolete) git-svn-id: http://skia.googlecode.com/svn/trunk@2713 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
5d248bce640b7f0a32afdc8b8ca571f3673c792b |
|
17-Nov-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
remove use of SkGlobals git-svn-id: http://skia.googlecode.com/svn/trunk@2712 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
d54c85731eb45afcdee1272acfd0cafda6348bab |
|
17-Nov-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
remove obsolete SK_USE_RUNTIME_GLOBALS git-svn-id: http://skia.googlecode.com/svn/trunk@2711 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
77407ca019ca1bb98dd65f940be825d38719e983 |
|
08-Nov-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
add api to SkGraphics to get/set font cache limit add SK_DEFAULT_FONT_CACHE_LIMIT to SkUserConfig, to override our default value git-svn-id: http://skia.googlecode.com/svn/trunk@2621 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
11b4d8a251f23e399180f60e7b0fc70e68246e03 |
|
02-Nov-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
add hack for testing gSkSuppressFontCachePurgeSpew git-svn-id: http://skia.googlecode.com/svn/trunk@2589 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
5e2df64215f12660ab26b96816f40ad8e32bf16f |
|
21-Sep-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
detect when LCD is really just BW, and remark the glyph as that. allows us to take a much faster blitter. TODO: inform SkGlyphCache of this, so it can shrink its allocation for the image buffer (since BW takes up 1/16 as much ram) TODO(2): allow for A8->BW conversion my having scalercontext set a flag if it really-wants A8 (i.e. we have a maskfilter) git-svn-id: http://skia.googlecode.com/svn/trunk@2301 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976e |
|
28-Jul-2011 |
epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Automatic update of all copyright notices to reflect new license terms. I have manually examined all of these diffs and restored a few files that seem to require manual adjustment. The following files still need to be modified manually, in a separate CL: android_sample/SampleApp/AndroidManifest.xml android_sample/SampleApp/res/layout/layout.xml android_sample/SampleApp/res/menu/sample.xml android_sample/SampleApp/res/values/strings.xml android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java experimental/CiCarbonSampleMain.c experimental/CocoaDebugger/main.m experimental/FileReaderApp/main.m experimental/SimpleCocoaApp/main.m experimental/iOSSampleApp/Shared/SkAlertPrompt.h experimental/iOSSampleApp/Shared/SkAlertPrompt.m experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig gpu/src/android/GrGLDefaultInterface_android.cpp gyp/common.gypi gyp_skia include/ports/SkHarfBuzzFont.h include/views/SkOSWindow_wxwidgets.h make.bat make.py src/opts/memset.arm.S src/opts/memset16_neon.S src/opts/memset32_neon.S src/opts/opts_check_arm.cpp src/ports/SkDebug_brew.cpp src/ports/SkMemory_brew.cpp src/ports/SkOSFile_brew.cpp src/ports/SkXMLParser_empty.cpp src/utils/ios/SkImageDecoder_iOS.mm src/utils/ios/SkOSFile_iOS.mm src/utils/ios/SkStream_NSData.mm tests/FillPathTest.cpp Review URL: http://codereview.appspot.com/4816058 git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
0bc7bf5fe418191473f8325d89dd9e74be3ff928 |
|
04-Mar-2011 |
ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Implement SkScalerContext_Windows::generateGlyphCount() and provide access via SkGlyphCache interface. * This will be used by PDF font code. Review URL: http://codereview.appspot.com/4261042 git-svn-id: http://skia.googlecode.com/svn/trunk@888 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
22a0221968bbc7498110f098d7975989d0fbcf6d |
|
01-Mar-2011 |
reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
check that alloc() succeeded before calling the scaler's getImage() git-svn-id: http://skia.googlecode.com/svn/trunk@873 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
f2b98d67dcb6fcb3120feede9c72016fc7b3ead8 |
|
20-Dec-2010 |
reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
merge with changes for GPU backend git-svn-id: http://skia.googlecode.com/svn/trunk@637 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
17f694b0386ae42e66e76ffa19a0dabbc2191c62 |
|
19-Oct-2010 |
scarybeasts@gmail.com <scarybeasts@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Clamp the maximum size of glyph width we will attempt to render. Review URL: http://codereview.appspot.com/2519045 git-svn-id: http://skia.googlecode.com/svn/trunk@607 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
9d3a985aa3c82605346ed1518375a8c384b925e5 |
|
08-Jan-2010 |
reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
add glyph->unichar query (inverse of a cmap) git-svn-id: http://skia.googlecode.com/svn/trunk@472 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|
8a1c16ff38322f0210116fa7293eb8817c7e477e |
|
17-Dec-2008 |
reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
grab from latest android git-svn-id: http://skia.googlecode.com/svn/trunk@27 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkGlyphCache.cpp
|