2103 Commits

Author SHA1 Message Date
Ying Wang
05f5674ae8 Fix 64-bit build.
Change-Id: I9f2e2edf276f98864b65708b746bf938a4a3c8d6
2015-04-07 18:03:31 -07:00
John Reck
379f264bb6 Add stat collection start time
Add CLOCK_MONOTONIC to signal
when the stat collection started
to allow for tracking stats
over time

Change-Id: Iab7c52f21184eea603ddc8572b9d91a951b45a00
2015-04-06 16:07:12 -07:00
Chris Craik
b7acab634a Merge "Fix path clipping in VectorDrawable" 2015-04-06 18:05:00 +00:00
Chris Craik
e9c01a40a2 Fix path clipping in VectorDrawable
bug:19946683

Change-Id: I773957df7459eb72ea5d505afb0daac08239ecbf
2015-04-06 10:50:36 -07:00
Chris Craik
828407356d Delete pre-glop path
bug:19014311

Change-Id: I06376b6f625455892d8eafe2727b78025a64c4bf
2015-04-03 13:01:18 -07:00
John Reck
98fa0a322e Fix warn log format
Change-Id: I7876dd5d0d0f68dde4cb0768699d800daff754f1
2015-03-31 12:03:51 -07:00
Tom Hudson
f6967e686b Merge "Enter RectangleMode when the clip region is a rectangle" 2015-03-31 11:58:10 +00:00
Chris Craik
9d7b58571f Merge "Fix glop usage for drawTextureLayer" 2015-03-30 23:22:08 +00:00
Chris Craik
31dbfc1b3e Fix glop usage for drawTextureLayer
Change-Id: I45fcdfc9e3f41a687b6f4679f81e2b1f4479b9fc
2015-03-30 15:42:23 -07:00
Tom Hudson
e30b53cec5 Enter RectangleMode when the clip region is a rectangle
ClipArea's region mode implementation store the region's boundary in
a rectangle, and if the region is that rectangle, set its region to
empty.  This is a bug, since as long as the ClipArea is in region
mode it treats its region as determinitive. When the next clipping
operation comes in, it is tested against the empty region instead of
against the valid rect.

Discovered via Skia GM testing.

Change-Id: I3bbc4e81c8d68636061f830156e017e9b5c7e587
2015-03-30 16:57:43 -04:00
John Reck
c74e289a65 Merge "Add GraphicsStatsService" 2015-03-30 19:39:27 +00:00
John Reck
edc524c905 Add GraphicsStatsService
More S's for More Speed

Split JankTracker's backing data from the
class to allow for data relocation to/from ashmem regions

Pack the jank tracking data to fit in 256 bytes

Change-Id: Ife86a64b71a328fbd0c8075fe6a0404e081f725b
2015-03-27 11:50:56 -07:00
Chris Craik
39c2750221 am 485c25ba: am e3abfef6: am 82f6b16e: Merge "hwui : fix memory leak due to duplicate in shadow cache"
* commit '485c25ba46b02393245c4c766ad059644afa7cd9':
  hwui : fix memory leak due to duplicate in shadow cache
2015-03-25 20:58:56 +00:00
Chris Craik
82f6b16e10 Merge "hwui : fix memory leak due to duplicate in shadow cache" 2015-03-25 16:15:12 +00:00
Derek Sollenberger
289e1b8716 Update ShadowTesslator to support conics
bug:19732872
Change-Id: I8b539ab3677219fa5bb7de7caf0aad9fc47ef7e9
2015-03-25 11:39:40 -04:00
Derek Sollenberger
240d52cb96 Merge "Fix DrawFilter's usage in HWUI." 2015-03-25 14:30:51 +00:00
Derek Sollenberger
0b8606266c Fix DrawFilter's usage in HWUI.
Also add additional compile time checks to ensure that the Java
and Skia APIs remain in sync.

