Go to file
commit-bot@chromium.org 9772a52f0d Minor sk_memset{16|32}_SSE2 optimization.
Using explicitly indexed references allows some compilers to generate more efficient loops. For gcc 4.6.3:

613c18: 83 ea 10 sub $0x10,%edx
613c1b: 66 0f 7f 07 movdqa %xmm0,(%rdi)
613c1f: 66 0f 7f 47 10 movdqa %xmm0,0x10(%rdi)
613c24: 66 0f 7f 47 20 movdqa %xmm0,0x20(%rdi)
613c29: 66 0f 7f 47 30 movdqa %xmm0,0x30(%rdi)
613c2e: 48 83 c7 40 add $0x40,%rdi
613c32: 83 fa 0f cmp $0xf,%edx
613c35: 7f e1 jg 613c18 <_Z16sk_memset32_SSE2Pjji+0x38>

vs. previous:

613c18: 83 ea 10 sub $0x10,%edx
613c1b: 66 0f 7f 07 movdqa %xmm0,(%rdi)
613c1f: 66 0f 7f 47 10 movdqa %xmm0,0x10(%rdi)
613c24: 66 0f 7f 47 20 movdqa %xmm0,0x20(%rdi)
613c29: 48 83 c7 40 add $0x40,%rdi
613c2d: 83 fa 0f cmp $0xf,%edx
613c30: 66 0f 7f 47 f0 movdqa %xmm0,-0x10(%rdi)
613c35: 7f e1 jg 613c18 <_Z16sk_memset32_SSE2Pjji+0x38>


This yields a 0.2% - 1% improvement with the memset micro benchmarks, presumably due to avoiding a stall on the next store after the %rdi increment.

R=reed@google.com, senorblanco@chromium.org

Author: fmalita@chromium.org

Review URL: https://chromiumcodereview.appspot.com/21703003

git-svn-id: http://skia.googlecode.com/svn/trunk@10545 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-05 20:25:57 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench N7 Performance trigger rebaselines 2013-08-04 15:00:58 +00:00
debugger Support MSAA in the picture debugger 2013-08-02 13:59:50 +00:00
expectations New baselines for imagefiltersgraph GM after r10482. 2013-08-01 18:33:03 +00:00
experimental pdfviewer: add virtual destructor for SkPdfFont 2013-08-05 18:18:06 +00:00
forth Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm Create AJAX live-viewer of expected-vs-actual GM results 2013-08-02 19:08:52 +00:00
gyp Revert "Add blend optimization helpers and use to convert rect draws to clears." 2013-08-05 18:27:23 +00:00
include Revert "Add blend optimization helpers and use to convert rect draws to clears." 2013-08-05 18:27:23 +00:00
platform_tools add remote debugging support for x86 phone 2013-08-02 15:14:24 +00:00
resources More general GM for testing bitmap filtering, including checkerboards, images, and text. 2013-05-31 12:50:39 +00:00
samplecode Add Loop Blinn hairline conics to GPU 2013-08-01 17:09:11 +00:00
src Minor sk_memset{16|32}_SSE2 optimization. 2013-08-05 20:25:57 +00:00
tests Temporarily disable GpuTestPath. 2013-08-05 14:50:31 +00:00
third_party Update freetype to version 2.5.0.1 when building it from source. 2013-07-23 15:51:12 +00:00
tools Delete image-based rebaselining tool; we have switched to checksums 2013-08-02 20:54:46 +00:00
trybots_to_run/chrome Deleting the hardcoded list of compile bots in trybots_to_run. 2013-04-09 11:59:42 +00:00
.gitignore leading slash confuses non-git tools that read .gitignore, like ag 2013-07-30 17:23:01 +00:00
codereview.settings Removing blank lines from codereview.settings. 2013-02-26 16:01:21 +00:00
DEPS Adds poppler and dependencies to DEPS. This is a pre-CL for 20220002, and getting DEPS committed first is necessary to get the trybots to run on the larger CL (since the trybots do 'gclient sync' before patching). 2013-08-02 19:10:06 +00:00
Doxyfile Pointing to http://skia-autogen.googlecode.com/svn/docs/html/index.html in Doxyfile 2012-07-03 11:35:07 +00:00
gyp_skia Allow use of SKIA_OUT on Windows 2013-07-10 19:07:56 +00:00
LICENSE Manually update copyright notices in files that defied the automated process 2011-07-28 14:24:55 +00:00
make.bat Make make.bat and gyp_skia work with VS 2012. 2013-05-07 19:31:20 +00:00
make.py Use SKIA_OUT variable in make.py 2013-07-23 15:45:50 +00:00
Makefile SkHello for NaCl 2013-06-17 15:39:43 +00:00
Makefile.old Higher resolution timers for bench. 2011-06-07 19:16:02 +00:00
PRESUBMIT.py If the tree is closed then print information about contacting the sheriff. 2013-04-12 19:45:46 +00:00
README whitespace commit to trigger buildbot 2011-07-15 14:11:58 +00:00
skia.gyp gyp: generate "everything" and "most" targets instead of "all" 2012-10-25 16:32:07 +00:00
whitespace.txt Accidentally skipped buildbot runs on r10257 2013-07-23 12:20:28 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at http://code.google.com/p/skia/wiki/DocRoot