Commit Graph

14768 Commits

Author SHA1 Message Date
scroggo
b61e206138 Add tests (and fix!) for known bad ICO files.
We previously saw crashes decoding bad ICO files. Add tests for
known bad files.

While testing, I learned that one of them still crashes. Check for
large offset and size separately to fix the crash.

BUG=skia:2878

Review URL: https://codereview.chromium.org/712123002
2014-11-10 13:12:25 -08:00
jvanverth
428b2a5a4f Re-enable no-longer-flaky GMs
TBR=jcgregorio@google.com

Review URL: https://codereview.chromium.org/684413004
2014-11-10 12:12:55 -08:00
bsalomon
fe369ee34b Move GrResourceKey static functions from .h to .cpp to fix shared lib builds
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/718493002
2014-11-10 11:59:06 -08:00
bsalomon
8b79d23f82 Use GrResourceCache2 to service content key lookups
BUG=skia:2889

Review URL: https://codereview.chromium.org/707493002
2014-11-10 10:19:06 -08:00
halcanary
8e74b1565c Fix SkTime::GetDateTime Posix implementation, add unit test.
The year was off by 1900

Review URL: https://codereview.chromium.org/714633002
2014-11-10 09:20:22 -08:00
reed
7c74885e01 flag imageinfo as srgb
intended uses:
- flag a SkSurface as sRGB (only supported by Ganesh for now)
- flag images (e.g. png or jpeg) as sRGB if the codec tells us that

wins:
- faster gamma-correct text (esp. w/ distance-fields) when we can use sRGB for text
- better color fidelity when the screen really is sRGB

Review URL: https://codereview.chromium.org/676883003
2014-11-10 08:57:21 -08:00
robertphillips
6beeb8f3cc Small refactoring of layer discovery code
This CL removes CollectLayers' reliance on having the top most picture (by removing the unused fPictureID member). This then allows making CollectLayers' API closer to that of SkRecordFillBounds in order to facilitate using them interchangeably.

Review URL: https://codereview.chromium.org/714533002
2014-11-10 08:48:29 -08:00
jvanverth
ebb4fa3ee3 Update some flaky GMs to see if they stick.
TBR=jcgregorio@google.com

Review URL: https://codereview.chromium.org/713893002
2014-11-10 08:27:31 -08:00
robertphillips
a63f32e879 Address MSAA rendering in layer hoisting
This became relevant whilst attempting to rebaseline the multipicturedraw GMs after turning on layer hoisting inside Skia.

Review URL: https://codereview.chromium.org/709943003
2014-11-10 08:10:42 -08:00
egdaniel
39fa278c40 Rebase verttext once more
TBR=jvanverth@google.com

BUG=skia:

Review URL: https://codereview.chromium.org/717553002
2014-11-10 08:07:37 -08:00
bungeman
336fdf2c5f With https://chromium.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20 blink_perf.layout regressed. It appears that the typeface cache is being missed. This is a partial revert of the Skia change which reverts the smallest amount of code to restore performance.
BUG=chromium:425566

Committed: https://skia.googlesource.com/skia/+/47eda52e8fb88f0725b401762a3e0bddc98e9fb3

Review URL: https://codereview.chromium.org/693213002
2014-11-10 07:48:55 -08:00
skia.buildbots
653940838e Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=