bug:19890753
Change-Id: I8503cacf2859307e3f480a78603f9f05901b58cc
2015-03-25 10:08:30 -04:00
John Reck
2f6fb3d1b7 Merge "Shave another 10us off of hwuitask" 2015-03-24 19:35:21 +00:00
John Reck
bf29ee2a49 Shave another 10us off of hwuitask
pthread_cond_signal does not need the mutex
to be held to signal. This results in the thread
waking up trying to grab the lock, failing, the signaling
thread to wake up, release the lock, immediately get preempted
for the signaled thread which can now proceed.

Release the mutex before signaling to avoid the ping-pong
scheduling issue, which shaves another 10us off of this

Change-Id: Ie6bccca031ba6528f357eae8352b74626a6318c7
2015-03-24 12:31:44 -07:00
John Reck
125104f66c Merge "Shave 10us off of hwuitask" 2015-03-24 19:22:00 +00:00
John Reck
815f2a093a Shave 10us off of hwuitask
This prevents an issue where if the signal schedules
hwuiTask it will immediately block and go back to sleep due
to mLock still being held.

This costs 10us in thread scheduling ping-ponging bouncing
between hwuiTask and RenderThread

Change-Id: I47595c1bf5736576483a6aa7aada0b1be1e04268
2015-03-24 12:16:37 -07:00
John Reck
111928fa32 resolved conflicts for merge of 4142f026 to master
Change-Id: Iabe3aa0ac6911a26d2ba7219f18332897276ed6f
2015-03-24 08:34:23 -07:00
youngmin0822.lee
c80c9ad188 Don't create unnecessary RenderThread's instance when executing 'dumpsys gfxinfo'
To obtain the gfxinfo for each process, the static method of RenderProxy is used, which is named outputLogBuffer().
In there,
1. RenderTask is created for getting DisplayList Commands in RenderNode.
2. staticPostAndWait() is called
3. RenderThread's instance is created by 'RenderThread::getInstance()' in staticPostAndWait()

In case of the service, they don't use HW Acceleration, so don't need RenderThread.
But, by the process of No.3, RenderThread is created for all process.
As we know, RenderThread never be destroyed while the process is alive.
This patch checks RenderThread instance before the creation of RenderTask.
And, there is no one, just return to prevent the unnecessay creation of it.

Change-Id: I4fe29d83c9ced3e8b67177c0874c5d8ee62e1870
2015-03-20 21:22:32 +09:00
Chris Craik
c6128bae43 Fix clang build
Change-Id: I5336ac347123671a18401121c5f001c8f7caf54d
2015-03-19 10:00:56 -07:00
Chris Craik
e2bb380bc2 Use glops for text rendering
Change-Id: I5e155c8baf3149f0ff231ec3c89dbff6bb8eae92
2015-03-18 16:10:24 -07:00
Mykola Kondratenko
b159633aa3 hwui : fix memory leak due to duplicate in shadow cache
New ShadowTask with the ShadowDescription key that already
exists in the shadow LruCache will leak as it is not being
added.

Fix adds check for the existing key that is common in the hwui
code but missing for the TessellationCache::precacheShadow
function.

Change-Id: I37fd5ec82f8b8da5d1ec0f2ab9fd04c5f8534367
2015-03-17 08:57:41 +01:00
Derek Sollenberger
dc16e24afc Merge "Add conic support to HWUI path tessellator." 2015-03-16 19:40:08 +00:00
Derek Sollenberger
b0772a6cc5 Add conic support to HWUI path tessellator.
bug: 19732872
Change-Id: Ic3ae46f746325468ab972c9daf829099165eb596
2015-03-16 15:28:16 -04:00
Mike Reed
2a1ce8a4e5 use SkFilterQuality instead of SkPaint::FilterLevel
Change-Id: I5d26869de746107b8a35a7a662236f993a824b0d
2015-03-16 11:31:38 -04:00
Derek Sollenberger
ee248599d4 Refactor DisplayList path caching.
This removes dependence on SkPath ptrs that HWUI does not control
the lifecycle of. This clears up some errors where the paths are
not generated from Java, but rather the Skia test suites.

Cherry-pick of a change that originally landed in master-skia and is
dependent on a skia merge (ag/655422).

