Commit Graph

3904 Commits

Author SHA1 Message Date
reed@google.com
0d10280190 We often rgn-diff an area >= the other rgn. now we detect that and return empty
We do this when we update our devices in SkCanvas.cpp
Review URL: https://codereview.appspot.com/6249073

git-svn-id: http://skia.googlecode.com/svn/trunk@4101 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 18:28:59 +00:00
bsalomon@google.com
6f6efa90c4 Add glTexParameteriv to MESA GrGLInterface (missing from r4099)
git-svn-id: http://skia.googlecode.com/svn/trunk@4100 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 18:09:11 +00:00
bsalomon@google.com
4d063dea5e Add glTexParameteriv to GL interface
Comitted on behalf of jin.a.yang@intel.com

Review URL: http://codereview.appspot.com/6213069/



git-svn-id: http://skia.googlecode.com/svn/trunk@4099 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 17:59:23 +00:00
robertphillips@google.com
d414406073 Windows compiler complaint cleanup
http://codereview.appspot.com/6262047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4098 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:29:44 +00:00
epoger@google.com
be6188d647 skdiff: return nonzero exit value if there are any mismatches
This will allow us to replace "gm -r" in our buildbots with "skdiff".  This will speed things up, and work around http://code.google.com/p/skia/issues/detail?id=473 ('PDF gradtext gm image results are nondeterministic')
Review URL: https://codereview.appspot.com/6242071

git-svn-id: http://skia.googlecode.com/svn/trunk@4097 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:13:45 +00:00
epoger@google.com
76222c0ef2 skdiff: internally track lists of ALL result types, not just baseMissing and comparisonMissing
This does not change skdiff output at all; verified using tools/tests/run.sh
Review URL: https://codereview.appspot.com/6260057

git-svn-id: http://skia.googlecode.com/svn/trunk@4096 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:12:09 +00:00
bsalomon@google.com
5739d2c168 Merge GrGpuGLShaders into its parent class, GrGpuGL
Review URL: http://codereview.appspot.com/6245076/



git-svn-id: http://skia.googlecode.com/svn/trunk@4095 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:07:19 +00:00
tomhudson@google.com
67794f5e37 Fix typo in r4092.
git-svn-id: http://skia.googlecode.com/svn/trunk@4094 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 14:31:14 +00:00
tomhudson@google.com
111755936d Use element-by-element assignment in GrSamplerState::operator= instead of memcpy
so that we can handle refcounting correctly.

http://codereview.appspot.com/6262049/



git-svn-id: http://skia.googlecode.com/svn/trunk@4092 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 14:23:28 +00:00
bsalomon@google.com
9aabfc789e Use a single GrDrawState in GrContext for direct and buffered drawing
Review URL: http://codereview.appspot.com/5933043



git-svn-id: http://skia.googlecode.com/svn/trunk@4091 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 14:12:46 +00:00
epoger@google.com
f123ba9e21 Disable TLSTest for now, to work around http://code.google.com/p/skia/issues/detail?id=619
Review URL: https://codereview.appspot.com/6259056

git-svn-id: http://skia.googlecode.com/svn/trunk@4090 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 13:54:51 +00:00
caryclark@google.com
495f8e435b shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@4089 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 13:13:11 +00:00
bsalomon@google.com
13f1b6f156 Add a bunch of SK_OVERRIDES and remove and unused function
Review URL: http://codereview.appspot.com/6245072/



git-svn-id: http://skia.googlecode.com/svn/trunk@4088 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 12:52:43 +00:00
caryclark@google.com
e5720e3202 suppress warning on Mac
http://codereview.appspot.com/6245070/

M    gyp/common_conditions.gypi



git-svn-id: http://skia.googlecode.com/svn/trunk@4087 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 12:39:18 +00:00
epoger@google.com
8e4e51d69b test-only: add test coverage of skdiff over input with identical bits or pixels
Review URL: https://codereview.appspot.com/6260055

git-svn-id: http://skia.googlecode.com/svn/trunk@4084 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 19:12:45 +00:00
tomhudson@google.com
23cb2299dd Condense setupFSUnis, setupVSUnis, setupVaryings into
GrGLProgramStage::setupVariables().
Rename appendVarying() to addVarying(), matching addUniform().

http://codereview.appspot.com/6262046/



git-svn-id: http://skia.googlecode.com/svn/trunk@4083 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 18:26:03 +00:00
bsalomon@google.com
02154c7390 Remove a couple things missed when deleting the tessellated path renderer
Review URL: http://codereview.appspot.com/6249070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4082 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 18:13:23 +00:00
tomhudson@google.com
242ed6fb6c Encapsulate code required to create a uniform var into a single function on
GrGLShaderBuilder. This isolates internal dependencies from somebody
writing a CustomStage.

