diff options
author | mtklein <mtklein@chromium.org> | 2015-02-26 12:48:05 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-26 12:48:05 -0800 |
commit | 24aa0f0679d5299b394bcb62b1c4430e4cd34c65 (patch) | |
tree | 4101cac8b70bb03c7eb3ccf7c31f693248b1d197 /src/core/Sk4x_sse.h | |
parent | 2719552fb1469b9697a3ee8b15a537044fa6dd96 (diff) |
Add sqrt() and rsqrt() to Sk4f.
This doesn't add them to the second-stringer Sk4i. It's unclear we should be
doing that often, and we don't have efficient ways to do it except via floats.
BUG=skia:
Review URL: https://codereview.chromium.org/964603002
Diffstat (limited to 'src/core/Sk4x_sse.h')
-rw-r--r-- | src/core/Sk4x_sse.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/Sk4x_sse.h b/src/core/Sk4x_sse.h index ee09f77449..6077d0273d 100644 --- a/src/core/Sk4x_sse.h +++ b/src/core/Sk4x_sse.h @@ -99,6 +99,9 @@ M(Sk4f) subtract(const Sk4f& o) const { return _mm_sub_ps(fVec, o.fVec); } M(Sk4f) multiply(const Sk4f& o) const { return _mm_mul_ps(fVec, o.fVec); } M(Sk4f) divide (const Sk4f& o) const { return _mm_div_ps(fVec, o.fVec); } +M(Sk4f) rsqrt() const { return _mm_rsqrt_ps(fVec); } +M(Sk4f) sqrt() const { return _mm_sqrt_ps( fVec); } + M(Sk4i) equal (const Sk4f& o) const { return _mm_cmpeq_ps (fVec, o.fVec); } M(Sk4i) notEqual (const Sk4f& o) const { return _mm_cmpneq_ps(fVec, o.fVec); } M(Sk4i) lessThan (const Sk4f& o) const { return _mm_cmplt_ps (fVec, o.fVec); } |