| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
BUG=71130
Review URL: http://codereview.chromium.org/6529025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77462 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6638001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77280 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6588012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76216 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
interface
Review URL: http://codereview.chromium.org/6549029
TBR=reed@google.com
Review URL: http://codereview.chromium.org/6596014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76070 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6549029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76069 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6544016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75415 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6538020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75301 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=54023
Review URL: http://codereview.chromium.org/6529019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74971 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Modify skia.gyp to account for new/removed files.
Copy defines from direct_dependent defines to regular defines (where they should have been all along).
Mirror of http://codereview.chromium.org/6519015/
Review URL: http://codereview.chromium.org/6515018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74855 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
One uses a unit square vertex buffer to do bitmap draws.
The other enables additional optimizations on generated shaders.
Review URL: http://codereview.chromium.org/6456003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74165 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=NONE
TEST=NONE
Review URL: http://codereview.chromium.org/6334042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73477 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6258018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73463 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
incremental builds in VS2010.
BUG=71130
TEST=Check that Chrome builds.
Review URL: http://codereview.chromium.org/6386019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73190 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
work on incremental builds in VS2010.
This is breaking clobber builds with this error :
e:\b\build\slave\google-chrome-rel-win\build\src\chrome_frame\iids.cc(6) : fatal error C1083: Cannot open include file: 'chrome_tab.h': No such file or directory
BUG=71130
TEST=Check that Chrome builds.
Review URL: http://codereview.chromium.org/6307018
TBR=jeanluc@chromium.org
Review URL: http://codereview.chromium.org/6347032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73124 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
incremental builds in VS2010.
BUG=71130
TEST=Check that Chrome builds.
Review URL: http://codereview.chromium.org/6307018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73121 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
convolver/scaler.
This contains the following improvements:
- Adding a few extra convolution filters on top of the existing LANCZOS3 (used
internally in Chrome), and BOX (used in unit tests):
- LANCZOS2: a variation of LANCZOS3 except that the windowed function is
limited to the [-2:2] range.
- HAMMING1: this uses a Hamming window using the [-1:-1] range.
If we define the zoom down factor to z, and w the size of the window,
the actual cost of each filter (CPU wise) is proportional to (w * 2 * z + 1).
So, if we look at what happens when you zoom down by a factor of 4 (as often
found when creating thumbnails), the cost would be 25 for LANCZOS3,
17 for LANCZOS2, and 9 for HAMMING.
As a result, HAMMING1 can end up be roughly three times as fast as the typical
LANCZOS3.
In terms of visual quality, HAMMING1 will be obviously worse than filters that
have a larger window.
The motivation of this change is that not all processors are equally equipped,
and while LANCZOS3 does provide good quality, it will be completely inadequate
in speed on slower processors (as found on Google TV), and it would be worth
trading some visual quality for speed.
Because the definitions of what is acceptable from one platform to another will
differ, this change adds generic enums describing various trade offs between
quality and speed. And depending on the platform, these would then be mapped
to different filters. This change does not contain the other changes made to
the all the call sites to transform LANCZOS3 to the appropriate enum. Another
CL will have to be checked in for the policy definition.
- Improvements in speed by around 10% (the actual speed up depends on the
parameters of the scale (scale ratios, sizes of images), as well as the actual
processor on which this is run on. The 10% was measured on scale down of
1920x1080 images to 1920/4x1080/4 using the LANCZOS3 filter on a 32bit Atom
based using the image_operations_bench. Actual numbers for a 64bit processor
are discussed below.
This optimization attempts to basically eliminate all zeroes on each side of
the filter_size, since it is very likely that the calculated window will go one
fraction of a pixel outside of the window where the function is actuall not
zero. In many cases, this means it gets rid the convolution by one point. So,
using the math above, (w * 2 * z + 1) will have 1 subtracted. The code though
is generic and will get rid of more points if possible.
- To measure speed, a small utility image_operations_bench was added. Its
purpose is to simply measure speed of the actual speed of the convolution
without any regards to the actual data. Run with --help for a list of options.
The actual measured number is in MB/s (source MB + dest MB / time).
The following numbers were found on a 64 bit Release build on a z600:
| zero optimization |
Filter | no | yes |
Hamming1 | 459 | 495 |
Lanczos2 | 276 | 294 |
Lanczos3 | 202 | 207 |
The command line was:
for i in HAMMING1 LANCZOS2 LANCZOS3 ; do echo $i; out/Release/image_operations_bench -source 1920x1080 -destination 480x270 -m $i -iter 50 ; done
The actual improvements for the zero optimization mentioned above are much
more prevalent on a 32bit Atom.
- Commented that there is half-pixel error inside the code in image_operations.
Because this would effectively changes the results of many scales that are
used in win_layout tests, this would effectively break them. As a result, the
change here only adds comments about what needs to be changed, but does not
fix the issue itself. A subsequent change will remove the comments and enable
the fix, and also adds the corrected reference images used for the test.
See bug 69999: http://code.google.com/p/chromium/issues/detail?id=69999
- Enhanced the convolver to support arbitrary strides, instead of the hard
coded 4 * width. This value is correct on most platforms, but is not on
GoogleTV since buffers allocated need to be 32 pixel multiples to exploit HW
capabilities.
- Added numerous unit tests to cover the new filters as well as adding other
ones that are more rigourous than the existing ones. Such a test is the reason,
we have found the half pixel error mentioned above.
TEST=This was tested against the existing unit tests, and the added unit tests on
a 64 bit Linux platform. The tests were then ran under valgrind to check for
possible memory leaks/ and errors. The tests do come out clean (except the
preexisting file descriptor 'leaks' coming from other tests that are linked
with test_shell_tests
Actual credit to most of the actual changes go to various contributors of the
Google TV team.
Note that there are two types of optimizations that are possible beyond these
changes that are not done here:
1/ Use the fact that the filter coefficients will be periodic to reduce the cost
of calculating the coefficients (though typically in the noise), but rather when
the convolution is done to decrease cache misses on the coefficients.
Experiments showed that on an Atom, this can yield 5 % improvement.
2/ This code is the prime target for the use of SIMD instructions.
BUG=47447, 62820, 69999
Patch by evannier@google.com
Original review http://codereview.chromium.org/5575010/
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73110 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
First Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=72978
Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=72990
Review URL: http://codereview.chromium.org/6279014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73059 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6279014
TBR=vandebo@chromium.org
Review URL: http://codereview.chromium.org/6258024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72990 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6279014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72978 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
and headers -- in particular we need to export the reference to the chrome
specific glconfig file (GrGLConfig_chrome.h)
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6297012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72174 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
preparation for experimenting with them to gpu-accelerate various aspects of
chrome's drawing. In this initial patch, the files will be built, but not
called.
Now with dependency on gpu lib for sharedlib build on linux
TEST=be sure that page rendering, and <canvas> rendering, look the same as before
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=71998
Review URL: http://codereview.chromium.org/6357006
Patch from Mike Reed <reed@google.com>.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72103 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit r71998. It was committed by error by the commit bot.
BUG=
TEST=
Review URL: http://codereview.chromium.org/6351011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72000 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
preparation for experimenting with them to gpu-accelerate various aspects of
chrome's drawing. In this initial patch, the files will be built, but not
called.
TEST=be sure that page rendering, and <canvas> rendering, look the same as before
Review URL: http://codereview.chromium.org/6357006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71998 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add gpu/ files from the public skia project into the chrome build. This is in
preparation for experimenting with them to gpu-accelerate various aspects of
chrome's drawing. In this initial patch, the files will be built, but not
called.
BUG=none
TEST=be sure that page rendering, and <canvas> rendering, look the same as before
Review URL: http://codereview.chromium.org/6357006
TBR=senorblanco@chromium.org
Review URL: http://codereview.chromium.org/6329014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71986 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add gpu/ files from the public skia project into the chrome build. This is in
preparation for experimenting with them to gpu-accelerate various aspects of
chrome's drawing. In this initial patch, the files will be built, but not
called.
BUG=none
TEST=be sure that page rendering, and <canvas> rendering, look the same as before
Review URL: http://codereview.chromium.org/6357006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71982 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I need r666 (r667 and r668 are build fixes for r666. r673 fixes a regression that was introduced in r637 – found by the chromium trybots).
Some code changes required due to r637, which changed the signature of a pure virtual method and the signatures of several non-virtual methods. I added OVERRIDEs on windows to let this be a compile error in the future.
I also added SkBitmapCache.h/cpp to the gyp file which was added in r655. SkGradientShader depends on this.
BUG=none
TEST=none
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=70693
Review URL: http://codereview.chromium.org/6081006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70835 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
This reverts "roll skia 636:673", it broke webkit tests. I will re-checkin with suppressions later, and then update baselines after that.
TBR=jar
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70700 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I need r666 (r667 and r668 are build fixes for r666. r673 fixes a regression that was introduced in r637 – found by the chromium trybots).
Some code changes required due to r637, which changed the signature of a pure virtual method and the signatures of several non-virtual methods. I added OVERRIDEs on windows to let this be a compile error in the future.
I also added SkBitmapCache.h/cpp to the gyp file which was added in r655. SkGradientShader depends on this.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6081006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70693 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WebKit was relying on Skia to export Harfbuzz include paths.
Now that WebKit is fixed to explicitly depend on Harfbuzz,
we can remove the Skia export.
BUG=68551
TEST=still compiles
Review URL: http://codereview.chromium.org/6063008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70536 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Though we build two libraries here, we always use them together,
and it simplifies the gyp files to have one.
BUG=68551
TEST=compiles
Review URL: http://codereview.chromium.org/5986015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70448 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
used outside of Chrome.
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/5981006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69970 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/4842001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66494 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none - high CPU usage of locks
TEST=run chrome on Atom-based device, run perf, check that sk_atomic_inc/dec isn't hot
Review URL: http://codereview.chromium.org/3441031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60543 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Looks like ARM work and some refactoring.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3432012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60235 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To build, set the clang=1 gyp_define.
This patch is the culmination of many months of effort and many
patches. It contains the minimal changes to Chrome that
are Clang-specific.
With this, I can build the "chrome" target. Once this patch
is in, we can incrementally fix bits of Chrome and various
tests and remove the Clang-specific workarounds.
Review URL: http://codereview.chromium.org/522020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59882 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
so it's implemented on all platforms. This makes the method
available on Linux+Mac, while removing
BitmapPlatformDevice::processPixels from Mac (doesn't appear to
be used anywhere).
Review URL: http://codereview.chromium.org/3227007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58274 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
I'm trying to share some common code between the platforms so
I'm starting by merging into a common header file.
Review URL: http://codereview.chromium.org/3212009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58034 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
TBR=thakis@chromium.org
Review URL: http://codereview.chromium.org/2825006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50002 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49982 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/1480002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47327 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also includes Evan's patch: http://codereview.chromium.org/1611033
This roll sits after a revert to Skia's hairline change so,
hopefully, doesn't need any rebaselines. The try servers mostly agree
although there's one (clip-path-text-and-shape.svg on Windows) that I
need to keep on eye on. (That's why I'm landing this before MTV is
active.)
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45696 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
For ffmpeg, I copied the "arm" configs (which include neon) into "arm-neon" configs, and changed HAVE_NEON=1 to 0 in the existing ones. Also, I removed the explicit cflags in ffmpeg.gyp since they are already set in common.gypi
Review URL: http://codereview.chromium.org/660067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40163 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
http://codereview.chromium.org/660063 ), r=me.
BUG=22853
TEST=none
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40083 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TEST=compiles
BUG=30101
Patch by James Choi <jchoi42@pha.jhu.edu>.
Review URL: http://codereview.chromium.org/606075
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39362 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use a simple round rect for the visual treatment.
Add some rect conversion utils.
http://crbug.com/34509
TEST=none
Review URL: http://codereview.chromium.org/597012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38856 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use a simple round rect for the visual treatment.
Add some rect conversion utils.
http://crbug.com/34509
TEST=none
Review URL: http://codereview.chromium.org/597012
TBR=ben@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38834 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use a simple round rect for the visual treatment.
Add some rect conversion utils.
http://crbug.com/34509
TEST=none
Review URL: http://codereview.chromium.org/597012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38828 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/565043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38079 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/542028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36094 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35471 0039d316-1c4b-4281-b951-d872f2087c98
|