http://codereview.appspot.com/6248050/



git-svn-id: http://skia.googlecode.com/svn/trunk@4081 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 17:38:57 +00:00
djsollen@google.com
d2700eec7e Refactor dictionaries for use by entities other than just SkPicture
Review URL: https://codereview.appspot.com/6101043

git-svn-id: http://skia.googlecode.com/svn/trunk@4077 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 16:54:13 +00:00
djsollen@google.com
dde718c558 Add bench to test the performance of creating a picture.
Review URL: https://codereview.appspot.com/6258062

git-svn-id: http://skia.googlecode.com/svn/trunk@4076 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 16:50:11 +00:00
robertphillips@google.com
00bf06a142 Added cast to get MathTest working on Windows
git-svn-id: http://skia.googlecode.com/svn/trunk@4072 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 15:19:17 +00:00
robertphillips@google.com
d32369e745 Added knowledge of GL_RED textures to debugGLReadPixels
http://codereview.appspot.com/6257070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4071 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 14:46:10 +00:00
reed@google.com
f3a8d8e0ff apply 10.p+32 -> (float)(1 << 23) fix from MathTest here as well
windows can't eat the former syntax



git-svn-id: http://skia.googlecode.com/svn/trunk@4070 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 14:08:57 +00:00
digit@google.com
eec9dbcace arm: First step towards dynamic NEON support.
This patch adds minimal support for dynamic ARM NEON support,
i.e. the ability to probe the CPU at runtime for NEON and
provide alternate code paths when it is available.

- Add include/core/SkUtilsArm.h, which declares a few helper
  macros (e.g. SK_NEON_ARM_IS_DYNAMIC), plus the handy
  function 'sk_cpu_arm_has_neon()' which returns true if
  the target CPU supports the ARM NEON instruction set.

  Note that the header is in include/core/ because it will
  have to be included from NEON-specific code under src/code/

  It would probably be more logical to put it under include/opts/
  instead, but this would require moving all the NEON-specific
  stuff under src/code/ into src/opts/, which is not trivial
  due to the way the code is currently architected.

- Add src/core/SkUtilsArm.cpp which implements
  'sk_cpu_arm_has_neon' for ARM-based Linux systems, only
  when SK_NEON_ARM_IS_DYNAMIC is true.

  (For other cases, 'sk_cpu_arm_has_neon' is an inline function
   that returns a constant 'true' or 'false' value).

  There is no user-level accessible CPUID instruction on ARM,
  so do all CPU feature probing by parsing /proc/cpuinfo.
  This is Linux-specific.

  For Debug build types, the CPU probing result is printed
  to the Android log (or Linux command-line) for easier
  debugging.

- Create a new 'opts_neon' target (static library) which shall
  contain all the NEON-specific code paths for the library.

  This is necessary because -mfpu=neon impacts also non-scalar
  code. Just like with -mssse3 on x86, we can't build the rest
  of the library with this flag.

  Note that for now, we only include memset16_neon and
  memset32_neon in this library.

- Modify opts_check_arm.cpp to implement SK_ARM_NEON_IS_DYNAMIC
  properly.

Compared to a 'xoom' build, the only difference is the use of
NEON-optimized memset16/32 functions. Later patches will move
more NEON-specific code paths to 'opts_neon'.
Review URL: https://codereview.appspot.com/6247058

git-svn-id: http://skia.googlecode.com/svn/trunk@4069 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 13:54:41 +00:00
reed@google.com
c20bc25b6e use (float)(1 << 23) instead of 1.0p+23 since the latter isn't supported in VS
git-svn-id: http://skia.googlecode.com/svn/trunk@4068 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 13:48:14 +00:00
reed@google.com
c3b697298e win can't eat 1.0p+23 syntax for floats :(
git-svn-id: http://skia.googlecode.com/svn/trunk@4067 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:43:59 +00:00
reed@google.com
a7d7461cf0 remove debugf
git-svn-id: http://skia.googlecode.com/svn/trunk@4066 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:30:09 +00:00
reed@google.com
7f19241adb add bench for floor variants
git-svn-id: http://skia.googlecode.com/svn/trunk@4065 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:26:52 +00:00
robertphillips@google.com
e9b3f7dba0 Fixed small bug in shader generation
http://codereview.appspot.com/6259053/



git-svn-id: http://skia.googlecode.com/svn/trunk@4064 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:26:39 +00:00
epoger@google.com
6dbf6cde3b svndiff: report added and deleted files, not just modified files
Review URL: https://codereview.appspot.com/6260052

git-svn-id: http://skia.googlecode.com/svn/trunk@4063 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 21:28:12 +00:00
reed@google.com
3ec68f047a special-case dashing a single line-segment. We can go much faster since we
can apply the stroke as we go, eliminating the generic stroker.
Review URL: https://codereview.appspot.com/6250070