Review URL: https://codereview.chromium.org/717463002
2014-11-09 22:41:22 -08:00
fmalita
8c89c528f3 Revert of Revert of SkDrawCommand scrubbing (patchset #1 id:1 of https://codereview.chromium.org/712683002/)
Reason for revert:
Chromium clients updated, this should be canary-proof now.

Original issue's description:
> Revert of SkDrawCommand scrubbing (patchset #2 id:20001 of https://codereview.chromium.org/706363002/)
>
> Reason for revert:
> Canary borkage.
>
> Original issue's description:
> > SkDrawCommand scrubbing
> >
> > Remove unused ctor, constify, etc.
> >
> > R=robertphillips@google.com
> >
> > Committed: https://skia.googlesource.com/skia/+/1931ec5b5dac68f1e452af0c65161bdce35b2dec
>
> TBR=robertphillips@google.com
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://skia.googlesource.com/skia/+/9063ddd511f8e0d8c7454950cbc56e273678bf60

TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/708333002
2014-11-08 16:18:56 -08:00
joshualitt
4973d9da4a Default geometry processor
BUG=skia:

Committed: https://skia.googlesource.com/skia/+/ff343074b2a3fdaa5f120600e28717e366bceadd

Review URL: https://codereview.chromium.org/678953002
2014-11-08 09:24:25 -08:00
joshualitt
270582f156 rebasing some gms
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/713633002
2014-11-08 07:09:38 -08:00
jvanverth
3c10c0d444 Reignore some tests that use distance fields
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/708173002
2014-11-07 14:57:13 -08:00
egdaniel
25ae66e96f Rebase for win7 x86 gpu
TBR=bsalomon@google.com

BUG=skia:

Review URL: https://codereview.chromium.org/708153002
2014-11-07 14:22:57 -08:00
joshualitt
4b68ec08c6 simple cl to cleanup friends in GrGpu
BUG=skia:

Review URL: https://codereview.chromium.org/709003006
2014-11-07 14:11:45 -08:00
jvanverth
2b07443a58 Make gpudft non-default config for gm
Review URL: https://codereview.chromium.org/692153003
2014-11-07 13:49:49 -08:00
egdaniel
79fc22316c Finish rebase from df and add baseline images for n10 debug
TBR=jvanverth@google.com

BUG=skia:

Review URL: https://codereview.chromium.org/705353003
2014-11-07 13:19:22 -08:00
joshualitt
f4e5e3394f cleaning up geometry handling in gpu
BUG=skia:

Review URL: https://codereview.chromium.org/707953004
2014-11-07 12:58:47 -08:00
egdaniel
b48af0e999 Rebaseline s4 gms
TBR=bsalomon@google.com

BUG=skia:

Review URL: https://codereview.chromium.org/712693002
2014-11-07 12:56:36 -08:00
cdalton
c4650ee786 Update GrTRecorder to preserve memory allocations
Rather than freeing almost all of its memory on calls to reset(), this
change updates GrTRecorder so it keeps around enough to satisfy the
storage requirements from last time, plus up to ~50% growth. This is
based on the assumption that subsequent draw calls require roughly the
same amount of memory.

BUG=skia:

Review URL: https://codereview.chromium.org/684203003
2014-11-07 12:51:19 -08:00
fmalita
9063ddd511 Revert of SkDrawCommand scrubbing (patchset #2 id:20001 of https://codereview.chromium.org/706363002/)
Reason for revert:
Canary borkage.

Original issue's description:
> SkDrawCommand scrubbing
>
> Remove unused ctor, constify, etc.
>
> R=robertphillips@google.com
>
> Committed: https://skia.googlesource.com/skia/+/1931ec5b5dac68f1e452af0c65161bdce35b2dec

TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/712683002
2014-11-07 12:26:46 -08:00
fmalita
1931ec5b5d SkDrawCommand scrubbing
Remove unused ctor, constify, etc.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/706363002
2014-11-07 12:09:20 -08:00
joshualitt
ee0ea3f0dd Revert of Default geometry processor (patchset #9 id:160001 of https://codereview.chromium.org/678953002/)
Reason for revert:
breaks nexus 5

Original issue's description:
> Default geometry processor
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/ff343074b2a3fdaa5f120600e28717e366bceadd

TBR=bsalomon@google.com,joshualitt@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/691313003
2014-11-07 12:08:03 -08:00
joshualitt
ff343074b2 Default geometry processor
BUG=skia:

Review URL: https://codereview.chromium.org/678953002
2014-11-07 11:47:10 -08:00
reed
7a72c6702d add patch and clicktracking to lua
BUG=skia:

Review URL: https://codereview.chromium.org/712613002
2014-11-07 10:23:55 -08:00
jvanverth
0c533a8731 One more attempt at rebaselining
TBR=egdaniel@google.com
NOTREECHECKS=true

Review URL: https://codereview.chromium.org/708903006
2014-11-07 10:17:37 -08:00
derekf
32f80ca382 Mesa ES 3.0 requires sized internal formats
Mesa's ES 3.0 implementation requires GL_R8 as an internal format instead
of GL_RED

Review URL: https://codereview.chromium.org/705183002
2014-11-07 09:39:27 -08:00
jvanverth
044134b969 Missed some expectations
TBR=egdaniel@google.com

Review URL: https://codereview.chromium.org/705293002
2014-11-07 08:50:16 -08:00
joshualitt
3322fa432a Refactor DrawTarget and GPU to be independent
BUG=skia:

Review URL: https://codereview.chromium.org/705593002
2014-11-07 08:48:51 -08:00
jvanverth
6f1cad4030 Rebaseline for https://codereview.chromium.org/703463002/.
TBR=egdaniel@google.com

Review URL: https://codereview.chromium.org/709043002
2014-11-07 08:16:49 -08:00
reed
d23f45d047 document the SkStrAppend methods
BUG=skia:

Review URL: https://codereview.chromium.org/709063002
2014-11-07 07:37:33 -08:00
jvanverth
4736e1434a Get gpudft support working in dm, gm, nanobench and bench_pictures
Adds a new config to test distance field text.
Clean up some flags and #defines to read "distance field text",
not "distance field fonts" to be consistent with Chromium

NOTREECHECKS=true

Committed: https://skia.googlesource.com/skia/+/06ba179838ba4fe187cf290750aeeb4a02a2960b

Review URL: https://codereview.chromium.org/699453005
2014-11-07 07:12:46 -08:00
skia.buildbots
7376b6a1a1 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=

Review URL: https://codereview.chromium.org/693583003
2014-11-07 06:12:39 -08:00
tfarina
a71d3af100 Cleanup: Use SkAutoGraphics in gm and tests.
BUG=None
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/704413002
2014-11-07 06:12:30 -08:00
scroggo
0ee2627026 When running DM, write test failures to json.
Add skiatest::Failure to keep track of data about a test failure.

Reporter::reportFailed and ::onReportFailed now take Failure as a
parameter. This allows the implementation to treat the failure as it
wishes. Provide a helper to format the failure the same as prior to
the change.

Update the macros for calling reportFailed (REPORTER_ASSERT etc) to
create a Failure object.

Convert a direct call to reportFailed to the macro ERRORF.

Write Failures to Json.
Sample output when running dm on the dummy test crrev.com/705723004:
{
   "test_results" : {
      "failures" : [
         {
            "condition" : "0 > 3",
            "file_name" : "../../tests/DummyTest.cpp",
            "line_no" : 10,
            "message" : ""
         },
         {
            "condition" : "false",
            "file_name" : "../../tests/DummyTest.cpp",
            "line_no" : 4,
            "message" : ""
         },
         {
            "condition" : "1 == 3",
            "file_name" : "../../tests/DummyTest.cpp",
            "line_no" : 5,
            "message" : "I can too count!"
         },
         {
            "condition" : "",
            "file_name" : "../../tests/DummyTest.cpp",
            "line_no" : 6,
            "message" : "seven is 7"
         },
         {
            "condition" : "1 == 3",
            "file_name" : "../../tests/DummyTest.cpp",
            "line_no" : 14,
            "message" : "I can too count!"
         }
      ]
   }
}

Report all of the failures from one test.
Previously, if one test had multiple failures, only one was reportered.
e.g:

Failures:
  test Dummy: ../../tests/DummyTest.cpp:6   seven is 7
  test Dummy2: ../../tests/DummyTest.cpp:10 0 > 3
  test Dummy3: ../../tests/DummyTest.cpp:14 I can too count!: 1 == 3
3 failures.

Now, we get all the messages:

Failures:
  test Dummy: ../../tests/DummyTest.cpp:4   false
        ../../tests/DummyTest.cpp:5 I can too count!: 1 == 3
        ../../tests/DummyTest.cpp:6 seven is 7
  test Dummy2: ../../tests/DummyTest.cpp:10 0 > 3
  test Dummy3: ../../tests/DummyTest.cpp:14 I can too count!: 1 == 3
3 failures.

(Note that we still state "3 failures" because 3 DM::Tasks failed.)

BUG=skia:3082
BUG=skia:2454

Review URL: https://codereview.chromium.org/694703005
2014-11-07 06:07:32 -08:00
halcanary
f0de423f09 for X in {Dec,BigDec,Scalar}, SkWStream::write"X"AsText no longer mallocs
Review URL: https://codereview.chromium.org/706063002
2014-11-07 06:07:23 -08:00
scroggo
978d37b343 Add LOCAL_PICKUP_FILES to dm and bench makefiles.
Update the generator to include a line for LOCAL_PICKUP_FILES. When
generating makefiles for our tests, they will now have the following line:

LOCAL_PICKUP_FILES := \
    $(LOCAL_PATH)/../resources

This allows testing infrastructure to pick up resource files used by
our tests.

Update expectations files to test LOCAL_PICKUP_FILES.

BUG=skia:2454

Review URL: https://codereview.chromium.org/704393002
2014-11-07 06:02:20 -08:00
cdalton
38e13adc18 Remove 1d glyph positions from nvpr text
Removes the case for x-only glyph positions from nvpr text, opting to
always send 2d glyph positions instead. The 1d glyph positions saved a
bit on memory bandwidth, but ended up a net loss because they required
more updates to the view matrix. Now we can draw an entire paragraph
without touching the GL state, whereas before we would have to update
the view matrix at every new line.

BUG=skia:

Review URL: https://codereview.chromium.org/700283002
2014-11-07 06:02:15 -08:00
jvanverth
aa30ab3079 Revert of Get gpudft support working in dm, gm, nanobench and bench_pictures (patchset #2 id:20001 of https://codereview.chromium.org/699453005/)
Reason for revert:
Not compiling in ANGLE build

Original issue's description:
> Get gpudft support working in dm, gm, nanobench and bench_pictures
>
> Adds a new config to test distance field text.
> Clean up some flags and #defines to read "distance field text",
> not "distance field fonts" to be consistent with Chromium
>
> NOTREECHECKS=true
>
> Committed: https://skia.googlesource.com/skia/+/06ba179838ba4fe187cf290750aeeb4a02a2960b

TBR=bsalomon@google.com,mtklein@google.com,reed@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/707723005
2014-11-06 13:52:45 -08:00
jvanverth
06ba179838 Get gpudft support working in dm, gm, nanobench and bench_pictures
Adds a new config to test distance field text.
Clean up some flags and #defines to read "distance field text",
not "distance field fonts" to be consistent with Chromium

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/699453005
2014-11-06 13:38:52 -08:00
joshualitt
2c93efeb6f Clip in grdrawtarget
NOTREECHECKS=true
BUG=skia:

Review URL: https://codereview.chromium.org/685883003
2014-11-06 12:57:13 -08:00
mtklein
2ecf86e55e Revert of Revert of Turn on NVPR 4x MSAA by default when supported in DM and nanobench. (patchset #1 id:1 of https://codereview.chromium.org/693933004/)
Reason for revert:
Try again with loops overflow fix landed.

Original issue's description:
> Revert of Turn on NVPR 4x MSAA by default when supported in DM and nanobench. (patchset #2 id:20001 of https://codereview.chromium.org/704563003/)
>
> Reason for revert:
> Timing out on nvpr when drawing conics. Fix will take some thought so reverting for now.
>
> Original issue's description:
> > Turn on NVPR 4x MSAA by default when supported in DM and nanobench.
> >
> > This brings DM and nanobench's default configs in line with GM's.
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/31f88675718966bbb7f09718b40de10c7e214739
>
> TBR=bsalomon@google.com,mtklein@google.com,mtklein@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d5cd4ee5b81b51e43be7ed13f3c0f0f6c1b3fe14

TBR=bsalomon@google.com,mtklein@chromium.org,egdaniel@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/685923003
2014-11-06 08:06:39 -08:00
mtklein
527930fdbb Detect loops overflow for gpu benches.
NOTREECHECKS=true

BUG=skia:

Review URL: https://codereview.chromium.org/709473002
2014-11-06 08:04:35 -08:00
egdaniel
e27065ae24 Send coverage VA as floats instead of bytes
NOTREECHECKS=True

BUG=skia:

Review URL: https://codereview.chromium.org/700943005
2014-11-06 08:00:48 -08:00
skia.buildbots
cdccd75925 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=

Review URL: https://codereview.chromium.org/701363002
2014-11-05 23:19:12 -08:00
bsalomon
3343557421 Add mock context and use in ResourceCacheTest.
BUG=skia:2889

Committed: https://skia.googlesource.com/skia/+/820dd6c335411aad889c1d7e8a857642ecd87e30

Review URL: https://codereview.chromium.org/702083003
2014-11-05 14:47:42 -08:00
egdaniel
d5cd4ee5b8 Revert of Turn on NVPR 4x MSAA by default when supported in DM and nanobench. (patchset #2 id:20001 of https://codereview.chromium.org/704563003/)
Reason for revert:
Timing out on nvpr when drawing conics. Fix will take some thought so reverting for now.

Original issue's description:
> Turn on NVPR 4x MSAA by default when supported in DM and nanobench.
>
> This brings DM and nanobench's default configs in line with GM's.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/31f88675718966bbb7f09718b40de10c7e214739

TBR=bsalomon@google.com,mtklein@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/693933004
2014-11-05 14:21:33 -08:00