Change-Id: I41b9797a2b0af5d6b4ea51891565469d4f1d832d
2015-03-13 08:05:55 -04:00
John Reck
b36016c65f Cleanups & simplifications
Change-Id: I5ad5e3b8fe55b1528f2e20c63e5abe51d9e40ff1
2015-03-11 11:29:13 -07:00
Chris Craik
48f650cb24 Track down unsupported texture target
bug:19641517

Change-Id: Idc2e413abef5bb1438ffb3f52efb001504d3e89f
2015-03-10 14:02:06 -07:00
Chris Craik
edacf22ca1 Merge "Glop based composeLayerRegion/Rect" 2015-03-10 16:29:14 +00:00
Chris Craik
182952f5ee Glop based composeLayerRegion/Rect
Change-Id: I69440cabca84948e8aaead9479d616ebc2496517
2015-03-09 18:06:32 -07:00
Chris Craik
0a75d4e96c Merge "Rewrite glop texture asserts" 2015-03-09 20:40:08 +00:00
Chris Craik
eb911c2b0e Rewrite glop texture asserts
bug:19641517

Also switch Glop VertexAttribFlags to use int for group of flags.

Change-Id: Ib7b1934197a62206a55baa6ab484ac59f5bec816
2015-03-09 13:36:35 -07:00
Chih-Hung Hsieh
7830c81cd2 Merge "Fix unused local variale warning from clang/llvm." 2015-03-07 01:13:50 +00:00
Chih-Hung Hsieh
9ad6ac08a9 Fix unused local variale warning from clang/llvm.
Change-Id: Ib9b5d06313e5bf933edfb38a4522929104c7917a
2015-03-06 17:07:57 -08:00
John Reck
aa35d91905 Merge "Add percentiles" 2015-03-06 23:47:26 +00:00
John Reck
e70c5754d0 Add percentiles
Change-Id: Ieb6badd177bb6f67dda199dfcb3e0f483c8c4e59
2015-03-06 15:40:03 -08:00
Derek Sollenberger
c0bf700441 SkPorterDuff Multiply mode maps to SkXfermode modulate.
bug:19627342
Change-Id: I97f26ca1bc8abe2768f4a12cc70fb0fa5d905098
2015-03-06 13:51:04 -05:00
Chris Craik
97a351a329 Merge "Avoid invalid shader creation for certain blend modes" 2015-03-06 18:44:17 +00:00
Chris Craik
1c1c3fe9eb Avoid invalid shader creation for certain blend modes
bug:19627342

Change-Id: I41e3c1ce8e6fa52f046ec492d19de7cab92b9ec5
2015-03-06 10:05:15 -08:00
Derek Sollenberger
0313f2680c Remove uncessary include for SkPorterDuff.h
Change-Id: Ibcbed5dd2dc327821fc26e87191185f0069c9911
2015-03-05 16:22:17 -05:00
Tom Hudson
8124e6a98c Merge "Fix bug, change crashes to warnings" 2015-03-05 15:40:46 +00:00
Tom Hudson
b1476ae7d5 Fix bug, change crashes to warnings
Improve behavior when we get a call to draw 0 points.
Replace one ALWAYS_FATAL statements with noop.

Change-Id: I864b7a9633dfa3dc6eefa403beca4cc7ae14074f
2015-03-05 10:31:52 -05:00
Chris Craik
8820fd1d82 Patch cleanup, reenable Patch Glops
bug:19597454

Change-Id: If12b95e83588b81a553210cd8c2437c6c771073a
2015-03-04 15:32:47 -08:00
Chris Craik
a9761e698e Temporarily disable Patch glops
bug:19597454

Change-Id: I9dbe781a714582717a5585113b9a56821265b36e
2015-03-04 14:25:10 -08:00
Chris Craik
9b98afca76 Merge "Glop DrawPatch support" 2015-03-03 18:12:27 +00:00
Chris Craik
e2e0073e88 Merge "Glop drawBitmaps, drawPatches" 2015-03-03 18:02:01 +00:00