aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
...
* Revert of Store context options on caps. (patchset #3 id:40001 of ↵Gravatar bsalomon2015-05-22
| | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1158433006/) Reason for revert: breaking chromeos build (???) Original issue's description: > Store context options on caps. > > Committed: https://skia.googlesource.com/skia/+/f28cff71db2cbb1ff18a8fbf1e80ca761d1f69bc TBR=joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1151603005
* Store context options on caps.Gravatar bsalomon2015-05-22
| | | | Review URL: https://codereview.chromium.org/1158433006
* Implement Porter Duff XP with a blend tableGravatar cdalton2015-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes the runtime logic used by PorterDuffXferProcessor to decide blend coeffs and shader outputs, and instead uses a compile-time constant table of pre-selected blend formulas. Introduces a new blend strategy for srcCoeff=0 that can apply coverage with a reverse subtract blend equation instead of dual source blending. Adds new macros in GrBlend.h to analyze blend formulas both runtime. Removes kSetCoverageDrawing_OptFlag and GrSimplifyBlend as they are no longer used. Adds a GM that verifies all xfermodes, including arithmetic, with the color/coverage invariants used by Porter Duff. Adds a unit test that verifies each Porter Duff formula with every color/coverage invariant. Major changes: * Uses a reverse subtract blend equation for coverage when srcCoeff=0 (clear, dst-out [Sa=1], dst-in, modulate). Platforms that don't support dual source blending no longer require a dst copy for dst-in and modulate. * Sets BlendInfo::fWriteColor to false when the blend does not modify the dst. GrGLGpu will now use glColorMask instead of blending for these modes (dst, dst-in [Sa=1], modulate ignored for [Sc=1]). * Converts all SA blend coeffs to One for opaque inputs, and ISA to Zero if there is also no coverage. (We keep ISA around when there is coverage because we use it to tweak alpha for coverage.) * Abandons solid white optimizations for the sake of simplicity (screen was the only mode that previous had solid white opts). Minor differences: * Inconsequential differences in opt flags (e.g. we now return kCanTweakAlphaForCoverage_OptFlag even when there is no coverage). * Src coeffs when the shader outputs 0. * IS2C vs IS2A when the secondary output is scalar. BUG=skia: Review URL: https://codereview.chromium.org/1124373002
* Trivial patch to set a max lookback on reorderingGravatar joshualitt2015-05-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1150253003
* Remove init from GrGLContextInfo and caps classesGravatar bsalomon2015-05-22
| | | | | | Make Gr*Caps, GrGLContext* noncopyable Review URL: https://codereview.chromium.org/1153813002
* rename GrDrawTargetCaps.h to GrCaps.h and move to includeGravatar bsalomon2015-05-22
| | | | Review URL: https://codereview.chromium.org/1135113005
* Move GrPath(Range) creation to ResourceProvider.Gravatar bsalomon2015-05-22
| | | | Review URL: https://codereview.chromium.org/1155593002
* Further work on sRGB support.Gravatar jvanverth2015-05-22
| | | | | | | | | Fix some caps. Add framebuffer enum. BUG=skia:3856 Review URL: https://codereview.chromium.org/1152563003
* Mark SkPaths created by GrContext fallback draw logic as volatileGravatar kkinnunen2015-05-21
| | | | | | | | | | | | | | | | | | | | | | GrContext draw functions (drawRect, drawRRect,...) fall back to GrContext::drawPath for complex cases. Mark the argument SkPath as volatile, since it is. Progressions for nvprmsaa: tabl_androidpolice.skp_1 11.6ms -> 10.3ms 0.89x desk_twitter.skp_1 9.21ms -> 8.08ms 0.88x tabl_sahadan.skp_1 8.97ms -> 7.65ms 0.85x desk_wikipedia.skp_1 5.63ms -> 4.5ms 0.8x desk_booking.skp_1 11.5ms -> 8.87ms 0.77x desk_ebay.skp_1 7ms -> 5.37ms 0.77x Makes rrects and rects go to "simple path" path cache (cached by contents). No change for msaa, gpu. BUG=skia: Review URL: https://codereview.chromium.org/1150993002
* Remove uniform view matrix from GrGLPrimitiveProcessor base classGravatar joshualitt2015-05-21
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1151693005
* Make mixed samples contingent on auxiliary extensionsGravatar cdalton2015-05-21
| | | | | | | | | | | | | | | | | | | | | Moves the cap for mixed samples into GrShaderCaps and does not enable it unless we have support for both dual source blending and multisample disable. Creates a dedicated cap for multisample disable. Reconfigures the mixed samples cap to indicate the collective capability of three different extensions: GL_NV_framebuffer_mixed_samples GL_NV_sample_mask_override_coverage GL_EXT_raster_multisample Imports tokens and procedures for GL_EXT_raster_multisample. BUG=skia: Review URL: https://codereview.chromium.org/1151793002
* Add RGBA half float texture format.Gravatar jvanverth2015-05-21
| | | | | | BUG=skia:3829 Review URL: https://codereview.chromium.org/1148243002
* Improve caching of special case paths in GrStencilAndCoverPathRendererGravatar kkinnunen2015-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cache lines and oval paths in their own cache domains. Skia has many hard-to-replace codepaths that create volatile paths out of lines or ovals. Results for amd64: desk_tigersvg.skp_1 3.06ms -> 3.07ms 1x tabl_cnet.skp_1 2.3ms -> 2.3ms 1x desk_baidu.skp_1 8.99ms -> 8.98ms 1x desk_weather.skp_1 4.58ms -> 4.57ms 1x desk_samoasvg.skp_1 12.3ms -> 12.3ms 1x tabl_gamedeksiam.skp_1 15.8ms -> 15.7ms 1x desk_chalkboard.skp_1 14.9ms -> 14.9ms 1x desk_mapsvg.skp_1 6.57ms -> 6.54ms 1x desk_wordpress.skp_1 2.2ms -> 2.19ms 1x tabl_slashdot.skp_1 6.91ms -> 6.84ms 0.99x desk_linkedin.skp_1 7.7ms -> 7.58ms 0.98x desk_googlespreadsheet.skp_1 58.7ms -> 57.7ms 0.98x tabl_ukwsj.skp_1 7.67ms -> 7.53ms 0.98x tabl_engadget.skp_1 4.71ms -> 4.61ms 0.98x desk_carsvg.skp_1 116ms -> 114ms 0.98x tabl_nytimes.skp_1 3.71ms -> 3.61ms 0.97x desk_googlespreadsheetdashed.skp_1 25.8ms -> 24.9ms 0.97x tabl_hsfi.skp_1 5.3ms -> 5.1ms 0.96x tabl_techmeme.skp_1 2.9ms -> 2.8ms 0.96x tabl_cnn.skp_1 6.88ms -> 6.62ms 0.96x desk_espn.skp_1 9.12ms -> 8.64ms 0.95x desk_gws.skp_1 5.15ms -> 4.88ms 0.95x tabl_gspro.skp_1 4.48ms -> 4.2ms 0.94x desk_yahooanswers.skp_1 6.84ms -> 6.3ms 0.92x tabl_pravda.skp_1 11.1ms -> 10.1ms 0.91x tabl_sahadan.skp_1 11.8ms -> 10.7ms 0.91x desk_wowwiki.skp_1 8.48ms -> 7.58ms 0.89x tabl_googleblog.skp_1 6ms -> 5.34ms 0.89x tabl_worldjournal.skp_1 6.08ms -> 5.35ms 0.88x desk_booking.skp_1 15.3ms -> 13.4ms 0.88x tabl_androidpolice.skp_1 15.5ms -> 13.5ms 0.87x desk_twitter.skp_1 12.2ms -> 10.6ms 0.87x tabl_nofolo.skp_1 5.49ms -> 4.76ms 0.87x desk_mobilenews.skp_1 22ms -> 18.9ms 0.86x desk_forecastio.skp_1 9.47ms -> 8.05ms 0.85x tabl_culturalsolutions.skp_1 6.21ms -> 5.28ms 0.85x desk_youtube.skp_1 16.1ms -> 13.5ms 0.84x tabl_mlb.skp_1 9.75ms -> 8.01ms 0.82x tabl_digg.skp_1 5.2ms -> 4.22ms 0.81x desk_blogger.skp_1 10.2ms -> 8.24ms 0.81x desk_gmailthread.skp_1 26.8ms -> 21.6ms 0.81x desk_googleplus.skp_1 10.5ms -> 8.39ms 0.8x tabl_frantzen.skp_1 4.55ms -> 3.58ms 0.79x desk_pinterest.skp_1 8.85ms -> 6.88ms 0.78x desk_ebay.skp_1 10.5ms -> 8.15ms 0.77x tabl_transformice.skp_1 4.93ms -> 3.5ms 0.71x Results for arm_v7_neon: desk_samoasvg.skp_1 13.9ms -> 14.6ms 1.05x desk_mapsvg.skp_1 8.31ms -> 8.75ms 1.05x tabl_deviantart.skp_1 1.41ms -> 1.45ms 1.02x desk_weather.skp_1 3.8ms -> 3.88ms 1.02x desk_sfgate.skp_1 3.06ms -> 3.1ms 1.01x desk_css3gradients.skp_1 2.78ms -> 2.79ms 1x desk_espn.skp_1 6.52ms -> 6.43ms 0.99x desk_gws.skp_1 4.16ms -> 4.09ms 0.98x tabl_cnn.skp_1 4.66ms -> 4.58ms 0.98x tabl_hsfi.skp_1 3.49ms -> 3.42ms 0.98x tabl_cuteoverload.skp_1 2.41ms -> 2.35ms 0.98x desk_yahooanswers.skp_1 5.28ms -> 5.14ms 0.97x desk_carsvg.skp_1 90.8ms -> 87.9ms 0.97x tabl_gspro.skp_1 2.81ms -> 2.71ms 0.96x desk_wowwiki.skp_1 5.85ms -> 5.63ms 0.96x tabl_pravda.skp_1 7.8ms -> 7.5ms 0.96x desk_twitter.skp_1 8.14ms -> 7.8ms 0.96x tabl_androidpolice.skp_1 10.4ms -> 9.96ms 0.96x tabl_googleblog.skp_1 4.06ms -> 3.83ms 0.95x desk_mobilenews.skp_1 15.2ms -> 14ms 0.93x desk_booking.skp_1 9.89ms -> 9.08ms 0.92x desk_forecastio.skp_1 6.16ms -> 5.65ms 0.92x desk_blogger.skp_1 6.17ms -> 5.66ms 0.92x tabl_digg.skp_1 3.73ms -> 3.41ms 0.91x tabl_nofolo.skp_1 3.82ms -> 3.47ms 0.91x tabl_worldjournal.skp_1 4.24ms -> 3.84ms 0.9x desk_youtube.skp_1 10.5ms -> 9.39ms 0.9x desk_googleplus.skp_1 7.01ms -> 6.19ms 0.88x tabl_mlb.skp_1 5.91ms -> 5.22ms 0.88x tabl_googlecalendar.skp_1 10.7ms -> 9.44ms 0.88x desk_gmailthread.skp_1 19.2ms -> 16.8ms 0.88x desk_ebay.skp_1 5.68ms -> 4.93ms 0.87x desk_pinterest.skp_1 5.99ms -> 5.08ms 0.85x desk_googlehome.skp_1 3.31ms -> 2.71ms 0.82x tabl_transformice.skp_1 3.03ms -> 2.44ms 0.81x desk_amazon.skp_1 6.05ms -> 4.84ms 0.8x desk_facebook.skp_1 12.6ms -> 9.62ms 0.76x Review URL: https://codereview.chromium.org/1120023005
* Use high precision vertex attributes.Gravatar senorblanco2015-05-20
| | | | | | | | | | Specifying vertex attributes and the view matrix as mediump causes bad artifacts on Mali T6XX. Covered by the bigmatrix GM in msaa4 mode. BUG:skia=3545,3771 Review URL: https://codereview.chromium.org/1145273002
* Fix for bisector computation bug in GrAAConvexTessellatorGravatar robertphillips2015-05-20
| | | | Review URL: https://codereview.chromium.org/1151623002
* small cleanup of GrAtlasGravatar joshualitt2015-05-19
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/d706f11b6e3f4398ab93b23458a7599ee324be2c Review URL: https://codereview.chromium.org/1142263002
* Revert of small cleanup of GrAtlas (patchset #2 id:20001 of ↵Gravatar bungeman2015-05-19
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1142263002/) Reason for revert: Broke compile on Linux Original issue's description: > small cleanup of GrAtlas > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d706f11b6e3f4398ab93b23458a7599ee324be2c TBR=robertphillips@google.com,joshualitt@google.com,jvanverth@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1142273002
* small cleanup of GrAtlasGravatar joshualitt2015-05-19
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1142263002
* Adding immediate mode draw target for debugGravatar joshualitt2015-05-19
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1126043007
* Sketch splitting SkPicture into an interface and SkBigPicture.Gravatar mtklein2015-05-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds small pictures for drawRect(), drawTextBlob(), and drawPath(). These cover about 89% of draw calls from Blink SKPs, and about 25% of draw calls from our GMs. SkPicture handles: - serialization and deserialization - unique IDs Everything else is left to the subclasses: - playback(), cullRect() - hasBitmap(), hasText(), suitableForGPU(), etc. - LayerInfo / AccelData if applicable. The time to record a 1-op picture improves a good chunk (2 mallocs to 1), and the time to record a 0-op picture greatly improves (2 mallocs to none): picture_overhead_draw: 450ns -> 350ns picture_overhead_nodraw: 300ns -> 90ns BUG=skia: Committed: https://skia.googlesource.com/skia/+/c92c129ff85b05a714bd1bf921c02d5e14651f8b Latest blink_linux_rel: http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/61248 Committed: https://skia.googlesource.com/skia/+/15877b6eae33a9282458bdb904a6d00440eca0ec http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/62015 Review URL: https://codereview.chromium.org/1112523006
* rename GrDrawTargetCaps to GrCapsGravatar bsalomon2015-05-19
| | | | Review URL: https://codereview.chromium.org/1133123009
* Preliminary attempt to remove batch trackerGravatar joshualitt2015-05-19
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/cbfe91d82500f4ae8c3ff7bd74b3021a4b89fd84 Review URL: https://codereview.chromium.org/1139723004
* Revert of Preliminary attempt to remove batch tracker (patchset #3 id:40001 ↵Gravatar joshualitt2015-05-19
| | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1139723004/) Reason for revert: breaking bots Original issue's description: > Preliminary attempt to remove batch tracker > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/cbfe91d82500f4ae8c3ff7bd74b3021a4b89fd84 TBR=robertphillips@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1132323003
* Preliminary attempt to remove batch trackerGravatar joshualitt2015-05-19
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1139723004
* Fix GrAARectRenderer's handling of unsorted nested rectsGravatar robertphillips2015-05-19
| | | | | | | | What is going on here is that, after the mapPoints in fillAANestedRects, devInside was upside down so the isEmpty check was always firing. I don't see why we need to avoid having devInside sorted. BUG=488103 Review URL: https://codereview.chromium.org/1135753004
* Improve caching of dashed paths in GrStencilAndCoverPathRendererGravatar kkinnunen2015-05-18
| | | | | | | | | | | | | | | | Improve caching of dashed paths in GrStencilAndCoverPathRenderer. Look up the (NVPR specific) GrGLPath based on GrStrokeInfo and the original path. Use unique keys for all GrPaths. Dash the path with Skia dash stroker and use that path geometry for NVPR path. NVPR internal dashing stroke is not used, because the dashing implementation of NVPR does not match Skia implementation. Review URL: https://codereview.chromium.org/1116123003
* Improve NVPR stroke accuracy to fix thick strokesGravatar kkinnunen2015-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the "path stroke error bound" path parameter to 0.02 for all paths. This means that the stroked path area will be within 98% of the stroke width in path space. This should fix many cases where NVPR stroked paths were visibly different to Skia stroked paths. One such path is in dashcubics gm. This increases the amount of subdivisions the path object creation will make for paths that need it. This in turn will increase gpu object space requirements sligthly. Both of these effects should be unnoticeable. GL_NV_path_rendering.txt: """ Every path object has a stroke approximation bound parameter (PATH_STROKE_BOUND_NV) that is a floating-point value /sab/ clamped between 0.0 and 1.0 and set and queried with the PATH_STROKE_BOUND_NV path parameter. Exact determination of samples swept an orthogonal centered line segment along cubic Bezier segments and rational quadratic Bezier curves (so non-circular partial elliptical arcs) is intractable for real-time rendering so an approximation is required; /sab/ intuitively bounds the approximation error as a percentage of the path object's stroke width. Specifically, this path parameter requests the implementation to stencil any samples within /sweep/ object space units of the exact sweep of the path's cubic Bezier segments or partial elliptical arcs to be sampled by the stroke where sweep = ((1-sab)*sw)/2 where /sw/ is the path object's stroke width. The initial value of /sab/ when a path is created is 0.2. In practical terms, this initial value means the stencil sample positions coverage within 80% (100%-20%) of the stroke width of cubic and rational quadratic stroke segments should be sampled. """ BUG=skia:2049 Review URL: https://codereview.chromium.org/1124423007
* Make GrStrokeInfo inherit from SkStrokeRecGravatar kkinnunen2015-05-18
| | | | | | | | | | | | | | | | | | | Make the code more readable by inheriting GrStrokeInfo from SkStrokeRec. This should avoid the long .getStrokeRec() and .getStrokeRecPtr(). These were a bit cumbersome especially in cases where an alias variable was created for these, and then the reader had to keep track to which StrokeInfo member the StrokeRec alias was pointing. Removes SkStrokeRec::SkStrokeRec(const SkStrokeRec&). It was memcpying. Try to play it safe wrt compiler using the possible padding of superclass for subclass members. Instead, let the compiler generate the copy constructor. Assignment operator was already compiler-generated, so at least in that way this is consistent. Renames GrStrokeInfo::applyDash to applyDashToPath for consistency with superclass applyToPath. Review URL: https://codereview.chromium.org/1128113008
* Revert of Sketch splitting SkPicture into an interface and SkBigPicture. ↵Gravatar mtklein2015-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #25 id:480001 of https://codereview.chromium.org/1112523006/) Reason for revert: win_chromium_compile_dbg_ng FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\third_party\skia\src\core\skia.SkBitmapHeap.obj.rsp /c ..\..\third_party\skia\src\core\SkBitmapHeap.cpp /Foobj\third_party\skia\src\core\skia.SkBitmapHeap.obj /Fdobj\skia\skia.cc.pdb e:\b\build\slave\win\build\src\third_party\skia\include\core\skpicture.h(176) : error C2487: 'CURRENT_PICTURE_VERSION' : member of dll interface class may not be declared with dll interface Original issue's description: > Sketch splitting SkPicture into an interface and SkBigPicture. > > Adds small pictures for drawRect(), drawTextBlob(), and drawPath(). > These cover about 89% of draw calls from Blink SKPs, > and about 25% of draw calls from our GMs. > > SkPicture handles: > - serialization and deserialization > - unique IDs > > Everything else is left to the subclasses: > - playback(), cullRect() > - hasBitmap(), hasText(), suitableForGPU(), etc. > - LayerInfo / AccelData if applicable. > > The time to record a 1-op picture improves a good chunk > (2 mallocs to 1), and the time to record a 0-op picture > greatly improves (2 mallocs to none): > > picture_overhead_draw: 450ns -> 350ns > picture_overhead_nodraw: 300ns -> 90ns > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/c92c129ff85b05a714bd1bf921c02d5e14651f8b > > Latest blink_linux_rel: > > http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/61248 > > Committed: https://skia.googlesource.com/skia/+/15877b6eae33a9282458bdb904a6d00440eca0ec TBR=reed@google.com,robertphillips@google.com,fmalita@chromium.org,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1130283004
* Sketch splitting SkPicture into an interface and SkBigPicture.Gravatar mtklein2015-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds small pictures for drawRect(), drawTextBlob(), and drawPath(). These cover about 89% of draw calls from Blink SKPs, and about 25% of draw calls from our GMs. SkPicture handles: - serialization and deserialization - unique IDs Everything else is left to the subclasses: - playback(), cullRect() - hasBitmap(), hasText(), suitableForGPU(), etc. - LayerInfo / AccelData if applicable. The time to record a 1-op picture improves a good chunk (2 mallocs to 1), and the time to record a 0-op picture greatly improves (2 mallocs to none): picture_overhead_draw: 450ns -> 350ns picture_overhead_nodraw: 300ns -> 90ns BUG=skia: Committed: https://skia.googlesource.com/skia/+/c92c129ff85b05a714bd1bf921c02d5e14651f8b Latest blink_linux_rel: http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/61248 Review URL: https://codereview.chromium.org/1112523006
* Don't do discards when on Adreno4xx due to driver bug.Gravatar egdaniel2015-05-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1126423006
* Revert of Move copy-surface-as-draw fallback to GrGLGpu. (patchset #12 ↵Gravatar mtklein2015-05-18
| | | | | | | | | | | | | | | | | | | id:220001 of https://codereview.chromium.org/1144433002/) Reason for revert: Many GMs changed, some totally busted. Original issue's description: > Move copy-surface-as-draw fallback to GrGLGpu. > > Committed: https://skia.googlesource.com/skia/+/5df6fee929823f50c55cc50f7c882a309c1b1de9 TBR=joshualitt@google.com,egdaniel@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1142003003
* Move copy-surface-as-draw fallback to GrGLGpu.Gravatar bsalomon2015-05-18
| | | | Review URL: https://codereview.chromium.org/1144433002
* remove localmatrix from GrGeometryProcessor base classGravatar joshualitt2015-05-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1131513005
* Remove high ref count tracker from GrFakeRefObjGravatar bsalomon2015-05-14
| | | | | | TBR=robertphillips@google.com Review URL: https://codereview.chromium.org/1139803003
* Remove viewmatrix from GrGeometryProcessor base classGravatar joshualitt2015-05-14
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1127953003
* Tesellating path renderer: typecast cleanup; logging build fix.Gravatar senorblanco2015-05-14
| | | | | | | | | | | Use SkPoint* for all vertex data. (It was void* to support two different vertex data formats, which we no longer need.) Assert that vertex stride == sizeof(SkPoint). Fix build when LOGGING_ENABLED=1. BUG=skia: Review URL: https://codereview.chromium.org/1128083004
* Revert of Defer glClear to just before draw call (patchset #2 id:20001 of ↵Gravatar robertphillips2015-05-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1113003005/) Reason for revert: This CL seems to be triggering the assert: src/gpu/SkGpuDevice.cpp:319: failed assertion "!fNeedClear" on, at least, Mac & Ubuntu. Original issue's description: > Defer glClear to just before draw call > > Remove some DO_DEFERRED_CLEAR call to avoid call glClear separately, like this: > glBindFramebuffer(1) > glClear > glBindFramebuffer(2) > glClear > glBindFramebuffer(1) > glDrawXXX > glBindFramebuffer(2) > glDrawXXX > > These call sequences may need read and write memory back and forth. > > If we call DO_DEFERRED_CLEAR just before draw call, we can bind, clear and draw in one go. > e.g. > glBindFramebuffer(1) > glClear > glDrawXXX > glBindFramebuffer(2) > glClear > glDrawXXX > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/c3c06a13e69b90d4cc1d543853504072d363ae8b TBR=bsalomon@google.com,joel.liang@arm.com,wasim.abbas@arm.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1136393005
* Defer glClear to just before draw callGravatar wasim.abbas2015-05-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove some DO_DEFERRED_CLEAR call to avoid call glClear separately, like this: glBindFramebuffer(1) glClear glBindFramebuffer(2) glClear glBindFramebuffer(1) glDrawXXX glBindFramebuffer(2) glDrawXXX These call sequences may need read and write memory back and forth. If we call DO_DEFERRED_CLEAR just before draw call, we can bind, clear and draw in one go. e.g. glBindFramebuffer(1) glClear glDrawXXX glBindFramebuffer(2) glClear glDrawXXX BUG=skia: Review URL: https://codereview.chromium.org/1113003005
* Revert of Refactor GrBufferAllocPools to use resource cache (patchset #9 ↵Gravatar robertphillips2015-05-14
| | | | | | | | | | | | | | | | | | | id:160001 of https://codereview.chromium.org/1139753002/) Reason for revert: Perf Regression for some bot/skp combinations Original issue's description: > Refactor GrBufferAllocPools to use resource cache > > Committed: https://skia.googlesource.com/skia/+/c5f1c5414fc8f73cbefadcc1b24ec794056fa203 TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1129863008
* remove color from GrGeometryProcessorGravatar joshualitt2015-05-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1140983002
* Don't issue texture barriers for RT's with separate storageGravatar cdalton2015-05-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1137663004
* removing equality / compute invariant loops from GrGeometryProcessorsGravatar joshualitt2015-05-13
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/ef292a0901205b9785a30daae2c036aa34a970ca Review URL: https://codereview.chromium.org/1111603004
* fix for angle botGravatar joshualitt2015-05-13
| | | | | | | TBR= BUG=skia: Review URL: https://codereview.chromium.org/1137333004
* fix for blur large glyphs problemsGravatar joshualitt2015-05-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1131023006
* Keep Big Glyph coordinates in float in GrAtlasTextContextGravatar joshualitt2015-05-13
| | | | | | | TBR=jvanverth@google.com BUG=skia: Review URL: https://codereview.chromium.org/1132853004
* Refactor GrBufferAllocPools to use resource cacheGravatar robertphillips2015-05-13
| | | | Review URL: https://codereview.chromium.org/1139753002
* Revert of Revert of Revert of Remove workaround to for lower glsl support ↵Gravatar egdaniel2015-05-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for qualcomm (patchset #1 id:1 of https://codereview.chromium.org/1138013004/) Reason for revert: still broken :( Original issue's description: > Revert of Revert of Remove workaround to for lower glsl support for qualcomm (patchset #1 id:1 of https://codereview.chromium.org/1135393003/) > > Reason for revert: > trying once more > > Original issue's description: > > Revert of Remove workaround to for lower glsl support for qualcomm (patchset #1 id:1 of https://codereview.chromium.org/1133543004/) > > > > Reason for revert: > > breaks many qualcomm gms > > > > Original issue's description: > > > Remove workaround to for lower glsl support for qualcomm > > > > > > BUG=skia: > > > > > > Committed: https://skia.googlesource.com/skia/+/9770bdce776f45367c419b8dd82219eece26ca5c > > > > TBR=bsalomon@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=skia: > > > > Committed: https://skia.googlesource.com/skia/+/0cfe1242ee284290bde1ebe3f48626c555fdac51 > > TBR=bsalomon@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/b72f920ef581e9cf50a6c1afc80ed04bb086488e TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1130413006
* Remove GrGLVertexArray from GrGpuResource hierarchy.Gravatar bsalomon2015-05-13
| | | | Review URL: https://codereview.chromium.org/1137093002
* GLProgramsTest 3.0Gravatar joshualitt2015-05-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1139743002