Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(346)

Issue 154163: Vectorization of memset_16 and memset32; improved use of -msse2

Can't Edit
Can't Publish+Mail
Start Review
Created:
15 years, 1 month ago by Stephen White
Modified:
15 years, 1 month ago
Reviewers:
reed
Base URL:
http://skia.googlecode.com/svn/trunk/
Visibility:
Public.

Description

This CL continues the SSE-ificiation of Skia. 1) SSE2-ifies sk_memset16 and sk_memset32. This required making them into factory functions, with stubs that are swapped out on first call if SSE2 is present. In order to avoid introducing overhead for Android, I left that code as-is (ie., sk_memset32 is still a macro for Android). 2) Improves use of -msse2: when this flag is present, gcc may generate SSE2 instructions even for scalar code. For this reason, all of the CPUID and factory functions had to be moved out of the _SSE2 files, into a new file (opts_check_SSE2.cpp). Only the _SSE2 files should be compiled with -msse2. 3) Don't compile the CPUID code for gcc under x86_64. Since x86_64 has SSE2 by definition, simply return true.

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+304 lines, -79 lines) Patch
Makefile View 2 chunks +6 lines, -0 lines 0 comments Download
include/core/SkUtils.h View 3 chunks +6 lines, -3 lines 0 comments Download
src/core/SkUtils.cpp View 1 chunk +21 lines, -0 lines 0 comments Download
src/opts/SkBlitRow_opts_SSE2.h View 1 chunk +30 lines, -0 lines 0 comments Download
src/opts/SkBlitRow_opts_SSE2.cpp View 5 chunks +11 lines, -74 lines 0 comments Download
src/opts/SkUtils_opts_SSE2.h View 1 chunk +21 lines, -0 lines 0 comments Download
src/opts/SkUtils_opts_SSE2.cpp View 1 chunk +77 lines, -0 lines 0 comments Download
src/opts/SkUtils_opts_none.cpp View 1 chunk +26 lines, -0 lines 0 comments Download
src/opts/opts_check_SSE2.cpp View 1 chunk +104 lines, -0 lines 0 comments Download
src/opts/opts_files.mk View 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 2
Stephen White
15 years, 1 month ago (2009-11-16 17:53:42 UTC) #1
reed
15 years, 1 month ago (2009-11-16 20:36:48 UTC) #2
LGTM
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b