git-svn-id: http://skia.googlecode.com/svn/trunk@4062 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 20:48:50 +00:00
reed@google.com
744fabad47 addPoly() entry-point, to quickly add MoveTo+N*LineTo (useful in dashing)
Review URL: https://codereview.appspot.com/6256063

git-svn-id: http://skia.googlecode.com/svn/trunk@4061 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 19:54:52 +00:00
bsalomon@google.com
4196c0e0e8 Fix line ending, mark svn:eol-style LF
git-svn-id: http://skia.googlecode.com/svn/trunk@4060 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 19:44:14 +00:00
junov@chromium.org
8661baeb39 Fixing a reader size overflow with SkOrderedReadBuffer, when unflattening large bitmaps.
REVIEW=http://codereview.appspot.com/6250054/



git-svn-id: http://skia.googlecode.com/svn/trunk@4059 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 16:53:04 +00:00
epoger@google.com
47d3599669 Update list of trybots used by https://goto.google.com/HowToLandSkiaChangesThatChangeWebkitLayoutTests
TBR=reed
Review URL: https://codereview.appspot.com/6250071

git-svn-id: http://skia.googlecode.com/svn/trunk@4058 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 15:33:30 +00:00
reed@google.com
8b06f1a7ff Detect when the caller was hairline AND strokeandfill, and resolve that into FILL
This fixes the unittests on WIN in the trybot for DEPS roll 4048
Review URL: https://codereview.appspot.com/6242057

git-svn-id: http://skia.googlecode.com/svn/trunk@4057 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 12:03:46 +00:00
mike@reedtribe.org
398b1bcb7d add SkPoint::isZero(), match the existing method on SkIPoint
git-svn-id: http://skia.googlecode.com/svn/trunk@4055 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 01:40:15 +00:00
robertphillips@google.com
c077d1eaa8 Rolling back 4053
git-svn-id: http://skia.googlecode.com/svn/trunk@4054 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-28 14:10:15 +00:00
robertphillips@google.com
ab303ef6e8 Speculative fix for Android Debug only crash in r4049
http://codereview.appspot.com/6251049/



git-svn-id: http://skia.googlecode.com/svn/trunk@4053 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-28 13:37:25 +00:00
epoger@google.com
2e0a061c09 Add svndiff tool: runs skdiff over all pending changes in SVN checkout
This is needed for 
https://goto.google.com/HowToLandSkiaChangesThatChangeWebkitLayoutTests ,
and will be generally useful beyond that too.
Review URL: https://codereview.appspot.com/6256052

git-svn-id: http://skia.googlecode.com/svn/trunk@4052 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 19:48:05 +00:00
robertphillips@google.com
ac2c666e27 Rolling back r4049
git-svn-id: http://skia.googlecode.com/svn/trunk@4051 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 12:46:55 +00:00
robertphillips@google.com
57f0b62b52 Whitespace change - could not reproduce r4049's Debug Android failure locally
git-svn-id: http://skia.googlecode.com/svn/trunk@4050 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 12:26:30 +00:00
robertphillips@google.com
837576bf89 Altered GrDrawState to always ref textures and render target
http://codereview.appspot.com/6251049/



git-svn-id: http://skia.googlecode.com/svn/trunk@4049 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 11:45:40 +00:00
reed@google.com
fd4be26c42 Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and
if stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6250051

git-svn-id: http://skia.googlecode.com/svn/trunk@4048 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 01:04:12 +00:00
reed@google.com
d3521f1a8d revert 4046 -- GM:pathfill failed on one bot, maybe uninitialized memory somewhere?
git-svn-id: http://skia.googlecode.com/svn/trunk@4047 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:32:22 +00:00
reed@google.com
9797272edf Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and if
stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6249050

git-svn-id: http://skia.googlecode.com/svn/trunk@4046 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:13:57 +00:00
tomhudson@google.com
5259814305 Move swizzle & modulation computation, non-virtual functions onto
GrGLShaderBuilder. This lets us access all the default computations
when there's no GrCustomStage specified, and means that GrGLProgramStage
is effectively an interface class, all of whose functions can/should
be overriden.

http://codereview.appspot.com/6242051/



git-svn-id: http://skia.googlecode.com/svn/trunk@4045 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 17:44:30 +00:00
reed@google.com
3fd979874c add baselines for macpro
git-svn-id: http://skia.googlecode.com/svn/trunk@4044 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 16:28:11 +00:00
reed@google.com
434d467e92 add baselines for macpro
git-svn-id: http://skia.googlecode.com/svn/trunk@4043 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 16:25:13 +00:00
reed@google.com
7f40631b72 add baselines for macpro
git-svn-id: http://skia.googlecode.com/svn/trunk@4042 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 16:22:53 +00:00