aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkScan_Hairline.cpp
diff options
context:
space:
mode:
authorGravatar reed <reed@chromium.org>2015-04-10 20:39:19 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-04-10 20:39:19 -0700
commit054eef2b5ca84bf5b03e5ddba0c30055f5e474cc (patch)
treeecd07f4f7b2b44f2260d353b8ec9fca5ac0e27ac /src/core/SkScan_Hairline.cpp
parent94164944f88972e7fd555170ca94536a70db1515 (diff)
change hairline procs to take SkPoint by value, more efficient on SSE and NEON
Diffstat (limited to 'src/core/SkScan_Hairline.cpp')
-rw-r--r--src/core/SkScan_Hairline.cpp22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/core/SkScan_Hairline.cpp b/src/core/SkScan_Hairline.cpp
index bd597b3d68..8cce57b8c9 100644
--- a/src/core/SkScan_Hairline.cpp
+++ b/src/core/SkScan_Hairline.cpp
@@ -40,8 +40,7 @@ static bool canConvertFDot6ToFixed(SkFDot6 x) {
}
#endif
-void SkScan::HairLineRgn(const SkPoint& pt0, const SkPoint& pt1,
- const SkRegion* clip, SkBlitter* blitter) {
+void SkScan::HairLineRgn(SkPoint pt0, SkPoint pt1, const SkRegion* clip, SkBlitter* blitter) {
SkBlitterClipper clipper;
SkRect r;
SkIRect clipR, ptsR;
@@ -210,8 +209,7 @@ static int compute_int_quad_dist(const SkPoint pts[3]) {
}
}
-typedef void (*LineProc)(const SkPoint&, const SkPoint&, const SkRegion*,
- SkBlitter*);
+typedef void (*LineProc)(SkPoint, SkPoint, const SkRegion*, SkBlitter*);
static void hairquad(const SkPoint pts[3], const SkRegion* clip,
SkBlitter* blitter, int level, LineProc lineproc) {
@@ -257,8 +255,8 @@ static int compute_quad_level(const SkPoint pts[3]) {
return level;
}
-static void hair_path(const SkPath& path, const SkRasterClip& rclip,
- SkBlitter* blitter, LineProc lineproc) {
+static void hair_path(const SkPath& path, const SkRasterClip& rclip, SkBlitter* blitter,
+ LineProc lineproc) {
if (path.isEmpty()) {
return;
}
@@ -321,13 +319,11 @@ static void hair_path(const SkPath& path, const SkRasterClip& rclip,
}
}
-void SkScan::HairPath(const SkPath& path, const SkRasterClip& clip,
- SkBlitter* blitter) {
+void SkScan::HairPath(const SkPath& path, const SkRasterClip& clip, SkBlitter* blitter) {
hair_path(path, clip, blitter, SkScan::HairLineRgn);
}
-void SkScan::AntiHairPath(const SkPath& path, const SkRasterClip& clip,
- SkBlitter* blitter) {
+void SkScan::AntiHairPath(const SkPath& path, const SkRasterClip& clip, SkBlitter* blitter) {
hair_path(path, clip, blitter, SkScan::AntiHairLineRgn);
}
@@ -368,8 +364,7 @@ void SkScan::FrameRect(const SkRect& r, const SkPoint& strokeSize,
SkScan::FillRect(tmp, clip, blitter);
}
-void SkScan::HairLine(const SkPoint& p0, const SkPoint& p1,
- const SkRasterClip& clip, SkBlitter* blitter) {
+void SkScan::HairLine(SkPoint p0, SkPoint p1, const SkRasterClip& clip, SkBlitter* blitter) {
if (clip.isBW()) {
HairLineRgn(p0, p1, &clip.bwRgn(), blitter);
} else {
@@ -389,8 +384,7 @@ void SkScan::HairLine(const SkPoint& p0, const SkPoint& p1,
}
}
-void SkScan::AntiHairLine(const SkPoint& p0, const SkPoint& p1,
- const SkRasterClip& clip, SkBlitter* blitter) {
+void SkScan::AntiHairLine(SkPoint p0, SkPoint p1, const SkRasterClip& clip, SkBlitter* blitter) {
if (clip.isBW()) {
AntiHairLineRgn(p0, p1, &clip.bwRgn(), blitter);
} else {