aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar reed <reed@chromium.org>2014-10-01 07:21:23 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-10-01 07:21:23 -0700
commitd9c42f71c391baa23c5ed5934444077e96a68638 (patch)
tree9abd8904b80b7da44e76ae5fe1d116ba6042a3af /src
parent24e430ff321bcd07c736e9bc70d06c444ab5a9ca (diff)
optimize setRectFan and join -- from profiling drawText
BUG=skia: NOTREECHECKS=True NOTRY=True Review URL: https://codereview.chromium.org/615993003
Diffstat (limited to 'src')
-rw-r--r--src/core/SkPoint.cpp10
-rw-r--r--src/core/SkRect.cpp11
2 files changed, 5 insertions, 16 deletions
diff --git a/src/core/SkPoint.cpp b/src/core/SkPoint.cpp
index 5fee0e80c2..2970e35c54 100644
--- a/src/core/SkPoint.cpp
+++ b/src/core/SkPoint.cpp
@@ -43,16 +43,6 @@ void SkPoint::setIRectFan(int l, int t, int r, int b, size_t stride) {
SkIntToScalar(t));
}
-void SkPoint::setRectFan(SkScalar l, SkScalar t, SkScalar r, SkScalar b,
- size_t stride) {
- SkASSERT(stride >= sizeof(SkPoint));
-
- ((SkPoint*)((intptr_t)this + 0 * stride))->set(l, t);
- ((SkPoint*)((intptr_t)this + 1 * stride))->set(l, b);
- ((SkPoint*)((intptr_t)this + 2 * stride))->set(r, b);
- ((SkPoint*)((intptr_t)this + 3 * stride))->set(r, t);
-}
-
void SkPoint::rotateCW(SkPoint* dst) const {
SkASSERT(dst);
diff --git a/src/core/SkRect.cpp b/src/core/SkRect.cpp
index 2814375abb..12f76526a5 100644
--- a/src/core/SkRect.cpp
+++ b/src/core/SkRect.cpp
@@ -146,8 +146,7 @@ bool SkRect::intersect(const SkRect& a, const SkRect& b) {
return false;
}
-void SkRect::join(SkScalar left, SkScalar top, SkScalar right,
- SkScalar bottom) {
+void SkRect::join(SkScalar left, SkScalar top, SkScalar right, SkScalar bottom) {
// do nothing if the params are empty
if (left >= right || top >= bottom) {
return;
@@ -157,9 +156,9 @@ void SkRect::join(SkScalar left, SkScalar top, SkScalar right,
if (fLeft >= fRight || fTop >= fBottom) {
this->set(left, top, right, bottom);
} else {
- if (left < fLeft) fLeft = left;
- if (top < fTop) fTop = top;
- if (right > fRight) fRight = right;
- if (bottom > fBottom) fBottom = bottom;
+ fLeft = SkMinScalar(fLeft, left);
+ fTop = SkMinScalar(fTop, top);
+ fRight = SkMaxScalar(fRight, right);
+ fBottom = SkMaxScalar(fBottom, bottom);
}
}