1 /*
2 * Copyright 2012 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7 #include "include/core/SkPath.h"
8 #include "include/pathops/SkPathOps.h"
9 #include "src/base/SkFloatBits.h"
10 #include "tests/PathOpsExtendedTest.h"
11 #include "tests/Test.h"
12
13 #include <cstddef>
14 #include <iterator>
15
16 enum class SkPathFillType;
17
18 #define TEST(name) { name, #name }
19
issue414409(skiatest::Reporter * reporter,const char * filename)20 static void issue414409(skiatest::Reporter* reporter, const char* filename) {
21 SkPath path1, path2;
22
23 // one fill 1
24 path1.moveTo(9.53595e-07f, -60);
25 path1.lineTo(5.08228e-15f, -83);
26 path1.cubicTo(32.8673f, -83, 62.6386f, -63.6055f, 75.9208f, -33.5416f);
27 path1.cubicTo(89.2029f, -3.47759f, 83.4937f, 31.5921f, 61.3615f, 55.8907f);
28 path1.lineTo(46.9383f, 68.4529f);
29 path1.lineTo(33.9313f, 49.484f);
30 path1.cubicTo(37.7451f, 46.8689f, 41.2438f, 43.8216f, 44.3577f, 40.4029f);
31 path1.lineTo(44.3577f, 40.4029f);
32 path1.cubicTo(60.3569f, 22.8376f, 64.4841f, -2.51392f, 54.8825f, -24.2469f);
33 path1.cubicTo(45.2809f, -45.9799f, 23.7595f, -60, 9.53595e-07f, -60);
34 path1.close();
35
36 // two fill 0
37 path2.moveTo(46.9383f, 68.4529f);
38 path2.cubicTo(17.5117f, 88.6307f, -21.518f, 87.7442f, -49.9981f, 66.251f);
39 path2.cubicTo(-78.4781f, 44.7578f, -90.035f, 7.46781f, -78.7014f, -26.3644f);
40 path2.cubicTo(-67.3679f, -60.1967f, -35.6801f, -83, -1.48383e-06f, -83);
41 path2.lineTo(4.22689e-14f, -60);
42 path2.cubicTo(-25.7929f, -60, -48.6997f, -43.5157f, -56.8926f, -19.0586f);
43 path2.cubicTo(-65.0855f, 5.39842f, -56.7312f, 32.355f, -36.1432f, 47.8923f);
44 path2.cubicTo(-15.5552f, 63.4296f, 12.6591f, 64.0704f, 33.9313f, 49.484f);
45 path2.lineTo(46.9383f, 68.4529f);
46 path2.close();
47 testPathOp(reporter, path1, path2, kUnion_SkPathOp, filename);
48 }
49
issue414409b(skiatest::Reporter * reporter,const char * filename)50 static void issue414409b(skiatest::Reporter* reporter, const char* filename) {
51 SkPath path1, path2;
52 // one fill=0 op=2
53 path1.setFillType((SkPathFillType) 0);
54 path1.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
55 path1.cubicTo(SkBits2Float(0x41f12edc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4267b362), SkBits2Float(0xc2854e1f), SkBits2Float(0x42911faa), SkBits2Float(0xc2212f3b));
56 path1.cubicTo(SkBits2Float(0x42ae65a2), SkBits2Float(0xc15f08de), SkBits2Float(0x42acc913), SkBits2Float(0x41923f59), SkBits2Float(0x428ce9f0), SkBits2Float(0x422f7dc4));
57 path1.lineTo(SkBits2Float(0x424bbb16), SkBits2Float(0x41fdb8ed));
58 path1.cubicTo(SkBits2Float(0x4279cf6e), SkBits2Float(0x41537137), SkBits2Float(0x427c23ea), SkBits2Float(0xc1213ad2), SkBits2Float(0x4251d142), SkBits2Float(0xc1e909ae));
59 path1.cubicTo(SkBits2Float(0x42277e9a), SkBits2Float(0xc240baf8), SkBits2Float(0x41ae5968), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
60 path1.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
61 path1.close();
62
63 path2.setFillType((SkPathFillType) 1);
64 path2.moveTo(SkBits2Float(0x428ce9ef), SkBits2Float(0x422f7dc6));
65 path2.cubicTo(SkBits2Float(0x4286af43), SkBits2Float(0x42437fa7), SkBits2Float(0x427ed0d6), SkBits2Float(0x42561f5a), SkBits2Float(0x426e69d2), SkBits2Float(0x42670c39));
66 path2.lineTo(SkBits2Float(0x422c58d6), SkBits2Float(0x422705c1));
67 path2.cubicTo(SkBits2Float(0x42383446), SkBits2Float(0x421ac98f), SkBits2Float(0x4242b98a), SkBits2Float(0x420d5308), SkBits2Float(0x424bbb17), SkBits2Float(0x41fdb8ee));
68 path2.lineTo(SkBits2Float(0x428ce9ef), SkBits2Float(0x422f7dc6));
69 path2.close();
70 testPathOp(reporter, path1, path2, kUnion_SkPathOp, filename);
71 }
72
issue414409c(skiatest::Reporter * reporter,const char * filename)73 static void issue414409c(skiatest::Reporter* reporter, const char* filename) {
74 SkPath path1, path2;
75 path1.setFillType((SkPathFillType) 1);
76 path1.moveTo(SkBits2Float(0x36961ef0), SkBits2Float(0xc2700000));
77 path1.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
78 path1.cubicTo(SkBits2Float(0x3df86648), SkBits2Float(0xc2a60000), SkBits2Float(0x3e786777), SkBits2Float(0xc2a5ffdc), SkBits2Float(0x3eba4dc2), SkBits2Float(0xc2a5ff96));
79 path1.lineTo(SkBits2Float(0x3eba4dc3), SkBits2Float(0xc2a5ff97));
80 path1.cubicTo(SkBits2Float(0x3ec08370), SkBits2Float(0xc2a5ff8f), SkBits2Float(0x3ec6b964), SkBits2Float(0xc2a5ff88), SkBits2Float(0x3eccef58), SkBits2Float(0xc2a5ff80));
81 path1.lineTo(SkBits2Float(0x3e942522), SkBits2Float(0xc26fff49));
82 path1.cubicTo(SkBits2Float(0x3e8fa7da), SkBits2Float(0xc26fff56), SkBits2Float(0x3e8b2acd), SkBits2Float(0xc26fff61), SkBits2Float(0x3e86adc0), SkBits2Float(0xc26fff6b));
83 path1.lineTo(SkBits2Float(0x3e86ad6a), SkBits2Float(0xc26fff69));
84 path1.cubicTo(SkBits2Float(0x3e3391e9), SkBits2Float(0xc26fffce), SkBits2Float(0x3db3931e), SkBits2Float(0xc2700000), SkBits2Float(0x36961ef0), SkBits2Float(0xc2700000));
85 path1.close();
86
87 path2.setFillType((SkPathFillType) 0);
88 path2.moveTo(SkBits2Float(0x3eccef1a), SkBits2Float(0xc2a5ff81));
89 path2.cubicTo(SkBits2Float(0x3f18c8a9), SkBits2Float(0xc2a5ff04), SkBits2Float(0x3f4b19b0), SkBits2Float(0xc2a5fe2d), SkBits2Float(0x3f7d6a37), SkBits2Float(0xc2a5fcfa));
90 path2.lineTo(SkBits2Float(0x3f3730f2), SkBits2Float(0xc26ffba1));
91 path2.cubicTo(SkBits2Float(0x3f12d1c8), SkBits2Float(0xc26ffd5d), SkBits2Float(0x3edce4b4), SkBits2Float(0xc26ffe95), SkBits2Float(0x3e942577), SkBits2Float(0xc26fff49));
92 path2.lineTo(SkBits2Float(0x3eccef1a), SkBits2Float(0xc2a5ff81));
93 path2.close();
94
95 testPathOp(reporter, path1, path2, kUnion_SkPathOp, filename);
96 }
97
98 // fails to draw correctly
battleOp1(skiatest::Reporter * reporter,const char * filename)99 static void battleOp1(skiatest::Reporter* reporter, const char* filename) {
100 SkPath path;
101 path.setFillType((SkPathFillType) 0);
102 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
103 path.cubicTo(SkBits2Float(0x3ea4d9f5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f24d9a9), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f774519), SkBits2Float(0xc2a5fd1f));
104 path.lineTo(SkBits2Float(0x3f32bfc3), SkBits2Float(0xc26ffbd7));
105 path.cubicTo(SkBits2Float(0x3eee5669), SkBits2Float(0xc26ffe9e), SkBits2Float(0x3e6e56cc), SkBits2Float(0xc2700000), SkBits2Float(0x357ffb40), SkBits2Float(0xc2700000));
106 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
107 path.close();
108
109 SkPath path1(path);
110 path.reset();
111 path.setFillType((SkPathFillType) 0);
112 path.moveTo(SkBits2Float(0x3f774503), SkBits2Float(0xc2a5fd1f));
113 path.cubicTo(SkBits2Float(0x3f7f82ff), SkBits2Float(0xc2a5fcee), SkBits2Float(0x3f83e06d), SkBits2Float(0xc2a5fcbb), SkBits2Float(0x3f87ff59), SkBits2Float(0xc2a5fc85));
114 path.lineTo(SkBits2Float(0x3f449f80), SkBits2Float(0xc26ffaf7));
115 path.cubicTo(SkBits2Float(0x3f3eaa52), SkBits2Float(0xc26ffb47), SkBits2Float(0x3f38b4f5), SkBits2Float(0xc26ffb92), SkBits2Float(0x3f32bf98), SkBits2Float(0xc26ffbd9));
116 path.lineTo(SkBits2Float(0x3f774503), SkBits2Float(0xc2a5fd1f));
117 path.close();
118
119 SkPath path2(path);
120 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
121 }
122 // op end success 1
123
battleOp2(skiatest::Reporter * reporter,const char * filename)124 static void battleOp2(skiatest::Reporter* reporter, const char* filename) {
125 SkPath path;
126 path.setFillType((SkPathFillType) 1);
127 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
128 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
129 path.cubicTo(SkBits2Float(0x3ea4d9e6), SkBits2Float(0xc2a60000), SkBits2Float(0x3f24d99a), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f774503), SkBits2Float(0xc2a5fd1f));
130
131 SkPath path1(path);
132 path.reset();
133 path.setFillType((SkPathFillType) 0);
134 path.moveTo(SkBits2Float(0x3f87ff64), SkBits2Float(0xc2a5fc85));
135 path.cubicTo(SkBits2Float(0x3fcac720), SkBits2Float(0xc2a5f91a), SkBits2Float(0x4006c62a), SkBits2Float(0xc2a5f329), SkBits2Float(0x40282667), SkBits2Float(0xc2a5eab4));
136 path.lineTo(SkBits2Float(0x3ff31bb9), SkBits2Float(0xc26fe136));
137 path.cubicTo(SkBits2Float(0x3fc2da88), SkBits2Float(0xc26fed71), SkBits2Float(0x3f9295ff), SkBits2Float(0xc26ff607), SkBits2Float(0x3f449f66), SkBits2Float(0xc26ffaf9));
138 path.lineTo(SkBits2Float(0x3f87ff64), SkBits2Float(0xc2a5fc85));
139 path.close();
140
141 SkPath path2(path);
142 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
143 }
144 // op end success 1
145
battleOp3(skiatest::Reporter * reporter,const char * filename)146 static void battleOp3(skiatest::Reporter* reporter, const char* filename) {
147 SkPath path;
148 path.setFillType((SkPathFillType) 0);
149 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
150 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e2fa), SkBits2Float(0xc2a5f5f7));
151 path.lineTo(SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d));
152 path.cubicTo(SkBits2Float(0x3f5e8ed4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fc6), SkBits2Float(0xc2700000), SkBits2Float(0x35d9fd64), SkBits2Float(0xc2700000));
153 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
154 path.close();
155
156 SkPath path1(path);
157 path.reset();
158 path.setFillType((SkPathFillType) 0);
159 path.moveTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7));
160 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db));
161 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71));
162 path.cubicTo(SkBits2Float(0x3fb20800), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac77ff), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d));
163 path.lineTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7));
164 path.close();
165
166 SkPath path2(path);
167 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
168 }
169 // op end success 1
170
battleOp4(skiatest::Reporter * reporter,const char * filename)171 static void battleOp4(skiatest::Reporter* reporter, const char* filename) {
172 SkPath path;
173 path.setFillType((SkPathFillType) 1);
174 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
175 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
176 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7));
177 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db));
178 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71));
179 path.cubicTo(SkBits2Float(0x3fb20808), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac780f), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d));
180 path.lineTo(SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d));
181 path.cubicTo(SkBits2Float(0x3f5e8eb4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fa6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
182 path.close();
183
184 SkPath path1(path);
185 path.reset();
186 path.setFillType((SkPathFillType) 0);
187 path.moveTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db));
188 path.cubicTo(SkBits2Float(0x403d5556), SkBits2Float(0xc2a5e7ed), SkBits2Float(0x407ba65a), SkBits2Float(0xc2a5d338), SkBits2Float(0x409cf3fe), SkBits2Float(0xc2a5b5bc));
189 path.lineTo(SkBits2Float(0x4062eb8a), SkBits2Float(0xc26f94a1));
190 path.cubicTo(SkBits2Float(0x4035ea63), SkBits2Float(0xc26fbf44), SkBits2Float(0x4008de16), SkBits2Float(0xc26fdd35), SkBits2Float(0x3fb79810), SkBits2Float(0xc26fee74));
191 path.lineTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db));
192 path.close();
193
194 SkPath path2(path);
195 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
196 }
197 // op end success 1
198
battleOp5(skiatest::Reporter * reporter,const char * filename)199 static void battleOp5(skiatest::Reporter* reporter, const char* filename) {
200 SkPath path;
201 path.setFillType((SkPathFillType) 0);
202 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
203 path.cubicTo(SkBits2Float(0x3fe06a9b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40606368), SkBits2Float(0xc2a5e38e), SkBits2Float(0x40a82f8a), SkBits2Float(0xc2a5aab6));
204 path.lineTo(SkBits2Float(0x40732902), SkBits2Float(0xc26f84b2));
205 path.cubicTo(SkBits2Float(0x4022355b), SkBits2Float(0xc26fd6e1), SkBits2Float(0x3fa23a8f), SkBits2Float(0xc2700000), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000));
206 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
207 path.close();
208
209 SkPath path1(path);
210 path.reset();
211 path.setFillType((SkPathFillType) 0);
212 path.moveTo(SkBits2Float(0x40a82f91), SkBits2Float(0xc2a5aab7));
213 path.cubicTo(SkBits2Float(0x40adc8dc), SkBits2Float(0xc2a5a508), SkBits2Float(0x40b361d8), SkBits2Float(0xc2a59f10), SkBits2Float(0x40b8fa82), SkBits2Float(0xc2a598d0));
214 path.lineTo(SkBits2Float(0x4085b825), SkBits2Float(0xc26f6ad0));
215 path.cubicTo(SkBits2Float(0x4081ac7b), SkBits2Float(0xc26f73dc), SkBits2Float(0x407b412c), SkBits2Float(0xc26f7c7c), SkBits2Float(0x407328f8), SkBits2Float(0xc26f84b3));
216 path.lineTo(SkBits2Float(0x40a82f91), SkBits2Float(0xc2a5aab7));
217 path.close();
218
219 SkPath path2(path);
220 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
221 }
222 // op end success 1
223
battleOp6(skiatest::Reporter * reporter,const char * filename)224 static void battleOp6(skiatest::Reporter* reporter, const char* filename) {
225 SkPath path;
226 path.setFillType((SkPathFillType) 1);
227 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
228 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
229 path.cubicTo(SkBits2Float(0x3fe06a9b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40606368), SkBits2Float(0xc2a5e38e), SkBits2Float(0x40a82f91), SkBits2Float(0xc2a5aab7));
230 path.cubicTo(SkBits2Float(0x40adc8dc), SkBits2Float(0xc2a5a508), SkBits2Float(0x40b361d8), SkBits2Float(0xc2a59f10), SkBits2Float(0x40b8fa82), SkBits2Float(0xc2a598d0));
231 path.lineTo(SkBits2Float(0x4085b825), SkBits2Float(0xc26f6ad0));
232 path.cubicTo(SkBits2Float(0x4081ac7d), SkBits2Float(0xc26f73dc), SkBits2Float(0x407b4133), SkBits2Float(0xc26f7c7c), SkBits2Float(0x40732902), SkBits2Float(0xc26f84b2));
233 path.cubicTo(SkBits2Float(0x4022355b), SkBits2Float(0xc26fd6e1), SkBits2Float(0x3fa23a8f), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
234 path.close();
235 path.moveTo(SkBits2Float(0x408fea52), SkBits2Float(0xc28dc28a));
236 path.lineTo(SkBits2Float(0x407328f8), SkBits2Float(0xc26f84b3));
237 path.lineTo(SkBits2Float(0x40732903), SkBits2Float(0xc26f84b3));
238 path.lineTo(SkBits2Float(0x408fea52), SkBits2Float(0xc28dc28a));
239 path.close();
240
241 SkPath path1(path);
242 path.reset();
243 path.setFillType((SkPathFillType) 0);
244 path.moveTo(SkBits2Float(0x40b8fa77), SkBits2Float(0xc2a598d0));
245 path.cubicTo(SkBits2Float(0x4109d7e9), SkBits2Float(0xc2a5337c), SkBits2Float(0x4137014a), SkBits2Float(0xc2a483b2), SkBits2Float(0x4163cbb6), SkBits2Float(0xc2a38a24));
246 path.lineTo(SkBits2Float(0x4124abf0), SkBits2Float(0xc26c715c));
247 path.cubicTo(SkBits2Float(0x41044af8), SkBits2Float(0xc26dda2b), SkBits2Float(0x40c74ab0), SkBits2Float(0xc26ed852), SkBits2Float(0x4085b82e), SkBits2Float(0xc26f6ad1));
248 path.lineTo(SkBits2Float(0x40b8fa77), SkBits2Float(0xc2a598d0));
249 path.close();
250
251 SkPath path2(path);
252 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
253 }
254
battleOp7(skiatest::Reporter * reporter,const char * filename)255 static void battleOp7(skiatest::Reporter* reporter, const char* filename) {
256 SkPath path;
257 path.setFillType((SkPathFillType) 0);
258 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
259 path.cubicTo(SkBits2Float(0x3de5c884), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e65c882), SkBits2Float(0xc2a5ffe2), SkBits2Float(0x3eac5645), SkBits2Float(0xc2a5ffa7));
260 path.lineTo(SkBits2Float(0x3e79297e), SkBits2Float(0xc26fff7f));
261 path.cubicTo(SkBits2Float(0x3e261bbd), SkBits2Float(0xc26fffd7), SkBits2Float(0x3da61bbf), SkBits2Float(0xc2700000), SkBits2Float(0xb3244c00), SkBits2Float(0xc2700000));
262 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
263 path.close();
264
265 SkPath path1(path);
266 path.reset();
267 path.setFillType((SkPathFillType) 0);
268 path.moveTo(SkBits2Float(0x3eac564d), SkBits2Float(0xc2a5ffa7));
269 path.cubicTo(SkBits2Float(0x3eb21458), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb7d2fc), SkBits2Float(0xc2a5ff9b), SkBits2Float(0x3ebd91a0), SkBits2Float(0xc2a5ff94));
270 path.lineTo(SkBits2Float(0x3e8909ff), SkBits2Float(0xc26fff64));
271 path.cubicTo(SkBits2Float(0x3e84e2cf), SkBits2Float(0xc26fff6d), SkBits2Float(0x3e80bc02), SkBits2Float(0xc26fff76), SkBits2Float(0x3e792a69), SkBits2Float(0xc26fff7f));
272 path.lineTo(SkBits2Float(0x3eac564d), SkBits2Float(0xc2a5ffa7));
273 path.close();
274
275 SkPath path2(path);
276 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
277 }
278 // op end success 1
279
battleOp8(skiatest::Reporter * reporter,const char * filename)280 static void battleOp8(skiatest::Reporter* reporter, const char* filename) {
281 SkPath path;
282 path.setFillType((SkPathFillType) 1);
283 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
284 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
285 path.cubicTo(SkBits2Float(0x3de5c884), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e65c882), SkBits2Float(0xc2a5ffe2), SkBits2Float(0x3eac564d), SkBits2Float(0xc2a5ffa7));
286 path.cubicTo(SkBits2Float(0x3eb21458), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb7d2fc), SkBits2Float(0xc2a5ff9b), SkBits2Float(0x3ebd91a0), SkBits2Float(0xc2a5ff94));
287 path.lineTo(SkBits2Float(0x3e8909ff), SkBits2Float(0xc26fff64));
288 path.lineTo(SkBits2Float(0x3e792a69), SkBits2Float(0xc26fff7f));
289 path.cubicTo(SkBits2Float(0x3e261bbd), SkBits2Float(0xc26fffd7), SkBits2Float(0x3da61bbf), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
290 path.close();
291
292 SkPath path1(path);
293 path.reset();
294 path.setFillType((SkPathFillType) 0);
295 path.moveTo(SkBits2Float(0x3ebd921a), SkBits2Float(0xc2a5ff94));
296 path.cubicTo(SkBits2Float(0x3f0d545f), SkBits2Float(0xc2a5ff29), SkBits2Float(0x3f3bdfbd), SkBits2Float(0xc2a5fe71), SkBits2Float(0x3f6a6ab6), SkBits2Float(0xc2a5fd69));
297 path.lineTo(SkBits2Float(0x3f297558), SkBits2Float(0xc26ffc43));
298 path.cubicTo(SkBits2Float(0x3f07d00d), SkBits2Float(0xc26ffdc0), SkBits2Float(0x3ecc550f), SkBits2Float(0xc26ffecc), SkBits2Float(0x3e8909b7), SkBits2Float(0xc26fff65));
299 path.lineTo(SkBits2Float(0x3ebd921a), SkBits2Float(0xc2a5ff94));
300 path.close();
301
302 SkPath path2(path);
303 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
304 }
305 // op end success 1
306
battleOp9(skiatest::Reporter * reporter,const char * filename)307 static void battleOp9(skiatest::Reporter* reporter, const char* filename) { // crashes
308 SkPath path;
309 path.setFillType((SkPathFillType) 0);
310 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
311 path.cubicTo(SkBits2Float(0x3ecc43bf), SkBits2Float(0xc2a60000), SkBits2Float(0x3f4c4385), SkBits2Float(0xc2a5fe87), SkBits2Float(0x3f993163), SkBits2Float(0xc2a5fb95));
312 path.lineTo(SkBits2Float(0x3f5d7bc4), SkBits2Float(0xc26ff99d));
313 path.cubicTo(SkBits2Float(0x3f13a919), SkBits2Float(0xc26ffdde), SkBits2Float(0x3e93a998), SkBits2Float(0xc26fffff), SkBits2Float(0x367b7ed0), SkBits2Float(0xc26fffff));
314 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
315 path.close();
316
317 SkPath path1(path);
318 path.reset();
319 path.setFillType((SkPathFillType) 0);
320 path.moveTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95));
321 path.cubicTo(SkBits2Float(0x3f9e4c7a), SkBits2Float(0xc2a5fb49), SkBits2Float(0x3fa36794), SkBits2Float(0xc2a5fafa), SkBits2Float(0x3fa882aa), SkBits2Float(0xc2a5faa7));
322 path.lineTo(SkBits2Float(0x3f73a149), SkBits2Float(0xc26ff845));
323 path.cubicTo(SkBits2Float(0x3f6c3f64), SkBits2Float(0xc26ff8bf), SkBits2Float(0x3f64dd9d), SkBits2Float(0xc26ff931), SkBits2Float(0x3f5d7bcf), SkBits2Float(0xc26ff99f));
324 path.lineTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95));
325 path.close();
326
327 SkPath path2(path);
328 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
329 }
330
battleOp10(skiatest::Reporter * reporter,const char * filename)331 static void battleOp10(skiatest::Reporter* reporter, const char* filename) {
332 SkPath path;
333 path.setFillType((SkPathFillType) 0);
334 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
335 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59eff), SkBits2Float(0xc2a5ffac));
336 path.lineTo(SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89));
337 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0xb580e440), SkBits2Float(0xc2700000));
338 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
339 path.close();
340
341 SkPath path1(path);
342 path.reset();
343 path.setFillType((SkPathFillType) 0);
344 path.moveTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad));
345 path.cubicTo(SkBits2Float(0x3eab24c0), SkBits2Float(0xc2a5ffa7), SkBits2Float(0x3eb0aa54), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b));
346 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f));
347 path.cubicTo(SkBits2Float(0x3e7f6bdb), SkBits2Float(0xc26fff79), SkBits2Float(0x3e777021), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a));
348 path.lineTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad));
349 path.close();
350
351 SkPath path2(path);
352 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
353 }
354 // op end success 1
355
battleOp11(skiatest::Reporter * reporter,const char * filename)356 static void battleOp11(skiatest::Reporter* reporter, const char* filename) {
357 SkPath path;
358 path.setFillType((SkPathFillType) 1);
359 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
360 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
361 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad));
362 path.lineTo(SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b));
363 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f));
364 path.cubicTo(SkBits2Float(0x3e7f6bf0), SkBits2Float(0xc26fff79), SkBits2Float(0x3e77704b), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89));
365 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
366 path.close();
367 path.moveTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413));
368 path.lineTo(SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a));
369 path.lineTo(SkBits2Float(0x3e6f74a4), SkBits2Float(0xc26fff8a));
370 path.lineTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413));
371 path.close();
372
373 SkPath path1(path);
374 path.reset();
375 path.setFillType((SkPathFillType) 0);
376 path.moveTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c));
377 path.cubicTo(SkBits2Float(0x3f07d31d), SkBits2Float(0xc2a5ff3a), SkBits2Float(0x3f348e3e), SkBits2Float(0xc2a5fe8f), SkBits2Float(0x3f614904), SkBits2Float(0xc2a5fd9c));
378 path.lineTo(SkBits2Float(0x3f22db6c), SkBits2Float(0xc26ffc8c));
379 path.cubicTo(SkBits2Float(0x3f0285bf), SkBits2Float(0xc26ffdeb), SkBits2Float(0x3ec45fa5), SkBits2Float(0xc26ffee1), SkBits2Float(0x3e83b387), SkBits2Float(0xc26fff6f));
380 path.lineTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c));
381 path.close();
382
383 SkPath path2(path);
384 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
385 }
386 // op end success 1
387
battleOp12(skiatest::Reporter * reporter,const char * filename)388 static void battleOp12(skiatest::Reporter* reporter, const char* filename) { // crashed
389 SkPath path;
390 path.setFillType((SkPathFillType) 0);
391 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
392 path.cubicTo(SkBits2Float(0x3ecc43bf), SkBits2Float(0xc2a60000), SkBits2Float(0x3f4c4385), SkBits2Float(0xc2a5fe87), SkBits2Float(0x3f993163), SkBits2Float(0xc2a5fb95));
393 path.lineTo(SkBits2Float(0x3f5d7bc4), SkBits2Float(0xc26ff99d));
394 path.cubicTo(SkBits2Float(0x3f13a919), SkBits2Float(0xc26ffdde), SkBits2Float(0x3e93a998), SkBits2Float(0xc26fffff), SkBits2Float(0x367b7ed0), SkBits2Float(0xc26fffff));
395 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
396 path.close();
397
398 SkPath path1(path);
399 path.reset();
400 path.setFillType((SkPathFillType) 0);
401 path.moveTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95));
402 path.cubicTo(SkBits2Float(0x3f9e4c7a), SkBits2Float(0xc2a5fb49), SkBits2Float(0x3fa36794), SkBits2Float(0xc2a5fafa), SkBits2Float(0x3fa882aa), SkBits2Float(0xc2a5faa7));
403 path.lineTo(SkBits2Float(0x3f73a149), SkBits2Float(0xc26ff845));
404 path.cubicTo(SkBits2Float(0x3f6c3f64), SkBits2Float(0xc26ff8bf), SkBits2Float(0x3f64dd9d), SkBits2Float(0xc26ff931), SkBits2Float(0x3f5d7bcf), SkBits2Float(0xc26ff99f));
405 path.lineTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95));
406 path.close();
407
408 SkPath path2(path);
409 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
410 }
411 // ../../third_party/tcmalloc/chromium/src/free_list.h:118] Memory corruption detected.
412
battleOp13(skiatest::Reporter * reporter,const char * filename)413 static void battleOp13(skiatest::Reporter* reporter, const char* filename) {
414 SkPath path;
415 path.setFillType((SkPathFillType) 0);
416 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
417 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59eff), SkBits2Float(0xc2a5ffac));
418 path.lineTo(SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89));
419 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0xb580e440), SkBits2Float(0xc2700000));
420 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
421 path.close();
422
423 SkPath path1(path);
424 path.reset();
425 path.setFillType((SkPathFillType) 0);
426 path.moveTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad));
427 path.cubicTo(SkBits2Float(0x3eab24c0), SkBits2Float(0xc2a5ffa7), SkBits2Float(0x3eb0aa54), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b));
428 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f));
429 path.cubicTo(SkBits2Float(0x3e7f6bdb), SkBits2Float(0xc26fff79), SkBits2Float(0x3e777021), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a));
430 path.lineTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad));
431 path.close();
432
433 SkPath path2(path);
434 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
435 }
436 // op end success 1
437
battleOp14(skiatest::Reporter * reporter,const char * filename)438 static void battleOp14(skiatest::Reporter* reporter, const char* filename) {
439 SkPath path;
440 path.setFillType((SkPathFillType) 1);
441 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
442 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
443 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad));
444 path.lineTo(SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b));
445 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f));
446 path.cubicTo(SkBits2Float(0x3e7f6bf0), SkBits2Float(0xc26fff79), SkBits2Float(0x3e77704b), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89));
447 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
448 path.close();
449 path.moveTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413));
450 path.lineTo(SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a));
451 path.lineTo(SkBits2Float(0x3e6f74a4), SkBits2Float(0xc26fff8a));
452 path.lineTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413));
453 path.close();
454
455 SkPath path1(path);
456 path.reset();
457 path.setFillType((SkPathFillType) 0);
458 path.moveTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c));
459 path.cubicTo(SkBits2Float(0x3f07d31d), SkBits2Float(0xc2a5ff3a), SkBits2Float(0x3f348e3e), SkBits2Float(0xc2a5fe8f), SkBits2Float(0x3f614904), SkBits2Float(0xc2a5fd9c));
460 path.lineTo(SkBits2Float(0x3f22db6c), SkBits2Float(0xc26ffc8c));
461 path.cubicTo(SkBits2Float(0x3f0285bf), SkBits2Float(0xc26ffdeb), SkBits2Float(0x3ec45fa5), SkBits2Float(0xc26ffee1), SkBits2Float(0x3e83b387), SkBits2Float(0xc26fff6f));
462 path.lineTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c));
463 path.close();
464
465 SkPath path2(path);
466 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
467 }
468 // op end success 1
469
battleOp15(skiatest::Reporter * reporter,const char * filename)470 static void battleOp15(skiatest::Reporter* reporter, const char* filename) {
471 SkPath path;
472 path.setFillType((SkPathFillType) 0);
473 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
474 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e2fa), SkBits2Float(0xc2a5f5f7));
475 path.lineTo(SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d));
476 path.cubicTo(SkBits2Float(0x3f5e8ed4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fc6), SkBits2Float(0xc2700000), SkBits2Float(0x35d9fd64), SkBits2Float(0xc2700000));
477 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
478 path.close();
479
480 SkPath path1(path);
481 path.reset();
482 path.setFillType((SkPathFillType) 0);
483 path.moveTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7));
484 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db));
485 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71));
486 path.cubicTo(SkBits2Float(0x3fb20800), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac77ff), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d));
487 path.lineTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7));
488 path.close();
489
490 SkPath path2(path);
491 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
492 }
493 // op end success 1
494
battleOp16(skiatest::Reporter * reporter,const char * filename)495 static void battleOp16(skiatest::Reporter* reporter, const char* filename) {
496 SkPath path;
497 path.setFillType((SkPathFillType) 1);
498 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
499 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
500 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7));
501 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db));
502 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71));
503 path.cubicTo(SkBits2Float(0x3fb20808), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac780f), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d));
504 path.lineTo(SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d));
505 path.cubicTo(SkBits2Float(0x3f5e8eb4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fa6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
506 path.close();
507
508 SkPath path1(path);
509 path.reset();
510 path.setFillType((SkPathFillType) 0);
511 path.moveTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db));
512 path.cubicTo(SkBits2Float(0x403d5556), SkBits2Float(0xc2a5e7ed), SkBits2Float(0x407ba65a), SkBits2Float(0xc2a5d338), SkBits2Float(0x409cf3fe), SkBits2Float(0xc2a5b5bc));
513 path.lineTo(SkBits2Float(0x4062eb8a), SkBits2Float(0xc26f94a1));
514 path.cubicTo(SkBits2Float(0x4035ea63), SkBits2Float(0xc26fbf44), SkBits2Float(0x4008de16), SkBits2Float(0xc26fdd35), SkBits2Float(0x3fb79810), SkBits2Float(0xc26fee74));
515 path.lineTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db));
516 path.close();
517
518 SkPath path2(path);
519 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
520 }
521 // op end success 1
522
battleOp17(skiatest::Reporter * reporter,const char * filename)523 static void battleOp17(skiatest::Reporter* reporter, const char* filename) {
524 SkPath path;
525 path.setFillType((SkPathFillType) 0);
526 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
527 path.cubicTo(SkBits2Float(0x3f9860dc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40185ea2), SkBits2Float(0xc2a5f2e2), SkBits2Float(0x40647d09), SkBits2Float(0xc2a5d8aa));
528 path.lineTo(SkBits2Float(0x40252c2a), SkBits2Float(0xc26fc723));
529 path.cubicTo(SkBits2Float(0x3fdc4b47), SkBits2Float(0xc26fed09), SkBits2Float(0x3f5c4ea6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3664fea3), SkBits2Float(0xc26ffffe));
530 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
531 path.close();
532
533 SkPath path1(path);
534 path.reset();
535 path.setFillType((SkPathFillType) 0);
536 path.moveTo(SkBits2Float(0x40647d17), SkBits2Float(0xc2a5d8ab));
537 path.cubicTo(SkBits2Float(0x406c19ae), SkBits2Float(0xc2a5d60b), SkBits2Float(0x4073b608), SkBits2Float(0xc2a5d34a), SkBits2Float(0x407b5230), SkBits2Float(0xc2a5d069));
538 path.lineTo(SkBits2Float(0x4035ad90), SkBits2Float(0xc26fbb32));
539 path.cubicTo(SkBits2Float(0x40302d3b), SkBits2Float(0xc26fbf5d), SkBits2Float(0x402aacbf), SkBits2Float(0xc26fc358), SkBits2Float(0x40252c21), SkBits2Float(0xc26fc722));
540 path.lineTo(SkBits2Float(0x40647d17), SkBits2Float(0xc2a5d8ab));
541 path.close();
542
543 SkPath path2(path);
544 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
545 }
546 // op end success 1
547
battleOp18(skiatest::Reporter * reporter,const char * filename)548 static void battleOp18(skiatest::Reporter* reporter, const char* filename) {
549 SkPath path;
550 path.setFillType((SkPathFillType) 1);
551 path.moveTo(SkBits2Float(0x3664fea3), SkBits2Float(0xc26ffffe));
552 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
553 path.cubicTo(SkBits2Float(0x3f9860dc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40185ea2), SkBits2Float(0xc2a5f2e2), SkBits2Float(0x40647d17), SkBits2Float(0xc2a5d8ab));
554 path.cubicTo(SkBits2Float(0x406c19ae), SkBits2Float(0xc2a5d60b), SkBits2Float(0x4073b608), SkBits2Float(0xc2a5d34a), SkBits2Float(0x407b5230), SkBits2Float(0xc2a5d069));
555 path.lineTo(SkBits2Float(0x4035ad90), SkBits2Float(0xc26fbb32));
556 path.cubicTo(SkBits2Float(0x40302d3b), SkBits2Float(0xc26fbf5d), SkBits2Float(0x402aacbf), SkBits2Float(0xc26fc358), SkBits2Float(0x40252c2a), SkBits2Float(0xc26fc723));
557 path.cubicTo(SkBits2Float(0x3fdc4b47), SkBits2Float(0xc26fed09), SkBits2Float(0x3f5c4ea6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3664fea3), SkBits2Float(0xc26ffffe));
558 path.close();
559
560 SkPath path1(path);
561 path.reset();
562 path.setFillType((SkPathFillType) 0);
563 path.moveTo(SkBits2Float(0x407b523a), SkBits2Float(0xc2a5d069));
564 path.cubicTo(SkBits2Float(0x40bb53e8), SkBits2Float(0xc2a5a1ad), SkBits2Float(0x40f8dfd1), SkBits2Float(0xc2a5508e), SkBits2Float(0x411b1813), SkBits2Float(0xc2a4dd32));
565 path.lineTo(SkBits2Float(0x40e03b7c), SkBits2Float(0xc26e5b8f));
566 path.cubicTo(SkBits2Float(0x40b3e8bb), SkBits2Float(0xc26f0259), SkBits2Float(0x40876aeb), SkBits2Float(0xc26f77a1), SkBits2Float(0x4035ad92), SkBits2Float(0xc26fbb33));
567 path.lineTo(SkBits2Float(0x407b523a), SkBits2Float(0xc2a5d069));
568 path.close();
569
570 SkPath path2(path);
571 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
572 }
573 // op end success 1
574
battleOp19(skiatest::Reporter * reporter,const char * filename)575 static void battleOp19(skiatest::Reporter* reporter, const char* filename) {
576 SkPath path;
577 path.setFillType((SkPathFillType) 0);
578 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
579 path.cubicTo(SkBits2Float(0x40272e66), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40a7227d), SkBits2Float(0xc2a5c0db), SkBits2Float(0x40fa5a70), SkBits2Float(0xc2a542ca));
580 path.lineTo(SkBits2Float(0x40b4fa6e), SkBits2Float(0xc26eee73));
581 path.cubicTo(SkBits2Float(0x4071a3f5), SkBits2Float(0xc26fa4b8), SkBits2Float(0x3ff1b53c), SkBits2Float(0xc2700000), SkBits2Float(0x359dfd46), SkBits2Float(0xc2700000));
582 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
583 path.close();
584
585 SkPath path1(path);
586 path.reset();
587 path.setFillType((SkPathFillType) 0);
588 path.moveTo(SkBits2Float(0x40fa5a6d), SkBits2Float(0xc2a542cb));
589 path.cubicTo(SkBits2Float(0x4101563b), SkBits2Float(0xc2a5362f), SkBits2Float(0x41057ec0), SkBits2Float(0xc2a528f4), SkBits2Float(0x4109a6c0), SkBits2Float(0xc2a51b18));
590 path.lineTo(SkBits2Float(0x40c70391), SkBits2Float(0xc26eb50e));
591 path.cubicTo(SkBits2Float(0x40c10142), SkBits2Float(0xc26ec918), SkBits2Float(0x40bafe32), SkBits2Float(0xc26edc3a), SkBits2Float(0x40b4fa70), SkBits2Float(0xc26eee73));
592 path.lineTo(SkBits2Float(0x40fa5a6d), SkBits2Float(0xc2a542cb));
593 path.close();
594
595 SkPath path2(path);
596 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
597 }
598 // op end success 1
599
battleOp20(skiatest::Reporter * reporter,const char * filename)600 static void battleOp20(skiatest::Reporter* reporter, const char* filename) {
601 SkPath path;
602 path.setFillType((SkPathFillType) 1);
603 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
604 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
605 path.cubicTo(SkBits2Float(0x40272e63), SkBits2Float(0xc2a60000), SkBits2Float(0x40a7227a), SkBits2Float(0xc2a5c0db), SkBits2Float(0x40fa5a6c), SkBits2Float(0xc2a542ca));
606 path.lineTo(SkBits2Float(0x40fa5a6d), SkBits2Float(0xc2a542cb));
607 path.cubicTo(SkBits2Float(0x4101563b), SkBits2Float(0xc2a5362f), SkBits2Float(0x41057ec0), SkBits2Float(0xc2a528f4), SkBits2Float(0x4109a6c0), SkBits2Float(0xc2a51b18));
608 path.lineTo(SkBits2Float(0x40c70391), SkBits2Float(0xc26eb50e));
609 path.cubicTo(SkBits2Float(0x40c10142), SkBits2Float(0xc26ec918), SkBits2Float(0x40bafe32), SkBits2Float(0xc26edc3a), SkBits2Float(0x40b4fa6e), SkBits2Float(0xc26eee73));
610 path.cubicTo(SkBits2Float(0x4071a3f5), SkBits2Float(0xc26fa4b8), SkBits2Float(0x3ff1b53c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
611 path.close();
612
613 SkPath path1(path);
614 path.reset();
615 path.setFillType((SkPathFillType) 0);
616 path.moveTo(SkBits2Float(0x4109a6bc), SkBits2Float(0xc2a51b19));
617 path.cubicTo(SkBits2Float(0x414d093d), SkBits2Float(0xc2a43a61), SkBits2Float(0x4187e474), SkBits2Float(0xc2a2b4fa), SkBits2Float(0x41a8a805), SkBits2Float(0xc2a08e4d));
618 path.lineTo(SkBits2Float(0x4173d72c), SkBits2Float(0xc2682105));
619 path.cubicTo(SkBits2Float(0x41447890), SkBits2Float(0xc26b3d2d), SkBits2Float(0x4114380c), SkBits2Float(0xc26d702b), SkBits2Float(0x40c70392), SkBits2Float(0xc26eb510));
620 path.lineTo(SkBits2Float(0x4109a6bc), SkBits2Float(0xc2a51b19));
621 path.close();
622
623 SkPath path2(path);
624 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
625 }
626 // op end success 1
627
battleOp21(skiatest::Reporter * reporter,const char * filename)628 static void battleOp21(skiatest::Reporter* reporter, const char* filename) {
629 SkPath path;
630 path.setFillType((SkPathFillType) 0);
631 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
632 path.cubicTo(SkBits2Float(0x404ef9c5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40cee321), SkBits2Float(0xc2a59f3a), SkBits2Float(0x411ad5ab), SkBits2Float(0xc2a4de2c));
633 path.lineTo(SkBits2Float(0x40dfdb77), SkBits2Float(0xc26e5cf8));
634 path.cubicTo(SkBits2Float(0x40958e99), SkBits2Float(0xc26f7414), SkBits2Float(0x40159f04), SkBits2Float(0xc26ffffe), SkBits2Float(0x36ae7f52), SkBits2Float(0xc26ffffe));
635 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
636 path.close();
637
638 SkPath path1(path);
639 path.reset();
640 path.setFillType((SkPathFillType) 0);
641 path.moveTo(SkBits2Float(0x411ad5aa), SkBits2Float(0xc2a4de2c));
642 path.cubicTo(SkBits2Float(0x411ff8ea), SkBits2Float(0xc2a4cadf), SkBits2Float(0x41251b3e), SkBits2Float(0xc2a4b69c), SkBits2Float(0x412a3c98), SkBits2Float(0xc2a4a163));
643 path.lineTo(SkBits2Float(0x40f6200f), SkBits2Float(0xc26e0518));
644 path.cubicTo(SkBits2Float(0x40eeb53e), SkBits2Float(0xc26e23c6), SkBits2Float(0x40e74902), SkBits2Float(0xc26e4112), SkBits2Float(0x40dfdb73), SkBits2Float(0xc26e5cf8));
645 path.lineTo(SkBits2Float(0x411ad5aa), SkBits2Float(0xc2a4de2c));
646 path.close();
647
648 SkPath path2(path);
649 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
650 }
651 // op end fail 1
652
battleOp22(skiatest::Reporter * reporter,const char * filename)653 static void battleOp22(skiatest::Reporter* reporter, const char* filename) {
654 SkPath path;
655 path.setFillType((SkPathFillType) 0);
656 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
657 path.cubicTo(SkBits2Float(0x407fb41a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40ff895b), SkBits2Float(0xc2a56c4b), SkBits2Float(0x413f077c), SkBits2Float(0xc2a44609));
658 path.lineTo(SkBits2Float(0x410a17ee), SkBits2Float(0xc26d8104));
659 path.cubicTo(SkBits2Float(0x40b8b9ab), SkBits2Float(0xc26f2a74), SkBits2Float(0x4038d88b), SkBits2Float(0xc2700000), SkBits2Float(0x337fa8c0), SkBits2Float(0xc2700000));
660 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
661 path.close();
662
663 SkPath path1(path);
664 path.reset();
665 path.setFillType((SkPathFillType) 0);
666 path.moveTo(SkBits2Float(0x413f0780), SkBits2Float(0xc2a44609));
667 path.cubicTo(SkBits2Float(0x41455a4a), SkBits2Float(0xc2a4289f), SkBits2Float(0x414bab5a), SkBits2Float(0xc2a409bf), SkBits2Float(0x4151fa92), SkBits2Float(0xc2a3e96b));
668 path.lineTo(SkBits2Float(0x4117cabb), SkBits2Float(0xc26cfb1d));
669 path.cubicTo(SkBits2Float(0x41133b1d), SkBits2Float(0xc26d29dc), SkBits2Float(0x410eaa27), SkBits2Float(0xc26d567f), SkBits2Float(0x410a17f1), SkBits2Float(0xc26d8105));
670 path.lineTo(SkBits2Float(0x413f0780), SkBits2Float(0xc2a44609));
671 path.close();
672
673 SkPath path2(path);
674 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
675 }
676 // op end success 1
677
battleOp23(skiatest::Reporter * reporter,const char * filename)678 static void battleOp23(skiatest::Reporter* reporter, const char* filename) {
679 SkPath path;
680 path.setFillType((SkPathFillType) 1);
681 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
682 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
683 path.cubicTo(SkBits2Float(0x407fb41a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40ff895b), SkBits2Float(0xc2a56c4b), SkBits2Float(0x413f0780), SkBits2Float(0xc2a44609));
684 path.cubicTo(SkBits2Float(0x41455a4a), SkBits2Float(0xc2a4289f), SkBits2Float(0x414bab5a), SkBits2Float(0xc2a409bf), SkBits2Float(0x4151fa92), SkBits2Float(0xc2a3e96b));
685 path.lineTo(SkBits2Float(0x4117cabb), SkBits2Float(0xc26cfb1d));
686 path.cubicTo(SkBits2Float(0x41133b1d), SkBits2Float(0xc26d29dc), SkBits2Float(0x410eaa27), SkBits2Float(0xc26d567f), SkBits2Float(0x410a17ee), SkBits2Float(0xc26d8104));
687 path.cubicTo(SkBits2Float(0x40b8b9ab), SkBits2Float(0xc26f2a74), SkBits2Float(0x4038d88b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
688 path.close();
689
690 SkPath path1(path);
691 path.reset();
692 path.setFillType((SkPathFillType) 0);
693 path.moveTo(SkBits2Float(0x4151fa93), SkBits2Float(0xc2a3e96b));
694 path.cubicTo(SkBits2Float(0x419c2b7d), SkBits2Float(0xc2a1dce5), SkBits2Float(0x41ce36f8), SkBits2Float(0xc29e52a6), SkBits2Float(0x41fe1a0a), SkBits2Float(0xc2995d2e));
695 path.lineTo(SkBits2Float(0x41b7b024), SkBits2Float(0xc25dbb29));
696 path.cubicTo(SkBits2Float(0x41951228), SkBits2Float(0xc264e68b), SkBits2Float(0x4161c9b2), SkBits2Float(0xc26a04c8), SkBits2Float(0x4117cabf), SkBits2Float(0xc26cfb1e));
697 path.lineTo(SkBits2Float(0x4151fa93), SkBits2Float(0xc2a3e96b));
698 path.close();
699
700 SkPath path2(path);
701 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
702 }
703 // op end success 1
704
battleOp24(skiatest::Reporter * reporter,const char * filename)705 static void battleOp24(skiatest::Reporter* reporter, const char* filename) {
706 SkPath path;
707 path.setFillType((SkPathFillType) 0);
708 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
709 path.cubicTo(SkBits2Float(0x409bc7b0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x411ba103), SkBits2Float(0xc2a524b6), SkBits2Float(0x4168515c), SkBits2Float(0xc2a370af));
710 path.lineTo(SkBits2Float(0x4127f0cc), SkBits2Float(0xc26c4c8f));
711 path.cubicTo(SkBits2Float(0x40e1017a), SkBits2Float(0xc26ec2f6), SkBits2Float(0x40613965), SkBits2Float(0xc26fffff), SkBits2Float(0x3655fea5), SkBits2Float(0xc26fffff));
712 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
713 path.close();
714
715 SkPath path1(path);
716 path.reset();
717 path.setFillType((SkPathFillType) 0);
718 path.moveTo(SkBits2Float(0x4168515e), SkBits2Float(0xc2a370b0));
719 path.cubicTo(SkBits2Float(0x416ffb5b), SkBits2Float(0xc2a3451c), SkBits2Float(0x4177a23d), SkBits2Float(0xc2a31761), SkBits2Float(0x417f45ca), SkBits2Float(0xc2a2e77f));
720 path.lineTo(SkBits2Float(0x413888ce), SkBits2Float(0xc26b8638));
721 path.cubicTo(SkBits2Float(0x41330328), SkBits2Float(0xc26bcb72), SkBits2Float(0x412d7b1a), SkBits2Float(0xc26c0d90), SkBits2Float(0x4127f0cb), SkBits2Float(0xc26c4c90));
722 path.lineTo(SkBits2Float(0x4168515e), SkBits2Float(0xc2a370b0));
723 path.close();
724
725 SkPath path2(path);
726 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
727 }
728 // op end success 1
729
battleOp25(skiatest::Reporter * reporter,const char * filename)730 static void battleOp25(skiatest::Reporter* reporter, const char* filename) {
731 SkPath path;
732 path.setFillType((SkPathFillType) 1);
733 path.moveTo(SkBits2Float(0x3655fea5), SkBits2Float(0xc26fffff));
734 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
735 path.cubicTo(SkBits2Float(0x409bc7b0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x411ba103), SkBits2Float(0xc2a524b6), SkBits2Float(0x4168515e), SkBits2Float(0xc2a370b0));
736 path.cubicTo(SkBits2Float(0x416ffb5b), SkBits2Float(0xc2a3451c), SkBits2Float(0x4177a23d), SkBits2Float(0xc2a31761), SkBits2Float(0x417f45ca), SkBits2Float(0xc2a2e77f));
737 path.lineTo(SkBits2Float(0x413888ce), SkBits2Float(0xc26b8638));
738 path.cubicTo(SkBits2Float(0x41330328), SkBits2Float(0xc26bcb72), SkBits2Float(0x412d7b1a), SkBits2Float(0xc26c0d90), SkBits2Float(0x4127f0cc), SkBits2Float(0xc26c4c8f));
739 path.cubicTo(SkBits2Float(0x40e1017a), SkBits2Float(0xc26ec2f6), SkBits2Float(0x40613965), SkBits2Float(0xc26fffff), SkBits2Float(0x3655fea5), SkBits2Float(0xc26fffff));
740 path.close();
741
742 SkPath path1(path);
743 path.reset();
744 path.setFillType((SkPathFillType) 0);
745 path.moveTo(SkBits2Float(0x417f45c8), SkBits2Float(0xc2a2e780));
746 path.cubicTo(SkBits2Float(0x41bda27d), SkBits2Float(0xc29fde49), SkBits2Float(0x41f99531), SkBits2Float(0xc29aa2c4), SkBits2Float(0x4218d569), SkBits2Float(0xc2935d77));
747 path.lineTo(SkBits2Float(0x41dcf6db), SkBits2Float(0xc2550ed7));
748 path.cubicTo(SkBits2Float(0x41b46bda), SkBits2Float(0xc25f91e2), SkBits2Float(0x418915db), SkBits2Float(0xc2672288), SkBits2Float(0x413888d2), SkBits2Float(0xc26b8639));
749 path.lineTo(SkBits2Float(0x417f45c8), SkBits2Float(0xc2a2e780));
750 path.close();
751
752 SkPath path2(path);
753 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
754 }
755 // op end success 1
756
battleOp26(skiatest::Reporter * reporter,const char * filename)757 static void battleOp26(skiatest::Reporter* reporter, const char* filename) {
758 SkPath path;
759 path.setFillType((SkPathFillType) 0);
760 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
761 path.cubicTo(SkBits2Float(0x40b98c15), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41394aaf), SkBits2Float(0xc2a4c8e8), SkBits2Float(0x418a04fa), SkBits2Float(0xc2a25fd2));
762 path.lineTo(SkBits2Float(0x41478bd6), SkBits2Float(0xc26ac20e));
763 path.cubicTo(SkBits2Float(0x4105f224), SkBits2Float(0xc26e3e3c), SkBits2Float(0x40862167), SkBits2Float(0xc2700000), SkBits2Float(0xb4d00ae8), SkBits2Float(0xc2700000));
764 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
765 path.close();
766
767 SkPath path1(path);
768 path.reset();
769 path.setFillType((SkPathFillType) 0);
770 path.moveTo(SkBits2Float(0x418a04fd), SkBits2Float(0xc2a25fd2));
771 path.cubicTo(SkBits2Float(0x418e8d81), SkBits2Float(0xc2a2222a), SkBits2Float(0x41931368), SkBits2Float(0xc2a1e17a), SkBits2Float(0x41979681), SkBits2Float(0xc2a19dc3));
772 path.lineTo(SkBits2Float(0x415b29c8), SkBits2Float(0xc269a97e));
773 path.cubicTo(SkBits2Float(0x4154a3c3), SkBits2Float(0xc26a0b66), SkBits2Float(0x414e19b0), SkBits2Float(0xc26a68ed), SkBits2Float(0x41478bd5), SkBits2Float(0xc26ac20f));
774 path.lineTo(SkBits2Float(0x418a04fd), SkBits2Float(0xc2a25fd2));
775 path.close();
776
777 SkPath path2(path);
778 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
779 }
780 // op end success 1
781
battleOp27(skiatest::Reporter * reporter,const char * filename)782 static void battleOp27(skiatest::Reporter* reporter, const char* filename) {
783 SkPath path;
784 path.setFillType((SkPathFillType) 1);
785 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
786 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
787 path.cubicTo(SkBits2Float(0x40b98c15), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41394aaf), SkBits2Float(0xc2a4c8e8), SkBits2Float(0x418a04fd), SkBits2Float(0xc2a25fd2));
788 path.cubicTo(SkBits2Float(0x418e8d81), SkBits2Float(0xc2a2222a), SkBits2Float(0x41931368), SkBits2Float(0xc2a1e17a), SkBits2Float(0x41979681), SkBits2Float(0xc2a19dc3));
789 path.lineTo(SkBits2Float(0x415b29c8), SkBits2Float(0xc269a97e));
790 path.cubicTo(SkBits2Float(0x4154a3c3), SkBits2Float(0xc26a0b66), SkBits2Float(0x414e19b0), SkBits2Float(0xc26a68ed), SkBits2Float(0x41478bd6), SkBits2Float(0xc26ac20e));
791 path.cubicTo(SkBits2Float(0x4105f224), SkBits2Float(0xc26e3e3c), SkBits2Float(0x40862167), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
792 path.close();
793
794 SkPath path1(path);
795 path.reset();
796 path.setFillType((SkPathFillType) 0);
797 path.moveTo(SkBits2Float(0x41979680), SkBits2Float(0xc2a19dc4));
798 path.cubicTo(SkBits2Float(0x41e0e1b2), SkBits2Float(0xc29d51d4), SkBits2Float(0x42135c08), SkBits2Float(0xc295f036), SkBits2Float(0x42330e86), SkBits2Float(0xc28bc9b7));
799 path.lineTo(SkBits2Float(0x42017048), SkBits2Float(0xc24a1a63));
800 path.cubicTo(SkBits2Float(0x41d50cc4), SkBits2Float(0xc258c742), SkBits2Float(0x41a290a5), SkBits2Float(0xc263733c), SkBits2Float(0x415b29c7), SkBits2Float(0xc269a980));
801 path.lineTo(SkBits2Float(0x41979680), SkBits2Float(0xc2a19dc4));
802 path.close();
803
804 SkPath path2(path);
805 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
806 }
807 // op end success 1
808
battleOp28(skiatest::Reporter * reporter,const char * filename)809 static void battleOp28(skiatest::Reporter* reporter, const char* filename) {
810 SkPath path;
811 path.setFillType((SkPathFillType) 0);
812 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
813 path.cubicTo(SkBits2Float(0x40dd1e63), SkBits2Float(0xc2a5ffff), SkBits2Float(0x415caf98), SkBits2Float(0xc2a44632), SkBits2Float(0x41a3e96c), SkBits2Float(0xc2a0dcda));
814 path.lineTo(SkBits2Float(0x416cfb1c), SkBits2Float(0xc2689294));
815 path.cubicTo(SkBits2Float(0x411f8831), SkBits2Float(0xc26d8140), SkBits2Float(0x409fd849), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
816 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
817 path.close();
818
819 SkPath path1(path);
820 path.reset();
821 path.setFillType((SkPathFillType) 0);
822 path.moveTo(SkBits2Float(0x41a3e96b), SkBits2Float(0xc2a0dcda));
823 path.cubicTo(SkBits2Float(0x41a94306), SkBits2Float(0xc2a085a1), SkBits2Float(0x41ae9839), SkBits2Float(0xc2a02a23), SkBits2Float(0x41b3e8b2), SkBits2Float(0xc29fca67));
824 path.lineTo(SkBits2Float(0x41820dff), SkBits2Float(0xc26705ca));
825 path.cubicTo(SkBits2Float(0x417c6d0a), SkBits2Float(0xc2679035), SkBits2Float(0x4174b742), SkBits2Float(0xc268147b), SkBits2Float(0x416cfb1d), SkBits2Float(0xc2689296));
826 path.lineTo(SkBits2Float(0x41a3e96b), SkBits2Float(0xc2a0dcda));
827 path.close();
828
829 SkPath path2(path);
830 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
831 }
832 // op end success 1
833
battleOp29(skiatest::Reporter * reporter,const char * filename)834 static void battleOp29(skiatest::Reporter* reporter, const char* filename) {
835 SkPath path;
836 path.setFillType((SkPathFillType) 1);
837 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
838 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
839 path.cubicTo(SkBits2Float(0x40dd1e62), SkBits2Float(0xc2a60000), SkBits2Float(0x415caf97), SkBits2Float(0xc2a44632), SkBits2Float(0x41a3e96b), SkBits2Float(0xc2a0dcda));
840 path.lineTo(SkBits2Float(0x416cfb1d), SkBits2Float(0xc2689296));
841 path.cubicTo(SkBits2Float(0x4174b742), SkBits2Float(0xc268147b), SkBits2Float(0x417c6d0a), SkBits2Float(0xc2679035), SkBits2Float(0x41820dff), SkBits2Float(0xc26705ca));
842 path.lineTo(SkBits2Float(0x41b3e8b2), SkBits2Float(0xc29fca67));
843 path.cubicTo(SkBits2Float(0x41ae9839), SkBits2Float(0xc2a02a23), SkBits2Float(0x41a94307), SkBits2Float(0xc2a085a1), SkBits2Float(0x41a3e96c), SkBits2Float(0xc2a0dcda));
844 path.lineTo(SkBits2Float(0x416cfb1c), SkBits2Float(0xc2689294));
845 path.cubicTo(SkBits2Float(0x411f8831), SkBits2Float(0xc26d8140), SkBits2Float(0x409fd849), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
846 path.close();
847
848 SkPath path1(path);
849 path.reset();
850 path.setFillType((SkPathFillType) 0);
851 path.moveTo(SkBits2Float(0x41b3e8b1), SkBits2Float(0xc29fca67));
852 path.cubicTo(SkBits2Float(0x4205291f), SkBits2Float(0xc299b5bb), SkBits2Float(0x422d73c0), SkBits2Float(0xc28f4fcf), SkBits2Float(0x425064bf), SkBits2Float(0xc2813989));
853 path.lineTo(SkBits2Float(0x4216a55b), SkBits2Float(0xc23ad4b9));
854 path.cubicTo(SkBits2Float(0x41fac62f), SkBits2Float(0xc24f329e), SkBits2Float(0x41c0857c), SkBits2Float(0xc25e3b2e), SkBits2Float(0x41820dfe), SkBits2Float(0xc26705cb));
855 path.lineTo(SkBits2Float(0x41b3e8b1), SkBits2Float(0xc29fca67));
856 path.close();
857
858 SkPath path2(path);
859 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
860 }
861 // op end success 1
862
battleOp30(skiatest::Reporter * reporter,const char * filename)863 static void battleOp30(skiatest::Reporter* reporter, const char* filename) {
864 SkPath path;
865 path.setFillType((SkPathFillType) 0);
866 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
867 path.cubicTo(SkBits2Float(0x41028186), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4182264a), SkBits2Float(0xc2a39869), SkBits2Float(0x41c098e8), SkBits2Float(0xc29edd15));
868 path.lineTo(SkBits2Float(0x418b3a1a), SkBits2Float(0xc265aeac));
869 path.cubicTo(SkBits2Float(0x413c2b06), SkBits2Float(0xc26c85fe), SkBits2Float(0x40bcaeed), SkBits2Float(0xc2700000), SkBits2Float(0x337fa8c0), SkBits2Float(0xc2700000));
870 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
871 path.close();
872
873 SkPath path1(path);
874 path.reset();
875 path.setFillType((SkPathFillType) 0);
876 path.moveTo(SkBits2Float(0x41c098e9), SkBits2Float(0xc29edd15));
877 path.cubicTo(SkBits2Float(0x41c6d4b6), SkBits2Float(0xc29e642a), SkBits2Float(0x41cd0950), SkBits2Float(0xc29de562), SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8));
878 path.lineTo(SkBits2Float(0x4198aee4), SkBits2Float(0xc26388d7));
879 path.cubicTo(SkBits2Float(0x41943815), SkBits2Float(0xc264488f), SkBits2Float(0x418fbbb2), SkBits2Float(0xc264ffdc), SkBits2Float(0x418b3a19), SkBits2Float(0xc265aeae));
880 path.lineTo(SkBits2Float(0x41c098e9), SkBits2Float(0xc29edd15));
881 path.close();
882
883 SkPath path2(path);
884 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
885 }
886 // op end success 1
887
battleOp31(skiatest::Reporter * reporter,const char * filename)888 static void battleOp31(skiatest::Reporter* reporter, const char* filename) {
889 SkPath path;
890 path.setFillType((SkPathFillType) 1);
891 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
892 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
893 path.cubicTo(SkBits2Float(0x41028186), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4182264a), SkBits2Float(0xc2a39869), SkBits2Float(0x41c098e9), SkBits2Float(0xc29edd15));
894 path.cubicTo(SkBits2Float(0x41c6d4b6), SkBits2Float(0xc29e642a), SkBits2Float(0x41cd0950), SkBits2Float(0xc29de562), SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8));
895 path.lineTo(SkBits2Float(0x4198aee4), SkBits2Float(0xc26388d7));
896 path.cubicTo(SkBits2Float(0x41943816), SkBits2Float(0xc264488f), SkBits2Float(0x418fbbb2), SkBits2Float(0xc264ffda), SkBits2Float(0x418b3a1a), SkBits2Float(0xc265aeac));
897 path.cubicTo(SkBits2Float(0x413c2b06), SkBits2Float(0xc26c85fe), SkBits2Float(0x40bcaeed), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
898 path.close();
899
900 SkPath path1(path);
901 path.reset();
902 path.setFillType((SkPathFillType) 0);
903 path.moveTo(SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8));
904 path.cubicTo(SkBits2Float(0x421be102), SkBits2Float(0xc294f1be), SkBits2Float(0x4249615f), SkBits2Float(0xc2869cbc), SkBits2Float(0x426e4d45), SkBits2Float(0xc26729aa));
905 path.lineTo(SkBits2Float(0x422c4432), SkBits2Float(0xc2271b0a));
906 path.cubicTo(SkBits2Float(0x42119380), SkBits2Float(0xc2429ec2), SkBits2Float(0x41e15dfd), SkBits2Float(0xc257575a), SkBits2Float(0x4198aee4), SkBits2Float(0xc26388d8));
907 path.lineTo(SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8));
908 path.close();
909
910 SkPath path2(path);
911 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
912 }
913 // op end success 1
914
battleOp32(skiatest::Reporter * reporter,const char * filename)915 static void battleOp32(skiatest::Reporter* reporter, const char* filename) {
916 SkPath path;
917 path.setFillType((SkPathFillType) 0);
918 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
919 path.cubicTo(SkBits2Float(0x4118c001), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41982d6e), SkBits2Float(0xc2a2b4b2), SkBits2Float(0x41e01284), SkBits2Float(0xc29c4333));
920 path.lineTo(SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf5));
921 path.cubicTo(SkBits2Float(0x415c0406), SkBits2Float(0xc26b3cc7), SkBits2Float(0x40dcd7ee), SkBits2Float(0xc2700000), SkBits2Float(0x35f7fd46), SkBits2Float(0xc2700000));
922 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
923 path.close();
924
925 SkPath path1(path);
926 path.reset();
927 path.setFillType((SkPathFillType) 0);
928 path.moveTo(SkBits2Float(0x41e01286), SkBits2Float(0xc29c4334));
929 path.cubicTo(SkBits2Float(0x41e73e86), SkBits2Float(0xc29b9ea8), SkBits2Float(0x41ee5f11), SkBits2Float(0xc29af239), SkBits2Float(0x41f57356), SkBits2Float(0xc29a3dfa));
930 path.lineTo(SkBits2Float(0x41b16f25), SkBits2Float(0xc25f0029));
931 path.cubicTo(SkBits2Float(0x41ac5112), SkBits2Float(0xc26004c3), SkBits2Float(0x41a72a20), SkBits2Float(0xc260fe11), SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf7));
932 path.lineTo(SkBits2Float(0x41e01286), SkBits2Float(0xc29c4334));
933 path.close();
934
935 SkPath path2(path);
936 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
937 }
938 // op end success 1
939
battleOp33(skiatest::Reporter * reporter,const char * filename)940 static void battleOp33(skiatest::Reporter* reporter, const char* filename) {
941 SkPath path;
942 path.setFillType((SkPathFillType) 1);
943 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
944 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
945 path.cubicTo(SkBits2Float(0x4118c001), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41982d6e), SkBits2Float(0xc2a2b4b2), SkBits2Float(0x41e01286), SkBits2Float(0xc29c4334));
946 path.cubicTo(SkBits2Float(0x41e73e86), SkBits2Float(0xc29b9ea8), SkBits2Float(0x41ee5f11), SkBits2Float(0xc29af239), SkBits2Float(0x41f57356), SkBits2Float(0xc29a3dfa));
947 path.lineTo(SkBits2Float(0x41b16f25), SkBits2Float(0xc25f0029));
948 path.cubicTo(SkBits2Float(0x41ac5112), SkBits2Float(0xc26004c3), SkBits2Float(0x41a72a20), SkBits2Float(0xc260fe11), SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf7));
949 path.lineTo(SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf5));
950 path.cubicTo(SkBits2Float(0x415c0406), SkBits2Float(0xc26b3cc7), SkBits2Float(0x40dcd7ee), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
951 path.close();
952
953 SkPath path1(path);
954 path.reset();
955 path.setFillType((SkPathFillType) 0);
956 path.moveTo(SkBits2Float(0x41f57359), SkBits2Float(0xc29a3dfa));
957 path.cubicTo(SkBits2Float(0x42347528), SkBits2Float(0xc28ec218), SkBits2Float(0x42669614), SkBits2Float(0xc276cf04), SkBits2Float(0x4285b481), SkBits2Float(0xc244c364));
958 path.lineTo(SkBits2Float(0x42414f00), SkBits2Float(0xc20e3d0e));
959 path.cubicTo(SkBits2Float(0x4226b05a), SkBits2Float(0xc2326a79), SkBits2Float(0x4202738a), SkBits2Float(0xc24e65b9), SkBits2Float(0x41b16f25), SkBits2Float(0xc25f0028));
960 path.lineTo(SkBits2Float(0x41f57359), SkBits2Float(0xc29a3dfa));
961 path.close();
962
963 SkPath path2(path);
964 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
965 }
966 // op end success 1
967
battleOp34(skiatest::Reporter * reporter,const char * filename)968 static void battleOp34(skiatest::Reporter* reporter, const char* filename) {
969 SkPath path;
970 path.setFillType((SkPathFillType) 0);
971 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
972 path.cubicTo(SkBits2Float(0x41360dec), SkBits2Float(0xc2a60000), SkBits2Float(0x41b5150e), SkBits2Float(0xc2a1522b), SkBits2Float(0x42044925), SkBits2Float(0xc29840e5));
973 path.lineTo(SkBits2Float(0x41bf41a8), SkBits2Float(0xc25c2022));
974 path.cubicTo(SkBits2Float(0x4182e721), SkBits2Float(0xc2693c30), SkBits2Float(0x41039b08), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
975 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
976 path.close();
977
978 SkPath path1(path);
979 path.reset();
980 path.setFillType((SkPathFillType) 0);
981 path.moveTo(SkBits2Float(0x42044925), SkBits2Float(0xc29840e4));
982 path.cubicTo(SkBits2Float(0x4208721a), SkBits2Float(0xc2975992), SkBits2Float(0x420c9178), SkBits2Float(0xc296675c), SkBits2Float(0x4210a695), SkBits2Float(0xc2956a6a));
983 path.lineTo(SkBits2Float(0x41d1222e), SkBits2Float(0xc25805ce));
984 path.cubicTo(SkBits2Float(0x41cb3b2f), SkBits2Float(0xc2597382), SkBits2Float(0x41c5455b), SkBits2Float(0xc25ad1b2), SkBits2Float(0x41bf41a9), SkBits2Float(0xc25c2023));
985 path.lineTo(SkBits2Float(0x42044925), SkBits2Float(0xc29840e4));
986 path.close();
987
988 SkPath path2(path);
989 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
990 }
991 // op end success 1
992
battleOp35(skiatest::Reporter * reporter,const char * filename)993 static void battleOp35(skiatest::Reporter* reporter, const char* filename) {
994 SkPath path;
995 path.setFillType((SkPathFillType) 1);
996 path.moveTo(SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
997 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
998 path.cubicTo(SkBits2Float(0x41360dec), SkBits2Float(0xc2a60000), SkBits2Float(0x41b5150e), SkBits2Float(0xc2a1522b), SkBits2Float(0x42044925), SkBits2Float(0xc29840e5));
999 path.lineTo(SkBits2Float(0x4210a695), SkBits2Float(0xc2956a6a));
1000 path.lineTo(SkBits2Float(0x41d1222e), SkBits2Float(0xc25805ce));
1001 path.cubicTo(SkBits2Float(0x41cb3b2f), SkBits2Float(0xc2597382), SkBits2Float(0x41c5455b), SkBits2Float(0xc25ad1b2), SkBits2Float(0x41bf41a9), SkBits2Float(0xc25c2023));
1002 path.lineTo(SkBits2Float(0x41bf41a8), SkBits2Float(0xc25c2022));
1003 path.cubicTo(SkBits2Float(0x4182e721), SkBits2Float(0xc2693c30), SkBits2Float(0x41039b08), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
1004 path.close();
1005
1006 SkPath path1(path);
1007 path.reset();
1008 path.setFillType((SkPathFillType) 0);
1009 path.moveTo(SkBits2Float(0x4210a693), SkBits2Float(0xc2956a6a));
1010 path.cubicTo(SkBits2Float(0x42536b4d), SkBits2Float(0xc2854182), SkBits2Float(0x4284b863), SkBits2Float(0xc254c33a), SkBits2Float(0x42950c68), SkBits2Float(0xc2122882));
1011 path.lineTo(SkBits2Float(0x42577de3), SkBits2Float(0xc1d35027));
1012 path.cubicTo(SkBits2Float(0x423fe27d), SkBits2Float(0xc219cde7), SkBits2Float(0x4218d548), SkBits2Float(0xc240a8bd), SkBits2Float(0x41d1222f), SkBits2Float(0xc25805ce));
1013 path.lineTo(SkBits2Float(0x4210a693), SkBits2Float(0xc2956a6a));
1014 path.close();
1015
1016 SkPath path2(path);
1017 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1018 }
1019 // op end success 1
1020
battleOp36(skiatest::Reporter * reporter,const char * filename)1021 static void battleOp36(skiatest::Reporter* reporter, const char* filename) {
1022 SkPath path;
1023 path.setFillType((SkPathFillType) 0);
1024 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1025 path.cubicTo(SkBits2Float(0x414e6589), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ccf9e5), SkBits2Float(0xc29ffc89), SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc8));
1026 path.lineTo(SkBits2Float(0x41d6e236), SkBits2Float(0xc2569b72));
1027 path.cubicTo(SkBits2Float(0x41942cf0), SkBits2Float(0xc2674e45), SkBits2Float(0x411533d1), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1028 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1029 path.close();
1030
1031 SkPath path1(path);
1032 path.reset();
1033 path.setFillType((SkPathFillType) 0);
1034 path.moveTo(SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc9));
1035 path.cubicTo(SkBits2Float(0x421938a6), SkBits2Float(0xc293496b), SkBits2Float(0x421dc2c1), SkBits2Float(0xc2921574), SkBits2Float(0x42223e19), SkBits2Float(0xc290d421));
1036 path.lineTo(SkBits2Float(0x41ea914d), SkBits2Float(0xc251640c));
1037 path.cubicTo(SkBits2Float(0x41e4167f), SkBits2Float(0xc253349e), SkBits2Float(0x41dd8659), SkBits2Float(0xc254f1de), SkBits2Float(0x41d6e239), SkBits2Float(0xc2569b73));
1038 path.lineTo(SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc9));
1039 path.close();
1040
1041 SkPath path2(path);
1042 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1043 }
1044 // op end success 1
1045
battleOp37(skiatest::Reporter * reporter,const char * filename)1046 static void battleOp37(skiatest::Reporter* reporter, const char* filename) {
1047 SkPath path;
1048 path.setFillType((SkPathFillType) 1);
1049 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1050 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1051 path.cubicTo(SkBits2Float(0x414e6589), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ccf9e5), SkBits2Float(0xc29ffc89), SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc9));
1052 path.cubicTo(SkBits2Float(0x421938a6), SkBits2Float(0xc293496b), SkBits2Float(0x421dc2c1), SkBits2Float(0xc2921574), SkBits2Float(0x42223e19), SkBits2Float(0xc290d421));
1053 path.lineTo(SkBits2Float(0x41ea914d), SkBits2Float(0xc251640c));
1054 path.cubicTo(SkBits2Float(0x41e4167f), SkBits2Float(0xc253349e), SkBits2Float(0x41dd8659), SkBits2Float(0xc254f1de), SkBits2Float(0x41d6e239), SkBits2Float(0xc2569b73));
1055 path.lineTo(SkBits2Float(0x41d6e236), SkBits2Float(0xc2569b72));
1056 path.cubicTo(SkBits2Float(0x41942cf0), SkBits2Float(0xc2674e45), SkBits2Float(0x411533d1), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1057 path.close();
1058
1059 SkPath path1(path);
1060 path.reset();
1061 path.setFillType((SkPathFillType) 0);
1062 path.moveTo(SkBits2Float(0x42223e19), SkBits2Float(0xc290d422));
1063 path.cubicTo(SkBits2Float(0x426bbc38), SkBits2Float(0xc2787e1d), SkBits2Float(0x42916a94), SkBits2Float(0xc234ee59), SkBits2Float(0x429e2fac), SkBits2Float(0xc1c951fc));
1064 path.lineTo(SkBits2Float(0x4264b3f7), SkBits2Float(0xc191885f));
1065 path.cubicTo(SkBits2Float(0x42523d91), SkBits2Float(0xc202cb25), SkBits2Float(0x422a6939), SkBits2Float(0xc233a21b), SkBits2Float(0x41ea914d), SkBits2Float(0xc251640d));
1066 path.lineTo(SkBits2Float(0x42223e19), SkBits2Float(0xc290d422));
1067 path.close();
1068
1069 SkPath path2(path);
1070 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1071 }
1072 // op end success 1
1073
battleOp38(skiatest::Reporter * reporter,const char * filename)1074 static void battleOp38(skiatest::Reporter* reporter, const char* filename) {
1075 SkPath path;
1076 path.setFillType((SkPathFillType) 0);
1077 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1078 path.cubicTo(SkBits2Float(0x416c96cf), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ea70fe), SkBits2Float(0xc29e1973), SkBits2Float(0x422836c6), SkBits2Float(0xc28f1d8a));
1079 path.lineTo(SkBits2Float(0x41f3336d), SkBits2Float(0xc24ee9f1));
1080 path.cubicTo(SkBits2Float(0x41a979c6), SkBits2Float(0xc26493d6), SkBits2Float(0x412b073c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1081 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1082 path.close();
1083
1084 SkPath path1(path);
1085 path.reset();
1086 path.setFillType((SkPathFillType) 0);
1087 path.moveTo(SkBits2Float(0x422836c5), SkBits2Float(0xc28f1d8b));
1088 path.cubicTo(SkBits2Float(0x422d4896), SkBits2Float(0xc28da02f), SkBits2Float(0x423245ea), SkBits2Float(0xc28c11a8), SkBits2Float(0x42372d65), SkBits2Float(0xc28a7261));
1089 path.lineTo(SkBits2Float(0x42046ad7), SkBits2Float(0xc24829ff));
1090 path.cubicTo(SkBits2Float(0x4200df44), SkBits2Float(0xc24a8267), SkBits2Float(0x41fa87ca), SkBits2Float(0xc24cc296), SkBits2Float(0x41f3336d), SkBits2Float(0xc24ee9f1));
1091 path.lineTo(SkBits2Float(0x422836c5), SkBits2Float(0xc28f1d8b));
1092 path.close();
1093
1094 SkPath path2(path);
1095 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1096 }
1097 // op end success 1
1098
battleOp39(skiatest::Reporter * reporter,const char * filename)1099 static void battleOp39(skiatest::Reporter* reporter, const char* filename) {
1100 SkPath path;
1101 path.setFillType((SkPathFillType) 1);
1102 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1103 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1104 path.cubicTo(SkBits2Float(0x416c96cf), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ea70fe), SkBits2Float(0xc29e1973), SkBits2Float(0x422836c5), SkBits2Float(0xc28f1d8b));
1105 path.cubicTo(SkBits2Float(0x422d4896), SkBits2Float(0xc28da02f), SkBits2Float(0x423245ea), SkBits2Float(0xc28c11a8), SkBits2Float(0x42372d65), SkBits2Float(0xc28a7261));
1106 path.lineTo(SkBits2Float(0x42046ad7), SkBits2Float(0xc24829ff));
1107 path.cubicTo(SkBits2Float(0x4200df44), SkBits2Float(0xc24a8267), SkBits2Float(0x41fa87ca), SkBits2Float(0xc24cc296), SkBits2Float(0x41f3336d), SkBits2Float(0xc24ee9f1));
1108 path.cubicTo(SkBits2Float(0x41a979c6), SkBits2Float(0xc26493d6), SkBits2Float(0x412b073c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1109 path.close();
1110
1111 SkPath path1(path);
1112 path.reset();
1113 path.setFillType((SkPathFillType) 0);
1114 path.moveTo(SkBits2Float(0x42372d65), SkBits2Float(0xc28a7262));
1115 path.cubicTo(SkBits2Float(0x4283f2b3), SkBits2Float(0xc25f7e9c), SkBits2Float(0x429ea5c2), SkBits2Float(0xc2098801), SkBits2Float(0x42a4b292), SkBits2Float(0xc12607b1));
1116 path.lineTo(SkBits2Float(0x426e1def), SkBits2Float(0xc0f00b21));
1117 path.cubicTo(SkBits2Float(0x42655eb1), SkBits2Float(0xc1c6d725), SkBits2Float(0x423ec4ad), SkBits2Float(0xc2218ff6), SkBits2Float(0x42046ad7), SkBits2Float(0xc2482a00));
1118 path.lineTo(SkBits2Float(0x42372d65), SkBits2Float(0xc28a7262));
1119 path.close();
1120
1121 SkPath path2(path);
1122 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1123 }
1124 // op end success 1
1125
battleOp40(skiatest::Reporter * reporter,const char * filename)1126 static void battleOp40(skiatest::Reporter* reporter, const char* filename) {
1127 SkPath path;
1128 path.setFillType((SkPathFillType) 0);
1129 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1130 path.cubicTo(SkBits2Float(0x4184d4a8), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42034ddf), SkBits2Float(0xc29c0a4c), SkBits2Float(0x423a47b2), SkBits2Float(0xc289686d));
1131 path.lineTo(SkBits2Float(0x4206a908), SkBits2Float(0xc246a97c));
1132 path.cubicTo(SkBits2Float(0x41bdd65f), SkBits2Float(0xc26199af), SkBits2Float(0x41400b5c), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
1133 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1134 path.close();
1135
1136 SkPath path1(path);
1137 path.reset();
1138 path.setFillType((SkPathFillType) 0);
1139 path.moveTo(SkBits2Float(0x423a47b2), SkBits2Float(0xc289686d));
1140 path.cubicTo(SkBits2Float(0x423fbcc3), SkBits2Float(0xc2878eef), SkBits2Float(0x4245154e), SkBits2Float(0xc285a0be), SkBits2Float(0x424a4f85), SkBits2Float(0xc2839e81));
1141 path.lineTo(SkBits2Float(0x42123fa7), SkBits2Float(0xc23e4af2));
1142 path.cubicTo(SkBits2Float(0x420e7846), SkBits2Float(0xc241326c), SkBits2Float(0x420a9af5), SkBits2Float(0xc243fcec), SkBits2Float(0x4206a907), SkBits2Float(0xc246a97c));
1143 path.lineTo(SkBits2Float(0x423a47b2), SkBits2Float(0xc289686d));
1144 path.close();
1145
1146 SkPath path2(path);
1147 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1148 }
1149 // op end fail 1
1150
battleOp41(skiatest::Reporter * reporter,const char * filename)1151 static void battleOp41(skiatest::Reporter* reporter, const char* filename) {
1152 SkPath path;
1153 path.setFillType((SkPathFillType) 0);
1154 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1155 path.cubicTo(SkBits2Float(0x4196c4f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42148669), SkBits2Float(0xc2992c23), SkBits2Float(0x424f6452), SkBits2Float(0xc281a081));
1156 path.lineTo(SkBits2Float(0x4215ebfd), SkBits2Float(0xc23b6999));
1157 path.cubicTo(SkBits2Float(0x41d6bc2a), SkBits2Float(0xc25d7441), SkBits2Float(0x4159fada), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
1158 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1159 path.close();
1160
1161 SkPath path1(path);
1162 path.reset();
1163 path.setFillType((SkPathFillType) 0);
1164 path.moveTo(SkBits2Float(0x424f6452), SkBits2Float(0xc281a081));
1165 path.cubicTo(SkBits2Float(0x42553921), SkBits2Float(0xc27e96d1), SkBits2Float(0x425ae53b), SkBits2Float(0xc279ba9d), SkBits2Float(0x42606622), SkBits2Float(0xc274ae80));
1166 path.lineTo(SkBits2Float(0x42223753), SkBits2Float(0xc230e0d8));
1167 path.cubicTo(SkBits2Float(0x421e3cd8), SkBits2Float(0xc23486e8), SkBits2Float(0x421a2322), SkBits2Float(0xc2380a55), SkBits2Float(0x4215ebfe), SkBits2Float(0xc23b6999));
1168 path.lineTo(SkBits2Float(0x424f6452), SkBits2Float(0xc281a081));
1169 path.close();
1170
1171 SkPath path2(path);
1172 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1173 }
1174 // op end success 1
1175
battleOp42(skiatest::Reporter * reporter,const char * filename)1176 static void battleOp42(skiatest::Reporter* reporter, const char* filename) {
1177 SkPath path;
1178 path.setFillType((SkPathFillType) 1);
1179 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1180 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1181 path.cubicTo(SkBits2Float(0x4196c4f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42148669), SkBits2Float(0xc2992c23), SkBits2Float(0x424f6452), SkBits2Float(0xc281a081));
1182 path.cubicTo(SkBits2Float(0x42553921), SkBits2Float(0xc27e96d1), SkBits2Float(0x425ae53b), SkBits2Float(0xc279ba9d), SkBits2Float(0x42606622), SkBits2Float(0xc274ae80));
1183 path.lineTo(SkBits2Float(0x42223753), SkBits2Float(0xc230e0d8));
1184 path.cubicTo(SkBits2Float(0x421e3cd8), SkBits2Float(0xc23486e8), SkBits2Float(0x421a2322), SkBits2Float(0xc2380a55), SkBits2Float(0x4215ebfd), SkBits2Float(0xc23b6999));
1185 path.cubicTo(SkBits2Float(0x41d6bc2a), SkBits2Float(0xc25d7441), SkBits2Float(0x4159fada), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1186 path.close();
1187
1188 SkPath path1(path);
1189 path.reset();
1190 path.setFillType((SkPathFillType) 0);
1191 path.moveTo(SkBits2Float(0x42606622), SkBits2Float(0xc274ae80));
1192 path.cubicTo(SkBits2Float(0x429deeac), SkBits2Float(0xc220cc44), SkBits2Float(0x42b0742c), SkBits2Float(0xc1039d5c), SkBits2Float(0x42a03731), SkBits2Float(0x41adc1b3));
1193 path.lineTo(SkBits2Float(0x4267a314), SkBits2Float(0x417b36e3));
1194 path.cubicTo(SkBits2Float(0x427f1d2c), SkBits2Float(0xc0be4950), SkBits2Float(0x426455fc), SkBits2Float(0xc1e87a9a), SkBits2Float(0x42223754), SkBits2Float(0xc230e0d7));
1195 path.lineTo(SkBits2Float(0x42606622), SkBits2Float(0xc274ae80));
1196 path.close();
1197
1198 SkPath path2(path);
1199 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1200 }
1201 // op end success 1
1202
battleOp43(skiatest::Reporter * reporter,const char * filename)1203 static void battleOp43(skiatest::Reporter* reporter, const char* filename) {
1204 SkPath path;
1205 path.setFillType((SkPathFillType) 0);
1206 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1207 path.cubicTo(SkBits2Float(0x41aa5d9e), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42271b56), SkBits2Float(0xc295a109), SkBits2Float(0x4264d340), SkBits2Float(0xc2708c1d));
1208 path.lineTo(SkBits2Float(0x42256a74), SkBits2Float(0xc22de3bf));
1209 path.cubicTo(SkBits2Float(0x41f199ac), SkBits2Float(0xc25854c9), SkBits2Float(0x41764fdb), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1210 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1211 path.close();
1212
1213 SkPath path1(path);
1214 path.reset();
1215 path.setFillType((SkPathFillType) 0);
1216 path.moveTo(SkBits2Float(0x4264d342), SkBits2Float(0xc2708c1d));
1217 path.cubicTo(SkBits2Float(0x426aec59), SkBits2Float(0xc26abf16), SkBits2Float(0x4270cc6c), SkBits2Float(0xc264b73d), SkBits2Float(0x42767031), SkBits2Float(0xc25e77e8));
1218 path.lineTo(SkBits2Float(0x423225ec), SkBits2Float(0xc220d20e));
1219 path.cubicTo(SkBits2Float(0x422e123c), SkBits2Float(0xc2255633), SkBits2Float(0x4229d2f5), SkBits2Float(0xc229b23c), SkBits2Float(0x42256a74), SkBits2Float(0xc22de3c0));
1220 path.lineTo(SkBits2Float(0x4264d342), SkBits2Float(0xc2708c1d));
1221 path.close();
1222
1223 SkPath path2(path);
1224 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1225 }
1226 // op end success 1
1227
battleOp44(skiatest::Reporter * reporter,const char * filename)1228 static void battleOp44(skiatest::Reporter* reporter, const char* filename) {
1229 SkPath path;
1230 path.setFillType((SkPathFillType) 1);
1231 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1232 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1233 path.cubicTo(SkBits2Float(0x41aa5d9e), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42271b56), SkBits2Float(0xc295a109), SkBits2Float(0x4264d340), SkBits2Float(0xc2708c1d));
1234 path.lineTo(SkBits2Float(0x4264d342), SkBits2Float(0xc2708c1d));
1235 path.cubicTo(SkBits2Float(0x426aec59), SkBits2Float(0xc26abf16), SkBits2Float(0x4270cc6c), SkBits2Float(0xc264b73d), SkBits2Float(0x42767031), SkBits2Float(0xc25e77e8));
1236 path.lineTo(SkBits2Float(0x423225ec), SkBits2Float(0xc220d20e));
1237 path.cubicTo(SkBits2Float(0x422e123c), SkBits2Float(0xc2255633), SkBits2Float(0x4229d2f5), SkBits2Float(0xc229b23c), SkBits2Float(0x42256a74), SkBits2Float(0xc22de3c0));
1238 path.lineTo(SkBits2Float(0x42256a74), SkBits2Float(0xc22de3bf));
1239 path.cubicTo(SkBits2Float(0x41f199ac), SkBits2Float(0xc25854c9), SkBits2Float(0x41764fdb), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
1240 path.close();
1241
1242 SkPath path1(path);
1243 path.reset();
1244 path.setFillType((SkPathFillType) 0);
1245 path.moveTo(SkBits2Float(0x42767032), SkBits2Float(0xc25e77e8));
1246 path.cubicTo(SkBits2Float(0x42aa697a), SkBits2Float(0xc1ebd370), SkBits2Float(0x42b37ad4), SkBits2Float(0x410b48c2), SkBits2Float(0x4291d766), SkBits2Float(0x421e927b));
1247 path.lineTo(SkBits2Float(0x4252dae4), SkBits2Float(0x41e542d2));
1248 path.cubicTo(SkBits2Float(0x4281be95), SkBits2Float(0x40c95ff9), SkBits2Float(0x427660fe), SkBits2Float(0xc1aa7a03), SkBits2Float(0x423225ed), SkBits2Float(0xc220d20e));
1249 path.lineTo(SkBits2Float(0x42767032), SkBits2Float(0xc25e77e8));
1250 path.close();
1251
1252 SkPath path2(path);
1253 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1254 }
1255 // op end success 1
1256
battleOp45(skiatest::Reporter * reporter,const char * filename)1257 static void battleOp45(skiatest::Reporter* reporter, const char* filename) {
1258 SkPath path;
1259 path.setFillType((SkPathFillType) 0);
1260 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1261 path.cubicTo(SkBits2Float(0x41bfbd07), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423b0ef1), SkBits2Float(0xc2914772), SkBits2Float(0x427a1b1d), SkBits2Float(0xc25a5641));
1262 path.lineTo(SkBits2Float(0x4234ccaa), SkBits2Float(0xc21dd57d));
1263 path.cubicTo(SkBits2Float(0x42073912), SkBits2Float(0xc2520ac5), SkBits2Float(0x418a9b2a), SkBits2Float(0xc26fffff), SkBits2Float(0x3697ff52), SkBits2Float(0xc26fffff));
1264 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1265 path.close();
1266
1267 SkPath path1(path);
1268 path.reset();
1269 path.setFillType((SkPathFillType) 0);
1270 path.moveTo(SkBits2Float(0x427a1b1e), SkBits2Float(0xc25a5642));
1271 path.cubicTo(SkBits2Float(0x4280286a), SkBits2Float(0xc253393c), SkBits2Float(0x42831c11), SkBits2Float(0xc24bd939), SkBits2Float(0x4285e673), SkBits2Float(0xc2443b5f));
1272 path.lineTo(SkBits2Float(0x42419733), SkBits2Float(0xc20ddaba));
1273 path.cubicTo(SkBits2Float(0x423d8e5d), SkBits2Float(0xc2135c44), SkBits2Float(0x423949dc), SkBits2Float(0xc218b118), SkBits2Float(0x4234ccac), SkBits2Float(0xc21dd57e));
1274 path.lineTo(SkBits2Float(0x427a1b1e), SkBits2Float(0xc25a5642));
1275 path.close();
1276
1277 SkPath path2(path);
1278 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1279 }
1280 // op end success 1
1281
battleOp46(skiatest::Reporter * reporter,const char * filename)1282 static void battleOp46(skiatest::Reporter* reporter, const char* filename) {
1283 SkPath path;
1284 path.setFillType((SkPathFillType) 1);
1285 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc26fffff));
1286 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1287 path.cubicTo(SkBits2Float(0x41bfbd07), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423b0ef1), SkBits2Float(0xc2914772), SkBits2Float(0x427a1b1e), SkBits2Float(0xc25a5642));
1288 path.cubicTo(SkBits2Float(0x4280286a), SkBits2Float(0xc253393c), SkBits2Float(0x42831c11), SkBits2Float(0xc24bd939), SkBits2Float(0x4285e673), SkBits2Float(0xc2443b5f));
1289 path.lineTo(SkBits2Float(0x42419733), SkBits2Float(0xc20ddaba));
1290 path.cubicTo(SkBits2Float(0x423d8e5d), SkBits2Float(0xc2135c44), SkBits2Float(0x423949dc), SkBits2Float(0xc218b118), SkBits2Float(0x4234ccac), SkBits2Float(0xc21dd57e));
1291 path.lineTo(SkBits2Float(0x4234ccaa), SkBits2Float(0xc21dd57d));
1292 path.cubicTo(SkBits2Float(0x42073912), SkBits2Float(0xc2520ac5), SkBits2Float(0x418a9b2a), SkBits2Float(0xc26fffff), SkBits2Float(0x3697ff52), SkBits2Float(0xc26fffff));
1293 path.close();
1294
1295 SkPath path1(path);
1296 path.reset();
1297 path.setFillType((SkPathFillType) 0);
1298 path.moveTo(SkBits2Float(0x4285e672), SkBits2Float(0xc2443b5f));
1299 path.cubicTo(SkBits2Float(0x42b50145), SkBits2Float(0xc1875361), SkBits2Float(0x42afc74e), SkBits2Float(0x41db6d5e), SkBits2Float(0x4272e616), SkBits2Float(0x426253de));
1300 path.lineTo(SkBits2Float(0x422f96e8), SkBits2Float(0x42239c3e));
1301 path.cubicTo(SkBits2Float(0x427e233c), SkBits2Float(0x419e9f42), SkBits2Float(0x4282d8d3), SkBits2Float(0xc143a6d1), SkBits2Float(0x42419734), SkBits2Float(0xc20ddabb));
1302 path.lineTo(SkBits2Float(0x4285e672), SkBits2Float(0xc2443b5f));
1303 path.close();
1304
1305 SkPath path2(path);
1306 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1307 }
1308 // op end success 1
1309
battleOp47(skiatest::Reporter * reporter,const char * filename)1310 static void battleOp47(skiatest::Reporter* reporter, const char* filename) {
1311 SkPath path;
1312 path.setFillType((SkPathFillType) 0);
1313 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1314 path.cubicTo(SkBits2Float(0x41d59904), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424f13ae), SkBits2Float(0xc28c4fb7), SkBits2Float(0x4286bb70), SkBits2Float(0xc241f0ca));
1315 path.lineTo(SkBits2Float(0x4242cb24), SkBits2Float(0xc20c32b1));
1316 path.cubicTo(SkBits2Float(0x4215b1b4), SkBits2Float(0xc24adc20), SkBits2Float(0x419a6875), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
1317 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1318 path.close();
1319
1320 SkPath path1(path);
1321 path.reset();
1322 path.setFillType((SkPathFillType) 0);
1323 path.moveTo(SkBits2Float(0x4286bb71), SkBits2Float(0xc241f0ca));
1324 path.cubicTo(SkBits2Float(0x4289cb2b), SkBits2Float(0xc2396eee), SkBits2Float(0x428ca6e5), SkBits2Float(0xc230a410), SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0));
1325 path.lineTo(SkBits2Float(0x424f2d54), SkBits2Float(0xc1f24d85));
1326 path.cubicTo(SkBits2Float(0x424b5a2a), SkBits2Float(0xc1ff6268), SkBits2Float(0x42473840), SkBits2Float(0xc2060c56), SkBits2Float(0x4242cb25), SkBits2Float(0xc20c32b2));
1327 path.lineTo(SkBits2Float(0x4286bb71), SkBits2Float(0xc241f0ca));
1328 path.close();
1329
1330 SkPath path2(path);
1331 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1332 }
1333 // op end success 1
1334
battleOp48(skiatest::Reporter * reporter,const char * filename)1335 static void battleOp48(skiatest::Reporter* reporter, const char* filename) {
1336 SkPath path;
1337 path.setFillType((SkPathFillType) 1);
1338 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1339 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1340 path.cubicTo(SkBits2Float(0x41d59904), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424f13ae), SkBits2Float(0xc28c4fb7), SkBits2Float(0x4286bb71), SkBits2Float(0xc241f0ca));
1341 path.cubicTo(SkBits2Float(0x4289cb2b), SkBits2Float(0xc2396eee), SkBits2Float(0x428ca6e5), SkBits2Float(0xc230a410), SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0));
1342 path.lineTo(SkBits2Float(0x424f2d54), SkBits2Float(0xc1f24d85));
1343 path.cubicTo(SkBits2Float(0x424b5a2a), SkBits2Float(0xc1ff6268), SkBits2Float(0x42473840), SkBits2Float(0xc2060c56), SkBits2Float(0x4242cb24), SkBits2Float(0xc20c32b1));
1344 path.cubicTo(SkBits2Float(0x4215b1b4), SkBits2Float(0xc24adc20), SkBits2Float(0x419a6875), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1345 path.close();
1346
1347 SkPath path1(path);
1348 path.reset();
1349 path.setFillType((SkPathFillType) 0);
1350 path.moveTo(SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0));
1351 path.cubicTo(SkBits2Float(0x42bc6513), SkBits2Float(0xc055a915), SkBits2Float(0x42a45eb2), SkBits2Float(0x42389acf), SkBits2Float(0x4231df29), SkBits2Float(0x428c2a69));
1352 path.lineTo(SkBits2Float(0x420094fc), SkBits2Float(0x424aa62f));
1353 path.cubicTo(SkBits2Float(0x426da4ad), SkBits2Float(0x42057300), SkBits2Float(0x42883065), SkBits2Float(0xc01a7416), SkBits2Float(0x424f2d56), SkBits2Float(0xc1f24d87));
1354 path.lineTo(SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0));
1355 path.close();
1356
1357 SkPath path2(path);
1358 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1359 }
1360 // op end success 1
1361
battleOp49(skiatest::Reporter * reporter,const char * filename)1362 static void battleOp49(skiatest::Reporter* reporter, const char* filename) {
1363 SkPath path;
1364 path.setFillType((SkPathFillType) 0);
1365 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1366 path.cubicTo(SkBits2Float(0x41eed329), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4265a038), SkBits2Float(0xc285ef96), SkBits2Float(0x42905111), SkBits2Float(0xc2240eac));
1367 path.lineTo(SkBits2Float(0x4250a68d), SkBits2Float(0xc1ed30fa));
1368 path.cubicTo(SkBits2Float(0x4225fe9e), SkBits2Float(0xc241a46c), SkBits2Float(0x41aca4fc), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
1369 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1370 path.close();
1371
1372 SkPath path1(path);
1373 path.reset();
1374 path.setFillType((SkPathFillType) 0);
1375 path.moveTo(SkBits2Float(0x42905111), SkBits2Float(0xc2240ead));
1376 path.cubicTo(SkBits2Float(0x429332f8), SkBits2Float(0xc219ea36), SkBits2Float(0x4295cfef), SkBits2Float(0xc20f79c4), SkBits2Float(0x4298252c), SkBits2Float(0xc204c875));
1377 path.lineTo(SkBits2Float(0x425bf80f), SkBits2Float(0xc1bff9b9));
1378 path.cubicTo(SkBits2Float(0x42589896), SkBits2Float(0xc1cf6f48), SkBits2Float(0x4254d168), SkBits2Float(0xc1de8710), SkBits2Float(0x4250a68e), SkBits2Float(0xc1ed30fc));
1379 path.lineTo(SkBits2Float(0x42905111), SkBits2Float(0xc2240ead));
1380 path.close();
1381
1382 SkPath path2(path);
1383 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1384 }
1385 // op end success 1
1386
battleOp50(skiatest::Reporter * reporter,const char * filename)1387 static void battleOp50(skiatest::Reporter* reporter, const char* filename) {
1388 SkPath path;
1389 path.setFillType((SkPathFillType) 1);
1390 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1391 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1392 path.cubicTo(SkBits2Float(0x41eed328), SkBits2Float(0xc2a60000), SkBits2Float(0x4265a038), SkBits2Float(0xc285ef96), SkBits2Float(0x42905111), SkBits2Float(0xc2240ead));
1393 path.lineTo(SkBits2Float(0x42905111), SkBits2Float(0xc2240eac));
1394 path.cubicTo(SkBits2Float(0x429332f8), SkBits2Float(0xc219ea35), SkBits2Float(0x4295cfef), SkBits2Float(0xc20f79c4), SkBits2Float(0x4298252c), SkBits2Float(0xc204c875));
1395 path.lineTo(SkBits2Float(0x425bf80f), SkBits2Float(0xc1bff9b9));
1396 path.cubicTo(SkBits2Float(0x42589896), SkBits2Float(0xc1cf6f48), SkBits2Float(0x4254d168), SkBits2Float(0xc1de8710), SkBits2Float(0x4250a68d), SkBits2Float(0xc1ed30fa));
1397 path.cubicTo(SkBits2Float(0x4225fe9e), SkBits2Float(0xc241a46c), SkBits2Float(0x41aca4fc), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1398 path.close();
1399
1400 SkPath path1(path);
1401 path.reset();
1402 path.setFillType((SkPathFillType) 0);
1403 path.moveTo(SkBits2Float(0x4298252d), SkBits2Float(0xc204c875));
1404 path.cubicTo(SkBits2Float(0x42ab560c), SkBits2Float(0xc1334da0), SkBits2Float(0x42aa8ee6), SkBits2Float(0x415dbf57), SkBits2Float(0x4296030d), SkBits2Float(0x420e292a));
1405 path.cubicTo(SkBits2Float(0x42817734), SkBits2Float(0x4264e27f), SkBits2Float(0x42365290), SkBits2Float(0x4292cae0), SkBits2Float(0x41b3e39e), SkBits2Float(0x429fcac3));
1406 path.lineTo(SkBits2Float(0x41820a52), SkBits2Float(0x4267064e));
1407 path.cubicTo(SkBits2Float(0x4203cca7), SkBits2Float(0x42543ae9), SkBits2Float(0x423b2de4), SkBits2Float(0x42257578), SkBits2Float(0x4258e27d), SkBits2Float(0x41cd88a1));
1408 path.cubicTo(SkBits2Float(0x42769717), SkBits2Float(0x41204ca2), SkBits2Float(0x4277b705), SkBits2Float(0xc1019de9), SkBits2Float(0x425bf810), SkBits2Float(0xc1bff9bb));
1409 path.lineTo(SkBits2Float(0x4298252d), SkBits2Float(0xc204c875));
1410 path.close();
1411
1412 SkPath path2(path);
1413 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1414 }
1415 // op end success 1
1416
battleOp51(skiatest::Reporter * reporter,const char * filename)1417 static void battleOp51(skiatest::Reporter* reporter, const char* filename) {
1418 SkPath path;
1419 path.setFillType((SkPathFillType) 0);
1420 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1421 path.cubicTo(SkBits2Float(0x42044d64), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427bf9ef), SkBits2Float(0xc27d72ab), SkBits2Float(0x42984d42), SkBits2Float(0xc2041029));
1422 path.lineTo(SkBits2Float(0x425c3202), SkBits2Float(0xc1beef44));
1423 path.cubicTo(SkBits2Float(0x423626cb), SkBits2Float(0xc2373722), SkBits2Float(0x41bf47cb), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
1424 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1425 path.close();
1426
1427 SkPath path1(path);
1428 path.reset();
1429 path.setFillType((SkPathFillType) 0);
1430 path.moveTo(SkBits2Float(0x42984d42), SkBits2Float(0xc2041029));
1431 path.cubicTo(SkBits2Float(0x429adc06), SkBits2Float(0xc1f08771), SkBits2Float(0x429d127e), SkBits2Float(0xc1d85b80), SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc5));
1432 path.lineTo(SkBits2Float(0x4265c6d6), SkBits2Float(0xc18a9a3f));
1433 path.cubicTo(SkBits2Float(0x426317a7), SkBits2Float(0xc19c6729), SkBits2Float(0x425fe4aa), SkBits2Float(0xc1ade05f), SkBits2Float(0x425c3203), SkBits2Float(0xc1beef45));
1434 path.lineTo(SkBits2Float(0x42984d42), SkBits2Float(0xc2041029));
1435 path.close();
1436
1437 SkPath path2(path);
1438 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1439 }
1440 // op end success 1
1441
battleOp52(skiatest::Reporter * reporter,const char * filename)1442 static void battleOp52(skiatest::Reporter* reporter, const char* filename) {
1443 SkPath path;
1444 path.setFillType((SkPathFillType) 1);
1445 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1446 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1447 path.cubicTo(SkBits2Float(0x42044d64), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427bf9ef), SkBits2Float(0xc27d72ab), SkBits2Float(0x42984d42), SkBits2Float(0xc2041029));
1448 path.cubicTo(SkBits2Float(0x429adc06), SkBits2Float(0xc1f08771), SkBits2Float(0x429d127e), SkBits2Float(0xc1d85b80), SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc5));
1449 path.lineTo(SkBits2Float(0x4265c6d6), SkBits2Float(0xc18a9a3f));
1450 path.cubicTo(SkBits2Float(0x426317a7), SkBits2Float(0xc19c6729), SkBits2Float(0x425fe4aa), SkBits2Float(0xc1ade05f), SkBits2Float(0x425c3202), SkBits2Float(0xc1beef44));
1451 path.cubicTo(SkBits2Float(0x423626cb), SkBits2Float(0xc2373722), SkBits2Float(0x41bf47cb), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1452 path.close();
1453
1454 SkPath path1(path);
1455 path.reset();
1456 path.setFillType((SkPathFillType) 0);
1457 path.moveTo(SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc6));
1458 path.cubicTo(SkBits2Float(0x42ae408c), SkBits2Float(0x3fb7daeb), SkBits2Float(0x42a45c89), SkBits2Float(0x41e7c57e), SkBits2Float(0x42845101), SkBits2Float(0x42487bac));
1459 path.cubicTo(SkBits2Float(0x42488af1), SkBits2Float(0x428e8a4c), SkBits2Float(0x41c7bd0e), SkBits2Float(0x42a6f806), SkBits2Float(0xbfc7d871), SkBits2Float(0x42a5f87b));
1460 path.lineTo(SkBits2Float(0xbf90777c), SkBits2Float(0x426ff521));
1461 path.cubicTo(SkBits2Float(0x419063a9), SkBits2Float(0x42716698), SkBits2Float(0x4210f87e), SkBits2Float(0x424e1511), SkBits2Float(0x423f4d05), SkBits2Float(0x4210ed75));
1462 path.cubicTo(SkBits2Float(0x426da18c), SkBits2Float(0x41a78bb1), SkBits2Float(0x427bee4d), SkBits2Float(0x3f84e856), SkBits2Float(0x4265c6d8), SkBits2Float(0xc18a9a40));
1463 path.lineTo(SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc6));
1464 path.close();
1465
1466 SkPath path2(path);
1467 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1468 }
1469 // op end success 1
1470
battleOp53(skiatest::Reporter * reporter,const char * filename)1471 static void battleOp53(skiatest::Reporter* reporter, const char* filename) {
1472 SkPath path;
1473 path.setFillType((SkPathFillType) 0);
1474 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1475 path.cubicTo(SkBits2Float(0x421216db), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4289817d), SkBits2Float(0xc26c814f), SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183ed));
1476 path.lineTo(SkBits2Float(0x426594dc), SkBits2Float(0xc18be3fc));
1477 path.cubicTo(SkBits2Float(0x4246cdba), SkBits2Float(0xc22af7b1), SkBits2Float(0x41d336a3), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
1478 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1479 path.close();
1480
1481 SkPath path1(path);
1482 path.reset();
1483 path.setFillType((SkPathFillType) 0);
1484 path.moveTo(SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183e9));
1485 path.cubicTo(SkBits2Float(0x42a0d9cb), SkBits2Float(0xc1a68281), SkBits2Float(0x42a27999), SkBits2Float(0xc18b01ce), SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595d));
1486 path.lineTo(SkBits2Float(0x426c9cb2), SkBits2Float(0xc120bbfa));
1487 path.cubicTo(SkBits2Float(0x426ae754), SkBits2Float(0xc148f95c), SkBits2Float(0x42688e2a), SkBits2Float(0xc170bcb0), SkBits2Float(0x426594dd), SkBits2Float(0xc18be3fd));
1488 path.lineTo(SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183e9));
1489 path.close();
1490
1491 SkPath path2(path);
1492 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1493 }
1494 // op end success 1
1495
battleOp54(skiatest::Reporter * reporter,const char * filename)1496 static void battleOp54(skiatest::Reporter* reporter, const char* filename) {
1497 SkPath path;
1498 path.setFillType((SkPathFillType) 1);
1499 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1500 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1501 path.cubicTo(SkBits2Float(0x421216db), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4289817d), SkBits2Float(0xc26c814f), SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183ed));
1502 path.lineTo(SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595d));
1503 path.lineTo(SkBits2Float(0x426c9cb2), SkBits2Float(0xc120bbfa));
1504 path.cubicTo(SkBits2Float(0x426ae754), SkBits2Float(0xc148f95c), SkBits2Float(0x42688e2a), SkBits2Float(0xc170bcb0), SkBits2Float(0x426594dd), SkBits2Float(0xc18be3fd));
1505 path.lineTo(SkBits2Float(0x426594dc), SkBits2Float(0xc18be3fc));
1506 path.cubicTo(SkBits2Float(0x4246cdba), SkBits2Float(0xc22af7b1), SkBits2Float(0x41d336a3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1507 path.close();
1508
1509 SkPath path1(path);
1510 path.reset();
1511 path.setFillType((SkPathFillType) 0);
1512 path.moveTo(SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595e));
1513 path.cubicTo(SkBits2Float(0x42ad725e), SkBits2Float(0x416ed313), SkBits2Float(0x42982fa2), SkBits2Float(0x4230cc44), SkBits2Float(0x42575fca), SkBits2Float(0x427ca963));
1514 path.cubicTo(SkBits2Float(0x41fcc0a1), SkBits2Float(0x42a44341), SkBits2Float(0x3f80ed4e), SkBits2Float(0x42affc4e), SkBits2Float(0xc1d56b7f), SkBits2Float(0x429d3115));
1515 path.lineTo(SkBits2Float(0xc19a478e), SkBits2Float(0x426343e2));
1516 path.cubicTo(SkBits2Float(0x3f3a6666), SkBits2Float(0x427e6fe0), SkBits2Float(0x41b6b66f), SkBits2Float(0x426d7d04), SkBits2Float(0x421bb135), SkBits2Float(0x4236a5a5));
1517 path.cubicTo(SkBits2Float(0x425c0733), SkBits2Float(0x41ff9c8c), SkBits2Float(0x427ac435), SkBits2Float(0x412ca4f2), SkBits2Float(0x426c9cb3), SkBits2Float(0xc120bbf8));
1518 path.lineTo(SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595e));
1519 path.close();
1520
1521 SkPath path2(path);
1522 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1523 }
1524 // op end success 1
1525
battleOp55(skiatest::Reporter * reporter,const char * filename)1526 static void battleOp55(skiatest::Reporter* reporter, const char* filename) {
1527 SkPath path;
1528 path.setFillType((SkPathFillType) 0);
1529 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1530 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f68), SkBits2Float(0xc16b5614));
1531 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61));
1532 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
1533 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1534 path.close();
1535
1536 SkPath path1(path);
1537 path.reset();
1538 path.setFillType((SkPathFillType) 0);
1539 path.moveTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613));
1540 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
1541 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48));
1542 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63));
1543 path.lineTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613));
1544 path.close();
1545
1546 SkPath path2(path);
1547 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1548 }
1549 // op end success 1
1550
battleOp56(skiatest::Reporter * reporter,const char * filename)1551 static void battleOp56(skiatest::Reporter* reporter, const char* filename) {
1552 SkPath path;
1553 path.setFillType((SkPathFillType) 1);
1554 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
1555 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1556 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613));
1557 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
1558 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48));
1559 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63));
1560 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61));
1561 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
1562 path.close();
1563
1564 SkPath path1(path);
1565 path.reset();
1566 path.setFillType((SkPathFillType) 0);
1567 path.moveTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
1568 path.cubicTo(SkBits2Float(0x42a85e4f), SkBits2Float(0x41e6959e), SkBits2Float(0x4285b4e3), SkBits2Float(0x426ae44f), SkBits2Float(0x4219b105), SkBits2Float(0x42932450));
1569 path.cubicTo(SkBits2Float(0x411fe111), SkBits2Float(0x42b0d679), SkBits2Float(0xc1c3966b), SkBits2Float(0x42ab1d42), SkBits2Float(0xc2482755), SkBits2Float(0x428470e8));
1570 path.lineTo(SkBits2Float(0xc210b07c), SkBits2Float(0x423f7b24));
1571 path.cubicTo(SkBits2Float(0xc18d6382), SkBits2Float(0x427764e8), SkBits2Float(0x40e72680), SkBits2Float(0x427fab4e), SkBits2Float(0x41de345e), SkBits2Float(0x4254bc3b));
1572 path.cubicTo(SkBits2Float(0x42414f8e), SkBits2Float(0x4229cd28), SkBits2Float(0x42736c9d), SkBits2Float(0x41a6b008), SkBits2Float(0x426fd18e), SkBits2Float(0xc0154a3f));
1573 path.lineTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
1574 path.close();
1575
1576 SkPath path2(path);
1577 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1578 }
1579 // op end success 1
1580
battleOp57(skiatest::Reporter * reporter,const char * filename)1581 static void battleOp57(skiatest::Reporter* reporter, const char* filename) {
1582 SkPath path;
1583 path.setFillType((SkPathFillType) 0);
1584 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1585 path.cubicTo(SkBits2Float(0x422b8e0b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429d6dbc), SkBits2Float(0xc2494bad), SkBits2Float(0x42a54cb6), SkBits2Float(0xc0f3b760));
1586 path.lineTo(SkBits2Float(0x426efcca), SkBits2Float(0xc0b02e2c));
1587 path.cubicTo(SkBits2Float(0x42639b94), SkBits2Float(0xc21183d2), SkBits2Float(0x41f807f9), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
1588 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1589 path.close();
1590
1591 SkPath path1(path);
1592 path.reset();
1593 path.setFillType((SkPathFillType) 0);
1594 path.moveTo(SkBits2Float(0x42a54cb7), SkBits2Float(0xc0f3b757));
1595 path.cubicTo(SkBits2Float(0x42a60d08), SkBits2Float(0xc0628d9e), SkBits2Float(0x42a632b1), SkBits2Float(0x3f0efcd8), SkBits2Float(0x42a5bd61), SkBits2Float(0x4094a90a));
1596 path.lineTo(SkBits2Float(0x426f9faf), SkBits2Float(0x4056ee3d));
1597 path.cubicTo(SkBits2Float(0x42704949), SkBits2Float(0x3ecebaba), SkBits2Float(0x427012d8), SkBits2Float(0xc023c5fe), SkBits2Float(0x426efccb), SkBits2Float(0xc0b02e2d));
1598 path.lineTo(SkBits2Float(0x42a54cb7), SkBits2Float(0xc0f3b757));
1599 path.close();
1600
1601 SkPath path2(path);
1602 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1603 }
1604 // op end success 1
1605
battleOp58(skiatest::Reporter * reporter,const char * filename)1606 static void battleOp58(skiatest::Reporter* reporter, const char* filename) {
1607 SkPath path;
1608 path.setFillType((SkPathFillType) 1);
1609 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
1610 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1611 path.cubicTo(SkBits2Float(0x422b8e0b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429d6dbc), SkBits2Float(0xc2494bad), SkBits2Float(0x42a54cb7), SkBits2Float(0xc0f3b757));
1612 path.cubicTo(SkBits2Float(0x42a60d08), SkBits2Float(0xc0628d9e), SkBits2Float(0x42a632b1), SkBits2Float(0x3f0efcd8), SkBits2Float(0x42a5bd61), SkBits2Float(0x4094a90a));
1613 path.lineTo(SkBits2Float(0x426f9faf), SkBits2Float(0x4056ee3d));
1614 path.cubicTo(SkBits2Float(0x42704949), SkBits2Float(0x3ecebaba), SkBits2Float(0x427012d8), SkBits2Float(0xc023c5fe), SkBits2Float(0x426efcca), SkBits2Float(0xc0b02e2c));
1615 path.cubicTo(SkBits2Float(0x42639b94), SkBits2Float(0xc21183d2), SkBits2Float(0x41f807f9), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
1616 path.close();
1617
1618 SkPath path1(path);
1619 path.reset();
1620 path.setFillType((SkPathFillType) 0);
1621 path.moveTo(SkBits2Float(0x42a5bd62), SkBits2Float(0x4094a90c));
1622 path.cubicTo(SkBits2Float(0x42a1e9d4), SkBits2Float(0x421b17cd), SkBits2Float(0x426944f3), SkBits2Float(0x428879ea), SkBits2Float(0x41ceac14), SkBits2Float(0x429dc116));
1623 path.cubicTo(SkBits2Float(0xc0d4c6f5), SkBits2Float(0x42b30843), SkBits2Float(0xc2295516), SkBits2Float(0x429e4e8b), SkBits2Float(0xc2802142), SkBits2Float(0x4253148e));
1624 path.lineTo(SkBits2Float(0xc2393f81), SkBits2Float(0x42189693));
1625 path.cubicTo(SkBits2Float(0xc1f4d162), SkBits2Float(0x4264e09b), SkBits2Float(0xc099d099), SkBits2Float(0x42816bc3), SkBits2Float(0x419566d0), SkBits2Float(0x42641418));
1626 path.cubicTo(SkBits2Float(0x4228a0e3), SkBits2Float(0x424550a9), SkBits2Float(0x426a177b), SkBits2Float(0x41e03b19), SkBits2Float(0x426f9fb0), SkBits2Float(0x4056ee3a));
1627 path.lineTo(SkBits2Float(0x42a5bd62), SkBits2Float(0x4094a90c));
1628 path.close();
1629
1630 SkPath path2(path);
1631 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1632 }
1633 // op end success 1
1634
battleOp59(skiatest::Reporter * reporter,const char * filename)1635 static void battleOp59(skiatest::Reporter* reporter, const char* filename) { // hung
1636 SkPath path;
1637 path.setFillType((SkPathFillType) 0);
1638 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1639 path.cubicTo(SkBits2Float(0x423693bc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42a57249), SkBits2Float(0xc2389374), SkBits2Float(0x42a5ff3a), SkBits2Float(0xbf002494));
1640 path.lineTo(SkBits2Float(0x426ffee2), SkBits2Float(0xbeb944c3));
1641 path.cubicTo(SkBits2Float(0x426f331d), SkBits2Float(0xc2056daf), SkBits2Float(0x4203fbc4), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
1642 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1643 path.close();
1644
1645 SkPath path1(path);
1646 path.reset();
1647 path.setFillType((SkPathFillType) 0);
1648 path.moveTo(SkBits2Float(0x42a5ff3a), SkBits2Float(0xbf0024e6));
1649 path.cubicTo(SkBits2Float(0x42a60c9b), SkBits2Float(0x40752b0d), SkBits2Float(0x42a56c5d), SkBits2Float(0x410284fd), SkBits2Float(0x42a41ffb), SkBits2Float(0x414709fb));
1650 path.lineTo(SkBits2Float(0x426d49ff), SkBits2Float(0x410fe233));
1651 path.cubicTo(SkBits2Float(0x426f2a8e), SkBits2Float(0x40bcb3f0), SkBits2Float(0x42701239), SkBits2Float(0x40313ae3), SkBits2Float(0x426ffee3), SkBits2Float(0xbeb944c6));
1652 path.lineTo(SkBits2Float(0x42a5ff3a), SkBits2Float(0xbf0024e6));
1653 path.close();
1654
1655 SkPath path2(path);
1656 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1657 }
1658
battleOp60(skiatest::Reporter * reporter,const char * filename)1659 static void battleOp60(skiatest::Reporter* reporter, const char* filename) {
1660 SkPath path;
1661 path.setFillType((SkPathFillType) 0);
1662 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1663 path.cubicTo(SkBits2Float(0x3e9334c2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f13342a), SkBits2Float(0xc2a5ff3c), SkBits2Float(0x3f5ccd0d), SkBits2Float(0xc2a5fdb4));
1664 path.lineTo(SkBits2Float(0x3f1f9d85), SkBits2Float(0xc26ffcaf));
1665 path.cubicTo(SkBits2Float(0x3ed4d324), SkBits2Float(0xc26ffee7), SkBits2Float(0x3e54d404), SkBits2Float(0xc2700000), SkBits2Float(0x36b23f68), SkBits2Float(0xc2700000));
1666 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1667 path.close();
1668
1669 SkPath path1(path);
1670 path.reset();
1671 path.setFillType((SkPathFillType) 0);
1672 path.moveTo(SkBits2Float(0x3f5ccd1a), SkBits2Float(0xc2a5fdb5));
1673 path.cubicTo(SkBits2Float(0x3f642956), SkBits2Float(0xc2a5fd8c), SkBits2Float(0x3f6b855d), SkBits2Float(0xc2a5fd63), SkBits2Float(0x3f72e163), SkBits2Float(0xc2a5fd38));
1674 path.lineTo(SkBits2Float(0x3f2f9381), SkBits2Float(0xc26ffbfc));
1675 path.cubicTo(SkBits2Float(0x3f2a4188), SkBits2Float(0xc26ffc3b), SkBits2Float(0x3f24ef95), SkBits2Float(0xc26ffc76), SkBits2Float(0x3f1f9da0), SkBits2Float(0xc26ffcb0));
1676 path.lineTo(SkBits2Float(0x3f5ccd1a), SkBits2Float(0xc2a5fdb5));
1677 path.close();
1678
1679 SkPath path2(path);
1680 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1681 }
1682 // op end success 1
1683
battleOp61(skiatest::Reporter * reporter,const char * filename)1684 static void battleOp61(skiatest::Reporter* reporter, const char* filename) {
1685 SkPath path;
1686 path.setFillType((SkPathFillType) 1);
1687 path.moveTo(SkBits2Float(0x36b23f68), SkBits2Float(0xc2700000));
1688 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1689 path.cubicTo(SkBits2Float(0x3e9334c2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f13342a), SkBits2Float(0xc2a5ff3c), SkBits2Float(0x3f5ccd1a), SkBits2Float(0xc2a5fdb5));
1690 path.cubicTo(SkBits2Float(0x3f642956), SkBits2Float(0xc2a5fd8c), SkBits2Float(0x3f6b855d), SkBits2Float(0xc2a5fd63), SkBits2Float(0x3f72e163), SkBits2Float(0xc2a5fd38));
1691 path.lineTo(SkBits2Float(0x3f2f9381), SkBits2Float(0xc26ffbfc));
1692 path.cubicTo(SkBits2Float(0x3f2a4188), SkBits2Float(0xc26ffc3b), SkBits2Float(0x3f24ef95), SkBits2Float(0xc26ffc76), SkBits2Float(0x3f1f9d85), SkBits2Float(0xc26ffcaf));
1693 path.cubicTo(SkBits2Float(0x3ed4d324), SkBits2Float(0xc26ffee7), SkBits2Float(0x3e54d404), SkBits2Float(0xc2700000), SkBits2Float(0x36b23f68), SkBits2Float(0xc2700000));
1694 path.close();
1695
1696 SkPath path1(path);
1697 path.reset();
1698 path.setFillType((SkPathFillType) 0);
1699 path.moveTo(SkBits2Float(0x3f72e162), SkBits2Float(0xc2a5fd39));
1700 path.cubicTo(SkBits2Float(0x3fb51288), SkBits2Float(0xc2a5fa80), SkBits2Float(0x3ff0b297), SkBits2Float(0xc2a5f5c4), SkBits2Float(0x401627a5), SkBits2Float(0xc2a5ef06));
1701 path.lineTo(SkBits2Float(0x3fd9177b), SkBits2Float(0xc26fe773));
1702 path.cubicTo(SkBits2Float(0x3fadff90), SkBits2Float(0xc26ff134), SkBits2Float(0x3f82e54e), SkBits2Float(0xc26ff80c), SkBits2Float(0x3f2f9393), SkBits2Float(0xc26ffbfc));
1703 path.lineTo(SkBits2Float(0x3f72e162), SkBits2Float(0xc2a5fd39));
1704 path.close();
1705
1706 SkPath path2(path);
1707 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1708 }
1709 // op end success 1
1710
battleOp62(skiatest::Reporter * reporter,const char * filename)1711 static void battleOp62(skiatest::Reporter* reporter, const char* filename) {
1712 SkPath path;
1713 path.setFillType((SkPathFillType) 0);
1714 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1715 path.cubicTo(SkBits2Float(0x3f614848), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fe14683), SkBits2Float(0xc2a5f8d5), SkBits2Float(0x4028ee0f), SkBits2Float(0xc2a5ea81));
1716 path.lineTo(SkBits2Float(0x3ff43c76), SkBits2Float(0xc26fe0ec));
1717 path.cubicTo(SkBits2Float(0x3fa2d98a), SkBits2Float(0xc26ff5a4), SkBits2Float(0x3f22dad5), SkBits2Float(0xc2700000), SkBits2Float(0xb5420574), SkBits2Float(0xc2700000));
1718 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1719 path.close();
1720
1721 SkPath path1(path);
1722 path.reset();
1723 path.setFillType((SkPathFillType) 0);
1724 path.moveTo(SkBits2Float(0x4028ee15), SkBits2Float(0xc2a5ea81));
1725 path.cubicTo(SkBits2Float(0x402e8f25), SkBits2Float(0xc2a5e912), SkBits2Float(0x40343026), SkBits2Float(0xc2a5e791), SkBits2Float(0x4039d111), SkBits2Float(0xc2a5e5fd));
1726 path.lineTo(SkBits2Float(0x4006533c), SkBits2Float(0xc26fda66));
1727 path.cubicTo(SkBits2Float(0x4002419e), SkBits2Float(0xc26fdcaf), SkBits2Float(0x3ffc5fdb), SkBits2Float(0xc26fdedc), SkBits2Float(0x3ff43c61), SkBits2Float(0xc26fe0ed));
1728 path.lineTo(SkBits2Float(0x4028ee15), SkBits2Float(0xc2a5ea81));
1729 path.close();
1730
1731 SkPath path2(path);
1732 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1733 }
1734 // op end success 1
1735
battleOp63(skiatest::Reporter * reporter,const char * filename)1736 static void battleOp63(skiatest::Reporter* reporter, const char* filename) {
1737 SkPath path;
1738 path.setFillType((SkPathFillType) 1);
1739 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1740 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1741 path.cubicTo(SkBits2Float(0x3f614848), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fe14683), SkBits2Float(0xc2a5f8d5), SkBits2Float(0x4028ee15), SkBits2Float(0xc2a5ea81));
1742 path.cubicTo(SkBits2Float(0x402e8f25), SkBits2Float(0xc2a5e912), SkBits2Float(0x40343026), SkBits2Float(0xc2a5e791), SkBits2Float(0x4039d111), SkBits2Float(0xc2a5e5fd));
1743 path.lineTo(SkBits2Float(0x4006533c), SkBits2Float(0xc26fda66));
1744 path.cubicTo(SkBits2Float(0x400241a2), SkBits2Float(0xc26fdcaf), SkBits2Float(0x3ffc5fea), SkBits2Float(0xc26fdedc), SkBits2Float(0x3ff43c76), SkBits2Float(0xc26fe0ec));
1745 path.cubicTo(SkBits2Float(0x3fa2d98a), SkBits2Float(0xc26ff5a4), SkBits2Float(0x3f22dad5), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
1746 path.close();
1747 path.moveTo(SkBits2Float(0x40186abb), SkBits2Float(0xc295b297));
1748 path.lineTo(SkBits2Float(0x3ff43c61), SkBits2Float(0xc26fe0ed));
1749 path.lineTo(SkBits2Float(0x3ff43c77), SkBits2Float(0xc26fe0ed));
1750 path.lineTo(SkBits2Float(0x40186abb), SkBits2Float(0xc295b297));
1751 path.close();
1752
1753 SkPath path1(path);
1754 path.reset();
1755 path.setFillType((SkPathFillType) 0);
1756 path.moveTo(SkBits2Float(0x4039d102), SkBits2Float(0xc2a5e5fe));
1757 path.cubicTo(SkBits2Float(0x408a83ff), SkBits2Float(0xc2a5cc72), SkBits2Float(0x40b8130f), SkBits2Float(0xc2a5a01a), SkBits2Float(0x40e58a06), SkBits2Float(0xc2a56100));
1758 path.lineTo(SkBits2Float(0x40a5ee90), SkBits2Float(0xc26f1a20));
1759 path.cubicTo(SkBits2Float(0x408510de), SkBits2Float(0xc26f755e), SkBits2Float(0x40484386), SkBits2Float(0xc26fb57a), SkBits2Float(0x40065347), SkBits2Float(0xc26fda68));
1760 path.lineTo(SkBits2Float(0x4039d102), SkBits2Float(0xc2a5e5fe));
1761 path.close();
1762
1763 SkPath path2(path);
1764 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1765 }
1766 // op end success 1
1767
battleOp64(skiatest::Reporter * reporter,const char * filename)1768 static void battleOp64(skiatest::Reporter* reporter, const char* filename) {
1769 SkPath path;
1770 path.setFillType((SkPathFillType) 0);
1771 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1772 path.cubicTo(SkBits2Float(0x3faf587e), SkBits2Float(0xc2a5ffff), SkBits2Float(0x402f5505), SkBits2Float(0xc2a5eea1), SkBits2Float(0x408372de), SkBits2Float(0xc2a5cbeb));
1773 path.lineTo(SkBits2Float(0x403e0bd0), SkBits2Float(0xc26fb4b6));
1774 path.cubicTo(SkBits2Float(0x3ffd7de6), SkBits2Float(0xc26fe6e6), SkBits2Float(0x3f7d82fb), SkBits2Float(0xc2700000), SkBits2Float(0x363f7eb2), SkBits2Float(0xc2700000));
1775 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1776 path.close();
1777
1778 SkPath path1(path);
1779 path.reset();
1780 path.setFillType((SkPathFillType) 0);
1781 path.moveTo(SkBits2Float(0x408372d6), SkBits2Float(0xc2a5cbec));
1782 path.cubicTo(SkBits2Float(0x4087d39d), SkBits2Float(0xc2a5c874), SkBits2Float(0x408c3440), SkBits2Float(0xc2a5c4cf), SkBits2Float(0x409094bd), SkBits2Float(0xc2a5c0fe));
1783 path.lineTo(SkBits2Float(0x40510866), SkBits2Float(0xc26fa4e7));
1784 path.cubicTo(SkBits2Float(0x404ab468), SkBits2Float(0xc26faa6c), SkBits2Float(0x40446037), SkBits2Float(0xc26fafb2), SkBits2Float(0x403e0bd2), SkBits2Float(0xc26fb4b7));
1785 path.lineTo(SkBits2Float(0x408372d6), SkBits2Float(0xc2a5cbec));
1786 path.close();
1787
1788 SkPath path2(path);
1789 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1790 }
1791 // op end success 1
1792
battleOp65(skiatest::Reporter * reporter,const char * filename)1793 static void battleOp65(skiatest::Reporter* reporter, const char* filename) {
1794 SkPath path;
1795 path.setFillType((SkPathFillType) 1);
1796 path.moveTo(SkBits2Float(0x363f7eb2), SkBits2Float(0xc2700000));
1797 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1798 path.cubicTo(SkBits2Float(0x3faf5872), SkBits2Float(0xc2a60000), SkBits2Float(0x402f54f9), SkBits2Float(0xc2a5eea1), SkBits2Float(0x408372d5), SkBits2Float(0xc2a5cbeb));
1799 path.lineTo(SkBits2Float(0x408372d6), SkBits2Float(0xc2a5cbec));
1800 path.cubicTo(SkBits2Float(0x4087d39d), SkBits2Float(0xc2a5c874), SkBits2Float(0x408c3440), SkBits2Float(0xc2a5c4cf), SkBits2Float(0x409094bd), SkBits2Float(0xc2a5c0fe));
1801 path.lineTo(SkBits2Float(0x40510866), SkBits2Float(0xc26fa4e7));
1802 path.cubicTo(SkBits2Float(0x404ab468), SkBits2Float(0xc26faa6c), SkBits2Float(0x40446037), SkBits2Float(0xc26fafb2), SkBits2Float(0x403e0bd0), SkBits2Float(0xc26fb4b6));
1803 path.cubicTo(SkBits2Float(0x3ffd7de6), SkBits2Float(0xc26fe6e6), SkBits2Float(0x3f7d82fb), SkBits2Float(0xc2700000), SkBits2Float(0x363f7eb2), SkBits2Float(0xc2700000));
1804 path.close();
1805
1806 SkPath path1(path);
1807 path.reset();
1808 path.setFillType((SkPathFillType) 0);
1809 path.moveTo(SkBits2Float(0x409094be), SkBits2Float(0xc2a5c0fe));
1810 path.cubicTo(SkBits2Float(0x40d784bb), SkBits2Float(0xc2a5831d), SkBits2Float(0x410f22d3), SkBits2Float(0xc2a517ba), SkBits2Float(0x413255ec), SkBits2Float(0xc2a47f15));
1811 path.lineTo(SkBits2Float(0x4100ead4), SkBits2Float(0xc26dd37e));
1812 path.cubicTo(SkBits2Float(0x40cef193), SkBits2Float(0xc26eb02f), SkBits2Float(0x409bcbdf), SkBits2Float(0xc26f4b72), SkBits2Float(0x40510859), SkBits2Float(0xc26fa4e8));
1813 path.lineTo(SkBits2Float(0x409094be), SkBits2Float(0xc2a5c0fe));
1814 path.close();
1815
1816 SkPath path2(path);
1817 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1818 }
1819 // op end success 1
1820
battleOp66(skiatest::Reporter * reporter,const char * filename)1821 static void battleOp66(skiatest::Reporter* reporter, const char* filename) {
1822 SkPath path;
1823 path.setFillType((SkPathFillType) 0);
1824 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1825 path.cubicTo(SkBits2Float(0x4037e518), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b7d534), SkBits2Float(0xc2a5b39a), SkBits2Float(0x4109a47d), SkBits2Float(0xc2a51b1f));
1826 path.lineTo(SkBits2Float(0x40c70051), SkBits2Float(0xc26eb519));
1827 path.cubicTo(SkBits2Float(0x4084e427), SkBits2Float(0xc26f918c), SkBits2Float(0x4004efa4), SkBits2Float(0xc26fffff), SkBits2Float(0x3543fa8c), SkBits2Float(0xc26fffff));
1828 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1829 path.close();
1830
1831 SkPath path1(path);
1832 path.reset();
1833 path.setFillType((SkPathFillType) 0);
1834 path.moveTo(SkBits2Float(0x4109a47c), SkBits2Float(0xc2a51b20));
1835 path.cubicTo(SkBits2Float(0x410e36d1), SkBits2Float(0xc2a50be2), SkBits2Float(0x4112c883), SkBits2Float(0xc2a4fbe1), SkBits2Float(0x41175985), SkBits2Float(0xc2a4eb1d));
1836 path.lineTo(SkBits2Float(0x40dad196), SkBits2Float(0xc26e6faf));
1837 path.cubicTo(SkBits2Float(0x40d4377d), SkBits2Float(0xc26e87ed), SkBits2Float(0x40cd9c5c), SkBits2Float(0xc26e9f10), SkBits2Float(0x40c7004e), SkBits2Float(0xc26eb51a));
1838 path.lineTo(SkBits2Float(0x4109a47c), SkBits2Float(0xc2a51b20));
1839 path.close();
1840
1841 SkPath path2(path);
1842 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1843 }
1844 // op end success 1
1845
battleOp67(skiatest::Reporter * reporter,const char * filename)1846 static void battleOp67(skiatest::Reporter* reporter, const char* filename) { // crashed
1847 SkPath path;
1848 path.setFillType((SkPathFillType) 1);
1849 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
1850 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1851 path.cubicTo(SkBits2Float(0x4037e518), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b7d534), SkBits2Float(0xc2a5b39a), SkBits2Float(0x4109a47c), SkBits2Float(0xc2a51b20));
1852 path.cubicTo(SkBits2Float(0x410e36d1), SkBits2Float(0xc2a50be2), SkBits2Float(0x4112c883), SkBits2Float(0xc2a4fbe1), SkBits2Float(0x41175985), SkBits2Float(0xc2a4eb1d));
1853 path.lineTo(SkBits2Float(0x40dad196), SkBits2Float(0xc26e6faf));
1854 path.cubicTo(SkBits2Float(0x40d4377e), SkBits2Float(0xc26e87ed), SkBits2Float(0x40cd9c5f), SkBits2Float(0xc26e9f10), SkBits2Float(0x40c70052), SkBits2Float(0xc26eb51a));
1855 path.lineTo(SkBits2Float(0x40c70051), SkBits2Float(0xc26eb519));
1856 path.cubicTo(SkBits2Float(0x4084e427), SkBits2Float(0xc26f918c), SkBits2Float(0x4004efa4), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
1857 path.close();
1858
1859 SkPath path1(path);
1860 path.reset();
1861 path.setFillType((SkPathFillType) 0);
1862 path.moveTo(SkBits2Float(0x4117597f), SkBits2Float(0xc2a4eb1d));
1863 path.cubicTo(SkBits2Float(0x41616445), SkBits2Float(0xc2a3db51), SkBits2Float(0x41954b2d), SkBits2Float(0xc2a2048b), SkBits2Float(0x41b914a4), SkBits2Float(0xc29f6bcb));
1864 path.lineTo(SkBits2Float(0x4185cb10), SkBits2Float(0xc2667d00));
1865 path.cubicTo(SkBits2Float(0x4157d8a2), SkBits2Float(0xc26a3e17), SkBits2Float(0x4122ef07), SkBits2Float(0xc26ce6b9), SkBits2Float(0x40dad195), SkBits2Float(0xc26e6faf));
1866 path.lineTo(SkBits2Float(0x4117597f), SkBits2Float(0xc2a4eb1d));
1867 path.close();
1868
1869 SkPath path2(path);
1870 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1871 }
1872
battleOp68(skiatest::Reporter * reporter,const char * filename)1873 static void battleOp68(skiatest::Reporter* reporter, const char* filename) {
1874 SkPath path;
1875 path.setFillType((SkPathFillType) 0);
1876 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1877 path.cubicTo(SkBits2Float(0x3e1b2207), SkBits2Float(0xc2a60000), SkBits2Float(0x3e9b2105), SkBits2Float(0xc2a5ffca), SkBits2Float(0x3ee8b0c0), SkBits2Float(0xc2a5ff5d));
1878 path.lineTo(SkBits2Float(0x3ea83563), SkBits2Float(0xc26fff14));
1879 path.cubicTo(SkBits2Float(0x3e60486a), SkBits2Float(0xc26fffb2), SkBits2Float(0x3de049e3), SkBits2Float(0xc2700000), SkBits2Float(0x36b67768), SkBits2Float(0xc2700000));
1880 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1881 path.close();
1882
1883 SkPath path1(path);
1884 path.reset();
1885 path.setFillType((SkPathFillType) 0);
1886 path.moveTo(SkBits2Float(0x3ee8b040), SkBits2Float(0xc2a5ff5d));
1887 path.cubicTo(SkBits2Float(0x3ef0720a), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef83386), SkBits2Float(0xc2a5ff47), SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b));
1888 path.lineTo(SkBits2Float(0x3eb90778), SkBits2Float(0xc26ffee3));
1889 path.cubicTo(SkBits2Float(0x3eb36c27), SkBits2Float(0xc26ffef6), SkBits2Float(0x3eadd0dd), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea83592), SkBits2Float(0xc26fff16));
1890 path.lineTo(SkBits2Float(0x3ee8b040), SkBits2Float(0xc2a5ff5d));
1891 path.close();
1892
1893 SkPath path2(path);
1894 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1895 }
1896 // op end success 1
1897
battleOp69(skiatest::Reporter * reporter,const char * filename)1898 static void battleOp69(skiatest::Reporter* reporter, const char* filename) {
1899 SkPath path;
1900 path.setFillType((SkPathFillType) 1);
1901 path.moveTo(SkBits2Float(0x36b67768), SkBits2Float(0xc2700000));
1902 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1903 path.cubicTo(SkBits2Float(0x3e1b21b2), SkBits2Float(0xc2a60000), SkBits2Float(0x3e9b20b0), SkBits2Float(0xc2a5ffca), SkBits2Float(0x3ee8b040), SkBits2Float(0xc2a5ff5d));
1904 path.cubicTo(SkBits2Float(0x3ef0720a), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef83386), SkBits2Float(0xc2a5ff47), SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b));
1905 path.lineTo(SkBits2Float(0x3eb90778), SkBits2Float(0xc26ffee3));
1906 path.lineTo(SkBits2Float(0x3ea83592), SkBits2Float(0xc26fff16));
1907 path.lineTo(SkBits2Float(0x3ea83563), SkBits2Float(0xc26fff14));
1908 path.cubicTo(SkBits2Float(0x3e60486a), SkBits2Float(0xc26fffb2), SkBits2Float(0x3de049e3), SkBits2Float(0xc2700000), SkBits2Float(0x36b67768), SkBits2Float(0xc2700000));
1909 path.close();
1910
1911 SkPath path1(path);
1912 path.reset();
1913 path.setFillType((SkPathFillType) 0);
1914 path.moveTo(SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b));
1915 path.cubicTo(SkBits2Float(0x3f3ed289), SkBits2Float(0xc2a5fe79), SkBits2Float(0x3f7daa5c), SkBits2Float(0xc2a5fd28), SkBits2Float(0x3f9e4099), SkBits2Float(0xc2a5fb49));
1916 path.lineTo(SkBits2Float(0x3f64cc5f), SkBits2Float(0xc26ff92f));
1917 path.cubicTo(SkBits2Float(0x3f375f8f), SkBits2Float(0xc26ffbe5), SkBits2Float(0x3f09f1cf), SkBits2Float(0xc26ffdcc), SkBits2Float(0x3eb9075f), SkBits2Float(0xc26ffee4));
1918 path.lineTo(SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b));
1919 path.close();
1920
1921 SkPath path2(path);
1922 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1923 }
1924 // op end success 1
1925
battleOp70(skiatest::Reporter * reporter,const char * filename)1926 static void battleOp70(skiatest::Reporter* reporter, const char* filename) {
1927 SkPath path;
1928 path.setFillType((SkPathFillType) 0);
1929 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1930 path.cubicTo(SkBits2Float(0x3f0938d2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f893841), SkBits2Float(0xc2a5fd56), SkBits2Float(0x3fcdd137), SkBits2Float(0xc2a5f805));
1931 path.lineTo(SkBits2Float(0x3f94c89b), SkBits2Float(0xc26ff478));
1932 path.cubicTo(SkBits2Float(0x3f4663c1), SkBits2Float(0xc26ffc29), SkBits2Float(0x3ec6647d), SkBits2Float(0xc2700000), SkBits2Float(0x360ebeb2), SkBits2Float(0xc2700000));
1933 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1934 path.close();
1935
1936 SkPath path1(path);
1937 path.reset();
1938 path.setFillType((SkPathFillType) 0);
1939 path.moveTo(SkBits2Float(0x3fcdd13c), SkBits2Float(0xc2a5f806));
1940 path.cubicTo(SkBits2Float(0x3fd4ad55), SkBits2Float(0xc2a5f77d), SkBits2Float(0x3fdb895f), SkBits2Float(0xc2a5f6ef), SkBits2Float(0x3fe26560), SkBits2Float(0xc2a5f659));
1941 path.lineTo(SkBits2Float(0x3fa3a8ea), SkBits2Float(0xc26ff20c));
1942 path.cubicTo(SkBits2Float(0x3f9eb37e), SkBits2Float(0xc26ff2e6), SkBits2Float(0x3f99be11), SkBits2Float(0xc26ff3b4), SkBits2Float(0x3f94c89e), SkBits2Float(0xc26ff479));
1943 path.lineTo(SkBits2Float(0x3fcdd13c), SkBits2Float(0xc2a5f806));
1944 path.close();
1945
1946 SkPath path2(path);
1947 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1948 }
1949 // op end success 1
1950
battleOp71(skiatest::Reporter * reporter,const char * filename)1951 static void battleOp71(skiatest::Reporter* reporter, const char* filename) {
1952 SkPath path;
1953 path.setFillType((SkPathFillType) 1);
1954 path.moveTo(SkBits2Float(0x360ebeb2), SkBits2Float(0xc2700000));
1955 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
1956 path.cubicTo(SkBits2Float(0x3f0938d2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f893841), SkBits2Float(0xc2a5fd56), SkBits2Float(0x3fcdd13c), SkBits2Float(0xc2a5f806));
1957 path.cubicTo(SkBits2Float(0x3fd4ad55), SkBits2Float(0xc2a5f77d), SkBits2Float(0x3fdb895f), SkBits2Float(0xc2a5f6ef), SkBits2Float(0x3fe26560), SkBits2Float(0xc2a5f659));
1958 path.lineTo(SkBits2Float(0x3fa3a8ea), SkBits2Float(0xc26ff20c));
1959 path.cubicTo(SkBits2Float(0x3f9eb37e), SkBits2Float(0xc26ff2e6), SkBits2Float(0x3f99be11), SkBits2Float(0xc26ff3b4), SkBits2Float(0x3f94c89b), SkBits2Float(0xc26ff478));
1960 path.cubicTo(SkBits2Float(0x3f4663c1), SkBits2Float(0xc26ffc29), SkBits2Float(0x3ec6647d), SkBits2Float(0xc2700000), SkBits2Float(0x360ebeb2), SkBits2Float(0xc2700000));
1961 path.close();
1962
1963 SkPath path1(path);
1964 path.reset();
1965 path.setFillType((SkPathFillType) 0);
1966 path.moveTo(SkBits2Float(0x3fe26566), SkBits2Float(0xc2a5f65a));
1967 path.cubicTo(SkBits2Float(0x4028c729), SkBits2Float(0xc2a5ecdf), SkBits2Float(0x406055f2), SkBits2Float(0xc2a5dc6a), SkBits2Float(0x408beceb), SkBits2Float(0xc2a5c4fb));
1968 path.lineTo(SkBits2Float(0x404a4d47), SkBits2Float(0xc26faaae));
1969 path.cubicTo(SkBits2Float(0x40222b9c), SkBits2Float(0xc26fcc90), SkBits2Float(0x3ff40427), SkBits2Float(0xc26fe45b), SkBits2Float(0x3fa3a8ee), SkBits2Float(0xc26ff20e));
1970 path.lineTo(SkBits2Float(0x3fe26566), SkBits2Float(0xc2a5f65a));
1971 path.close();
1972
1973 SkPath path2(path);
1974 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
1975 }
1976 // op end success 1
1977
battleOp72(skiatest::Reporter * reporter,const char * filename)1978 static void battleOp72(skiatest::Reporter* reporter, const char* filename) {
1979 SkPath path;
1980 path.setFillType((SkPathFillType) 0);
1981 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1982 path.cubicTo(SkBits2Float(0x3f73aa4a), SkBits2Float(0xc2a60000), SkBits2Float(0x3ff3a7f0), SkBits2Float(0xc2a5f79e), SkBits2Float(0x4036b54b), SkBits2Float(0xc2a5e6db));
1983 path.lineTo(SkBits2Float(0x40041412), SkBits2Float(0xc26fdba5));
1984 path.cubicTo(SkBits2Float(0x3fb0230c), SkBits2Float(0xc26ff3e0), SkBits2Float(0x3f3024c1), SkBits2Float(0xc26fffff), SkBits2Float(0x359dfd4a), SkBits2Float(0xc26fffff));
1985 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
1986 path.close();
1987
1988 SkPath path1(path);
1989 path.reset();
1990 path.setFillType((SkPathFillType) 0);
1991 path.moveTo(SkBits2Float(0x4036b55d), SkBits2Float(0xc2a5e6db));
1992 path.cubicTo(SkBits2Float(0x403ccbdf), SkBits2Float(0xc2a5e52d), SkBits2Float(0x4042e24c), SkBits2Float(0xc2a5e36a), SkBits2Float(0x4048f89e), SkBits2Float(0xc2a5e192));
1993 path.lineTo(SkBits2Float(0x401147bc), SkBits2Float(0xc26fd403));
1994 path.cubicTo(SkBits2Float(0x400ce144), SkBits2Float(0xc26fd6ae), SkBits2Float(0x40087ab2), SkBits2Float(0xc26fd939), SkBits2Float(0x4004140f), SkBits2Float(0xc26fdba5));
1995 path.lineTo(SkBits2Float(0x4036b55d), SkBits2Float(0xc2a5e6db));
1996 path.close();
1997
1998 SkPath path2(path);
1999 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2000 }
2001 // op end fail 1
2002
battleOp73(skiatest::Reporter * reporter,const char * filename)2003 static void battleOp73(skiatest::Reporter* reporter, const char* filename) {
2004 SkPath path;
2005 path.setFillType((SkPathFillType) 0);
2006 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2007 path.cubicTo(SkBits2Float(0x40447e19), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40c46ab2), SkBits2Float(0xc2a5a8c7), SkBits2Float(0x4113078c), SkBits2Float(0xc2a4fabe));
2008 path.lineTo(SkBits2Float(0x40d4929e), SkBits2Float(0xc26e8647));
2009 path.cubicTo(SkBits2Float(0x408dfcf1), SkBits2Float(0xc26f81e6), SkBits2Float(0x400e0af8), SkBits2Float(0xc2700000), SkBits2Float(0x3655fea5), SkBits2Float(0xc2700000));
2010 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2011 path.close();
2012
2013 SkPath path1(path);
2014 path.reset();
2015 path.setFillType((SkPathFillType) 0);
2016 path.moveTo(SkBits2Float(0x4113078b), SkBits2Float(0xc2a4fabe));
2017 path.cubicTo(SkBits2Float(0x4117e908), SkBits2Float(0xc2a4e957), SkBits2Float(0x411cc9c0), SkBits2Float(0xc2a4d714), SkBits2Float(0x4121a9a1), SkBits2Float(0xc2a4c3f3));
2018 path.lineTo(SkBits2Float(0x40e9baad), SkBits2Float(0xc26e370e));
2019 path.cubicTo(SkBits2Float(0x40e2ae85), SkBits2Float(0xc26e52b6), SkBits2Float(0x40dba120), SkBits2Float(0xc26e6d20), SkBits2Float(0x40d4929a), SkBits2Float(0xc26e8647));
2020 path.lineTo(SkBits2Float(0x4113078b), SkBits2Float(0xc2a4fabe));
2021 path.close();
2022
2023 SkPath path2(path);
2024 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2025 }
2026 // op end fail 1
2027
battleOp74(skiatest::Reporter * reporter,const char * filename)2028 static void battleOp74(skiatest::Reporter* reporter, const char* filename) {
2029 SkPath path;
2030 path.setFillType((SkPathFillType) 0);
2031 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2032 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afb7), SkBits2Float(0xc2a481e4));
2033 path.lineTo(SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e));
2034 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2035 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2036 path.close();
2037
2038 SkPath path1(path);
2039 path.reset();
2040 path.setFillType((SkPathFillType) 0);
2041 path.moveTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4));
2042 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca));
2043 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0));
2044 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b4), SkBits2Float(0xc26dd78e));
2045 path.lineTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4));
2046 path.close();
2047
2048 SkPath path2(path);
2049 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2050 }
2051 // op end success 1
2052
battleOp75(skiatest::Reporter * reporter,const char * filename)2053 static void battleOp75(skiatest::Reporter* reporter, const char* filename) {
2054 SkPath path;
2055 path.setFillType((SkPathFillType) 1);
2056 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2057 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2058 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4));
2059 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca));
2060 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0));
2061 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e));
2062 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2063 path.close();
2064
2065 SkPath path1(path);
2066 path.reset();
2067 path.setFillType((SkPathFillType) 0);
2068 path.moveTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb));
2069 path.cubicTo(SkBits2Float(0x419152e5), SkBits2Float(0xc2a26c3a), SkBits2Float(0x41c0119b), SkBits2Float(0xc29f5c06), SkBits2Float(0x41ed1335), SkBits2Float(0xc29b0f0a));
2070 path.lineTo(SkBits2Float(0x41ab612b), SkBits2Float(0xc2602e6b));
2071 path.cubicTo(SkBits2Float(0x418ad84d), SkBits2Float(0xc2666635), SkBits2Float(0x41521b54), SkBits2Float(0xc26ad3fe), SkBits2Float(0x410d3426), SkBits2Float(0xc26d63c0));
2072 path.lineTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb));
2073 path.close();
2074
2075 SkPath path2(path);
2076 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2077 }
2078 // op end success 1
2079
battleOp76(skiatest::Reporter * reporter,const char * filename)2080 static void battleOp76(skiatest::Reporter* reporter, const char* filename) {
2081 SkPath path;
2082 path.setFillType((SkPathFillType) 0);
2083 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2084 path.cubicTo(SkBits2Float(0x40932e58), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41130dbc), SkBits2Float(0xc2a53c41), SkBits2Float(0x415ba178), SkBits2Float(0xc2a3b6ca));
2085 path.lineTo(SkBits2Float(0x411ec4eb), SkBits2Float(0xc26cb1eb));
2086 path.cubicTo(SkBits2Float(0x40d49b93), SkBits2Float(0xc26ee4ff), SkBits2Float(0x4054cab9), SkBits2Float(0xc26fffff), SkBits2Float(0x35f7fd46), SkBits2Float(0xc26fffff));
2087 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2088 path.close();
2089
2090 SkPath path1(path);
2091 path.reset();
2092 path.setFillType((SkPathFillType) 0);
2093 path.moveTo(SkBits2Float(0x415ba178), SkBits2Float(0xc2a3b6cb));
2094 path.cubicTo(SkBits2Float(0x4162e261), SkBits2Float(0xc2a38fde), SkBits2Float(0x416a20aa), SkBits2Float(0xc2a36704), SkBits2Float(0x41715c23), SkBits2Float(0xc2a33c3e));
2095 path.lineTo(SkBits2Float(0x412e7a25), SkBits2Float(0xc26c00bd));
2096 path.cubicTo(SkBits2Float(0x41293fb6), SkBits2Float(0xc26c3e94), SkBits2Float(0x41240342), SkBits2Float(0xc26c79a4), SkBits2Float(0x411ec4e8), SkBits2Float(0xc26cb1eb));
2097 path.lineTo(SkBits2Float(0x415ba178), SkBits2Float(0xc2a3b6cb));
2098 path.close();
2099
2100 SkPath path2(path);
2101 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2102 }
2103 // op end fail 1
2104
battleOp77(skiatest::Reporter * reporter,const char * filename)2105 static void battleOp77(skiatest::Reporter* reporter, const char* filename) {
2106 SkPath path;
2107 path.setFillType((SkPathFillType) 0);
2108 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2109 path.cubicTo(SkBits2Float(0x40d0158a), SkBits2Float(0xc2a60000), SkBits2Float(0x414fb944), SkBits2Float(0xc2a478c0), SkBits2Float(0x419a74b5), SkBits2Float(0xc2a1724b));
2110 path.lineTo(SkBits2Float(0x415f4f4c), SkBits2Float(0xc2696aa5));
2111 path.cubicTo(SkBits2Float(0x41162967), SkBits2Float(0xc26dca57), SkBits2Float(0x40966c1f), SkBits2Float(0xc2700000), SkBits2Float(0x3655fea3), SkBits2Float(0xc2700000));
2112 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2113 path.close();
2114
2115 SkPath path1(path);
2116 path.reset();
2117 path.setFillType((SkPathFillType) 0);
2118 path.moveTo(SkBits2Float(0x419a74b6), SkBits2Float(0xc2a1724b));
2119 path.cubicTo(SkBits2Float(0x419f8274), SkBits2Float(0xc2a124ef), SkBits2Float(0x41a48c82), SkBits2Float(0xc2a0d3c9), SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edb));
2120 path.lineTo(SkBits2Float(0x41752a58), SkBits2Float(0xc2680ab0));
2121 path.cubicTo(SkBits2Float(0x416de6e6), SkBits2Float(0xc268857b), SkBits2Float(0x41669dc0), SkBits2Float(0xc268facf), SkBits2Float(0x415f4f4b), SkBits2Float(0xc2696aa6));
2122 path.lineTo(SkBits2Float(0x419a74b6), SkBits2Float(0xc2a1724b));
2123 path.close();
2124
2125 SkPath path2(path);
2126 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2127 }
2128 // op end success 1
2129
battleOp78(skiatest::Reporter * reporter,const char * filename)2130 static void battleOp78(skiatest::Reporter* reporter, const char* filename) {
2131 SkPath path;
2132 path.setFillType((SkPathFillType) 1);
2133 path.moveTo(SkBits2Float(0x3655fea3), SkBits2Float(0xc2700000));
2134 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2135 path.cubicTo(SkBits2Float(0x40d0158a), SkBits2Float(0xc2a60000), SkBits2Float(0x414fb944), SkBits2Float(0xc2a478c0), SkBits2Float(0x419a74b6), SkBits2Float(0xc2a1724b));
2136 path.cubicTo(SkBits2Float(0x419f8274), SkBits2Float(0xc2a124ef), SkBits2Float(0x41a48c82), SkBits2Float(0xc2a0d3c9), SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edb));
2137 path.lineTo(SkBits2Float(0x41752a58), SkBits2Float(0xc2680ab0));
2138 path.cubicTo(SkBits2Float(0x416de6e6), SkBits2Float(0xc268857b), SkBits2Float(0x41669dc0), SkBits2Float(0xc268facf), SkBits2Float(0x415f4f4c), SkBits2Float(0xc2696aa5));
2139 path.cubicTo(SkBits2Float(0x41162967), SkBits2Float(0xc26dca57), SkBits2Float(0x40966c1f), SkBits2Float(0xc2700000), SkBits2Float(0x3655fea3), SkBits2Float(0xc2700000));
2140 path.close();
2141
2142 SkPath path1(path);
2143 path.reset();
2144 path.setFillType((SkPathFillType) 0);
2145 path.moveTo(SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edc));
2146 path.cubicTo(SkBits2Float(0x41fb3aee), SkBits2Float(0xc29b1a71), SkBits2Float(0x422402f4), SkBits2Float(0xc291ddaf), SkBits2Float(0x4245eaa6), SkBits2Float(0xc2854763));
2147 path.lineTo(SkBits2Float(0x420f1280), SkBits2Float(0xc240b13c));
2148 path.cubicTo(SkBits2Float(0x41ed200b), SkBits2Float(0xc252e3f9), SkBits2Float(0x41b59cbb), SkBits2Float(0xc2603ee8), SkBits2Float(0x41752a58), SkBits2Float(0xc2680aaf));
2149 path.lineTo(SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edc));
2150 path.close();
2151
2152 SkPath path2(path);
2153 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2154 }
2155 // op end success 1
2156
battleOp79(skiatest::Reporter * reporter,const char * filename)2157 static void battleOp79(skiatest::Reporter* reporter, const char* filename) { //crashed
2158 SkPath path;
2159 path.setFillType((SkPathFillType) 0);
2160 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2161 path.cubicTo(SkBits2Float(0x4110a0cc), SkBits2Float(0xc2a60000), SkBits2Float(0x4190247a), SkBits2Float(0xc2a30bfe), SkBits2Float(0x41d4a5dc), SkBits2Float(0xc29d41d4));
2162 path.lineTo(SkBits2Float(0x4199b8a9), SkBits2Float(0xc2635c16));
2163 path.cubicTo(SkBits2Float(0x4150660f), SkBits2Float(0xc26bbaf8), SkBits2Float(0x40d119d0), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
2164 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2165 path.close();
2166
2167 SkPath path1(path);
2168 path.reset();
2169 path.setFillType((SkPathFillType) 0);
2170 path.moveTo(SkBits2Float(0x41d4a5d9), SkBits2Float(0xc29d41d4));
2171 path.cubicTo(SkBits2Float(0x41db7bbd), SkBits2Float(0xc29cadef), SkBits2Float(0x41e247df), SkBits2Float(0xc29c12ec), SkBits2Float(0x41e9098d), SkBits2Float(0xc29b70d9));
2172 path.lineTo(SkBits2Float(0x41a875f1), SkBits2Float(0xc260bbd5));
2173 path.cubicTo(SkBits2Float(0x41a39393), SkBits2Float(0xc261a627), SkBits2Float(0x419ea9a6), SkBits2Float(0xc2628645), SkBits2Float(0x4199b8ab), SkBits2Float(0xc2635c17));
2174 path.lineTo(SkBits2Float(0x41d4a5d9), SkBits2Float(0xc29d41d4));
2175 path.close();
2176
2177 SkPath path2(path);
2178 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2179 }
2180
battleOp80(skiatest::Reporter * reporter,const char * filename)2181 static void battleOp80(skiatest::Reporter* reporter, const char* filename) {
2182 SkPath path;
2183 path.setFillType((SkPathFillType) 0);
2184 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2185 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07980), SkBits2Float(0xc2a5ff68));
2186 path.lineTo(SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25));
2187 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000));
2188 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2189 path.close();
2190
2191 SkPath path1(path);
2192 path.reset();
2193 path.setFillType((SkPathFillType) 0);
2194 path.moveTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68));
2195 path.cubicTo(SkBits2Float(0x3ee7f565), SkBits2Float(0xc2a5ff5d), SkBits2Float(0x3eef70d9), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47));
2196 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6));
2197 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea24612), SkBits2Float(0xc26fff26));
2198 path.lineTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68));
2199 path.close();
2200
2201 SkPath path2(path);
2202 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2203 }
2204 // op end success 1
2205
battleOp81(skiatest::Reporter * reporter,const char * filename)2206 static void battleOp81(skiatest::Reporter* reporter, const char* filename) {
2207 SkPath path;
2208 path.setFillType((SkPathFillType) 1);
2209 path.moveTo(SkBits2Float(0x3691e768), SkBits2Float(0xc2700000));
2210 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2211 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68));
2212 path.lineTo(SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47));
2213 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6));
2214 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25));
2215 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000));
2216 path.close();
2217
2218 SkPath path1(path);
2219 path.reset();
2220 path.setFillType((SkPathFillType) 0);
2221 path.moveTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48));
2222 path.cubicTo(SkBits2Float(0x3f3816c9), SkBits2Float(0xc2a5fe94), SkBits2Float(0x3f74b6e1), SkBits2Float(0xc2a5fd5b), SkBits2Float(0x3f98ab0b), SkBits2Float(0xc2a5fb9d));
2223 path.lineTo(SkBits2Float(0x3f5cb973), SkBits2Float(0xc26ff9a8));
2224 path.cubicTo(SkBits2Float(0x3f30e6e7), SkBits2Float(0xc26ffc2e), SkBits2Float(0x3f05138e), SkBits2Float(0xc26ffdf2), SkBits2Float(0x3eb27fc6), SkBits2Float(0xc26ffef7));
2225 path.lineTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48));
2226 path.close();
2227
2228 SkPath path2(path);
2229 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2230 }
2231 // op end success 1
2232
battleOp82(skiatest::Reporter * reporter,const char * filename)2233 static void battleOp82(skiatest::Reporter* reporter, const char* filename) {
2234 SkPath path;
2235 path.setFillType((SkPathFillType) 0);
2236 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2237 path.cubicTo(SkBits2Float(0x3eff98a5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f7f97b3), SkBits2Float(0xc2a5fdb1), SkBits2Float(0x3fbfaf38), SkBits2Float(0xc2a5f914));
2238 path.lineTo(SkBits2Float(0x3f8a9112), SkBits2Float(0xc26ff600));
2239 path.cubicTo(SkBits2Float(0x3f38c3e7), SkBits2Float(0xc26ffcab), SkBits2Float(0x3eb8c475), SkBits2Float(0xc2700000), SkBits2Float(0x35877d28), SkBits2Float(0xc2700000));
2240 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2241 path.close();
2242
2243 SkPath path1(path);
2244 path.reset();
2245 path.setFillType((SkPathFillType) 0);
2246 path.moveTo(SkBits2Float(0x3fbfaf15), SkBits2Float(0xc2a5f915));
2247 path.cubicTo(SkBits2Float(0x3fc612b4), SkBits2Float(0xc2a5f8a0), SkBits2Float(0x3fcc7634), SkBits2Float(0xc2a5f824), SkBits2Float(0x3fd2d9ad), SkBits2Float(0xc2a5f7a2));
2248 path.lineTo(SkBits2Float(0x3f986bef), SkBits2Float(0xc26ff3e6));
2249 path.cubicTo(SkBits2Float(0x3f93cdb9), SkBits2Float(0xc26ff4a2), SkBits2Float(0x3f8f2f70), SkBits2Float(0xc26ff556), SkBits2Float(0x3f8a9121), SkBits2Float(0xc26ff601));
2250 path.lineTo(SkBits2Float(0x3fbfaf15), SkBits2Float(0xc2a5f915));
2251 path.close();
2252
2253 SkPath path2(path);
2254 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2255 }
2256 // op end success 1
2257
battleOp83(skiatest::Reporter * reporter,const char * filename)2258 static void battleOp83(skiatest::Reporter* reporter, const char* filename) {
2259 SkPath path;
2260 path.setFillType((SkPathFillType) 1);
2261 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2262 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2263 path.cubicTo(SkBits2Float(0x3eff9875), SkBits2Float(0xc2a60000), SkBits2Float(0x3f7f9783), SkBits2Float(0xc2a5fdb1), SkBits2Float(0x3fbfaf14), SkBits2Float(0xc2a5f914));
2264 path.lineTo(SkBits2Float(0x3fbfaf15), SkBits2Float(0xc2a5f915));
2265 path.cubicTo(SkBits2Float(0x3fc612b4), SkBits2Float(0xc2a5f8a0), SkBits2Float(0x3fcc7634), SkBits2Float(0xc2a5f824), SkBits2Float(0x3fd2d9ad), SkBits2Float(0xc2a5f7a2));
2266 path.lineTo(SkBits2Float(0x3f986bef), SkBits2Float(0xc26ff3e6));
2267 path.cubicTo(SkBits2Float(0x3f93cdb9), SkBits2Float(0xc26ff4a2), SkBits2Float(0x3f8f2f70), SkBits2Float(0xc26ff556), SkBits2Float(0x3f8a9112), SkBits2Float(0xc26ff600));
2268 path.cubicTo(SkBits2Float(0x3f38c3e7), SkBits2Float(0xc26ffcab), SkBits2Float(0x3eb8c475), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2269 path.close();
2270
2271 SkPath path1(path);
2272 path.reset();
2273 path.setFillType((SkPathFillType) 0);
2274 path.moveTo(SkBits2Float(0x3fd2d994), SkBits2Float(0xc2a5f7a1));
2275 path.cubicTo(SkBits2Float(0x401d305c), SkBits2Float(0xc2a5ef69), SkBits2Float(0x4050ef71), SkBits2Float(0xc2a5e123), SkBits2Float(0x408252dc), SkBits2Float(0xc2a5ccd0));
2276 path.lineTo(SkBits2Float(0x403c6b7d), SkBits2Float(0xc26fb5fe));
2277 path.cubicTo(SkBits2Float(0x401709a2), SkBits2Float(0xc26fd362), SkBits2Float(0x3fe342dd), SkBits2Float(0xc26fe805), SkBits2Float(0x3f986be0), SkBits2Float(0xc26ff3e7));
2278 path.lineTo(SkBits2Float(0x3fd2d994), SkBits2Float(0xc2a5f7a1));
2279 path.close();
2280
2281 SkPath path2(path);
2282 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2283 }
2284 // op end success 1
2285
battleOp84(skiatest::Reporter * reporter,const char * filename)2286 static void battleOp84(skiatest::Reporter* reporter, const char* filename) {
2287 SkPath path;
2288 path.setFillType((SkPathFillType) 0);
2289 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2290 path.cubicTo(SkBits2Float(0x3f541e8b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd41d19), SkBits2Float(0xc2a5f9a6), SkBits2Float(0x401f1022), SkBits2Float(0xc2a5ecf2));
2291 path.lineTo(SkBits2Float(0x3fe5f882), SkBits2Float(0xc26fe473));
2292 path.cubicTo(SkBits2Float(0x3f9955cf), SkBits2Float(0xc26ff6d2), SkBits2Float(0x3f1956dc), SkBits2Float(0xc2700000), SkBits2Float(0xb5bb02d8), SkBits2Float(0xc2700000));
2293 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2294 path.close();
2295
2296 SkPath path1(path);
2297 path.reset();
2298 path.setFillType((SkPathFillType) 0);
2299 path.moveTo(SkBits2Float(0x401f1027), SkBits2Float(0xc2a5ecf2));
2300 path.cubicTo(SkBits2Float(0x40245d21), SkBits2Float(0xc2a5ebac), SkBits2Float(0x4029aa04), SkBits2Float(0xc2a5ea57), SkBits2Float(0x402ef6d6), SkBits2Float(0xc2a5e8f1));
2301 path.lineTo(SkBits2Float(0x3ffcf5ba), SkBits2Float(0xc26fdeaa));
2302 path.cubicTo(SkBits2Float(0x3ff54c2d), SkBits2Float(0xc26fe0b0), SkBits2Float(0x3feda268), SkBits2Float(0xc26fe29e), SkBits2Float(0x3fe5f88e), SkBits2Float(0xc26fe474));
2303 path.lineTo(SkBits2Float(0x401f1027), SkBits2Float(0xc2a5ecf2));
2304 path.close();
2305
2306 SkPath path2(path);
2307 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2308 }
2309 // op end success 1
2310
battleOp85(skiatest::Reporter * reporter,const char * filename)2311 static void battleOp85(skiatest::Reporter* reporter, const char* filename) {
2312 SkPath path;
2313 path.setFillType((SkPathFillType) 1);
2314 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2315 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2316 path.cubicTo(SkBits2Float(0x3f541e8b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd41d19), SkBits2Float(0xc2a5f9a6), SkBits2Float(0x401f1027), SkBits2Float(0xc2a5ecf2));
2317 path.cubicTo(SkBits2Float(0x40245d21), SkBits2Float(0xc2a5ebac), SkBits2Float(0x4029aa04), SkBits2Float(0xc2a5ea57), SkBits2Float(0x402ef6d6), SkBits2Float(0xc2a5e8f1));
2318 path.lineTo(SkBits2Float(0x3ffcf5ba), SkBits2Float(0xc26fdeaa));
2319 path.cubicTo(SkBits2Float(0x3ff54c2d), SkBits2Float(0xc26fe0b0), SkBits2Float(0x3feda268), SkBits2Float(0xc26fe29e), SkBits2Float(0x3fe5f882), SkBits2Float(0xc26fe473));
2320 path.cubicTo(SkBits2Float(0x3f9955cf), SkBits2Float(0xc26ff6d2), SkBits2Float(0x3f1956dc), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2321 path.close();
2322
2323 SkPath path1(path);
2324 path.reset();
2325 path.setFillType((SkPathFillType) 0);
2326 path.moveTo(SkBits2Float(0x402ef6c3), SkBits2Float(0xc2a5e8f1));
2327 path.cubicTo(SkBits2Float(0x40826d68), SkBits2Float(0xc2a5d24c), SkBits2Float(0x40ad550a), SkBits2Float(0xc2a5aafb), SkBits2Float(0x40d82890), SkBits2Float(0xc2a57308));
2328 path.lineTo(SkBits2Float(0x409c425c), SkBits2Float(0xc26f3430));
2329 path.cubicTo(SkBits2Float(0x407a99d8), SkBits2Float(0xc26f8515), SkBits2Float(0x403c91e6), SkBits2Float(0xc26fbded), SkBits2Float(0x3ffcf5ca), SkBits2Float(0xc26fdeaa));
2330 path.lineTo(SkBits2Float(0x402ef6c3), SkBits2Float(0xc2a5e8f1));
2331 path.close();
2332
2333 SkPath path2(path);
2334 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2335 }
2336 // op end success 1
2337
battleOp86(skiatest::Reporter * reporter,const char * filename)2338 static void battleOp86(skiatest::Reporter* reporter, const char* filename) {
2339 SkPath path;
2340 path.setFillType((SkPathFillType) 0);
2341 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2342 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5f), SkBits2Float(0xc2a568f2));
2343 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d));
2344 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000));
2345 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2346 path.close();
2347
2348 SkPath path1(path);
2349 path.reset();
2350 path.setFillType((SkPathFillType) 0);
2351 path.moveTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3));
2352 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941));
2353 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9));
2354 path.cubicTo(SkBits2Float(0x40ac7ea0), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e37), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd4f), SkBits2Float(0xc26f259f));
2355 path.lineTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3));
2356 path.close();
2357
2358 SkPath path2(path);
2359 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2360 }
2361 // op end success 1
2362
battleOp87(skiatest::Reporter * reporter,const char * filename)2363 static void battleOp87(skiatest::Reporter* reporter, const char* filename) {
2364 SkPath path;
2365 path.setFillType((SkPathFillType) 1);
2366 path.moveTo(SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000));
2367 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2368 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3));
2369 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941));
2370 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9));
2371 path.cubicTo(SkBits2Float(0x40ac7ea2), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e3a), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd54), SkBits2Float(0xc26f259f));
2372 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d));
2373 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000));
2374 path.close();
2375
2376 SkPath path1(path);
2377 path.reset();
2378 path.setFillType((SkPathFillType) 0);
2379 path.moveTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941));
2380 path.cubicTo(SkBits2Float(0x41374a21), SkBits2Float(0xc2a495d5), SkBits2Float(0x41731962), SkBits2Float(0xc2a35eca), SkBits2Float(0x419704b1), SkBits2Float(0xc2a1a64c));
2381 path.lineTo(SkBits2Float(0x415a56f5), SkBits2Float(0xc269b5d4));
2382 path.cubicTo(SkBits2Float(0x412fbbfb), SkBits2Float(0xc26c32af), SkBits2Float(0x41047f9a), SkBits2Float(0xc26df463), SkBits2Float(0x40b1de7e), SkBits2Float(0xc26ef7cb));
2383 path.lineTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941));
2384 path.close();
2385
2386 SkPath path2(path);
2387 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2388 }
2389 // op end success 1
2390
battleOp88(skiatest::Reporter * reporter,const char * filename)2391 static void battleOp88(skiatest::Reporter* reporter, const char* filename) { // crashed
2392 SkPath path;
2393 path.setFillType((SkPathFillType) 0);
2394 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2395 path.cubicTo(SkBits2Float(0x4059d383), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40d9b918), SkBits2Float(0xc2a594d0), SkBits2Float(0x4122e820), SkBits2Float(0xc2a4bf0c));
2396 path.lineTo(SkBits2Float(0x40eb871c), SkBits2Float(0xc26e2ff8));
2397 path.cubicTo(SkBits2Float(0x409d63e0), SkBits2Float(0xc26f6508), SkBits2Float(0x401d76fa), SkBits2Float(0xc2700000), SkBits2Float(0x35f7fd4a), SkBits2Float(0xc2700000));
2398 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2399 path.close();
2400
2401 SkPath path1(path);
2402 path.reset();
2403 path.setFillType((SkPathFillType) 0);
2404 path.moveTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c));
2405 path.cubicTo(SkBits2Float(0x41284f3c), SkBits2Float(0xc2a4a9ac), SkBits2Float(0x412db549), SkBits2Float(0xc2a4933e), SkBits2Float(0x41331a33), SkBits2Float(0xc2a47bbf));
2406 path.lineTo(SkBits2Float(0x410178be), SkBits2Float(0xc26dceac));
2407 path.cubicTo(SkBits2Float(0x40fb24f7), SkBits2Float(0xc26df0a4), SkBits2Float(0x40f356d1), SkBits2Float(0xc26e1114), SkBits2Float(0x40eb871f), SkBits2Float(0xc26e2ff8));
2408 path.lineTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c));
2409 path.close();
2410
2411 SkPath path2(path);
2412 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2413 }
2414
battleOp89(skiatest::Reporter * reporter,const char * filename)2415 static void battleOp89(skiatest::Reporter* reporter, const char* filename) {
2416 SkPath path;
2417 path.setFillType((SkPathFillType) 0);
2418 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2419 path.cubicTo(SkBits2Float(0x3dd41fb8), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e5b), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1657), SkBits2Float(0xc2a5ffb2));
2420 path.lineTo(SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92));
2421 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x350f7780), SkBits2Float(0xc2700000));
2422 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2423 path.close();
2424
2425 SkPath path1(path);
2426 path.reset();
2427 path.setFillType((SkPathFillType) 0);
2428 path.moveTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4));
2429 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3));
2430 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b));
2431 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e660197), SkBits2Float(0xc26fff93));
2432 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4));
2433 path.close();
2434
2435 SkPath path2(path);
2436 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2437 }
2438 // op end success 1
2439
battleOp90(skiatest::Reporter * reporter,const char * filename)2440 static void battleOp90(skiatest::Reporter* reporter, const char* filename) {
2441 SkPath path;
2442 path.setFillType((SkPathFillType) 1);
2443 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2444 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2445 path.cubicTo(SkBits2Float(0x3dd41f74), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e17), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1624), SkBits2Float(0xc2a5ffb2));
2446 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4));
2447 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3));
2448 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b));
2449 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92));
2450 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2451 path.close();
2452
2453 SkPath path1(path);
2454 path.reset();
2455 path.setFillType((SkPathFillType) 0);
2456 path.moveTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4));
2457 path.cubicTo(SkBits2Float(0x3f0276b7), SkBits2Float(0xc2a5ff4a), SkBits2Float(0x3f2d6dea), SkBits2Float(0xc2a5feac), SkBits2Float(0x3f5864cc), SkBits2Float(0xc2a5fdcd));
2458 path.lineTo(SkBits2Float(0x3f1c6df6), SkBits2Float(0xc26ffcd0));
2459 path.cubicTo(SkBits2Float(0x3efabdec), SkBits2Float(0xc26ffe15), SkBits2Float(0x3ebc9f78), SkBits2Float(0xc26ffef9), SkBits2Float(0x3e7d0190), SkBits2Float(0xc26fff7c));
2460 path.lineTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4));
2461 path.close();
2462
2463 SkPath path2(path);
2464 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2465 }
2466 // op end success 1
2467
battleOp91(skiatest::Reporter * reporter,const char * filename)2468 static void battleOp91(skiatest::Reporter* reporter, const char* filename) { // crashed
2469 SkPath path;
2470 path.setFillType((SkPathFillType) 0);
2471 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2472 path.cubicTo(SkBits2Float(0x3ec1e1ad), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f41e136), SkBits2Float(0xc2a5feac), SkBits2Float(0x3f9167c6), SkBits2Float(0xc2a5fc05));
2473 path.lineTo(SkBits2Float(0x3f523979), SkBits2Float(0xc26ffa3f));
2474 path.cubicTo(SkBits2Float(0x3f0c2737), SkBits2Float(0xc26ffe17), SkBits2Float(0x3e8c2756), SkBits2Float(0xc2700000), SkBits2Float(0xb5b74260), SkBits2Float(0xc2700000));
2475 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2476 path.close();
2477
2478 SkPath path1(path);
2479 path.reset();
2480 path.setFillType((SkPathFillType) 0);
2481 path.moveTo(SkBits2Float(0x3f9167c1), SkBits2Float(0xc2a5fc05));
2482 path.cubicTo(SkBits2Float(0x3f96406f), SkBits2Float(0xc2a5fbc1), SkBits2Float(0x3f9b1917), SkBits2Float(0xc2a5fb79), SkBits2Float(0x3f9ff1bc), SkBits2Float(0xc2a5fb2f));
2483 path.lineTo(SkBits2Float(0x3f673ed7), SkBits2Float(0xc26ff909));
2484 path.cubicTo(SkBits2Float(0x3f603cf4), SkBits2Float(0xc26ff977), SkBits2Float(0x3f593b3c), SkBits2Float(0xc26ff9dd), SkBits2Float(0x3f52397f), SkBits2Float(0xc26ffa3f));
2485 path.lineTo(SkBits2Float(0x3f9167c1), SkBits2Float(0xc2a5fc05));
2486 path.close();
2487
2488 SkPath path2(path);
2489 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2490 }
2491
battleOp92(skiatest::Reporter * reporter,const char * filename)2492 static void battleOp92(skiatest::Reporter* reporter, const char* filename) {
2493 SkPath path;
2494 path.setFillType((SkPathFillType) 0);
2495 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2496 path.cubicTo(SkBits2Float(0x3e2c5962), SkBits2Float(0xc2a60000), SkBits2Float(0x3eac58ef), SkBits2Float(0xc2a5ffbd), SkBits2Float(0x3f014269), SkBits2Float(0xc2a5ff37));
2497 path.lineTo(SkBits2Float(0x3ebae1ca), SkBits2Float(0xc26ffedd));
2498 path.cubicTo(SkBits2Float(0x3e792d51), SkBits2Float(0xc26fff9f), SkBits2Float(0x3df92dfa), SkBits2Float(0xc2700000), SkBits2Float(0x36163ed0), SkBits2Float(0xc2700000));
2499 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2500 path.close();
2501
2502 SkPath path1(path);
2503 path.reset();
2504 path.setFillType((SkPathFillType) 0);
2505 path.moveTo(SkBits2Float(0x3f014292), SkBits2Float(0xc2a5ff37));
2506 path.cubicTo(SkBits2Float(0x3f0591a2), SkBits2Float(0xc2a5ff28), SkBits2Float(0x3f09e09b), SkBits2Float(0xc2a5ff1a), SkBits2Float(0x3f0e2f92), SkBits2Float(0xc2a5ff0b));
2507 path.lineTo(SkBits2Float(0x3ecd91e5), SkBits2Float(0xc26ffea0));
2508 path.cubicTo(SkBits2Float(0x3ec75718), SkBits2Float(0xc26ffeb6), SkBits2Float(0x3ec11c70), SkBits2Float(0xc26ffeca), SkBits2Float(0x3ebae1c7), SkBits2Float(0xc26ffedd));
2509 path.lineTo(SkBits2Float(0x3f014292), SkBits2Float(0xc2a5ff37));
2510 path.close();
2511
2512 SkPath path2(path);
2513 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2514 }
2515 // op end success 1
2516
battleOp93(skiatest::Reporter * reporter,const char * filename)2517 static void battleOp93(skiatest::Reporter* reporter, const char* filename) {
2518 SkPath path;
2519 path.setFillType((SkPathFillType) 1);
2520 path.moveTo(SkBits2Float(0x36163ed0), SkBits2Float(0xc2700000));
2521 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2522 path.quadTo(SkBits2Float(0x3e81430a), SkBits2Float(0xc2a60000), SkBits2Float(0x3f014292), SkBits2Float(0xc2a5ff37));
2523 path.cubicTo(SkBits2Float(0x3f0591a2), SkBits2Float(0xc2a5ff28), SkBits2Float(0x3f09e09b), SkBits2Float(0xc2a5ff1a), SkBits2Float(0x3f0e2f92), SkBits2Float(0xc2a5ff0b));
2524 path.lineTo(SkBits2Float(0x3ecd91e5), SkBits2Float(0xc26ffea0));
2525 path.cubicTo(SkBits2Float(0x3ec75719), SkBits2Float(0xc26ffeb6), SkBits2Float(0x3ec11c72), SkBits2Float(0xc26ffeca), SkBits2Float(0x3ebae1ca), SkBits2Float(0xc26ffedd));
2526 path.quadTo(SkBits2Float(0x3e3ae230), SkBits2Float(0xc2700000), SkBits2Float(0x36163ed0), SkBits2Float(0xc2700000));
2527 path.close();
2528
2529 SkPath path1(path);
2530 path.reset();
2531 path.setFillType((SkPathFillType) 0);
2532 path.moveTo(SkBits2Float(0x3f0e2f94), SkBits2Float(0xc2a5ff0c));
2533 path.cubicTo(SkBits2Float(0x3f5401b9), SkBits2Float(0xc2a5fe1c), SkBits2Float(0x3f8ce9a3), SkBits2Float(0xc2a5fc7d), SkBits2Float(0x3fafd1bd), SkBits2Float(0xc2a5fa2d));
2534 path.lineTo(SkBits2Float(0x3f7e3238), SkBits2Float(0xc26ff796));
2535 path.cubicTo(SkBits2Float(0x3f4bbaca), SkBits2Float(0xc26ffaee), SkBits2Float(0x3f194226), SkBits2Float(0xc26ffd46), SkBits2Float(0x3ecd9202), SkBits2Float(0xc26ffea0));
2536 path.lineTo(SkBits2Float(0x3f0e2f94), SkBits2Float(0xc2a5ff0c));
2537 path.close();
2538
2539 SkPath path2(path);
2540 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2541 }
2542 // op end success 1
2543
battleOp94(skiatest::Reporter * reporter,const char * filename)2544 static void battleOp94(skiatest::Reporter* reporter, const char* filename) {
2545 SkPath path;
2546 path.setFillType((SkPathFillType) 0);
2547 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2548 path.cubicTo(SkBits2Float(0x3f167e4a), SkBits2Float(0xc2a60000), SkBits2Float(0x3f967d97), SkBits2Float(0xc2a5fcce), SkBits2Float(0x3fe1b83b), SkBits2Float(0xc2a5f668));
2549 path.lineTo(SkBits2Float(0x3fa32ba2), SkBits2Float(0xc26ff222));
2550 path.cubicTo(SkBits2Float(0x3f599370), SkBits2Float(0xc26ffb61), SkBits2Float(0x3ed9943c), SkBits2Float(0xc2700000), SkBits2Float(0x3437e940), SkBits2Float(0xc2700000));
2551 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2552 path.close();
2553
2554 SkPath path1(path);
2555 path.reset();
2556 path.setFillType((SkPathFillType) 0);
2557 path.moveTo(SkBits2Float(0x3fe1b817), SkBits2Float(0xc2a5f668));
2558 path.cubicTo(SkBits2Float(0x3fe93dd6), SkBits2Float(0xc2a5f5c4), SkBits2Float(0x3ff0c3a7), SkBits2Float(0xc2a5f518), SkBits2Float(0x3ff8496b), SkBits2Float(0xc2a5f464));
2559 path.lineTo(SkBits2Float(0x3fb37c11), SkBits2Float(0xc26fef38));
2560 path.cubicTo(SkBits2Float(0x3fae0bf9), SkBits2Float(0xc26ff03c), SkBits2Float(0x3fa89bd2), SkBits2Float(0xc26ff134), SkBits2Float(0x3fa32ba2), SkBits2Float(0xc26ff222));
2561 path.lineTo(SkBits2Float(0x3fe1b817), SkBits2Float(0xc2a5f668));
2562 path.close();
2563
2564 SkPath path2(path);
2565 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2566 }
2567 // op end success 1
2568
battleOp95(skiatest::Reporter * reporter,const char * filename)2569 static void battleOp95(skiatest::Reporter* reporter, const char* filename) {
2570 SkPath path;
2571 path.setFillType((SkPathFillType) 1);
2572 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2573 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2574 path.cubicTo(SkBits2Float(0x3f167e32), SkBits2Float(0xc2a60000), SkBits2Float(0x3f967d7f), SkBits2Float(0xc2a5fcce), SkBits2Float(0x3fe1b817), SkBits2Float(0xc2a5f668));
2575
2576 SkPath path1(path);
2577 path.reset();
2578 path.setFillType((SkPathFillType) 0);
2579 path.moveTo(SkBits2Float(0x3ff8497f), SkBits2Float(0xc2a5f465));
2580 path.cubicTo(SkBits2Float(0x40391895), SkBits2Float(0xc2a5e8fe), SkBits2Float(0x407604f1), SkBits2Float(0xc2a5d533), SkBits2Float(0x40997177), SkBits2Float(0xc2a5b905));
2581 path.lineTo(SkBits2Float(0x405dd87f), SkBits2Float(0xc26f9962));
2582 path.cubicTo(SkBits2Float(0x4031d867), SkBits2Float(0xc26fc221), SkBits2Float(0x4005cdec), SkBits2Float(0xc26fdebf), SkBits2Float(0x3fb37c22), SkBits2Float(0xc26fef39));
2583 path.lineTo(SkBits2Float(0x3ff8497f), SkBits2Float(0xc2a5f465));
2584 path.close();
2585
2586 SkPath path2(path);
2587 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2588 }
2589 // op end success 1
2590
battleOp96(skiatest::Reporter * reporter,const char * filename)2591 static void battleOp96(skiatest::Reporter* reporter, const char* filename) {
2592 SkPath path;
2593 path.setFillType((SkPathFillType) 0);
2594 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2595 path.cubicTo(SkBits2Float(0x3fa966bb), SkBits2Float(0xc2a5ffff), SkBits2Float(0x402963a4), SkBits2Float(0xc2a5efcb), SkBits2Float(0x407dfe39), SkBits2Float(0xc2a5cf64));
2596 path.lineTo(SkBits2Float(0x40379c05), SkBits2Float(0xc26fb9ba));
2597 path.cubicTo(SkBits2Float(0x3ff4e689), SkBits2Float(0xc26fe893), SkBits2Float(0x3f74eb1f), SkBits2Float(0xc2700000), SkBits2Float(0x363f7e94), SkBits2Float(0xc2700000));
2598 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2599 path.close();
2600
2601 SkPath path1(path);
2602 path.reset();
2603 path.setFillType((SkPathFillType) 0);
2604 path.moveTo(SkBits2Float(0x407dfe3a), SkBits2Float(0xc2a5cf65));
2605 path.cubicTo(SkBits2Float(0x40833a01), SkBits2Float(0xc2a5cc27), SkBits2Float(0x408774bf), SkBits2Float(0xc2a5c8c0), SkBits2Float(0x408baf5a), SkBits2Float(0xc2a5c52f));
2606 path.lineTo(SkBits2Float(0x4049f448), SkBits2Float(0xc26faaf9));
2607 path.cubicTo(SkBits2Float(0x4043d713), SkBits2Float(0xc26fb022), SkBits2Float(0x403db99f), SkBits2Float(0xc26fb50d), SkBits2Float(0x40379bfe), SkBits2Float(0xc26fb9bc));
2608 path.lineTo(SkBits2Float(0x407dfe3a), SkBits2Float(0xc2a5cf65));
2609 path.close();
2610
2611 SkPath path2(path);
2612 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2613 }
2614 // op end success 1
2615
battleOp97(skiatest::Reporter * reporter,const char * filename)2616 static void battleOp97(skiatest::Reporter* reporter, const char* filename) {
2617 SkPath path;
2618 path.setFillType((SkPathFillType) 1);
2619 path.moveTo(SkBits2Float(0x363f7e94), SkBits2Float(0xc2700000));
2620 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2621 path.cubicTo(SkBits2Float(0x3fa966bb), SkBits2Float(0xc2a5ffff), SkBits2Float(0x402963a4), SkBits2Float(0xc2a5efcb), SkBits2Float(0x407dfe3a), SkBits2Float(0xc2a5cf65));
2622 path.cubicTo(SkBits2Float(0x40833a01), SkBits2Float(0xc2a5cc27), SkBits2Float(0x408774bf), SkBits2Float(0xc2a5c8c0), SkBits2Float(0x408baf5a), SkBits2Float(0xc2a5c52f));
2623 path.lineTo(SkBits2Float(0x4049f448), SkBits2Float(0xc26faaf9));
2624 path.cubicTo(SkBits2Float(0x4043d716), SkBits2Float(0xc26fb022), SkBits2Float(0x403db9a5), SkBits2Float(0xc26fb50d), SkBits2Float(0x40379c07), SkBits2Float(0xc26fb9bc));
2625 path.lineTo(SkBits2Float(0x40379c05), SkBits2Float(0xc26fb9ba));
2626 path.cubicTo(SkBits2Float(0x3ff4e689), SkBits2Float(0xc26fe893), SkBits2Float(0x3f74eb1f), SkBits2Float(0xc2700000), SkBits2Float(0x363f7e94), SkBits2Float(0xc2700000));
2627 path.close();
2628
2629 SkPath path1(path);
2630 path.reset();
2631 path.setFillType((SkPathFillType) 0);
2632 path.moveTo(SkBits2Float(0x408baf5c), SkBits2Float(0xc2a5c530));
2633 path.cubicTo(SkBits2Float(0x40d03963), SkBits2Float(0xc2a58b6e), SkBits2Float(0x410a4c7d), SkBits2Float(0xc2a52732), SkBits2Float(0x412c535f), SkBits2Float(0xc2a498b2));
2634 path.lineTo(SkBits2Float(0x40f9253d), SkBits2Float(0xc26df886));
2635 path.cubicTo(SkBits2Float(0x40c7f32d), SkBits2Float(0xc26ec68d), SkBits2Float(0x409685fb), SkBits2Float(0xc26f577a), SkBits2Float(0x4049f441), SkBits2Float(0xc26faafa));
2636 path.lineTo(SkBits2Float(0x408baf5c), SkBits2Float(0xc2a5c530));
2637 path.close();
2638
2639 SkPath path2(path);
2640 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2641 }
2642 // op end success 1
2643
battleOp98(skiatest::Reporter * reporter,const char * filename)2644 static void battleOp98(skiatest::Reporter* reporter, const char* filename) {
2645 SkPath path;
2646 path.setFillType((SkPathFillType) 0);
2647 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2648 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5f), SkBits2Float(0xc2a568f2));
2649 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d));
2650 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000));
2651 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2652 path.close();
2653
2654 SkPath path1(path);
2655 path.reset();
2656 path.setFillType((SkPathFillType) 0);
2657 path.moveTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3));
2658 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941));
2659 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9));
2660 path.cubicTo(SkBits2Float(0x40ac7ea0), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e37), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd4f), SkBits2Float(0xc26f259f));
2661 path.lineTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3));
2662 path.close();
2663
2664 SkPath path2(path);
2665 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2666 }
2667 // op end success 1
2668
battleOp99(skiatest::Reporter * reporter,const char * filename)2669 static void battleOp99(skiatest::Reporter* reporter, const char* filename) {
2670 SkPath path;
2671 path.setFillType((SkPathFillType) 1);
2672 path.moveTo(SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000));
2673 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2674 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3));
2675 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941));
2676 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9));
2677 path.cubicTo(SkBits2Float(0x40ac7ea2), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e3a), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd54), SkBits2Float(0xc26f259f));
2678 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d));
2679 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000));
2680 path.close();
2681
2682 SkPath path1(path);
2683 path.reset();
2684 path.setFillType((SkPathFillType) 0);
2685 path.moveTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941));
2686 path.cubicTo(SkBits2Float(0x41374a21), SkBits2Float(0xc2a495d5), SkBits2Float(0x41731962), SkBits2Float(0xc2a35eca), SkBits2Float(0x419704b1), SkBits2Float(0xc2a1a64c));
2687 path.lineTo(SkBits2Float(0x415a56f5), SkBits2Float(0xc269b5d4));
2688 path.cubicTo(SkBits2Float(0x412fbbfb), SkBits2Float(0xc26c32af), SkBits2Float(0x41047f9a), SkBits2Float(0xc26df463), SkBits2Float(0x40b1de7e), SkBits2Float(0xc26ef7cb));
2689 path.lineTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941));
2690 path.close();
2691
2692 SkPath path2(path);
2693 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2694 }
2695 // op end success 1
2696
battleOp100(skiatest::Reporter * reporter,const char * filename)2697 static void battleOp100(skiatest::Reporter* reporter, const char* filename) {
2698 SkPath path;
2699 path.setFillType((SkPathFillType) 0);
2700 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2701 path.cubicTo(SkBits2Float(0x403cde0b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40bcccc9), SkBits2Float(0xc2a5af6a), SkBits2Float(0x410d5936), SkBits2Float(0xc2a50e98));
2702 path.lineTo(SkBits2Float(0x40cc5bf6), SkBits2Float(0xc26ea2fc));
2703 path.cubicTo(SkBits2Float(0x40887b5e), SkBits2Float(0xc26f8b7f), SkBits2Float(0x400887d8), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2704 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2705 path.close();
2706
2707 SkPath path1(path);
2708 path.reset();
2709 path.setFillType((SkPathFillType) 0);
2710 path.moveTo(SkBits2Float(0x410d5935), SkBits2Float(0xc2a50e99));
2711 path.cubicTo(SkBits2Float(0x41120ace), SkBits2Float(0xc2a4fe85), SkBits2Float(0x4116bbb5), SkBits2Float(0xc2a4eda4), SkBits2Float(0x411b6bdd), SkBits2Float(0xc2a4dbf6));
2712 path.lineTo(SkBits2Float(0x40e0b4a3), SkBits2Float(0xc26e59c7));
2713 path.cubicTo(SkBits2Float(0x40d9ed7a), SkBits2Float(0xc26e7357), SkBits2Float(0x40d32536), SkBits2Float(0xc26e8bbe), SkBits2Float(0x40cc5bf1), SkBits2Float(0xc26ea2fc));
2714 path.lineTo(SkBits2Float(0x410d5935), SkBits2Float(0xc2a50e99));
2715 path.close();
2716
2717 SkPath path2(path);
2718 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2719 }
2720 // op end fail 1
2721
battleOp101(skiatest::Reporter * reporter,const char * filename)2722 static void battleOp101(skiatest::Reporter* reporter, const char* filename) {
2723 SkPath path;
2724 path.setFillType((SkPathFillType) 0);
2725 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2726 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afb7), SkBits2Float(0xc2a481e4));
2727 path.lineTo(SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e));
2728 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2729 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2730 path.close();
2731
2732 SkPath path1(path);
2733 path.reset();
2734 path.setFillType((SkPathFillType) 0);
2735 path.moveTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4));
2736 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca));
2737 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0));
2738 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b4), SkBits2Float(0xc26dd78e));
2739 path.lineTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4));
2740 path.close();
2741
2742 SkPath path2(path);
2743 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2744 }
2745 // op end success 1
2746
battleOp102(skiatest::Reporter * reporter,const char * filename)2747 static void battleOp102(skiatest::Reporter* reporter, const char* filename) {
2748 SkPath path;
2749 path.setFillType((SkPathFillType) 1);
2750 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2751 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2752 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4));
2753 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca));
2754 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0));
2755 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e));
2756 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
2757 path.close();
2758
2759 SkPath path1(path);
2760 path.reset();
2761 path.setFillType((SkPathFillType) 0);
2762 path.moveTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb));
2763 path.cubicTo(SkBits2Float(0x419152e5), SkBits2Float(0xc2a26c3a), SkBits2Float(0x41c0119b), SkBits2Float(0xc29f5c06), SkBits2Float(0x41ed1335), SkBits2Float(0xc29b0f0a));
2764 path.lineTo(SkBits2Float(0x41ab612b), SkBits2Float(0xc2602e6b));
2765 path.cubicTo(SkBits2Float(0x418ad84d), SkBits2Float(0xc2666635), SkBits2Float(0x41521b54), SkBits2Float(0xc26ad3fe), SkBits2Float(0x410d3426), SkBits2Float(0xc26d63c0));
2766 path.lineTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb));
2767 path.close();
2768
2769 SkPath path2(path);
2770 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2771 }
2772 // op end success 1
2773
battleOp103(skiatest::Reporter * reporter,const char * filename)2774 static void battleOp103(skiatest::Reporter* reporter, const char* filename) { //crash
2775 SkPath path;
2776 path.setFillType((SkPathFillType) 0);
2777 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2778 path.cubicTo(SkBits2Float(0x408e2d73), SkBits2Float(0xc2a5ffff), SkBits2Float(0x410e100a), SkBits2Float(0xc2a54957), SkBits2Float(0x41543cd2), SkBits2Float(0xc2a3ddc8));
2779 path.lineTo(SkBits2Float(0x41196cba), SkBits2Float(0xc26cea49));
2780 path.cubicTo(SkBits2Float(0x40cd643f), SkBits2Float(0xc26ef7e9), SkBits2Float(0x404d8eb8), SkBits2Float(0xc26fffff), SkBits2Float(0xb5ac02ba), SkBits2Float(0xc26fffff));
2781 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2782 path.close();
2783
2784 SkPath path1(path);
2785 path.reset();
2786 path.setFillType((SkPathFillType) 0);
2787 path.moveTo(SkBits2Float(0x41543cce), SkBits2Float(0xc2a3ddc8));
2788 path.cubicTo(SkBits2Float(0x415b4057), SkBits2Float(0xc2a3b973), SkBits2Float(0x41624181), SkBits2Float(0xc2a39350), SkBits2Float(0x41694022), SkBits2Float(0xc2a36b60));
2789 path.lineTo(SkBits2Float(0x41289d63), SkBits2Float(0xc26c44e1));
2790 path.cubicTo(SkBits2Float(0x41238ef8), SkBits2Float(0xc26c7e9e), SkBits2Float(0x411e7eb5), SkBits2Float(0xc26cb5c1), SkBits2Float(0x41196cbd), SkBits2Float(0xc26cea4a));
2791 path.lineTo(SkBits2Float(0x41543cce), SkBits2Float(0xc2a3ddc8));
2792 path.close();
2793
2794 SkPath path2(path);
2795 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2796 }
2797
battleOp104(skiatest::Reporter * reporter,const char * filename)2798 static void battleOp104(skiatest::Reporter* reporter, const char* filename) {
2799 SkPath path;
2800 path.setFillType((SkPathFillType) 0);
2801 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2802 path.cubicTo(SkBits2Float(0x3dd41fb8), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e5b), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1657), SkBits2Float(0xc2a5ffb2));
2803 path.lineTo(SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92));
2804 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x350f7780), SkBits2Float(0xc2700000));
2805 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2806 path.close();
2807
2808 SkPath path1(path);
2809 path.reset();
2810 path.setFillType((SkPathFillType) 0);
2811 path.moveTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4));
2812 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3));
2813 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b));
2814 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e660197), SkBits2Float(0xc26fff93));
2815 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4));
2816 path.close();
2817
2818 SkPath path2(path);
2819 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2820 }
2821 // op end success 1
2822
battleOp105(skiatest::Reporter * reporter,const char * filename)2823 static void battleOp105(skiatest::Reporter* reporter, const char* filename) {
2824 SkPath path;
2825 path.setFillType((SkPathFillType) 1);
2826 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2827 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2828 path.cubicTo(SkBits2Float(0x3dd41f74), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e17), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1624), SkBits2Float(0xc2a5ffb2));
2829 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4));
2830 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3));
2831 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b));
2832 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92));
2833 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2834 path.close();
2835
2836 SkPath path1(path);
2837 path.reset();
2838 path.setFillType((SkPathFillType) 0);
2839 path.moveTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4));
2840 path.cubicTo(SkBits2Float(0x3f0276b7), SkBits2Float(0xc2a5ff4a), SkBits2Float(0x3f2d6dea), SkBits2Float(0xc2a5feac), SkBits2Float(0x3f5864cc), SkBits2Float(0xc2a5fdcd));
2841 path.lineTo(SkBits2Float(0x3f1c6df6), SkBits2Float(0xc26ffcd0));
2842 path.cubicTo(SkBits2Float(0x3efabdec), SkBits2Float(0xc26ffe15), SkBits2Float(0x3ebc9f78), SkBits2Float(0xc26ffef9), SkBits2Float(0x3e7d0190), SkBits2Float(0xc26fff7c));
2843 path.lineTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4));
2844 path.close();
2845
2846 SkPath path2(path);
2847 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2848 }
2849 // op end success 1
2850
battleOp106(skiatest::Reporter * reporter,const char * filename)2851 static void battleOp106(skiatest::Reporter* reporter, const char* filename) {
2852 SkPath path;
2853 path.setFillType((SkPathFillType) 0);
2854 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2855 path.cubicTo(SkBits2Float(0x3ee221f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f622166), SkBits2Float(0xc2a5fe31), SkBits2Float(0x3fa9974d), SkBits2Float(0xc2a5fa95));
2856 path.lineTo(SkBits2Float(0x3f753159), SkBits2Float(0xc26ff82c));
2857 path.cubicTo(SkBits2Float(0x3f237814), SkBits2Float(0xc26ffd64), SkBits2Float(0x3ea3787a), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa50), SkBits2Float(0xc2700000));
2858 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2859 path.close();
2860
2861 SkPath path1(path);
2862 path.reset();
2863 path.setFillType((SkPathFillType) 0);
2864 path.moveTo(SkBits2Float(0x3fa99777), SkBits2Float(0xc2a5fa96));
2865 path.cubicTo(SkBits2Float(0x3faf3e7a), SkBits2Float(0xc2a5fa39), SkBits2Float(0x3fb4e596), SkBits2Float(0xc2a5f9d8), SkBits2Float(0x3fba8cad), SkBits2Float(0xc2a5f972));
2866 path.lineTo(SkBits2Float(0x3f86dad5), SkBits2Float(0xc26ff687));
2867 path.cubicTo(SkBits2Float(0x3f82c4d9), SkBits2Float(0xc26ff71a), SkBits2Float(0x3f7d5da4), SkBits2Float(0xc26ff7a6), SkBits2Float(0x3f753191), SkBits2Float(0xc26ff82c));
2868 path.lineTo(SkBits2Float(0x3fa99777), SkBits2Float(0xc2a5fa96));
2869 path.close();
2870
2871 SkPath path2(path);
2872 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2873 }
2874 // op end success 1
2875
battleOp107(skiatest::Reporter * reporter,const char * filename)2876 static void battleOp107(skiatest::Reporter* reporter, const char* filename) {
2877 SkPath path;
2878 path.setFillType((SkPathFillType) 1);
2879 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2880 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2881 path.cubicTo(SkBits2Float(0x3ee221f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f622166), SkBits2Float(0xc2a5fe31), SkBits2Float(0x3fa99777), SkBits2Float(0xc2a5fa96));
2882 path.cubicTo(SkBits2Float(0x3faf3e7a), SkBits2Float(0xc2a5fa39), SkBits2Float(0x3fb4e596), SkBits2Float(0xc2a5f9d8), SkBits2Float(0x3fba8cad), SkBits2Float(0xc2a5f972));
2883 path.lineTo(SkBits2Float(0x3f86dad5), SkBits2Float(0xc26ff687));
2884 path.cubicTo(SkBits2Float(0x3f82c4d9), SkBits2Float(0xc26ff71a), SkBits2Float(0x3f7d5da4), SkBits2Float(0xc26ff7a6), SkBits2Float(0x3f753159), SkBits2Float(0xc26ff82c));
2885 path.cubicTo(SkBits2Float(0x3f237814), SkBits2Float(0xc26ffd64), SkBits2Float(0x3ea3787a), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2886 path.close();
2887
2888 SkPath path1(path);
2889 path.reset();
2890 path.setFillType((SkPathFillType) 0);
2891 path.moveTo(SkBits2Float(0x3fba8c96), SkBits2Float(0xc2a5f973));
2892 path.cubicTo(SkBits2Float(0x400b1301), SkBits2Float(0xc2a5f303), SkBits2Float(0x4038dc7e), SkBits2Float(0xc2a5e7d6), SkBits2Float(0x40669fe4), SkBits2Float(0xc2a5d7ed));
2893 path.lineTo(SkBits2Float(0x4026b765), SkBits2Float(0xc26fc611));
2894 path.cubicTo(SkBits2Float(0x4005a27d), SkBits2Float(0xc26fdd13), SkBits2Float(0x3fc9123c), SkBits2Float(0xc26fed3b), SkBits2Float(0x3f86daf1), SkBits2Float(0xc26ff689));
2895 path.lineTo(SkBits2Float(0x3fba8c96), SkBits2Float(0xc2a5f973));
2896 path.close();
2897
2898 SkPath path2(path);
2899 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2900 }
2901 // op end success 1
2902
battleOp108(skiatest::Reporter * reporter,const char * filename)2903 static void battleOp108(skiatest::Reporter* reporter, const char* filename) {
2904 SkPath path;
2905 path.setFillType((SkPathFillType) 0);
2906 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2907 path.cubicTo(SkBits2Float(0x3f587304), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd8713e), SkBits2Float(0xc2a5f962), SkBits2Float(0x40224ed5), SkBits2Float(0xc2a5ec27));
2908 path.lineTo(SkBits2Float(0x3feaa996), SkBits2Float(0xc26fe350));
2909 path.cubicTo(SkBits2Float(0x3f9c76e4), SkBits2Float(0xc26ff671), SkBits2Float(0x3f1c780b), SkBits2Float(0xc2700000), SkBits2Float(0xb5510538), SkBits2Float(0xc2700000));
2910 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2911 path.close();
2912
2913 SkPath path1(path);
2914 path.reset();
2915 path.setFillType((SkPathFillType) 0);
2916 path.moveTo(SkBits2Float(0x40224ee4), SkBits2Float(0xc2a5ec28));
2917 path.cubicTo(SkBits2Float(0x4027b77a), SkBits2Float(0xc2a5ead6), SkBits2Float(0x402d1ffd), SkBits2Float(0xc2a5e972), SkBits2Float(0x4032886f), SkBits2Float(0xc2a5e7fe));
2918 path.lineTo(SkBits2Float(0x40010f64), SkBits2Float(0xc26fdd4a));
2919 path.cubicTo(SkBits2Float(0x3ffa4d23), SkBits2Float(0xc26fdf64), SkBits2Float(0x3ff27b6d), SkBits2Float(0xc26fe166), SkBits2Float(0x3feaa9a1), SkBits2Float(0xc26fe350));
2920 path.lineTo(SkBits2Float(0x40224ee4), SkBits2Float(0xc2a5ec28));
2921 path.close();
2922
2923 SkPath path2(path);
2924 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2925 }
2926 // op end success 1
2927
battleOp109(skiatest::Reporter * reporter,const char * filename)2928 static void battleOp109(skiatest::Reporter* reporter, const char* filename) {
2929 SkPath path;
2930 path.setFillType((SkPathFillType) 1);
2931 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2932 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2933 path.cubicTo(SkBits2Float(0x3f587304), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd8713e), SkBits2Float(0xc2a5f962), SkBits2Float(0x40224ee4), SkBits2Float(0xc2a5ec28));
2934 path.cubicTo(SkBits2Float(0x4027b77a), SkBits2Float(0xc2a5ead6), SkBits2Float(0x402d1ffd), SkBits2Float(0xc2a5e972), SkBits2Float(0x4032886f), SkBits2Float(0xc2a5e7fe));
2935 path.lineTo(SkBits2Float(0x40010f64), SkBits2Float(0xc26fdd4a));
2936 path.cubicTo(SkBits2Float(0x3ffa4d23), SkBits2Float(0xc26fdf64), SkBits2Float(0x3ff27b6d), SkBits2Float(0xc26fe166), SkBits2Float(0x3feaa996), SkBits2Float(0xc26fe350));
2937 path.cubicTo(SkBits2Float(0x3f9c76e4), SkBits2Float(0xc26ff671), SkBits2Float(0x3f1c780b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
2938 path.close();
2939
2940 SkPath path1(path);
2941 path.reset();
2942 path.setFillType((SkPathFillType) 0);
2943 path.moveTo(SkBits2Float(0x4032887d), SkBits2Float(0xc2a5e7fe));
2944 path.cubicTo(SkBits2Float(0x4085166b), SkBits2Float(0xc2a5d069), SkBits2Float(0x40b0dd8e), SkBits2Float(0xc2a5a77a), SkBits2Float(0x40dc8f53), SkBits2Float(0xc2a56d38));
2945 path.lineTo(SkBits2Float(0x409f70d9), SkBits2Float(0xc26f2bca));
2946 path.cubicTo(SkBits2Float(0x407fb58c), SkBits2Float(0xc26f8005), SkBits2Float(0x40406a74), SkBits2Float(0xc26fbb35), SkBits2Float(0x40010f5f), SkBits2Float(0xc26fdd4b));
2947 path.lineTo(SkBits2Float(0x4032887d), SkBits2Float(0xc2a5e7fe));
2948 path.close();
2949
2950 SkPath path2(path);
2951 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2952 }
2953 // op end success 1
2954
battleOp110(skiatest::Reporter * reporter,const char * filename)2955 static void battleOp110(skiatest::Reporter* reporter, const char* filename) {
2956 SkPath path;
2957 path.setFillType((SkPathFillType) 0);
2958 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2959 path.cubicTo(SkBits2Float(0x400cf1ae), SkBits2Float(0xc2a5ffff), SkBits2Float(0x408cea87), SkBits2Float(0xc2a5d31f), SkBits2Float(0x40d32a40), SkBits2Float(0xc2a57979));
2960 path.lineTo(SkBits2Float(0x4098a645), SkBits2Float(0xc26f3d83));
2961 path.cubicTo(SkBits2Float(0x404bbc01), SkBits2Float(0xc26fbf1e), SkBits2Float(0x3fcbc669), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff59), SkBits2Float(0xc26fffff));
2962 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
2963 path.close();
2964
2965 SkPath path1(path);
2966 path.reset();
2967 path.setFillType((SkPathFillType) 0);
2968 path.moveTo(SkBits2Float(0x40d32a46), SkBits2Float(0xc2a5797a));
2969 path.cubicTo(SkBits2Float(0x40da306e), SkBits2Float(0xc2a57083), SkBits2Float(0x40e135fe), SkBits2Float(0xc2a5671a), SkBits2Float(0x40e83aef), SkBits2Float(0xc2a55d3f));
2970 path.lineTo(SkBits2Float(0x40a7e090), SkBits2Float(0xc26f14b1));
2971 path.cubicTo(SkBits2Float(0x40a2cd8d), SkBits2Float(0xc26f22f4), SkBits2Float(0x409dba1d), SkBits2Float(0xc26f308e), SkBits2Float(0x4098a641), SkBits2Float(0xc26f3d84));
2972 path.lineTo(SkBits2Float(0x40d32a46), SkBits2Float(0xc2a5797a));
2973 path.close();
2974
2975 SkPath path2(path);
2976 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
2977 }
2978 // op end success 1
2979
battleOp111(skiatest::Reporter * reporter,const char * filename)2980 static void battleOp111(skiatest::Reporter* reporter, const char* filename) {
2981 SkPath path;
2982 path.setFillType((SkPathFillType) 1);
2983 path.moveTo(SkBits2Float(0x3697ff59), SkBits2Float(0xc26fffff));
2984 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
2985 path.cubicTo(SkBits2Float(0x400cf1ae), SkBits2Float(0xc2a5ffff), SkBits2Float(0x408cea87), SkBits2Float(0xc2a5d31f), SkBits2Float(0x40d32a46), SkBits2Float(0xc2a5797a));
2986 path.cubicTo(SkBits2Float(0x40da306e), SkBits2Float(0xc2a57083), SkBits2Float(0x40e135fe), SkBits2Float(0xc2a5671a), SkBits2Float(0x40e83aef), SkBits2Float(0xc2a55d3f));
2987 path.lineTo(SkBits2Float(0x40a7e090), SkBits2Float(0xc26f14b1));
2988 path.cubicTo(SkBits2Float(0x40a2cd8f), SkBits2Float(0xc26f22f4), SkBits2Float(0x409dba20), SkBits2Float(0xc26f308e), SkBits2Float(0x4098a645), SkBits2Float(0xc26f3d83));
2989 path.cubicTo(SkBits2Float(0x404bbc01), SkBits2Float(0xc26fbf1e), SkBits2Float(0x3fcbc669), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff59), SkBits2Float(0xc26fffff));
2990 path.close();
2991 path.moveTo(SkBits2Float(0x40b5a39a), SkBits2Float(0xc28e5650));
2992 path.lineTo(SkBits2Float(0x4098a641), SkBits2Float(0xc26f3d84));
2993 path.lineTo(SkBits2Float(0x4098a646), SkBits2Float(0xc26f3d84));
2994 path.lineTo(SkBits2Float(0x40b5a39a), SkBits2Float(0xc28e5650));
2995 path.close();
2996
2997 SkPath path1(path);
2998 path.reset();
2999 path.setFillType((SkPathFillType) 0);
3000 path.moveTo(SkBits2Float(0x40e83ae9), SkBits2Float(0xc2a55d3f));
3001 path.cubicTo(SkBits2Float(0x412d0232), SkBits2Float(0xc2a4bd73), SkBits2Float(0x4165854a), SkBits2Float(0xc2a3a860), SkBits2Float(0x418ea651), SkBits2Float(0xc2a21fbf));
3002 path.lineTo(SkBits2Float(0x414e3d91), SkBits2Float(0xc26a656a));
3003 path.cubicTo(SkBits2Float(0x4125eb27), SkBits2Float(0xc26c9d13), SkBits2Float(0x40fa2207), SkBits2Float(0xc26e2daa), SkBits2Float(0x40a7e094), SkBits2Float(0xc26f14b2));
3004 path.lineTo(SkBits2Float(0x40e83ae9), SkBits2Float(0xc2a55d3f));
3005 path.close();
3006
3007 SkPath path2(path);
3008 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3009 }
3010 // op end success 1
3011
battleOp112(skiatest::Reporter * reporter,const char * filename)3012 static void battleOp112(skiatest::Reporter* reporter, const char* filename) {
3013 SkPath path;
3014 path.setFillType((SkPathFillType) 0);
3015 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3016 path.cubicTo(SkBits2Float(0x4035711d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b561d9), SkBits2Float(0xc2a5b5a1), SkBits2Float(0x4107d050), SkBits2Float(0xc2a5212f));
3017 path.lineTo(SkBits2Float(0x40c45b76), SkBits2Float(0xc26ebddb));
3018 path.cubicTo(SkBits2Float(0x40831ea4), SkBits2Float(0xc26f947a), SkBits2Float(0x400329ad), SkBits2Float(0xc26fffff), SkBits2Float(0x35bbfd46), SkBits2Float(0xc26fffff));
3019 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3020 path.close();
3021
3022 SkPath path1(path);
3023 path.reset();
3024 path.setFillType((SkPathFillType) 0);
3025 path.moveTo(SkBits2Float(0x4107d054), SkBits2Float(0xc2a5212f));
3026 path.cubicTo(SkBits2Float(0x410c5332), SkBits2Float(0xc2a51258), SkBits2Float(0x4110d578), SkBits2Float(0xc2a502c3), SkBits2Float(0x41155714), SkBits2Float(0xc2a4f271));
3027 path.lineTo(SkBits2Float(0x40d7e9e2), SkBits2Float(0xc26e7a46));
3028 path.cubicTo(SkBits2Float(0x40d16605), SkBits2Float(0xc26e91e0), SkBits2Float(0x40cae131), SkBits2Float(0xc26ea866), SkBits2Float(0x40c45b7a), SkBits2Float(0xc26ebddc));
3029 path.lineTo(SkBits2Float(0x4107d054), SkBits2Float(0xc2a5212f));
3030 path.close();
3031
3032 SkPath path2(path);
3033 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3034 }
3035 // op end success 1
3036
battleOp113(skiatest::Reporter * reporter,const char * filename)3037 static void battleOp113(skiatest::Reporter* reporter, const char* filename) {
3038 SkPath path;
3039 path.setFillType((SkPathFillType) 1);
3040 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
3041 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3042 path.cubicTo(SkBits2Float(0x4035711d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b561d9), SkBits2Float(0xc2a5b5a1), SkBits2Float(0x4107d054), SkBits2Float(0xc2a5212f));
3043 path.cubicTo(SkBits2Float(0x410c5332), SkBits2Float(0xc2a51258), SkBits2Float(0x4110d578), SkBits2Float(0xc2a502c3), SkBits2Float(0x41155714), SkBits2Float(0xc2a4f271));
3044 path.lineTo(SkBits2Float(0x40d7e9e2), SkBits2Float(0xc26e7a46));
3045 path.cubicTo(SkBits2Float(0x40d16605), SkBits2Float(0xc26e91e0), SkBits2Float(0x40cae131), SkBits2Float(0xc26ea866), SkBits2Float(0x40c45b76), SkBits2Float(0xc26ebddb));
3046 path.cubicTo(SkBits2Float(0x40831ea4), SkBits2Float(0xc26f947a), SkBits2Float(0x400329ad), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
3047 path.close();
3048
3049 SkPath path1(path);
3050 path.reset();
3051 path.setFillType((SkPathFillType) 0);
3052 path.moveTo(SkBits2Float(0x4115571a), SkBits2Float(0xc2a4f271));
3053 path.cubicTo(SkBits2Float(0x415e6818), SkBits2Float(0xc2a3e9d4), SkBits2Float(0x41935478), SkBits2Float(0xc2a21f7a), SkBits2Float(0x41b6ad74), SkBits2Float(0xc29f981d));
3054 path.lineTo(SkBits2Float(0x41840e5b), SkBits2Float(0xc266bd14));
3055 path.cubicTo(SkBits2Float(0x415501d6), SkBits2Float(0xc26a6507), SkBits2Float(0x4120c6a0), SkBits2Float(0xc26cfbb4), SkBits2Float(0x40d7e9e6), SkBits2Float(0xc26e7a47));
3056 path.lineTo(SkBits2Float(0x4115571a), SkBits2Float(0xc2a4f271));
3057 path.close();
3058
3059 SkPath path2(path);
3060 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3061 }
3062 // op end success 1
3063
battleOp114(skiatest::Reporter * reporter,const char * filename)3064 static void battleOp114(skiatest::Reporter* reporter, const char* filename) {
3065 SkPath path;
3066 path.setFillType((SkPathFillType) 0);
3067 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3068 path.cubicTo(SkBits2Float(0x405f6414), SkBits2Float(0xc2a60000), SkBits2Float(0x40df4798), SkBits2Float(0xc2a58f44), SkBits2Float(0x41270b42), SkBits2Float(0xc2a4ae78));
3069 path.lineTo(SkBits2Float(0x40f1826b), SkBits2Float(0xc26e1801));
3070 path.cubicTo(SkBits2Float(0x40a16831), SkBits2Float(0xc26f5d03), SkBits2Float(0x40217cc8), SkBits2Float(0xc2700000), SkBits2Float(0x3507fa94), SkBits2Float(0xc2700000));
3071 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3072 path.close();
3073
3074 SkPath path1(path);
3075 path.reset();
3076 path.setFillType((SkPathFillType) 0);
3077 path.moveTo(SkBits2Float(0x41270b46), SkBits2Float(0xc2a4ae78));
3078 path.cubicTo(SkBits2Float(0x412c952a), SkBits2Float(0xc2a497ff), SkBits2Float(0x41321de3), SkBits2Float(0xc2a48068), SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4));
3079 path.lineTo(SkBits2Float(0x4104c195), SkBits2Float(0xc26db1b1));
3080 path.cubicTo(SkBits2Float(0x4100c256), SkBits2Float(0xc26dd569), SkBits2Float(0x40f98465), SkBits2Float(0xc26df784), SkBits2Float(0x40f18273), SkBits2Float(0xc26e1801));
3081 path.lineTo(SkBits2Float(0x41270b46), SkBits2Float(0xc2a4ae78));
3082 path.close();
3083
3084 SkPath path2(path);
3085 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3086 }
3087 // op end success 1
3088
battleOp115(skiatest::Reporter * reporter,const char * filename)3089 static void battleOp115(skiatest::Reporter* reporter, const char* filename) {
3090 SkPath path;
3091 path.setFillType((SkPathFillType) 1);
3092 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3093 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3094 path.cubicTo(SkBits2Float(0x405f6414), SkBits2Float(0xc2a60000), SkBits2Float(0x40df4798), SkBits2Float(0xc2a58f44), SkBits2Float(0x41270b46), SkBits2Float(0xc2a4ae78));
3095 path.cubicTo(SkBits2Float(0x412c952a), SkBits2Float(0xc2a497ff), SkBits2Float(0x41321de3), SkBits2Float(0xc2a48068), SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4));
3096 path.lineTo(SkBits2Float(0x4104c195), SkBits2Float(0xc26db1b1));
3097 path.cubicTo(SkBits2Float(0x4100c256), SkBits2Float(0xc26dd569), SkBits2Float(0x40f98465), SkBits2Float(0xc26df784), SkBits2Float(0x40f1826b), SkBits2Float(0xc26e1801));
3098 path.cubicTo(SkBits2Float(0x40a16831), SkBits2Float(0xc26f5d03), SkBits2Float(0x40217cc8), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3099 path.close();
3100
3101 SkPath path1(path);
3102 path.reset();
3103 path.setFillType((SkPathFillType) 0);
3104 path.moveTo(SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4));
3105 path.cubicTo(SkBits2Float(0x4188a9bf), SkBits2Float(0xc2a2d700), SkBits2Float(0x41b4bec4), SkBits2Float(0xc2a021d5), SkBits2Float(0x41df619b), SkBits2Float(0xc29c5308));
3106 path.lineTo(SkBits2Float(0x41a17afe), SkBits2Float(0xc26202d7));
3107 path.cubicTo(SkBits2Float(0x4182a8c1), SkBits2Float(0xc2678433), SkBits2Float(0x414595cf), SkBits2Float(0xc26b6e5e), SkBits2Float(0x4104c197), SkBits2Float(0xc26db1b2));
3108 path.lineTo(SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4));
3109 path.close();
3110
3111 SkPath path2(path);
3112 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3113 }
3114 // op end success 1
3115
battleOp116(skiatest::Reporter * reporter,const char * filename)3116 static void battleOp116(skiatest::Reporter* reporter, const char* filename) {
3117 SkPath path;
3118 path.setFillType((SkPathFillType) 0);
3119 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3120 path.cubicTo(SkBits2Float(0x40894a00), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41092f84), SkBits2Float(0xc2a555af), SkBits2Float(0x414d01d5), SkBits2Float(0xc2a40295));
3121 path.lineTo(SkBits2Float(0x411432a9), SkBits2Float(0xc26d1f80));
3122 path.cubicTo(SkBits2Float(0x40c65728), SkBits2Float(0xc26f09c3), SkBits2Float(0x40467d64), SkBits2Float(0xc2700000), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000));
3123 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3124 path.close();
3125
3126 SkPath path1(path);
3127 path.reset();
3128 path.setFillType((SkPathFillType) 0);
3129 path.moveTo(SkBits2Float(0x414d01d1), SkBits2Float(0xc2a40296));
3130 path.cubicTo(SkBits2Float(0x4153c92e), SkBits2Float(0xc2a3e0b1), SkBits2Float(0x415a8e6d), SkBits2Float(0xc2a3bd1e), SkBits2Float(0x41615162), SkBits2Float(0xc2a397de));
3131 path.lineTo(SkBits2Float(0x4122e164), SkBits2Float(0xc26c8535));
3132 path.cubicTo(SkBits2Float(0x411dfe19), SkBits2Float(0xc26cbb11), SkBits2Float(0x41191928), SkBits2Float(0xc26cee7f), SkBits2Float(0x411432ab), SkBits2Float(0xc26d1f80));
3133 path.lineTo(SkBits2Float(0x414d01d1), SkBits2Float(0xc2a40296));
3134 path.close();
3135
3136 SkPath path2(path);
3137 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3138 }
3139 // op end success 1
3140
battleOp117(skiatest::Reporter * reporter,const char * filename)3141 static void battleOp117(skiatest::Reporter* reporter, const char* filename) {
3142 SkPath path;
3143 path.setFillType((SkPathFillType) 1);
3144 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3145 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3146 path.cubicTo(SkBits2Float(0x408949fd), SkBits2Float(0xc2a60000), SkBits2Float(0x41092f81), SkBits2Float(0xc2a555af), SkBits2Float(0x414d01d0), SkBits2Float(0xc2a40295));
3147 path.lineTo(SkBits2Float(0x414d01d1), SkBits2Float(0xc2a40296));
3148 path.cubicTo(SkBits2Float(0x4153c92e), SkBits2Float(0xc2a3e0b1), SkBits2Float(0x415a8e6d), SkBits2Float(0xc2a3bd1e), SkBits2Float(0x41615162), SkBits2Float(0xc2a397de));
3149 path.lineTo(SkBits2Float(0x4122e164), SkBits2Float(0xc26c8535));
3150 path.cubicTo(SkBits2Float(0x411dfe19), SkBits2Float(0xc26cbb11), SkBits2Float(0x41191928), SkBits2Float(0xc26cee7f), SkBits2Float(0x411432a9), SkBits2Float(0xc26d1f80));
3151 path.cubicTo(SkBits2Float(0x40c65728), SkBits2Float(0xc26f09c3), SkBits2Float(0x40467d64), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3152 path.close();
3153
3154 SkPath path1(path);
3155 path.reset();
3156 path.setFillType((SkPathFillType) 0);
3157 path.moveTo(SkBits2Float(0x41615164), SkBits2Float(0xc2a397de));
3158 path.cubicTo(SkBits2Float(0x41a78432), SkBits2Float(0xc2a13b6d), SkBits2Float(0x41dcf7f2), SkBits2Float(0xc29d27e8), SkBits2Float(0x4207e0f5), SkBits2Float(0xc29775db));
3159 path.lineTo(SkBits2Float(0x41c47380), SkBits2Float(0xc25afa96));
3160 path.cubicTo(SkBits2Float(0x419fbc7e), SkBits2Float(0xc263369d), SkBits2Float(0x41723143), SkBits2Float(0xc2691b52), SkBits2Float(0x4122e168), SkBits2Float(0xc26c8537));
3161 path.lineTo(SkBits2Float(0x41615164), SkBits2Float(0xc2a397de));
3162 path.close();
3163
3164 SkPath path2(path);
3165 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3166 }
3167 // op end success 1
3168
battleOp118(skiatest::Reporter * reporter,const char * filename)3169 static void battleOp118(skiatest::Reporter* reporter, const char* filename) {
3170 SkPath path;
3171 path.setFillType((SkPathFillType) 0);
3172 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3173 path.cubicTo(SkBits2Float(0x40a2e582), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4122b94f), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4));
3174 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464));
3175 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
3176 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3177 path.close();
3178
3179 SkPath path1(path);
3180 path.reset();
3181 path.setFillType((SkPathFillType) 0);
3182 path.moveTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4));
3183 path.cubicTo(SkBits2Float(0x417acd1a), SkBits2Float(0xc2a30415), SkBits2Float(0x41816508), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb));
3184 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8));
3185 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463));
3186 path.lineTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4));
3187 path.close();
3188
3189 SkPath path2(path);
3190 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3191 }
3192 // op end success 1
3193
battleOp119(skiatest::Reporter * reporter,const char * filename)3194 static void battleOp119(skiatest::Reporter* reporter, const char* filename) {
3195 SkPath path;
3196 path.setFillType((SkPathFillType) 1);
3197 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
3198 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3199 path.cubicTo(SkBits2Float(0x40a2e57f), SkBits2Float(0xc2a60000), SkBits2Float(0x4122b94c), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4));
3200 path.lineTo(SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4));
3201 path.cubicTo(SkBits2Float(0x417acd1d), SkBits2Float(0xc2a30415), SkBits2Float(0x41816509), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb));
3202 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8));
3203 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463));
3204 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464));
3205 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
3206 path.close();
3207
3208 SkPath path1(path);
3209 path.reset();
3210 path.setFillType((SkPathFillType) 0);
3211 path.moveTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc));
3212 path.cubicTo(SkBits2Float(0x41c61a92), SkBits2Float(0xc29f4c69), SkBits2Float(0x42023dd6), SkBits2Float(0xc299958f), SkBits2Float(0x421f3a98), SkBits2Float(0xc291a994));
3213 path.lineTo(SkBits2Float(0x41e635e1), SkBits2Float(0xc25298a5));
3214 path.cubicTo(SkBits2Float(0x41bc4d11), SkBits2Float(0xc25e0caa), SkBits2Float(0x418f3524), SkBits2Float(0xc2664fa2), SkBits2Float(0x4140d729), SkBits2Float(0xc26b1ba9));
3215 path.lineTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc));
3216 path.close();
3217
3218 SkPath path2(path);
3219 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3220 }
3221 // op end success 1
3222
battleOp120(skiatest::Reporter * reporter,const char * filename)3223 static void battleOp120(skiatest::Reporter* reporter, const char* filename) {
3224 SkPath path;
3225 path.setFillType((SkPathFillType) 0);
3226 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3227 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158cf), SkBits2Float(0xc2a1f965));
3228 path.lineTo(SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8));
3229 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x35bbfd46), SkBits2Float(0xc2700000));
3230 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3231 path.close();
3232
3233 SkPath path1(path);
3234 path.reset();
3235 path.setFillType((SkPathFillType) 0);
3236 path.moveTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965));
3237 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207));
3238 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a));
3239 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8));
3240 path.lineTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965));
3241 path.close();
3242
3243 SkPath path2(path);
3244 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3245 }
3246 // op end success 1
3247
battleOp121(skiatest::Reporter * reporter,const char * filename)3248 static void battleOp121(skiatest::Reporter* reporter, const char* filename) {
3249 SkPath path;
3250 path.setFillType((SkPathFillType) 1);
3251 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3252 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3253 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965));
3254 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207));
3255 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a));
3256 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8));
3257 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3258 path.close();
3259
3260 SkPath path1(path);
3261 path.reset();
3262 path.setFillType((SkPathFillType) 0);
3263 path.moveTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208));
3264 path.cubicTo(SkBits2Float(0x41eca53e), SkBits2Float(0xc29c5d1a), SkBits2Float(0x421ad1be), SkBits2Float(0xc2942e2b), SkBits2Float(0x423b8fe1), SkBits2Float(0xc288f8a3));
3265 path.lineTo(SkBits2Float(0x42079647), SkBits2Float(0xc24607dc));
3266 path.cubicTo(SkBits2Float(0x41dfd5cc), SkBits2Float(0xc2563c94), SkBits2Float(0x41ab11aa), SkBits2Float(0xc2621167), SkBits2Float(0x4166c24e), SkBits2Float(0xc268f69b));
3267 path.lineTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208));
3268 path.close();
3269
3270 SkPath path2(path);
3271 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3272 }
3273 // op end success 1
3274
battleOp122(skiatest::Reporter * reporter,const char * filename)3275 static void battleOp122(skiatest::Reporter* reporter, const char* filename) {
3276 SkPath path;
3277 path.setFillType((SkPathFillType) 0);
3278 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3279 path.cubicTo(SkBits2Float(0x410a1653), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4189aa2f), SkBits2Float(0xc2a34ed0), SkBits2Float(0x41cb63be), SkBits2Float(0xc29e054b));
3280 path.lineTo(SkBits2Float(0x41930758), SkBits2Float(0xc26476b2));
3281 path.cubicTo(SkBits2Float(0x41470896), SkBits2Float(0xc26c1b98), SkBits2Float(0x40c7a4f2), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000));
3282 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3283 path.close();
3284
3285 SkPath path1(path);
3286 path.reset();
3287 path.setFillType((SkPathFillType) 0);
3288 path.moveTo(SkBits2Float(0x41cb63c3), SkBits2Float(0xc29e054c));
3289 path.cubicTo(SkBits2Float(0x41d1f2f3), SkBits2Float(0xc29d7e37), SkBits2Float(0x41d879a0), SkBits2Float(0xc29cf09c), SkBits2Float(0x41def72d), SkBits2Float(0xc29c5c87));
3290 path.lineTo(SkBits2Float(0x41a12e10), SkBits2Float(0xc2621091));
3291 path.cubicTo(SkBits2Float(0x419c7cee), SkBits2Float(0xc262e6aa), SkBits2Float(0x4197c536), SkBits2Float(0xc263b366), SkBits2Float(0x41930757), SkBits2Float(0xc26476b3));
3292 path.lineTo(SkBits2Float(0x41cb63c3), SkBits2Float(0xc29e054c));
3293 path.close();
3294
3295 SkPath path2(path);
3296 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3297 }
3298 // op end success 1
3299
battleOp123(skiatest::Reporter * reporter,const char * filename)3300 static void battleOp123(skiatest::Reporter* reporter, const char* filename) {
3301 SkPath path;
3302 path.setFillType((SkPathFillType) 1);
3303 path.moveTo(SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000));
3304 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3305 path.cubicTo(SkBits2Float(0x410a1653), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4189aa2f), SkBits2Float(0xc2a34ed0), SkBits2Float(0x41cb63be), SkBits2Float(0xc29e054b));
3306 path.lineTo(SkBits2Float(0x41cb63c3), SkBits2Float(0xc29e054c));
3307 path.cubicTo(SkBits2Float(0x41d1f2f3), SkBits2Float(0xc29d7e37), SkBits2Float(0x41d879a0), SkBits2Float(0xc29cf09c), SkBits2Float(0x41def72d), SkBits2Float(0xc29c5c87));
3308 path.lineTo(SkBits2Float(0x41a12e10), SkBits2Float(0xc2621091));
3309 path.cubicTo(SkBits2Float(0x419c7cee), SkBits2Float(0xc262e6aa), SkBits2Float(0x4197c536), SkBits2Float(0xc263b366), SkBits2Float(0x41930757), SkBits2Float(0xc26476b3));
3310 path.lineTo(SkBits2Float(0x41930758), SkBits2Float(0xc26476b2));
3311 path.cubicTo(SkBits2Float(0x41470896), SkBits2Float(0xc26c1b98), SkBits2Float(0x40c7a4f2), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000));
3312 path.close();
3313
3314 SkPath path1(path);
3315 path.reset();
3316 path.setFillType((SkPathFillType) 0);
3317 path.moveTo(SkBits2Float(0x41def730), SkBits2Float(0xc29c5c87));
3318 path.cubicTo(SkBits2Float(0x422459f2), SkBits2Float(0xc292f017), SkBits2Float(0x42539427), SkBits2Float(0xc282f764), SkBits2Float(0x4278c050), SkBits2Float(0xc25be110));
3319 path.lineTo(SkBits2Float(0x4233d1f5), SkBits2Float(0xc21ef2e3));
3320 path.cubicTo(SkBits2Float(0x4218f2cf), SkBits2Float(0xc23d5956), SkBits2Float(0x41ed9dce), SkBits2Float(0xc25470b6), SkBits2Float(0x41a12e11), SkBits2Float(0xc2621092));
3321 path.lineTo(SkBits2Float(0x41def730), SkBits2Float(0xc29c5c87));
3322 path.close();
3323
3324 SkPath path2(path);
3325 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3326 }
3327 // op end success 1
3328
battleOp124(skiatest::Reporter * reporter,const char * filename)3329 static void battleOp124(skiatest::Reporter* reporter, const char* filename) {
3330 SkPath path;
3331 path.setFillType((SkPathFillType) 0);
3332 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3333 path.cubicTo(SkBits2Float(0x411fc00b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419f1845), SkBits2Float(0xc2a265a5), SkBits2Float(0x41e9da2b), SkBits2Float(0xc29b5d43));
3334 path.lineTo(SkBits2Float(0x41a90cc1), SkBits2Float(0xc2609f84));
3335 path.cubicTo(SkBits2Float(0x41660440), SkBits2Float(0xc26aca7c), SkBits2Float(0x40e6f6cd), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa8c), SkBits2Float(0xc2700000));
3336 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3337 path.close();
3338
3339 SkPath path1(path);
3340 path.reset();
3341 path.setFillType((SkPathFillType) 0);
3342 path.moveTo(SkBits2Float(0x41e9da2e), SkBits2Float(0xc29b5d44));
3343 path.cubicTo(SkBits2Float(0x41f14eda), SkBits2Float(0xc29aa9b5), SkBits2Float(0x41f8b671), SkBits2Float(0xc299ed94), SkBits2Float(0x42000805), SkBits2Float(0xc29928f7));
3344 path.lineTo(SkBits2Float(0x41b91b05), SkBits2Float(0xc25d6faa));
3345 path.cubicTo(SkBits2Float(0x41b3cad4), SkBits2Float(0xc25e8bec), SkBits2Float(0x41ae7086), SkBits2Float(0xc25f9beb), SkBits2Float(0x41a90cc3), SkBits2Float(0xc2609f85));
3346 path.lineTo(SkBits2Float(0x41e9da2e), SkBits2Float(0xc29b5d44));
3347 path.close();
3348
3349 SkPath path2(path);
3350 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3351 }
3352 // op end success 1
3353
battleOp125(skiatest::Reporter * reporter,const char * filename)3354 static void battleOp125(skiatest::Reporter* reporter, const char* filename) {
3355 SkPath path;
3356 path.setFillType((SkPathFillType) 1);
3357 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3358 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3359 path.cubicTo(SkBits2Float(0x411fc00b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419f1845), SkBits2Float(0xc2a265a5), SkBits2Float(0x41e9da2e), SkBits2Float(0xc29b5d44));
3360 path.cubicTo(SkBits2Float(0x41f14eda), SkBits2Float(0xc29aa9b5), SkBits2Float(0x41f8b671), SkBits2Float(0xc299ed94), SkBits2Float(0x42000805), SkBits2Float(0xc29928f7));
3361 path.lineTo(SkBits2Float(0x41b91b05), SkBits2Float(0xc25d6faa));
3362 path.cubicTo(SkBits2Float(0x41b3cad4), SkBits2Float(0xc25e8bec), SkBits2Float(0x41ae7086), SkBits2Float(0xc25f9beb), SkBits2Float(0x41a90cc1), SkBits2Float(0xc2609f84));
3363 path.cubicTo(SkBits2Float(0x41660440), SkBits2Float(0xc26aca7c), SkBits2Float(0x40e6f6cd), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3364 path.close();
3365
3366 SkPath path1(path);
3367 path.reset();
3368 path.setFillType((SkPathFillType) 0);
3369 path.moveTo(SkBits2Float(0x42000806), SkBits2Float(0xc29928f8));
3370 path.cubicTo(SkBits2Float(0x423c0231), SkBits2Float(0xc28ca034), SkBits2Float(0x426f4e95), SkBits2Float(0xc26f2095), SkBits2Float(0x4289c821), SkBits2Float(0xc2392c12));
3371 path.lineTo(SkBits2Float(0x424733db), SkBits2Float(0xc205dc02));
3372 path.cubicTo(SkBits2Float(0x422cfe35), SkBits2Float(0xc22cdcf5), SkBits2Float(0x4207e8ea), SkBits2Float(0xc24b507f), SkBits2Float(0x41b91b06), SkBits2Float(0xc25d6faa));
3373 path.lineTo(SkBits2Float(0x42000806), SkBits2Float(0xc29928f8));
3374 path.close();
3375
3376 SkPath path2(path);
3377 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3378 }
3379 // op end success 1
3380
battleOp126(skiatest::Reporter * reporter,const char * filename)3381 static void battleOp126(skiatest::Reporter* reporter, const char* filename) {
3382 SkPath path;
3383 path.setFillType((SkPathFillType) 0);
3384 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3385 path.cubicTo(SkBits2Float(0x41379cd4), SkBits2Float(0xc2a60000), SkBits2Float(0x41b69d77), SkBits2Float(0xc2a13d93), SkBits2Float(0x42055871), SkBits2Float(0xc29805ae));
3386 path.lineTo(SkBits2Float(0x41c0c9e6), SkBits2Float(0xc25bca86));
3387 path.cubicTo(SkBits2Float(0x418402cc), SkBits2Float(0xc2691e6b), SkBits2Float(0x4104bb66), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea5), SkBits2Float(0xc26fffff));
3388 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3389 path.close();
3390
3391 SkPath path1(path);
3392 path.reset();
3393 path.setFillType((SkPathFillType) 0);
3394 path.moveTo(SkBits2Float(0x42055872), SkBits2Float(0xc29805ae));
3395 path.cubicTo(SkBits2Float(0x420988d2), SkBits2Float(0xc2971a85), SkBits2Float(0x420daf5c), SkBits2Float(0xc296244f), SkBits2Float(0x4211cb64), SkBits2Float(0xc2952332));
3396 path.lineTo(SkBits2Float(0x41d2c988), SkBits2Float(0xc2579ed7));
3397 path.cubicTo(SkBits2Float(0x41ccd887), SkBits2Float(0xc2591291), SkBits2Float(0x41c6d852), SkBits2Float(0xc25a7689), SkBits2Float(0x41c0c9e6), SkBits2Float(0xc25bca86));
3398 path.lineTo(SkBits2Float(0x42055872), SkBits2Float(0xc29805ae));
3399 path.close();
3400
3401 SkPath path2(path);
3402 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3403 }
3404 // op end success 1
3405
battleOp127(skiatest::Reporter * reporter,const char * filename)3406 static void battleOp127(skiatest::Reporter* reporter, const char* filename) {
3407 SkPath path;
3408 path.setFillType((SkPathFillType) 1);
3409 path.moveTo(SkBits2Float(0x3673fea5), SkBits2Float(0xc26fffff));
3410 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3411 path.cubicTo(SkBits2Float(0x41379cd4), SkBits2Float(0xc2a60000), SkBits2Float(0x41b69d77), SkBits2Float(0xc2a13d93), SkBits2Float(0x42055872), SkBits2Float(0xc29805ae));
3412 path.cubicTo(SkBits2Float(0x420988d2), SkBits2Float(0xc2971a85), SkBits2Float(0x420daf5c), SkBits2Float(0xc296244f), SkBits2Float(0x4211cb64), SkBits2Float(0xc2952332));
3413 path.lineTo(SkBits2Float(0x41d2c988), SkBits2Float(0xc2579ed7));
3414 path.cubicTo(SkBits2Float(0x41ccd887), SkBits2Float(0xc2591291), SkBits2Float(0x41c6d852), SkBits2Float(0xc25a7689), SkBits2Float(0x41c0c9e6), SkBits2Float(0xc25bca86));
3415 path.cubicTo(SkBits2Float(0x418402cc), SkBits2Float(0xc2691e6b), SkBits2Float(0x4104bb66), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea5), SkBits2Float(0xc26fffff));
3416 path.close();
3417
3418 SkPath path1(path);
3419 path.reset();
3420 path.setFillType((SkPathFillType) 0);
3421 path.moveTo(SkBits2Float(0x4211cb65), SkBits2Float(0xc2952332));
3422 path.cubicTo(SkBits2Float(0x42550406), SkBits2Float(0xc284b578), SkBits2Float(0x42859569), SkBits2Float(0xc252d13a), SkBits2Float(0x4295bbf4), SkBits2Float(0xc20f53bf));
3423 path.lineTo(SkBits2Float(0x42587bb2), SkBits2Float(0xc1cf3850));
3424 path.cubicTo(SkBits2Float(0x4241220a), SkBits2Float(0xc21865e8), SkBits2Float(0x4219fcbd), SkBits2Float(0xc23fde48), SkBits2Float(0x41d2c988), SkBits2Float(0xc2579ed8));
3425 path.lineTo(SkBits2Float(0x4211cb65), SkBits2Float(0xc2952332));
3426 path.close();
3427
3428 SkPath path2(path);
3429 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3430 }
3431 // op end success 1
3432
battleOp128(skiatest::Reporter * reporter,const char * filename)3433 static void battleOp128(skiatest::Reporter* reporter, const char* filename) {
3434 SkPath path;
3435 path.setFillType((SkPathFillType) 0);
3436 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3437 path.cubicTo(SkBits2Float(0x4151cd59), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41d04f3f), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e058), SkBits2Float(0xc293de54));
3438 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926));
3439 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
3440 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3441 path.close();
3442
3443 SkPath path1(path);
3444 path.reset();
3445 path.setFillType((SkPathFillType) 0);
3446 path.moveTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54));
3447 path.cubicTo(SkBits2Float(0x421b86ea), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e));
3448 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790));
3449 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927));
3450 path.lineTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54));
3451 path.close();
3452
3453 SkPath path2(path);
3454 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3455 }
3456 // op end success 1
3457
battleOp129(skiatest::Reporter * reporter,const char * filename)3458 static void battleOp129(skiatest::Reporter* reporter, const char* filename) {
3459 SkPath path;
3460 path.setFillType((SkPathFillType) 1);
3461 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
3462 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3463 path.cubicTo(SkBits2Float(0x4151cd58), SkBits2Float(0xc2a60000), SkBits2Float(0x41d04f3d), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e057), SkBits2Float(0xc293de54));
3464 path.lineTo(SkBits2Float(0x4216e058), SkBits2Float(0xc293de54));
3465 path.cubicTo(SkBits2Float(0x421b86eb), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e));
3466 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790));
3467 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927));
3468 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926));
3469 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
3470 path.close();
3471
3472 SkPath path1(path);
3473 path.reset();
3474 path.setFillType((SkPathFillType) 0);
3475 path.moveTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f));
3476 path.cubicTo(SkBits2Float(0x426f06c3), SkBits2Float(0xc275d105), SkBits2Float(0x42930d85), SkBits2Float(0xc2303df6), SkBits2Float(0x429f3103), SkBits2Float(0xc1bc373f));
3477 path.lineTo(SkBits2Float(0x42662806), SkBits2Float(0xc1880f44));
3478 path.cubicTo(SkBits2Float(0x42549b44), SkBits2Float(0xc1fececc), SkBits2Float(0x422cca4c), SkBits2Float(0xc231b2de), SkBits2Float(0x41ee0e18), SkBits2Float(0xc2506792));
3479 path.lineTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f));
3480 path.close();
3481
3482 SkPath path2(path);
3483 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3484 }
3485 // op end success 1
3486
battleOp130(skiatest::Reporter * reporter,const char * filename)3487 static void battleOp130(skiatest::Reporter* reporter, const char* filename) {
3488 SkPath path;
3489 path.setFillType((SkPathFillType) 0);
3490 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3491 path.cubicTo(SkBits2Float(0x417054a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ee1405), SkBits2Float(0xc29dd904), SkBits2Float(0x422a9595), SkBits2Float(0xc28e6989));
3492 path.lineTo(SkBits2Float(0x41f6a0c0), SkBits2Float(0xc24de5b0));
3493 path.cubicTo(SkBits2Float(0x41ac1ad0), SkBits2Float(0xc26436ad), SkBits2Float(0x412dbba0), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
3494 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3495 path.close();
3496
3497 SkPath path1(path);
3498 path.reset();
3499 path.setFillType((SkPathFillType) 0);
3500 path.moveTo(SkBits2Float(0x422a9596), SkBits2Float(0xc28e6989));
3501 path.cubicTo(SkBits2Float(0x422fb535), SkBits2Float(0xc28ce0c4), SkBits2Float(0x4234bf65), SkBits2Float(0xc28b465e), SkBits2Float(0x4239b2bc), SkBits2Float(0xc2899acc));
3502 path.lineTo(SkBits2Float(0x42063d5a), SkBits2Float(0xc246f24e));
3503 path.cubicTo(SkBits2Float(0x4202a934), SkBits2Float(0xc2495c7c), SkBits2Float(0x41fe0912), SkBits2Float(0xc24badd5), SkBits2Float(0x41f6a0c0), SkBits2Float(0xc24de5b1));
3504 path.lineTo(SkBits2Float(0x422a9596), SkBits2Float(0xc28e6989));
3505 path.close();
3506
3507 SkPath path2(path);
3508 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3509 }
3510 // op end success 1
3511
battleOp131(skiatest::Reporter * reporter,const char * filename)3512 static void battleOp131(skiatest::Reporter* reporter, const char* filename) {
3513 SkPath path;
3514 path.setFillType((SkPathFillType) 1);
3515 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
3516 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3517 path.cubicTo(SkBits2Float(0x417054a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ee1405), SkBits2Float(0xc29dd904), SkBits2Float(0x422a9596), SkBits2Float(0xc28e6989));
3518 path.cubicTo(SkBits2Float(0x422fb535), SkBits2Float(0xc28ce0c4), SkBits2Float(0x4234bf65), SkBits2Float(0xc28b465e), SkBits2Float(0x4239b2bc), SkBits2Float(0xc2899acc));
3519 path.lineTo(SkBits2Float(0x42063d5a), SkBits2Float(0xc246f24e));
3520 path.cubicTo(SkBits2Float(0x4202a934), SkBits2Float(0xc2495c7c), SkBits2Float(0x41fe0912), SkBits2Float(0xc24badd5), SkBits2Float(0x41f6a0c0), SkBits2Float(0xc24de5b0));
3521 path.cubicTo(SkBits2Float(0x41ac1ad0), SkBits2Float(0xc26436ad), SkBits2Float(0x412dbba0), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
3522 path.close();
3523
3524 SkPath path1(path);
3525 path.reset();
3526 path.setFillType((SkPathFillType) 0);
3527 path.moveTo(SkBits2Float(0x4239b2bd), SkBits2Float(0xc2899acc));
3528 path.cubicTo(SkBits2Float(0x42859c2b), SkBits2Float(0xc25c33ca), SkBits2Float(0x42a01474), SkBits2Float(0xc203e23a), SkBits2Float(0x42a51fce), SkBits2Float(0xc1083bae));
3529 path.lineTo(SkBits2Float(0x426ebbdb), SkBits2Float(0xc0c4f6ab));
3530 path.cubicTo(SkBits2Float(0x426770d9), SkBits2Float(0xc1beacda), SkBits2Float(0x42412bce), SkBits2Float(0xc21f2eb0), SkBits2Float(0x42063d5a), SkBits2Float(0xc246f24e));
3531 path.lineTo(SkBits2Float(0x4239b2bd), SkBits2Float(0xc2899acc));
3532 path.close();
3533
3534 SkPath path2(path);
3535 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3536 }
3537 // op end success 1
3538
battleOp132(skiatest::Reporter * reporter,const char * filename)3539 static void battleOp132(skiatest::Reporter* reporter, const char* filename) {
3540 SkPath path;
3541 path.setFillType((SkPathFillType) 0);
3542 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3543 path.cubicTo(SkBits2Float(0x4187e175), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42063ec3), SkBits2Float(0xc29b93fb), SkBits2Float(0x423df6fd), SkBits2Float(0xc2882410));
3544 path.lineTo(SkBits2Float(0x420952ef), SkBits2Float(0xc244d488));
3545 path.cubicTo(SkBits2Float(0x41c216e4), SkBits2Float(0xc260eea0), SkBits2Float(0x4144743c), SkBits2Float(0xc26fffff), SkBits2Float(0x357ffa94), SkBits2Float(0xc26fffff));
3546 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3547 path.close();
3548
3549 SkPath path1(path);
3550 path.reset();
3551 path.setFillType((SkPathFillType) 0);
3552 path.moveTo(SkBits2Float(0x423df6fe), SkBits2Float(0xc2882411));
3553 path.cubicTo(SkBits2Float(0x42437e7a), SkBits2Float(0xc286364a), SkBits2Float(0x4248e78f), SkBits2Float(0xc2843312), SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20));
3554 path.lineTo(SkBits2Float(0x42150d53), SkBits2Float(0xc23c1ae0));
3555 path.cubicTo(SkBits2Float(0x42113b72), SkBits2Float(0xc23f21be), SkBits2Float(0x420d522e), SkBits2Float(0xc2420aa4), SkBits2Float(0x420952ef), SkBits2Float(0xc244d48a));
3556 path.lineTo(SkBits2Float(0x423df6fe), SkBits2Float(0xc2882411));
3557 path.close();
3558
3559 SkPath path2(path);
3560 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3561 }
3562 // op end success 1
3563
battleOp133(skiatest::Reporter * reporter,const char * filename)3564 static void battleOp133(skiatest::Reporter* reporter, const char* filename) {
3565 SkPath path;
3566 path.setFillType((SkPathFillType) 1);
3567 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
3568 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3569 path.cubicTo(SkBits2Float(0x4187e175), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42063ec3), SkBits2Float(0xc29b93fb), SkBits2Float(0x423df6fe), SkBits2Float(0xc2882411));
3570 path.cubicTo(SkBits2Float(0x42437e7a), SkBits2Float(0xc286364a), SkBits2Float(0x4248e78f), SkBits2Float(0xc2843312), SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20));
3571 path.lineTo(SkBits2Float(0x42150d53), SkBits2Float(0xc23c1ae0));
3572 path.cubicTo(SkBits2Float(0x42113b72), SkBits2Float(0xc23f21be), SkBits2Float(0x420d522e), SkBits2Float(0xc2420aa4), SkBits2Float(0x420952ef), SkBits2Float(0xc244d48a));
3573 path.lineTo(SkBits2Float(0x420952ef), SkBits2Float(0xc244d488));
3574 path.cubicTo(SkBits2Float(0x41c216e4), SkBits2Float(0xc260eea0), SkBits2Float(0x4144743c), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
3575 path.close();
3576
3577 SkPath path1(path);
3578 path.reset();
3579 path.setFillType((SkPathFillType) 0);
3580 path.moveTo(SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20));
3581 path.cubicTo(SkBits2Float(0x4292cbf1), SkBits2Float(0xc23ef41d), SkBits2Float(0x42aa31a6), SkBits2Float(0xc1a4e14c), SkBits2Float(0x42a56158), SkBits2Float(0x40e54b3a));
3582 path.lineTo(SkBits2Float(0x426f1a9e), SkBits2Float(0x40a5c12f));
3583 path.cubicTo(SkBits2Float(0x42761044), SkBits2Float(0xc16e617c), SkBits2Float(0x42543c73), SkBits2Float(0xc20a09ea), SkBits2Float(0x42150d54), SkBits2Float(0xc23c1ae1));
3584 path.lineTo(SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20));
3585 path.close();
3586
3587 SkPath path2(path);
3588 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3589 }
3590 // op end success 1
3591
battleOp134(skiatest::Reporter * reporter,const char * filename)3592 static void battleOp134(skiatest::Reporter* reporter, const char* filename) {
3593 SkPath path;
3594 path.setFillType((SkPathFillType) 0);
3595 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3596 path.cubicTo(SkBits2Float(0x419c5b1f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4219d929), SkBits2Float(0xc29834b3), SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c));
3597 path.lineTo(SkBits2Float(0x421a77f2), SkBits2Float(0xc237aede));
3598 path.cubicTo(SkBits2Float(0x41de6e66), SkBits2Float(0xc25c0e82), SkBits2Float(0x41620e8a), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
3599 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3600 path.close();
3601
3602 SkPath path1(path);
3603 path.reset();
3604 path.setFillType((SkPathFillType) 0);
3605 path.moveTo(SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c));
3606 path.cubicTo(SkBits2Float(0x425b9ab5), SkBits2Float(0xc2791d33), SkBits2Float(0x426159ea), SkBits2Float(0xc273ed7b), SkBits2Float(0x4266e960), SkBits2Float(0xc26e8b92));
3607 path.lineTo(SkBits2Float(0x4226ec90), SkBits2Float(0xc22c713c));
3608 path.cubicTo(SkBits2Float(0x4222e78d), SkBits2Float(0xc2305550), SkBits2Float(0x421ec008), SkBits2Float(0xc234151d), SkBits2Float(0x421a77f3), SkBits2Float(0xc237aedd));
3609 path.lineTo(SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c));
3610 path.close();
3611
3612 SkPath path2(path);
3613 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3614 }
3615 // op end success 1
3616
battleOp135(skiatest::Reporter * reporter,const char * filename)3617 static void battleOp135(skiatest::Reporter* reporter, const char* filename) {
3618 SkPath path;
3619 path.setFillType((SkPathFillType) 1);
3620 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
3621 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3622 path.cubicTo(SkBits2Float(0x419c5b1f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4219d929), SkBits2Float(0xc29834b3), SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c));
3623 path.cubicTo(SkBits2Float(0x425b9ab5), SkBits2Float(0xc2791d33), SkBits2Float(0x426159ea), SkBits2Float(0xc273ed7b), SkBits2Float(0x4266e960), SkBits2Float(0xc26e8b92));
3624 path.lineTo(SkBits2Float(0x4226ec90), SkBits2Float(0xc22c713c));
3625 path.cubicTo(SkBits2Float(0x4222e78d), SkBits2Float(0xc2305550), SkBits2Float(0x421ec008), SkBits2Float(0xc234151d), SkBits2Float(0x421a77f2), SkBits2Float(0xc237aede));
3626 path.cubicTo(SkBits2Float(0x41de6e66), SkBits2Float(0xc25c0e82), SkBits2Float(0x41620e8a), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
3627 path.close();
3628
3629 SkPath path1(path);
3630 path.reset();
3631 path.setFillType((SkPathFillType) 0);
3632 path.moveTo(SkBits2Float(0x4266e961), SkBits2Float(0xc26e8b93));
3633 path.cubicTo(SkBits2Float(0x42a1bfce), SkBits2Float(0xc214ebcf), SkBits2Float(0x42b1ee5a), SkBits2Float(0xc05d1412), SkBits2Float(0x429cf75a), SkBits2Float(0x41d80f2c));
3634 path.lineTo(SkBits2Float(0x4262f06b), SkBits2Float(0x419c2ffb));
3635 path.cubicTo(SkBits2Float(0x42809ff9), SkBits2Float(0xc01fd0e5), SkBits2Float(0x4269dab8), SkBits2Float(0xc1d74ec6), SkBits2Float(0x4226ec91), SkBits2Float(0xc22c713d));
3636 path.lineTo(SkBits2Float(0x4266e961), SkBits2Float(0xc26e8b93));
3637 path.close();
3638
3639 SkPath path2(path);
3640 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3641 }
3642 // op end success 1
3643
battleOp136(skiatest::Reporter * reporter,const char * filename)3644 static void battleOp136(skiatest::Reporter* reporter, const char* filename) {
3645 SkPath path;
3646 path.setFillType((SkPathFillType) 0);
3647 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3648 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b67), SkBits2Float(0xc26ce46c));
3649 path.lineTo(SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58));
3650 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
3651 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3652 path.close();
3653
3654 SkPath path1(path);
3655 path.reset();
3656 path.setFillType((SkPathFillType) 0);
3657 path.moveTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d));
3658 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2));
3659 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e));
3660 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282652), SkBits2Float(0xc22b3f58));
3661 path.lineTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d));
3662 path.close();
3663
3664 SkPath path2(path);
3665 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3666 }
3667 // op end success 1
3668
battleOp137(skiatest::Reporter * reporter,const char * filename)3669 static void battleOp137(skiatest::Reporter* reporter, const char* filename) {
3670 SkPath path;
3671 path.setFillType((SkPathFillType) 1);
3672 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3673 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3674 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d));
3675 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2));
3676 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e));
3677 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58));
3678 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3679 path.close();
3680
3681 SkPath path1(path);
3682 path.reset();
3683 path.setFillType((SkPathFillType) 0);
3684 path.moveTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2));
3685 path.cubicTo(SkBits2Float(0x42ac7185), SkBits2Float(0xc1db2f83), SkBits2Float(0x42b35ed0), SkBits2Float(0x413e447a), SkBits2Float(0x428e4a3d), SkBits2Float(0x422afde8));
3686 path.lineTo(SkBits2Float(0x424db871), SkBits2Float(0x41f73799));
3687 path.cubicTo(SkBits2Float(0x4281aa54), SkBits2Float(0x41098afa), SkBits2Float(0x427950da), SkBits2Float(0xc19e728d), SkBits2Float(0x4234ec66), SkBits2Float(0xc21db120));
3688 path.lineTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2));
3689 path.close();
3690
3691 SkPath path2(path);
3692 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3693 }
3694 // op end success 1
3695
battleOp138(skiatest::Reporter * reporter,const char * filename)3696 static void battleOp138(skiatest::Reporter* reporter, const char* filename) {
3697 SkPath path;
3698 path.setFillType((SkPathFillType) 0);
3699 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3700 path.cubicTo(SkBits2Float(0x41c2602d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423d7ece), SkBits2Float(0xc290b51a), SkBits2Float(0x427c92bc), SkBits2Float(0xc2577a5f));
3701 path.lineTo(SkBits2Float(0x42369543), SkBits2Float(0xc21bc469));
3702 path.cubicTo(SkBits2Float(0x4208fc10), SkBits2Float(0xc2513731), SkBits2Float(0x418c8338), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
3703 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3704 path.close();
3705
3706 SkPath path1(path);
3707 path.reset();
3708 path.setFillType((SkPathFillType) 0);
3709 path.moveTo(SkBits2Float(0x427c92be), SkBits2Float(0xc2577a5f));
3710 path.cubicTo(SkBits2Float(0x42816448), SkBits2Float(0xc25032db), SkBits2Float(0x42845689), SkBits2Float(0xc248a77c), SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa));
3711 path.lineTo(SkBits2Float(0x424359af), SkBits2Float(0xc20b6bce));
3712 path.cubicTo(SkBits2Float(0x423f5505), SkBits2Float(0xc2110d1f), SkBits2Float(0x423b1287), SkBits2Float(0xc216814b), SkBits2Float(0x42369543), SkBits2Float(0xc21bc46a));
3713 path.lineTo(SkBits2Float(0x427c92be), SkBits2Float(0xc2577a5f));
3714 path.close();
3715
3716 SkPath path2(path);
3717 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3718 }
3719 // op end success 1
3720
battleOp139(skiatest::Reporter * reporter,const char * filename)3721 static void battleOp139(skiatest::Reporter* reporter, const char* filename) {
3722 SkPath path;
3723 path.setFillType((SkPathFillType) 1);
3724 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3725 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3726 path.cubicTo(SkBits2Float(0x41c2602d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423d7ece), SkBits2Float(0xc290b51a), SkBits2Float(0x427c92bc), SkBits2Float(0xc2577a5f));
3727 path.lineTo(SkBits2Float(0x427c92be), SkBits2Float(0xc2577a5f));
3728 path.cubicTo(SkBits2Float(0x42816448), SkBits2Float(0xc25032db), SkBits2Float(0x42845689), SkBits2Float(0xc248a77c), SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa));
3729 path.lineTo(SkBits2Float(0x424359af), SkBits2Float(0xc20b6bce));
3730 path.cubicTo(SkBits2Float(0x423f5505), SkBits2Float(0xc2110d1f), SkBits2Float(0x423b1287), SkBits2Float(0xc216814a), SkBits2Float(0x42369543), SkBits2Float(0xc21bc469));
3731 path.lineTo(SkBits2Float(0x42369543), SkBits2Float(0xc21bc46a));
3732 path.cubicTo(SkBits2Float(0x4208fc10), SkBits2Float(0xc2513732), SkBits2Float(0x418c8337), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3733 path.close();
3734
3735 SkPath path1(path);
3736 path.reset();
3737 path.setFillType((SkPathFillType) 0);
3738 path.moveTo(SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa));
3739 path.cubicTo(SkBits2Float(0x42b615a2), SkBits2Float(0xc174ff4e), SkBits2Float(0x42aecf41), SkBits2Float(0x41edcc49), SkBits2Float(0x426bc7a7), SkBits2Float(0x4269bc09));
3740 path.lineTo(SkBits2Float(0x422a717e), SkBits2Float(0x4228f6f7));
3741 path.cubicTo(SkBits2Float(0x427cbca0), SkBits2Float(0x41abe6f4), SkBits2Float(0x4283a09b), SkBits2Float(0xc1311b44), SkBits2Float(0x424359af), SkBits2Float(0xc20b6bcd));
3742 path.lineTo(SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa));
3743 path.close();
3744
3745 SkPath path2(path);
3746 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3747 }
3748 // op end success 1
3749
battleOp140(skiatest::Reporter * reporter,const char * filename)3750 static void battleOp140(skiatest::Reporter* reporter, const char* filename) {
3751 SkPath path;
3752 path.setFillType((SkPathFillType) 0);
3753 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3754 path.cubicTo(SkBits2Float(0x41d9e52a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4252f644), SkBits2Float(0xc28b460f), SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b));
3755 path.lineTo(SkBits2Float(0x42455485), SkBits2Float(0xc2089ac5));
3756 path.cubicTo(SkBits2Float(0x421880ae), SkBits2Float(0xc2495c0a), SkBits2Float(0x419d83bb), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
3757 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3758 path.close();
3759
3760 SkPath path1(path);
3761 path.reset();
3762 path.setFillType((SkPathFillType) 0);
3763 path.moveTo(SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b));
3764 path.cubicTo(SkBits2Float(0x428b8706), SkBits2Float(0xc2342f4a), SkBits2Float(0x428e5ab7), SkBits2Float(0xc22b1c84), SkBits2Float(0x4290f525), SkBits2Float(0xc221c800));
3765 path.lineTo(SkBits2Float(0x425193c7), SkBits2Float(0xc1e9e68d));
3766 path.cubicTo(SkBits2Float(0x424dd044), SkBits2Float(0xc1f763d3), SkBits2Float(0x4249b9f6), SkBits2Float(0xc2024108), SkBits2Float(0x42455485), SkBits2Float(0xc2089ac6));
3767 path.lineTo(SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b));
3768 path.close();
3769
3770 SkPath path2(path);
3771 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3772 }
3773 // op end success 1
3774
battleOp141(skiatest::Reporter * reporter,const char * filename)3775 static void battleOp141(skiatest::Reporter* reporter, const char* filename) {
3776 SkPath path;
3777 path.setFillType((SkPathFillType) 1);
3778 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3779 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3780 path.cubicTo(SkBits2Float(0x41d9e52a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4252f644), SkBits2Float(0xc28b460f), SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b));
3781 path.cubicTo(SkBits2Float(0x428b8706), SkBits2Float(0xc2342f4a), SkBits2Float(0x428e5ab7), SkBits2Float(0xc22b1c84), SkBits2Float(0x4290f525), SkBits2Float(0xc221c800));
3782 path.lineTo(SkBits2Float(0x425193c7), SkBits2Float(0xc1e9e68d));
3783 path.cubicTo(SkBits2Float(0x424dd044), SkBits2Float(0xc1f763d3), SkBits2Float(0x4249b9f6), SkBits2Float(0xc2024107), SkBits2Float(0x42455485), SkBits2Float(0xc2089ac5));
3784 path.lineTo(SkBits2Float(0x42455485), SkBits2Float(0xc2089ac6));
3785 path.cubicTo(SkBits2Float(0x421880ae), SkBits2Float(0xc2495c0b), SkBits2Float(0x419d83ba), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3786 path.close();
3787
3788 SkPath path1(path);
3789 path.reset();
3790 path.setFillType((SkPathFillType) 0);
3791 path.moveTo(SkBits2Float(0x4290f526), SkBits2Float(0xc221c800));
3792 path.cubicTo(SkBits2Float(0x42bd6cdd), SkBits2Float(0xbf1a1474), SkBits2Float(0x42a13baa), SkBits2Float(0x4246de93), SkBits2Float(0x4223add7), SkBits2Float(0x42906c8a));
3793 path.lineTo(SkBits2Float(0x41eca4f8), SkBits2Float(0x4250ce48));
3794 path.cubicTo(SkBits2Float(0x42691bac), SkBits2Float(0x420fc2d7), SkBits2Float(0x4288ef16), SkBits2Float(0xbedec420), SkBits2Float(0x425193c9), SkBits2Float(0xc1e9e690));
3795 path.lineTo(SkBits2Float(0x4290f526), SkBits2Float(0xc221c800));
3796 path.close();
3797
3798 SkPath path2(path);
3799 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3800 }
3801 // op end success 1
3802
battleOp142(skiatest::Reporter * reporter,const char * filename)3803 static void battleOp142(skiatest::Reporter* reporter, const char* filename) {
3804 SkPath path;
3805 path.setFillType((SkPathFillType) 0);
3806 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3807 path.cubicTo(SkBits2Float(0x41f6a97d), SkBits2Float(0xc2a60000), SkBits2Float(0x426c7f9e), SkBits2Float(0xc283d12f), SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5));
3808 path.lineTo(SkBits2Float(0x42547147), SkBits2Float(0xc1df5274));
3809 path.cubicTo(SkBits2Float(0x422af677), SkBits2Float(0xc23e9438), SkBits2Float(0x41b24f58), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
3810 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3811 path.close();
3812
3813 SkPath path1(path);
3814 path.reset();
3815 path.setFillType((SkPathFillType) 0);
3816 path.moveTo(SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5));
3817 path.cubicTo(SkBits2Float(0x4295bcf6), SkBits2Float(0xc20fd099), SkBits2Float(0x42983ed1), SkBits2Float(0xc204de6d), SkBits2Float(0x429a7333), SkBits2Float(0xc1f3598c));
3818 path.lineTo(SkBits2Float(0x425f4d1c), SkBits2Float(0xc1afea60));
3819 path.cubicTo(SkBits2Float(0x425c1d22), SkBits2Float(0xc1c0197b), SkBits2Float(0x42587d28), SkBits2Float(0xc1cfecd2), SkBits2Float(0x42547148), SkBits2Float(0xc1df5275));
3820 path.lineTo(SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5));
3821 path.close();
3822
3823 SkPath path2(path);
3824 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3825 }
3826 // op end success 1
3827
battleOp143(skiatest::Reporter * reporter,const char * filename)3828 static void battleOp143(skiatest::Reporter* reporter, const char* filename) {
3829 SkPath path;
3830 path.setFillType((SkPathFillType) 1);
3831 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3832 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3833 path.cubicTo(SkBits2Float(0x41f6a97d), SkBits2Float(0xc2a60000), SkBits2Float(0x426c7f9e), SkBits2Float(0xc283d12f), SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5));
3834 path.cubicTo(SkBits2Float(0x4295bcf6), SkBits2Float(0xc20fd099), SkBits2Float(0x42983ed1), SkBits2Float(0xc204de6d), SkBits2Float(0x429a7333), SkBits2Float(0xc1f3598c));
3835 path.lineTo(SkBits2Float(0x425f4d1c), SkBits2Float(0xc1afea60));
3836 path.cubicTo(SkBits2Float(0x425c1d22), SkBits2Float(0xc1c0197b), SkBits2Float(0x42587d28), SkBits2Float(0xc1cfecd2), SkBits2Float(0x42547147), SkBits2Float(0xc1df5274));
3837 path.cubicTo(SkBits2Float(0x422af677), SkBits2Float(0xc23e9438), SkBits2Float(0x41b24f58), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3838 path.close();
3839
3840 SkPath path1(path);
3841 path.reset();
3842 path.setFillType((SkPathFillType) 0);
3843 path.moveTo(SkBits2Float(0x429a7334), SkBits2Float(0xc1f3598d));
3844 path.cubicTo(SkBits2Float(0x42ac9a56), SkBits2Float(0xc0ec08d5), SkBits2Float(0x42a93a4b), SkBits2Float(0x4194209c), SkBits2Float(0x42913f11), SkBits2Float(0x4220bdeb));
3845 path.cubicTo(SkBits2Float(0x427287b0), SkBits2Float(0x42776b87), SkBits2Float(0x421e5dc6), SkBits2Float(0x429a1372), SkBits2Float(0x4173f4a4), SkBits2Float(0x42a32ccd));
3846 path.lineTo(SkBits2Float(0x41305a7f), SkBits2Float(0x426bea6b));
3847 path.cubicTo(SkBits2Float(0x41e4f69e), SkBits2Float(0x425ec2af), SkBits2Float(0x422f52ad), SkBits2Float(0x4232db9e), SkBits2Float(0x4251feaa), SkBits2Float(0x41e865df));
3848 path.cubicTo(SkBits2Float(0x4274aaa7), SkBits2Float(0x41562902), SkBits2Float(0x42798bdd), SkBits2Float(0xc0aaa09a), SkBits2Float(0x425f4d1d), SkBits2Float(0xc1afea60));
3849 path.lineTo(SkBits2Float(0x429a7334), SkBits2Float(0xc1f3598d));
3850 path.close();
3851
3852 SkPath path2(path);
3853 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3854 }
3855 // op end success 1
3856
battleOp144(skiatest::Reporter * reporter,const char * filename)3857 static void battleOp144(skiatest::Reporter* reporter, const char* filename) {
3858 SkPath path;
3859 path.setFillType((SkPathFillType) 0);
3860 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3861 path.cubicTo(SkBits2Float(0x42079c39), SkBits2Float(0xc2a60000), SkBits2Float(0x4280cb64), SkBits2Float(0xc279860f), SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758df));
3862 path.lineTo(SkBits2Float(0x425eba08), SkBits2Float(0xc1b2ce1f));
3863 path.cubicTo(SkBits2Float(0x423a357b), SkBits2Float(0xc23460ea), SkBits2Float(0x41c41023), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
3864 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3865 path.close();
3866
3867 SkPath path1(path);
3868 path.reset();
3869 path.setFillType((SkPathFillType) 0);
3870 path.moveTo(SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758de));
3871 path.cubicTo(SkBits2Float(0x429c811b), SkBits2Float(0xc1deea6e), SkBits2Float(0x429e9731), SkBits2Float(0xc1c5ec3a), SkBits2Float(0x42a04ce7), SkBits2Float(0xc1ac8024));
3872 path.lineTo(SkBits2Float(0x4267c277), SkBits2Float(0xc17965fc));
3873 path.cubicTo(SkBits2Float(0x426549a1), SkBits2Float(0xc18f13a3), SkBits2Float(0x42624575), SkBits2Float(0xc1a124d8), SkBits2Float(0x425eba09), SkBits2Float(0xc1b2ce1e));
3874 path.lineTo(SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758de));
3875 path.close();
3876
3877 SkPath path2(path);
3878 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3879 }
3880 // op end success 1
3881
battleOp145(skiatest::Reporter * reporter,const char * filename)3882 static void battleOp145(skiatest::Reporter* reporter, const char* filename) {
3883 SkPath path;
3884 path.setFillType((SkPathFillType) 1);
3885 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3886 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3887 path.cubicTo(SkBits2Float(0x42079c39), SkBits2Float(0xc2a60000), SkBits2Float(0x4280cb64), SkBits2Float(0xc279860f), SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758df));
3888 path.lineTo(SkBits2Float(0x42a04ce7), SkBits2Float(0xc1ac8024));
3889 path.lineTo(SkBits2Float(0x4267c277), SkBits2Float(0xc17965fc));
3890 path.cubicTo(SkBits2Float(0x426549a1), SkBits2Float(0xc18f13a3), SkBits2Float(0x42624575), SkBits2Float(0xc1a124d8), SkBits2Float(0x425eba09), SkBits2Float(0xc1b2ce1e));
3891 path.lineTo(SkBits2Float(0x425eba08), SkBits2Float(0xc1b2ce1f));
3892 path.cubicTo(SkBits2Float(0x423a357b), SkBits2Float(0xc23460ea), SkBits2Float(0x41c41023), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3893 path.close();
3894
3895 SkPath path1(path);
3896 path.reset();
3897 path.setFillType((SkPathFillType) 0);
3898 path.moveTo(SkBits2Float(0x42a04ce8), SkBits2Float(0xc1ac8024));
3899 path.cubicTo(SkBits2Float(0x42ae6ca1), SkBits2Float(0x4095ff41), SkBits2Float(0x42a1f1fa), SkBits2Float(0x4202ed54), SkBits2Float(0x427dc9de), SkBits2Float(0x42560b98));
3900 path.cubicTo(SkBits2Float(0x4237afc7), SkBits2Float(0x429494ee), SkBits2Float(0x419aa752), SkBits2Float(0x42aa57e8), SkBits2Float(0xc0f777b3), SkBits2Float(0x42a54724));
3901 path.lineTo(SkBits2Float(0xc0b2e472), SkBits2Float(0x426ef4bb));
3902 path.cubicTo(SkBits2Float(0x415f9870), SkBits2Float(0x42764794), SkBits2Float(0x4204c916), SkBits2Float(0x4256d126), SkBits2Float(0x4237762a), SkBits2Float(0x421abb46));
3903 path.cubicTo(SkBits2Float(0x426a233f), SkBits2Float(0x41bd4acb), SkBits2Float(0x427c2e04), SkBits2Float(0x4058dcfe), SkBits2Float(0x4267c279), SkBits2Float(0xc17965fc));
3904 path.lineTo(SkBits2Float(0x42a04ce8), SkBits2Float(0xc1ac8024));
3905 path.close();
3906
3907 SkPath path2(path);
3908 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3909 }
3910 // op end success 1
3911
battleOp146(skiatest::Reporter * reporter,const char * filename)3912 static void battleOp146(skiatest::Reporter* reporter, const char* filename) {
3913 SkPath path;
3914 path.setFillType((SkPathFillType) 0);
3915 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3916 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a5ffff), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d7), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986));
3917 path.lineTo(SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f));
3918 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
3919 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3920 path.close();
3921
3922 SkPath path1(path);
3923 path.reset();
3924 path.setFillType((SkPathFillType) 0);
3925 path.moveTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988));
3926 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b837), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594e), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba));
3927 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0));
3928 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f));
3929 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988));
3930 path.close();
3931
3932 SkPath path2(path);
3933 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3934 }
3935 // op end success 1
3936
battleOp147(skiatest::Reporter * reporter,const char * filename)3937 static void battleOp147(skiatest::Reporter* reporter, const char* filename) {
3938 SkPath path;
3939 path.setFillType((SkPathFillType) 1);
3940 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3941 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3942 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a60000), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d8), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988));
3943 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986));
3944 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b836), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594d), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba));
3945 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0));
3946 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f));
3947 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3948 path.close();
3949
3950 SkPath path1(path);
3951 path.reset();
3952 path.setFillType((SkPathFillType) 0);
3953 path.moveTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb));
3954 path.cubicTo(SkBits2Float(0x42ace9b0), SkBits2Float(0x4189ae79), SkBits2Float(0x429590d6), SkBits2Float(0x423ab1c1), SkBits2Float(0x424df762), SkBits2Float(0x428231a6));
3955 path.cubicTo(SkBits2Float(0x41e19a31), SkBits2Float(0x42a70a69), SkBits2Float(0xc04a3289), SkBits2Float(0x42b03133), SkBits2Float(0xc1f5f36e), SkBits2Float(0x429a3139));
3956 path.lineTo(SkBits2Float(0xc1b1cbb9), SkBits2Float(0x425eedb9));
3957 path.cubicTo(SkBits2Float(0xc0122aac), SkBits2Float(0x427ebc5a), SkBits2Float(0x41a31606), SkBits2Float(0x42718130), SkBits2Float(0x4214e430), SkBits2Float(0x423c3b73));
3958 path.cubicTo(SkBits2Float(0x42583d5c), SkBits2Float(0x4206f5b6), SkBits2Float(0x4279fe97), SkBits2Float(0x41470ec8), SkBits2Float(0x426d6866), SkBits2Float(0xc10cb6eb));
3959 path.lineTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb));
3960 path.close();
3961
3962 SkPath path2(path);
3963 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3964 }
3965 // op end success 1
3966
battleOp148(skiatest::Reporter * reporter,const char * filename)3967 static void battleOp148(skiatest::Reporter* reporter, const char* filename) {
3968 SkPath path;
3969 path.setFillType((SkPathFillType) 0);
3970 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3971 path.cubicTo(SkBits2Float(0x42216831), SkBits2Float(0xc2a60000), SkBits2Float(0x4295b6bc), SkBits2Float(0xc257ea44), SkBits2Float(0x42a38b53), SkBits2Float(0xc1639572));
3972 path.lineTo(SkBits2Float(0x426c7311), SkBits2Float(0xc12484b9));
3973 path.cubicTo(SkBits2Float(0x42587424), SkBits2Float(0xc21c154e), SkBits2Float(0x41e95c08), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
3974 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
3975 path.close();
3976
3977 SkPath path1(path);
3978 path.reset();
3979 path.setFillType((SkPathFillType) 0);
3980 path.moveTo(SkBits2Float(0x42a38b52), SkBits2Float(0xc1639578));
3981 path.cubicTo(SkBits2Float(0x42a4def8), SkBits2Float(0xc1269090), SkBits2Float(0x42a5a99a), SkBits2Float(0xc0d1c16f), SkBits2Float(0x42a5e9be), SkBits2Float(0xc02be63c));
3982 path.lineTo(SkBits2Float(0x426fdfd2), SkBits2Float(0xbff8877d));
3983 path.cubicTo(SkBits2Float(0x426f8319), SkBits2Float(0xc097a16e), SkBits2Float(0x426e5e22), SkBits2Float(0xc0f0d105), SkBits2Float(0x426c7311), SkBits2Float(0xc12484ba));
3984 path.lineTo(SkBits2Float(0x42a38b52), SkBits2Float(0xc1639578));
3985 path.close();
3986
3987 SkPath path2(path);
3988 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
3989 }
3990 // op end success 1
3991
battleOp149(skiatest::Reporter * reporter,const char * filename)3992 static void battleOp149(skiatest::Reporter* reporter, const char* filename) {
3993 SkPath path;
3994 path.setFillType((SkPathFillType) 1);
3995 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
3996 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
3997 path.cubicTo(SkBits2Float(0x42216831), SkBits2Float(0xc2a60000), SkBits2Float(0x4295b6bc), SkBits2Float(0xc257ea44), SkBits2Float(0x42a38b52), SkBits2Float(0xc1639578));
3998 path.lineTo(SkBits2Float(0x426c7311), SkBits2Float(0xc12484ba));
3999 path.cubicTo(SkBits2Float(0x42587424), SkBits2Float(0xc21c154e), SkBits2Float(0x41e95c08), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4000 path.close();
4001
4002 SkPath path1(path);
4003 path.reset();
4004 path.setFillType((SkPathFillType) 0);
4005 path.moveTo(SkBits2Float(0x42a5e9be), SkBits2Float(0xc02be63f));
4006 path.cubicTo(SkBits2Float(0x42a7ff8e), SkBits2Float(0x41ec1faa), SkBits2Float(0x42849fff), SkBits2Float(0x426da4e1), SkBits2Float(0x4216595b), SkBits2Float(0x429400af));
4007 path.cubicTo(SkBits2Float(0x410dcade), SkBits2Float(0x42b12eec), SkBits2Float(0xc1cdb135), SkBits2Float(0x42aa7b1c), SkBits2Float(0xc24c6646), SkBits2Float(0x4282cf52));
4008 path.lineTo(SkBits2Float(0xc213c238), SkBits2Float(0x423d1f66));
4009 path.cubicTo(SkBits2Float(0xc194b176), SkBits2Float(0x42767a79), SkBits2Float(0x40cd0045), SkBits2Float(0x42801597), SkBits2Float(0x41d95f44), SkBits2Float(0x4255fad4));
4010 path.cubicTo(SkBits2Float(0x423fbf3c), SkBits2Float(0x422bca7a), SkBits2Float(0x4272e39a), SkBits2Float(0x41aab11f), SkBits2Float(0x426fdfd3), SkBits2Float(0xbff88758));
4011 path.lineTo(SkBits2Float(0x42a5e9be), SkBits2Float(0xc02be63f));
4012 path.close();
4013
4014 SkPath path2(path);
4015 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4016 }
4017 // op end success 1
4018
battleOp150(skiatest::Reporter * reporter,const char * filename)4019 static void battleOp150(skiatest::Reporter* reporter, const char* filename) {
4020 SkPath path;
4021 path.setFillType((SkPathFillType) 0);
4022 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4023 path.cubicTo(SkBits2Float(0x422dab0f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429efeec), SkBits2Float(0xc2462810), SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d837));
4024 path.lineTo(SkBits2Float(0x426f51d5), SkBits2Float(0xc0907750));
4025 path.cubicTo(SkBits2Float(0x4265df9a), SkBits2Float(0xc20f3ee4), SkBits2Float(0x41fb162c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3637fea5), SkBits2Float(0xc26fffff));
4026 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4027 path.close();
4028
4029 SkPath path1(path);
4030 path.reset();
4031 path.setFillType((SkPathFillType) 0);
4032 path.moveTo(SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d840));
4033 path.cubicTo(SkBits2Float(0x42a626ff), SkBits2Float(0xc0078454), SkBits2Float(0x42a62824), SkBits2Float(0x4001c6d5), SkBits2Float(0x42a58af5), SkBits2Float(0x40c4fc3c));
4034 path.lineTo(SkBits2Float(0x426f56ca), SkBits2Float(0x408e6626));
4035 path.cubicTo(SkBits2Float(0x42703a0b), SkBits2Float(0x3fbba106), SkBits2Float(0x42703864), SkBits2Float(0xbfc3ed93), SkBits2Float(0x426f51d4), SkBits2Float(0xc090774f));
4036 path.lineTo(SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d840));
4037 path.close();
4038
4039 SkPath path2(path);
4040 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4041 }
4042 // op end success 1
4043
battleOp151(skiatest::Reporter * reporter,const char * filename)4044 static void battleOp151(skiatest::Reporter* reporter, const char* filename) {
4045 SkPath path;
4046 path.setFillType((SkPathFillType) 1);
4047 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc26fffff));
4048 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4049 path.cubicTo(SkBits2Float(0x422dab0f), SkBits2Float(0xc2a60000), SkBits2Float(0x429efeec), SkBits2Float(0xc2462811), SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d840));
4050 path.lineTo(SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d837));
4051 path.cubicTo(SkBits2Float(0x42a626ff), SkBits2Float(0xc0078448), SkBits2Float(0x42a62824), SkBits2Float(0x4001c6db), SkBits2Float(0x42a58af5), SkBits2Float(0x40c4fc3c));
4052 path.lineTo(SkBits2Float(0x426f56ca), SkBits2Float(0x408e6626));
4053 path.cubicTo(SkBits2Float(0x42703a0b), SkBits2Float(0x3fbba106), SkBits2Float(0x42703864), SkBits2Float(0xbfc3ed93), SkBits2Float(0x426f51d4), SkBits2Float(0xc090774f));
4054 path.lineTo(SkBits2Float(0x426f51d5), SkBits2Float(0xc0907750));
4055 path.cubicTo(SkBits2Float(0x4265df9a), SkBits2Float(0xc20f3ee4), SkBits2Float(0x41fb162c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3637fea5), SkBits2Float(0xc26fffff));
4056 path.close();
4057
4058 SkPath path1(path);
4059 path.reset();
4060 path.setFillType((SkPathFillType) 0);
4061 path.moveTo(SkBits2Float(0x42a58af6), SkBits2Float(0x40c4fc3d));
4062 path.cubicTo(SkBits2Float(0x42a06986), SkBits2Float(0x422298c3), SkBits2Float(0x42621341), SkBits2Float(0x428bdf10), SkBits2Float(0x41ba9762), SkBits2Float(0x429f4f99));
4063 path.cubicTo(SkBits2Float(0xc11def80), SkBits2Float(0x42b2c022), SkBits2Float(0xc236745f), SkBits2Float(0x429afb1c), SkBits2Float(0xc284c1e2), SkBits2Float(0x4247504a));
4064 path.lineTo(SkBits2Float(0xc23ff038), SkBits2Float(0x42101509));
4065 path.cubicTo(SkBits2Float(0xc203e517), SkBits2Float(0x4260119e), SkBits2Float(0xc0e45731), SkBits2Float(0x428137a0), SkBits2Float(0x4186e2a5), SkBits2Float(0x42665443));
4066 path.cubicTo(SkBits2Float(0x42236d8c), SkBits2Float(0x424a3945), SkBits2Float(0x4267ebda), SkBits2Float(0x41eb1462), SkBits2Float(0x426f56cb), SkBits2Float(0x408e661a));
4067 path.lineTo(SkBits2Float(0x42a58af6), SkBits2Float(0x40c4fc3d));
4068 path.close();
4069
4070 SkPath path2(path);
4071 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4072 }
4073 // op end success 1
4074
battleOp152(skiatest::Reporter * reporter,const char * filename)4075 static void battleOp152(skiatest::Reporter* reporter, const char* filename) {
4076 SkPath path;
4077 path.setFillType((SkPathFillType) 0);
4078 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4079 path.cubicTo(SkBits2Float(0x41b12ed4), SkBits2Float(0xc2a60000), SkBits2Float(0x422d822c), SkBits2Float(0xc2944bde), SkBits2Float(0x426bdb91), SkBits2Float(0xc269a7f3));
4080 path.cubicTo(SkBits2Float(0x42951a7b), SkBits2Float(0xc22ab829), SkBits2Float(0x42a66879), SkBits2Float(0xc1aaf2b1), SkBits2Float(0x42a5fe21), SkBits2Float(0x3f4744a4));
4081 path.lineTo(SkBits2Float(0x426ffd4c), SkBits2Float(0x3f100c99));
4082 path.cubicTo(SkBits2Float(0x4270970c), SkBits2Float(0xc177275d), SkBits2Float(0x4257923d), SkBits2Float(0xc1f6d2bd), SkBits2Float(0x422a7fe2), SkBits2Float(0xc228e872));
4083 path.cubicTo(SkBits2Float(0x41fadb0b), SkBits2Float(0xc2566785), SkBits2Float(0x41801584), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
4084 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4085 path.close();
4086
4087 SkPath path1(path);
4088 path.reset();
4089 path.setFillType((SkPathFillType) 0);
4090 path.moveTo(SkBits2Float(0x42a5fe22), SkBits2Float(0x3f4744a1));
4091 path.cubicTo(SkBits2Float(0x42a5e921), SkBits2Float(0x40a4df91), SkBits2Float(0x42a52322), SkBits2Float(0x411841f7), SkBits2Float(0x42a3adfe), SkBits2Float(0x415d43d0));
4092 path.lineTo(SkBits2Float(0x426ca531), SkBits2Float(0x411ff355));
4093 path.cubicTo(SkBits2Float(0x426ec0ad), SkBits2Float(0x40dc21ae), SkBits2Float(0x426fdeef), SkBits2Float(0x406e5efe), SkBits2Float(0x426ffd4d), SkBits2Float(0x3f100c9b));
4094 path.lineTo(SkBits2Float(0x42a5fe22), SkBits2Float(0x3f4744a1));
4095 path.close();
4096
4097 SkPath path2(path);
4098 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4099 }
4100 // op end success 1
4101
battleOp153(skiatest::Reporter * reporter,const char * filename)4102 static void battleOp153(skiatest::Reporter* reporter, const char* filename) {
4103 SkPath path;
4104 path.setFillType((SkPathFillType) 1);
4105 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4106 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4107 path.cubicTo(SkBits2Float(0x41b12ed4), SkBits2Float(0xc2a60000), SkBits2Float(0x422d822c), SkBits2Float(0xc2944bde), SkBits2Float(0x426bdb91), SkBits2Float(0xc269a7f3));
4108 path.cubicTo(SkBits2Float(0x42951a7b), SkBits2Float(0xc22ab829), SkBits2Float(0x42a66879), SkBits2Float(0xc1aaf2b1), SkBits2Float(0x42a5fe21), SkBits2Float(0x3f4744a0));
4109 path.lineTo(SkBits2Float(0x426ffd4c), SkBits2Float(0x3f100c99));
4110 path.cubicTo(SkBits2Float(0x4270970c), SkBits2Float(0xc177275d), SkBits2Float(0x4257923d), SkBits2Float(0xc1f6d2bd), SkBits2Float(0x422a7fe2), SkBits2Float(0xc228e872));
4111 path.cubicTo(SkBits2Float(0x41fadb0b), SkBits2Float(0xc2566785), SkBits2Float(0x41801584), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4112 path.close();
4113
4114 SkPath path1(path);
4115 path.reset();
4116 path.setFillType((SkPathFillType) 0);
4117 path.moveTo(SkBits2Float(0x42a3adfe), SkBits2Float(0x415d43d0));
4118 path.cubicTo(SkBits2Float(0x42977493), SkBits2Float(0x42480062), SkBits2Float(0x423a617c), SkBits2Float(0x429bbd03), SkBits2Float(0x4123044a), SkBits2Float(0x42a4be9a));
4119 path.cubicTo(SkBits2Float(0xc1d1beaf), SkBits2Float(0x42adc030), SkBits2Float(0xc2750d30), SkBits2Float(0x4285e3a3), SkBits2Float(0xc2980208), SkBits2Float(0x42056911));
4120 path.lineTo(SkBits2Float(0xc25bc541), SkBits2Float(0x41c0e1ed));
4121 path.cubicTo(SkBits2Float(0xc231254e), SkBits2Float(0x42419328), SkBits2Float(0xc1979f72), SkBits2Float(0x427b34be), SkBits2Float(0x40ebafde), SkBits2Float(0x426e2f5c));
4122 path.cubicTo(SkBits2Float(0x4206bbb1), SkBits2Float(0x426129fa), SkBits2Float(0x425af8c2), SkBits2Float(0x42109457), SkBits2Float(0x426ca533), SkBits2Float(0x411ff35b));
4123 path.lineTo(SkBits2Float(0x42a3adfe), SkBits2Float(0x415d43d0));
4124 path.close();
4125
4126 SkPath path2(path);
4127 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4128 }
4129 // op end success 1
4130
battleOp154(skiatest::Reporter * reporter,const char * filename)4131 static void battleOp154(skiatest::Reporter* reporter, const char* filename) {
4132 SkPath path;
4133 path.setFillType((SkPathFillType) 0);
4134 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4135 path.cubicTo(SkBits2Float(0x41bb5603), SkBits2Float(0xc2a60000), SkBits2Float(0x4236fa4e), SkBits2Float(0xc2923760), SkBits2Float(0x4275e892), SkBits2Float(0xc25f0dc8));
4136 path.cubicTo(SkBits2Float(0x429a6b6b), SkBits2Float(0xc219acd0), SkBits2Float(0x42a9c473), SkBits2Float(0xc173c3a6), SkBits2Float(0x42a5369d), SkBits2Float(0x410121d8));
4137 path.lineTo(SkBits2Float(0x426edcd8), SkBits2Float(0x40bab276));
4138 path.cubicTo(SkBits2Float(0x42757264), SkBits2Float(0xc1303715), SkBits2Float(0x425f41dd), SkBits2Float(0xc1de2e4a), SkBits2Float(0x4231c3e2), SkBits2Float(0xc2213e66));
4139 path.cubicTo(SkBits2Float(0x420445e8), SkBits2Float(0xc25365a8), SkBits2Float(0x41876c72), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
4140 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4141 path.close();
4142
4143 SkPath path1(path);
4144 path.reset();
4145 path.setFillType((SkPathFillType) 0);
4146 path.moveTo(SkBits2Float(0x42a5369e), SkBits2Float(0x410121d6));
4147 path.cubicTo(SkBits2Float(0x42a450b5), SkBits2Float(0x414aab85), SkBits2Float(0x42a2a6cd), SkBits2Float(0x4189bd6e), SkBits2Float(0x42a03d57), SkBits2Float(0x41ad66e6));
4148 path.lineTo(SkBits2Float(0x4267abf7), SkBits2Float(0x417ab39f));
4149 path.cubicTo(SkBits2Float(0x426b28ae), SkBits2Float(0x41472463), SkBits2Float(0x426d9071), SkBits2Float(0x41128229), SkBits2Float(0x426edcd8), SkBits2Float(0x40bab277));
4150 path.lineTo(SkBits2Float(0x42a5369e), SkBits2Float(0x410121d6));
4151 path.close();
4152
4153 SkPath path2(path);
4154 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4155 }
4156 // op end success 1
4157
battleOp155(skiatest::Reporter * reporter,const char * filename)4158 static void battleOp155(skiatest::Reporter* reporter, const char* filename) {
4159 SkPath path;
4160 path.setFillType((SkPathFillType) 1);
4161 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4162 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4163 path.cubicTo(SkBits2Float(0x41bb5603), SkBits2Float(0xc2a60000), SkBits2Float(0x4236fa4e), SkBits2Float(0xc2923760), SkBits2Float(0x4275e892), SkBits2Float(0xc25f0dc8));
4164 path.cubicTo(SkBits2Float(0x429a6b6b), SkBits2Float(0xc219acd0), SkBits2Float(0x42a9c473), SkBits2Float(0xc173c3a8), SkBits2Float(0x42a5369d), SkBits2Float(0x410121d5));
4165 path.lineTo(SkBits2Float(0x42a5369e), SkBits2Float(0x410121d6));
4166 path.cubicTo(SkBits2Float(0x42a450b5), SkBits2Float(0x414aab85), SkBits2Float(0x42a2a6cd), SkBits2Float(0x4189bd6e), SkBits2Float(0x42a03d57), SkBits2Float(0x41ad66e6));
4167 path.lineTo(SkBits2Float(0x4267abf7), SkBits2Float(0x417ab39f));
4168 path.cubicTo(SkBits2Float(0x426b28ae), SkBits2Float(0x41472463), SkBits2Float(0x426d9071), SkBits2Float(0x41128229), SkBits2Float(0x426edcd8), SkBits2Float(0x40bab276));
4169 path.cubicTo(SkBits2Float(0x42757264), SkBits2Float(0xc1303715), SkBits2Float(0x425f41dd), SkBits2Float(0xc1de2e4a), SkBits2Float(0x4231c3e2), SkBits2Float(0xc2213e66));
4170 path.cubicTo(SkBits2Float(0x420445e8), SkBits2Float(0xc25365a8), SkBits2Float(0x41876c72), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4171 path.close();
4172
4173 SkPath path1(path);
4174 path.reset();
4175 path.setFillType((SkPathFillType) 0);
4176 path.moveTo(SkBits2Float(0x42a03d58), SkBits2Float(0x41ad66e7));
4177 path.cubicTo(SkBits2Float(0x428bedd4), SkBits2Float(0x426cda0a), SkBits2Float(0x420c6f35), SkBits2Float(0x42a955c4), SkBits2Float(0xc06f4c79), SkBits2Float(0x42a5d4d6));
4178 path.cubicTo(SkBits2Float(0xc22a58c2), SkBits2Float(0x42a253e8), SkBits2Float(0xc2960525), SkBits2Float(0x4252b394), SkBits2Float(0xc2a37db3), SkBits2Float(0x41660422));
4179 path.lineTo(SkBits2Float(0xc26c5f63), SkBits2Float(0x412646cf));
4180 path.cubicTo(SkBits2Float(0xc258e58a), SkBits2Float(0x4218507a), SkBits2Float(0xc1f648da), SkBits2Float(0x426ab0dc), SkBits2Float(0xc02cfcc3), SkBits2Float(0x426fc1a0));
4181 path.cubicTo(SkBits2Float(0x41cb09aa), SkBits2Float(0x4274d265), SkBits2Float(0x424a4e9e), SkBits2Float(0x422b37da), SkBits2Float(0x4267abf8), SkBits2Float(0x417ab398));
4182 path.lineTo(SkBits2Float(0x42a03d58), SkBits2Float(0x41ad66e7));
4183 path.close();
4184
4185 SkPath path2(path);
4186 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4187 }
4188 // op end success 1
4189
battleOp156(skiatest::Reporter * reporter,const char * filename)4190 static void battleOp156(skiatest::Reporter* reporter, const char* filename) {
4191 SkPath path;
4192 path.setFillType((SkPathFillType) 0);
4193 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4194 path.cubicTo(SkBits2Float(0x41c3ae1a), SkBits2Float(0xc2a60000), SkBits2Float(0x423eb2d3), SkBits2Float(0xc2906c00), SkBits2Float(0x427dc7c2), SkBits2Float(0xc2560e13));
4195 path.cubicTo(SkBits2Float(0x429e6e58), SkBits2Float(0xc20b4426), SkBits2Float(0x42abdf2b), SkBits2Float(0xc121d7a7), SkBits2Float(0x42a39f93), SkBits2Float(0x415fea21));
4196 path.lineTo(SkBits2Float(0x426c905a), SkBits2Float(0x4121ddae));
4197 path.cubicTo(SkBits2Float(0x42787d42), SkBits2Float(0xc0e9fd34), SkBits2Float(0x42650e94), SkBits2Float(0xc1c95949), SkBits2Float(0x423774a6), SkBits2Float(0xc21abd13));
4198 path.cubicTo(SkBits2Float(0x4209dab9), SkBits2Float(0xc250cd81), SkBits2Float(0x418d749b), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
4199 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4200 path.close();
4201
4202 SkPath path1(path);
4203 path.reset();
4204 path.setFillType((SkPathFillType) 0);
4205 path.moveTo(SkBits2Float(0x42a39f93), SkBits2Float(0x415fea20));
4206 path.cubicTo(SkBits2Float(0x42a1ffad), SkBits2Float(0x4195f252), SkBits2Float(0x429f8ce1), SkBits2Float(0x41bb4c45), SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969a));
4207 path.lineTo(SkBits2Float(0x4261fbff), SkBits2Float(0x41a1a14e));
4208 path.cubicTo(SkBits2Float(0x4266acd9), SkBits2Float(0x41876566), SkBits2Float(0x426a370e), SkBits2Float(0x4158ca4c), SkBits2Float(0x426c905b), SkBits2Float(0x4121ddaf));
4209 path.lineTo(SkBits2Float(0x42a39f93), SkBits2Float(0x415fea20));
4210 path.close();
4211
4212 SkPath path2(path);
4213 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4214 }
4215 // op end success 1
4216
battleOp157(skiatest::Reporter * reporter,const char * filename)4217 static void battleOp157(skiatest::Reporter* reporter, const char* filename) {
4218 SkPath path;
4219 path.setFillType((SkPathFillType) 1);
4220 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4221 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4222 path.cubicTo(SkBits2Float(0x41c3ae1a), SkBits2Float(0xc2a60000), SkBits2Float(0x423eb2d3), SkBits2Float(0xc2906c00), SkBits2Float(0x427dc7c2), SkBits2Float(0xc2560e13));
4223 path.cubicTo(SkBits2Float(0x429e6e58), SkBits2Float(0xc20b4426), SkBits2Float(0x42abdf2b), SkBits2Float(0xc121d7a8), SkBits2Float(0x42a39f93), SkBits2Float(0x415fea20));
4224 path.lineTo(SkBits2Float(0x42a39f93), SkBits2Float(0x415fea21));
4225 path.cubicTo(SkBits2Float(0x42a1ffad), SkBits2Float(0x4195f252), SkBits2Float(0x429f8ce1), SkBits2Float(0x41bb4c45), SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969a));
4226 path.lineTo(SkBits2Float(0x4261fbff), SkBits2Float(0x41a1a14e));
4227 path.cubicTo(SkBits2Float(0x4266acd9), SkBits2Float(0x41876566), SkBits2Float(0x426a370e), SkBits2Float(0x4158ca4c), SkBits2Float(0x426c905b), SkBits2Float(0x4121ddaf));
4228 path.lineTo(SkBits2Float(0x426c905a), SkBits2Float(0x4121ddae));
4229 path.cubicTo(SkBits2Float(0x42787d42), SkBits2Float(0xc0e9fd34), SkBits2Float(0x42650e94), SkBits2Float(0xc1c95949), SkBits2Float(0x423774a6), SkBits2Float(0xc21abd13));
4230 path.cubicTo(SkBits2Float(0x4209dab9), SkBits2Float(0xc250cd81), SkBits2Float(0x418d749b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4231 path.close();
4232
4233 SkPath path1(path);
4234 path.reset();
4235 path.setFillType((SkPathFillType) 0);
4236 path.moveTo(SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969b));
4237 path.cubicTo(SkBits2Float(0x4280e391), SkBits2Float(0x4284903f), SkBits2Float(0x41c7a851), SkBits2Float(0x42b2072e), SkBits2Float(0xc1713833), SkBits2Float(0x42a33d14));
4238 path.cubicTo(SkBits2Float(0xc25c7040), SkBits2Float(0x429472fb), SkBits2Float(0xc2a7bda2), SkBits2Float(0x421b8b2e), SkBits2Float(0xc2a5f5d6), SkBits2Float(0xbfe85110));
4239 path.lineTo(SkBits2Float(0xc26ff14f), SkBits2Float(0xbfa7f00b));
4240 path.cubicTo(SkBits2Float(0xc272844c), SkBits2Float(0x41e0e1f3), SkBits2Float(0xc21f5a65), SkBits2Float(0x4256a019), SkBits2Float(0xc12e6015), SkBits2Float(0x426c01f9));
4241 path.cubicTo(SkBits2Float(0x419054b7), SkBits2Float(0x4280b1ec), SkBits2Float(0x423a5877), SkBits2Float(0x423fa872), SkBits2Float(0x4261fc02), SkBits2Float(0x41a1a142));
4242 path.lineTo(SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969b));
4243 path.close();
4244
4245 SkPath path2(path);
4246 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4247 }
4248 // op end success 1
4249
battleOp158(skiatest::Reporter * reporter,const char * filename)4250 static void battleOp158(skiatest::Reporter* reporter, const char* filename) {
4251 SkPath path;
4252 path.setFillType((SkPathFillType) 0);
4253 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4254 path.cubicTo(SkBits2Float(0x41cb677f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4245cb36), SkBits2Float(0xc28eb15b), SkBits2Float(0x42825fc2), SkBits2Float(0xc24d8299));
4255 path.cubicTo(SkBits2Float(0x42a1d9e8), SkBits2Float(0xc1fb44f8), SkBits2Float(0x42ad4967), SkBits2Float(0xc0aa7cf8), SkBits2Float(0x42a1679f), SkBits2Float(0x419b26cf));
4256 path.lineTo(SkBits2Float(0x42695b36), SkBits2Float(0x416050ca));
4257 path.cubicTo(SkBits2Float(0x427a88f8), SkBits2Float(0xc0767d2a), SkBits2Float(0x426a0074), SkBits2Float(0xc1b5a3f9), SkBits2Float(0x423c7e1d), SkBits2Float(0xc2148fc2));
4258 path.cubicTo(SkBits2Float(0x420efbc6), SkBits2Float(0xc24e4d87), SkBits2Float(0x41930a0e), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
4259 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4260 path.close();
4261
4262 SkPath path1(path);
4263 path.reset();
4264 path.setFillType((SkPathFillType) 0);
4265 path.moveTo(SkBits2Float(0x42a1679f), SkBits2Float(0x419b26d0));
4266 path.cubicTo(SkBits2Float(0x429f113c), SkBits2Float(0x41c20ede), SkBits2Float(0x429bdafe), SkBits2Float(0x41e80a2e), SkBits2Float(0x4297ceee), SkBits2Float(0x42065107));
4267 path.lineTo(SkBits2Float(0x425b7b5f), SkBits2Float(0x41c2314a));
4268 path.cubicTo(SkBits2Float(0x4261554b), SkBits2Float(0x41a7bd56), SkBits2Float(0x4265fa14), SkBits2Float(0x418c4870), SkBits2Float(0x42695b37), SkBits2Float(0x416050cb));
4269 path.lineTo(SkBits2Float(0x42a1679f), SkBits2Float(0x419b26d0));
4270 path.close();
4271
4272 SkPath path2(path);
4273 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4274 }
4275 // op end success 1
4276
battleOp159(skiatest::Reporter * reporter,const char * filename)4277 static void battleOp159(skiatest::Reporter* reporter, const char* filename) {
4278 SkPath path;
4279 path.setFillType((SkPathFillType) 1);
4280 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4281 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4282 path.cubicTo(SkBits2Float(0x41cb677f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4245cb36), SkBits2Float(0xc28eb15b), SkBits2Float(0x42825fc2), SkBits2Float(0xc24d8299));
4283 path.cubicTo(SkBits2Float(0x42a1d9e8), SkBits2Float(0xc1fb44f8), SkBits2Float(0x42ad4967), SkBits2Float(0xc0aa7cf8), SkBits2Float(0x42a1679f), SkBits2Float(0x419b26d0));
4284 path.cubicTo(SkBits2Float(0x429f113c), SkBits2Float(0x41c20ede), SkBits2Float(0x429bdafe), SkBits2Float(0x41e80a2e), SkBits2Float(0x4297ceee), SkBits2Float(0x42065107));
4285 path.lineTo(SkBits2Float(0x425b7b5f), SkBits2Float(0x41c2314a));
4286 path.cubicTo(SkBits2Float(0x4261554b), SkBits2Float(0x41a7bd56), SkBits2Float(0x4265fa14), SkBits2Float(0x418c4870), SkBits2Float(0x42695b36), SkBits2Float(0x416050ca));
4287 path.cubicTo(SkBits2Float(0x427a88f8), SkBits2Float(0xc0767d2a), SkBits2Float(0x426a0074), SkBits2Float(0xc1b5a3f9), SkBits2Float(0x423c7e1d), SkBits2Float(0xc2148fc2));
4288 path.cubicTo(SkBits2Float(0x420efbc6), SkBits2Float(0xc24e4d87), SkBits2Float(0x41930a0e), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4289 path.close();
4290
4291 SkPath path1(path);
4292 path.reset();
4293 path.setFillType((SkPathFillType) 0);
4294 path.moveTo(SkBits2Float(0x4297ceef), SkBits2Float(0x42065107));
4295 path.cubicTo(SkBits2Float(0x426afc81), SkBits2Float(0x4290b9e3), SkBits2Float(0x4171c53f), SkBits2Float(0x42b7f2c1), SkBits2Float(0xc1ca446b), SkBits2Float(0x429e1c54));
4296 path.cubicTo(SkBits2Float(0xc2835add), SkBits2Float(0x428445e8), SkBits2Float(0xc2b3ab9e), SkBits2Float(0x41c6c009), SkBits2Float(0xc2a29b10), SkBits2Float(0xc18596e4));
4297 path.lineTo(SkBits2Float(0xc26b17b4), SkBits2Float(0xc141242b));
4298 path.cubicTo(SkBits2Float(0xc281e1de), SkBits2Float(0x418faccb), SkBits2Float(0xc23de932), SkBits2Float(0x423f3d09), SkBits2Float(0xc19237aa), SkBits2Float(0x42649810));
4299 path.cubicTo(SkBits2Float(0x412ec628), SkBits2Float(0x4284f98c), SkBits2Float(0x4229deab), SkBits2Float(0x42513e23), SkBits2Float(0x425b7b62), SkBits2Float(0x41c23147));
4300 path.lineTo(SkBits2Float(0x4297ceef), SkBits2Float(0x42065107));
4301 path.close();
4302
4303 SkPath path2(path);
4304 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4305 }
4306 // op end success 1
4307
battleOp160(skiatest::Reporter * reporter,const char * filename)4308 static void battleOp160(skiatest::Reporter* reporter, const char* filename) {
4309 SkPath path;
4310 path.setFillType((SkPathFillType) 0);
4311 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4312 path.cubicTo(SkBits2Float(0x41d3ccce), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424d7252), SkBits2Float(0xc28cbd55), SkBits2Float(0x4285fbcc), SkBits2Float(0xc244010c));
4313 path.cubicTo(SkBits2Float(0x42a53e6e), SkBits2Float(0xc1dd0edd), SkBits2Float(0x42ae3d82), SkBits2Float(0xbdb630d0), SkBits2Float(0x429e3366), SkBits2Float(0x41c92323));
4314 path.lineTo(SkBits2Float(0x4264b95a), SkBits2Float(0x41916681));
4315 path.cubicTo(SkBits2Float(0x427be9e4), SkBits2Float(0xbd83b620), SkBits2Float(0x426ee823), SkBits2Float(0xc19fcd11), SkBits2Float(0x4241b610), SkBits2Float(0xc20db091));
4316 path.cubicTo(SkBits2Float(0x421483fd), SkBits2Float(0xc24b7a9a), SkBits2Float(0x41991bc1), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
4317 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4318 path.close();
4319
4320 SkPath path1(path);
4321 path.reset();
4322 path.setFillType((SkPathFillType) 0);
4323 path.moveTo(SkBits2Float(0x429e3367), SkBits2Float(0x41c92322));
4324 path.cubicTo(SkBits2Float(0x429b0cbc), SkBits2Float(0x41f0ca9b), SkBits2Float(0x4296f94f), SkBits2Float(0x420b9629), SkBits2Float(0x429206e2), SkBits2Float(0x421de34f));
4325 path.lineTo(SkBits2Float(0x42531f8a), SkBits2Float(0x41e4458f));
4326 path.cubicTo(SkBits2Float(0x425a4685), SkBits2Float(0x41c9cfd9), SkBits2Float(0x42602b18), SkBits2Float(0x41ae10ed), SkBits2Float(0x4264b95a), SkBits2Float(0x41916682));
4327 path.lineTo(SkBits2Float(0x429e3367), SkBits2Float(0x41c92322));
4328 path.close();
4329
4330 SkPath path2(path);
4331 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4332 }
4333 // op end success 1
4334
battleOp161(skiatest::Reporter * reporter,const char * filename)4335 static void battleOp161(skiatest::Reporter* reporter, const char* filename) {
4336 SkPath path;
4337 path.setFillType((SkPathFillType) 1);
4338 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
4339 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4340 path.cubicTo(SkBits2Float(0x41d3ccce), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424d7252), SkBits2Float(0xc28cbd55), SkBits2Float(0x4285fbcc), SkBits2Float(0xc244010c));
4341 path.cubicTo(SkBits2Float(0x42a53e6e), SkBits2Float(0xc1dd0edd), SkBits2Float(0x42ae3d82), SkBits2Float(0xbdb630d0), SkBits2Float(0x429e3367), SkBits2Float(0x41c92322));
4342 path.cubicTo(SkBits2Float(0x429b0cbc), SkBits2Float(0x41f0ca9b), SkBits2Float(0x4296f94f), SkBits2Float(0x420b9629), SkBits2Float(0x429206e2), SkBits2Float(0x421de34f));
4343 path.lineTo(SkBits2Float(0x42531f8a), SkBits2Float(0x41e4458f));
4344 path.cubicTo(SkBits2Float(0x425a4685), SkBits2Float(0x41c9cfd9), SkBits2Float(0x42602b18), SkBits2Float(0x41ae10ed), SkBits2Float(0x4264b95a), SkBits2Float(0x41916681));
4345 path.cubicTo(SkBits2Float(0x427be9e4), SkBits2Float(0xbd83b620), SkBits2Float(0x426ee823), SkBits2Float(0xc19fcd11), SkBits2Float(0x4241b610), SkBits2Float(0xc20db091));
4346 path.cubicTo(SkBits2Float(0x421483fd), SkBits2Float(0xc24b7a9a), SkBits2Float(0x41991bc1), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
4347 path.close();
4348
4349 SkPath path1(path);
4350 path.reset();
4351 path.setFillType((SkPathFillType) 0);
4352 path.moveTo(SkBits2Float(0x429206e2), SkBits2Float(0x421de34f));
4353 path.cubicTo(SkBits2Float(0x424fd7be), SkBits2Float(0x429cd433), SkBits2Float(0x40819da9), SkBits2Float(0x42bbf605), SkBits2Float(0xc20f7b98), SkBits2Float(0x4295b271));
4354 path.cubicTo(SkBits2Float(0xc2979573), SkBits2Float(0x425eddba), SkBits2Float(0xc2bb57fe), SkBits2Float(0x4109ef62), SkBits2Float(0xc2990315), SkBits2Float(0xc200bcbb));
4355 path.lineTo(SkBits2Float(0xc25d38e3), SkBits2Float(0xc1ba2048));
4356 path.cubicTo(SkBits2Float(0xc2876de1), SkBits2Float(0x40c76c9c), SkBits2Float(0xc25b2842), SkBits2Float(0x42211baa), SkBits2Float(0xc1cf71e5), SkBits2Float(0x42586df1));
4357 path.cubicTo(SkBits2Float(0x403b65b7), SkBits2Float(0x4287e01c), SkBits2Float(0x42163f6f), SkBits2Float(0x4262bd95), SkBits2Float(0x42531f8c), SkBits2Float(0x41e4458b));
4358 path.lineTo(SkBits2Float(0x429206e2), SkBits2Float(0x421de34f));
4359 path.close();
4360
4361 SkPath path2(path);
4362 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4363 }
4364 // op end success 1
4365
battleOp162(skiatest::Reporter * reporter,const char * filename)4366 static void battleOp162(skiatest::Reporter* reporter, const char* filename) {
4367 SkPath path;
4368 path.setFillType((SkPathFillType) 0);
4369 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4370 path.cubicTo(SkBits2Float(0x41da3d7f), SkBits2Float(0xc2a60000), SkBits2Float(0x425345ee), SkBits2Float(0xc28b3082), SkBits2Float(0x4288a01b), SkBits2Float(0xc23c9177));
4371 path.cubicTo(SkBits2Float(0x42a79d3f), SkBits2Float(0xc1c583d9), SkBits2Float(0x42ae8eeb), SkBits2Float(0x407c6461), SkBits2Float(0x429b333a), SkBits2Float(0x41eb9731));
4372 path.lineTo(SkBits2Float(0x426062bb), SkBits2Float(0x41aa4e75));
4373 path.cubicTo(SkBits2Float(0x427c5f9a), SkBits2Float(0x403673d5), SkBits2Float(0x4272557b), SkBits2Float(0xc18ec82c), SkBits2Float(0x424587e0), SkBits2Float(0xc208507b));
4374 path.cubicTo(SkBits2Float(0x4218ba46), SkBits2Float(0xc2493ce1), SkBits2Float(0x419dc399), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
4375 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4376 path.close();
4377
4378 SkPath path1(path);
4379 path.reset();
4380 path.setFillType((SkPathFillType) 0);
4381 path.moveTo(SkBits2Float(0x429b3339), SkBits2Float(0x41eb9733));
4382 path.cubicTo(SkBits2Float(0x429766b3), SkBits2Float(0x4209d0f3), SkBits2Float(0x4292a485), SkBits2Float(0x421d0e17), SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e33));
4383 path.lineTo(SkBits2Float(0x424bd7ac), SkBits2Float(0x41fd5d06));
4384 path.cubicTo(SkBits2Float(0x42540374), SkBits2Float(0x41e3114e), SkBits2Float(0x425ae4ae), SkBits2Float(0x41c7409b), SkBits2Float(0x426062bc), SkBits2Float(0x41aa4e76));
4385 path.lineTo(SkBits2Float(0x429b3339), SkBits2Float(0x41eb9733));
4386 path.close();
4387
4388 SkPath path2(path);
4389 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4390 }
4391 // op end success 1
4392
battleOp163(skiatest::Reporter * reporter,const char * filename)4393 static void battleOp163(skiatest::Reporter* reporter, const char* filename) {
4394 SkPath path;
4395 path.setFillType((SkPathFillType) 1);
4396 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
4397 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4398 path.cubicTo(SkBits2Float(0x41da3d7f), SkBits2Float(0xc2a60000), SkBits2Float(0x425345ee), SkBits2Float(0xc28b3082), SkBits2Float(0x4288a01b), SkBits2Float(0xc23c9177));
4399 path.cubicTo(SkBits2Float(0x42a79d3f), SkBits2Float(0xc1c583d9), SkBits2Float(0x42ae8eeb), SkBits2Float(0x407c6461), SkBits2Float(0x429b3339), SkBits2Float(0x41eb9733));
4400 path.cubicTo(SkBits2Float(0x429766b3), SkBits2Float(0x4209d0f3), SkBits2Float(0x4292a485), SkBits2Float(0x421d0e17), SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e33));
4401 path.lineTo(SkBits2Float(0x424bd7ac), SkBits2Float(0x41fd5d06));
4402 path.cubicTo(SkBits2Float(0x42540374), SkBits2Float(0x41e3114e), SkBits2Float(0x425ae4ae), SkBits2Float(0x41c7409b), SkBits2Float(0x426062bb), SkBits2Float(0x41aa4e75));
4403 path.cubicTo(SkBits2Float(0x427c5f9a), SkBits2Float(0x403673d5), SkBits2Float(0x4272557b), SkBits2Float(0xc18ec82c), SkBits2Float(0x424587e0), SkBits2Float(0xc208507b));
4404 path.cubicTo(SkBits2Float(0x4218ba46), SkBits2Float(0xc2493ce1), SkBits2Float(0x419dc399), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
4405 path.close();
4406
4407 SkPath path1(path);
4408 path.reset();
4409 path.setFillType((SkPathFillType) 0);
4410 path.moveTo(SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e36));
4411 path.cubicTo(SkBits2Float(0x42397b9c), SkBits2Float(0x42a54202), SkBits2Float(0xc0931849), SkBits2Float(0x42bd474f), SkBits2Float(0xc22e0fe8), SkBits2Float(0x428d5ab7));
4412 path.cubicTo(SkBits2Float(0xc2a4de63), SkBits2Float(0x423adc3f), SkBits2Float(0xc2bd50df), SkBits2Float(0xc08673c0), SkBits2Float(0xc28db7cd), SkBits2Float(0xc22ce1b4));
4413 path.lineTo(SkBits2Float(0xc24ce4bb), SkBits2Float(0xc1f9f306));
4414 path.cubicTo(SkBits2Float(0xc288db72), SkBits2Float(0xc0426216), SkBits2Float(0xc26e5ec8), SkBits2Float(0x42071590), SkBits2Float(0xc1fba9c9), SkBits2Float(0x424c5fa5));
4415 path.cubicTo(SkBits2Float(0xc054b001), SkBits2Float(0x4288d4dc), SkBits2Float(0x420615fc), SkBits2Float(0x426eee67), SkBits2Float(0x424bd7af), SkBits2Float(0x41fd5d01));
4416 path.lineTo(SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e36));
4417 path.close();
4418
4419 SkPath path2(path);
4420 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4421 }
4422 // op end success 1
4423
battleOp164(skiatest::Reporter * reporter,const char * filename)4424 static void battleOp164(skiatest::Reporter* reporter, const char* filename) {
4425 SkPath path;
4426 path.setFillType((SkPathFillType) 0);
4427 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4428 path.cubicTo(SkBits2Float(0x41e183ec), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4259cec4), SkBits2Float(0xc2896274), SkBits2Float(0x428b79bc), SkBits2Float(0xc2340753));
4429 path.cubicTo(SkBits2Float(0x42aa0c16), SkBits2Float(0xc1aa937d), SkBits2Float(0x42ae7c71), SkBits2Float(0x41080a55), SkBits2Float(0x42974339), SkBits2Float(0x4208c1d5));
4430 path.lineTo(SkBits2Float(0x425ab161), SkBits2Float(0x41c5b8a2));
4431 path.cubicTo(SkBits2Float(0x427c44e4), SkBits2Float(0x40c4af5a), SkBits2Float(0x4275d9f7), SkBits2Float(0xc1769dba), SkBits2Float(0x4249a6c2), SkBits2Float(0xc2022424));
4432 path.cubicTo(SkBits2Float(0x421d738b), SkBits2Float(0xc246a0db), SkBits2Float(0x41a305f1), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
4433 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4434 path.close();
4435
4436 SkPath path1(path);
4437 path.reset();
4438 path.setFillType((SkPathFillType) 0);
4439 path.moveTo(SkBits2Float(0x42974339), SkBits2Float(0x4208c1d6));
4440 path.cubicTo(SkBits2Float(0x4292b5f8), SkBits2Float(0x421ce537), SkBits2Float(0x428d2a3f), SkBits2Float(0x42301305), SkBits2Float(0x4286b52e), SkBits2Float(0x4242022c));
4441 path.lineTo(SkBits2Float(0x4242c218), SkBits2Float(0x420c3f43));
4442 path.cubicTo(SkBits2Float(0x424c1813), SkBits2Float(0x41fe90b7), SkBits2Float(0x42541cae), SkBits2Float(0x41e2d634), SkBits2Float(0x425ab162), SkBits2Float(0x41c5b8a3));
4443 path.lineTo(SkBits2Float(0x42974339), SkBits2Float(0x4208c1d6));
4444 path.close();
4445
4446 SkPath path2(path);
4447 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4448 }
4449 // op end success 1
4450
battleOp165(skiatest::Reporter * reporter,const char * filename)4451 static void battleOp165(skiatest::Reporter* reporter, const char* filename) {
4452 SkPath path;
4453 path.setFillType((SkPathFillType) 1);
4454 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
4455 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4456 path.cubicTo(SkBits2Float(0x41e183ec), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4259cec4), SkBits2Float(0xc2896274), SkBits2Float(0x428b79bc), SkBits2Float(0xc2340753));
4457 path.cubicTo(SkBits2Float(0x42aa0c16), SkBits2Float(0xc1aa937d), SkBits2Float(0x42ae7c71), SkBits2Float(0x41080a55), SkBits2Float(0x42974339), SkBits2Float(0x4208c1d6));
4458 path.cubicTo(SkBits2Float(0x4292b5f8), SkBits2Float(0x421ce537), SkBits2Float(0x428d2a3f), SkBits2Float(0x42301305), SkBits2Float(0x4286b52e), SkBits2Float(0x4242022c));
4459 path.lineTo(SkBits2Float(0x4242c218), SkBits2Float(0x420c3f43));
4460 path.cubicTo(SkBits2Float(0x424c1813), SkBits2Float(0x41fe90b7), SkBits2Float(0x42541cae), SkBits2Float(0x41e2d634), SkBits2Float(0x425ab161), SkBits2Float(0x41c5b8a2));
4461 path.cubicTo(SkBits2Float(0x427c44e4), SkBits2Float(0x40c4af5a), SkBits2Float(0x4275d9f7), SkBits2Float(0xc1769dba), SkBits2Float(0x4249a6c2), SkBits2Float(0xc2022424));
4462 path.cubicTo(SkBits2Float(0x421d738b), SkBits2Float(0xc246a0db), SkBits2Float(0x41a305f1), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
4463 path.close();
4464
4465 SkPath path1(path);
4466 path.reset();
4467 path.setFillType((SkPathFillType) 0);
4468 path.moveTo(SkBits2Float(0x4286b52e), SkBits2Float(0x4242022d));
4469 path.cubicTo(SkBits2Float(0x4245f9c6), SkBits2Float(0x42929b97), SkBits2Float(0x419b96e9), SkBits2Float(0x42ac9135), SkBits2Float(0xc12da222), SkBits2Float(0x42a4933a));
4470 path.cubicTo(SkBits2Float(0xc2249c85), SkBits2Float(0x429c9540), SkBits2Float(0xc2859c99), SkBits2Float(0x4267dd85), SkBits2Float(0xc29b4028), SkBits2Float(0x41eb0f05));
4471 path.cubicTo(SkBits2Float(0xc2b0e3b8), SkBits2Float(0x3f4c608a), SkBits2Float(0xc2a55c16), SkBits2Float(0xc1fb5a07), SkBits2Float(0xc27a7a78), SkBits2Float(0xc259e8d8));
4472 path.lineTo(SkBits2Float(0xc2351199), SkBits2Float(0xc21d8664));
4473 path.cubicTo(SkBits2Float(0xc26f12eb), SkBits2Float(0xc1b5b32d), SkBits2Float(0xc27fbe43), SkBits2Float(0x3f13bb74), SkBits2Float(0xc2607541), SkBits2Float(0x41a9ebcd));
4474 path.cubicTo(SkBits2Float(0xc2412c3e), SkBits2Float(0x42279ce1), SkBits2Float(0xc1edfdc7), SkBits2Float(0x4262625e), SkBits2Float(0xc0fb089d), SkBits2Float(0x426df06d));
4475 path.cubicTo(SkBits2Float(0x4160f2f1), SkBits2Float(0x42797e7c), SkBits2Float(0x420f1d6a), SkBits2Float(0x4253f671), SkBits2Float(0x4242c21c), SkBits2Float(0x420c3f41));
4476 path.lineTo(SkBits2Float(0x4286b52e), SkBits2Float(0x4242022d));
4477 path.close();
4478
4479 SkPath path2(path);
4480 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4481 }
4482 // op end success 1
4483
battleOp166(skiatest::Reporter * reporter,const char * filename)4484 static void battleOp166(skiatest::Reporter* reporter, const char* filename) {
4485 SkPath path;
4486 path.setFillType((SkPathFillType) 0);
4487 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4488 path.cubicTo(SkBits2Float(0x41e5cd16), SkBits2Float(0xc2a60000), SkBits2Float(0x425da203), SkBits2Float(0xc2884b73), SkBits2Float(0x428d165b), SkBits2Float(0xc22eeec9));
4489 path.cubicTo(SkBits2Float(0x42ab5bb4), SkBits2Float(0xc19a8d5b), SkBits2Float(0x42ae3add), SkBits2Float(0x4132f7c2), SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b));
4490 path.lineTo(SkBits2Float(0x4256f554), SkBits2Float(0x41d579ab));
4491 path.cubicTo(SkBits2Float(0x427be612), SkBits2Float(0x41015fcf), SkBits2Float(0x4277bf2e), SkBits2Float(0xc15f72f6), SkBits2Float(0x424bfb4d), SkBits2Float(0xc1fcea38));
4492 path.cubicTo(SkBits2Float(0x4220376c), SkBits2Float(0xc2450d7a), SkBits2Float(0x41a61f08), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
4493 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4494 path.close();
4495
4496 SkPath path1(path);
4497 path.reset();
4498 path.setFillType((SkPathFillType) 0);
4499 path.moveTo(SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b));
4500 path.cubicTo(SkBits2Float(0x428facea), SkBits2Float(0x4227cf1b), SkBits2Float(0x4289a8e5), SkBits2Float(0x423ae500), SkBits2Float(0x4282b9a7), SkBits2Float(0x424c9dab));
4501 path.lineTo(SkBits2Float(0x423d0015), SkBits2Float(0x4213ea45));
4502 path.cubicTo(SkBits2Float(0x424706b3), SkBits2Float(0x42071ac0), SkBits2Float(0x424fb93a), SkBits2Float(0x41f29d8f), SkBits2Float(0x4256f555), SkBits2Float(0x41d579ac));
4503 path.lineTo(SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b));
4504 path.close();
4505
4506 SkPath path2(path);
4507 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4508 }
4509 // op end success 1
4510
battleOp167(skiatest::Reporter * reporter,const char * filename)4511 static void battleOp167(skiatest::Reporter* reporter, const char* filename) {
4512 SkPath path;
4513 path.setFillType((SkPathFillType) 1);
4514 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
4515 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4516 path.cubicTo(SkBits2Float(0x41e5cd16), SkBits2Float(0xc2a60000), SkBits2Float(0x425da203), SkBits2Float(0xc2884b73), SkBits2Float(0x428d165b), SkBits2Float(0xc22eeec9));
4517 path.cubicTo(SkBits2Float(0x42ab5bb4), SkBits2Float(0xc19a8d5b), SkBits2Float(0x42ae3add), SkBits2Float(0x4132f7c2), SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b));
4518 path.cubicTo(SkBits2Float(0x428facea), SkBits2Float(0x4227cf1b), SkBits2Float(0x4289a8e5), SkBits2Float(0x423ae500), SkBits2Float(0x4282b9a7), SkBits2Float(0x424c9dab));
4519 path.lineTo(SkBits2Float(0x423d0015), SkBits2Float(0x4213ea45));
4520 path.cubicTo(SkBits2Float(0x424706b3), SkBits2Float(0x42071ac0), SkBits2Float(0x424fb93a), SkBits2Float(0x41f29d8f), SkBits2Float(0x4256f554), SkBits2Float(0x41d579ab));
4521 path.cubicTo(SkBits2Float(0x427be612), SkBits2Float(0x41015fcf), SkBits2Float(0x4277bf2e), SkBits2Float(0xc15f72f6), SkBits2Float(0x424bfb4d), SkBits2Float(0xc1fcea38));
4522 path.cubicTo(SkBits2Float(0x4220376c), SkBits2Float(0xc2450d7a), SkBits2Float(0x41a61f08), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
4523 path.close();
4524
4525 SkPath path1(path);
4526 path.reset();
4527 path.setFillType((SkPathFillType) 0);
4528 path.moveTo(SkBits2Float(0x4282b9a8), SkBits2Float(0x424c9dac));
4529 path.cubicTo(SkBits2Float(0x4238a98e), SkBits2Float(0x42975dcd), SkBits2Float(0x416d9db4), SkBits2Float(0x42aecc7f), SkBits2Float(0xc17bb856), SkBits2Float(0x42a2fd9a));
4530 path.cubicTo(SkBits2Float(0xc2394396), SkBits2Float(0x42972eb6), SkBits2Float(0xc28e09e8), SkBits2Float(0x42543e5a), SkBits2Float(0xc29f69c3), SkBits2Float(0x41b9307a));
4531 path.cubicTo(SkBits2Float(0xc2b0c99f), SkBits2Float(0xc0d86efe), SkBits2Float(0xc29f345f), SkBits2Float(0xc21c161b), SkBits2Float(0xc263c1d4), SkBits2Float(0xc2718f13));
4532 path.lineTo(SkBits2Float(0xc224a4cd), SkBits2Float(0xc22e9eef));
4533 path.cubicTo(SkBits2Float(0xc2662cd7), SkBits2Float(0xc1e1aab7), SkBits2Float(0xc27f98a3), SkBits2Float(0xc09c754c), SkBits2Float(0xc26679fe), SkBits2Float(0x4185df20));
4534 path.cubicTo(SkBits2Float(0xc24d5b58), SkBits2Float(0x42196dcb), SkBits2Float(0xc205ecef), SkBits2Float(0x425a93a6), SkBits2Float(0xc135f72f), SkBits2Float(0x426ba619));
4535 path.cubicTo(SkBits2Float(0x412bc560), SkBits2Float(0x427cb88a), SkBits2Float(0x42057da8), SkBits2Float(0x425ad7c5), SkBits2Float(0x423d0018), SkBits2Float(0x4213ea45));
4536 path.lineTo(SkBits2Float(0x4282b9a8), SkBits2Float(0x424c9dac));
4537 path.close();
4538
4539 SkPath path2(path);
4540 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4541 }
4542 // op end success 1
4543
battleOp168(skiatest::Reporter * reporter,const char * filename)4544 static void battleOp168(skiatest::Reporter* reporter, const char* filename) {
4545 SkPath path;
4546 path.setFillType((SkPathFillType) 0);
4547 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4548 path.cubicTo(SkBits2Float(0x41ea54b9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4261a7de), SkBits2Float(0xc2871f16), SkBits2Float(0x428ebc81), SkBits2Float(0xc2297f4d));
4549 path.cubicTo(SkBits2Float(0x42aca513), SkBits2Float(0xc18980da), SkBits2Float(0x42adc9a4), SkBits2Float(0x41604127), SkBits2Float(0x4291be57), SkBits2Float(0x421eee87));
4550 path.lineTo(SkBits2Float(0x4252b6a9), SkBits2Float(0x41e5c7e9));
4551 path.cubicTo(SkBits2Float(0x427b4260), SkBits2Float(0x41221c9f), SkBits2Float(0x42799b62), SkBits2Float(0xc146ccc2), SkBits2Float(0x424e5da6), SkBits2Float(0xc1f50e65));
4552 path.cubicTo(SkBits2Float(0x42231fea), SkBits2Float(0xc2435b34), SkBits2Float(0x41a9655c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3725ffa9), SkBits2Float(0xc26fffff));
4553 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4554 path.close();
4555
4556 SkPath path1(path);
4557 path.reset();
4558 path.setFillType((SkPathFillType) 0);
4559 path.moveTo(SkBits2Float(0x4291be57), SkBits2Float(0x421eee8a));
4560 path.cubicTo(SkBits2Float(0x428c4169), SkBits2Float(0x42330feb), SkBits2Float(0x4285bd57), SkBits2Float(0x4246005c), SkBits2Float(0x427c99ac), SkBits2Float(0x4257723d));
4561 path.lineTo(SkBits2Float(0x42369a46), SkBits2Float(0x421bbe89));
4562 path.cubicTo(SkBits2Float(0x42415bc7), SkBits2Float(0x420f2230), SkBits2Float(0x424ac771), SkBits2Float(0x4201714b), SkBits2Float(0x4252b6a9), SkBits2Float(0x41e5c7e9));
4563 path.lineTo(SkBits2Float(0x4291be57), SkBits2Float(0x421eee8a));
4564 path.close();
4565
4566 SkPath path2(path);
4567 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4568 }
4569 // op end success 1
4570
battleOp169(skiatest::Reporter * reporter,const char * filename)4571 static void battleOp169(skiatest::Reporter* reporter, const char* filename) {
4572 SkPath path;
4573 path.setFillType((SkPathFillType) 1);
4574 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc26fffff));
4575 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4576 path.cubicTo(SkBits2Float(0x41ea54b9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4261a7de), SkBits2Float(0xc2871f16), SkBits2Float(0x428ebc81), SkBits2Float(0xc2297f4d));
4577 path.cubicTo(SkBits2Float(0x42aca513), SkBits2Float(0xc18980da), SkBits2Float(0x42adc9a4), SkBits2Float(0x41604127), SkBits2Float(0x4291be57), SkBits2Float(0x421eee8a));
4578 path.cubicTo(SkBits2Float(0x428c4169), SkBits2Float(0x42330feb), SkBits2Float(0x4285bd57), SkBits2Float(0x4246005c), SkBits2Float(0x427c99ac), SkBits2Float(0x4257723d));
4579 path.lineTo(SkBits2Float(0x42369a46), SkBits2Float(0x421bbe89));
4580 path.cubicTo(SkBits2Float(0x42415bc7), SkBits2Float(0x420f2230), SkBits2Float(0x424ac771), SkBits2Float(0x4201714b), SkBits2Float(0x4252b6a9), SkBits2Float(0x41e5c7e9));
4581 path.cubicTo(SkBits2Float(0x427b4260), SkBits2Float(0x41221c9f), SkBits2Float(0x42799b62), SkBits2Float(0xc146ccc2), SkBits2Float(0x424e5da6), SkBits2Float(0xc1f50e65));
4582 path.cubicTo(SkBits2Float(0x42231fea), SkBits2Float(0xc2435b34), SkBits2Float(0x41a9655c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3725ffa9), SkBits2Float(0xc26fffff));
4583 path.close();
4584
4585 SkPath path1(path);
4586 path.reset();
4587 path.setFillType((SkPathFillType) 0);
4588 path.moveTo(SkBits2Float(0x427c99ad), SkBits2Float(0x4257723e));
4589 path.cubicTo(SkBits2Float(0x422a2459), SkBits2Float(0x429c0ff6), SkBits2Float(0x411ef0c1), SkBits2Float(0x42b0a109), SkBits2Float(0xc1a68a7f), SkBits2Float(0x42a0b1a2));
4590 path.cubicTo(SkBits2Float(0xc24e46af), SkBits2Float(0x4290c23b), SkBits2Float(0xc296269a), SkBits2Float(0x423e3c04), SkBits2Float(0xc2a2b82b), SkBits2Float(0x41835b51));
4591 path.cubicTo(SkBits2Float(0xc2af49bc), SkBits2Float(0xc16b82d9), SkBits2Float(0xc2973524), SkBits2Float(0xc23adb29), SkBits2Float(0xc24965c6), SkBits2Float(0xc283f801));
4592 path.lineTo(SkBits2Float(0xc21196ae), SkBits2Float(0xc23ecc58));
4593 path.cubicTo(SkBits2Float(0xc25a9cfe), SkBits2Float(0xc20713a1), SkBits2Float(0xc27d6da1), SkBits2Float(0xc12a3fcc), SkBits2Float(0xc26b41bb), SkBits2Float(0x413de9a9));
4594 path.cubicTo(SkBits2Float(0xc25915d3), SkBits2Float(0x420984c8), SkBits2Float(0xc2151d75), SkBits2Float(0x42514a1b), SkBits2Float(0xc170c819), SkBits2Float(0x4268540a));
4595 path.cubicTo(SkBits2Float(0x40e5cb46), SkBits2Float(0x427f5dfa), SkBits2Float(0x41f5fd0c), SkBits2Float(0x4261a1d8), SkBits2Float(0x42369a4a), SkBits2Float(0x421bbe87));
4596 path.lineTo(SkBits2Float(0x427c99ad), SkBits2Float(0x4257723e));
4597 path.close();
4598
4599 SkPath path2(path);
4600 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4601 }
4602 // op end success 1
4603
battleOp170(skiatest::Reporter * reporter,const char * filename)4604 static void battleOp170(skiatest::Reporter* reporter, const char* filename) {
4605 SkPath path;
4606 path.setFillType((SkPathFillType) 0);
4607 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4608 path.cubicTo(SkBits2Float(0x41ef3488), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4265f5fc), SkBits2Float(0xc285d5a4), SkBits2Float(0x429072a6), SkBits2Float(0xc2239841));
4609 path.cubicTo(SkBits2Float(0x42adea4e), SkBits2Float(0xc16e14e5), SkBits2Float(0x42ad1da2), SkBits2Float(0x41886b20), SkBits2Float(0x428e5adb), SkBits2Float(0x422ac68e));
4610 path.lineTo(SkBits2Float(0x424dd078), SkBits2Float(0x41f6e790));
4611 path.cubicTo(SkBits2Float(0x427a49b4), SkBits2Float(0x41453b4b), SkBits2Float(0x427b719d), SkBits2Float(0xc12c1b6e), SkBits2Float(0x4250d71f), SkBits2Float(0xc1ec85c5));
4612 path.cubicTo(SkBits2Float(0x42263ca0), SkBits2Float(0xc2417eea), SkBits2Float(0x41aceb63), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
4613 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4614 path.close();
4615
4616 SkPath path1(path);
4617 path.reset();
4618 path.setFillType((SkPathFillType) 0);
4619 path.moveTo(SkBits2Float(0x428e5adb), SkBits2Float(0x422ac690));
4620 path.cubicTo(SkBits2Float(0x42885732), SkBits2Float(0x423ed443), SkBits2Float(0x428148a8), SkBits2Float(0x42518e43), SkBits2Float(0x42729aa0), SkBits2Float(0x4262a4bd));
4621 path.lineTo(SkBits2Float(0x422f605c), SkBits2Float(0x4223d6b5));
4622 path.cubicTo(SkBits2Float(0x423aea98), SkBits2Float(0x42177c70), SkBits2Float(0x42451e76), SkBits2Float(0x4209f2e4), SkBits2Float(0x424dd078), SkBits2Float(0x41f6e792));
4623 path.lineTo(SkBits2Float(0x428e5adb), SkBits2Float(0x422ac690));
4624 path.close();
4625
4626 SkPath path2(path);
4627 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4628 }
4629 // op end success 1
4630
battleOp171(skiatest::Reporter * reporter,const char * filename)4631 static void battleOp171(skiatest::Reporter* reporter, const char* filename) {
4632 SkPath path;
4633 path.setFillType((SkPathFillType) 1);
4634 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
4635 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4636 path.cubicTo(SkBits2Float(0x41ef3488), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4265f5fc), SkBits2Float(0xc285d5a4), SkBits2Float(0x429072a6), SkBits2Float(0xc2239841));
4637 path.cubicTo(SkBits2Float(0x42adea4e), SkBits2Float(0xc16e14e5), SkBits2Float(0x42ad1da2), SkBits2Float(0x41886b20), SkBits2Float(0x428e5adb), SkBits2Float(0x422ac690));
4638 path.cubicTo(SkBits2Float(0x42885732), SkBits2Float(0x423ed443), SkBits2Float(0x428148a8), SkBits2Float(0x42518e43), SkBits2Float(0x42729aa0), SkBits2Float(0x4262a4bd));
4639 path.lineTo(SkBits2Float(0x422f605c), SkBits2Float(0x4223d6b5));
4640 path.cubicTo(SkBits2Float(0x423aea98), SkBits2Float(0x42177c70), SkBits2Float(0x42451e76), SkBits2Float(0x4209f2e4), SkBits2Float(0x424dd078), SkBits2Float(0x41f6e790));
4641 path.cubicTo(SkBits2Float(0x427a49b4), SkBits2Float(0x41453b4b), SkBits2Float(0x427b719d), SkBits2Float(0xc12c1b6e), SkBits2Float(0x4250d71f), SkBits2Float(0xc1ec85c5));
4642 path.cubicTo(SkBits2Float(0x42263ca0), SkBits2Float(0xc2417eea), SkBits2Float(0x41aceb63), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
4643 path.close();
4644
4645 SkPath path1(path);
4646 path.reset();
4647 path.setFillType((SkPathFillType) 0);
4648 path.moveTo(SkBits2Float(0x42729aa1), SkBits2Float(0x4262a4be));
4649 path.cubicTo(SkBits2Float(0x421a0aa1), SkBits2Float(0x42a0b8ab), SkBits2Float(0x4092ff14), SkBits2Float(0x42b1fc82), SkBits2Float(0xc1d17709), SkBits2Float(0x429d861f));
4650 path.cubicTo(SkBits2Float(0xc263d6eb), SkBits2Float(0x42890fbc), SkBits2Float(0xc29dea71), SkBits2Float(0x42253dbf), SkBits2Float(0xc2a5016a), SkBits2Float(0x4111261a));
4651 path.cubicTo(SkBits2Float(0xc2ac1862), SkBits2Float(0xc1b95567), SkBits2Float(0xc28cface), SkBits2Float(0xc25a1117), SkBits2Float(0xc22aafa6), SkBits2Float(0xc28e61ba));
4652 path.lineTo(SkBits2Float(0xc1f6c679), SkBits2Float(0xc24dda63));
4653 path.cubicTo(SkBits2Float(0xc24bd376), SkBits2Float(0xc21da377), SkBits2Float(0xc278cff1), SkBits2Float(0xc185f9db), SkBits2Float(0xc26e8fe1), SkBits2Float(0x40d1da84));
4654 path.cubicTo(SkBits2Float(0xc2644fd1), SkBits2Float(0x41eee71d), SkBits2Float(0xc224b3fc), SkBits2Float(0x4246293b), SkBits2Float(0xc1976b90), SkBits2Float(0x4263becd));
4655 path.cubicTo(SkBits2Float(0x405486c0), SkBits2Float(0x4280aa2f), SkBits2Float(0x41deb5f2), SkBits2Float(0x42685e3e), SkBits2Float(0x422f605e), SkBits2Float(0x4223d6b6));
4656 path.lineTo(SkBits2Float(0x42729aa1), SkBits2Float(0x4262a4be));
4657 path.close();
4658
4659 SkPath path2(path);
4660 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4661 }
4662 // op end success 1
4663
battleOp172(skiatest::Reporter * reporter,const char * filename)4664 static void battleOp172(skiatest::Reporter* reporter, const char* filename) {
4665 SkPath path;
4666 path.setFillType((SkPathFillType) 0);
4667 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4668 path.cubicTo(SkBits2Float(0x41f30c96), SkBits2Float(0xc2a60000), SkBits2Float(0x426956a5), SkBits2Float(0xc284cd4a), SkBits2Float(0x4291c05e), SkBits2Float(0xc21ee718));
4669 path.cubicTo(SkBits2Float(0x42aed56a), SkBits2Float(0xc150ce71), SkBits2Float(0x42ac7181), SkBits2Float(0x419b8107), SkBits2Float(0x428b8516), SkBits2Float(0x4233e422));
4670 path.lineTo(SkBits2Float(0x4249b729), SkBits2Float(0x42020ab3));
4671 path.cubicTo(SkBits2Float(0x427950d3), SkBits2Float(0x4160d339), SkBits2Float(0x427cc584), SkBits2Float(0xc116f1c4), SkBits2Float(0x4252b998), SkBits2Float(0xc1e5bd26));
4672 path.cubicTo(SkBits2Float(0x4228adad), SkBits2Float(0xc24000b5), SkBits2Float(0x41afb2be), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
4673 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4674 path.close();
4675
4676 SkPath path1(path);
4677 path.reset();
4678 path.setFillType((SkPathFillType) 0);
4679 path.moveTo(SkBits2Float(0x428b8516), SkBits2Float(0x4233e422));
4680 path.cubicTo(SkBits2Float(0x4285165c), SkBits2Float(0x4247d8d0), SkBits2Float(0x427b34bd), SkBits2Float(0x425a5d74), SkBits2Float(0x426a6401), SkBits2Float(0x426b20b1));
4681 path.lineTo(SkBits2Float(0x42297063), SkBits2Float(0x4229f8c9));
4682 path.cubicTo(SkBits2Float(0x42359840), SkBits2Float(0x421ddab1), SkBits2Float(0x42406a5a), SkBits2Float(0x421077b9), SkBits2Float(0x4249b72b), SkBits2Float(0x42020ab4));
4683 path.lineTo(SkBits2Float(0x428b8516), SkBits2Float(0x4233e422));
4684 path.close();
4685
4686 SkPath path2(path);
4687 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4688 }
4689 // op end success 1
4690
battleOp173(skiatest::Reporter * reporter,const char * filename)4691 static void battleOp173(skiatest::Reporter* reporter, const char* filename) {
4692 SkPath path;
4693 path.setFillType((SkPathFillType) 1);
4694 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4695 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4696 path.cubicTo(SkBits2Float(0x41f30c96), SkBits2Float(0xc2a60000), SkBits2Float(0x426956a5), SkBits2Float(0xc284cd4a), SkBits2Float(0x4291c05e), SkBits2Float(0xc21ee718));
4697 path.cubicTo(SkBits2Float(0x42aed56a), SkBits2Float(0xc150ce71), SkBits2Float(0x42ac7181), SkBits2Float(0x419b8107), SkBits2Float(0x428b8516), SkBits2Float(0x4233e422));
4698 path.cubicTo(SkBits2Float(0x4285165c), SkBits2Float(0x4247d8d0), SkBits2Float(0x427b34bd), SkBits2Float(0x425a5d74), SkBits2Float(0x426a6401), SkBits2Float(0x426b20b1));
4699 path.lineTo(SkBits2Float(0x42297063), SkBits2Float(0x4229f8c9));
4700 path.cubicTo(SkBits2Float(0x42359840), SkBits2Float(0x421ddab1), SkBits2Float(0x42406a5a), SkBits2Float(0x421077b9), SkBits2Float(0x4249b72b), SkBits2Float(0x42020ab4));
4701 path.lineTo(SkBits2Float(0x4249b729), SkBits2Float(0x42020ab3));
4702 path.cubicTo(SkBits2Float(0x427950d3), SkBits2Float(0x4160d339), SkBits2Float(0x427cc584), SkBits2Float(0xc116f1c4), SkBits2Float(0x4252b998), SkBits2Float(0xc1e5bd26));
4703 path.cubicTo(SkBits2Float(0x4228adad), SkBits2Float(0xc24000b5), SkBits2Float(0x41afb2be), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4704 path.close();
4705
4706 SkPath path1(path);
4707 path.reset();
4708 path.setFillType((SkPathFillType) 0);
4709 path.moveTo(SkBits2Float(0x426a6401), SkBits2Float(0x426b20b0));
4710 path.cubicTo(SkBits2Float(0x420d0644), SkBits2Float(0x42a419c2), SkBits2Float(0x3eb79d8f), SkBits2Float(0x42b29b69), SkBits2Float(0xc1f292a7), SkBits2Float(0x429a86c6));
4711 path.cubicTo(SkBits2Float(0xc27401e4), SkBits2Float(0x42827223), SkBits2Float(0xc2a34d81), SkBits2Float(0x4210aea0), SkBits2Float(0xc2a5dfaf), SkBits2Float(0x404f3106));
4712 path.cubicTo(SkBits2Float(0xc2a871dd), SkBits2Float(0xc1ed90fa), SkBits2Float(0xc283ccf3), SkBits2Float(0xc27113da), SkBits2Float(0xc21101fe), SkBits2Float(0xc2955440));
4713 path.lineTo(SkBits2Float(0xc1d1a65c), SkBits2Float(0xc257e5c3));
4714 path.cubicTo(SkBits2Float(0xc23e8e16), SkBits2Float(0xc22e45d9), SkBits2Float(0xc27388d2), SkBits2Float(0xc1abbc0d), SkBits2Float(0xc26fd138), SkBits2Float(0x4015c6fe));
4715 path.cubicTo(SkBits2Float(0xc26c199f), SkBits2Float(0x41d12dcc), SkBits2Float(0xc2306400), SkBits2Float(0x423c98a5), SkBits2Float(0xc1af5a7e), SkBits2Float(0x425f695f));
4716 path.cubicTo(SkBits2Float(0x3e84bf70), SkBits2Float(0x42811d0c), SkBits2Float(0x41cbe40c), SkBits2Float(0x426d40fa), SkBits2Float(0x42297064), SkBits2Float(0x4229f8cc));
4717 path.lineTo(SkBits2Float(0x426a6401), SkBits2Float(0x426b20b0));
4718 path.close();
4719
4720 SkPath path2(path);
4721 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4722 }
4723 // op end success 1
4724
battleOp174(skiatest::Reporter * reporter,const char * filename)4725 static void battleOp174(skiatest::Reporter* reporter, const char* filename) {
4726 SkPath path;
4727 path.setFillType((SkPathFillType) 0);
4728 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4729 path.cubicTo(SkBits2Float(0x41f67553), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426c5214), SkBits2Float(0xc283df7d), SkBits2Float(0x4292df93), SkBits2Float(0xc21ab724));
4730 path.cubicTo(SkBits2Float(0x42af961c), SkBits2Float(0xc136bd38), SkBits2Float(0x42abbe10), SkBits2Float(0x41ac5dd5), SkBits2Float(0x4288e395), SkBits2Float(0x423bcd53));
4731 path.lineTo(SkBits2Float(0x4245e96c), SkBits2Float(0x4207c2b1));
4732 path.cubicTo(SkBits2Float(0x42784d66), SkBits2Float(0x41793464), SkBits2Float(0x427ddc1f), SkBits2Float(0xc10419c2), SkBits2Float(0x425458d8), SkBits2Float(0xc1dfaf58));
4733 path.cubicTo(SkBits2Float(0x422ad590), SkBits2Float(0xc23ea8e8), SkBits2Float(0x41b229a4), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
4734 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4735 path.close();
4736
4737 SkPath path1(path);
4738 path.reset();
4739 path.setFillType((SkPathFillType) 0);
4740 path.moveTo(SkBits2Float(0x4288e396), SkBits2Float(0x423bcd52));
4741 path.cubicTo(SkBits2Float(0x42821571), SkBits2Float(0x424fa4b8), SkBits2Float(0x427470be), SkBits2Float(0x4261f24c), SkBits2Float(0x4262dfb6), SkBits2Float(0x4272637b));
4742 path.lineTo(SkBits2Float(0x42240156), SkBits2Float(0x422f387f));
4743 path.cubicTo(SkBits2Float(0x4230b436), SkBits2Float(0x422355b8), SkBits2Float(0x423c12ab), SkBits2Float(0x42161a8d), SkBits2Float(0x4245e96e), SkBits2Float(0x4207c2b2));
4744 path.lineTo(SkBits2Float(0x4288e396), SkBits2Float(0x423bcd52));
4745 path.close();
4746
4747 SkPath path2(path);
4748 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4749 }
4750 // op end success 1
4751
battleOp175(skiatest::Reporter * reporter,const char * filename)4752 static void battleOp175(skiatest::Reporter* reporter, const char* filename) {
4753 SkPath path;
4754 path.setFillType((SkPathFillType) 1);
4755 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4756 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4757 path.cubicTo(SkBits2Float(0x41f67553), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426c5214), SkBits2Float(0xc283df7d), SkBits2Float(0x4292df93), SkBits2Float(0xc21ab724));
4758 path.cubicTo(SkBits2Float(0x42af961c), SkBits2Float(0xc136bd38), SkBits2Float(0x42abbe10), SkBits2Float(0x41ac5dd5), SkBits2Float(0x4288e396), SkBits2Float(0x423bcd52));
4759 path.cubicTo(SkBits2Float(0x42821571), SkBits2Float(0x424fa4b8), SkBits2Float(0x427470be), SkBits2Float(0x4261f24c), SkBits2Float(0x4262dfb6), SkBits2Float(0x4272637b));
4760 path.lineTo(SkBits2Float(0x42240156), SkBits2Float(0x422f387f));
4761 path.cubicTo(SkBits2Float(0x4230b436), SkBits2Float(0x422355b8), SkBits2Float(0x423c12ab), SkBits2Float(0x42161a8d), SkBits2Float(0x4245e96e), SkBits2Float(0x4207c2b2));
4762 path.lineTo(SkBits2Float(0x4245e96c), SkBits2Float(0x4207c2b1));
4763 path.cubicTo(SkBits2Float(0x42784d66), SkBits2Float(0x41793464), SkBits2Float(0x427ddc1f), SkBits2Float(0xc10419c2), SkBits2Float(0x425458d8), SkBits2Float(0xc1dfaf58));
4764 path.cubicTo(SkBits2Float(0x422ad590), SkBits2Float(0xc23ea8e8), SkBits2Float(0x41b229a4), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
4765 path.close();
4766
4767 SkPath path1(path);
4768 path.reset();
4769 path.setFillType((SkPathFillType) 0);
4770 path.moveTo(SkBits2Float(0x4262dfb7), SkBits2Float(0x4272637c));
4771 path.cubicTo(SkBits2Float(0x4201435c), SkBits2Float(0x42a6e035), SkBits2Float(0xc05a052a), SkBits2Float(0x42b2d330), SkBits2Float(0xc207a774), SkBits2Float(0x429782c3));
4772 path.cubicTo(SkBits2Float(0xc280d74a), SkBits2Float(0x427864aa), SkBits2Float(0xc2a78489), SkBits2Float(0x41fbcc10), SkBits2Float(0xc2a5f467), SkBits2Float(0xbff86670));
4773 path.cubicTo(SkBits2Float(0xc2a46445), SkBits2Float(0xc20d6c6d), SkBits2Float(0xc275c9b5), SkBits2Float(0xc2821580), SkBits2Float(0xc1f2ade6), SkBits2Float(0xc29a8413));
4774 path.lineTo(SkBits2Float(0xc1af6e4e), SkBits2Float(0xc25f6582));
4775 path.cubicTo(SkBits2Float(0xc231ad90), SkBits2Float(0xc23c12bd), SkBits2Float(0xc26dacb3), SkBits2Float(0xc1cc77b7), SkBits2Float(0xc26fef30), SkBits2Float(0xbfb390a5));
4776 path.cubicTo(SkBits2Float(0xc27231ae), SkBits2Float(0x41b605a0), SkBits2Float(0xc23a46a0), SkBits2Float(0x42338faf), SkBits2Float(0xc1c42047), SkBits2Float(0x425b0d36));
4777 path.cubicTo(SkBits2Float(0xc01d9a6d), SkBits2Float(0x4281455e), SkBits2Float(0x41bae2f1), SkBits2Float(0x42714420), SkBits2Float(0x42240157), SkBits2Float(0x422f387f));
4778 path.lineTo(SkBits2Float(0x4262dfb7), SkBits2Float(0x4272637c));
4779 path.close();
4780
4781 SkPath path2(path);
4782 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4783 }
4784 // op end success 1
4785
battleOp176(skiatest::Reporter * reporter,const char * filename)4786 static void battleOp176(skiatest::Reporter* reporter, const char* filename) {
4787 SkPath path;
4788 path.setFillType((SkPathFillType) 0);
4789 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4790 path.cubicTo(SkBits2Float(0x41f9cdf3), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426f3c43), SkBits2Float(0xc282f30b), SkBits2Float(0x4293f176), SkBits2Float(0xc2169536));
4791 path.cubicTo(SkBits2Float(0x42b044ca), SkBits2Float(0xc11d115b), SkBits2Float(0x42aaf59e), SkBits2Float(0x41bcd986), SkBits2Float(0x428633ff), SkBits2Float(0x42436703));
4792 path.lineTo(SkBits2Float(0x42420751), SkBits2Float(0x420d4138));
4793 path.cubicTo(SkBits2Float(0x42772b98), SkBits2Float(0x41888496), SkBits2Float(0x427ed8af), SkBits2Float(0xc0e315f7), SkBits2Float(0x4255e4d4), SkBits2Float(0xc1d9b5cc));
4794 path.cubicTo(SkBits2Float(0x422cf0fb), SkBits2Float(0xc23d530d), SkBits2Float(0x41b494e9), SkBits2Float(0xc2700000), SkBits2Float(0x3743ffa9), SkBits2Float(0xc2700000));
4795 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4796 path.close();
4797
4798 SkPath path1(path);
4799 path.reset();
4800 path.setFillType((SkPathFillType) 0);
4801 path.moveTo(SkBits2Float(0x428633ff), SkBits2Float(0x42436705));
4802 path.cubicTo(SkBits2Float(0x427e0fd0), SkBits2Float(0x42571b29), SkBits2Float(0x426d975d), SkBits2Float(0x42692b9b), SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c1));
4803 path.lineTo(SkBits2Float(0x421e8652), SkBits2Float(0x423431b3));
4804 path.cubicTo(SkBits2Float(0x422bc0b3), SkBits2Float(0x42288e8e), SkBits2Float(0x4237a8bb), SkBits2Float(0x421b7f95), SkBits2Float(0x42420752), SkBits2Float(0x420d4138));
4805 path.lineTo(SkBits2Float(0x428633ff), SkBits2Float(0x42436705));
4806 path.close();
4807
4808 SkPath path2(path);
4809 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4810 }
4811 // op end success 1
4812
battleOp177(skiatest::Reporter * reporter,const char * filename)4813 static void battleOp177(skiatest::Reporter* reporter, const char* filename) {
4814 SkPath path;
4815 path.setFillType((SkPathFillType) 1);
4816 path.moveTo(SkBits2Float(0x3743ffa9), SkBits2Float(0xc2700000));
4817 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4818 path.cubicTo(SkBits2Float(0x41f9cdf3), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426f3c43), SkBits2Float(0xc282f30b), SkBits2Float(0x4293f176), SkBits2Float(0xc2169536));
4819 path.cubicTo(SkBits2Float(0x42b044ca), SkBits2Float(0xc11d115b), SkBits2Float(0x42aaf59e), SkBits2Float(0x41bcd986), SkBits2Float(0x428633ff), SkBits2Float(0x42436705));
4820 path.cubicTo(SkBits2Float(0x427e0fd0), SkBits2Float(0x42571b29), SkBits2Float(0x426d975d), SkBits2Float(0x42692b9b), SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c1));
4821 path.lineTo(SkBits2Float(0x421e8652), SkBits2Float(0x423431b3));
4822 path.cubicTo(SkBits2Float(0x422bc0b3), SkBits2Float(0x42288e8e), SkBits2Float(0x4237a8bb), SkBits2Float(0x421b7f95), SkBits2Float(0x42420751), SkBits2Float(0x420d4138));
4823 path.cubicTo(SkBits2Float(0x42772b98), SkBits2Float(0x41888496), SkBits2Float(0x427ed8af), SkBits2Float(0xc0e315f7), SkBits2Float(0x4255e4d4), SkBits2Float(0xc1d9b5cc));
4824 path.cubicTo(SkBits2Float(0x422cf0fb), SkBits2Float(0xc23d530d), SkBits2Float(0x41b494e9), SkBits2Float(0xc2700000), SkBits2Float(0x3743ffa9), SkBits2Float(0xc2700000));
4825 path.close();
4826
4827 SkPath path1(path);
4828 path.reset();
4829 path.setFillType((SkPathFillType) 0);
4830 path.moveTo(SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c0));
4831 path.cubicTo(SkBits2Float(0x41eb12b8), SkBits2Float(0x42a964d5), SkBits2Float(0xc0e3546a), SkBits2Float(0x42b2bc1c), SkBits2Float(0xc2157060), SkBits2Float(0x42943ba4));
4832 path.cubicTo(SkBits2Float(0xc2873b19), SkBits2Float(0x426b7658), SkBits2Float(0xc2ab209f), SkBits2Float(0x41d60b1d), SkBits2Float(0xc2a5685b), SkBits2Float(0xc0e02f3c));
4833 path.cubicTo(SkBits2Float(0xc29fb018), SkBits2Float(0xc223115c), SkBits2Float(0xc263001e), SkBits2Float(0xc28acd07), SkBits2Float(0xc1c2e1a0), SkBits2Float(0xc29eb07c));
4834 path.lineTo(SkBits2Float(0xc18ce0d1), SkBits2Float(0xc2656e32));
4835 path.cubicTo(SkBits2Float(0xc22418c2), SkBits2Float(0xc248ad0a), SkBits2Float(0xc266dfbc), SkBits2Float(0xc1ebc2b6), SkBits2Float(0xc26f24bb), SkBits2Float(0xc0a20f94));
4836 path.cubicTo(SkBits2Float(0xc27769ba), SkBits2Float(0x419abaee), SkBits2Float(0xc24383ac), SkBits2Float(0x422a36b0), SkBits2Float(0xc1d80e5c), SkBits2Float(0x4256500a));
4837 path.cubicTo(SkBits2Float(0xc0a45587), SkBits2Float(0x428134b2), SkBits2Float(0x41a9eeb8), SkBits2Float(0x4274e820), SkBits2Float(0x421e8655), SkBits2Float(0x423431b1));
4838 path.lineTo(SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c0));
4839 path.close();
4840
4841 SkPath path2(path);
4842 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4843 }
4844 // op end success 1
4845
battleOp178(skiatest::Reporter * reporter,const char * filename)4846 static void battleOp178(skiatest::Reporter* reporter, const char* filename) {
4847 SkPath path;
4848 path.setFillType((SkPathFillType) 0);
4849 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4850 path.cubicTo(SkBits2Float(0x41fc5f30), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427176a0), SkBits2Float(0xc2823b95), SkBits2Float(0x4294be35), SkBits2Float(0xc21365c9));
4851 path.cubicTo(SkBits2Float(0x42b0c118), SkBits2Float(0xc1095198), SkBits2Float(0x42aa4b8f), SkBits2Float(0x41c9721a), SkBits2Float(0x42841312), SkBits2Float(0x42491ec0));
4852 path.lineTo(SkBits2Float(0x423ef37b), SkBits2Float(0x42116356));
4853 path.cubicTo(SkBits2Float(0x427635bc), SkBits2Float(0x41919f96), SkBits2Float(0x427f8c66), SkBits2Float(0xc0c68887), SkBits2Float(0x42570cd6), SkBits2Float(0xc1d51ae4));
4854 path.cubicTo(SkBits2Float(0x422e8d45), SkBits2Float(0xc23c49d3), SkBits2Float(0x41b66ffd), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc26fffff));
4855 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4856 path.close();
4857
4858 SkPath path1(path);
4859 path.reset();
4860 path.setFillType((SkPathFillType) 0);
4861 path.moveTo(SkBits2Float(0x42841313), SkBits2Float(0x42491ebf));
4862 path.cubicTo(SkBits2Float(0x42793d8e), SkBits2Float(0x425cb36e), SkBits2Float(0x4268336d), SkBits2Float(0x426e9032), SkBits2Float(0x4255582b), SkBits2Float(0x427e60c5));
4863 path.lineTo(SkBits2Float(0x421a3990), SkBits2Float(0x4237e342));
4864 path.cubicTo(SkBits2Float(0x4227db27), SkBits2Float(0x422c7494), SkBits2Float(0x42342c7f), SkBits2Float(0x421f8af7), SkBits2Float(0x423ef37c), SkBits2Float(0x42116357));
4865 path.lineTo(SkBits2Float(0x42841313), SkBits2Float(0x42491ebf));
4866 path.close();
4867
4868 SkPath path2(path);
4869 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4870 }
4871 // op end success 1
4872
battleOp179(skiatest::Reporter * reporter,const char * filename)4873 static void battleOp179(skiatest::Reporter* reporter, const char* filename) {
4874 SkPath path;
4875 path.setFillType((SkPathFillType) 1);
4876 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc26fffff));
4877 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4878 path.cubicTo(SkBits2Float(0x41fc5f30), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427176a0), SkBits2Float(0xc2823b95), SkBits2Float(0x4294be35), SkBits2Float(0xc21365c9));
4879 path.cubicTo(SkBits2Float(0x42b0c118), SkBits2Float(0xc1095198), SkBits2Float(0x42aa4b8f), SkBits2Float(0x41c9721a), SkBits2Float(0x42841313), SkBits2Float(0x42491ebf));
4880 path.cubicTo(SkBits2Float(0x42793d8e), SkBits2Float(0x425cb36e), SkBits2Float(0x4268336d), SkBits2Float(0x426e9032), SkBits2Float(0x4255582b), SkBits2Float(0x427e60c5));
4881 path.lineTo(SkBits2Float(0x421a3990), SkBits2Float(0x4237e342));
4882 path.cubicTo(SkBits2Float(0x4227db27), SkBits2Float(0x422c7494), SkBits2Float(0x42342c7f), SkBits2Float(0x421f8af7), SkBits2Float(0x423ef37b), SkBits2Float(0x42116356));
4883 path.cubicTo(SkBits2Float(0x427635bc), SkBits2Float(0x41919f96), SkBits2Float(0x427f8c66), SkBits2Float(0xc0c68887), SkBits2Float(0x42570cd6), SkBits2Float(0xc1d51ae4));
4884 path.cubicTo(SkBits2Float(0x422e8d45), SkBits2Float(0xc23c49d3), SkBits2Float(0x41b66ffd), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc26fffff));
4885 path.close();
4886
4887 SkPath path1(path);
4888 path.reset();
4889 path.setFillType((SkPathFillType) 0);
4890 path.moveTo(SkBits2Float(0x4255582a), SkBits2Float(0x427e60c6));
4891 path.cubicTo(SkBits2Float(0x41d8da26), SkBits2Float(0x42ab2f9f), SkBits2Float(0xc11f0392), SkBits2Float(0x42b2763a), SkBits2Float(0xc21fc8f1), SkBits2Float(0x4291829a));
4892 path.cubicTo(SkBits2Float(0xc28be87e), SkBits2Float(0x42611df4), SkBits2Float(0xc2ad8941), SkBits2Float(0x41b88f93), SkBits2Float(0xc2a49219), SkBits2Float(0xc12de56c));
4893 path.cubicTo(SkBits2Float(0xc29b9af2), SkBits2Float(0xc2333a80), SkBits2Float(0xc253c58e), SkBits2Float(0xc2910614), SkBits2Float(0xc19d7dc6), SkBits2Float(0xc2a14359));
4894 path.lineTo(SkBits2Float(0xc163b2c9), SkBits2Float(0xc26926c4));
4895 path.cubicTo(SkBits2Float(0xc2191685), SkBits2Float(0xc251ac40), SkBits2Float(0xc260f8ae), SkBits2Float(0xc201900e), SkBits2Float(0xc26deef7), SkBits2Float(0xc0fb6a70));
4896 path.cubicTo(SkBits2Float(0xc27ae541), SkBits2Float(0x41856ae3), SkBits2Float(0xc24a46d8), SkBits2Float(0x4222bc35), SkBits2Float(0xc1e7039a), SkBits2Float(0x42526049));
4897 path.cubicTo(SkBits2Float(0xc0e5e60c), SkBits2Float(0x4281022e), SkBits2Float(0x419cc2c4), SkBits2Float(0x42777f70), SkBits2Float(0x421a3996), SkBits2Float(0x4237e33e));
4898 path.lineTo(SkBits2Float(0x4255582a), SkBits2Float(0x427e60c6));
4899 path.close();
4900
4901 SkPath path2(path);
4902 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4903 }
4904 // op end success 1
4905
battleOp180(skiatest::Reporter * reporter,const char * filename)4906 static void battleOp180(skiatest::Reporter* reporter, const char* filename) {
4907 SkPath path;
4908 path.setFillType((SkPathFillType) 0);
4909 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4910 path.cubicTo(SkBits2Float(0x41fed5d1), SkBits2Float(0xc2a60000), SkBits2Float(0x4273981d), SkBits2Float(0xc28189e8), SkBits2Float(0x42957e40), SkBits2Float(0xc210547e));
4911 path.cubicTo(SkBits2Float(0x42b13073), SkBits2Float(0xc0eca961), SkBits2Float(0x42a99b35), SkBits2Float(0x41d57c6c), SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d3));
4912 path.lineTo(SkBits2Float(0x423beb8b), SkBits2Float(0x421548fc));
4913 path.cubicTo(SkBits2Float(0x427536c2), SkBits2Float(0x419a53c7), SkBits2Float(0x428016af), SkBits2Float(0xc0ab14a9), SkBits2Float(0x4258227d), SkBits2Float(0xc1d0ab83));
4914 path.cubicTo(SkBits2Float(0x4230179a), SkBits2Float(0xc23b48ee), SkBits2Float(0x41b837da), SkBits2Float(0xc2700002), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
4915 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4916 path.close();
4917
4918 SkPath path1(path);
4919 path.reset();
4920 path.setFillType((SkPathFillType) 0);
4921 path.moveTo(SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d5));
4922 path.cubicTo(SkBits2Float(0x4274817d), SkBits2Float(0x4261f5b7), SkBits2Float(0x4262ebfa), SkBits2Float(0x42739d02), SkBits2Float(0x424f88b8), SkBits2Float(0x428191ef));
4923 path.lineTo(SkBits2Float(0x4216064f), SkBits2Float(0x423b5489));
4924 path.cubicTo(SkBits2Float(0x42240a35), SkBits2Float(0x42301b25), SkBits2Float(0x4230c051), SkBits2Float(0x4223582f), SkBits2Float(0x423beb8c), SkBits2Float(0x421548fc));
4925 path.lineTo(SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d5));
4926 path.close();
4927
4928 SkPath path2(path);
4929 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4930 }
4931 // op end success 1
4932
battleOp181(skiatest::Reporter * reporter,const char * filename)4933 static void battleOp181(skiatest::Reporter* reporter, const char* filename) {
4934 SkPath path;
4935 path.setFillType((SkPathFillType) 1);
4936 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
4937 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4938 path.cubicTo(SkBits2Float(0x41fed5d1), SkBits2Float(0xc2a60000), SkBits2Float(0x4273981d), SkBits2Float(0xc28189e8), SkBits2Float(0x42957e40), SkBits2Float(0xc210547e));
4939 path.cubicTo(SkBits2Float(0x42b13073), SkBits2Float(0xc0eca961), SkBits2Float(0x42a99b35), SkBits2Float(0x41d57c6c), SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d5));
4940 path.cubicTo(SkBits2Float(0x4274817d), SkBits2Float(0x4261f5b7), SkBits2Float(0x4262ebfa), SkBits2Float(0x42739d02), SkBits2Float(0x424f88b8), SkBits2Float(0x428191ef));
4941 path.lineTo(SkBits2Float(0x4216064f), SkBits2Float(0x423b5489));
4942 path.cubicTo(SkBits2Float(0x42240a35), SkBits2Float(0x42301b25), SkBits2Float(0x4230c051), SkBits2Float(0x4223582f), SkBits2Float(0x423beb8b), SkBits2Float(0x421548fc));
4943 path.cubicTo(SkBits2Float(0x427536c2), SkBits2Float(0x419a53c7), SkBits2Float(0x428016af), SkBits2Float(0xc0ab14a9), SkBits2Float(0x4258227d), SkBits2Float(0xc1d0ab83));
4944 path.cubicTo(SkBits2Float(0x4230179a), SkBits2Float(0xc23b48ee), SkBits2Float(0x41b837da), SkBits2Float(0xc2700002), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
4945 path.close();
4946
4947 SkPath path1(path);
4948 path.reset();
4949 path.setFillType((SkPathFillType) 0);
4950 path.moveTo(SkBits2Float(0x424f88ba), SkBits2Float(0x428191f0));
4951 path.cubicTo(SkBits2Float(0x41c732b7), SkBits2Float(0x42acca52), SkBits2Float(0xc14a7268), SkBits2Float(0x42b208b4), SkBits2Float(0xc22982dc), SkBits2Float(0x428ebb75));
4952 path.cubicTo(SkBits2Float(0xc2903490), SkBits2Float(0x4256dc6c), SkBits2Float(0xc2af8c6f), SkBits2Float(0x419be833), SkBits2Float(0xc2a36e37), SkBits2Float(0xc168c0a6));
4953 path.cubicTo(SkBits2Float(0xc2974fff), SkBits2Float(0xc242546a), SkBits2Float(0xc2448acf), SkBits2Float(0xc29698ac), SkBits2Float(0xc17253d7), SkBits2Float(0xc2a33682));
4954 path.lineTo(SkBits2Float(0xc12f2d38), SkBits2Float(0xc26bf872));
4955 path.cubicTo(SkBits2Float(0xc20e1427), SkBits2Float(0xc259bacc), SkBits2Float(0xc25ac3d7), SkBits2Float(0xc20c7ab2), SkBits2Float(0xc26c48f7), SkBits2Float(0xc1284130));
4956 path.cubicTo(SkBits2Float(0xc27dce17), SkBits2Float(0x41616864), SkBits2Float(0xc2507d50), SkBits2Float(0x421b5239), SkBits2Float(0xc1f51386), SkBits2Float(0x424e5c1e));
4957 path.cubicTo(SkBits2Float(0xc11258cd), SkBits2Float(0x4280b301), SkBits2Float(0x418fffac), SkBits2Float(0x4279d13a), SkBits2Float(0x42160652), SkBits2Float(0x423b5488));
4958 path.lineTo(SkBits2Float(0x424f88ba), SkBits2Float(0x428191f0));
4959 path.close();
4960
4961 SkPath path2(path);
4962 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4963 }
4964 // op end success 1
4965
battleOp182(skiatest::Reporter * reporter,const char * filename)4966 static void battleOp182(skiatest::Reporter* reporter, const char* filename) {
4967 SkPath path;
4968 path.setFillType((SkPathFillType) 0);
4969 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4970 path.cubicTo(SkBits2Float(0x420048ef), SkBits2Float(0xc2a60000), SkBits2Float(0x4275172d), SkBits2Float(0xc2810bd2), SkBits2Float(0x429602e3), SkBits2Float(0xc20e29dc));
4971 path.cubicTo(SkBits2Float(0x42b17a30), SkBits2Float(0xc0d1e0a1), SkBits2Float(0x42a9174e), SkBits2Float(0x41ddef9e), SkBits2Float(0x4280787d), SkBits2Float(0x4252400e));
4972 path.lineTo(SkBits2Float(0x4239bd9f), SkBits2Float(0x4217fcf6));
4973 path.cubicTo(SkBits2Float(0x4274780f), SkBits2Float(0x41a06f8c), SkBits2Float(0x42804bfe), SkBits2Float(0xc097b7f0), SkBits2Float(0x4258e240), SkBits2Float(0xc1cd899e));
4974 path.cubicTo(SkBits2Float(0x42312c84), SkBits2Float(0xc23a929f), SkBits2Float(0x41b978e3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
4975 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
4976 path.close();
4977
4978 SkPath path1(path);
4979 path.reset();
4980 path.setFillType((SkPathFillType) 0);
4981 path.moveTo(SkBits2Float(0x4280787d), SkBits2Float(0x42524010));
4982 path.cubicTo(SkBits2Float(0x42711c0e), SkBits2Float(0x42659909), SkBits2Float(0x425f24ad), SkBits2Float(0x42771864), SkBits2Float(0x424b624a), SkBits2Float(0x4283347a));
4983 path.lineTo(SkBits2Float(0x42130648), SkBits2Float(0x423db1a5));
4984 path.cubicTo(SkBits2Float(0x42214ef3), SkBits2Float(0x42329f82), SkBits2Float(0x422e4bcd), SkBits2Float(0x4225f96c), SkBits2Float(0x4239bd9f), SkBits2Float(0x4217fcf7));
4985 path.lineTo(SkBits2Float(0x4280787d), SkBits2Float(0x42524010));
4986 path.close();
4987
4988 SkPath path2(path);
4989 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
4990 }
4991 // op end success 1
4992
battleOp183(skiatest::Reporter * reporter,const char * filename)4993 static void battleOp183(skiatest::Reporter* reporter, const char* filename) {
4994 SkPath path;
4995 path.setFillType((SkPathFillType) 1);
4996 path.moveTo(SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
4997 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
4998 path.cubicTo(SkBits2Float(0x420048ef), SkBits2Float(0xc2a60000), SkBits2Float(0x4275172d), SkBits2Float(0xc2810bd2), SkBits2Float(0x429602e3), SkBits2Float(0xc20e29dc));
4999 path.cubicTo(SkBits2Float(0x42b17a30), SkBits2Float(0xc0d1e0a1), SkBits2Float(0x42a9174e), SkBits2Float(0x41ddef9e), SkBits2Float(0x4280787d), SkBits2Float(0x42524010));
5000 path.cubicTo(SkBits2Float(0x42711c0e), SkBits2Float(0x42659909), SkBits2Float(0x425f24ad), SkBits2Float(0x42771864), SkBits2Float(0x424b624a), SkBits2Float(0x4283347a));
5001 path.lineTo(SkBits2Float(0x42130648), SkBits2Float(0x423db1a5));
5002 path.cubicTo(SkBits2Float(0x42214ef3), SkBits2Float(0x42329f82), SkBits2Float(0x422e4bcd), SkBits2Float(0x4225f96c), SkBits2Float(0x4239bd9f), SkBits2Float(0x4217fcf6));
5003 path.cubicTo(SkBits2Float(0x4274780f), SkBits2Float(0x41a06f8c), SkBits2Float(0x42804bfe), SkBits2Float(0xc097b7f0), SkBits2Float(0x4258e240), SkBits2Float(0xc1cd899e));
5004 path.cubicTo(SkBits2Float(0x42312c84), SkBits2Float(0xc23a929f), SkBits2Float(0x41b978e3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
5005 path.close();
5006
5007 SkPath path1(path);
5008 path.reset();
5009 path.setFillType((SkPathFillType) 0);
5010 path.moveTo(SkBits2Float(0x424b624a), SkBits2Float(0x42833479));
5011 path.cubicTo(SkBits2Float(0x41baac2f), SkBits2Float(0x42adda12), SkBits2Float(0xc168f6a7), SkBits2Float(0x42b1a2b3), SkBits2Float(0xc2303c92), SkBits2Float(0x428cae5c));
5012 path.cubicTo(SkBits2Float(0xc2931dbe), SkBits2Float(0x424f7409), SkBits2Float(0xc2b0c9d8), SkBits2Float(0x41878abe), SkBits2Float(0xc2a26e7f), SkBits2Float(0xc188ef9a));
5013 path.cubicTo(SkBits2Float(0xc2941327), SkBits2Float(0xc24cb4f5), SkBits2Float(0xc2397a7c), SkBits2Float(0xc29a4742), SkBits2Float(0xc13ec328), SkBits2Float(0xc2a44746));
5014 path.lineTo(SkBits2Float(0xc109e67a), SkBits2Float(0xc26d82d0));
5015 path.cubicTo(SkBits2Float(0xc20614b0), SkBits2Float(0xc25f0d94), SkBits2Float(0xc2561585), SkBits2Float(0xc213fb18), SkBits2Float(0xc26ad744), SkBits2Float(0xc145fabb));
5016 path.cubicTo(SkBits2Float(0xc27f9901), SkBits2Float(0x4143f6e8), SkBits2Float(0xc254b2af), SkBits2Float(0x4215f75b), SkBits2Float(0xc1feccbb), SkBits2Float(0x424b64f3));
5017 path.cubicTo(SkBits2Float(0xc128682f), SkBits2Float(0x42806945), SkBits2Float(0x4186f1ba), SkBits2Float(0x427b5a1e), SkBits2Float(0x4213064f), SkBits2Float(0x423db1a2));
5018 path.lineTo(SkBits2Float(0x424b624a), SkBits2Float(0x42833479));
5019 path.close();
5020
5021 SkPath path2(path);
5022 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5023 }
5024 // op end success 1
5025
battleOp184(skiatest::Reporter * reporter,const char * filename)5026 static void battleOp184(skiatest::Reporter* reporter, const char* filename) {
5027 SkPath path;
5028 path.setFillType((SkPathFillType) 0);
5029 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5030 path.cubicTo(SkBits2Float(0x42011b87), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427681ab), SkBits2Float(0xc280937a), SkBits2Float(0x42967eb3), SkBits2Float(0xc20c1a94));
5031 path.cubicTo(SkBits2Float(0x42b1bc91), SkBits2Float(0xc0b87191), SkBits2Float(0x42a89454), SkBits2Float(0x41e5ed6f), SkBits2Float(0x427e0902), SkBits2Float(0x4255c0a2));
5032 path.lineTo(SkBits2Float(0x4237a3d0), SkBits2Float(0x421a8517));
5033 path.cubicTo(SkBits2Float(0x4273bab4), SkBits2Float(0x41a63674), SkBits2Float(0x42807bfc), SkBits2Float(0xc0855530), SkBits2Float(0x42599545), SkBits2Float(0xc1ca8f4f));
5034 path.cubicTo(SkBits2Float(0x42323293), SkBits2Float(0xc239e4a8), SkBits2Float(0x41baa959), SkBits2Float(0xc2700002), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000));
5035 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5036 path.close();
5037
5038 SkPath path1(path);
5039 path.reset();
5040 path.setFillType((SkPathFillType) 0);
5041 path.moveTo(SkBits2Float(0x427e0901), SkBits2Float(0x4255c0a4));
5042 path.cubicTo(SkBits2Float(0x426dd77c), SkBits2Float(0x4268ff65), SkBits2Float(0x425b838b), SkBits2Float(0x427a571f), SkBits2Float(0x42476779), SkBits2Float(0x4284b92f));
5043 path.lineTo(SkBits2Float(0x421025c9), SkBits2Float(0x423fe3a3));
5044 path.cubicTo(SkBits2Float(0x421eaf4b), SkBits2Float(0x4234f80b), SkBits2Float(0x422bef10), SkBits2Float(0x42286e9a), SkBits2Float(0x4237a3d2), SkBits2Float(0x421a8517));
5045 path.lineTo(SkBits2Float(0x427e0901), SkBits2Float(0x4255c0a4));
5046 path.close();
5047
5048 SkPath path2(path);
5049 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5050 }
5051 // op end success 1
5052
battleOp185(skiatest::Reporter * reporter,const char * filename)5053 static void battleOp185(skiatest::Reporter* reporter, const char* filename) {
5054 SkPath path;
5055 path.setFillType((SkPathFillType) 1);
5056 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
5057 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5058 path.cubicTo(SkBits2Float(0x42011b87), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427681ab), SkBits2Float(0xc280937a), SkBits2Float(0x42967eb3), SkBits2Float(0xc20c1a94));
5059 path.cubicTo(SkBits2Float(0x42b1bc91), SkBits2Float(0xc0b87191), SkBits2Float(0x42a89454), SkBits2Float(0x41e5ed6f), SkBits2Float(0x427e0902), SkBits2Float(0x4255c0a2));
5060 path.lineTo(SkBits2Float(0x427e0901), SkBits2Float(0x4255c0a4));
5061 path.cubicTo(SkBits2Float(0x426dd77c), SkBits2Float(0x4268ff65), SkBits2Float(0x425b838b), SkBits2Float(0x427a571f), SkBits2Float(0x42476779), SkBits2Float(0x4284b92f));
5062 path.lineTo(SkBits2Float(0x421025c9), SkBits2Float(0x423fe3a3));
5063 path.cubicTo(SkBits2Float(0x421eaf4b), SkBits2Float(0x4234f80b), SkBits2Float(0x422bef10), SkBits2Float(0x42286e9a), SkBits2Float(0x4237a3d2), SkBits2Float(0x421a8517));
5064 path.lineTo(SkBits2Float(0x4237a3d0), SkBits2Float(0x421a8517));
5065 path.cubicTo(SkBits2Float(0x4273bab4), SkBits2Float(0x41a63674), SkBits2Float(0x42807bfc), SkBits2Float(0xc0855530), SkBits2Float(0x42599545), SkBits2Float(0xc1ca8f4f));
5066 path.cubicTo(SkBits2Float(0x42323293), SkBits2Float(0xc239e4a8), SkBits2Float(0x41baa959), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
5067 path.close();
5068
5069 SkPath path1(path);
5070 path.reset();
5071 path.setFillType((SkPathFillType) 0);
5072 path.moveTo(SkBits2Float(0x42476779), SkBits2Float(0x4284b92f));
5073 path.cubicTo(SkBits2Float(0x41aeb99d), SkBits2Float(0x42aece6d), SkBits2Float(0xc182ebc7), SkBits2Float(0x42b12f04), SkBits2Float(0xc236847b), SkBits2Float(0x428aaa1d));
5074 path.cubicTo(SkBits2Float(0xc295c989), SkBits2Float(0x42484a6d), SkBits2Float(0xc2b1d401), SkBits2Float(0x41683386), SkBits2Float(0xc2a15607), SkBits2Float(0xc19c4a77));
5075 path.cubicTo(SkBits2Float(0xc290d80f), SkBits2Float(0xc2565754), SkBits2Float(0xc22ebdc1), SkBits2Float(0xc29d94aa), SkBits2Float(0xc10da15c), SkBits2Float(0xc2a50da2));
5076 path.lineTo(SkBits2Float(0xc0ccc448), SkBits2Float(0xc26ea197));
5077 path.cubicTo(SkBits2Float(0xc1fca350), SkBits2Float(0xc263d3da), SkBits2Float(0xc25169ba), SkBits2Float(0xc21af203), SkBits2Float(0xc26941c7), SkBits2Float(0xc161f664));
5078 path.cubicTo(SkBits2Float(0xc2808cea), SkBits2Float(0x4127db45), SkBits2Float(0xc2588f4e), SkBits2Float(0x4210c9da), SkBits2Float(0xc203f0b6), SkBits2Float(0x42487a91));
5079 path.cubicTo(SkBits2Float(0xc13d487f), SkBits2Float(0x428015a4), SkBits2Float(0x417c9d5c), SkBits2Float(0x427cbb65), SkBits2Float(0x421025ca), SkBits2Float(0x423fe3a2));
5080 path.lineTo(SkBits2Float(0x42476779), SkBits2Float(0x4284b92f));
5081 path.close();
5082
5083 SkPath path2(path);
5084 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5085 }
5086 // op end success 1
5087
battleOp186(skiatest::Reporter * reporter,const char * filename)5088 static void battleOp186(skiatest::Reporter* reporter, const char* filename) {
5089 SkPath path;
5090 path.setFillType((SkPathFillType) 0);
5091 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5092 path.cubicTo(SkBits2Float(0x4201bd60), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427797bb), SkBits2Float(0xc2803682), SkBits2Float(0x4296dc8c), SkBits2Float(0xc20a848f));
5093 path.cubicTo(SkBits2Float(0x42b1ed3b), SkBits2Float(0xc0a4e0c3), SkBits2Float(0x42a82bcd), SkBits2Float(0x41ec0db8), SkBits2Float(0x427bc56e), SkBits2Float(0x42586a20));
5094 path.lineTo(SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc));
5095 path.cubicTo(SkBits2Float(0x42732394), SkBits2Float(0x41aaa425), SkBits2Float(0x42809f29), SkBits2Float(0xc06e60a8), SkBits2Float(0x425a1cf3), SkBits2Float(0xc1c84447));
5096 path.cubicTo(SkBits2Float(0x4232fb94), SkBits2Float(0xc2395e3c), SkBits2Float(0x41bb9357), SkBits2Float(0xc2700002), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
5097 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5098 path.close();
5099
5100 SkPath path1(path);
5101 path.reset();
5102 path.setFillType((SkPathFillType) 0);
5103 path.moveTo(SkBits2Float(0x427bc56c), SkBits2Float(0x42586a22));
5104 path.cubicTo(SkBits2Float(0x426b4cc6), SkBits2Float(0x426b93ad), SkBits2Float(0x4258b1e1), SkBits2Float(0x427ccbca), SkBits2Float(0x42445140), SkBits2Float(0x4285de6e));
5105 path.lineTo(SkBits2Float(0x420dea8b), SkBits2Float(0x42418b9b));
5106 path.cubicTo(SkBits2Float(0x421ca599), SkBits2Float(0x4236be7f), SkBits2Float(0x422a18a8), SkBits2Float(0x422a4be8), SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc));
5107 path.lineTo(SkBits2Float(0x427bc56c), SkBits2Float(0x42586a22));
5108 path.close();
5109
5110 SkPath path2(path);
5111 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5112 }
5113 // op end success 1
5114
battleOp187(skiatest::Reporter * reporter,const char * filename)5115 static void battleOp187(skiatest::Reporter* reporter, const char* filename) {
5116 SkPath path;
5117 path.setFillType((SkPathFillType) 1);
5118 path.moveTo(SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
5119 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5120 path.cubicTo(SkBits2Float(0x4201bd60), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427797bb), SkBits2Float(0xc2803682), SkBits2Float(0x4296dc8c), SkBits2Float(0xc20a848f));
5121 path.cubicTo(SkBits2Float(0x42b1ed3b), SkBits2Float(0xc0a4e0c3), SkBits2Float(0x42a82bcd), SkBits2Float(0x41ec0db8), SkBits2Float(0x427bc56e), SkBits2Float(0x42586a20));
5122 path.lineTo(SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc));
5123 path.cubicTo(SkBits2Float(0x42732394), SkBits2Float(0x41aaa425), SkBits2Float(0x42809f29), SkBits2Float(0xc06e60a8), SkBits2Float(0x425a1cf3), SkBits2Float(0xc1c84447));
5124 path.cubicTo(SkBits2Float(0x4232fb94), SkBits2Float(0xc2395e3c), SkBits2Float(0x41bb9357), SkBits2Float(0xc2700002), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
5125 path.close();
5126 path.moveTo(SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc));
5127 path.lineTo(SkBits2Float(0x427bc56c), SkBits2Float(0x42586a22));
5128 path.cubicTo(SkBits2Float(0x426b4cc6), SkBits2Float(0x426b93ad), SkBits2Float(0x4258b1e1), SkBits2Float(0x427ccbca), SkBits2Float(0x42445140), SkBits2Float(0x4285de6e));
5129 path.lineTo(SkBits2Float(0x420dea8b), SkBits2Float(0x42418b9b));
5130 path.cubicTo(SkBits2Float(0x421ca599), SkBits2Float(0x4236be7f), SkBits2Float(0x422a18a8), SkBits2Float(0x422a4be8), SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc));
5131 path.close();
5132
5133 SkPath path1(path);
5134 path.reset();
5135 path.setFillType((SkPathFillType) 0);
5136 path.moveTo(SkBits2Float(0x42445140), SkBits2Float(0x4285de6e));
5137 path.cubicTo(SkBits2Float(0x41a5801a), SkBits2Float(0x42af8153), SkBits2Float(0xc18dfe3b), SkBits2Float(0x42b0c99d), SkBits2Float(0xc23b472e), SkBits2Float(0x42891183));
5138 path.cubicTo(SkBits2Float(0xc297c79f), SkBits2Float(0x4242b2d1), SkBits2Float(0xc2b28961), SkBits2Float(0x414a2ba6), SkBits2Float(0xc2a0659f), SkBits2Float(0xc1ab0f22));
5139 path.cubicTo(SkBits2Float(0xc28e41db), SkBits2Float(0xc25d9a0f), SkBits2Float(0xc2265613), SkBits2Float(0xc29ffd9f), SkBits2Float(0xc0cf8787), SkBits2Float(0xc2a57e12));
5140 path.lineTo(SkBits2Float(0xc09605ca), SkBits2Float(0xc26f4428));
5141 path.cubicTo(SkBits2Float(0xc1f07c7d), SkBits2Float(0xc2674fd1), SkBits2Float(0xc24dac50), SkBits2Float(0xc22031a9), SkBits2Float(0xc267e62b), SkBits2Float(0xc1775074));
5142 path.cubicTo(SkBits2Float(0xc2811003), SkBits2Float(0x411225be), SkBits2Float(0xc25b70c1), SkBits2Float(0x420cbef2), SkBits2Float(0xc20761ad), SkBits2Float(0x42462bd0));
5143 path.cubicTo(SkBits2Float(0xc14d4a68), SkBits2Float(0x427f98ac), SkBits2Float(0x416f472e), SkBits2Float(0x427dbe0b), SkBits2Float(0x420dea8f), SkBits2Float(0x42418b9b));
5144 path.lineTo(SkBits2Float(0x42445140), SkBits2Float(0x4285de6e));
5145 path.close();
5146
5147 SkPath path2(path);
5148 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5149 }
5150 // op end success 1
5151
battleOp188(skiatest::Reporter * reporter,const char * filename)5152 static void battleOp188(skiatest::Reporter* reporter, const char* filename) {
5153 SkPath path;
5154 path.setFillType((SkPathFillType) 0);
5155 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5156 path.cubicTo(SkBits2Float(0x42025498), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42789b1b), SkBits2Float(0xc27fbe84), SkBits2Float(0x42973334), SkBits2Float(0xc2090897));
5157 path.cubicTo(SkBits2Float(0x42b218da), SkBits2Float(0xc092954a), SkBits2Float(0x42a7c71a), SkBits2Float(0x41f1c3b5), SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9));
5158 path.lineTo(SkBits2Float(0x42347503), SkBits2Float(0x421e39ac));
5159 path.cubicTo(SkBits2Float(0x427291fe), SkBits2Float(0x41aec4fe), SkBits2Float(0x4280beb1), SkBits2Float(0xc053ed89), SkBits2Float(0x425a9a3a), SkBits2Float(0xc1c61ef1));
5160 path.cubicTo(SkBits2Float(0x4233b713), SkBits2Float(0xc238e018), SkBits2Float(0x41bc6df5), SkBits2Float(0xc2700002), SkBits2Float(0xb7240057), SkBits2Float(0xc2700000));
5161 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5162 path.close();
5163
5164 SkPath path1(path);
5165 path.reset();
5166 path.setFillType((SkPathFillType) 0);
5167 path.moveTo(SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9));
5168 path.cubicTo(SkBits2Float(0x4268e6ce), SkBits2Float(0x426df5b7), SkBits2Float(0x425609c8), SkBits2Float(0x427f0f64), SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f));
5169 path.lineTo(SkBits2Float(0x420bd0d2), SkBits2Float(0x42431170));
5170 path.cubicTo(SkBits2Float(0x421ab9f8), SkBits2Float(0x4238617e), SkBits2Float(0x42285cd4), SkBits2Float(0x422c04e7), SkBits2Float(0x42347505), SkBits2Float(0x421e39ac));
5171 path.lineTo(SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9));
5172 path.close();
5173
5174 SkPath path2(path);
5175 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5176 }
5177 // op end success 1
5178
battleOp189(skiatest::Reporter * reporter,const char * filename)5179 static void battleOp189(skiatest::Reporter* reporter, const char* filename) {
5180 SkPath path;
5181 path.setFillType((SkPathFillType) 1);
5182 path.moveTo(SkBits2Float(0xb7240057), SkBits2Float(0xc2700000));
5183 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5184 path.cubicTo(SkBits2Float(0x42025498), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42789b1b), SkBits2Float(0xc27fbe84), SkBits2Float(0x42973334), SkBits2Float(0xc2090897));
5185 path.cubicTo(SkBits2Float(0x42b218da), SkBits2Float(0xc092954a), SkBits2Float(0x42a7c71a), SkBits2Float(0x41f1c3b5), SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9));
5186 path.cubicTo(SkBits2Float(0x4268e6ce), SkBits2Float(0x426df5b7), SkBits2Float(0x425609c8), SkBits2Float(0x427f0f64), SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f));
5187 path.lineTo(SkBits2Float(0x420bd0d2), SkBits2Float(0x42431170));
5188 path.cubicTo(SkBits2Float(0x421ab9f8), SkBits2Float(0x4238617e), SkBits2Float(0x42285cd4), SkBits2Float(0x422c04e7), SkBits2Float(0x42347505), SkBits2Float(0x421e39ac));
5189 path.lineTo(SkBits2Float(0x42347503), SkBits2Float(0x421e39ac));
5190 path.cubicTo(SkBits2Float(0x427291fe), SkBits2Float(0x41aec4fe), SkBits2Float(0x4280beb1), SkBits2Float(0xc053ed89), SkBits2Float(0x425a9a3a), SkBits2Float(0xc1c61ef1));
5191 path.cubicTo(SkBits2Float(0x4233b713), SkBits2Float(0xc238e018), SkBits2Float(0x41bc6df5), SkBits2Float(0xc2700002), SkBits2Float(0xb7240057), SkBits2Float(0xc2700000));
5192 path.close();
5193
5194 SkPath path1(path);
5195 path.reset();
5196 path.setFillType((SkPathFillType) 0);
5197 path.moveTo(SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f));
5198 path.cubicTo(SkBits2Float(0x419cd99a), SkBits2Float(0x42b02173), SkBits2Float(0xc19850b8), SkBits2Float(0x42b06117), SkBits2Float(0xc23fac11), SkBits2Float(0x42878a96));
5199 path.cubicTo(SkBits2Float(0xc29997e3), SkBits2Float(0x423d682a), SkBits2Float(0xc2b3208c), SkBits2Float(0x412e025f), SkBits2Float(0xc29f71a3), SkBits2Float(0xc1b8c415));
5200 path.cubicTo(SkBits2Float(0xc28bc2ba), SkBits2Float(0xc26444ae), SkBits2Float(0xc21e5e96), SkBits2Float(0xc2a223df), SkBits2Float(0xc088ac52), SkBits2Float(0xc2a5c7b3));
5201 path.lineTo(SkBits2Float(0xc0459a01), SkBits2Float(0xc26fae99));
5202 path.cubicTo(SkBits2Float(0xc1e4f7d0), SkBits2Float(0xc26a6b5c), SkBits2Float(0xc24a1045), SkBits2Float(0xc225035c), SkBits2Float(0xc266856e), SkBits2Float(0xc18590cd));
5203 path.cubicTo(SkBits2Float(0xc2817d4a), SkBits2Float(0x40fb9475), SkBits2Float(0xc25e0ffd), SkBits2Float(0x4208ebae), SkBits2Float(0xc20a8edd), SkBits2Float(0x4243f69e));
5204 path.cubicTo(SkBits2Float(0xc15c36ee), SkBits2Float(0x427f018f), SkBits2Float(0x4162c57c), SkBits2Float(0x427ea58e), SkBits2Float(0x420bd0d7), SkBits2Float(0x4243116e));
5205 path.lineTo(SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f));
5206 path.close();
5207
5208 SkPath path2(path);
5209 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5210 }
5211 // op end success 1
5212
battleOp190(skiatest::Reporter * reporter,const char * filename)5213 static void battleOp190(skiatest::Reporter* reporter, const char* filename) {
5214 SkPath path;
5215 path.setFillType((SkPathFillType) 0);
5216 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5217 path.cubicTo(SkBits2Float(0x4202b56e), SkBits2Float(0xc2a60000), SkBits2Float(0x427940ff), SkBits2Float(0xc27f4e67), SkBits2Float(0x42976a2d), SkBits2Float(0xc20814ff));
5218 path.cubicTo(SkBits2Float(0x42b233da), SkBits2Float(0xc086dcb5), SkBits2Float(0x42a78518), SkBits2Float(0x41f56a27), SkBits2Float(0x42784037), SkBits2Float(0x425c71a4));
5219 path.lineTo(SkBits2Float(0x4233755d), SkBits2Float(0x421f5b67));
5220 path.cubicTo(SkBits2Float(0x4272328d), SkBits2Float(0x41b16880), SkBits2Float(0x4280d235), SkBits2Float(0xc042fb32), SkBits2Float(0x425ae9b3), SkBits2Float(0xc1c4bebc));
5221 path.cubicTo(SkBits2Float(0x42342efc), SkBits2Float(0xc2388f09), SkBits2Float(0x41bcf9fa), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5222 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5223 path.close();
5224
5225 SkPath path1(path);
5226 path.reset();
5227 path.setFillType((SkPathFillType) 0);
5228 path.moveTo(SkBits2Float(0x42784038), SkBits2Float(0x425c71a4));
5229 path.cubicTo(SkBits2Float(0x42675aa4), SkBits2Float(0x426f78d5), SkBits2Float(0x4254535c), SkBits2Float(0x42803f48), SkBits2Float(0x423f8a54), SkBits2Float(0x4287967e));
5230 path.lineTo(SkBits2Float(0x420a7682), SkBits2Float(0x424407da));
5231 path.cubicTo(SkBits2Float(0x42197d0c), SkBits2Float(0x42396aed), SkBits2Float(0x42273e74), SkBits2Float(0x422d1cc3), SkBits2Float(0x4233755f), SkBits2Float(0x421f5b68));
5232 path.lineTo(SkBits2Float(0x42784038), SkBits2Float(0x425c71a4));
5233 path.close();
5234
5235 SkPath path2(path);
5236 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5237 }
5238 // op end success 1
5239
battleOp191(skiatest::Reporter * reporter,const char * filename)5240 static void battleOp191(skiatest::Reporter* reporter, const char* filename) {
5241 SkPath path;
5242 path.setFillType((SkPathFillType) 1);
5243 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5244 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5245 path.cubicTo(SkBits2Float(0x4202b56e), SkBits2Float(0xc2a60000), SkBits2Float(0x427940ff), SkBits2Float(0xc27f4e67), SkBits2Float(0x42976a2d), SkBits2Float(0xc20814ff));
5246 path.cubicTo(SkBits2Float(0x42b233da), SkBits2Float(0xc086dcb5), SkBits2Float(0x42a78518), SkBits2Float(0x41f56a27), SkBits2Float(0x42784038), SkBits2Float(0x425c71a4));
5247 path.cubicTo(SkBits2Float(0x42675aa4), SkBits2Float(0x426f78d5), SkBits2Float(0x4254535c), SkBits2Float(0x42803f48), SkBits2Float(0x423f8a54), SkBits2Float(0x4287967e));
5248 path.lineTo(SkBits2Float(0x420a7682), SkBits2Float(0x424407da));
5249 path.cubicTo(SkBits2Float(0x42197d0c), SkBits2Float(0x42396aed), SkBits2Float(0x42273e74), SkBits2Float(0x422d1cc3), SkBits2Float(0x4233755f), SkBits2Float(0x421f5b68));
5250 path.lineTo(SkBits2Float(0x4233755d), SkBits2Float(0x421f5b67));
5251 path.cubicTo(SkBits2Float(0x4272328d), SkBits2Float(0x41b16880), SkBits2Float(0x4280d235), SkBits2Float(0xc042fb32), SkBits2Float(0x425ae9b3), SkBits2Float(0xc1c4bebc));
5252 path.cubicTo(SkBits2Float(0x42342efc), SkBits2Float(0xc2388f09), SkBits2Float(0x41bcf9fa), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5253 path.close();
5254
5255 SkPath path1(path);
5256 path.reset();
5257 path.setFillType((SkPathFillType) 0);
5258 path.moveTo(SkBits2Float(0x423f8a55), SkBits2Float(0x4287967f));
5259 path.cubicTo(SkBits2Float(0x41974ba2), SkBits2Float(0x42b0846d), SkBits2Float(0xc19ee9a3), SkBits2Float(0x42b01937), SkBits2Float(0xc2427547), SkBits2Float(0x42868bae));
5260 path.cubicTo(SkBits2Float(0xc29abade), SkBits2Float(0x4239fc4c), SkBits2Float(0xc2b3780d), SkBits2Float(0x411bee16), SkBits2Float(0xc29ecbab), SkBits2Float(0xc1c17e4f));
5261 path.cubicTo(SkBits2Float(0xc28a1f48), SkBits2Float(0xc26879d6), SkBits2Float(0xc2193674), SkBits2Float(0xc2a376c5), SkBits2Float(0xc0368c8c), SkBits2Float(0xc2a5e6e5));
5262 path.lineTo(SkBits2Float(0xc003f6b5), SkBits2Float(0xc26fdbb6));
5263 path.cubicTo(SkBits2Float(0xc1dd8323), SkBits2Float(0xc26c555a), SkBits2Float(0xc247b1d3), SkBits2Float(0xc2280e0b), SkBits2Float(0xc2659575), SkBits2Float(0xc18bdff2));
5264 path.cubicTo(SkBits2Float(0xc281bc8c), SkBits2Float(0x40e170d0), SkBits2Float(0xc25fb4ae), SkBits2Float(0x42067283), SkBits2Float(0xc20c926e), SkBits2Float(0x42428613));
5265 path.cubicTo(SkBits2Float(0xc165c0b5), SkBits2Float(0x427e99a3), SkBits2Float(0x415abda1), SkBits2Float(0x427f34a6), SkBits2Float(0x420a7686), SkBits2Float(0x424407d8));
5266 path.lineTo(SkBits2Float(0x423f8a55), SkBits2Float(0x4287967f));
5267 path.close();
5268
5269 SkPath path2(path);
5270 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5271 }
5272 // op end success 1
5273
battleOp192(skiatest::Reporter * reporter,const char * filename)5274 static void battleOp192(skiatest::Reporter* reporter, const char* filename) {
5275 SkPath path;
5276 path.setFillType((SkPathFillType) 0);
5277 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5278 path.cubicTo(SkBits2Float(0x4202fa25), SkBits2Float(0xc2a60000), SkBits2Float(0x4279b699), SkBits2Float(0xc27efea4), SkBits2Float(0x429790ee), SkBits2Float(0xc20767f9));
5279 path.cubicTo(SkBits2Float(0x42b24690), SkBits2Float(0xc07d14fa), SkBits2Float(0x42a75587), SkBits2Float(0x41f80076), SkBits2Float(0x427743d2), SkBits2Float(0x425d8c9b));
5280 path.lineTo(SkBits2Float(0x4232bee9), SkBits2Float(0x422027f2));
5281 path.cubicTo(SkBits2Float(0x4271edc7), SkBits2Float(0x41b34741), SkBits2Float(0x4280dfbb), SkBits2Float(0xc036f37a), SkBits2Float(0x425b21bb), SkBits2Float(0xc1c3c49a));
5282 path.cubicTo(SkBits2Float(0x423483ff), SkBits2Float(0xc2385562), SkBits2Float(0x41bd5d54), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
5283 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5284 path.close();
5285
5286 SkPath path1(path);
5287 path.reset();
5288 path.setFillType((SkPathFillType) 0);
5289 path.moveTo(SkBits2Float(0x427743d4), SkBits2Float(0x425d8c98));
5290 path.cubicTo(SkBits2Float(0x4266401a), SkBits2Float(0x427089e5), SkBits2Float(0x42531ae2), SkBits2Float(0x4280c0a0), SkBits2Float(0x423e3514), SkBits2Float(0x42880e64));
5291 path.lineTo(SkBits2Float(0x42097fd1), SkBits2Float(0x4244b531));
5292 path.cubicTo(SkBits2Float(0x42189b26), SkBits2Float(0x423a25ea), SkBits2Float(0x42267233), SkBits2Float(0x422de224), SkBits2Float(0x4232beea), SkBits2Float(0x422027f3));
5293 path.lineTo(SkBits2Float(0x427743d4), SkBits2Float(0x425d8c98));
5294 path.close();
5295
5296 SkPath path2(path);
5297 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5298 }
5299
battleOp193(skiatest::Reporter * reporter,const char * filename)5300 static void battleOp193(skiatest::Reporter* reporter, const char* filename) {
5301 SkPath path;
5302 path.setFillType((SkPathFillType) 0);
5303 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5304 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07980), SkBits2Float(0xc2a5ff68));
5305 path.lineTo(SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25));
5306 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000));
5307 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5308 path.close();
5309
5310 SkPath path1(path);
5311 path.reset();
5312 path.setFillType((SkPathFillType) 0);
5313 path.moveTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68));
5314 path.cubicTo(SkBits2Float(0x3ee7f565), SkBits2Float(0xc2a5ff5d), SkBits2Float(0x3eef70d9), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47));
5315 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6));
5316 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea24612), SkBits2Float(0xc26fff26));
5317 path.lineTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68));
5318 path.close();
5319
5320 SkPath path2(path);
5321 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5322 }
5323 // op end success 1
5324
battleOp194(skiatest::Reporter * reporter,const char * filename)5325 static void battleOp194(skiatest::Reporter* reporter, const char* filename) {
5326 SkPath path;
5327 path.setFillType((SkPathFillType) 1);
5328 path.moveTo(SkBits2Float(0x3691e768), SkBits2Float(0xc2700000));
5329 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5330 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68));
5331 path.lineTo(SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47));
5332 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6));
5333 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25));
5334 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000));
5335 path.close();
5336
5337 SkPath path1(path);
5338 path.reset();
5339 path.setFillType((SkPathFillType) 0);
5340 path.moveTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48));
5341 path.cubicTo(SkBits2Float(0x3f3816c9), SkBits2Float(0xc2a5fe94), SkBits2Float(0x3f74b6e1), SkBits2Float(0xc2a5fd5b), SkBits2Float(0x3f98ab0b), SkBits2Float(0xc2a5fb9d));
5342 path.lineTo(SkBits2Float(0x3f5cb973), SkBits2Float(0xc26ff9a8));
5343 path.cubicTo(SkBits2Float(0x3f30e6e7), SkBits2Float(0xc26ffc2e), SkBits2Float(0x3f05138e), SkBits2Float(0xc26ffdf2), SkBits2Float(0x3eb27fc6), SkBits2Float(0xc26ffef7));
5344 path.lineTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48));
5345 path.close();
5346
5347 SkPath path2(path);
5348 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5349 }
5350 // op end success 1
5351
battleOp195(skiatest::Reporter * reporter,const char * filename)5352 static void battleOp195(skiatest::Reporter* reporter, const char* filename) {
5353 SkPath path;
5354 path.setFillType((SkPathFillType) 0);
5355 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5356 path.cubicTo(SkBits2Float(0x3f0607d9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f860760), SkBits2Float(0xc2a5fd76), SkBits2Float(0x3fc90825), SkBits2Float(0xc2a5f863));
5357 path.lineTo(SkBits2Float(0x3f9152f7), SkBits2Float(0xc26ff500));
5358 path.cubicTo(SkBits2Float(0x3f41c6b2), SkBits2Float(0xc26ffc55), SkBits2Float(0x3ec1c794), SkBits2Float(0xc26fffff), SkBits2Float(0x36a51f4a), SkBits2Float(0xc26fffff));
5359 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5360 path.close();
5361
5362 SkPath path1(path);
5363 path.reset();
5364 path.setFillType((SkPathFillType) 0);
5365 path.moveTo(SkBits2Float(0x3fc9081a), SkBits2Float(0xc2a5f864));
5366 path.cubicTo(SkBits2Float(0x3fcfbb75), SkBits2Float(0xc2a5f7e2), SkBits2Float(0x3fd66eab), SkBits2Float(0xc2a5f75a), SkBits2Float(0x3fdd21d8), SkBits2Float(0xc2a5f6cb));
5367 path.lineTo(SkBits2Float(0x3f9fdac0), SkBits2Float(0xc26ff2b1));
5368 path.cubicTo(SkBits2Float(0x3f9b02da), SkBits2Float(0xc26ff37f), SkBits2Float(0x3f962add), SkBits2Float(0xc26ff444), SkBits2Float(0x3f9152da), SkBits2Float(0xc26ff500));
5369 path.lineTo(SkBits2Float(0x3fc9081a), SkBits2Float(0xc2a5f864));
5370 path.close();
5371
5372 SkPath path2(path);
5373 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5374 }
5375 // op end success 1
5376
battleOp196(skiatest::Reporter * reporter,const char * filename)5377 static void battleOp196(skiatest::Reporter* reporter, const char* filename) {
5378 SkPath path;
5379 path.setFillType((SkPathFillType) 1);
5380 path.moveTo(SkBits2Float(0x36a51f4a), SkBits2Float(0xc26fffff));
5381 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5382 path.cubicTo(SkBits2Float(0x3f0607d1), SkBits2Float(0xc2a60000), SkBits2Float(0x3f860758), SkBits2Float(0xc2a5fd76), SkBits2Float(0x3fc9081a), SkBits2Float(0xc2a5f864));
5383
5384 SkPath path1(path);
5385 path.reset();
5386 path.setFillType((SkPathFillType) 0);
5387 path.moveTo(SkBits2Float(0x3fdd21ce), SkBits2Float(0xc2a5f6cb));
5388 path.cubicTo(SkBits2Float(0x4024daa1), SkBits2Float(0xc2a5edc0), SkBits2Float(0x405b1f05), SkBits2Float(0xc2a5de0d), SkBits2Float(0x4088aca3), SkBits2Float(0xc2a5c7b3));
5389 path.lineTo(SkBits2Float(0x40459a01), SkBits2Float(0xc26fae99));
5390 path.cubicTo(SkBits2Float(0x401e66a3), SkBits2Float(0xc26fceed), SkBits2Float(0x3fee57cd), SkBits2Float(0xc26fe5a0), SkBits2Float(0x3f9fdaba), SkBits2Float(0xc26ff2b3));
5391 path.lineTo(SkBits2Float(0x3fdd21ce), SkBits2Float(0xc2a5f6cb));
5392 path.close();
5393
5394 SkPath path2(path);
5395 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5396 }
5397 // op end success 1
5398
battleOp197(skiatest::Reporter * reporter,const char * filename)5399 static void battleOp197(skiatest::Reporter* reporter, const char* filename) {
5400 SkPath path;
5401 path.setFillType((SkPathFillType) 0);
5402 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5403 path.cubicTo(SkBits2Float(0x3fa0bd52), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4020babd), SkBits2Float(0xc2a5f168), SkBits2Float(0x40710446), SkBits2Float(0xc2a5d43c));
5404 path.lineTo(SkBits2Float(0x402e3a94), SkBits2Float(0xc26fc0ba));
5405 path.cubicTo(SkBits2Float(0x3fe86158), SkBits2Float(0xc26feae9), SkBits2Float(0x3f686554), SkBits2Float(0xc2700000), SkBits2Float(0x369bbf59), SkBits2Float(0xc2700000));
5406 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5407 path.close();
5408
5409 SkPath path1(path);
5410 path.reset();
5411 path.setFillType((SkPathFillType) 0);
5412 path.moveTo(SkBits2Float(0x4071043c), SkBits2Float(0xc2a5d43c));
5413 path.cubicTo(SkBits2Float(0x40790b78), SkBits2Float(0xc2a5d151), SkBits2Float(0x40808943), SkBits2Float(0xc2a5ce41), SkBits2Float(0x40848cac), SkBits2Float(0xc2a5cb0c));
5414 path.lineTo(SkBits2Float(0x403fa34c), SkBits2Float(0xc26fb371));
5415 path.cubicTo(SkBits2Float(0x4039d5dd), SkBits2Float(0xc26fb815), SkBits2Float(0x40340849), SkBits2Float(0xc26fbc83), SkBits2Float(0x402e3a8d), SkBits2Float(0xc26fc0bb));
5416 path.lineTo(SkBits2Float(0x4071043c), SkBits2Float(0xc2a5d43c));
5417 path.close();
5418
5419 SkPath path2(path);
5420 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5421 }
5422 // op end success 1
5423
battleOp198(skiatest::Reporter * reporter,const char * filename)5424 static void battleOp198(skiatest::Reporter* reporter, const char* filename) {
5425 SkPath path;
5426 path.setFillType((SkPathFillType) 1);
5427 path.moveTo(SkBits2Float(0x369bbf59), SkBits2Float(0xc2700000));
5428 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5429 path.cubicTo(SkBits2Float(0x3fa0bd4b), SkBits2Float(0xc2a60000), SkBits2Float(0x4020bab6), SkBits2Float(0xc2a5f168), SkBits2Float(0x4071043c), SkBits2Float(0xc2a5d43c));
5430 path.lineTo(SkBits2Float(0x40710446), SkBits2Float(0xc2a5d43c));
5431 path.cubicTo(SkBits2Float(0x40790b7f), SkBits2Float(0xc2a5d151), SkBits2Float(0x40808945), SkBits2Float(0xc2a5ce41), SkBits2Float(0x40848cac), SkBits2Float(0xc2a5cb0c));
5432 path.lineTo(SkBits2Float(0x403fa34c), SkBits2Float(0xc26fb371));
5433 path.quadTo(SkBits2Float(0x4036ef2a), SkBits2Float(0xc26fba67), SkBits2Float(0x402e3a95), SkBits2Float(0xc26fc0bb));
5434 path.lineTo(SkBits2Float(0x402e3a94), SkBits2Float(0xc26fc0ba));
5435 path.cubicTo(SkBits2Float(0x3fe86158), SkBits2Float(0xc26feae9), SkBits2Float(0x3f686554), SkBits2Float(0xc2700000), SkBits2Float(0x369bbf59), SkBits2Float(0xc2700000));
5436 path.close();
5437
5438 SkPath path1(path);
5439 path.reset();
5440 path.setFillType((SkPathFillType) 0);
5441 path.moveTo(SkBits2Float(0x40848cae), SkBits2Float(0xc2a5cb0c));
5442 path.cubicTo(SkBits2Float(0x40c597bc), SkBits2Float(0xc2a5970c), SkBits2Float(0x41033f43), SkBits2Float(0xc2a53cca), SkBits2Float(0x41238fb3), SkBits2Float(0xc2a4bc74));
5443 path.lineTo(SkBits2Float(0x40ec7963), SkBits2Float(0xc26e2c38));
5444 path.cubicTo(SkBits2Float(0x40bdc13f), SkBits2Float(0xc26ee5c4), SkBits2Float(0x408ed689), SkBits2Float(0xc26f6843), SkBits2Float(0x403fa341), SkBits2Float(0xc26fb372));
5445 path.lineTo(SkBits2Float(0x40848cae), SkBits2Float(0xc2a5cb0c));
5446 path.close();
5447
5448 SkPath path2(path);
5449 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5450 }
5451 // op end success 1
5452
battleOp199(skiatest::Reporter * reporter,const char * filename)5453 static void battleOp199(skiatest::Reporter* reporter, const char* filename) {
5454 SkPath path;
5455 path.setFillType((SkPathFillType) 0);
5456 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5457 path.cubicTo(SkBits2Float(0x3ffdfad4), SkBits2Float(0xc2a60000), SkBits2Float(0x407df074), SkBits2Float(0xc2a5db92), SkBits2Float(0x40be4d32), SkBits2Float(0xc2a592c7));
5458 path.lineTo(SkBits2Float(0x40899143), SkBits2Float(0xc26f6217));
5459 path.cubicTo(SkBits2Float(0x40379219), SkBits2Float(0xc26fcb54), SkBits2Float(0x3fb799b8), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea3), SkBits2Float(0xc26fffff));
5460 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5461 path.close();
5462
5463 SkPath path1(path);
5464 path.reset();
5465 path.setFillType((SkPathFillType) 0);
5466 path.moveTo(SkBits2Float(0x40be4d37), SkBits2Float(0xc2a592c7));
5467 path.cubicTo(SkBits2Float(0x40c4a257), SkBits2Float(0xc2a58b80), SkBits2Float(0x40caf70c), SkBits2Float(0xc2a583db), SkBits2Float(0x40d14b4e), SkBits2Float(0xc2a57bda));
5468 path.lineTo(SkBits2Float(0x40974c04), SkBits2Float(0xc26f40f2));
5469 path.cubicTo(SkBits2Float(0x4092b8c1), SkBits2Float(0xc26f4c86), SkBits2Float(0x408e252c), SkBits2Float(0xc26f5792), SkBits2Float(0x4089914a), SkBits2Float(0xc26f6219));
5470 path.lineTo(SkBits2Float(0x40be4d37), SkBits2Float(0xc2a592c7));
5471 path.close();
5472
5473 SkPath path2(path);
5474 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5475 }
5476 // op end success 1
5477
battleOp200(skiatest::Reporter * reporter,const char * filename)5478 static void battleOp200(skiatest::Reporter* reporter, const char* filename) {
5479 SkPath path;
5480 path.setFillType((SkPathFillType) 1);
5481 path.moveTo(SkBits2Float(0x3673fea3), SkBits2Float(0xc26fffff));
5482 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5483 path.cubicTo(SkBits2Float(0x3ffdfad4), SkBits2Float(0xc2a60000), SkBits2Float(0x407df074), SkBits2Float(0xc2a5db92), SkBits2Float(0x40be4d37), SkBits2Float(0xc2a592c7));
5484 path.cubicTo(SkBits2Float(0x40c4a257), SkBits2Float(0xc2a58b80), SkBits2Float(0x40caf70c), SkBits2Float(0xc2a583db), SkBits2Float(0x40d14b4e), SkBits2Float(0xc2a57bda));
5485 path.lineTo(SkBits2Float(0x40974c04), SkBits2Float(0xc26f40f2));
5486 path.cubicTo(SkBits2Float(0x4092b8c1), SkBits2Float(0xc26f4c86), SkBits2Float(0x408e252c), SkBits2Float(0xc26f5792), SkBits2Float(0x4089914a), SkBits2Float(0xc26f6219));
5487 path.lineTo(SkBits2Float(0x40899143), SkBits2Float(0xc26f6217));
5488 path.cubicTo(SkBits2Float(0x40379219), SkBits2Float(0xc26fcb54), SkBits2Float(0x3fb799b8), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea3), SkBits2Float(0xc26fffff));
5489 path.close();
5490
5491 SkPath path1(path);
5492 path.reset();
5493 path.setFillType((SkPathFillType) 0);
5494 path.moveTo(SkBits2Float(0x40d14b4a), SkBits2Float(0xc2a57bdb));
5495 path.cubicTo(SkBits2Float(0x411bf161), SkBits2Float(0xc2a4fa1a), SkBits2Float(0x414ef5ad), SkBits2Float(0xc2a4190e), SkBits2Float(0x4180b83e), SkBits2Float(0xc2a2d9dc));
5496 path.lineTo(SkBits2Float(0x413a19cf), SkBits2Float(0xc26b727f));
5497 path.cubicTo(SkBits2Float(0x41159c04), SkBits2Float(0xc26d3fff), SkBits2Float(0x40e175a8), SkBits2Float(0xc26e855c), SkBits2Float(0x40974c02), SkBits2Float(0xc26f40f4));
5498 path.lineTo(SkBits2Float(0x40d14b4a), SkBits2Float(0xc2a57bdb));
5499 path.close();
5500
5501 SkPath path2(path);
5502 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5503 }
5504 // op end success 1
5505
battleOp201(skiatest::Reporter * reporter,const char * filename)5506 static void battleOp201(skiatest::Reporter* reporter, const char* filename) {
5507 SkPath path;
5508 path.setFillType((SkPathFillType) 0);
5509 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5510 path.cubicTo(SkBits2Float(0x4059d383), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40d9b918), SkBits2Float(0xc2a594d0), SkBits2Float(0x4122e820), SkBits2Float(0xc2a4bf0c));
5511 path.lineTo(SkBits2Float(0x40eb871c), SkBits2Float(0xc26e2ff8));
5512 path.cubicTo(SkBits2Float(0x409d63e0), SkBits2Float(0xc26f6508), SkBits2Float(0x401d76fa), SkBits2Float(0xc2700000), SkBits2Float(0x35f7fd4a), SkBits2Float(0xc2700000));
5513 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5514 path.close();
5515
5516 SkPath path1(path);
5517 path.reset();
5518 path.setFillType((SkPathFillType) 0);
5519 path.moveTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c));
5520 path.cubicTo(SkBits2Float(0x41284f3c), SkBits2Float(0xc2a4a9ac), SkBits2Float(0x412db549), SkBits2Float(0xc2a4933e), SkBits2Float(0x41331a33), SkBits2Float(0xc2a47bbf));
5521 path.lineTo(SkBits2Float(0x410178be), SkBits2Float(0xc26dceac));
5522 path.cubicTo(SkBits2Float(0x40fb24f7), SkBits2Float(0xc26df0a4), SkBits2Float(0x40f356d1), SkBits2Float(0xc26e1114), SkBits2Float(0x40eb871f), SkBits2Float(0xc26e2ff8));
5523 path.lineTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c));
5524 path.close();
5525
5526 SkPath path2(path);
5527 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5528 }
5529 // op end success 1
5530
battleOp202(skiatest::Reporter * reporter,const char * filename)5531 static void battleOp202(skiatest::Reporter* reporter, const char* filename) {
5532 SkPath path;
5533 path.setFillType((SkPathFillType) 1);
5534 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
5535 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5536 path.cubicTo(SkBits2Float(0x4059d380), SkBits2Float(0xc2a60000), SkBits2Float(0x40d9b915), SkBits2Float(0xc2a594d0), SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c));
5537 path.lineTo(SkBits2Float(0x4122e820), SkBits2Float(0xc2a4bf0c));
5538 path.cubicTo(SkBits2Float(0x41284f3d), SkBits2Float(0xc2a4a9ac), SkBits2Float(0x412db54a), SkBits2Float(0xc2a4933e), SkBits2Float(0x41331a33), SkBits2Float(0xc2a47bbf));
5539 path.lineTo(SkBits2Float(0x410178be), SkBits2Float(0xc26dceac));
5540 path.cubicTo(SkBits2Float(0x40fb24f7), SkBits2Float(0xc26df0a4), SkBits2Float(0x40f356d1), SkBits2Float(0xc26e1114), SkBits2Float(0x40eb871f), SkBits2Float(0xc26e2ff8));
5541 path.lineTo(SkBits2Float(0x40eb871c), SkBits2Float(0xc26e2ff8));
5542 path.cubicTo(SkBits2Float(0x409d63e0), SkBits2Float(0xc26f6508), SkBits2Float(0x401d76fa), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
5543 path.close();
5544
5545 SkPath path1(path);
5546 path.reset();
5547 path.setFillType((SkPathFillType) 0);
5548 path.moveTo(SkBits2Float(0x41331a39), SkBits2Float(0xc2a47bc0));
5549 path.cubicTo(SkBits2Float(0x41854b40), SkBits2Float(0xc2a2feb5), SkBits2Float(0x41b05576), SkBits2Float(0xc2a06b6c), SkBits2Float(0x41da0834), SkBits2Float(0xc29ccbb1));
5550 path.lineTo(SkBits2Float(0x419d9d10), SkBits2Float(0xc262b148));
5551 path.cubicTo(SkBits2Float(0x417ef0c0), SkBits2Float(0xc267ee96), SkBits2Float(0x4140b6cf), SkBits2Float(0xc26ba7c4), SkBits2Float(0x410178c0), SkBits2Float(0xc26dcead));
5552 path.lineTo(SkBits2Float(0x41331a39), SkBits2Float(0xc2a47bc0));
5553 path.close();
5554
5555 SkPath path2(path);
5556 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5557 }
5558 // op end success 1
5559
battleOp203(skiatest::Reporter * reporter,const char * filename)5560 static void battleOp203(skiatest::Reporter* reporter, const char* filename) {
5561 SkPath path;
5562 path.setFillType((SkPathFillType) 0);
5563 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5564 path.cubicTo(SkBits2Float(0x4087af55), SkBits2Float(0xc2a5ffff), SkBits2Float(0x410795c5), SkBits2Float(0xc2a559a4), SkBits2Float(0x414aa20a), SkBits2Float(0xc2a40e63));
5565 path.lineTo(SkBits2Float(0x41127b4b), SkBits2Float(0xc26d308f));
5566 path.cubicTo(SkBits2Float(0x40c406cd), SkBits2Float(0xc26f0f7b), SkBits2Float(0x40442bc2), SkBits2Float(0xc26fffff), SkBits2Float(0x36b5ff52), SkBits2Float(0xc26fffff));
5567 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5568 path.close();
5569
5570 SkPath path1(path);
5571 path.reset();
5572 path.setFillType((SkPathFillType) 0);
5573 path.moveTo(SkBits2Float(0x414aa206), SkBits2Float(0xc2a40e63));
5574 path.cubicTo(SkBits2Float(0x4151559c), SkBits2Float(0xc2a3ed46), SkBits2Float(0x41580726), SkBits2Float(0xc2a3ca86), SkBits2Float(0x415eb67b), SkBits2Float(0xc2a3a622));
5575 path.lineTo(SkBits2Float(0x4120ff4d), SkBits2Float(0xc26c99d6));
5576 path.cubicTo(SkBits2Float(0x411c2a2f), SkBits2Float(0xc26cce74), SkBits2Float(0x41175378), SkBits2Float(0xc26d00b1), SkBits2Float(0x41127b46), SkBits2Float(0xc26d308f));
5577 path.lineTo(SkBits2Float(0x414aa206), SkBits2Float(0xc2a40e63));
5578 path.close();
5579
5580 SkPath path2(path);
5581 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5582 }
5583 // op end success 1
5584
battleOp204(skiatest::Reporter * reporter,const char * filename)5585 static void battleOp204(skiatest::Reporter* reporter, const char* filename) {
5586 SkPath path;
5587 path.setFillType((SkPathFillType) 1);
5588 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc26fffff));
5589 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5590 path.cubicTo(SkBits2Float(0x4087af52), SkBits2Float(0xc2a60000), SkBits2Float(0x410795c2), SkBits2Float(0xc2a559a4), SkBits2Float(0x414aa206), SkBits2Float(0xc2a40e63));
5591 path.lineTo(SkBits2Float(0x414aa20a), SkBits2Float(0xc2a40e63));
5592 path.cubicTo(SkBits2Float(0x4151559f), SkBits2Float(0xc2a3ed46), SkBits2Float(0x41580727), SkBits2Float(0xc2a3ca86), SkBits2Float(0x415eb67b), SkBits2Float(0xc2a3a622));
5593 path.lineTo(SkBits2Float(0x4120ff4d), SkBits2Float(0xc26c99d6));
5594 path.cubicTo(SkBits2Float(0x411c2a31), SkBits2Float(0xc26cce74), SkBits2Float(0x4117537b), SkBits2Float(0xc26d00b1), SkBits2Float(0x41127b4b), SkBits2Float(0xc26d308f));
5595 path.lineTo(SkBits2Float(0x41127b46), SkBits2Float(0xc26d308f));
5596 path.cubicTo(SkBits2Float(0x40c406c6), SkBits2Float(0xc26f0f7b), SkBits2Float(0x40442bbb), SkBits2Float(0xc26fffff), SkBits2Float(0x36b5ff52), SkBits2Float(0xc26fffff));
5597 path.close();
5598
5599 SkPath path1(path);
5600 path.reset();
5601 path.setFillType((SkPathFillType) 0);
5602 path.moveTo(SkBits2Float(0x415eb680), SkBits2Float(0xc2a3a623));
5603 path.cubicTo(SkBits2Float(0x41a59721), SkBits2Float(0xc2a157ad), SkBits2Float(0x41da77ab), SkBits2Float(0xc29d5c25), SkBits2Float(0x420662d7), SkBits2Float(0xc297cafd));
5604 path.lineTo(SkBits2Float(0x41c24b0d), SkBits2Float(0xc25b75ac));
5605 path.cubicTo(SkBits2Float(0x419deda5), SkBits2Float(0xc2638226), SkBits2Float(0x416f6860), SkBits2Float(0xc269442a), SkBits2Float(0x4120ff4a), SkBits2Float(0xc26c99d9));
5606 path.lineTo(SkBits2Float(0x415eb680), SkBits2Float(0xc2a3a623));
5607 path.close();
5608
5609 SkPath path2(path);
5610 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5611 }
5612 // op end success 1
5613
battleOp205(skiatest::Reporter * reporter,const char * filename)5614 static void battleOp205(skiatest::Reporter* reporter, const char* filename) {
5615 SkPath path;
5616 path.setFillType((SkPathFillType) 0);
5617 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5618 path.cubicTo(SkBits2Float(0x40a2e582), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4122b94f), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4));
5619 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464));
5620 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
5621 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5622 path.close();
5623
5624 SkPath path1(path);
5625 path.reset();
5626 path.setFillType((SkPathFillType) 0);
5627 path.moveTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4));
5628 path.cubicTo(SkBits2Float(0x417acd1a), SkBits2Float(0xc2a30415), SkBits2Float(0x41816508), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb));
5629 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8));
5630 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463));
5631 path.lineTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4));
5632 path.close();
5633
5634 SkPath path2(path);
5635 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5636 }
5637 // op end success 1
5638
battleOp206(skiatest::Reporter * reporter,const char * filename)5639 static void battleOp206(skiatest::Reporter* reporter, const char* filename) {
5640 SkPath path;
5641 path.setFillType((SkPathFillType) 1);
5642 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
5643 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5644 path.cubicTo(SkBits2Float(0x40a2e57f), SkBits2Float(0xc2a60000), SkBits2Float(0x4122b94c), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4));
5645 path.lineTo(SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4));
5646 path.cubicTo(SkBits2Float(0x417acd1d), SkBits2Float(0xc2a30415), SkBits2Float(0x41816509), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb));
5647 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8));
5648 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463));
5649 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464));
5650 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000));
5651 path.close();
5652
5653 SkPath path1(path);
5654 path.reset();
5655 path.setFillType((SkPathFillType) 0);
5656 path.moveTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc));
5657 path.cubicTo(SkBits2Float(0x41c61a92), SkBits2Float(0xc29f4c69), SkBits2Float(0x42023dd6), SkBits2Float(0xc299958f), SkBits2Float(0x421f3a98), SkBits2Float(0xc291a994));
5658 path.lineTo(SkBits2Float(0x41e635e1), SkBits2Float(0xc25298a5));
5659 path.cubicTo(SkBits2Float(0x41bc4d11), SkBits2Float(0xc25e0caa), SkBits2Float(0x418f3524), SkBits2Float(0xc2664fa2), SkBits2Float(0x4140d729), SkBits2Float(0xc26b1ba9));
5660 path.lineTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc));
5661 path.close();
5662
5663 SkPath path2(path);
5664 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5665 }
5666 // op end success 1
5667
battleOp207(skiatest::Reporter * reporter,const char * filename)5668 static void battleOp207(skiatest::Reporter* reporter, const char* filename) {
5669 SkPath path;
5670 path.setFillType((SkPathFillType) 0);
5671 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5672 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158cf), SkBits2Float(0xc2a1f965));
5673 path.lineTo(SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8));
5674 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x35bbfd46), SkBits2Float(0xc2700000));
5675 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5676 path.close();
5677
5678 SkPath path1(path);
5679 path.reset();
5680 path.setFillType((SkPathFillType) 0);
5681 path.moveTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965));
5682 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207));
5683 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a));
5684 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8));
5685 path.lineTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965));
5686 path.close();
5687
5688 SkPath path2(path);
5689 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5690 }
5691 // op end success 1
5692
battleOp208(skiatest::Reporter * reporter,const char * filename)5693 static void battleOp208(skiatest::Reporter* reporter, const char* filename) {
5694 SkPath path;
5695 path.setFillType((SkPathFillType) 1);
5696 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
5697 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5698 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965));
5699 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207));
5700 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a));
5701 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8));
5702 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
5703 path.close();
5704
5705 SkPath path1(path);
5706 path.reset();
5707 path.setFillType((SkPathFillType) 0);
5708 path.moveTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208));
5709 path.cubicTo(SkBits2Float(0x41eca53e), SkBits2Float(0xc29c5d1a), SkBits2Float(0x421ad1be), SkBits2Float(0xc2942e2b), SkBits2Float(0x423b8fe1), SkBits2Float(0xc288f8a3));
5710 path.lineTo(SkBits2Float(0x42079647), SkBits2Float(0xc24607dc));
5711 path.cubicTo(SkBits2Float(0x41dfd5cc), SkBits2Float(0xc2563c94), SkBits2Float(0x41ab11aa), SkBits2Float(0xc2621167), SkBits2Float(0x4166c24e), SkBits2Float(0xc268f69b));
5712 path.lineTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208));
5713 path.close();
5714
5715 SkPath path2(path);
5716 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5717 }
5718 // op end success 1
5719
battleOp209(skiatest::Reporter * reporter,const char * filename)5720 static void battleOp209(skiatest::Reporter* reporter, const char* filename) {
5721 SkPath path;
5722 path.setFillType((SkPathFillType) 0);
5723 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5724 path.cubicTo(SkBits2Float(0x40e86425), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4167e385), SkBits2Float(0xc2a41801), SkBits2Float(0x41ac0ecd), SkBits2Float(0xc2a05484));
5725 path.lineTo(SkBits2Float(0x4178c21d), SkBits2Float(0xc267cd79));
5726 path.cubicTo(SkBits2Float(0x4127a168), SkBits2Float(0xc26d3e79), SkBits2Float(0x40a7fe68), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
5727 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5728 path.close();
5729
5730 SkPath path1(path);
5731 path.reset();
5732 path.setFillType((SkPathFillType) 0);
5733 path.moveTo(SkBits2Float(0x41ac0ecb), SkBits2Float(0xc2a05485));
5734 path.cubicTo(SkBits2Float(0x41b1a941), SkBits2Float(0xc29ff44e), SkBits2Float(0x41b73ea0), SkBits2Float(0xc29f8f65), SkBits2Float(0x41bcce84), SkBits2Float(0xc29f25d1));
5735 path.lineTo(SkBits2Float(0x41887c9d), SkBits2Float(0xc26617d6));
5736 path.cubicTo(SkBits2Float(0x4184774a), SkBits2Float(0xc266b07c), SkBits2Float(0x41806e06), SkBits2Float(0xc2674260), SkBits2Float(0x4178c21e), SkBits2Float(0xc267cd7a));
5737 path.lineTo(SkBits2Float(0x41ac0ecb), SkBits2Float(0xc2a05485));
5738 path.close();
5739
5740 SkPath path2(path);
5741 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5742 }
5743 // op end success 1
5744
battleOp210(skiatest::Reporter * reporter,const char * filename)5745 static void battleOp210(skiatest::Reporter* reporter, const char* filename) {
5746 SkPath path;
5747 path.setFillType((SkPathFillType) 1);
5748 path.moveTo(SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
5749 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5750 path.cubicTo(SkBits2Float(0x40e86421), SkBits2Float(0xc2a60000), SkBits2Float(0x4167e381), SkBits2Float(0xc2a41801), SkBits2Float(0x41ac0eca), SkBits2Float(0xc2a05484));
5751 path.lineTo(SkBits2Float(0x41ac0ecd), SkBits2Float(0xc2a05484));
5752 path.lineTo(SkBits2Float(0x4178c21e), SkBits2Float(0xc267cd7a));
5753 path.lineTo(SkBits2Float(0x41ac0ecb), SkBits2Float(0xc2a05485));
5754 path.cubicTo(SkBits2Float(0x41b1a941), SkBits2Float(0xc29ff44e), SkBits2Float(0x41b73ea0), SkBits2Float(0xc29f8f65), SkBits2Float(0x41bcce84), SkBits2Float(0xc29f25d1));
5755 path.lineTo(SkBits2Float(0x41887c9d), SkBits2Float(0xc26617d6));
5756 path.cubicTo(SkBits2Float(0x4184774a), SkBits2Float(0xc266b07c), SkBits2Float(0x41806e06), SkBits2Float(0xc2674260), SkBits2Float(0x4178c21d), SkBits2Float(0xc267cd79));
5757 path.cubicTo(SkBits2Float(0x4127a168), SkBits2Float(0xc26d3e79), SkBits2Float(0x40a7fe68), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000));
5758 path.close();
5759
5760 SkPath path1(path);
5761 path.reset();
5762 path.setFillType((SkPathFillType) 0);
5763 path.moveTo(SkBits2Float(0x41bcce83), SkBits2Float(0xc29f25d2));
5764 path.cubicTo(SkBits2Float(0x420ba3b4), SkBits2Float(0xc2987080), SkBits2Float(0x42357f09), SkBits2Float(0xc28cfcb1), SkBits2Float(0x42592f07), SkBits2Float(0xc27b1ba7));
5765 path.lineTo(SkBits2Float(0x421d0012), SkBits2Float(0xc235861c));
5766 path.cubicTo(SkBits2Float(0x420333bc), SkBits2Float(0xc24bd636), SkBits2Float(0x41c9e36e), SkBits2Float(0xc25c64f6), SkBits2Float(0x41887c9c), SkBits2Float(0xc26617d7));
5767 path.lineTo(SkBits2Float(0x41bcce83), SkBits2Float(0xc29f25d2));
5768 path.close();
5769
5770 SkPath path2(path);
5771 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5772 }
5773 // op end success 1
5774
battleOp211(skiatest::Reporter * reporter,const char * filename)5775 static void battleOp211(skiatest::Reporter* reporter, const char* filename) {
5776 SkPath path;
5777 path.setFillType((SkPathFillType) 0);
5778 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5779 path.cubicTo(SkBits2Float(0x411e5541), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419db1ee), SkBits2Float(0xc2a275ef), SkBits2Float(0x41e7e0a3), SkBits2Float(0xc29b8c98));
5780 path.lineTo(SkBits2Float(0x41a79f51), SkBits2Float(0xc260e3f1));
5781 path.cubicTo(SkBits2Float(0x4163fe32), SkBits2Float(0xc26ae208), SkBits2Float(0x40e4ea54), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000));
5782 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5783 path.close();
5784
5785 SkPath path1(path);
5786 path.reset();
5787 path.setFillType((SkPathFillType) 0);
5788 path.moveTo(SkBits2Float(0x41e7e0a8), SkBits2Float(0xc29b8c98));
5789 path.cubicTo(SkBits2Float(0x41ef46bb), SkBits2Float(0xc29adc20), SkBits2Float(0x41f6a013), SkBits2Float(0xc29a2338), SkBits2Float(0x41fdebc8), SkBits2Float(0xc29961f8));
5790 path.lineTo(SkBits2Float(0x41b78eb0), SkBits2Float(0xc25dc215));
5791 path.cubicTo(SkBits2Float(0x41b2488a), SkBits2Float(0xc25ed97a), SkBits2Float(0x41acf889), SkBits2Float(0xc25fe4cd), SkBits2Float(0x41a79f51), SkBits2Float(0xc260e3f1));
5792 path.lineTo(SkBits2Float(0x41e7e0a8), SkBits2Float(0xc29b8c98));
5793 path.close();
5794
5795 SkPath path2(path);
5796 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5797 }
5798 // op end success 1
5799
battleOp212(skiatest::Reporter * reporter,const char * filename)5800 static void battleOp212(skiatest::Reporter* reporter, const char* filename) {
5801 SkPath path;
5802 path.setFillType((SkPathFillType) 1);
5803 path.moveTo(SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000));
5804 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5805 path.cubicTo(SkBits2Float(0x411e5541), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419db1ee), SkBits2Float(0xc2a275ef), SkBits2Float(0x41e7e0a8), SkBits2Float(0xc29b8c98));
5806 path.cubicTo(SkBits2Float(0x41ef46bb), SkBits2Float(0xc29adc20), SkBits2Float(0x41f6a013), SkBits2Float(0xc29a2338), SkBits2Float(0x41fdebc8), SkBits2Float(0xc29961f8));
5807 path.lineTo(SkBits2Float(0x41b78eb0), SkBits2Float(0xc25dc215));
5808 path.cubicTo(SkBits2Float(0x41b2488a), SkBits2Float(0xc25ed97a), SkBits2Float(0x41acf889), SkBits2Float(0xc25fe4cd), SkBits2Float(0x41a79f51), SkBits2Float(0xc260e3f1));
5809 path.cubicTo(SkBits2Float(0x4163fe32), SkBits2Float(0xc26ae208), SkBits2Float(0x40e4ea54), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000));
5810 path.close();
5811
5812 SkPath path1(path);
5813 path.reset();
5814 path.setFillType((SkPathFillType) 0);
5815 path.moveTo(SkBits2Float(0x41fdebc9), SkBits2Float(0xc29961f9));
5816 path.cubicTo(SkBits2Float(0x423a7ccd), SkBits2Float(0xc28d1085), SkBits2Float(0x426d8f8d), SkBits2Float(0xc270b4b0), SkBits2Float(0x4288fa0c), SkBits2Float(0xc23b8bbf));
5817 path.lineTo(SkBits2Float(0x424609e8), SkBits2Float(0xc207934a));
5818 path.cubicTo(SkBits2Float(0x422bbb0d), SkBits2Float(0xc22e0114), SkBits2Float(0x4206cf6b), SkBits2Float(0xc24bf2e1), SkBits2Float(0x41b78eaf), SkBits2Float(0xc25dc216));
5819 path.lineTo(SkBits2Float(0x41fdebc9), SkBits2Float(0xc29961f9));
5820 path.close();
5821
5822 SkPath path2(path);
5823 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5824 }
5825 // op end success 1
5826
battleOp213(skiatest::Reporter * reporter,const char * filename)5827 static void battleOp213(skiatest::Reporter* reporter, const char* filename) {
5828 SkPath path;
5829 path.setFillType((SkPathFillType) 0);
5830 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5831 path.cubicTo(SkBits2Float(0x4151cd59), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41d04f3f), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e058), SkBits2Float(0xc293de54));
5832 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926));
5833 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
5834 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5835 path.close();
5836
5837 SkPath path1(path);
5838 path.reset();
5839 path.setFillType((SkPathFillType) 0);
5840 path.moveTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54));
5841 path.cubicTo(SkBits2Float(0x421b86ea), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e));
5842 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790));
5843 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927));
5844 path.lineTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54));
5845 path.close();
5846
5847 SkPath path2(path);
5848 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5849 }
5850 // op end success 1
5851
battleOp214(skiatest::Reporter * reporter,const char * filename)5852 static void battleOp214(skiatest::Reporter* reporter, const char* filename) {
5853 SkPath path;
5854 path.setFillType((SkPathFillType) 1);
5855 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
5856 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5857 path.cubicTo(SkBits2Float(0x4151cd58), SkBits2Float(0xc2a60000), SkBits2Float(0x41d04f3d), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e057), SkBits2Float(0xc293de54));
5858 path.lineTo(SkBits2Float(0x4216e058), SkBits2Float(0xc293de54));
5859 path.cubicTo(SkBits2Float(0x421b86eb), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e));
5860 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790));
5861 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927));
5862 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926));
5863 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
5864 path.close();
5865
5866 SkPath path1(path);
5867 path.reset();
5868 path.setFillType((SkPathFillType) 0);
5869 path.moveTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f));
5870 path.cubicTo(SkBits2Float(0x426f06c3), SkBits2Float(0xc275d105), SkBits2Float(0x42930d85), SkBits2Float(0xc2303df6), SkBits2Float(0x429f3103), SkBits2Float(0xc1bc373f));
5871 path.lineTo(SkBits2Float(0x42662806), SkBits2Float(0xc1880f44));
5872 path.cubicTo(SkBits2Float(0x42549b44), SkBits2Float(0xc1fececc), SkBits2Float(0x422cca4c), SkBits2Float(0xc231b2de), SkBits2Float(0x41ee0e18), SkBits2Float(0xc2506792));
5873 path.lineTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f));
5874 path.close();
5875
5876 SkPath path2(path);
5877 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5878 }
5879 // op end success 1
5880
battleOp215(skiatest::Reporter * reporter,const char * filename)5881 static void battleOp215(skiatest::Reporter* reporter, const char* filename) {
5882 SkPath path;
5883 path.setFillType((SkPathFillType) 0);
5884 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5885 path.cubicTo(SkBits2Float(0x41741cf0), SkBits2Float(0xc2a60000), SkBits2Float(0x41f1c060), SkBits2Float(0xc29d96da), SkBits2Float(0x422cf7a2), SkBits2Float(0xc28db11c));
5886 path.lineTo(SkBits2Float(0x41fa12be), SkBits2Float(0xc24cdb0d));
5887 path.cubicTo(SkBits2Float(0x41aec295), SkBits2Float(0xc263d704), SkBits2Float(0x413077a0), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5888 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5889 path.close();
5890
5891 SkPath path1(path);
5892 path.reset();
5893 path.setFillType((SkPathFillType) 0);
5894 path.moveTo(SkBits2Float(0x422cf7a1), SkBits2Float(0xc28db11c));
5895 path.cubicTo(SkBits2Float(0x423224e7), SkBits2Float(0xc28c1ca8), SkBits2Float(0x42373bc3), SkBits2Float(0xc28a7620), SkBits2Float(0x423c3abd), SkBits2Float(0xc288bdfd));
5896 path.lineTo(SkBits2Float(0x420811ca), SkBits2Float(0xc245b313));
5897 path.cubicTo(SkBits2Float(0x4204753a), SkBits2Float(0xc2482f6b), SkBits2Float(0x4200c767), SkBits2Float(0xc24a924f), SkBits2Float(0x41fa12c1), SkBits2Float(0xc24cdb0e));
5898 path.lineTo(SkBits2Float(0x422cf7a1), SkBits2Float(0xc28db11c));
5899 path.close();
5900
5901 SkPath path2(path);
5902 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5903 }
5904 // op end success 1
5905
battleOp216(skiatest::Reporter * reporter,const char * filename)5906 static void battleOp216(skiatest::Reporter* reporter, const char* filename) {
5907 SkPath path;
5908 path.setFillType((SkPathFillType) 1);
5909 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5910 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5911 path.cubicTo(SkBits2Float(0x41741cef), SkBits2Float(0xc2a60000), SkBits2Float(0x41f1c05e), SkBits2Float(0xc29d96da), SkBits2Float(0x422cf7a1), SkBits2Float(0xc28db11c));
5912 path.lineTo(SkBits2Float(0x422cf7a2), SkBits2Float(0xc28db11c));
5913 path.cubicTo(SkBits2Float(0x423224e8), SkBits2Float(0xc28c1ca8), SkBits2Float(0x42373bc3), SkBits2Float(0xc28a7620), SkBits2Float(0x423c3abd), SkBits2Float(0xc288bdfd));
5914 path.lineTo(SkBits2Float(0x420811ca), SkBits2Float(0xc245b313));
5915 path.cubicTo(SkBits2Float(0x4204753a), SkBits2Float(0xc2482f6b), SkBits2Float(0x4200c767), SkBits2Float(0xc24a924f), SkBits2Float(0x41fa12c1), SkBits2Float(0xc24cdb0e));
5916 path.lineTo(SkBits2Float(0x41fa12be), SkBits2Float(0xc24cdb0d));
5917 path.cubicTo(SkBits2Float(0x41aec295), SkBits2Float(0xc263d704), SkBits2Float(0x413077a0), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5918 path.close();
5919
5920 SkPath path1(path);
5921 path.reset();
5922 path.setFillType((SkPathFillType) 0);
5923 path.moveTo(SkBits2Float(0x423c3abe), SkBits2Float(0xc288bdfe));
5924 path.cubicTo(SkBits2Float(0x42874551), SkBits2Float(0xc258d4f5), SkBits2Float(0x42a17ace), SkBits2Float(0xc1fc3ce7), SkBits2Float(0x42a57844), SkBits2Float(0xc0d41d22));
5925 path.lineTo(SkBits2Float(0x426f3bc1), SkBits2Float(0xc09955d3));
5926 path.cubicTo(SkBits2Float(0x426976f3), SkBits2Float(0xc1b65735), SkBits2Float(0x4243927c), SkBits2Float(0xc21cbef5), SkBits2Float(0x420811ca), SkBits2Float(0xc245b314));
5927 path.lineTo(SkBits2Float(0x423c3abe), SkBits2Float(0xc288bdfe));
5928 path.close();
5929
5930 SkPath path2(path);
5931 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5932 }
5933 // op end success 1
5934
battleOp217(skiatest::Reporter * reporter,const char * filename)5935 static void battleOp217(skiatest::Reporter* reporter, const char* filename) {
5936 SkPath path;
5937 path.setFillType((SkPathFillType) 0);
5938 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5939 path.cubicTo(SkBits2Float(0x4188e880), SkBits2Float(0xc2a60000), SkBits2Float(0x42073c1a), SkBits2Float(0xc29b6b86), SkBits2Float(0x423f3295), SkBits2Float(0xc287b573));
5940 path.lineTo(SkBits2Float(0x420a3712), SkBits2Float(0xc2443499));
5941 path.cubicTo(SkBits2Float(0x41c3852b), SkBits2Float(0xc260b421), SkBits2Float(0x4145f08c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5942 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5943 path.close();
5944
5945 SkPath path1(path);
5946 path.reset();
5947 path.setFillType((SkPathFillType) 0);
5948 path.moveTo(SkBits2Float(0x423f3294), SkBits2Float(0xc287b572));
5949 path.cubicTo(SkBits2Float(0x4244c015), SkBits2Float(0xc285c0c3), SkBits2Float(0x424a2e84), SkBits2Float(0xc283b664), SkBits2Float(0x424f7bec), SkBits2Float(0xc281970f));
5950 path.lineTo(SkBits2Float(0x4215fd0e), SkBits2Float(0xc23b5bf1));
5951 path.cubicTo(SkBits2Float(0x421227cb), SkBits2Float(0xc23e6d7a), SkBits2Float(0x420e3aa9), SkBits2Float(0xc24160b8), SkBits2Float(0x420a3713), SkBits2Float(0xc2443498));
5952 path.lineTo(SkBits2Float(0x423f3294), SkBits2Float(0xc287b572));
5953 path.close();
5954
5955 SkPath path2(path);
5956 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5957 }
5958 // op end success 1
5959
battleOp218(skiatest::Reporter * reporter,const char * filename)5960 static void battleOp218(skiatest::Reporter* reporter, const char* filename) {
5961 SkPath path;
5962 path.setFillType((SkPathFillType) 1);
5963 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5964 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
5965 path.cubicTo(SkBits2Float(0x4188e880), SkBits2Float(0xc2a60000), SkBits2Float(0x42073c1a), SkBits2Float(0xc29b6b86), SkBits2Float(0x423f3295), SkBits2Float(0xc287b573));
5966 path.lineTo(SkBits2Float(0x424f7bec), SkBits2Float(0xc281970f));
5967 path.lineTo(SkBits2Float(0x4215fd0e), SkBits2Float(0xc23b5bf1));
5968 path.cubicTo(SkBits2Float(0x421227cb), SkBits2Float(0xc23e6d7a), SkBits2Float(0x420e3aa9), SkBits2Float(0xc24160b8), SkBits2Float(0x420a3713), SkBits2Float(0xc2443498));
5969 path.lineTo(SkBits2Float(0x420a3712), SkBits2Float(0xc2443499));
5970 path.cubicTo(SkBits2Float(0x41c3852b), SkBits2Float(0xc260b421), SkBits2Float(0x4145f08c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
5971 path.close();
5972
5973 SkPath path1(path);
5974 path.reset();
5975 path.setFillType((SkPathFillType) 0);
5976 path.moveTo(SkBits2Float(0x424f7bed), SkBits2Float(0xc281970f));
5977 path.cubicTo(SkBits2Float(0x42939bdb), SkBits2Float(0xc23cf22a), SkBits2Float(0x42aabb70), SkBits2Float(0xc19e30f8), SkBits2Float(0x42a530dd), SkBits2Float(0x4102f5b1));
5978 path.lineTo(SkBits2Float(0x426ed486), SkBits2Float(0x40bd56e4));
5979 path.cubicTo(SkBits2Float(0x4276d778), SkBits2Float(0xc164b5d6), SkBits2Float(0x4255690c), SkBits2Float(0xc2089663), SkBits2Float(0x4215fd0d), SkBits2Float(0xc23b5bf2));
5980 path.lineTo(SkBits2Float(0x424f7bed), SkBits2Float(0xc281970f));
5981 path.close();
5982
5983 SkPath path2(path);
5984 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
5985 }
5986 // op end success 1
5987
battleOp219(skiatest::Reporter * reporter,const char * filename)5988 static void battleOp219(skiatest::Reporter* reporter, const char* filename) {
5989 SkPath path;
5990 path.setFillType((SkPathFillType) 0);
5991 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5992 path.cubicTo(SkBits2Float(0x4198fc97), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4216a3e3), SkBits2Float(0xc298caff), SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9b));
5993 path.lineTo(SkBits2Float(0x4217bd0d), SkBits2Float(0xc239f1d8));
5994 path.cubicTo(SkBits2Float(0x41d9cb04), SkBits2Float(0xc25ce7ce), SkBits2Float(0x415d2f7f), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
5995 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
5996 path.close();
5997
5998 SkPath path1(path);
5999 path.reset();
6000 path.setFillType((SkPathFillType) 0);
6001 path.moveTo(SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9c));
6002 path.cubicTo(SkBits2Float(0x4257c623), SkBits2Float(0xc27c6f1e), SkBits2Float(0x425d7a38), SkBits2Float(0xc27771f7), SkBits2Float(0x42630157), SkBits2Float(0xc27243fd));
6003 path.lineTo(SkBits2Float(0x422419a4), SkBits2Float(0xc22f21bb));
6004 path.cubicTo(SkBits2Float(0x42201aab), SkBits2Float(0xc232e046), SkBits2Float(0x421bfb30), SkBits2Float(0xc2367b84), SkBits2Float(0x4217bd0d), SkBits2Float(0xc239f1d8));
6005 path.lineTo(SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9c));
6006 path.close();
6007
6008 SkPath path2(path);
6009 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6010 }
6011 // op end success 1
6012
battleOp220(skiatest::Reporter * reporter,const char * filename)6013 static void battleOp220(skiatest::Reporter* reporter, const char* filename) {
6014 SkPath path;
6015 path.setFillType((SkPathFillType) 1);
6016 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
6017 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6018 path.cubicTo(SkBits2Float(0x4198fc97), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4216a3e3), SkBits2Float(0xc298caff), SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9c));
6019 path.cubicTo(SkBits2Float(0x4257c623), SkBits2Float(0xc27c6f1e), SkBits2Float(0x425d7a38), SkBits2Float(0xc27771f7), SkBits2Float(0x42630157), SkBits2Float(0xc27243fd));
6020 path.lineTo(SkBits2Float(0x422419a4), SkBits2Float(0xc22f21bb));
6021 path.cubicTo(SkBits2Float(0x42201aab), SkBits2Float(0xc232e046), SkBits2Float(0x421bfb30), SkBits2Float(0xc2367b84), SkBits2Float(0x4217bd0d), SkBits2Float(0xc239f1d8));
6022 path.cubicTo(SkBits2Float(0x41d9cb04), SkBits2Float(0xc25ce7ce), SkBits2Float(0x415d2f7f), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
6023 path.close();
6024
6025 SkPath path1(path);
6026 path.reset();
6027 path.setFillType((SkPathFillType) 0);
6028 path.moveTo(SkBits2Float(0x42630157), SkBits2Float(0xc27243ff));
6029 path.cubicTo(SkBits2Float(0x429f78af), SkBits2Float(0xc21c1e80), SkBits2Float(0x42b11918), SkBits2Float(0xc0cad7ee), SkBits2Float(0x429f0274), SkBits2Float(0x41bea8f4));
6030 path.lineTo(SkBits2Float(0x4265e4b4), SkBits2Float(0x4189d394));
6031 path.cubicTo(SkBits2Float(0x428005cc), SkBits2Float(0xc092a249), SkBits2Float(0x42668fa3), SkBits2Float(0xc1e1b6e5), SkBits2Float(0x422419a4), SkBits2Float(0xc22f21bb));
6032 path.lineTo(SkBits2Float(0x42630157), SkBits2Float(0xc27243ff));
6033 path.close();
6034
6035 SkPath path2(path);
6036 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6037 }
6038 // op end success 1
6039
battleOp221(skiatest::Reporter * reporter,const char * filename)6040 static void battleOp221(skiatest::Reporter* reporter, const char* filename) {
6041 SkPath path;
6042 path.setFillType((SkPathFillType) 0);
6043 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6044 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b67), SkBits2Float(0xc26ce46c));
6045 path.lineTo(SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58));
6046 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
6047 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6048 path.close();
6049
6050 SkPath path1(path);
6051 path.reset();
6052 path.setFillType((SkPathFillType) 0);
6053 path.moveTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d));
6054 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2));
6055 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e));
6056 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282652), SkBits2Float(0xc22b3f58));
6057 path.lineTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d));
6058 path.close();
6059
6060 SkPath path2(path);
6061 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6062 }
6063 // op end success 1
6064
battleOp222(skiatest::Reporter * reporter,const char * filename)6065 static void battleOp222(skiatest::Reporter* reporter, const char* filename) {
6066 SkPath path;
6067 path.setFillType((SkPathFillType) 1);
6068 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6069 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6070 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d));
6071 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2));
6072 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e));
6073 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58));
6074 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6075 path.close();
6076
6077 SkPath path1(path);
6078 path.reset();
6079 path.setFillType((SkPathFillType) 0);
6080 path.moveTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2));
6081 path.cubicTo(SkBits2Float(0x42ac7185), SkBits2Float(0xc1db2f83), SkBits2Float(0x42b35ed0), SkBits2Float(0x413e447a), SkBits2Float(0x428e4a3d), SkBits2Float(0x422afde8));
6082 path.lineTo(SkBits2Float(0x424db871), SkBits2Float(0x41f73799));
6083 path.cubicTo(SkBits2Float(0x4281aa54), SkBits2Float(0x41098afa), SkBits2Float(0x427950da), SkBits2Float(0xc19e728d), SkBits2Float(0x4234ec66), SkBits2Float(0xc21db120));
6084 path.lineTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2));
6085 path.close();
6086
6087 SkPath path2(path);
6088 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6089 }
6090 // op end success 1
6091
battleOp223(skiatest::Reporter * reporter,const char * filename)6092 static void battleOp223(skiatest::Reporter* reporter, const char* filename) {
6093 SkPath path;
6094 path.setFillType((SkPathFillType) 0);
6095 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6096 path.cubicTo(SkBits2Float(0x41c50a2c), SkBits2Float(0xc2a60000), SkBits2Float(0x423ff37f), SkBits2Float(0xc2901f4e), SkBits2Float(0x427f077c), SkBits2Float(0xc25490c6));
6097 path.lineTo(SkBits2Float(0x42385bc5), SkBits2Float(0xc219a96d));
6098 path.cubicTo(SkBits2Float(0x420ac287), SkBits2Float(0xc2505e9c), SkBits2Float(0x418e7039), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6099 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6100 path.close();
6101
6102 SkPath path1(path);
6103 path.reset();
6104 path.setFillType((SkPathFillType) 0);
6105 path.moveTo(SkBits2Float(0x427f077b), SkBits2Float(0xc25490c6));
6106 path.cubicTo(SkBits2Float(0x42829e52), SkBits2Float(0xc24d1e28), SkBits2Float(0x42858ec1), SkBits2Float(0xc24566d6), SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081));
6107 path.lineTo(SkBits2Float(0x42451839), SkBits2Float(0xc208f1b7));
6108 path.cubicTo(SkBits2Float(0x4241186a), SkBits2Float(0xc20eb335), SkBits2Float(0x423cd88e), SkBits2Float(0xc2144725), SkBits2Float(0x42385bc4), SkBits2Float(0xc219a96c));
6109 path.lineTo(SkBits2Float(0x427f077b), SkBits2Float(0xc25490c6));
6110 path.close();
6111
6112 SkPath path2(path);
6113 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6114 }
6115 // op end success 1
6116
battleOp224(skiatest::Reporter * reporter,const char * filename)6117 static void battleOp224(skiatest::Reporter* reporter, const char* filename) {
6118 SkPath path;
6119 path.setFillType((SkPathFillType) 1);
6120 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6121 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6122 path.cubicTo(SkBits2Float(0x41c50a2c), SkBits2Float(0xc2a60000), SkBits2Float(0x423ff37f), SkBits2Float(0xc2901f4e), SkBits2Float(0x427f077c), SkBits2Float(0xc25490c6));
6123 path.lineTo(SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081));
6124 path.lineTo(SkBits2Float(0x42451839), SkBits2Float(0xc208f1b7));
6125 path.cubicTo(SkBits2Float(0x4241186a), SkBits2Float(0xc20eb335), SkBits2Float(0x423cd88e), SkBits2Float(0xc2144725), SkBits2Float(0x42385bc4), SkBits2Float(0xc219a96c));
6126 path.lineTo(SkBits2Float(0x42385bc5), SkBits2Float(0xc219a96d));
6127 path.cubicTo(SkBits2Float(0x420ac287), SkBits2Float(0xc2505e9c), SkBits2Float(0x418e7039), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6128 path.close();
6129
6130 SkPath path1(path);
6131 path.reset();
6132 path.setFillType((SkPathFillType) 0);
6133 path.moveTo(SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081));
6134 path.cubicTo(SkBits2Float(0x42b71f8a), SkBits2Float(0xc15aea65), SkBits2Float(0x42adb77f), SkBits2Float(0x42002593), SkBits2Float(0x42645e8b), SkBits2Float(0x4270faee));
6135 path.lineTo(SkBits2Float(0x42251616), SkBits2Float(0x422e33d9));
6136 path.cubicTo(SkBits2Float(0x427b2825), SkBits2Float(0x41b945be), SkBits2Float(0x428460d4), SkBits2Float(0xc11e4099), SkBits2Float(0x4245183a), SkBits2Float(0xc208f1b8));
6137 path.lineTo(SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081));
6138 path.close();
6139
6140 SkPath path2(path);
6141 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6142 }
6143 // op end success 1
6144
battleOp225(skiatest::Reporter * reporter,const char * filename)6145 static void battleOp225(skiatest::Reporter* reporter, const char* filename) {
6146 SkPath path;
6147 path.setFillType((SkPathFillType) 0);
6148 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6149 path.cubicTo(SkBits2Float(0x41d8749b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4251a993), SkBits2Float(0xc28b9f9f), SkBits2Float(0x4287e789), SkBits2Float(0xc23ea40d));
6150 path.lineTo(SkBits2Float(0x42447d05), SkBits2Float(0xc209d00a));
6151 path.cubicTo(SkBits2Float(0x4217902d), SkBits2Float(0xc249dd89), SkBits2Float(0x419c7951), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
6152 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6153 path.close();
6154
6155 SkPath path1(path);
6156 path.reset();
6157 path.setFillType((SkPathFillType) 0);
6158 path.moveTo(SkBits2Float(0x4287e78a), SkBits2Float(0xc23ea40e));
6159 path.cubicTo(SkBits2Float(0x428af3dc), SkBits2Float(0xc235f2f3), SkBits2Float(0x428dca5e), SkBits2Float(0xc22cf844), SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef));
6160 path.lineTo(SkBits2Float(0x4250c881), SkBits2Float(0xc1ecb95a));
6161 path.cubicTo(SkBits2Float(0x424cff91), SkBits2Float(0xc1fa13ac), SkBits2Float(0x4248e532), SkBits2Float(0xc2038788), SkBits2Float(0x42447d06), SkBits2Float(0xc209d00a));
6162 path.lineTo(SkBits2Float(0x4287e78a), SkBits2Float(0xc23ea40e));
6163 path.close();
6164
6165 SkPath path2(path);
6166 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6167 }
6168 // op end success 1
6169
battleOp226(skiatest::Reporter * reporter,const char * filename)6170 static void battleOp226(skiatest::Reporter* reporter, const char* filename) {
6171 SkPath path;
6172 path.setFillType((SkPathFillType) 1);
6173 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6174 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6175 path.cubicTo(SkBits2Float(0x41d8749b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4251a993), SkBits2Float(0xc28b9f9f), SkBits2Float(0x4287e78a), SkBits2Float(0xc23ea40e));
6176 path.cubicTo(SkBits2Float(0x428af3dc), SkBits2Float(0xc235f2f3), SkBits2Float(0x428dca5e), SkBits2Float(0xc22cf844), SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef));
6177 path.lineTo(SkBits2Float(0x4250c881), SkBits2Float(0xc1ecb95a));
6178 path.cubicTo(SkBits2Float(0x424cff91), SkBits2Float(0xc1fa13ac), SkBits2Float(0x4248e532), SkBits2Float(0xc2038788), SkBits2Float(0x42447d05), SkBits2Float(0xc209d00a));
6179 path.cubicTo(SkBits2Float(0x4217902d), SkBits2Float(0xc249dd89), SkBits2Float(0x419c7951), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6180 path.close();
6181
6182 SkPath path1(path);
6183 path.reset();
6184 path.setFillType((SkPathFillType) 0);
6185 path.moveTo(SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef));
6186 path.cubicTo(SkBits2Float(0x42bd187d), SkBits2Float(0xbfc2a74a), SkBits2Float(0x42a250ed), SkBits2Float(0x42421cbf), SkBits2Float(0x42287a28), SkBits2Float(0x428f09b7));
6187 path.lineTo(SkBits2Float(0x41f394da), SkBits2Float(0x424ecd48));
6188 path.cubicTo(SkBits2Float(0x426aac8a), SkBits2Float(0x420c527b), SkBits2Float(0x4288b219), SkBits2Float(0xbf8cb68f), SkBits2Float(0x4250c882), SkBits2Float(0xc1ecb95c));
6189 path.lineTo(SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef));
6190 path.close();
6191
6192 SkPath path2(path);
6193 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6194 }
6195 // op end success 1
6196
battleOp227(skiatest::Reporter * reporter,const char * filename)6197 static void battleOp227(skiatest::Reporter* reporter, const char* filename) {
6198 SkPath path;
6199 path.setFillType((SkPathFillType) 0);
6200 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6201 path.cubicTo(SkBits2Float(0x41f1efaa), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42685cb5), SkBits2Float(0xc2851a3e), SkBits2Float(0x429160d2), SkBits2Float(0xc22043b6));
6202 path.lineTo(SkBits2Float(0x42522f73), SkBits2Float(0xc1e7b52d));
6203 path.cubicTo(SkBits2Float(0x4227f8ff), SkBits2Float(0xc2406ff8), SkBits2Float(0x41aee4c7), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
6204 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6205 path.close();
6206
6207 SkPath path1(path);
6208 path.reset();
6209 path.setFillType((SkPathFillType) 0);
6210 path.moveTo(SkBits2Float(0x429160d2), SkBits2Float(0xc22043b7));
6211 path.cubicTo(SkBits2Float(0x42943aa0), SkBits2Float(0xc215eba6), SkBits2Float(0x4296cd42), SkBits2Float(0xc20b4794), SkBits2Float(0x429915e6), SkBits2Float(0xc200631e));
6212 path.lineTo(SkBits2Float(0x425d5418), SkBits2Float(0xc1b99eb9));
6213 path.cubicTo(SkBits2Float(0x425a06d4), SkBits2Float(0xc1c95e3a), SkBits2Float(0x42564e98), SkBits2Float(0xc1d8c0a6), SkBits2Float(0x42522f74), SkBits2Float(0xc1e7b52e));
6214 path.lineTo(SkBits2Float(0x429160d2), SkBits2Float(0xc22043b7));
6215 path.close();
6216
6217 SkPath path2(path);
6218 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6219 }
6220 // op end success 1
6221
battleOp228(skiatest::Reporter * reporter,const char * filename)6222 static void battleOp228(skiatest::Reporter* reporter, const char* filename) {
6223 SkPath path;
6224 path.setFillType((SkPathFillType) 1);
6225 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6226 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6227 path.cubicTo(SkBits2Float(0x41f1efa9), SkBits2Float(0xc2a60000), SkBits2Float(0x42685cb5), SkBits2Float(0xc2851a3e), SkBits2Float(0x429160d2), SkBits2Float(0xc22043b7));
6228 path.lineTo(SkBits2Float(0x429160d2), SkBits2Float(0xc22043b6));
6229 path.cubicTo(SkBits2Float(0x42943aa0), SkBits2Float(0xc215eba5), SkBits2Float(0x4296cd42), SkBits2Float(0xc20b4794), SkBits2Float(0x429915e6), SkBits2Float(0xc200631e));
6230 path.lineTo(SkBits2Float(0x425d5418), SkBits2Float(0xc1b99eb9));
6231 path.cubicTo(SkBits2Float(0x425a06d4), SkBits2Float(0xc1c95e3a), SkBits2Float(0x42564e98), SkBits2Float(0xc1d8c0a6), SkBits2Float(0x42522f74), SkBits2Float(0xc1e7b52e));
6232 path.lineTo(SkBits2Float(0x42522f73), SkBits2Float(0xc1e7b52d));
6233 path.cubicTo(SkBits2Float(0x4227f8ff), SkBits2Float(0xc2406ff8), SkBits2Float(0x41aee4c7), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6234 path.close();
6235
6236 SkPath path1(path);
6237 path.reset();
6238 path.setFillType((SkPathFillType) 0);
6239 path.moveTo(SkBits2Float(0x429915e6), SkBits2Float(0xc200631e));
6240 path.cubicTo(SkBits2Float(0x42abe101), SkBits2Float(0xc11b0235), SkBits2Float(0x42aa16bb), SkBits2Float(0x417b685c), SkBits2Float(0x42942fff), SkBits2Float(0x42159e77));
6241 path.cubicTo(SkBits2Float(0x427c9284), SkBits2Float(0x426c62d8), SkBits2Float(0x422cf27d), SkBits2Float(0x4295ccdb), SkBits2Float(0x419d039e), SkBits2Float(0x42a14aca));
6242 path.lineTo(SkBits2Float(0x4163022c), SkBits2Float(0x42693188));
6243 path.cubicTo(SkBits2Float(0x41fa0b56), SkBits2Float(0x42589424), SkBits2Float(0x4236951c), SkBits2Float(0x422ae1ad), SkBits2Float(0x42563f3c), SkBits2Float(0x41d85112));
6244 path.cubicTo(SkBits2Float(0x4275e95c), SkBits2Float(0x4135bd94), SkBits2Float(0x42787fea), SkBits2Float(0xc0e01be1), SkBits2Float(0x425d5419), SkBits2Float(0xc1b99eba));
6245 path.lineTo(SkBits2Float(0x429915e6), SkBits2Float(0xc200631e));
6246 path.close();
6247
6248 SkPath path2(path);
6249 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6250 }
6251 // op end success 1
6252
battleOp229(skiatest::Reporter * reporter,const char * filename)6253 static void battleOp229(skiatest::Reporter* reporter, const char* filename) {
6254 SkPath path;
6255 path.setFillType((SkPathFillType) 0);
6256 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6257 path.cubicTo(SkBits2Float(0x4206c976), SkBits2Float(0xc2a60000), SkBits2Float(0x42801937), SkBits2Float(0xc27a823c), SkBits2Float(0x4299a0d7), SkBits2Float(0xc1fb88d1));
6258 path.lineTo(SkBits2Float(0x425e1cfa), SkBits2Float(0xc1b5d505));
6259 path.cubicTo(SkBits2Float(0x423933e1), SkBits2Float(0xc2351735), SkBits2Float(0x41c2df6b), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
6260 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6261 path.close();
6262
6263 SkPath path1(path);
6264 path.reset();
6265 path.setFillType((SkPathFillType) 0);
6266 path.moveTo(SkBits2Float(0x4299a0d8), SkBits2Float(0xc1fb88d0));
6267 path.cubicTo(SkBits2Float(0x429c1b73), SkBits2Float(0xc1e34f53), SkBits2Float(0x429e39d2), SkBits2Float(0xc1ca8528), SkBits2Float(0x429ff920), SkBits2Float(0xc1b14b8c));
6268 path.lineTo(SkBits2Float(0x42674955), SkBits2Float(0xc1802a45));
6269 path.cubicTo(SkBits2Float(0x4264c2a3), SkBits2Float(0xc192666d), SkBits2Float(0x4261b27b), SkBits2Float(0xc1a45204), SkBits2Float(0x425e1cfb), SkBits2Float(0xc1b5d506));
6270 path.lineTo(SkBits2Float(0x4299a0d8), SkBits2Float(0xc1fb88d0));
6271 path.close();
6272
6273 SkPath path2(path);
6274 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6275 }
6276 // op end success 1
6277
battleOp230(skiatest::Reporter * reporter,const char * filename)6278 static void battleOp230(skiatest::Reporter* reporter, const char* filename) {
6279 SkPath path;
6280 path.setFillType((SkPathFillType) 1);
6281 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6282 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6283 path.cubicTo(SkBits2Float(0x4206c976), SkBits2Float(0xc2a60000), SkBits2Float(0x42801937), SkBits2Float(0xc27a823c), SkBits2Float(0x4299a0d8), SkBits2Float(0xc1fb88d0));
6284 path.cubicTo(SkBits2Float(0x429c1b73), SkBits2Float(0xc1e34f53), SkBits2Float(0x429e39d2), SkBits2Float(0xc1ca8528), SkBits2Float(0x429ff920), SkBits2Float(0xc1b14b8c));
6285 path.lineTo(SkBits2Float(0x42674955), SkBits2Float(0xc1802a45));
6286 path.cubicTo(SkBits2Float(0x4264c2a3), SkBits2Float(0xc192666d), SkBits2Float(0x4261b27b), SkBits2Float(0xc1a45204), SkBits2Float(0x425e1cfa), SkBits2Float(0xc1b5d505));
6287 path.cubicTo(SkBits2Float(0x423933e1), SkBits2Float(0xc2351735), SkBits2Float(0x41c2df6b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6288 path.close();
6289
6290 SkPath path1(path);
6291 path.reset();
6292 path.setFillType((SkPathFillType) 0);
6293 path.moveTo(SkBits2Float(0x429ff91f), SkBits2Float(0xc1b14b8a));
6294 path.cubicTo(SkBits2Float(0x42ae673b), SkBits2Float(0x40783c41), SkBits2Float(0x42a293c2), SkBits2Float(0x41fe6960), SkBits2Float(0x4280464e), SkBits2Float(0x4252ba7b));
6295 path.cubicTo(SkBits2Float(0x423bf1b3), SkBits2Float(0x42932023), SkBits2Float(0x41a5f32c), SkBits2Float(0x42a99309), SkBits2Float(0xc0c67989), SkBits2Float(0x42a5892f));
6296 path.lineTo(SkBits2Float(0xc08f79c7), SkBits2Float(0x426f5437));
6297 path.cubicTo(SkBits2Float(0x416fed74), SkBits2Float(0x42752af2), SkBits2Float(0x4207dcfc), SkBits2Float(0x4254b62d), SkBits2Float(0x42397512), SkBits2Float(0x42185575));
6298 path.cubicTo(SkBits2Float(0x426b0d26), SkBits2Float(0x41b7e97d), SkBits2Float(0x427c2639), SkBits2Float(0x40337286), SkBits2Float(0x42674956), SkBits2Float(0xc1802a46));
6299 path.lineTo(SkBits2Float(0x429ff91f), SkBits2Float(0xc1b14b8a));
6300 path.close();
6301
6302 SkPath path2(path);
6303 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6304 }
6305 // op end success 1
6306
battleOp231(skiatest::Reporter * reporter,const char * filename)6307 static void battleOp231(skiatest::Reporter* reporter, const char* filename) {
6308 SkPath path;
6309 path.setFillType((SkPathFillType) 0);
6310 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6311 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a5ffff), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d7), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986));
6312 path.lineTo(SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f));
6313 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
6314 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6315 path.close();
6316
6317 SkPath path1(path);
6318 path.reset();
6319 path.setFillType((SkPathFillType) 0);
6320 path.moveTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988));
6321 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b837), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594e), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba));
6322 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0));
6323 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f));
6324 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988));
6325 path.close();
6326
6327 SkPath path2(path);
6328 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6329 }
6330 // op end success 1
6331
battleOp232(skiatest::Reporter * reporter,const char * filename)6332 static void battleOp232(skiatest::Reporter* reporter, const char* filename) {
6333 SkPath path;
6334 path.setFillType((SkPathFillType) 1);
6335 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6336 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6337 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a60000), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d8), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988));
6338 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986));
6339 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b836), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594d), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba));
6340 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0));
6341 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f));
6342 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6343 path.close();
6344
6345 SkPath path1(path);
6346 path.reset();
6347 path.setFillType((SkPathFillType) 0);
6348 path.moveTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb));
6349 path.cubicTo(SkBits2Float(0x42ace9b0), SkBits2Float(0x4189ae79), SkBits2Float(0x429590d6), SkBits2Float(0x423ab1c1), SkBits2Float(0x424df762), SkBits2Float(0x428231a6));
6350 path.cubicTo(SkBits2Float(0x41e19a31), SkBits2Float(0x42a70a69), SkBits2Float(0xc04a3289), SkBits2Float(0x42b03133), SkBits2Float(0xc1f5f36e), SkBits2Float(0x429a3139));
6351 path.lineTo(SkBits2Float(0xc1b1cbb9), SkBits2Float(0x425eedb9));
6352 path.cubicTo(SkBits2Float(0xc0122aac), SkBits2Float(0x427ebc5a), SkBits2Float(0x41a31606), SkBits2Float(0x42718130), SkBits2Float(0x4214e430), SkBits2Float(0x423c3b73));
6353 path.cubicTo(SkBits2Float(0x42583d5c), SkBits2Float(0x4206f5b6), SkBits2Float(0x4279fe97), SkBits2Float(0x41470ec8), SkBits2Float(0x426d6866), SkBits2Float(0xc10cb6eb));
6354 path.lineTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb));
6355 path.close();
6356
6357 SkPath path2(path);
6358 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6359 }
6360 // op end success 1
6361
battleOp233(skiatest::Reporter * reporter,const char * filename)6362 static void battleOp233(skiatest::Reporter* reporter, const char* filename) {
6363 SkPath path;
6364 path.setFillType((SkPathFillType) 0);
6365 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6366 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f68), SkBits2Float(0xc16b5614));
6367 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61));
6368 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6369 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6370 path.close();
6371
6372 SkPath path1(path);
6373 path.reset();
6374 path.setFillType((SkPathFillType) 0);
6375 path.moveTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613));
6376 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
6377 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48));
6378 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63));
6379 path.lineTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613));
6380 path.close();
6381
6382 SkPath path2(path);
6383 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6384 }
6385 // op end success 1
6386
battleOp234(skiatest::Reporter * reporter,const char * filename)6387 static void battleOp234(skiatest::Reporter* reporter, const char* filename) {
6388 SkPath path;
6389 path.setFillType((SkPathFillType) 1);
6390 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6391 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6392 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613));
6393 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
6394 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48));
6395 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63));
6396 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61));
6397 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6398 path.close();
6399
6400 SkPath path1(path);
6401 path.reset();
6402 path.setFillType((SkPathFillType) 0);
6403 path.moveTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
6404 path.cubicTo(SkBits2Float(0x42a85e4f), SkBits2Float(0x41e6959e), SkBits2Float(0x4285b4e3), SkBits2Float(0x426ae44f), SkBits2Float(0x4219b105), SkBits2Float(0x42932450));
6405 path.cubicTo(SkBits2Float(0x411fe111), SkBits2Float(0x42b0d679), SkBits2Float(0xc1c3966b), SkBits2Float(0x42ab1d42), SkBits2Float(0xc2482755), SkBits2Float(0x428470e8));
6406 path.lineTo(SkBits2Float(0xc210b07c), SkBits2Float(0x423f7b24));
6407 path.cubicTo(SkBits2Float(0xc18d6382), SkBits2Float(0x427764e8), SkBits2Float(0x40e72680), SkBits2Float(0x427fab4e), SkBits2Float(0x41de345e), SkBits2Float(0x4254bc3b));
6408 path.cubicTo(SkBits2Float(0x42414f8e), SkBits2Float(0x4229cd28), SkBits2Float(0x42736c9d), SkBits2Float(0x41a6b008), SkBits2Float(0x426fd18e), SkBits2Float(0xc0154a3f));
6409 path.lineTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0));
6410 path.close();
6411
6412 SkPath path2(path);
6413 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6414 }
6415 // op end success 1
6416
battleOp235(skiatest::Reporter * reporter,const char * filename)6417 static void battleOp235(skiatest::Reporter* reporter, const char* filename) {
6418 SkPath path;
6419 path.setFillType((SkPathFillType) 0);
6420 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6421 path.cubicTo(SkBits2Float(0x422e5e2d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429f82f2), SkBits2Float(0xc2451c35), SkBits2Float(0x42a59867), SkBits2Float(0xc0b956c5));
6422 path.lineTo(SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae3));
6423 path.cubicTo(SkBits2Float(0x42669e7e), SkBits2Float(0xc20e7d42), SkBits2Float(0x41fc1920), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6424 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6425 path.close();
6426
6427 SkPath path1(path);
6428 path.reset();
6429 path.setFillType((SkPathFillType) 0);
6430 path.moveTo(SkBits2Float(0x42a59868), SkBits2Float(0xc0b956ca));
6431 path.cubicTo(SkBits2Float(0x42a62cd8), SkBits2Float(0xbfd2dd07), SkBits2Float(0x42a621be), SkBits2Float(0x4020d557), SkBits2Float(0x42a57734), SkBits2Float(0x40d4ef9c));
6432 path.lineTo(SkBits2Float(0x426f3a3b), SkBits2Float(0x4099edfc));
6433 path.cubicTo(SkBits2Float(0x427030cb), SkBits2Float(0x3fe887ba), SkBits2Float(0x427040d6), SkBits2Float(0xbf986e77), SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae4));
6434 path.lineTo(SkBits2Float(0x42a59868), SkBits2Float(0xc0b956ca));
6435 path.close();
6436
6437 SkPath path2(path);
6438 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6439 }
6440 // op end success 1
6441
battleOp236(skiatest::Reporter * reporter,const char * filename)6442 static void battleOp236(skiatest::Reporter* reporter, const char* filename) {
6443 SkPath path;
6444 path.setFillType((SkPathFillType) 1);
6445 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6446 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6447 path.cubicTo(SkBits2Float(0x422e5e2d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429f82f2), SkBits2Float(0xc2451c35), SkBits2Float(0x42a59868), SkBits2Float(0xc0b956ca));
6448 path.cubicTo(SkBits2Float(0x42a62cd8), SkBits2Float(0xbfd2dd07), SkBits2Float(0x42a621be), SkBits2Float(0x4020d557), SkBits2Float(0x42a57734), SkBits2Float(0x40d4ef9c));
6449 path.lineTo(SkBits2Float(0x426f3a3b), SkBits2Float(0x4099edfc));
6450 path.cubicTo(SkBits2Float(0x427030cb), SkBits2Float(0x3fe887bb), SkBits2Float(0x427040d6), SkBits2Float(0xbf986e74), SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae3));
6451 path.lineTo(SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae4));
6452 path.cubicTo(SkBits2Float(0x42669e7e), SkBits2Float(0xc20e7d42), SkBits2Float(0x41fc1920), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6453 path.close();
6454
6455 SkPath path1(path);
6456 path.reset();
6457 path.setFillType((SkPathFillType) 0);
6458 path.moveTo(SkBits2Float(0x42a57735), SkBits2Float(0x40d4ef9d));
6459 path.cubicTo(SkBits2Float(0x429fe5e1), SkBits2Float(0x4225104d), SkBits2Float(0x425fa7d9), SkBits2Float(0x428cf91a), SkBits2Float(0x41b3ea58), SkBits2Float(0x429fca49));
6460 path.cubicTo(SkBits2Float(0xc12ef606), SkBits2Float(0x42b29b77), SkBits2Float(0xc23abc07), SkBits2Float(0x4299d29d), SkBits2Float(0xc2863a28), SkBits2Float(0x42435615));
6461 path.lineTo(SkBits2Float(0xc242103b), SkBits2Float(0x420d34fa));
6462 path.cubicTo(SkBits2Float(0xc206fd22), SkBits2Float(0x425e64f1), SkBits2Float(0xc0fcf4a4), SkBits2Float(0x42811d1e), SkBits2Float(0x41820f34), SkBits2Float(0x426705a2));
6463 path.cubicTo(SkBits2Float(0x4221adc8), SkBits2Float(0x424bd107), SkBits2Float(0x42672d88), SkBits2Float(0x41eea576), SkBits2Float(0x426f3a3c), SkBits2Float(0x4099edfe));
6464 path.lineTo(SkBits2Float(0x42a57735), SkBits2Float(0x40d4ef9d));
6465 path.close();
6466
6467 SkPath path2(path);
6468 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6469 }
6470 // op end success 1
6471
battleOp237(skiatest::Reporter * reporter,const char * filename)6472 static void battleOp237(skiatest::Reporter* reporter, const char* filename) {
6473 SkPath path;
6474 path.setFillType((SkPathFillType) 0);
6475 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6476 path.cubicTo(SkBits2Float(0x41b25a1b), SkBits2Float(0xc2a60000), SkBits2Float(0x422e9a51), SkBits2Float(0xc294100b), SkBits2Float(0x426d0a79), SkBits2Float(0xc26874a1));
6477 path.cubicTo(SkBits2Float(0x4295bd51), SkBits2Float(0xc228c92e), SkBits2Float(0x42a6d6d5), SkBits2Float(0xc1a5596e), SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f4c));
6478 path.lineTo(SkBits2Float(0x426ff448), SkBits2Float(0x3f95ff69));
6479 path.cubicTo(SkBits2Float(0x4271369b), SkBits2Float(0xc16f0f30), SkBits2Float(0x42587daa), SkBits2Float(0xc1f4071e), SkBits2Float(0x422b5ada), SkBits2Float(0xc2280a4b));
6480 path.cubicTo(SkBits2Float(0x41fc7014), SkBits2Float(0xc2561107), SkBits2Float(0x4180eddd), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6481 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6482 path.close();
6483
6484 SkPath path1(path);
6485 path.reset();
6486 path.setFillType((SkPathFillType) 0);
6487 path.moveTo(SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f2e));
6488 path.cubicTo(SkBits2Float(0x42a5cbdf), SkBits2Float(0x40c0b7f8), SkBits2Float(0x42a4eca2), SkBits2Float(0x41268f7d), SkBits2Float(0x42a35c4c), SkBits2Float(0x416be04e));
6489 path.lineTo(SkBits2Float(0x426c2f14), SkBits2Float(0x412a834e));
6490 path.cubicTo(SkBits2Float(0x426e71e2), SkBits2Float(0x40f0cf74), SkBits2Float(0x426fb4a3), SkBits2Float(0x408b5090), SkBits2Float(0x426ff449), SkBits2Float(0x3f95ff6b));
6491 path.lineTo(SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f2e));
6492 path.close();
6493
6494 SkPath path2(path);
6495 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6496 }
6497 // op end success 1
6498
battleOp238(skiatest::Reporter * reporter,const char * filename)6499 static void battleOp238(skiatest::Reporter* reporter, const char* filename) {
6500 SkPath path;
6501 path.setFillType((SkPathFillType) 1);
6502 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6503 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6504 path.cubicTo(SkBits2Float(0x41b25a1b), SkBits2Float(0xc2a60000), SkBits2Float(0x422e9a51), SkBits2Float(0xc294100b), SkBits2Float(0x426d0a79), SkBits2Float(0xc26874a1));
6505 path.cubicTo(SkBits2Float(0x4295bd51), SkBits2Float(0xc228c92e), SkBits2Float(0x42a6d6d5), SkBits2Float(0xc1a5596f), SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f2e));
6506 path.lineTo(SkBits2Float(0x426c2f14), SkBits2Float(0x412a834e));
6507 path.cubicTo(SkBits2Float(0x426e71e2), SkBits2Float(0x40f0cf74), SkBits2Float(0x426fb4a3), SkBits2Float(0x408b5090), SkBits2Float(0x426ff449), SkBits2Float(0x3f95ff6b));
6508 path.lineTo(SkBits2Float(0x426ff448), SkBits2Float(0x3f95ff69));
6509 path.cubicTo(SkBits2Float(0x4271369b), SkBits2Float(0xc16f0f30), SkBits2Float(0x42587daa), SkBits2Float(0xc1f4071e), SkBits2Float(0x422b5ada), SkBits2Float(0xc2280a4b));
6510 path.cubicTo(SkBits2Float(0x41fc7014), SkBits2Float(0xc2561107), SkBits2Float(0x4180eddd), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6511 path.close();
6512
6513 SkPath path1(path);
6514 path.reset();
6515 path.setFillType((SkPathFillType) 0);
6516 path.moveTo(SkBits2Float(0x42a35c4c), SkBits2Float(0x416be04e));
6517 path.cubicTo(SkBits2Float(0x42963d3f), SkBits2Float(0x424c5e0d), SkBits2Float(0x42354f77), SkBits2Float(0x429d76d6), SkBits2Float(0x41096c90), SkBits2Float(0x42a51bdb));
6518 path.cubicTo(SkBits2Float(0xc1e1325f), SkBits2Float(0x42acc0e0), SkBits2Float(0xc27bf938), SkBits2Float(0x4282ec23), SkBits2Float(0xc299cad8), SkBits2Float(0x41f9ecd8));
6519 path.lineTo(SkBits2Float(0xc25e59b3), SkBits2Float(0x41b4ab36));
6520 path.cubicTo(SkBits2Float(0xc2362649), SkBits2Float(0x423d4911), SkBits2Float(0xc1a2caf7), SkBits2Float(0x4279c398), SkBits2Float(0x40c6af7d), SkBits2Float(0x426eb62b));
6521 path.cubicTo(SkBits2Float(0x4203115b), SkBits2Float(0x4263a8be), SkBits2Float(0x425936a2), SkBits2Float(0x4213bc4a), SkBits2Float(0x426c2f16), SkBits2Float(0x412a8350));
6522 path.lineTo(SkBits2Float(0x42a35c4c), SkBits2Float(0x416be04e));
6523 path.close();
6524
6525 SkPath path2(path);
6526 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6527 }
6528 // op end success 1
6529
battleOp239(skiatest::Reporter * reporter,const char * filename)6530 static void battleOp239(skiatest::Reporter* reporter, const char* filename) {
6531 SkPath path;
6532 path.setFillType((SkPathFillType) 0);
6533 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6534 path.cubicTo(SkBits2Float(0x41ba3f99), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4235f79d), SkBits2Float(0xc29271cf), SkBits2Float(0x4274db3f), SkBits2Float(0xc260354d));
6535 path.cubicTo(SkBits2Float(0x4299df70), SkBits2Float(0xc21b86fd), SkBits2Float(0x42a97305), SkBits2Float(0xc17e5d7a), SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b4));
6536 path.lineTo(SkBits2Float(0x426f1259), SkBits2Float(0x40a8b5ae));
6537 path.cubicTo(SkBits2Float(0x4274fca8), SkBits2Float(0xc137e0e1), SkBits2Float(0x425e777b), SkBits2Float(0xc1e0dbdb), SkBits2Float(0x42310131), SkBits2Float(0xc2221408));
6538 path.cubicTo(SkBits2Float(0x42038ae6), SkBits2Float(0xc253ba22), SkBits2Float(0x4186a32c), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000));
6539 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6540 path.close();
6541
6542 SkPath path1(path);
6543 path.reset();
6544 path.setFillType((SkPathFillType) 0);
6545 path.moveTo(SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b9));
6546 path.cubicTo(SkBits2Float(0x42a48d09), SkBits2Float(0x413de0a1), SkBits2Float(0x42a2fc74), SkBits2Float(0x41833376), SkBits2Float(0x42a0adff), SkBits2Float(0x41a6c250));
6547 path.lineTo(SkBits2Float(0x42684ed9), SkBits2Float(0x417118ef));
6548 path.cubicTo(SkBits2Float(0x426ba483), SkBits2Float(0x413db02f), SkBits2Float(0x426de7aa), SkBits2Float(0x410942c3), SkBits2Float(0x426f1258), SkBits2Float(0x40a8b5ad));
6549 path.lineTo(SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b9));
6550 path.close();
6551
6552 SkPath path2(path);
6553 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6554 }
6555 // op end success 1
6556
battleOp240(skiatest::Reporter * reporter,const char * filename)6557 static void battleOp240(skiatest::Reporter* reporter, const char* filename) {
6558 SkPath path;
6559 path.setFillType((SkPathFillType) 1);
6560 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6561 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6562 path.cubicTo(SkBits2Float(0x41ba3f99), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4235f79d), SkBits2Float(0xc29271cf), SkBits2Float(0x4274db3f), SkBits2Float(0xc260354d));
6563 path.cubicTo(SkBits2Float(0x4299df70), SkBits2Float(0xc21b86fd), SkBits2Float(0x42a97305), SkBits2Float(0xc17e5d7a), SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b9));
6564 path.cubicTo(SkBits2Float(0x42a48d09), SkBits2Float(0x413de0a1), SkBits2Float(0x42a2fc74), SkBits2Float(0x41833376), SkBits2Float(0x42a0adff), SkBits2Float(0x41a6c250));
6565 path.lineTo(SkBits2Float(0x42684ed9), SkBits2Float(0x417118ef));
6566 path.cubicTo(SkBits2Float(0x426ba483), SkBits2Float(0x413db02f), SkBits2Float(0x426de7aa), SkBits2Float(0x410942c3), SkBits2Float(0x426f1259), SkBits2Float(0x40a8b5ae));
6567 path.cubicTo(SkBits2Float(0x4274fca8), SkBits2Float(0xc137e0e1), SkBits2Float(0x425e777b), SkBits2Float(0xc1e0dbdb), SkBits2Float(0x42310131), SkBits2Float(0xc2221408));
6568 path.cubicTo(SkBits2Float(0x42038ae6), SkBits2Float(0xc253ba22), SkBits2Float(0x4186a32c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
6569 path.close();
6570
6571 SkPath path1(path);
6572 path.reset();
6573 path.setFillType((SkPathFillType) 0);
6574 path.moveTo(SkBits2Float(0x42a0ae00), SkBits2Float(0x41a6c250));
6575 path.cubicTo(SkBits2Float(0x428d4422), SkBits2Float(0x4269069e), SkBits2Float(0x42118d33), SkBits2Float(0x42a8086f), SkBits2Float(0xc00fe376), SkBits2Float(0x42a5f066));
6576 path.cubicTo(SkBits2Float(0xc22389a2), SkBits2Float(0x42a3d85e), SkBits2Float(0xc2935e5d), SkBits2Float(0x42596224), SkBits2Float(0xc2a2b39d), SkBits2Float(0x4183b53a));
6577 path.lineTo(SkBits2Float(0xc26b3b33), SkBits2Float(0x413e6bca));
6578 path.cubicTo(SkBits2Float(0xc2551027), SkBits2Float(0x421d2508), SkBits2Float(0xc1ec70a3), SkBits2Float(0x426ce27d), SkBits2Float(0xbfd007ff), SkBits2Float(0x426fe979));
6579 path.cubicTo(SkBits2Float(0x41d26fa4), SkBits2Float(0x4272f076), SkBits2Float(0x424c3d84), SkBits2Float(0x422873d5), SkBits2Float(0x42684eda), SkBits2Float(0x417118ee));
6580 path.lineTo(SkBits2Float(0x42a0ae00), SkBits2Float(0x41a6c250));
6581 path.close();
6582
6583 SkPath path2(path);
6584 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6585 }
6586 // op end success 1
6587
battleOp241(skiatest::Reporter * reporter,const char * filename)6588 static void battleOp241(skiatest::Reporter* reporter, const char* filename) {
6589 SkPath path;
6590 path.setFillType((SkPathFillType) 0);
6591 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6592 path.cubicTo(SkBits2Float(0x41c2abe0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423dc4ab), SkBits2Float(0xc290a493), SkBits2Float(0x427cd8fd), SkBits2Float(0xc25727eb));
6593 path.cubicTo(SkBits2Float(0x429df6a6), SkBits2Float(0xc20d06b1), SkBits2Float(0x42aba628), SkBits2Float(0xc12bcbe5), SkBits2Float(0x42a3dc46), SkBits2Float(0x4154872f));
6594 path.lineTo(SkBits2Float(0x426ce81c), SkBits2Float(0x4119a283));
6595 path.cubicTo(SkBits2Float(0x42782ad8), SkBits2Float(0xc0f86165), SkBits2Float(0x42646188), SkBits2Float(0xc1cbe4ab), SkBits2Float(0x4236c80c), SkBits2Float(0xc21b88d1));
6596 path.cubicTo(SkBits2Float(0x42092e8f), SkBits2Float(0xc2511f4c), SkBits2Float(0x418cb9f2), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6597 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6598 path.close();
6599
6600 SkPath path1(path);
6601 path.reset();
6602 path.setFillType((SkPathFillType) 0);
6603 path.moveTo(SkBits2Float(0x42a3dc46), SkBits2Float(0x41548735));
6604 path.cubicTo(SkBits2Float(0x42a2537f), SkBits2Float(0x41901e3f), SkBits2Float(0x429ff996), SkBits2Float(0x41b55e92), SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0));
6605 path.lineTo(SkBits2Float(0x4262bf29), SkBits2Float(0x419d4d21));
6606 path.cubicTo(SkBits2Float(0x42674a02), SkBits2Float(0x41831c46), SkBits2Float(0x426ab03e), SkBits2Float(0x41505d16), SkBits2Float(0x426ce81d), SkBits2Float(0x4119a283));
6607 path.lineTo(SkBits2Float(0x42a3dc46), SkBits2Float(0x41548735));
6608 path.close();
6609
6610 SkPath path2(path);
6611 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6612 }
6613 // op end success 1
6614
battleOp242(skiatest::Reporter * reporter,const char * filename)6615 static void battleOp242(skiatest::Reporter* reporter, const char* filename) {
6616 SkPath path;
6617 path.setFillType((SkPathFillType) 1);
6618 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6619 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6620 path.cubicTo(SkBits2Float(0x41c2abe0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423dc4ab), SkBits2Float(0xc290a493), SkBits2Float(0x427cd8fd), SkBits2Float(0xc25727eb));
6621 path.cubicTo(SkBits2Float(0x429df6a6), SkBits2Float(0xc20d06b1), SkBits2Float(0x42aba628), SkBits2Float(0xc12bcbe5), SkBits2Float(0x42a3dc46), SkBits2Float(0x41548735));
6622 path.cubicTo(SkBits2Float(0x42a2537f), SkBits2Float(0x41901e3f), SkBits2Float(0x429ff996), SkBits2Float(0x41b55e92), SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0));
6623 path.lineTo(SkBits2Float(0x4262bf29), SkBits2Float(0x419d4d21));
6624 path.cubicTo(SkBits2Float(0x42674a02), SkBits2Float(0x41831c46), SkBits2Float(0x426ab03e), SkBits2Float(0x41505d16), SkBits2Float(0x426ce81c), SkBits2Float(0x4119a283));
6625 path.cubicTo(SkBits2Float(0x42782ad8), SkBits2Float(0xc0f86165), SkBits2Float(0x42646188), SkBits2Float(0xc1cbe4ab), SkBits2Float(0x4236c80c), SkBits2Float(0xc21b88d1));
6626 path.cubicTo(SkBits2Float(0x42092e8f), SkBits2Float(0xc2511f4c), SkBits2Float(0x418cb9f2), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6627 path.close();
6628
6629 SkPath path1(path);
6630 path.reset();
6631 path.setFillType((SkPathFillType) 0);
6632 path.moveTo(SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0));
6633 path.cubicTo(SkBits2Float(0x42824b9e), SkBits2Float(0x4282e841), SkBits2Float(0x41d1b597), SkBits2Float(0x42b119ff), SkBits2Float(0xc15b80c3), SkBits2Float(0x42a3b776));
6634 path.cubicTo(SkBits2Float(0xc2569b2d), SkBits2Float(0x429654ee), SkBits2Float(0xc2a5db0b), SkBits2Float(0x42228c64), SkBits2Float(0xc2a5ffee), SkBits2Float(0x3e172efd));
6635 path.lineTo(SkBits2Float(0xc26fffe7), SkBits2Float(0x3dda91a4));
6636 path.cubicTo(SkBits2Float(0xc26fca99), SkBits2Float(0x41eb0285), SkBits2Float(0xc21b2317), SkBits2Float(0x425958e5), SkBits2Float(0xc11ead4d), SkBits2Float(0x426cb2ed));
6637 path.cubicTo(SkBits2Float(0x419798e1), SkBits2Float(0x4280067a), SkBits2Float(0x423c6102), SkBits2Float(0x423d4379), SkBits2Float(0x4262bf29), SkBits2Float(0x419d4d1f));
6638 path.lineTo(SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0));
6639 path.close();
6640
6641 SkPath path2(path);
6642 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6643 }
6644 // op end success 1
6645
battleOp243(skiatest::Reporter * reporter,const char * filename)6646 static void battleOp243(skiatest::Reporter* reporter, const char* filename) {
6647 SkPath path;
6648 path.setFillType((SkPathFillType) 0);
6649 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6650 path.cubicTo(SkBits2Float(0x41caf078), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42455e40), SkBits2Float(0xc28ecc78), SkBits2Float(0x42822b31), SkBits2Float(0xc24e07b4));
6651 path.cubicTo(SkBits2Float(0x42a1a743), SkBits2Float(0xc1fcecee), SkBits2Float(0x42ad3753), SkBits2Float(0xc0b3be45), SkBits2Float(0x42a18eed), SkBits2Float(0x419892cb));
6652 path.lineTo(SkBits2Float(0x42699409), SkBits2Float(0x415c9689));
6653 path.cubicTo(SkBits2Float(0x427a6ed6), SkBits2Float(0xc081ef5b), SkBits2Float(0x4269b739), SkBits2Float(0xc1b6d67a), SkBits2Float(0x423c321c), SkBits2Float(0xc214effc));
6654 path.cubicTo(SkBits2Float(0x420eacff), SkBits2Float(0xc24e74bc), SkBits2Float(0x4192b3ff), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
6655 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6656 path.close();
6657
6658 SkPath path1(path);
6659 path.reset();
6660 path.setFillType((SkPathFillType) 0);
6661 path.moveTo(SkBits2Float(0x42a18eed), SkBits2Float(0x419892ca));
6662 path.cubicTo(SkBits2Float(0x429f43c9), SkBits2Float(0x41bf6e44), SkBits2Float(0x429c198b), SkBits2Float(0x41e561a5), SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e));
6663 path.lineTo(SkBits2Float(0x425be7f8), SkBits2Float(0x41c0436a));
6664 path.cubicTo(SkBits2Float(0x4261afba), SkBits2Float(0x41a5d162), SkBits2Float(0x42664329), SkBits2Float(0x418a6237), SkBits2Float(0x4269940a), SkBits2Float(0x415c968a));
6665 path.lineTo(SkBits2Float(0x42a18eed), SkBits2Float(0x419892ca));
6666 path.close();
6667
6668 SkPath path2(path);
6669 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6670 }
6671 // op end success 1
6672
battleOp244(skiatest::Reporter * reporter,const char * filename)6673 static void battleOp244(skiatest::Reporter* reporter, const char* filename) {
6674 SkPath path;
6675 path.setFillType((SkPathFillType) 1);
6676 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
6677 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6678 path.cubicTo(SkBits2Float(0x41caf078), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42455e40), SkBits2Float(0xc28ecc78), SkBits2Float(0x42822b31), SkBits2Float(0xc24e07b4));
6679 path.cubicTo(SkBits2Float(0x42a1a743), SkBits2Float(0xc1fcecee), SkBits2Float(0x42ad3753), SkBits2Float(0xc0b3be48), SkBits2Float(0x42a18eed), SkBits2Float(0x419892ca));
6680 path.lineTo(SkBits2Float(0x42a18eed), SkBits2Float(0x419892cb));
6681 path.cubicTo(SkBits2Float(0x429f43c9), SkBits2Float(0x41bf6e45), SkBits2Float(0x429c198b), SkBits2Float(0x41e561a5), SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e));
6682 path.lineTo(SkBits2Float(0x425be7f8), SkBits2Float(0x41c0436a));
6683 path.cubicTo(SkBits2Float(0x4261afba), SkBits2Float(0x41a5d162), SkBits2Float(0x42664329), SkBits2Float(0x418a6237), SkBits2Float(0x4269940a), SkBits2Float(0x415c968a));
6684 path.lineTo(SkBits2Float(0x42699409), SkBits2Float(0x415c9689));
6685 path.cubicTo(SkBits2Float(0x427a6ed6), SkBits2Float(0xc081ef5b), SkBits2Float(0x4269b739), SkBits2Float(0xc1b6d67a), SkBits2Float(0x423c321c), SkBits2Float(0xc214effc));
6686 path.cubicTo(SkBits2Float(0x420eacff), SkBits2Float(0xc24e74bc), SkBits2Float(0x4192b3ff), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
6687 path.close();
6688
6689 SkPath path1(path);
6690 path.reset();
6691 path.setFillType((SkPathFillType) 0);
6692 path.moveTo(SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e));
6693 path.cubicTo(SkBits2Float(0x426c6b55), SkBits2Float(0x42900555), SkBits2Float(0x417b6a9f), SkBits2Float(0x42b7a6c3), SkBits2Float(0xc1c57072), SkBits2Float(0x429e7dd7));
6694 path.cubicTo(SkBits2Float(0xc282258c), SkBits2Float(0x428554eb), SkBits2Float(0xc2b314c4), SkBits2Float(0x41cdbc89), SkBits2Float(0xc2a2f571), SkBits2Float(0xc17d09b6));
6695 path.lineTo(SkBits2Float(0xc26b9a61), SkBits2Float(0xc136eb32));
6696 path.cubicTo(SkBits2Float(0xc28174d0), SkBits2Float(0x4194b9b3), SkBits2Float(0xc23c29fc), SkBits2Float(0x4240c4dc), SkBits2Float(0xc18eba2f), SkBits2Float(0x4265250a));
6697 path.cubicTo(SkBits2Float(0x4135bf41), SkBits2Float(0x4284c29d), SkBits2Float(0x422ae7d8), SkBits2Float(0x42503918), SkBits2Float(0x425be7f9), SkBits2Float(0x41c04367));
6698 path.lineTo(SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e));
6699 path.close();
6700
6701 SkPath path2(path);
6702 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6703 }
6704 // op end success 1
6705
battleOp245(skiatest::Reporter * reporter,const char * filename)6706 static void battleOp245(skiatest::Reporter* reporter, const char* filename) {
6707 SkPath path;
6708 path.setFillType((SkPathFillType) 0);
6709 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6710 path.cubicTo(SkBits2Float(0x41d28773), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424c4acf), SkBits2Float(0xc28d0a47), SkBits2Float(0x428572fc), SkBits2Float(0xc24574fc));
6711 path.cubicTo(SkBits2Float(0x42a4c090), SkBits2Float(0xc1e1aad9), SkBits2Float(0x42ae2294), SkBits2Float(0xbf62367e), SkBits2Float(0x429ebce0), SkBits2Float(0x41c23fec));
6712 path.lineTo(SkBits2Float(0x4265801d), SkBits2Float(0x418c6be6));
6713 path.cubicTo(SkBits2Float(0x427bc2fb), SkBits2Float(0xbf238720), SkBits2Float(0x426e322e), SkBits2Float(0xc1a32211), SkBits2Float(0x4240f046), SkBits2Float(0xc20ebd71));
6714 path.cubicTo(SkBits2Float(0x4213ae61), SkBits2Float(0xc24be9da), SkBits2Float(0x41983095), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6715 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6716 path.close();
6717
6718 SkPath path1(path);
6719 path.reset();
6720 path.setFillType((SkPathFillType) 0);
6721 path.moveTo(SkBits2Float(0x429ebce1), SkBits2Float(0x41c23fee));
6722 path.cubicTo(SkBits2Float(0x429bb658), SkBits2Float(0x41e9cedc), SkBits2Float(0x4297c4ea), SkBits2Float(0x4208130e), SkBits2Float(0x4292f5c0), SkBits2Float(0x421a62d5));
6723 path.lineTo(SkBits2Float(0x425478e6), SkBits2Float(0x41df3573));
6724 path.cubicTo(SkBits2Float(0x425b6ce6), SkBits2Float(0x41c4bbf1), SkBits2Float(0x42612050), SkBits2Float(0x41a90494), SkBits2Float(0x4265801e), SkBits2Float(0x418c6be6));
6725 path.lineTo(SkBits2Float(0x429ebce1), SkBits2Float(0x41c23fee));
6726 path.close();
6727
6728 SkPath path2(path);
6729 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6730 }
6731 // op end success 1
6732
battleOp246(skiatest::Reporter * reporter,const char * filename)6733 static void battleOp246(skiatest::Reporter* reporter, const char* filename) {
6734 SkPath path;
6735 path.setFillType((SkPathFillType) 1);
6736 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6737 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6738 path.cubicTo(SkBits2Float(0x41d28773), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424c4acf), SkBits2Float(0xc28d0a47), SkBits2Float(0x428572fc), SkBits2Float(0xc24574fc));
6739 path.cubicTo(SkBits2Float(0x42a4c090), SkBits2Float(0xc1e1aad9), SkBits2Float(0x42ae2294), SkBits2Float(0xbf62367e), SkBits2Float(0x429ebce1), SkBits2Float(0x41c23fee));
6740 path.cubicTo(SkBits2Float(0x429bb658), SkBits2Float(0x41e9cedc), SkBits2Float(0x4297c4ea), SkBits2Float(0x4208130e), SkBits2Float(0x4292f5c0), SkBits2Float(0x421a62d5));
6741 path.lineTo(SkBits2Float(0x425478e6), SkBits2Float(0x41df3573));
6742 path.cubicTo(SkBits2Float(0x425b6ce6), SkBits2Float(0x41c4bbf1), SkBits2Float(0x42612050), SkBits2Float(0x41a90494), SkBits2Float(0x4265801d), SkBits2Float(0x418c6be6));
6743 path.cubicTo(SkBits2Float(0x427bc2fb), SkBits2Float(0xbf238720), SkBits2Float(0x426e322e), SkBits2Float(0xc1a32211), SkBits2Float(0x4240f046), SkBits2Float(0xc20ebd71));
6744 path.cubicTo(SkBits2Float(0x4213ae61), SkBits2Float(0xc24be9da), SkBits2Float(0x41983095), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
6745 path.close();
6746
6747 SkPath path1(path);
6748 path.reset();
6749 path.setFillType((SkPathFillType) 0);
6750 path.moveTo(SkBits2Float(0x4292f5c1), SkBits2Float(0x421a62d6));
6751 path.cubicTo(SkBits2Float(0x42541a09), SkBits2Float(0x429b1363), SkBits2Float(0x40b7c75d), SkBits2Float(0x42bb84d6), SkBits2Float(0xc2093cef), SkBits2Float(0x42972755));
6752 path.cubicTo(SkBits2Float(0xc294b966), SkBits2Float(0x426593a9), SkBits2Float(0xc2ba8c7c), SkBits2Float(0x4131f51c), SkBits2Float(0xc29ad8fe), SkBits2Float(0xc1ef45cd));
6753 path.lineTo(SkBits2Float(0xc25fe048), SkBits2Float(0xc1acf7d7));
6754 path.cubicTo(SkBits2Float(0xc286dac7), SkBits2Float(0x4100a4f0), SkBits2Float(0xc25705ec), SkBits2Float(0x4225f597), SkBits2Float(0xc1c66aa8), SkBits2Float(0x425a891e));
6755 path.cubicTo(SkBits2Float(0x4084da24), SkBits2Float(0x42878e54), SkBits2Float(0x4219539e), SkBits2Float(0x426034bf), SkBits2Float(0x425478e7), SkBits2Float(0x41df3571));
6756 path.lineTo(SkBits2Float(0x4292f5c1), SkBits2Float(0x421a62d6));
6757 path.close();
6758
6759 SkPath path2(path);
6760 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6761 }
6762 // op end success 1
6763
battleOp247(skiatest::Reporter * reporter,const char * filename)6764 static void battleOp247(skiatest::Reporter* reporter, const char* filename) {
6765 SkPath path;
6766 path.setFillType((SkPathFillType) 0);
6767 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6768 path.cubicTo(SkBits2Float(0x41d91350), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425238e3), SkBits2Float(0xc28b791f), SkBits2Float(0x428827e4), SkBits2Float(0xc23dec02));
6769 path.cubicTo(SkBits2Float(0x42a73357), SkBits2Float(0xc1c9cb8b), SkBits2Float(0x42ae86ff), SkBits2Float(0x404daf5b), SkBits2Float(0x429bc6e8), SkBits2Float(0x41e56ae9));
6770 path.lineTo(SkBits2Float(0x42613841), SkBits2Float(0x41a5d816));
6771 path.cubicTo(SkBits2Float(0x427c5425), SkBits2Float(0x4014b024), SkBits2Float(0x4271bc5c), SkBits2Float(0xc191e03e), SkBits2Float(0x4244da12), SkBits2Float(0xc2094aff));
6772 path.cubicTo(SkBits2Float(0x4217f7c8), SkBits2Float(0xc249a5df), SkBits2Float(0x419cec09), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
6773 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6774 path.close();
6775
6776 SkPath path1(path);
6777 path.reset();
6778 path.setFillType((SkPathFillType) 0);
6779 path.moveTo(SkBits2Float(0x429bc6e9), SkBits2Float(0x41e56aeb));
6780 path.cubicTo(SkBits2Float(0x429818bd), SkBits2Float(0x4206b36a), SkBits2Float(0x42937671), SkBits2Float(0x4219f01e), SkBits2Float(0x428df070), SkBits2Float(0x422c2771));
6781 path.lineTo(SkBits2Float(0x424d369d), SkBits2Float(0x41f8e5bf));
6782 path.cubicTo(SkBits2Float(0x425532f6), SkBits2Float(0x41de8f99), SkBits2Float(0x425be616), SkBits2Float(0x41c2bf8b), SkBits2Float(0x42613843), SkBits2Float(0x41a5d816));
6783 path.lineTo(SkBits2Float(0x429bc6e9), SkBits2Float(0x41e56aeb));
6784 path.close();
6785
6786 SkPath path2(path);
6787 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6788 }
6789 // op end success 1
6790
battleOp248(skiatest::Reporter * reporter,const char * filename)6791 static void battleOp248(skiatest::Reporter* reporter, const char* filename) {
6792 SkPath path;
6793 path.setFillType((SkPathFillType) 1);
6794 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
6795 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6796 path.cubicTo(SkBits2Float(0x41d91350), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425238e3), SkBits2Float(0xc28b791f), SkBits2Float(0x428827e4), SkBits2Float(0xc23dec02));
6797 path.cubicTo(SkBits2Float(0x42a73357), SkBits2Float(0xc1c9cb8b), SkBits2Float(0x42ae86ff), SkBits2Float(0x404daf5b), SkBits2Float(0x429bc6e9), SkBits2Float(0x41e56aeb));
6798 path.cubicTo(SkBits2Float(0x429818bd), SkBits2Float(0x4206b36a), SkBits2Float(0x42937671), SkBits2Float(0x4219f01e), SkBits2Float(0x428df070), SkBits2Float(0x422c2771));
6799 path.lineTo(SkBits2Float(0x424d369d), SkBits2Float(0x41f8e5bf));
6800 path.cubicTo(SkBits2Float(0x425532f6), SkBits2Float(0x41de8f99), SkBits2Float(0x425be616), SkBits2Float(0x41c2bf8b), SkBits2Float(0x42613843), SkBits2Float(0x41a5d816));
6801 path.lineTo(SkBits2Float(0x42613841), SkBits2Float(0x41a5d816));
6802 path.cubicTo(SkBits2Float(0x427c5425), SkBits2Float(0x4014b024), SkBits2Float(0x4271bc5c), SkBits2Float(0xc191e03e), SkBits2Float(0x4244da12), SkBits2Float(0xc2094aff));
6803 path.cubicTo(SkBits2Float(0x4217f7c8), SkBits2Float(0xc249a5df), SkBits2Float(0x419cec09), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000));
6804 path.close();
6805
6806 SkPath path1(path);
6807 path.reset();
6808 path.setFillType((SkPathFillType) 0);
6809 path.moveTo(SkBits2Float(0x428df071), SkBits2Float(0x422c2771));
6810 path.cubicTo(SkBits2Float(0x423d9ebb), SkBits2Float(0x42a3ca6a), SkBits2Float(0xc041a78f), SkBits2Float(0x42bd279e), SkBits2Float(0xc228abe7), SkBits2Float(0x428efaad));
6811 path.cubicTo(SkBits2Float(0xc2a29eac), SkBits2Float(0x42419b78), SkBits2Float(0xc2bd3710), SkBits2Float(0xbfef63d4), SkBits2Float(0xc2900003), SkBits2Float(0xc2252a98));
6812 path.lineTo(SkBits2Float(0xc250315d), SkBits2Float(0xc1eecb7c));
6813 path.cubicTo(SkBits2Float(0xc288c864), SkBits2Float(0xbfad0c79), SkBits2Float(0xc26b1d6b), SkBits2Float(0x420bf56b), SkBits2Float(0xc1f3dd5d), SkBits2Float(0x424eb80d));
6814 path.cubicTo(SkBits2Float(0xc00bff34), SkBits2Float(0x4288bd57), SkBits2Float(0x4209134e), SkBits2Float(0x426ccea7), SkBits2Float(0x424d369e), SkBits2Float(0x41f8e5bd));
6815 path.lineTo(SkBits2Float(0x428df071), SkBits2Float(0x422c2771));
6816 path.close();
6817
6818 SkPath path2(path);
6819 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6820 }
6821 // op end success 1
6822
battleOp249(skiatest::Reporter * reporter,const char * filename)6823 static void battleOp249(skiatest::Reporter* reporter, const char* filename) {
6824 SkPath path;
6825 path.setFillType((SkPathFillType) 0);
6826 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6827 path.cubicTo(SkBits2Float(0x41df6bc7), SkBits2Float(0xc2a60000), SkBits2Float(0x4257ee8b), SkBits2Float(0xc289e8f6), SkBits2Float(0x428aab73), SkBits2Float(0xc2368066));
6828 path.cubicTo(SkBits2Float(0x42a95fa1), SkBits2Float(0xc1b25dc1), SkBits2Float(0x42ae8dc1), SkBits2Float(0x40e61789), SkBits2Float(0x42987459), SkBits2Float(0x42035b41));
6829 path.lineTo(SkBits2Float(0x425c6a87), SkBits2Float(0x41bde9b7));
6830 path.cubicTo(SkBits2Float(0x427c5dea), SkBits2Float(0x40a654db), SkBits2Float(0x4274e0a0), SkBits2Float(0xc180f082), SkBits2Float(0x42487c82), SkBits2Float(0xc203edca));
6831 path.cubicTo(SkBits2Float(0x421c1865), SkBits2Float(0xc2476353), SkBits2Float(0x41a18256), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
6832 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6833 path.close();
6834
6835 SkPath path1(path);
6836 path.reset();
6837 path.setFillType((SkPathFillType) 0);
6838 path.moveTo(SkBits2Float(0x42987459), SkBits2Float(0x42035b41));
6839 path.cubicTo(SkBits2Float(0x42941f1a), SkBits2Float(0x421778e1), SkBits2Float(0x428ecdc9), SkBits2Float(0x422aae55), SkBits2Float(0x42889449), SkBits2Float(0x423cb3b9));
6840 path.lineTo(SkBits2Float(0x424576c5), SkBits2Float(0x4208693e));
6841 path.cubicTo(SkBits2Float(0x424e76a2), SkBits2Float(0x41f6c488), SkBits2Float(0x425626ce), SkBits2Float(0x41dafef6), SkBits2Float(0x425c6a88), SkBits2Float(0x41bde9b8));
6842 path.lineTo(SkBits2Float(0x42987459), SkBits2Float(0x42035b41));
6843 path.close();
6844
6845 SkPath path2(path);
6846 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6847 }
6848 // op end success 1
6849
battleOp250(skiatest::Reporter * reporter,const char * filename)6850 static void battleOp250(skiatest::Reporter* reporter, const char* filename) {
6851 SkPath path;
6852 path.setFillType((SkPathFillType) 1);
6853 path.moveTo(SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
6854 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6855 path.cubicTo(SkBits2Float(0x41df6bc7), SkBits2Float(0xc2a60000), SkBits2Float(0x4257ee8b), SkBits2Float(0xc289e8f6), SkBits2Float(0x428aab73), SkBits2Float(0xc2368066));
6856 path.cubicTo(SkBits2Float(0x42a95fa1), SkBits2Float(0xc1b25dc1), SkBits2Float(0x42ae8dc1), SkBits2Float(0x40e61789), SkBits2Float(0x42987459), SkBits2Float(0x42035b41));
6857 path.cubicTo(SkBits2Float(0x42941f1a), SkBits2Float(0x421778e1), SkBits2Float(0x428ecdc9), SkBits2Float(0x422aae55), SkBits2Float(0x42889449), SkBits2Float(0x423cb3b9));
6858 path.lineTo(SkBits2Float(0x424576c5), SkBits2Float(0x4208693e));
6859 path.cubicTo(SkBits2Float(0x424e76a2), SkBits2Float(0x41f6c488), SkBits2Float(0x425626ce), SkBits2Float(0x41dafef6), SkBits2Float(0x425c6a87), SkBits2Float(0x41bde9b7));
6860 path.cubicTo(SkBits2Float(0x427c5dea), SkBits2Float(0x40a654db), SkBits2Float(0x4274e0a0), SkBits2Float(0xc180f082), SkBits2Float(0x42487c82), SkBits2Float(0xc203edca));
6861 path.cubicTo(SkBits2Float(0x421c1865), SkBits2Float(0xc2476353), SkBits2Float(0x41a18256), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
6862 path.close();
6863
6864 SkPath path1(path);
6865 path.reset();
6866 path.setFillType((SkPathFillType) 0);
6867 path.moveTo(SkBits2Float(0x42889449), SkBits2Float(0x423cb3b8));
6868 path.cubicTo(SkBits2Float(0x424c5291), SkBits2Float(0x42902c61), SkBits2Float(0x41ad609d), SkBits2Float(0x42ab4d26), SkBits2Float(0xc1072a9c), SkBits2Float(0x42a52356));
6869 path.cubicTo(SkBits2Float(0xc21a459c), SkBits2Float(0x429ef985), SkBits2Float(0xc2813d9b), SkBits2Float(0x4270fef6), SkBits2Float(0xc298db30), SkBits2Float(0x420179e4));
6870 path.cubicTo(SkBits2Float(0xc2b078c6), SkBits2Float(0x408fa686), SkBits2Float(0xc2a7d9d7), SkBits2Float(0xc1dcde62), SkBits2Float(0xc2825c7e), SkBits2Float(0xc24d8ae0));
6871 path.lineTo(SkBits2Float(0xc23c7965), SkBits2Float(0xc21495bd));
6872 path.cubicTo(SkBits2Float(0xc272ad07), SkBits2Float(0xc19fa9fe), SkBits2Float(0xc27f23bc), SkBits2Float(0x404faf9e), SkBits2Float(0xc25cff22), SkBits2Float(0x41bb31a8));
6873 path.cubicTo(SkBits2Float(0xc23ada86), SkBits2Float(0x422e36b1), SkBits2Float(0xc1df0b0c), SkBits2Float(0x4265d7b2), SkBits2Float(0xc0c36b6f), SkBits2Float(0x426ec0e0));
6874 path.cubicTo(SkBits2Float(0x417aaa9e), SkBits2Float(0x4277aa0e), SkBits2Float(0x4213b3f9), SkBits2Float(0x42507175), SkBits2Float(0x424576c8), SkBits2Float(0x4208693c));
6875 path.lineTo(SkBits2Float(0x42889449), SkBits2Float(0x423cb3b8));
6876 path.close();
6877
6878 SkPath path2(path);
6879 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6880 }
6881 // op end success 1
6882
battleOp251(skiatest::Reporter * reporter,const char * filename)6883 static void battleOp251(skiatest::Reporter* reporter, const char* filename) {
6884 SkPath path;
6885 path.setFillType((SkPathFillType) 0);
6886 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6887 path.cubicTo(SkBits2Float(0x41e529f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425d10b2), SkBits2Float(0xc2887541), SkBits2Float(0x428cd9cf), SkBits2Float(0xc22fb184));
6888 path.cubicTo(SkBits2Float(0x42ab2b45), SkBits2Float(0xc19cf10c), SkBits2Float(0x42ae472d), SkBits2Float(0x412c96c0), SkBits2Float(0x42951360), SkBits2Float(0x42120c0d));
6889 path.lineTo(SkBits2Float(0x425787f7), SkBits2Float(0x41d32707));
6890 path.cubicTo(SkBits2Float(0x427bf7e0), SkBits2Float(0x40f986c2), SkBits2Float(0x4277792b), SkBits2Float(0xc162e746), SkBits2Float(0x424ba3c8), SkBits2Float(0xc1fe03ba));
6891 path.cubicTo(SkBits2Float(0x421fce66), SkBits2Float(0xc24549e8), SkBits2Float(0x41a5a922), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
6892 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6893 path.close();
6894
6895 SkPath path1(path);
6896 path.reset();
6897 path.setFillType((SkPathFillType) 0);
6898 path.moveTo(SkBits2Float(0x42951360), SkBits2Float(0x42120c0f));
6899 path.cubicTo(SkBits2Float(0x429023a5), SkBits2Float(0x422633cd), SkBits2Float(0x428a3193), SkBits2Float(0x42394df4), SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e));
6900 path.lineTo(SkBits2Float(0x423ddffa), SkBits2Float(0x4212ca6e));
6901 path.cubicTo(SkBits2Float(0x4247cc4f), SkBits2Float(0x4205f480), SkBits2Float(0x425064e4), SkBits2Float(0x41f04ae6), SkBits2Float(0x425787f8), SkBits2Float(0x41d32708));
6902 path.lineTo(SkBits2Float(0x42951360), SkBits2Float(0x42120c0f));
6903 path.close();
6904
6905 SkPath path2(path);
6906 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6907 }
6908 // op end success 1
6909
battleOp252(skiatest::Reporter * reporter,const char * filename)6910 static void battleOp252(skiatest::Reporter* reporter, const char* filename) {
6911 SkPath path;
6912 path.setFillType((SkPathFillType) 1);
6913 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
6914 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6915 path.cubicTo(SkBits2Float(0x41e529f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425d10b2), SkBits2Float(0xc2887541), SkBits2Float(0x428cd9cf), SkBits2Float(0xc22fb184));
6916 path.cubicTo(SkBits2Float(0x42ab2b45), SkBits2Float(0xc19cf10c), SkBits2Float(0x42ae472d), SkBits2Float(0x412c96c0), SkBits2Float(0x42951360), SkBits2Float(0x42120c0f));
6917 path.cubicTo(SkBits2Float(0x429023a5), SkBits2Float(0x422633cd), SkBits2Float(0x428a3193), SkBits2Float(0x42394df4), SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e));
6918 path.lineTo(SkBits2Float(0x423ddffa), SkBits2Float(0x4212ca6e));
6919 path.cubicTo(SkBits2Float(0x4247cc4f), SkBits2Float(0x4205f480), SkBits2Float(0x425064e4), SkBits2Float(0x41f04ae6), SkBits2Float(0x425787f7), SkBits2Float(0x41d32707));
6920 path.cubicTo(SkBits2Float(0x427bf7e0), SkBits2Float(0x40f986c2), SkBits2Float(0x4277792b), SkBits2Float(0xc162e746), SkBits2Float(0x424ba3c8), SkBits2Float(0xc1fe03ba));
6921 path.cubicTo(SkBits2Float(0x421fce66), SkBits2Float(0xc24549e8), SkBits2Float(0x41a5a922), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
6922 path.close();
6923
6924 SkPath path1(path);
6925 path.reset();
6926 path.setFillType((SkPathFillType) 0);
6927 path.moveTo(SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e));
6928 path.cubicTo(SkBits2Float(0x423aab34), SkBits2Float(0x4296ad9b), SkBits2Float(0x41789cf4), SkBits2Float(0x42ae7f70), SkBits2Float(0xc1702bd2), SkBits2Float(0x42a3434e));
6929 path.cubicTo(SkBits2Float(0xc2363d27), SkBits2Float(0x4298072c), SkBits2Float(0xc28cd4c4), SkBits2Float(0x42573cf7), SkBits2Float(0xc29edb8e), SkBits2Float(0x41c0adb0));
6930 path.cubicTo(SkBits2Float(0xc2b0e257), SkBits2Float(0xc0b47a14), SkBits2Float(0xc2a03550), SkBits2Float(0xc217a35b), SkBits2Float(0xc2674746), SkBits2Float(0xc26e3089));
6931 path.lineTo(SkBits2Float(0xc2273070), SkBits2Float(0xc22c2f6e));
6932 path.cubicTo(SkBits2Float(0xc267a050), SkBits2Float(0xc1db3c5e), SkBits2Float(0xc27fbc5f), SkBits2Float(0xc0827737), SkBits2Float(0xc265ac62), SkBits2Float(0x418b490c));
6933 path.cubicTo(SkBits2Float(0xc24b9c64), SkBits2Float(0x421b97f2), SkBits2Float(0xc203bd1c), SkBits2Float(0x425bcc95), SkBits2Float(0xc12d9e08), SkBits2Float(0x426c0adc));
6934 path.cubicTo(SkBits2Float(0x4133b85e), SkBits2Float(0x427c4921), SkBits2Float(0x4206f0f2), SkBits2Float(0x4259d90a), SkBits2Float(0x423ddff7), SkBits2Float(0x4212ca73));
6935 path.lineTo(SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e));
6936 path.close();
6937
6938 SkPath path2(path);
6939 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6940 }
6941 // op end success 1
6942
battleOp253(skiatest::Reporter * reporter,const char * filename)6943 static void battleOp253(skiatest::Reporter* reporter, const char* filename) {
6944 SkPath path;
6945 path.setFillType((SkPathFillType) 0);
6946 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6947 path.cubicTo(SkBits2Float(0x41ea9e19), SkBits2Float(0xc2a60000), SkBits2Float(0x4261e8db), SkBits2Float(0xc2870be6), SkBits2Float(0x428ed6bc), SkBits2Float(0xc22926d7));
6948 path.cubicTo(SkBits2Float(0x42acb90a), SkBits2Float(0xc1886bc1), SkBits2Float(0x42adc0f7), SkBits2Float(0x41631db6), SkBits2Float(0x42918cff), SkBits2Float(0x421fa302));
6949 path.lineTo(SkBits2Float(0x42526f53), SkBits2Float(0x41e6ccd4));
6950 path.cubicTo(SkBits2Float(0x427b35d6), SkBits2Float(0x41242e26), SkBits2Float(0x4279b842), SkBits2Float(0xc1453c2f), SkBits2Float(0x424e8393), SkBits2Float(0xc1f48e84));
6951 path.cubicTo(SkBits2Float(0x42234ee4), SkBits2Float(0xc2433f78), SkBits2Float(0x41a99a66), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6952 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
6953 path.close();
6954
6955 SkPath path1(path);
6956 path.reset();
6957 path.setFillType((SkPathFillType) 0);
6958 path.moveTo(SkBits2Float(0x42918d00), SkBits2Float(0x421fa301));
6959 path.cubicTo(SkBits2Float(0x428c0830), SkBits2Float(0x4233c399), SkBits2Float(0x42857bfe), SkBits2Float(0x4246b13f), SkBits2Float(0x427c06a0), SkBits2Float(0x42581e30));
6960 path.lineTo(SkBits2Float(0x42362ff8), SkBits2Float(0x421c3ad6));
6961 path.cubicTo(SkBits2Float(0x4240fd4a), SkBits2Float(0x420fa210), SkBits2Float(0x424a74b5), SkBits2Float(0x4201f32f), SkBits2Float(0x42526f54), SkBits2Float(0x41e6ccd5));
6962 path.lineTo(SkBits2Float(0x42918d00), SkBits2Float(0x421fa301));
6963 path.close();
6964
6965 SkPath path2(path);
6966 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
6967 }
6968 // op end success 1
6969
battleOp254(skiatest::Reporter * reporter,const char * filename)6970 static void battleOp254(skiatest::Reporter* reporter, const char* filename) {
6971 SkPath path;
6972 path.setFillType((SkPathFillType) 1);
6973 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6974 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
6975 path.cubicTo(SkBits2Float(0x41ea9e19), SkBits2Float(0xc2a60000), SkBits2Float(0x4261e8db), SkBits2Float(0xc2870be6), SkBits2Float(0x428ed6bc), SkBits2Float(0xc22926d7));
6976 path.cubicTo(SkBits2Float(0x42acb90a), SkBits2Float(0xc1886bc1), SkBits2Float(0x42adc0f7), SkBits2Float(0x41631db6), SkBits2Float(0x42918d00), SkBits2Float(0x421fa301));
6977 path.cubicTo(SkBits2Float(0x428c0830), SkBits2Float(0x4233c399), SkBits2Float(0x42857bfe), SkBits2Float(0x4246b13f), SkBits2Float(0x427c06a0), SkBits2Float(0x42581e30));
6978 path.lineTo(SkBits2Float(0x42362ff8), SkBits2Float(0x421c3ad6));
6979 path.cubicTo(SkBits2Float(0x4240fd4a), SkBits2Float(0x420fa210), SkBits2Float(0x424a74b5), SkBits2Float(0x4201f32f), SkBits2Float(0x42526f53), SkBits2Float(0x41e6ccd4));
6980 path.cubicTo(SkBits2Float(0x427b35d6), SkBits2Float(0x41242e26), SkBits2Float(0x4279b842), SkBits2Float(0xc1453c2f), SkBits2Float(0x424e8393), SkBits2Float(0xc1f48e84));
6981 path.cubicTo(SkBits2Float(0x42234ee4), SkBits2Float(0xc2433f78), SkBits2Float(0x41a99a66), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
6982 path.close();
6983
6984 SkPath path1(path);
6985 path.reset();
6986 path.setFillType((SkPathFillType) 0);
6987 path.moveTo(SkBits2Float(0x427c069f), SkBits2Float(0x42581e31));
6988 path.cubicTo(SkBits2Float(0x4229355f), SkBits2Float(0x429c5901), SkBits2Float(0x4119ef9b), SkBits2Float(0x42b0b9f6), SkBits2Float(0xc1a91754), SkBits2Float(0x42a086fc));
6989 path.cubicTo(SkBits2Float(0xc24f933a), SkBits2Float(0x42905402), SkBits2Float(0xc296a2af), SkBits2Float(0x423cccf9), SkBits2Float(0xc2a2e3f0), SkBits2Float(0x417fd713));
6990 path.cubicTo(SkBits2Float(0xc2af2532), SkBits2Float(0xc17385be), SkBits2Float(0xc296a6d5), SkBits2Float(0xc23cbfbd), SkBits2Float(0xc247a7c9), SkBits2Float(0xc284a101));
6991 path.lineTo(SkBits2Float(0xc210544b), SkBits2Float(0xc23fc0ab));
6992 path.cubicTo(SkBits2Float(0xc259cf4c), SkBits2Float(0xc20871e9), SkBits2Float(0xc27d38da), SkBits2Float(0xc1300a36), SkBits2Float(0xc26b810f), SkBits2Float(0x4138f1f1));
6993 path.cubicTo(SkBits2Float(0xc259c944), SkBits2Float(0x42087b85), SkBits2Float(0xc2160de3), SkBits2Float(0x4250aad1), SkBits2Float(0xc174780b), SkBits2Float(0x42681670));
6994 path.cubicTo(SkBits2Float(0x40de8efd), SkBits2Float(0x427f820e), SkBits2Float(0x41f4a392), SkBits2Float(0x42620b79), SkBits2Float(0x42362ffc), SkBits2Float(0x421c3ad2));
6995 path.lineTo(SkBits2Float(0x427c069f), SkBits2Float(0x42581e31));
6996 path.close();
6997
6998 SkPath path2(path);
6999 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7000 }
7001 // op end success 1
7002
battleOp255(skiatest::Reporter * reporter,const char * filename)7003 static void battleOp255(skiatest::Reporter* reporter, const char* filename) {
7004 SkPath path;
7005 path.setFillType((SkPathFillType) 0);
7006 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7007 path.cubicTo(SkBits2Float(0x41eeb164), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42658277), SkBits2Float(0xc285f892), SkBits2Float(0x42904565), SkBits2Float(0xc22437b5));
7008 path.cubicTo(SkBits2Float(0x42adc98d), SkBits2Float(0xc171f916), SkBits2Float(0x42ad3226), SkBits2Float(0x4185deb6), SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bae));
7009 path.lineTo(SkBits2Float(0x424e5857), SkBits2Float(0x41f5204e));
7010 path.cubicTo(SkBits2Float(0x427a675d), SkBits2Float(0x41418c03), SkBits2Float(0x427b4242), SkBits2Float(0xc12eeb9a), SkBits2Float(0x425095b0), SkBits2Float(0xc1ed6c50));
7011 path.cubicTo(SkBits2Float(0x4225e91e), SkBits2Float(0xc241b169), SkBits2Float(0x41ac8c92), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
7012 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7013 path.close();
7014
7015 SkPath path1(path);
7016 path.reset();
7017 path.setFillType((SkPathFillType) 0);
7018 path.moveTo(SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bad));
7019 path.cubicTo(SkBits2Float(0x4288c365), SkBits2Float(0x423d9c15), SkBits2Float(0x4281c36f), SkBits2Float(0x42505c7e), SkBits2Float(0x4273ad50), SkBits2Float(0x42617d52));
7020 path.lineTo(SkBits2Float(0x423026ec), SkBits2Float(0x42230126));
7021 path.cubicTo(SkBits2Float(0x423b9c18), SkBits2Float(0x42169f65), SkBits2Float(0x4245bae4), SkBits2Float(0x42091136), SkBits2Float(0x424e5858), SkBits2Float(0x41f5204d));
7022 path.lineTo(SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bad));
7023 path.close();
7024
7025 SkPath path2(path);
7026 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7027 }
7028 // op end success 1
7029
battleOp256(skiatest::Reporter * reporter,const char * filename)7030 static void battleOp256(skiatest::Reporter* reporter, const char* filename) {
7031 SkPath path;
7032 path.setFillType((SkPathFillType) 1);
7033 path.moveTo(SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
7034 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7035 path.cubicTo(SkBits2Float(0x41eeb164), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42658277), SkBits2Float(0xc285f892), SkBits2Float(0x42904565), SkBits2Float(0xc22437b5));
7036 path.cubicTo(SkBits2Float(0x42adc98d), SkBits2Float(0xc171f917), SkBits2Float(0x42ad3226), SkBits2Float(0x4185deb4), SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bad));
7037 path.lineTo(SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bae));
7038 path.cubicTo(SkBits2Float(0x4288c365), SkBits2Float(0x423d9c16), SkBits2Float(0x4281c36f), SkBits2Float(0x42505c7e), SkBits2Float(0x4273ad50), SkBits2Float(0x42617d52));
7039 path.lineTo(SkBits2Float(0x423026ec), SkBits2Float(0x42230126));
7040 path.cubicTo(SkBits2Float(0x423b9c18), SkBits2Float(0x42169f65), SkBits2Float(0x4245bae4), SkBits2Float(0x42091136), SkBits2Float(0x424e5858), SkBits2Float(0x41f5204d));
7041 path.cubicTo(SkBits2Float(0x427a675e), SkBits2Float(0x41418c02), SkBits2Float(0x427b4242), SkBits2Float(0xc12eeb9b), SkBits2Float(0x425095b0), SkBits2Float(0xc1ed6c50));
7042 path.cubicTo(SkBits2Float(0x4225e91e), SkBits2Float(0xc241b169), SkBits2Float(0x41ac8c92), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000));
7043 path.close();
7044
7045 SkPath path1(path);
7046 path.reset();
7047 path.setFillType((SkPathFillType) 0);
7048 path.moveTo(SkBits2Float(0x4273ad4f), SkBits2Float(0x42617d52));
7049 path.cubicTo(SkBits2Float(0x421bc173), SkBits2Float(0x42a0404f), SkBits2Float(0x40a50405), SkBits2Float(0x42b1dfaa), SkBits2Float(0xc1cd0022), SkBits2Float(0x429de3fd));
7050 path.cubicTo(SkBits2Float(0xc261a0a2), SkBits2Float(0x4289e850), SkBits2Float(0xc29d25ee), SkBits2Float(0x4227ed4e), SkBits2Float(0xc2a4d3d8), SkBits2Float(0x411d8f80));
7051 path.cubicTo(SkBits2Float(0xc2ac81c3), SkBits2Float(0xc1b24b1c), SkBits2Float(0xc28e216c), SkBits2Float(0xc256e38c), SkBits2Float(0xc22e0453), SkBits2Float(0xc28d5ec3));
7052 path.lineTo(SkBits2Float(0xc1fb9743), SkBits2Float(0xc24c63fd));
7053 path.cubicTo(SkBits2Float(0xc24d7d6b), SkBits2Float(0xc21b575f), SkBits2Float(0xc279684a), SkBits2Float(0xc180e302), SkBits2Float(0xc26e4dff), SkBits2Float(0x40e3cc4e));
7054 path.cubicTo(SkBits2Float(0xc26333b4), SkBits2Float(0x41f2c929), SkBits2Float(0xc2231aa4), SkBits2Float(0x42476256), SkBits2Float(0xc1943166), SkBits2Float(0x4264467e));
7055 path.cubicTo(SkBits2Float(0x406e93d1), SkBits2Float(0x42809553), SkBits2Float(0x41e1305a), SkBits2Float(0x4267b03c), SkBits2Float(0x423026ed), SkBits2Float(0x42230127));
7056 path.lineTo(SkBits2Float(0x4273ad4f), SkBits2Float(0x42617d52));
7057 path.close();
7058
7059 SkPath path2(path);
7060 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7061 }
7062 // op end success 1
7063
battleOp257(skiatest::Reporter * reporter,const char * filename)7064 static void battleOp257(skiatest::Reporter* reporter, const char* filename) {
7065 SkPath path;
7066 path.setFillType((SkPathFillType) 0);
7067 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7068 path.cubicTo(SkBits2Float(0x41f2d268), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426923a2), SkBits2Float(0xc284dd06), SkBits2Float(0x4291aced), SkBits2Float(0xc21f2e53));
7069 path.cubicTo(SkBits2Float(0x42aec809), SkBits2Float(0xc1528a66), SkBits2Float(0x42ac7c90), SkBits2Float(0x419a60b1), SkBits2Float(0x428bb0fe), SkBits2Float(0x42335ba0));
7070 path.lineTo(SkBits2Float(0x4249f6a4), SkBits2Float(0x4201a806));
7071 path.cubicTo(SkBits2Float(0x427960d2), SkBits2Float(0x415f325f), SkBits2Float(0x427cb22e), SkBits2Float(0xc11832b1), SkBits2Float(0x42529d7e), SkBits2Float(0xc1e62422));
7072 path.cubicTo(SkBits2Float(0x422888ce), SkBits2Float(0xc2401775), SkBits2Float(0x41af88b3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
7073 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7074 path.close();
7075
7076 SkPath path1(path);
7077 path.reset();
7078 path.setFillType((SkPathFillType) 0);
7079 path.moveTo(SkBits2Float(0x428bb0ff), SkBits2Float(0x42335ba2));
7080 path.cubicTo(SkBits2Float(0x4285489d), SkBits2Float(0x42475206), SkBits2Float(0x427ba631), SkBits2Float(0x4259da14), SkBits2Float(0x426ae250), SkBits2Float(0x426aa282));
7081 path.lineTo(SkBits2Float(0x4229cbb3), SkBits2Float(0x42299d92));
7082 path.cubicTo(SkBits2Float(0x4235ea43), SkBits2Float(0x421d7bb7), SkBits2Float(0x4240b302), SkBits2Float(0x42101649), SkBits2Float(0x4249f6a5), SkBits2Float(0x4201a807));
7083 path.lineTo(SkBits2Float(0x428bb0ff), SkBits2Float(0x42335ba2));
7084 path.close();
7085
7086 SkPath path2(path);
7087 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7088 }
7089 // op end success 1
7090
battleOp258(skiatest::Reporter * reporter,const char * filename)7091 static void battleOp258(skiatest::Reporter* reporter, const char* filename) {
7092 SkPath path;
7093 path.setFillType((SkPathFillType) 1);
7094 path.moveTo(SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
7095 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7096 path.cubicTo(SkBits2Float(0x41f2d268), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426923a2), SkBits2Float(0xc284dd06), SkBits2Float(0x4291aced), SkBits2Float(0xc21f2e53));
7097 path.cubicTo(SkBits2Float(0x42aec809), SkBits2Float(0xc1528a66), SkBits2Float(0x42ac7c90), SkBits2Float(0x419a60b1), SkBits2Float(0x428bb0ff), SkBits2Float(0x42335ba2));
7098 path.cubicTo(SkBits2Float(0x4285489d), SkBits2Float(0x42475206), SkBits2Float(0x427ba631), SkBits2Float(0x4259da14), SkBits2Float(0x426ae250), SkBits2Float(0x426aa282));
7099 path.lineTo(SkBits2Float(0x4229cbb3), SkBits2Float(0x42299d92));
7100 path.cubicTo(SkBits2Float(0x4235ea43), SkBits2Float(0x421d7bb7), SkBits2Float(0x4240b302), SkBits2Float(0x42101649), SkBits2Float(0x4249f6a4), SkBits2Float(0x4201a806));
7101 path.cubicTo(SkBits2Float(0x427960d2), SkBits2Float(0x415f325f), SkBits2Float(0x427cb22e), SkBits2Float(0xc11832b1), SkBits2Float(0x42529d7e), SkBits2Float(0xc1e62422));
7102 path.cubicTo(SkBits2Float(0x422888ce), SkBits2Float(0xc2401775), SkBits2Float(0x41af88b3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000));
7103 path.close();
7104
7105 SkPath path1(path);
7106 path.reset();
7107 path.setFillType((SkPathFillType) 0);
7108 path.moveTo(SkBits2Float(0x426ae251), SkBits2Float(0x426aa281));
7109 path.cubicTo(SkBits2Float(0x420dcd2c), SkBits2Float(0x42a3e87c), SkBits2Float(0x3f1c0197), SkBits2Float(0x42b294d6), SkBits2Float(0xc1f0a2ab), SkBits2Float(0x429ab731));
7110 path.cubicTo(SkBits2Float(0xc27312b1), SkBits2Float(0x4282d98e), SkBits2Float(0xc2a300b1), SkBits2Float(0x4211eaa7), SkBits2Float(0xc2a5d865), SkBits2Float(0x40654aaf));
7111 path.cubicTo(SkBits2Float(0xc2a8b018), SkBits2Float(0xc1ea82a2), SkBits2Float(0xc2845e8a), SkBits2Float(0xc26fc272), SkBits2Float(0xc2128ebb), SkBits2Float(0xc294f34d));
7112 path.lineTo(SkBits2Float(0xc1d3e3ef), SkBits2Float(0xc2575999));
7113 path.cubicTo(SkBits2Float(0xc23f6093), SkBits2Float(0xc22d51f6), SkBits2Float(0xc273e2d0), SkBits2Float(0xc1a9868a), SkBits2Float(0xc26fc6b5), SkBits2Float(0x4025c090));
7114 path.cubicTo(SkBits2Float(0xc26baa9a), SkBits2Float(0x41d2f6ae), SkBits2Float(0xc22fb71e), SkBits2Float(0x423d2e2a), SkBits2Float(0xc1adf403), SkBits2Float(0x425faf61));
7115 path.cubicTo(SkBits2Float(0x3ee18e9e), SkBits2Float(0x4281184d), SkBits2Float(0x41cd03a3), SkBits2Float(0x426cf9bf), SkBits2Float(0x4229cbb7), SkBits2Float(0x42299d90));
7116 path.lineTo(SkBits2Float(0x426ae251), SkBits2Float(0x426aa281));
7117 path.close();
7118
7119 SkPath path2(path);
7120 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7121 }
7122 // op end success 1
7123
battleOp259(skiatest::Reporter * reporter,const char * filename)7124 static void battleOp259(skiatest::Reporter* reporter, const char* filename) {
7125 SkPath path;
7126 path.setFillType((SkPathFillType) 0);
7127 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7128 path.cubicTo(SkBits2Float(0x41f70d18), SkBits2Float(0xc2a60000), SkBits2Float(0x426cd682), SkBits2Float(0xc283b5d2), SkBits2Float(0x429310ae), SkBits2Float(0xc219fc22));
7129 path.cubicTo(SkBits2Float(0x42afb61c), SkBits2Float(0xc132327f), SkBits2Float(0x42ab9c4e), SkBits2Float(0x41af4ab2), SkBits2Float(0x42886baa), SkBits2Float(0x423d2918));
7130 path.lineTo(SkBits2Float(0x42453c0d), SkBits2Float(0x4208be17));
7131 path.cubicTo(SkBits2Float(0x42781c98), SkBits2Float(0x417d6f0f), SkBits2Float(0x427e0a5e), SkBits2Float(0xc100d142), SkBits2Float(0x42549fd3), SkBits2Float(0xc1dea0fa));
7132 path.cubicTo(SkBits2Float(0x422b3547), SkBits2Float(0xc23e6ca9), SkBits2Float(0x41b29756), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
7133 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7134 path.close();
7135
7136 SkPath path1(path);
7137 path.reset();
7138 path.setFillType((SkPathFillType) 0);
7139 path.moveTo(SkBits2Float(0x42886bab), SkBits2Float(0x423d2917));
7140 path.cubicTo(SkBits2Float(0x42818ce6), SkBits2Float(0x4250fab6), SkBits2Float(0x42733ded), SkBits2Float(0x42633df9), SkBits2Float(0x42618b96), SkBits2Float(0x4273a01b));
7141 path.lineTo(SkBits2Float(0x42230b75), SkBits2Float(0x42301d61));
7142 path.cubicTo(SkBits2Float(0x422fd668), SkBits2Float(0x4224457a), SkBits2Float(0x423b4d41), SkBits2Float(0x421711c6), SkBits2Float(0x42453c0e), SkBits2Float(0x4208be17));
7143 path.lineTo(SkBits2Float(0x42886bab), SkBits2Float(0x423d2917));
7144 path.close();
7145
7146 SkPath path2(path);
7147 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7148 }
7149 // op end success 1
7150
battleOp260(skiatest::Reporter * reporter,const char * filename)7151 static void battleOp260(skiatest::Reporter* reporter, const char* filename) {
7152 SkPath path;
7153 path.setFillType((SkPathFillType) 1);
7154 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
7155 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7156 path.cubicTo(SkBits2Float(0x41f70d18), SkBits2Float(0xc2a60000), SkBits2Float(0x426cd682), SkBits2Float(0xc283b5d2), SkBits2Float(0x429310ae), SkBits2Float(0xc219fc22));
7157 path.cubicTo(SkBits2Float(0x42afb61c), SkBits2Float(0xc132327f), SkBits2Float(0x42ab9c4e), SkBits2Float(0x41af4ab2), SkBits2Float(0x42886bab), SkBits2Float(0x423d2917));
7158 path.cubicTo(SkBits2Float(0x42818ce6), SkBits2Float(0x4250fab6), SkBits2Float(0x42733ded), SkBits2Float(0x42633df9), SkBits2Float(0x42618b96), SkBits2Float(0x4273a01b));
7159 path.lineTo(SkBits2Float(0x42230b75), SkBits2Float(0x42301d61));
7160 path.cubicTo(SkBits2Float(0x422fd668), SkBits2Float(0x4224457a), SkBits2Float(0x423b4d41), SkBits2Float(0x421711c6), SkBits2Float(0x42453c0d), SkBits2Float(0x4208be17));
7161 path.cubicTo(SkBits2Float(0x42781c98), SkBits2Float(0x417d6f0f), SkBits2Float(0x427e0a5e), SkBits2Float(0xc100d142), SkBits2Float(0x42549fd3), SkBits2Float(0xc1dea0fa));
7162 path.cubicTo(SkBits2Float(0x422b3547), SkBits2Float(0xc23e6ca9), SkBits2Float(0x41b29756), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
7163 path.close();
7164
7165 SkPath path1(path);
7166 path.reset();
7167 path.setFillType((SkPathFillType) 0);
7168 path.moveTo(SkBits2Float(0x42618b95), SkBits2Float(0x4273a01c));
7169 path.cubicTo(SkBits2Float(0x41fe659e), SkBits2Float(0x42a75638), SkBits2Float(0xc081f8cf), SkBits2Float(0x42b2d4b3), SkBits2Float(0xc20a1eaa), SkBits2Float(0x4296f3e7));
7170 path.cubicTo(SkBits2Float(0xc281ff1e), SkBits2Float(0x42762634), SkBits2Float(0xc2a8320c), SkBits2Float(0x41f52b39), SkBits2Float(0xc2a5e71e), SkBits2Float(0xc035be80));
7171 path.cubicTo(SkBits2Float(0xc2a39c30), SkBits2Float(0xc2114d6a), SkBits2Float(0xc2728d06), SkBits2Float(0xc283ad37), SkBits2Float(0xc1ea4cbe), SkBits2Float(0xc29b5279));
7172 path.lineTo(SkBits2Float(0xc1a95f99), SkBits2Float(0xc2608fe9));
7173 path.cubicTo(SkBits2Float(0xc22f5688), SkBits2Float(0xc23e6034), SkBits2Float(0xc26c8b72), SkBits2Float(0xc1d2135a), SkBits2Float(0xc26fdc03), SkBits2Float(0xc003615b));
7174 path.cubicTo(SkBits2Float(0xc2732c96), SkBits2Float(0x41b13b02), SkBits2Float(0xc23bf25c), SkBits2Float(0x4231f06e), SkBits2Float(0xc1c7b0f0), SkBits2Float(0x425a3eb1));
7175 path.cubicTo(SkBits2Float(0xc03be91a), SkBits2Float(0x4281467b), SkBits2Float(0x41b7e6c5), SkBits2Float(0x4271eec4), SkBits2Float(0x42230b77), SkBits2Float(0x42301d61));
7176 path.lineTo(SkBits2Float(0x42618b95), SkBits2Float(0x4273a01c));
7177 path.close();
7178
7179 SkPath path2(path);
7180 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7181 }
7182 // op end success 1
7183
battleOp261(skiatest::Reporter * reporter,const char * filename)7184 static void battleOp261(skiatest::Reporter* reporter, const char* filename) {
7185 SkPath path;
7186 path.setFillType((SkPathFillType) 0);
7187 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7188 path.cubicTo(SkBits2Float(0x41f9750b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426eeefa), SkBits2Float(0xc2830bb8), SkBits2Float(0x4293d569), SkBits2Float(0xc2170343));
7189 path.cubicTo(SkBits2Float(0x42b03354), SkBits2Float(0xc11fbc55), SkBits2Float(0x42ab0b89), SkBits2Float(0x41bb247a), SkBits2Float(0x42867c8e), SkBits2Float(0x42429f12));
7190 path.lineTo(SkBits2Float(0x42427039), SkBits2Float(0x420cb0ae));
7191 path.cubicTo(SkBits2Float(0x42774b4a), SkBits2Float(0x418748a6), SkBits2Float(0x427ebf70), SkBits2Float(0xc0e6f16a), SkBits2Float(0x4255bc46), SkBits2Float(0xc1da54e8));
7192 path.cubicTo(SkBits2Float(0x422cb91b), SkBits2Float(0xc23d76ba), SkBits2Float(0x41b454a4), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
7193 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7194 path.close();
7195
7196 SkPath path1(path);
7197 path.reset();
7198 path.setFillType((SkPathFillType) 0);
7199 path.moveTo(SkBits2Float(0x42867c8e), SkBits2Float(0x42429f13));
7200 path.cubicTo(SkBits2Float(0x427eb473), SkBits2Float(0x4256572c), SkBits2Float(0x426e4fbb), SkBits2Float(0x42686e49), SkBits2Float(0x425c16a2), SkBits2Float(0x427890ea));
7201 path.lineTo(SkBits2Float(0x421f199c), SkBits2Float(0x4233afb3));
7202 path.cubicTo(SkBits2Float(0x422c45f9), SkBits2Float(0x422805b5), SkBits2Float(0x42381fbf), SkBits2Float(0x421af1ea), SkBits2Float(0x4242703a), SkBits2Float(0x420cb0af));
7203 path.lineTo(SkBits2Float(0x42867c8e), SkBits2Float(0x42429f13));
7204 path.close();
7205
7206 SkPath path2(path);
7207 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7208 }
7209 // op end success 1
7210
battleOp262(skiatest::Reporter * reporter,const char * filename)7211 static void battleOp262(skiatest::Reporter* reporter, const char* filename) {
7212 SkPath path;
7213 path.setFillType((SkPathFillType) 1);
7214 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
7215 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7216 path.cubicTo(SkBits2Float(0x41f9750b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426eeefa), SkBits2Float(0xc2830bb8), SkBits2Float(0x4293d569), SkBits2Float(0xc2170343));
7217 path.cubicTo(SkBits2Float(0x42b03354), SkBits2Float(0xc11fbc55), SkBits2Float(0x42ab0b89), SkBits2Float(0x41bb247a), SkBits2Float(0x42867c8e), SkBits2Float(0x42429f13));
7218 path.cubicTo(SkBits2Float(0x427eb473), SkBits2Float(0x4256572c), SkBits2Float(0x426e4fbb), SkBits2Float(0x42686e49), SkBits2Float(0x425c16a2), SkBits2Float(0x427890ea));
7219 path.lineTo(SkBits2Float(0x421f199c), SkBits2Float(0x4233afb3));
7220 path.cubicTo(SkBits2Float(0x422c45f9), SkBits2Float(0x422805b5), SkBits2Float(0x42381fbf), SkBits2Float(0x421af1ea), SkBits2Float(0x42427039), SkBits2Float(0x420cb0ae));
7221 path.cubicTo(SkBits2Float(0x42774b4a), SkBits2Float(0x418748a6), SkBits2Float(0x427ebf70), SkBits2Float(0xc0e6f16a), SkBits2Float(0x4255bc46), SkBits2Float(0xc1da54e8));
7222 path.cubicTo(SkBits2Float(0x422cb91b), SkBits2Float(0xc23d76ba), SkBits2Float(0x41b454a4), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
7223 path.close();
7224
7225 SkPath path1(path);
7226 path.reset();
7227 path.setFillType((SkPathFillType) 0);
7228 path.moveTo(SkBits2Float(0x425c16a1), SkBits2Float(0x427890eb));
7229 path.cubicTo(SkBits2Float(0x41ed85e5), SkBits2Float(0x42a9245e), SkBits2Float(0xc0d70d9a), SkBits2Float(0x42b2c211), SkBits2Float(0xc2140612), SkBits2Float(0x42949665));
7230 path.cubicTo(SkBits2Float(0xc2869539), SkBits2Float(0x426cd56f), SkBits2Float(0xc2aac701), SkBits2Float(0x41d9ff9c), SkBits2Float(0xc2a57e3b), SkBits2Float(0xc0cf6824));
7231 path.cubicTo(SkBits2Float(0xc2a03574), SkBits2Float(0xc220d9d7), SkBits2Float(0xc26501e3), SkBits2Float(0xc289ed78), SkBits2Float(0xc1c7e516), SkBits2Float(0xc29e4c97));
7232 path.lineTo(SkBits2Float(0xc190809e), SkBits2Float(0xc264ddc3));
7233 path.cubicTo(SkBits2Float(0xc2258c2b), SkBits2Float(0xc24769d4), SkBits2Float(0xc267a08f), SkBits2Float(0xc1e88e39), SkBits2Float(0xc26f4461), SkBits2Float(0xc095eec9));
7234 path.cubicTo(SkBits2Float(0xc276e835), SkBits2Float(0x419d96da), SkBits2Float(0xc24293e3), SkBits2Float(0x422b3483), SkBits2Float(0xc1d60298), SkBits2Float(0x4256d347));
7235 path.cubicTo(SkBits2Float(0xc09b75b0), SkBits2Float(0x42813905), SkBits2Float(0x41abb417), SkBits2Float(0x42748af0), SkBits2Float(0x421f199e), SkBits2Float(0x4233afb2));
7236 path.lineTo(SkBits2Float(0x425c16a1), SkBits2Float(0x427890eb));
7237 path.close();
7238
7239 SkPath path2(path);
7240 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7241 }
7242 // op end success 1
7243
battleOp263(skiatest::Reporter * reporter,const char * filename)7244 static void battleOp263(skiatest::Reporter* reporter, const char* filename) {
7245 SkPath path;
7246 path.setFillType((SkPathFillType) 0);
7247 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7248 path.cubicTo(SkBits2Float(0x41fc38da), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4271556b), SkBits2Float(0xc2824656), SkBits2Float(0x4294b266), SkBits2Float(0xc213956f));
7249 path.cubicTo(SkBits2Float(0x42b0ba15), SkBits2Float(0xc10a78c9), SkBits2Float(0x42aa55de), SkBits2Float(0x41c8b65d), SkBits2Float(0x42843343), SkBits2Float(0x4248ca15));
7250 path.lineTo(SkBits2Float(0x423f2206), SkBits2Float(0x42112621));
7251 path.cubicTo(SkBits2Float(0x427644a6), SkBits2Float(0x419117e2), SkBits2Float(0x427f8241), SkBits2Float(0xc0c83353), SkBits2Float(0x4256fbc4), SkBits2Float(0xc1d55fc8));
7252 path.cubicTo(SkBits2Float(0x422e7546), SkBits2Float(0xc23c595d), SkBits2Float(0x41b6544b), SkBits2Float(0xc2700002), SkBits2Float(0x357ffa8c), SkBits2Float(0xc2700000));
7253 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7254 path.close();
7255
7256 SkPath path1(path);
7257 path.reset();
7258 path.setFillType((SkPathFillType) 0);
7259 path.moveTo(SkBits2Float(0x42843344), SkBits2Float(0x4248ca14));
7260 path.cubicTo(SkBits2Float(0x4279865a), SkBits2Float(0x425c60b2), SkBits2Float(0x426884b7), SkBits2Float(0x426e4097), SkBits2Float(0x4255b1c1), SkBits2Float(0x427e1584));
7261 path.lineTo(SkBits2Float(0x421a7a55), SkBits2Float(0x4237acdc));
7262 path.cubicTo(SkBits2Float(0x422815ec), SkBits2Float(0x422c3b08), SkBits2Float(0x42346121), SkBits2Float(0x421f4f28), SkBits2Float(0x423f2207), SkBits2Float(0x42112621));
7263 path.lineTo(SkBits2Float(0x42843344), SkBits2Float(0x4248ca14));
7264 path.close();
7265
7266 SkPath path2(path);
7267 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7268 }
7269 // op end success 1
7270
battleOp264(skiatest::Reporter * reporter,const char * filename)7271 static void battleOp264(skiatest::Reporter* reporter, const char* filename) {
7272 SkPath path;
7273 path.setFillType((SkPathFillType) 1);
7274 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7275 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7276 path.cubicTo(SkBits2Float(0x41fc38da), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4271556b), SkBits2Float(0xc2824656), SkBits2Float(0x4294b266), SkBits2Float(0xc213956f));
7277 path.cubicTo(SkBits2Float(0x42b0ba15), SkBits2Float(0xc10a78c9), SkBits2Float(0x42aa55de), SkBits2Float(0x41c8b65d), SkBits2Float(0x42843344), SkBits2Float(0x4248ca14));
7278 path.cubicTo(SkBits2Float(0x4279865a), SkBits2Float(0x425c60b2), SkBits2Float(0x426884b7), SkBits2Float(0x426e4097), SkBits2Float(0x4255b1c1), SkBits2Float(0x427e1584));
7279 path.lineTo(SkBits2Float(0x421a7a55), SkBits2Float(0x4237acdc));
7280 path.cubicTo(SkBits2Float(0x422815ec), SkBits2Float(0x422c3b08), SkBits2Float(0x42346121), SkBits2Float(0x421f4f28), SkBits2Float(0x423f2206), SkBits2Float(0x42112621));
7281 path.cubicTo(SkBits2Float(0x427644a6), SkBits2Float(0x419117e2), SkBits2Float(0x427f8241), SkBits2Float(0xc0c83353), SkBits2Float(0x4256fbc4), SkBits2Float(0xc1d55fc8));
7282 path.cubicTo(SkBits2Float(0x422e7546), SkBits2Float(0xc23c595d), SkBits2Float(0x41b6544b), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7283 path.close();
7284
7285 SkPath path1(path);
7286 path.reset();
7287 path.setFillType((SkPathFillType) 0);
7288 path.moveTo(SkBits2Float(0x4255b1c2), SkBits2Float(0x427e1586));
7289 path.cubicTo(SkBits2Float(0x41d9eb88), SkBits2Float(0x42ab15b8), SkBits2Float(0xc11c5ee2), SkBits2Float(0x42b27b8c), SkBits2Float(0xc21f2fec), SkBits2Float(0x4291ac82));
7290 path.cubicTo(SkBits2Float(0xc28ba40f), SkBits2Float(0x4261baf0), SkBits2Float(0xc2ad6782), SkBits2Float(0x41ba4aab), SkBits2Float(0xc2a4a120), SkBits2Float(0xc12a4d95));
7291 path.cubicTo(SkBits2Float(0xc29bdabd), SkBits2Float(0xc2324c20), SkBits2Float(0xc254adab), SkBits2Float(0xc290ac19), SkBits2Float(0xc19fafc0), SkBits2Float(0xc2a120ca));
7292 path.lineTo(SkBits2Float(0xc166df50), SkBits2Float(0xc268f4ce));
7293 path.cubicTo(SkBits2Float(0xc219be54), SkBits2Float(0xc2512a28), SkBits2Float(0xc26154eb), SkBits2Float(0xc200e3bb), SkBits2Float(0xc26e04b2), SkBits2Float(0xc0f6387e));
7294 path.cubicTo(SkBits2Float(0xc27ab479), SkBits2Float(0x4186ab35), SkBits2Float(0xc249e3ea), SkBits2Float(0x42232db1), SkBits2Float(0xc1e62664), SkBits2Float(0x42529ce0));
7295 path.cubicTo(SkBits2Float(0xc0e213c9), SkBits2Float(0x42810608), SkBits2Float(0x419d8860), SkBits2Float(0x427759fd), SkBits2Float(0x421a7a58), SkBits2Float(0x4237acda));
7296 path.lineTo(SkBits2Float(0x4255b1c2), SkBits2Float(0x427e1586));
7297 path.close();
7298
7299 SkPath path2(path);
7300 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7301 }
7302 // op end success 1
7303
battleOp265(skiatest::Reporter * reporter,const char * filename)7304 static void battleOp265(skiatest::Reporter* reporter, const char* filename) {
7305 SkPath path;
7306 path.setFillType((SkPathFillType) 0);
7307 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7308 path.cubicTo(SkBits2Float(0x41fe7454), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427343e8), SkBits2Float(0xc281a57b), SkBits2Float(0x429560d9), SkBits2Float(0xc210ce12));
7309 path.cubicTo(SkBits2Float(0x42b11fbd), SkBits2Float(0xc0f2896e), SkBits2Float(0x42a9b750), SkBits2Float(0x41d3a0ba), SkBits2Float(0x42824e39), SkBits2Float(0x424daf12));
7310 path.lineTo(SkBits2Float(0x423c64bf), SkBits2Float(0x4214afea));
7311 path.cubicTo(SkBits2Float(0x42755f66), SkBits2Float(0x4198fbec), SkBits2Float(0x42800a9d), SkBits2Float(0xc0af53e2), SkBits2Float(0x4257f7fc), SkBits2Float(0xc1d15b49));
7312 path.cubicTo(SkBits2Float(0x422fdabc), SkBits2Float(0xc23b70cc), SkBits2Float(0x41b7f168), SkBits2Float(0xc2700002), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000));
7313 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7314 path.close();
7315
7316 SkPath path1(path);
7317 path.reset();
7318 path.setFillType((SkPathFillType) 0);
7319 path.moveTo(SkBits2Float(0x42824e38), SkBits2Float(0x424daf15));
7320 path.cubicTo(SkBits2Float(0x42753e9a), SkBits2Float(0x4261276c), SkBits2Float(0x4263be9a), SkBits2Float(0x4272d73c), SkBits2Float(0x4250704b), SkBits2Float(0x428134df));
7321 path.lineTo(SkBits2Float(0x4216adb6), SkBits2Float(0x423acdfc));
7322 path.cubicTo(SkBits2Float(0x4224a276), SkBits2Float(0x422f8c2c), SkBits2Float(0x42314905), SkBits2Float(0x4222c30f), SkBits2Float(0x423c64c0), SkBits2Float(0x4214afec));
7323 path.lineTo(SkBits2Float(0x42824e38), SkBits2Float(0x424daf15));
7324 path.close();
7325
7326 SkPath path2(path);
7327 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7328 }
7329 // op end success 1
7330
battleOp266(skiatest::Reporter * reporter,const char * filename)7331 static void battleOp266(skiatest::Reporter* reporter, const char* filename) {
7332 SkPath path;
7333 path.setFillType((SkPathFillType) 1);
7334 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7335 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7336 path.cubicTo(SkBits2Float(0x41fe7454), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427343e8), SkBits2Float(0xc281a57b), SkBits2Float(0x429560d9), SkBits2Float(0xc210ce12));
7337 path.cubicTo(SkBits2Float(0x42b11fbd), SkBits2Float(0xc0f2896e), SkBits2Float(0x42a9b750), SkBits2Float(0x41d3a0ba), SkBits2Float(0x42824e39), SkBits2Float(0x424daf12));
7338 path.lineTo(SkBits2Float(0x42824e38), SkBits2Float(0x424daf15));
7339 path.cubicTo(SkBits2Float(0x42753e9a), SkBits2Float(0x4261276c), SkBits2Float(0x4263be9a), SkBits2Float(0x4272d73c), SkBits2Float(0x4250704b), SkBits2Float(0x428134df));
7340 path.lineTo(SkBits2Float(0x4216adb6), SkBits2Float(0x423acdfc));
7341 path.cubicTo(SkBits2Float(0x4224a276), SkBits2Float(0x422f8c2c), SkBits2Float(0x42314905), SkBits2Float(0x4222c30f), SkBits2Float(0x423c64c0), SkBits2Float(0x4214afec));
7342 path.lineTo(SkBits2Float(0x423c64bf), SkBits2Float(0x4214afea));
7343 path.cubicTo(SkBits2Float(0x42755f66), SkBits2Float(0x4198fbec), SkBits2Float(0x42800a9d), SkBits2Float(0xc0af53e2), SkBits2Float(0x4257f7fc), SkBits2Float(0xc1d15b49));
7344 path.cubicTo(SkBits2Float(0x422fdabc), SkBits2Float(0xc23b70cc), SkBits2Float(0x41b7f168), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7345 path.close();
7346
7347 SkPath path1(path);
7348 path.reset();
7349 path.setFillType((SkPathFillType) 0);
7350 path.moveTo(SkBits2Float(0x4250704d), SkBits2Float(0x428134e0));
7351 path.cubicTo(SkBits2Float(0x41c9effb), SkBits2Float(0x42ac8cba), SkBits2Float(0xc143bd6b), SkBits2Float(0x42b21c58), SkBits2Float(0xc2280561), SkBits2Float(0x428f2c0c));
7352 path.cubicTo(SkBits2Float(0xc28f8db2), SkBits2Float(0x42587782), SkBits2Float(0xc2af41ba), SkBits2Float(0x41a05b8a), SkBits2Float(0xc2a3a0d2), SkBits2Float(0xc15fb01a));
7353 path.cubicTo(SkBits2Float(0xc297ffea), SkBits2Float(0xc24005d3), SkBits2Float(0xc246ef26), SkBits2Float(0xc295c2d5), SkBits2Float(0xc17d9b57), SkBits2Float(0xc2a2f1e8));
7354 path.lineTo(SkBits2Float(0xc1375488), SkBits2Float(0xc26b9543));
7355 path.cubicTo(SkBits2Float(0xc20fcecd), SkBits2Float(0xc25885a3), SkBits2Float(0xc25bc22e), SkBits2Float(0xc20acfc5), SkBits2Float(0xc26c9222), SkBits2Float(0xc121b3b7));
7356 path.cubicTo(SkBits2Float(0xc27d6216), SkBits2Float(0x4167d7a5), SkBits2Float(0xc24f8c13), SkBits2Float(0x421c7b68), SkBits2Float(0xc1f2ebf9), SkBits2Float(0x424efee8));
7357 path.cubicTo(SkBits2Float(0xc10d7f99), SkBits2Float(0x4280c134), SkBits2Float(0x4191fa9e), SkBits2Float(0x4279782f), SkBits2Float(0x4216adb8), SkBits2Float(0x423acdfc));
7358 path.lineTo(SkBits2Float(0x4250704d), SkBits2Float(0x428134e0));
7359 path.close();
7360
7361 SkPath path2(path);
7362 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7363 }
7364 // op end success 1
7365
battleOp267(skiatest::Reporter * reporter,const char * filename)7366 static void battleOp267(skiatest::Reporter* reporter, const char* filename) {
7367 SkPath path;
7368 path.setFillType((SkPathFillType) 0);
7369 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7370 path.cubicTo(SkBits2Float(0x42003b3a), SkBits2Float(0xc2a60000), SkBits2Float(0x4274ff8d), SkBits2Float(0xc28113a0), SkBits2Float(0x4295fac2), SkBits2Float(0xc20e4c24));
7371 path.cubicTo(SkBits2Float(0x42b175be), SkBits2Float(0xc0d38840), SkBits2Float(0x42a91fa3), SkBits2Float(0x41dd6a3d), SkBits2Float(0x42809081), SkBits2Float(0x4252054f));
7372 path.lineTo(SkBits2Float(0x4239e059), SkBits2Float(0x4217d27c));
7373 path.cubicTo(SkBits2Float(0x4274841b), SkBits2Float(0x41a00f1c), SkBits2Float(0x428048c8), SkBits2Float(0xc098ea38), SkBits2Float(0x4258d681), SkBits2Float(0xc1cdbb32));
7374 path.cubicTo(SkBits2Float(0x42311b71), SkBits2Float(0xc23a9deb), SkBits2Float(0x41b96511), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
7375 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7376 path.close();
7377
7378 SkPath path1(path);
7379 path.reset();
7380 path.setFillType((SkPathFillType) 0);
7381 path.moveTo(SkBits2Float(0x42809082), SkBits2Float(0x4252054e));
7382 path.cubicTo(SkBits2Float(0x4271521d), SkBits2Float(0x42655feb), SkBits2Float(0x425f60c7), SkBits2Float(0x4276e1ca), SkBits2Float(0x424ba43f), SkBits2Float(0x42831ae1));
7383 path.lineTo(SkBits2Float(0x421335f7), SkBits2Float(0x423d8ca7));
7384 path.cubicTo(SkBits2Float(0x42217a65), SkBits2Float(0x4232780c), SkBits2Float(0x422e72e3), SkBits2Float(0x4225d023), SkBits2Float(0x4239e05a), SkBits2Float(0x4217d27c));
7385 path.lineTo(SkBits2Float(0x42809082), SkBits2Float(0x4252054e));
7386 path.close();
7387
7388 SkPath path2(path);
7389 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7390 }
7391 // op end success 1
7392
battleOp268(skiatest::Reporter * reporter,const char * filename)7393 static void battleOp268(skiatest::Reporter* reporter, const char* filename) {
7394 SkPath path;
7395 path.setFillType((SkPathFillType) 1);
7396 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
7397 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7398 path.cubicTo(SkBits2Float(0x42003b3a), SkBits2Float(0xc2a60000), SkBits2Float(0x4274ff8d), SkBits2Float(0xc28113a0), SkBits2Float(0x4295fac2), SkBits2Float(0xc20e4c24));
7399 path.cubicTo(SkBits2Float(0x42b175be), SkBits2Float(0xc0d38840), SkBits2Float(0x42a91fa3), SkBits2Float(0x41dd6a3d), SkBits2Float(0x42809082), SkBits2Float(0x4252054e));
7400 path.cubicTo(SkBits2Float(0x4271521d), SkBits2Float(0x42655feb), SkBits2Float(0x425f60c7), SkBits2Float(0x4276e1ca), SkBits2Float(0x424ba43f), SkBits2Float(0x42831ae1));
7401 path.lineTo(SkBits2Float(0x421335f7), SkBits2Float(0x423d8ca7));
7402 path.cubicTo(SkBits2Float(0x42217a65), SkBits2Float(0x4232780c), SkBits2Float(0x422e72e3), SkBits2Float(0x4225d023), SkBits2Float(0x4239e059), SkBits2Float(0x4217d27c));
7403 path.cubicTo(SkBits2Float(0x4274841b), SkBits2Float(0x41a00f1c), SkBits2Float(0x428048c8), SkBits2Float(0xc098ea38), SkBits2Float(0x4258d681), SkBits2Float(0xc1cdbb32));
7404 path.cubicTo(SkBits2Float(0x42311b71), SkBits2Float(0xc23a9deb), SkBits2Float(0x41b96511), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000));
7405 path.close();
7406
7407 SkPath path1(path);
7408 path.reset();
7409 path.setFillType((SkPathFillType) 0);
7410 path.moveTo(SkBits2Float(0x424ba440), SkBits2Float(0x42831ae2));
7411 path.cubicTo(SkBits2Float(0x41bb72ba), SkBits2Float(0x42adc9b8), SkBits2Float(0xc16714ca), SkBits2Float(0x42b1a998), SkBits2Float(0xc22fd30d), SkBits2Float(0x428ccf5c));
7412 path.cubicTo(SkBits2Float(0xc292f074), SkBits2Float(0x424fea41), SkBits2Float(0xc2b0b757), SkBits2Float(0x4188cdbd), SkBits2Float(0xc2a27f7d), SkBits2Float(0xc187abb1));
7413 path.cubicTo(SkBits2Float(0xc29447a3), SkBits2Float(0xc24c1290), SkBits2Float(0xc23a2b5e), SkBits2Float(0xc29a0e93), SkBits2Float(0xc141f42b), SkBits2Float(0xc2a43853));
7414 path.lineTo(SkBits2Float(0xc10c3538), SkBits2Float(0xc26d6d31));
7415 path.cubicTo(SkBits2Float(0xc2069491), SkBits2Float(0xc25ebb9d), SkBits2Float(0xc2566164), SkBits2Float(0xc21385b2), SkBits2Float(0xc26aefd1), SkBits2Float(0xc1442672));
7416 path.cubicTo(SkBits2Float(0xc27f7e3e), SkBits2Float(0x4145c9dc), SkBits2Float(0xc2547130), SkBits2Float(0x42164ccc), SkBits2Float(0xc1fe3427), SkBits2Float(0x424b94a6));
7417 path.cubicTo(SkBits2Float(0xc1270bd9), SkBits2Float(0x42806e40), SkBits2Float(0x41878138), SkBits2Float(0x427b4278), SkBits2Float(0x421335f8), SkBits2Float(0x423d8ca8));
7418 path.lineTo(SkBits2Float(0x424ba440), SkBits2Float(0x42831ae2));
7419 path.close();
7420
7421 SkPath path2(path);
7422 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7423 }
7424 // op end success 1
7425
battleOp269(skiatest::Reporter * reporter,const char * filename)7426 static void battleOp269(skiatest::Reporter* reporter, const char* filename) {
7427 SkPath path;
7428 path.setFillType((SkPathFillType) 0);
7429 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7430 path.cubicTo(SkBits2Float(0x42011047), SkBits2Float(0xc2a60000), SkBits2Float(0x42766e56), SkBits2Float(0xc28099ef), SkBits2Float(0x42967824), SkBits2Float(0xc20c36c8));
7431 path.cubicTo(SkBits2Float(0x42b1b91c), SkBits2Float(0xc0b9cd9b), SkBits2Float(0x42a89b7a), SkBits2Float(0x41e5804f), SkBits2Float(0x427e310b), SkBits2Float(0x42559106));
7432 path.lineTo(SkBits2Float(0x4237c0bf), SkBits2Float(0x421a62ac));
7433 path.cubicTo(SkBits2Float(0x4273c506), SkBits2Float(0x41a5e791), SkBits2Float(0x4280797a), SkBits2Float(0xc08650bf), SkBits2Float(0x42598bc5), SkBits2Float(0xc1cab811));
7434 path.cubicTo(SkBits2Float(0x42322494), SkBits2Float(0xc239edfa), SkBits2Float(0x41ba9913), SkBits2Float(0xc2700002), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
7435 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7436 path.close();
7437
7438 SkPath path1(path);
7439 path.reset();
7440 path.setFillType((SkPathFillType) 0);
7441 path.moveTo(SkBits2Float(0x427e3109), SkBits2Float(0x42559108));
7442 path.cubicTo(SkBits2Float(0x426e0477), SkBits2Float(0x4268d13b), SkBits2Float(0x425bb575), SkBits2Float(0x427a2b1d), SkBits2Float(0x42479e2a), SkBits2Float(0x4284a4a0));
7443 path.lineTo(SkBits2Float(0x42104d52), SkBits2Float(0x423fc5ea));
7444 path.cubicTo(SkBits2Float(0x421ed35e), SkBits2Float(0x4234d83a), SkBits2Float(0x422c0f91), SkBits2Float(0x42284d3a), SkBits2Float(0x4237c0bf), SkBits2Float(0x421a62ad));
7445 path.lineTo(SkBits2Float(0x427e3109), SkBits2Float(0x42559108));
7446 path.close();
7447
7448 SkPath path2(path);
7449 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7450 }
7451 // op end success 1
7452
battleOp270(skiatest::Reporter * reporter,const char * filename)7453 static void battleOp270(skiatest::Reporter* reporter, const char* filename) {
7454 SkPath path;
7455 path.setFillType((SkPathFillType) 1);
7456 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc2700000));
7457 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7458 path.cubicTo(SkBits2Float(0x42011047), SkBits2Float(0xc2a60000), SkBits2Float(0x42766e56), SkBits2Float(0xc28099ef), SkBits2Float(0x42967824), SkBits2Float(0xc20c36c8));
7459 path.cubicTo(SkBits2Float(0x42b1b91c), SkBits2Float(0xc0b9cd9b), SkBits2Float(0x42a89b7a), SkBits2Float(0x41e5804f), SkBits2Float(0x427e310b), SkBits2Float(0x42559106));
7460 path.lineTo(SkBits2Float(0x4237c0bf), SkBits2Float(0x421a62ad));
7461
7462 SkPath path1(path);
7463 path.reset();
7464 path.setFillType((SkPathFillType) 0);
7465 path.moveTo(SkBits2Float(0x42479e29), SkBits2Float(0x4284a4a0));
7466 path.cubicTo(SkBits2Float(0x41af5d68), SkBits2Float(0x42aec1b4), SkBits2Float(0xc1822698), SkBits2Float(0x42b135a9), SkBits2Float(0xc2362f3e), SkBits2Float(0x428ac623));
7467 path.cubicTo(SkBits2Float(0xc295a599), SkBits2Float(0x4248ad36), SkBits2Float(0xc2b1c6ab), SkBits2Float(0x416a48a9), SkBits2Float(0xc2a165f3), SkBits2Float(0xc19b42cf));
7468 path.cubicTo(SkBits2Float(0xc291053c), SkBits2Float(0xc255d4f6), SkBits2Float(0xc22f520a), SkBits2Float(0xc29d68ba), SkBits2Float(0xc110422a), SkBits2Float(0xc2a50486));
7469 path.lineTo(SkBits2Float(0xc0d09136), SkBits2Float(0xc26e946c));
7470 path.cubicTo(SkBits2Float(0xc1fd79b9), SkBits2Float(0xc2639452), SkBits2Float(0xc251ab0b), SkBits2Float(0xc21a93c1), SkBits2Float(0xc26958c8), SkBits2Float(0xc1607927));
7471 path.cubicTo(SkBits2Float(0xc2808342), SkBits2Float(0x41295cae), SkBits2Float(0xc2585b55), SkBits2Float(0x42111142), SkBits2Float(0xc203b318), SkBits2Float(0x4248a313));
7472 path.cubicTo(SkBits2Float(0xc13c2b63), SkBits2Float(0x42801a73), SkBits2Float(0x417d8a30), SkBits2Float(0x427ca903), SkBits2Float(0x42104d56), SkBits2Float(0x423fc5e8));
7473 path.lineTo(SkBits2Float(0x42479e29), SkBits2Float(0x4284a4a0));
7474 path.close();
7475
7476 SkPath path2(path);
7477 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7478 }
7479 // op end success 1
7480
battleOp271(skiatest::Reporter * reporter,const char * filename)7481 static void battleOp271(skiatest::Reporter* reporter, const char* filename) {
7482 SkPath path;
7483 path.setFillType((SkPathFillType) 0);
7484 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7485 path.cubicTo(SkBits2Float(0x4201b43a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4277880a), SkBits2Float(0xc2803bc7), SkBits2Float(0x4296d747), SkBits2Float(0xc20a9b85));
7486 path.cubicTo(SkBits2Float(0x42b1ea89), SkBits2Float(0xc0a5fbe3), SkBits2Float(0x42a831cc), SkBits2Float(0x41ebb52f), SkBits2Float(0x427be65b), SkBits2Float(0x425843c9));
7487 path.lineTo(SkBits2Float(0x423618a6), SkBits2Float(0x421c5604));
7488 path.cubicTo(SkBits2Float(0x42732c40), SkBits2Float(0x41aa6424), SkBits2Float(0x42809d37), SkBits2Float(0xc06ffa1c), SkBits2Float(0x425a1555), SkBits2Float(0xc1c8657d));
7489 path.cubicTo(SkBits2Float(0x4232f03c), SkBits2Float(0xc23965db), SkBits2Float(0x41bb8620), SkBits2Float(0xc2700002), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000));
7490 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7491 path.close();
7492
7493 SkPath path1(path);
7494 path.reset();
7495 path.setFillType((SkPathFillType) 0);
7496 path.moveTo(SkBits2Float(0x427be65e), SkBits2Float(0x425843c9));
7497 path.cubicTo(SkBits2Float(0x426b71bd), SkBits2Float(0x426b6e8c), SkBits2Float(0x4258dad9), SkBits2Float(0x427ca87a), SkBits2Float(0x42447e14), SkBits2Float(0x4285cdfb));
7498 path.lineTo(SkBits2Float(0x420e0af4), SkBits2Float(0x424173d3));
7499 path.cubicTo(SkBits2Float(0x421cc338), SkBits2Float(0x4236a4f9), SkBits2Float(0x422a3361), SkBits2Float(0x422a3113), SkBits2Float(0x423618a6), SkBits2Float(0x421c5605));
7500 path.lineTo(SkBits2Float(0x427be65e), SkBits2Float(0x425843c9));
7501 path.close();
7502
7503 SkPath path2(path);
7504 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7505 }
7506 // op end success 1
7507
battleOp272(skiatest::Reporter * reporter,const char * filename)7508 static void battleOp272(skiatest::Reporter* reporter, const char* filename) {
7509 SkPath path;
7510 path.setFillType((SkPathFillType) 1);
7511 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7512 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7513 path.cubicTo(SkBits2Float(0x4201b43a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4277880a), SkBits2Float(0xc2803bc7), SkBits2Float(0x4296d747), SkBits2Float(0xc20a9b85));
7514 path.cubicTo(SkBits2Float(0x42b1ea89), SkBits2Float(0xc0a5fbe3), SkBits2Float(0x42a831cc), SkBits2Float(0x41ebb52f), SkBits2Float(0x427be65b), SkBits2Float(0x425843c9));
7515 path.lineTo(SkBits2Float(0x427be65e), SkBits2Float(0x425843c9));
7516 path.cubicTo(SkBits2Float(0x426b71bd), SkBits2Float(0x426b6e8c), SkBits2Float(0x4258dad9), SkBits2Float(0x427ca87a), SkBits2Float(0x42447e14), SkBits2Float(0x4285cdfb));
7517 path.lineTo(SkBits2Float(0x420e0af4), SkBits2Float(0x424173d3));
7518 path.cubicTo(SkBits2Float(0x421cc338), SkBits2Float(0x4236a4f9), SkBits2Float(0x422a3361), SkBits2Float(0x422a3113), SkBits2Float(0x423618a6), SkBits2Float(0x421c5605));
7519 path.lineTo(SkBits2Float(0x423618a6), SkBits2Float(0x421c5604));
7520 path.cubicTo(SkBits2Float(0x42732c40), SkBits2Float(0x41aa6424), SkBits2Float(0x42809d37), SkBits2Float(0xc06ffa1c), SkBits2Float(0x425a1555), SkBits2Float(0xc1c8657d));
7521 path.cubicTo(SkBits2Float(0x4232f03c), SkBits2Float(0xc23965db), SkBits2Float(0x41bb8620), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7522 path.close();
7523
7524 SkPath path1(path);
7525 path.reset();
7526 path.setFillType((SkPathFillType) 0);
7527 path.moveTo(SkBits2Float(0x42447e16), SkBits2Float(0x4285cdfb));
7528 path.cubicTo(SkBits2Float(0x41a605d7), SkBits2Float(0x42af776a), SkBits2Float(0xc18d5e26), SkBits2Float(0x42b0cfa2), SkBits2Float(0xc23b02ad), SkBits2Float(0x428928e1));
7529 path.cubicTo(SkBits2Float(0xc297ab24), SkBits2Float(0x42430442), SkBits2Float(0xc2b27fa9), SkBits2Float(0x414bdf0d), SkBits2Float(0xc2a073c8), SkBits2Float(0xc1aa3a13));
7530 path.cubicTo(SkBits2Float(0xc28e67e7), SkBits2Float(0xc25d31d4), SkBits2Float(0xc226d0a4), SkBits2Float(0xc29fdb7e), SkBits2Float(0xc0d3d11a), SkBits2Float(0xc2a578a5));
7531 path.lineTo(SkBits2Float(0xc0991eb2), SkBits2Float(0xc26f3c4f));
7532 path.cubicTo(SkBits2Float(0xc1f12d9c), SkBits2Float(0xc2671e82), SkBits2Float(0xc24de350), SkBits2Float(0xc21fe656), SkBits2Float(0xc267faa7), SkBits2Float(0xc1761c74));
7533 path.cubicTo(SkBits2Float(0xc28108ff), SkBits2Float(0x4113607a), SkBits2Float(0xc25b4798), SkBits2Float(0x420cf9d1), SkBits2Float(0xc207302c), SkBits2Float(0x42464d9a));
7534 path.cubicTo(SkBits2Float(0xc14c6303), SkBits2Float(0x427fa162), SkBits2Float(0x4170087f), SkBits2Float(0x427dafb7), SkBits2Float(0x420e0af6), SkBits2Float(0x424173d2));
7535 path.lineTo(SkBits2Float(0x42447e16), SkBits2Float(0x4285cdfb));
7536 path.close();
7537
7538 SkPath path2(path);
7539 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7540 }
7541 // op end success 1
7542
battleOp273(skiatest::Reporter * reporter,const char * filename)7543 static void battleOp273(skiatest::Reporter* reporter, const char* filename) {
7544 SkPath path;
7545 path.setFillType((SkPathFillType) 0);
7546 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7547 path.cubicTo(SkBits2Float(0x42023f77), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427876e4), SkBits2Float(0xc27fd6f4), SkBits2Float(0x42972728), SkBits2Float(0xc2093dbb));
7548 path.cubicTo(SkBits2Float(0x42b212de), SkBits2Float(0xc0952410), SkBits2Float(0x42a7d55b), SkBits2Float(0x41f0f791), SkBits2Float(0x4279eebf), SkBits2Float(0x425a890b));
7549 path.lineTo(SkBits2Float(0x4234ac95), SkBits2Float(0x421dfa35));
7550 path.cubicTo(SkBits2Float(0x4272a697), SkBits2Float(0x41ae3171), SkBits2Float(0x4280ba5e), SkBits2Float(0xc057a00f), SkBits2Float(0x425a88d0), SkBits2Float(0xc1c66bc2));
7551 path.cubicTo(SkBits2Float(0x42339ce5), SkBits2Float(0xc238f1c1), SkBits2Float(0x41bc4f6b), SkBits2Float(0xc2700002), SkBits2Float(0xb630015d), SkBits2Float(0xc2700000));
7552 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7553 path.close();
7554
7555 SkPath path1(path);
7556 path.reset();
7557 path.setFillType((SkPathFillType) 0);
7558 path.moveTo(SkBits2Float(0x4279eebd), SkBits2Float(0x425a890e));
7559 path.cubicTo(SkBits2Float(0x42693cf3), SkBits2Float(0x426da0dc), SkBits2Float(0x42566929), SkBits2Float(0x427ebed8), SkBits2Float(0x4241d1ac), SkBits2Float(0x4286c6a2));
7560 path.lineTo(SkBits2Float(0x420c1c33), SkBits2Float(0x4242db53));
7561 path.cubicTo(SkBits2Float(0x421afee9), SkBits2Float(0x42382742), SkBits2Float(0x42289b18), SkBits2Float(0x422bc78f), SkBits2Float(0x4234ac94), SkBits2Float(0x421dfa34));
7562 path.lineTo(SkBits2Float(0x4279eebd), SkBits2Float(0x425a890e));
7563 path.close();
7564
7565 SkPath path2(path);
7566 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7567 }
7568 // op end success 1
7569
battleOp274(skiatest::Reporter * reporter,const char * filename)7570 static void battleOp274(skiatest::Reporter* reporter, const char* filename) {
7571 SkPath path;
7572 path.setFillType((SkPathFillType) 1);
7573 path.moveTo(SkBits2Float(0xb630015d), SkBits2Float(0xc2700000));
7574 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7575 path.cubicTo(SkBits2Float(0x42023f77), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427876e4), SkBits2Float(0xc27fd6f4), SkBits2Float(0x42972728), SkBits2Float(0xc2093dbb));
7576 path.cubicTo(SkBits2Float(0x42b212de), SkBits2Float(0xc0952410), SkBits2Float(0x42a7d55b), SkBits2Float(0x41f0f791), SkBits2Float(0x4279eebf), SkBits2Float(0x425a890b));
7577 path.lineTo(SkBits2Float(0x4234ac95), SkBits2Float(0x421dfa35));
7578 path.cubicTo(SkBits2Float(0x4272a697), SkBits2Float(0x41ae3171), SkBits2Float(0x4280ba5e), SkBits2Float(0xc057a00f), SkBits2Float(0x425a88d0), SkBits2Float(0xc1c66bc2));
7579 path.cubicTo(SkBits2Float(0x42339ce5), SkBits2Float(0xc238f1c1), SkBits2Float(0x41bc4f6b), SkBits2Float(0xc2700002), SkBits2Float(0xb630015d), SkBits2Float(0xc2700000));
7580 path.close();
7581
7582 SkPath path1(path);
7583 path.reset();
7584 path.setFillType((SkPathFillType) 0);
7585 path.moveTo(SkBits2Float(0x4241d1ad), SkBits2Float(0x4286c6a2));
7586 path.cubicTo(SkBits2Float(0x419e0f8e), SkBits2Float(0x42b00b7b), SkBits2Float(0xc196dfc4), SkBits2Float(0x42b07042), SkBits2Float(0xc23f0fa7), SkBits2Float(0x4287c1be));
7587 path.cubicTo(SkBits2Float(0xc29957b6), SkBits2Float(0x423e2672), SkBits2Float(0xc2b30c7a), SkBits2Float(0x4131f351), SkBits2Float(0xc29f94d8), SkBits2Float(0xc1b6db1d));
7588 path.cubicTo(SkBits2Float(0xc28c1d38), SkBits2Float(0xc26357ee), SkBits2Float(0xc21f7d48), SkBits2Float(0xc2a1d87d), SkBits2Float(0xc09294c7), SkBits2Float(0xc2a5bf3c));
7589 path.lineTo(SkBits2Float(0xc053ec94), SkBits2Float(0xc26fa25d));
7590 path.cubicTo(SkBits2Float(0xc1e69644), SkBits2Float(0xc269fe64), SkBits2Float(0xc24a931a), SkBits2Float(0xc224583b), SkBits2Float(0xc266b858), SkBits2Float(0xc1842f59));
7591 path.cubicTo(SkBits2Float(0xc2816ecb), SkBits2Float(0x4100a388), SkBits2Float(0xc25db33b), SkBits2Float(0x42097539), SkBits2Float(0xc20a1dd2), SkBits2Float(0x4244465c));
7592 path.cubicTo(SkBits2Float(0xc15a2194), SkBits2Float(0x427f177f), SkBits2Float(0x41648588), SkBits2Float(0x427e85cc), SkBits2Float(0x420c1c35), SkBits2Float(0x4242db52));
7593 path.lineTo(SkBits2Float(0x4241d1ad), SkBits2Float(0x4286c6a2));
7594 path.close();
7595
7596 SkPath path2(path);
7597 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7598 }
7599 // op end success 1
7600
battleOp275(skiatest::Reporter * reporter,const char * filename)7601 static void battleOp275(skiatest::Reporter* reporter, const char* filename) {
7602 SkPath path;
7603 path.setFillType((SkPathFillType) 0);
7604 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7605 path.cubicTo(SkBits2Float(0x4202aab9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42792ea4), SkBits2Float(0xc27f5acc), SkBits2Float(0x4297641b), SkBits2Float(0xc2082fee));
7606 path.cubicTo(SkBits2Float(0x42b230e5), SkBits2Float(0xc0882884), SkBits2Float(0x42a78c73), SkBits2Float(0x41f502e3), SkBits2Float(0x4278676f), SkBits2Float(0x425c4571));
7607 path.lineTo(SkBits2Float(0x423391b8), SkBits2Float(0x421f3b73));
7608 path.cubicTo(SkBits2Float(0x42723d33), SkBits2Float(0x41b11ddb), SkBits2Float(0x4280d014), SkBits2Float(0xc044db05), SkBits2Float(0x425ae0f2), SkBits2Float(0xc1c4e5b3));
7609 path.cubicTo(SkBits2Float(0x423421be), SkBits2Float(0xc2389802), SkBits2Float(0x41bcea83), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
7610 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7611 path.close();
7612
7613 SkPath path1(path);
7614 path.reset();
7615 path.setFillType((SkPathFillType) 0);
7616 path.moveTo(SkBits2Float(0x42786771), SkBits2Float(0x425c4570));
7617 path.cubicTo(SkBits2Float(0x42678692), SkBits2Float(0x426f4e2b), SkBits2Float(0x425483f6), SkBits2Float(0x42802b0f), SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc));
7618 path.lineTo(SkBits2Float(0x420a9ce1), SkBits2Float(0x4243ecb9));
7619 path.cubicTo(SkBits2Float(0x4219a02a), SkBits2Float(0x42394dac), SkBits2Float(0x42275e32), SkBits2Float(0x422cfde6), SkBits2Float(0x423391b8), SkBits2Float(0x421f3b72));
7620 path.lineTo(SkBits2Float(0x42786771), SkBits2Float(0x425c4570));
7621 path.close();
7622
7623 SkPath path2(path);
7624 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7625 }
7626 // op end success 1
7627
battleOp276(skiatest::Reporter * reporter,const char * filename)7628 static void battleOp276(skiatest::Reporter* reporter, const char* filename) {
7629 SkPath path;
7630 path.setFillType((SkPathFillType) 1);
7631 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
7632 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7633 path.cubicTo(SkBits2Float(0x4202aab9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42792ea4), SkBits2Float(0xc27f5acc), SkBits2Float(0x4297641b), SkBits2Float(0xc2082fee));
7634 path.cubicTo(SkBits2Float(0x42b230e5), SkBits2Float(0xc0882884), SkBits2Float(0x42a78c73), SkBits2Float(0x41f502e3), SkBits2Float(0x4278676f), SkBits2Float(0x425c4571));
7635 path.cubicTo(SkBits2Float(0x42678690), SkBits2Float(0x426f4e2b), SkBits2Float(0x425483f5), SkBits2Float(0x42802b0f), SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc));
7636 path.lineTo(SkBits2Float(0x420a9ce1), SkBits2Float(0x4243ecb9));
7637 path.cubicTo(SkBits2Float(0x4219a02a), SkBits2Float(0x42394dac), SkBits2Float(0x42275e32), SkBits2Float(0x422cfde7), SkBits2Float(0x423391b8), SkBits2Float(0x421f3b73));
7638 path.lineTo(SkBits2Float(0x423391b8), SkBits2Float(0x421f3b72));
7639 path.cubicTo(SkBits2Float(0x42723d33), SkBits2Float(0x41b11dd9), SkBits2Float(0x4280d014), SkBits2Float(0xc044db09), SkBits2Float(0x425ae0f2), SkBits2Float(0xc1c4e5b3));
7640 path.cubicTo(SkBits2Float(0x423421be), SkBits2Float(0xc2389802), SkBits2Float(0x41bcea83), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000));
7641 path.close();
7642
7643 SkPath path1(path);
7644 path.reset();
7645 path.setFillType((SkPathFillType) 0);
7646 path.moveTo(SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc));
7647 path.cubicTo(SkBits2Float(0x4197e908), SkBits2Float(0x42b0799e), SkBits2Float(0xc19e2f01), SkBits2Float(0x42b0215b), SkBits2Float(0xc24226b0), SkBits2Float(0x4286a80b));
7648 path.cubicTo(SkBits2Float(0xc29a9aef), SkBits2Float(0x423a5d79), SkBits2Float(0xc2b36ebb), SkBits2Float(0x411dee4a), SkBits2Float(0xc29ede64), SkBits2Float(0xc1c087c1));
7649 path.cubicTo(SkBits2Float(0xc28a4e0d), SkBits2Float(0xc2680353), SkBits2Float(0xc219c8f7), SkBits2Float(0xc2a351d0), SkBits2Float(0xc0409740), SkBits2Float(0xc2a5e40e));
7650 path.lineTo(SkBits2Float(0xc00b391c), SkBits2Float(0xc26fd79b));
7651 path.cubicTo(SkBits2Float(0xc1de5701), SkBits2Float(0xc26c1feb), SkBits2Float(0xc247f576), SkBits2Float(0xc227b85e), SkBits2Float(0xc265b08d), SkBits2Float(0xc18b2dac));
7652 path.cubicTo(SkBits2Float(0xc281b5d1), SkBits2Float(0x40e45588), SkBits2Float(0xc25f8687), SkBits2Float(0x4206b8c8), SkBits2Float(0xc20c59a1), SkBits2Float(0x4242af19));
7653 path.cubicTo(SkBits2Float(0xc164b2eb), SkBits2Float(0x427ea56a), SkBits2Float(0x415ba119), SkBits2Float(0x427f2508), SkBits2Float(0x420a9ce0), SkBits2Float(0x4243ecba));
7654 path.lineTo(SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc));
7655 path.close();
7656
7657 SkPath path2(path);
7658 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7659 }
7660 // op end success 1
7661
battleOp277(skiatest::Reporter * reporter,const char * filename)7662 static void battleOp277(skiatest::Reporter* reporter, const char* filename) {
7663 SkPath path;
7664 path.setFillType((SkPathFillType) 0);
7665 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7666 path.cubicTo(SkBits2Float(0x4202f62b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4279afc7), SkBits2Float(0xc27f0340), SkBits2Float(0x42978eaf), SkBits2Float(0xc20771fd));
7667 path.cubicTo(SkBits2Float(0x42b2457b), SkBits2Float(0xc07e0b91), SkBits2Float(0x42a7584a), SkBits2Float(0x41f7da1e), SkBits2Float(0x42775276), SkBits2Float(0x425d7c3f));
7668 path.lineTo(SkBits2Float(0x4232c97e), SkBits2Float(0x42201c22));
7669 path.cubicTo(SkBits2Float(0x4271f1c7), SkBits2Float(0x41b32b8d), SkBits2Float(0x4280def3), SkBits2Float(0xc037a5cf), SkBits2Float(0x425b1e7c), SkBits2Float(0xc1c3d316));
7670 path.cubicTo(SkBits2Float(0x42347f10), SkBits2Float(0xc23858b9), SkBits2Float(0x41bd578b), SkBits2Float(0xc26fffff), SkBits2Float(0xb7240057), SkBits2Float(0xc26fffff));
7671 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7672 path.close();
7673
7674 SkPath path1(path);
7675 path.reset();
7676 path.setFillType((SkPathFillType) 0);
7677 path.moveTo(SkBits2Float(0x42775277), SkBits2Float(0x425d7c41));
7678 path.cubicTo(SkBits2Float(0x4266507b), SkBits2Float(0x42707a20), SkBits2Float(0x42532cff), SkBits2Float(0x4280b928), SkBits2Float(0x423e48db), SkBits2Float(0x42880779));
7679 path.lineTo(SkBits2Float(0x42098e1c), SkBits2Float(0x4244ab32));
7680 path.cubicTo(SkBits2Float(0x4218a83e), SkBits2Float(0x423a1b21), SkBits2Float(0x42267e0b), SkBits2Float(0x422dd6be), SkBits2Float(0x4232c97e), SkBits2Float(0x42201c22));
7681 path.lineTo(SkBits2Float(0x42775277), SkBits2Float(0x425d7c41));
7682 path.close();
7683
7684 SkPath path2(path);
7685 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7686 }
7687 // op end success 1
7688
battleOp278(skiatest::Reporter * reporter,const char * filename)7689 static void battleOp278(skiatest::Reporter* reporter, const char* filename) {
7690 SkPath path;
7691 path.setFillType((SkPathFillType) 1);
7692 path.moveTo(SkBits2Float(0xb7240057), SkBits2Float(0xc26fffff));
7693 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7694 path.cubicTo(SkBits2Float(0x4202f62b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4279afc7), SkBits2Float(0xc27f0340), SkBits2Float(0x42978eaf), SkBits2Float(0xc20771fd));
7695 path.cubicTo(SkBits2Float(0x42b2457b), SkBits2Float(0xc07e0b91), SkBits2Float(0x42a7584a), SkBits2Float(0x41f7da1e), SkBits2Float(0x42775276), SkBits2Float(0x425d7c3f));
7696 path.lineTo(SkBits2Float(0x42775277), SkBits2Float(0x425d7c41));
7697 path.cubicTo(SkBits2Float(0x4266507b), SkBits2Float(0x42707a20), SkBits2Float(0x42532cff), SkBits2Float(0x4280b928), SkBits2Float(0x423e48db), SkBits2Float(0x42880779));
7698 path.lineTo(SkBits2Float(0x42098e1c), SkBits2Float(0x4244ab32));
7699 path.cubicTo(SkBits2Float(0x4218a83e), SkBits2Float(0x423a1b21), SkBits2Float(0x42267e0b), SkBits2Float(0x422dd6be), SkBits2Float(0x4232c97e), SkBits2Float(0x42201c22));
7700 path.cubicTo(SkBits2Float(0x4271f1c7), SkBits2Float(0x41b32b8d), SkBits2Float(0x4280def3), SkBits2Float(0xc037a5cf), SkBits2Float(0x425b1e7c), SkBits2Float(0xc1c3d316));
7701 path.cubicTo(SkBits2Float(0x42347f10), SkBits2Float(0xc23858b9), SkBits2Float(0x41bd578b), SkBits2Float(0xc26fffff), SkBits2Float(0xb7240057), SkBits2Float(0xc26fffff));
7702 path.close();
7703
7704 SkPath path1(path);
7705 path.reset();
7706 path.setFillType((SkPathFillType) 0);
7707 path.moveTo(SkBits2Float(0x423e48db), SkBits2Float(0x4288077a));
7708 path.cubicTo(SkBits2Float(0x41939344), SkBits2Float(0x42b0c509), SkBits2Float(0xc1a3515b), SkBits2Float(0x42afe6ff), SkBits2Float(0xc2444efb), SkBits2Float(0x4285df44));
7709 path.cubicTo(SkBits2Float(0xc29b7aa2), SkBits2Float(0x4237af14), SkBits2Float(0xc2b3ae7d), SkBits2Float(0x410fd2d1), SkBits2Float(0xc29e5879), SkBits2Float(0xc1c74e5b));
7710 path.cubicTo(SkBits2Float(0xc2890275), SkBits2Float(0xc26b4310), SkBits2Float(0xc215bdd9), SkBits2Float(0xc2a45375), SkBits2Float(0xbff3abc7), SkBits2Float(0xc2a5f4d2));
7711 path.lineTo(SkBits2Float(0xbfb025f0), SkBits2Float(0xc26fefd6));
7712 path.cubicTo(SkBits2Float(0xc1d87e6f), SkBits2Float(0xc26d946b), SkBits2Float(0xc246160c), SkBits2Float(0xc22a11a0), SkBits2Float(0xc264eef0), SkBits2Float(0xc190139e));
7713 path.cubicTo(SkBits2Float(0xc281e3ea), SkBits2Float(0x40cff015), SkBits2Float(0xc260c9f8), SkBits2Float(0x4204c898), SkBits2Float(0xc20de8e2), SkBits2Float(0x42418cd3));
7714 path.cubicTo(SkBits2Float(0xc16c1f36), SkBits2Float(0x427e510e), SkBits2Float(0x41555c9e), SkBits2Float(0x427f9213), SkBits2Float(0x42098e1b), SkBits2Float(0x4244ab33));
7715 path.lineTo(SkBits2Float(0x423e48db), SkBits2Float(0x4288077a));
7716 path.close();
7717
7718 SkPath path2(path);
7719 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7720 }
7721 // op end success 1
7722
battleOp279(skiatest::Reporter * reporter,const char * filename)7723 static void battleOp279(skiatest::Reporter* reporter, const char* filename) {
7724 SkPath path;
7725 path.setFillType((SkPathFillType) 0);
7726 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7727 path.cubicTo(SkBits2Float(0x420331e6), SkBits2Float(0xc2a60000), SkBits2Float(0x427a15f4), SkBits2Float(0xc27ebdd3), SkBits2Float(0x4297b03a), SkBits2Float(0xc206db86));
7728 path.cubicTo(SkBits2Float(0x42b2557a), SkBits2Float(0xc06f9378), SkBits2Float(0x42a72e7e), SkBits2Float(0x41fa194a), SkBits2Float(0x4276762d), SkBits2Float(0x425e7148));
7729 path.lineTo(SkBits2Float(0x42322a40), SkBits2Float(0x4220cd43));
7730 path.cubicTo(SkBits2Float(0x4271b558), SkBits2Float(0x41b4cb56), SkBits2Float(0x4280ea83), SkBits2Float(0xc02d3004), SkBits2Float(0x425b4efa), SkBits2Float(0xc1c2f986));
7731 path.cubicTo(SkBits2Float(0x4234c8ee), SkBits2Float(0xc2382686), SkBits2Float(0x41bdadf1), SkBits2Float(0xc26fffff), SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000));
7732 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7733 path.close();
7734
7735 SkPath path1(path);
7736 path.reset();
7737 path.setFillType((SkPathFillType) 0);
7738 path.moveTo(SkBits2Float(0x4276762e), SkBits2Float(0x425e7147));
7739 path.cubicTo(SkBits2Float(0x42655a01), SkBits2Float(0x42716669), SkBits2Float(0x42521c84), SkBits2Float(0x428128fd), SkBits2Float(0x423d1f69), SkBits2Float(0x42886f05));
7740 path.lineTo(SkBits2Float(0x4208b718), SkBits2Float(0x424540e7));
7741 path.cubicTo(SkBits2Float(0x4217e344), SkBits2Float(0x423abccf), SkBits2Float(0x4225cbdd), SkBits2Float(0x422e818f), SkBits2Float(0x42322a41), SkBits2Float(0x4220cd43));
7742 path.lineTo(SkBits2Float(0x4276762e), SkBits2Float(0x425e7147));
7743 path.close();
7744
7745 SkPath path2(path);
7746 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7747 }
7748 // op end success 1
7749
battleOp280(skiatest::Reporter * reporter,const char * filename)7750 static void battleOp280(skiatest::Reporter* reporter, const char* filename) {
7751 SkPath path;
7752 path.setFillType((SkPathFillType) 1);
7753 path.moveTo(SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000));
7754 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7755 path.cubicTo(SkBits2Float(0x420331e6), SkBits2Float(0xc2a60000), SkBits2Float(0x427a15f4), SkBits2Float(0xc27ebdd3), SkBits2Float(0x4297b03a), SkBits2Float(0xc206db86));
7756 path.cubicTo(SkBits2Float(0x42b2557a), SkBits2Float(0xc06f937f), SkBits2Float(0x42a72e7e), SkBits2Float(0x41fa1948), SkBits2Float(0x4276762e), SkBits2Float(0x425e7147));
7757 path.lineTo(SkBits2Float(0x4276762d), SkBits2Float(0x425e7148));
7758 path.cubicTo(SkBits2Float(0x42655a00), SkBits2Float(0x4271666a), SkBits2Float(0x42521c84), SkBits2Float(0x428128fd), SkBits2Float(0x423d1f69), SkBits2Float(0x42886f05));
7759 path.lineTo(SkBits2Float(0x4208b718), SkBits2Float(0x424540e7));
7760 path.cubicTo(SkBits2Float(0x4217e344), SkBits2Float(0x423abccf), SkBits2Float(0x4225cbdd), SkBits2Float(0x422e818f), SkBits2Float(0x42322a41), SkBits2Float(0x4220cd43));
7761 path.lineTo(SkBits2Float(0x42322a40), SkBits2Float(0x4220cd43));
7762 path.cubicTo(SkBits2Float(0x4271b558), SkBits2Float(0x41b4cb56), SkBits2Float(0x4280ea83), SkBits2Float(0xc02d3004), SkBits2Float(0x425b4efa), SkBits2Float(0xc1c2f986));
7763 path.cubicTo(SkBits2Float(0x4234c8ee), SkBits2Float(0xc2382686), SkBits2Float(0x41bdadf1), SkBits2Float(0xc26fffff), SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000));
7764 path.close();
7765
7766 SkPath path1(path);
7767 path.reset();
7768 path.setFillType((SkPathFillType) 0);
7769 path.moveTo(SkBits2Float(0x423d1f69), SkBits2Float(0x42886f06));
7770 path.cubicTo(SkBits2Float(0x4190236c), SkBits2Float(0x42b0ff8c), SkBits2Float(0xc1a760b7), SkBits2Float(0x42afb726), SkBits2Float(0xc24601c7), SkBits2Float(0x42853ece));
7771 path.cubicTo(SkBits2Float(0xc29c2998), SkBits2Float(0x42358ced), SkBits2Float(0xc2b3ddd5), SkBits2Float(0x4104a433), SkBits2Float(0xc29deb35), SkBits2Float(0xc1cca70e));
7772 path.cubicTo(SkBits2Float(0xc287f895), SkBits2Float(0xc26dd020), SkBits2Float(0xc21285d2), SkBits2Float(0xc2a51ade), SkBits2Float(0xbf83a2cf), SkBits2Float(0xc2a5fcbd));
7773 path.lineTo(SkBits2Float(0xbf3e53cf), SkBits2Float(0xc26ffb48));
7774 path.cubicTo(SkBits2Float(0xc1d3d71b), SkBits2Float(0xc26eb4b2), SkBits2Float(0xc24495a7), SkBits2Float(0xc22be9b4), SkBits2Float(0xc26450f5), SkBits2Float(0xc193f109));
7775 path.cubicTo(SkBits2Float(0xc2820621), SkBits2Float(0x40bfc558), SkBits2Float(0xc261c6ea), SkBits2Float(0x42033dc6), SkBits2Float(0xc20f2333), SkBits2Float(0x4240a4d2));
7776 path.cubicTo(SkBits2Float(0xc171fde8), SkBits2Float(0x427e0bde), SkBits2Float(0x4150649d), SkBits2Float(0x427fe6ab), SkBits2Float(0x4208b71a), SkBits2Float(0x424540e8));
7777 path.lineTo(SkBits2Float(0x423d1f69), SkBits2Float(0x42886f06));
7778 path.close();
7779
7780 SkPath path2(path);
7781 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7782 }
7783 // op end success 1
7784
battleOp281(skiatest::Reporter * reporter,const char * filename)7785 static void battleOp281(skiatest::Reporter* reporter, const char* filename) {
7786 SkPath path;
7787 path.setFillType((SkPathFillType) 0);
7788 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7789 path.cubicTo(SkBits2Float(0x42035955), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a595d), SkBits2Float(0xc27e8fe6), SkBits2Float(0x4297c647), SkBits2Float(0xc206781b));
7790 path.cubicTo(SkBits2Float(0x42b25fdf), SkBits2Float(0xc0660504), SkBits2Float(0x42a712a2), SkBits2Float(0x41fb94c7), SkBits2Float(0x4275e43b), SkBits2Float(0x425f1290));
7791 path.lineTo(SkBits2Float(0x4231c0be), SkBits2Float(0x422141dc));
7792 path.cubicTo(SkBits2Float(0x42718d10), SkBits2Float(0x41b5ddaf), SkBits2Float(0x4280f208), SkBits2Float(0xc026476c), SkBits2Float(0x425b6edc), SkBits2Float(0xc1c269cb));
7793 path.cubicTo(SkBits2Float(0x4234f9ab), SkBits2Float(0xc2380553), SkBits2Float(0x41bde6f3), SkBits2Float(0xc26fffff), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
7794 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7795 path.close();
7796
7797 SkPath path1(path);
7798 path.reset();
7799 path.setFillType((SkPathFillType) 0);
7800 path.moveTo(SkBits2Float(0x4275e43b), SkBits2Float(0x425f1292));
7801 path.cubicTo(SkBits2Float(0x4264b6c3), SkBits2Float(0x427201df), SkBits2Float(0x4251681e), SkBits2Float(0x42817283), SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b309));
7802 path.lineTo(SkBits2Float(0x420828ca), SkBits2Float(0x4245a33c));
7803 path.cubicTo(SkBits2Float(0x421760db), SkBits2Float(0x423b2719), SkBits2Float(0x422555d9), SkBits2Float(0x422ef1ee), SkBits2Float(0x4231c0be), SkBits2Float(0x422141da));
7804 path.lineTo(SkBits2Float(0x4275e43b), SkBits2Float(0x425f1292));
7805 path.close();
7806
7807 SkPath path2(path);
7808 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7809 }
7810 // op end success 1
7811
battleOp282(skiatest::Reporter * reporter,const char * filename)7812 static void battleOp282(skiatest::Reporter* reporter, const char* filename) {
7813 SkPath path;
7814 path.setFillType((SkPathFillType) 1);
7815 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
7816 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7817 path.cubicTo(SkBits2Float(0x42035955), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a595d), SkBits2Float(0xc27e8fe6), SkBits2Float(0x4297c647), SkBits2Float(0xc206781b));
7818 path.cubicTo(SkBits2Float(0x42b25fdf), SkBits2Float(0xc0660504), SkBits2Float(0x42a712a2), SkBits2Float(0x41fb94c7), SkBits2Float(0x4275e43b), SkBits2Float(0x425f1290));
7819 path.lineTo(SkBits2Float(0x4275e43b), SkBits2Float(0x425f1292));
7820 path.cubicTo(SkBits2Float(0x4264b6c3), SkBits2Float(0x427201df), SkBits2Float(0x4251681e), SkBits2Float(0x42817283), SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b309));
7821 path.lineTo(SkBits2Float(0x420828ca), SkBits2Float(0x4245a33c));
7822 path.cubicTo(SkBits2Float(0x421760db), SkBits2Float(0x423b2719), SkBits2Float(0x422555d9), SkBits2Float(0x422ef1f0), SkBits2Float(0x4231c0be), SkBits2Float(0x422141dc));
7823 path.cubicTo(SkBits2Float(0x42718d10), SkBits2Float(0x41b5ddaf), SkBits2Float(0x4280f208), SkBits2Float(0xc026476c), SkBits2Float(0x425b6edc), SkBits2Float(0xc1c269cb));
7824 path.cubicTo(SkBits2Float(0x4234f9ab), SkBits2Float(0xc2380553), SkBits2Float(0x41bde6f3), SkBits2Float(0xc26fffff), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000));
7825 path.close();
7826
7827 SkPath path1(path);
7828 path.reset();
7829 path.setFillType((SkPathFillType) 0);
7830 path.moveTo(SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b30a));
7831 path.cubicTo(SkBits2Float(0x418dddd4), SkBits2Float(0x42b12599), SkBits2Float(0xc1aa0e7c), SkBits2Float(0x42af96c0), SkBits2Float(0xc2471fb7), SkBits2Float(0x4284d41e));
7832 path.cubicTo(SkBits2Float(0xc29c9c18), SkBits2Float(0x423422f8), SkBits2Float(0xc2b3fb95), SkBits2Float(0x40fa8096), SkBits2Float(0xc29da17e), SkBits2Float(0xc1d02ca0));
7833 path.cubicTo(SkBits2Float(0xc2874768), SkBits2Float(0xc26f7cb1), SkBits2Float(0xc2106396), SkBits2Float(0xc2a59c4c), SkBits2Float(0xbee6b152), SkBits2Float(0xc2a5ff5f));
7834 path.lineTo(SkBits2Float(0xbea6c49b), SkBits2Float(0xc26fff18));
7835 path.cubicTo(SkBits2Float(0xc1d0c156), SkBits2Float(0xc26f6fd8), SkBits2Float(0xc2439580), SkBits2Float(0xc22d1f86), SkBits2Float(0xc263e663), SkBits2Float(0xc1967cc0));
7836 path.cubicTo(SkBits2Float(0xc2821ba4), SkBits2Float(0x40b51622), SkBits2Float(0xc2626c73), SkBits2Float(0x4202381f), SkBits2Float(0xc20ff1e5), SkBits2Float(0x42400a93));
7837 path.cubicTo(SkBits2Float(0xc175dd55), SkBits2Float(0x427ddd08), SkBits2Float(0x414d1bd1), SkBits2Float(0x42800ed7), SkBits2Float(0x420828d0), SkBits2Float(0x4245a338));
7838 path.lineTo(SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b30a));
7839 path.close();
7840
7841 SkPath path2(path);
7842 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7843 }
7844 // op end success 1
7845
battleOp283(skiatest::Reporter * reporter,const char * filename)7846 static void battleOp283(skiatest::Reporter* reporter, const char* filename) {
7847 SkPath path;
7848 path.setFillType((SkPathFillType) 0);
7849 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7850 path.cubicTo(SkBits2Float(0x42036bf7), SkBits2Float(0xc2a60000), SkBits2Float(0x427a7934), SkBits2Float(0xc27e7a35), SkBits2Float(0x4297d0ad), SkBits2Float(0xc2064926));
7851 path.cubicTo(SkBits2Float(0x42b264c0), SkBits2Float(0xc061818a), SkBits2Float(0x42a70569), SkBits2Float(0x41fc47ee), SkBits2Float(0x42759f2d), SkBits2Float(0x425f5e99));
7852 path.lineTo(SkBits2Float(0x42318ed2), SkBits2Float(0x422178d2));
7853 path.cubicTo(SkBits2Float(0x427179f2), SkBits2Float(0x41b65f2f), SkBits2Float(0x4280f58f), SkBits2Float(0xc0230424), SkBits2Float(0x425b7de6), SkBits2Float(0xc1c225e6));
7854 path.cubicTo(SkBits2Float(0x423510af), SkBits2Float(0xc237f5a4), SkBits2Float(0x41be01e5), SkBits2Float(0xc26fffff), SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000));
7855 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7856 path.close();
7857
7858 SkPath path1(path);
7859 path.reset();
7860 path.setFillType((SkPathFillType) 0);
7861 path.moveTo(SkBits2Float(0x42759f2b), SkBits2Float(0x425f5e9b));
7862 path.cubicTo(SkBits2Float(0x42646988), SkBits2Float(0x42724b20), SkBits2Float(0x425112cb), SkBits2Float(0x42819524), SkBits2Float(0x423bfd7a), SkBits2Float(0x4288d30e));
7863 path.lineTo(SkBits2Float(0x4207e580), SkBits2Float(0x4245d187));
7864 path.cubicTo(SkBits2Float(0x4217232e), SkBits2Float(0x423b592c), SkBits2Float(0x42251e07), SkBits2Float(0x422f26e4), SkBits2Float(0x42318ed3), SkBits2Float(0x422178d2));
7865 path.lineTo(SkBits2Float(0x42759f2b), SkBits2Float(0x425f5e9b));
7866 path.close();
7867
7868 SkPath path2(path);
7869 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7870 }
7871 // op end success 1
7872
battleOp284(skiatest::Reporter * reporter,const char * filename)7873 static void battleOp284(skiatest::Reporter* reporter, const char* filename) {
7874 SkPath path;
7875 path.setFillType((SkPathFillType) 1);
7876 path.moveTo(SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000));
7877 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7878 path.cubicTo(SkBits2Float(0x42036bf7), SkBits2Float(0xc2a60000), SkBits2Float(0x427a7934), SkBits2Float(0xc27e7a35), SkBits2Float(0x4297d0ad), SkBits2Float(0xc2064926));
7879 path.cubicTo(SkBits2Float(0x42b264c0), SkBits2Float(0xc061818a), SkBits2Float(0x42a70569), SkBits2Float(0x41fc47ee), SkBits2Float(0x42759f2d), SkBits2Float(0x425f5e99));
7880 path.lineTo(SkBits2Float(0x42318ed3), SkBits2Float(0x422178d2));
7881
7882 SkPath path1(path);
7883 path.reset();
7884 path.setFillType((SkPathFillType) 0);
7885 path.moveTo(SkBits2Float(0x423bfd7a), SkBits2Float(0x4288d30e));
7886 path.cubicTo(SkBits2Float(0x418ccafd), SkBits2Float(0x42b13768), SkBits2Float(0xc1ab522b), SkBits2Float(0x42af873b), SkBits2Float(0xc247a66c), SkBits2Float(0x4284a188));
7887 path.cubicTo(SkBits2Float(0xc29cd1e0), SkBits2Float(0x423377ac), SkBits2Float(0xc2b40936), SkBits2Float(0x40f384e7), SkBits2Float(0xc29d7e41), SkBits2Float(0xc1d1d5b9));
7888 path.cubicTo(SkBits2Float(0xc286f34a), SkBits2Float(0xc2704657), SkBits2Float(0xc20f6108), SkBits2Float(0xc2a5d8cf), SkBits2Float(0xbe35f437), SkBits2Float(0xc2a5ffe6));
7889 path.lineTo(SkBits2Float(0xbe038989), SkBits2Float(0xc26fffdc));
7890 path.cubicTo(SkBits2Float(0xc1cf4b80), SkBits2Float(0xc26fc755), SkBits2Float(0xc2431bdf), SkBits2Float(0xc22db14d), SkBits2Float(0xc263b36c), SkBits2Float(0xc197b016));
7891 path.cubicTo(SkBits2Float(0xc282257d), SkBits2Float(0x40b009af), SkBits2Float(0xc262ba31), SkBits2Float(0x4201bc49), SkBits2Float(0xc2105343), SkBits2Float(0x423fc16f));
7892 path.cubicTo(SkBits2Float(0xc177b158), SkBits2Float(0x427dc695), SkBits2Float(0x414b8e67), SkBits2Float(0x42801bb6), SkBits2Float(0x4207e581), SkBits2Float(0x4245d188));
7893 path.lineTo(SkBits2Float(0x423bfd7a), SkBits2Float(0x4288d30e));
7894 path.close();
7895
7896 SkPath path2(path);
7897 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7898 }
7899 // op end success 1
7900
battleOp285(skiatest::Reporter * reporter,const char * filename)7901 static void battleOp285(skiatest::Reporter* reporter, const char* filename) {
7902 SkPath path;
7903 path.setFillType((SkPathFillType) 0);
7904 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7905 path.cubicTo(SkBits2Float(0x420374f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a8897), SkBits2Float(0xc27e6fb3), SkBits2Float(0x4297d5b1), SkBits2Float(0xc2063270));
7906 path.cubicTo(SkBits2Float(0x42b26718), SkBits2Float(0xc05f52ba), SkBits2Float(0x42a6ff00), SkBits2Float(0x41fc9e87), SkBits2Float(0x42757dbf), SkBits2Float(0x425f8353));
7907 path.lineTo(SkBits2Float(0x423176ab), SkBits2Float(0x4221935e));
7908 path.cubicTo(SkBits2Float(0x427170b0), SkBits2Float(0x41b69dc5), SkBits2Float(0x4280f73f), SkBits2Float(0xc0217057), SkBits2Float(0x425b8525), SkBits2Float(0xc1c20512));
7909 path.cubicTo(SkBits2Float(0x42351bcc), SkBits2Float(0xc237ee0d), SkBits2Float(0x41be0ee4), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
7910 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7911 path.close();
7912
7913 SkPath path1(path);
7914 path.reset();
7915 path.setFillType((SkPathFillType) 0);
7916 path.moveTo(SkBits2Float(0x42757dc1), SkBits2Float(0x425f8353));
7917 path.cubicTo(SkBits2Float(0x4264442b), SkBits2Float(0x42726e80), SkBits2Float(0x4250e985), SkBits2Float(0x4281a5dc), SkBits2Float(0x423bd072), SkBits2Float(0x4288e283));
7918 path.lineTo(SkBits2Float(0x4207c4f4), SkBits2Float(0x4245e7df));
7919 path.cubicTo(SkBits2Float(0x42170559), SkBits2Float(0x423b7158), SkBits2Float(0x42250305), SkBits2Float(0x422f4076), SkBits2Float(0x423176ac), SkBits2Float(0x4221935e));
7920 path.lineTo(SkBits2Float(0x42757dc1), SkBits2Float(0x425f8353));
7921 path.close();
7922
7923 SkPath path2(path);
7924 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7925 }
7926 // op end success 1
7927
battleOp286(skiatest::Reporter * reporter,const char * filename)7928 static void battleOp286(skiatest::Reporter* reporter, const char* filename) {
7929 SkPath path;
7930 path.setFillType((SkPathFillType) 1);
7931 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
7932 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7933 path.cubicTo(SkBits2Float(0x420374f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a8897), SkBits2Float(0xc27e6fb3), SkBits2Float(0x4297d5b1), SkBits2Float(0xc2063270));
7934 path.cubicTo(SkBits2Float(0x42b26718), SkBits2Float(0xc05f52c1), SkBits2Float(0x42a6ff01), SkBits2Float(0x41fc9e87), SkBits2Float(0x42757dc1), SkBits2Float(0x425f8353));
7935 path.cubicTo(SkBits2Float(0x4264442b), SkBits2Float(0x42726e80), SkBits2Float(0x4250e985), SkBits2Float(0x4281a5dc), SkBits2Float(0x423bd072), SkBits2Float(0x4288e283));
7936 path.lineTo(SkBits2Float(0x4207c4f4), SkBits2Float(0x4245e7df));
7937 path.cubicTo(SkBits2Float(0x42170559), SkBits2Float(0x423b7158), SkBits2Float(0x42250305), SkBits2Float(0x422f4076), SkBits2Float(0x423176ab), SkBits2Float(0x4221935e));
7938 path.cubicTo(SkBits2Float(0x427170b0), SkBits2Float(0x41b69dc5), SkBits2Float(0x4280f73f), SkBits2Float(0xc0217057), SkBits2Float(0x425b8525), SkBits2Float(0xc1c20512));
7939 path.cubicTo(SkBits2Float(0x42351bcc), SkBits2Float(0xc237ee0d), SkBits2Float(0x41be0ee4), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff));
7940 path.close();
7941
7942 SkPath path1(path);
7943 path.reset();
7944 path.setFillType((SkPathFillType) 0);
7945 path.moveTo(SkBits2Float(0x423bd073), SkBits2Float(0x4288e283));
7946 path.cubicTo(SkBits2Float(0x418c461b), SkBits2Float(0x42b13ffc), SkBits2Float(0xc1abee9c), SkBits2Float(0x42af7fac), SkBits2Float(0xc247e775), SkBits2Float(0x42848907));
7947 path.cubicTo(SkBits2Float(0xc29cebcd), SkBits2Float(0x423324c4), SkBits2Float(0xc2b40fb2), SkBits2Float(0x40f02474), SkBits2Float(0xc29d6d1c), SkBits2Float(0xc1d2a316));
7948 path.cubicTo(SkBits2Float(0xc286ca87), SkBits2Float(0xc270a7a6), SkBits2Float(0xc20ee3ea), SkBits2Float(0xc2a5f5e9), SkBits2Float(0xbd3ba09e), SkBits2Float(0xc2a5fffd));
7949 path.lineTo(SkBits2Float(0xbd0796d7), SkBits2Float(0xc26ffffe));
7950 path.cubicTo(SkBits2Float(0xc1ce9695), SkBits2Float(0xc26ff16b), SkBits2Float(0xc242e0ee), SkBits2Float(0xc22df7a5), SkBits2Float(0xc2639aa3), SkBits2Float(0xc198448c));
7951 path.cubicTo(SkBits2Float(0xc2822a2c), SkBits2Float(0x40ad98d0), SkBits2Float(0xc262dfac), SkBits2Float(0x4201805e), SkBits2Float(0xc2108243), SkBits2Float(0x423f9e03));
7952 path.cubicTo(SkBits2Float(0xc178936c), SkBits2Float(0x427dbba8), SkBits2Float(0x414ace5d), SkBits2Float(0x428021e8), SkBits2Float(0x4207c4fa), SkBits2Float(0x4245e7dc));
7953 path.lineTo(SkBits2Float(0x423bd073), SkBits2Float(0x4288e283));
7954 path.close();
7955
7956 SkPath path2(path);
7957 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7958 }
7959 // op end success 1
7960
battleOp287(skiatest::Reporter * reporter,const char * filename)7961 static void battleOp287(skiatest::Reporter* reporter, const char* filename) {
7962 SkPath path;
7963 path.setFillType((SkPathFillType) 0);
7964 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7965 path.cubicTo(SkBits2Float(0x420377c9), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8d67), SkBits2Float(0xc27e6c6d), SkBits2Float(0x4297d744), SkBits2Float(0xc2062b59));
7966 path.cubicTo(SkBits2Float(0x42b267d3), SkBits2Float(0xc05ea43d), SkBits2Float(0x42a6fd01), SkBits2Float(0x41fcb991), SkBits2Float(0x42757351), SkBits2Float(0x425f8ecb));
7967 path.lineTo(SkBits2Float(0x42316f1e), SkBits2Float(0x42219ba8));
7968 path.cubicTo(SkBits2Float(0x42716dc9), SkBits2Float(0x41b6b154), SkBits2Float(0x4280f7c8), SkBits2Float(0xc020f212), SkBits2Float(0x425b876b), SkBits2Float(0xc1c1fad0));
7969 path.cubicTo(SkBits2Float(0x42351f48), SkBits2Float(0xc237ebae), SkBits2Float(0x41be12f9), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
7970 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
7971 path.close();
7972
7973 SkPath path1(path);
7974 path.reset();
7975 path.setFillType((SkPathFillType) 0);
7976 path.moveTo(SkBits2Float(0x42757350), SkBits2Float(0x425f8ecb));
7977 path.cubicTo(SkBits2Float(0x42643881), SkBits2Float(0x4272798e), SkBits2Float(0x4250dca0), SkBits2Float(0x4281ab15), SkBits2Float(0x423bc262), SkBits2Float(0x4288e756));
7978 path.lineTo(SkBits2Float(0x4207bac8), SkBits2Float(0x4245eed9));
7979 path.cubicTo(SkBits2Float(0x4216fc05), SkBits2Float(0x423b78e5), SkBits2Float(0x4224fa94), SkBits2Float(0x422f4874), SkBits2Float(0x42316f1f), SkBits2Float(0x42219baa));
7980 path.lineTo(SkBits2Float(0x42757350), SkBits2Float(0x425f8ecb));
7981 path.close();
7982
7983 SkPath path2(path);
7984 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
7985 }
7986 // op end success 1
7987
battleOp288(skiatest::Reporter * reporter,const char * filename)7988 static void battleOp288(skiatest::Reporter* reporter, const char* filename) {
7989 SkPath path;
7990 path.setFillType((SkPathFillType) 1);
7991 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
7992 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
7993 path.cubicTo(SkBits2Float(0x420377c9), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8d67), SkBits2Float(0xc27e6c6d), SkBits2Float(0x4297d744), SkBits2Float(0xc2062b59));
7994 path.cubicTo(SkBits2Float(0x42b267d3), SkBits2Float(0xc05ea43d), SkBits2Float(0x42a6fd01), SkBits2Float(0x41fcb991), SkBits2Float(0x42757351), SkBits2Float(0x425f8ecb));
7995 path.lineTo(SkBits2Float(0x423bc262), SkBits2Float(0x4288e756));
7996 path.lineTo(SkBits2Float(0x4207bac8), SkBits2Float(0x4245eed9));
7997 path.cubicTo(SkBits2Float(0x4216fc05), SkBits2Float(0x423b78e5), SkBits2Float(0x4224fa94), SkBits2Float(0x422f4874), SkBits2Float(0x42316f1f), SkBits2Float(0x42219baa));
7998 path.lineTo(SkBits2Float(0x42316f1e), SkBits2Float(0x42219ba8));
7999 path.cubicTo(SkBits2Float(0x42716dc9), SkBits2Float(0x41b6b154), SkBits2Float(0x4280f7c8), SkBits2Float(0xc020f212), SkBits2Float(0x425b876b), SkBits2Float(0xc1c1fad0));
8000 path.cubicTo(SkBits2Float(0x42351f48), SkBits2Float(0xc237ebae), SkBits2Float(0x41be12f9), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8001 path.close();
8002
8003 SkPath path1(path);
8004 path.reset();
8005 path.setFillType((SkPathFillType) 0);
8006 path.moveTo(SkBits2Float(0x423bc261), SkBits2Float(0x4288e756));
8007 path.cubicTo(SkBits2Float(0x418c1c95), SkBits2Float(0x42b142a6), SkBits2Float(0xc1ac1f7e), SkBits2Float(0x42af7d4d), SkBits2Float(0xc247fbc6), SkBits2Float(0x4284815d));
8008 path.cubicTo(SkBits2Float(0xc29cf3e6), SkBits2Float(0x42330ad8), SkBits2Float(0xc2b411b5), SkBits2Float(0x40ef163d), SkBits2Float(0xc29d67bc), SkBits2Float(0xc1d2e345));
8009 path.cubicTo(SkBits2Float(0xc286bdc4), SkBits2Float(0xc270c60d), SkBits2Float(0xc20ebcc7), SkBits2Float(0xc2a5feff), SkBits2Float(0xbb958372), SkBits2Float(0xc2a5ffff));
8010 path.lineTo(SkBits2Float(0xbb591ee2), SkBits2Float(0xc2700000));
8011 path.cubicTo(SkBits2Float(0xc1ce5e0c), SkBits2Float(0xc26ffe8b), SkBits2Float(0xc242ce80), SkBits2Float(0xc22e0d9d), SkBits2Float(0xc26392e3), SkBits2Float(0xc19872ed));
8012 path.cubicTo(SkBits2Float(0xc2822ba3), SkBits2Float(0x40acd588), SkBits2Float(0xc262eb66), SkBits2Float(0x42016da1), SkBits2Float(0xc21090f8), SkBits2Float(0x423f92f0));
8013 path.cubicTo(SkBits2Float(0xc178da2a), SkBits2Float(0x427db83e), SkBits2Float(0x414a923f), SkBits2Float(0x428023d8), SkBits2Float(0x4207baca), SkBits2Float(0x4245eed8));
8014 path.lineTo(SkBits2Float(0x423bc261), SkBits2Float(0x4288e756));
8015 path.close();
8016
8017 SkPath path2(path);
8018 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8019 }
8020 // op end success 1
8021
battleOp289(skiatest::Reporter * reporter,const char * filename)8022 static void battleOp289(skiatest::Reporter* reporter, const char* filename) {
8023 SkPath path;
8024 path.setFillType((SkPathFillType) 0);
8025 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8026 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8027 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8028 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8029 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8030 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8031 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8032 path.close();
8033
8034 SkPath path1(path);
8035 path.reset();
8036 path.setFillType((SkPathFillType) 0);
8037 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8038 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8039 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8040 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8041 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8042 path.close();
8043
8044 SkPath path2(path);
8045 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8046 }
8047 // op end success 1
8048
battleOp290(skiatest::Reporter * reporter,const char * filename)8049 static void battleOp290(skiatest::Reporter* reporter, const char* filename) {
8050 SkPath path;
8051 path.setFillType((SkPathFillType) 1);
8052 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8053 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8054 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8055 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8056 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8057 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8058 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8059 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8060 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8061 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8062 path.close();
8063
8064 SkPath path1(path);
8065 path.reset();
8066 path.setFillType((SkPathFillType) 0);
8067 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8068 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8069 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8070 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8071 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8072 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8073 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8074 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8075 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8076 path.close();
8077
8078 SkPath path2(path);
8079 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8080 }
8081 // op end success 1
8082
battleOp291(skiatest::Reporter * reporter,const char * filename)8083 static void battleOp291(skiatest::Reporter* reporter, const char* filename) {
8084 SkPath path;
8085 path.setFillType((SkPathFillType) 0);
8086 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8087 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8088 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8089 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8090 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8091 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8092 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8093 path.close();
8094
8095 SkPath path1(path);
8096 path.reset();
8097 path.setFillType((SkPathFillType) 0);
8098 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8099 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8100 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8101 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8102 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8103 path.close();
8104
8105 SkPath path2(path);
8106 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8107 }
8108 // op end success 1
8109
battleOp292(skiatest::Reporter * reporter,const char * filename)8110 static void battleOp292(skiatest::Reporter* reporter, const char* filename) {
8111 SkPath path;
8112 path.setFillType((SkPathFillType) 1);
8113 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8114 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8115 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8116 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8117 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8118 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8119 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8120 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8121 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8122 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8123 path.close();
8124
8125 SkPath path1(path);
8126 path.reset();
8127 path.setFillType((SkPathFillType) 0);
8128 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8129 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8130 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8131 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8132 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8133 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8134 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8135 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8136 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8137 path.close();
8138
8139 SkPath path2(path);
8140 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8141 }
8142 // op end success 1
8143
battleOp293(skiatest::Reporter * reporter,const char * filename)8144 static void battleOp293(skiatest::Reporter* reporter, const char* filename) {
8145 SkPath path;
8146 path.setFillType((SkPathFillType) 0);
8147 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8148 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8149 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8150 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8151 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8152 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8153 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8154 path.close();
8155
8156 SkPath path1(path);
8157 path.reset();
8158 path.setFillType((SkPathFillType) 0);
8159 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8160 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8161 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8162 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8163 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8164 path.close();
8165
8166 SkPath path2(path);
8167 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8168 }
8169 // op end success 1
8170
battleOp294(skiatest::Reporter * reporter,const char * filename)8171 static void battleOp294(skiatest::Reporter* reporter, const char* filename) {
8172 SkPath path;
8173 path.setFillType((SkPathFillType) 1);
8174 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8175 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8176 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8177 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8178 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8179 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8180 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8181 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8182 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8183 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8184 path.close();
8185
8186 SkPath path1(path);
8187 path.reset();
8188 path.setFillType((SkPathFillType) 0);
8189 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8190 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8191 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8192 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8193 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8194 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8195 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8196 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8197 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8198 path.close();
8199
8200 SkPath path2(path);
8201 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8202 }
8203 // op end success 1
8204
battleOp295(skiatest::Reporter * reporter,const char * filename)8205 static void battleOp295(skiatest::Reporter* reporter, const char* filename) {
8206 SkPath path;
8207 path.setFillType((SkPathFillType) 0);
8208 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8209 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8210 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8211 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8212 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8213 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8214 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8215 path.close();
8216
8217 SkPath path1(path);
8218 path.reset();
8219 path.setFillType((SkPathFillType) 0);
8220 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8221 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8222 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8223 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8224 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8225 path.close();
8226
8227 SkPath path2(path);
8228 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8229 }
8230 // op end success 1
8231
battleOp296(skiatest::Reporter * reporter,const char * filename)8232 static void battleOp296(skiatest::Reporter* reporter, const char* filename) {
8233 SkPath path;
8234 path.setFillType((SkPathFillType) 1);
8235 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8236 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8237 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8238 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8239 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8240 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8241 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8242 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8243 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8244 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8245 path.close();
8246
8247 SkPath path1(path);
8248 path.reset();
8249 path.setFillType((SkPathFillType) 0);
8250 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8251 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8252 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8253 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8254 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8255 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8256 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8257 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8258 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8259 path.close();
8260
8261 SkPath path2(path);
8262 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8263 }
8264 // op end success 1
8265
battleOp297(skiatest::Reporter * reporter,const char * filename)8266 static void battleOp297(skiatest::Reporter* reporter, const char* filename) {
8267 SkPath path;
8268 path.setFillType((SkPathFillType) 0);
8269 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8270 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8271 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8272 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8273 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8274 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8275 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8276 path.close();
8277
8278 SkPath path1(path);
8279 path.reset();
8280 path.setFillType((SkPathFillType) 0);
8281 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8282 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8283 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8284 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8285 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8286 path.close();
8287
8288 SkPath path2(path);
8289 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8290 }
8291 // op end success 1
8292
battleOp298(skiatest::Reporter * reporter,const char * filename)8293 static void battleOp298(skiatest::Reporter* reporter, const char* filename) {
8294 SkPath path;
8295 path.setFillType((SkPathFillType) 1);
8296 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8297 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8298 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8299 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8300 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8301 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8302 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8303 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8304 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8305 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8306 path.close();
8307
8308 SkPath path1(path);
8309 path.reset();
8310 path.setFillType((SkPathFillType) 0);
8311 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8312 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8313 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8314 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8315 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8316 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8317 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8318 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8319 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8320 path.close();
8321
8322 SkPath path2(path);
8323 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8324 }
8325 // op end success 1
8326
battleOp299(skiatest::Reporter * reporter,const char * filename)8327 static void battleOp299(skiatest::Reporter* reporter, const char* filename) {
8328 SkPath path;
8329 path.setFillType((SkPathFillType) 0);
8330 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8331 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8332 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8333 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8334 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8335 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8336 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8337 path.close();
8338
8339 SkPath path1(path);
8340 path.reset();
8341 path.setFillType((SkPathFillType) 0);
8342 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8343 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8344 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8345 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8346 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8347 path.close();
8348
8349 SkPath path2(path);
8350 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8351 }
8352 // op end success 1
8353
battleOp300(skiatest::Reporter * reporter,const char * filename)8354 static void battleOp300(skiatest::Reporter* reporter, const char* filename) {
8355 SkPath path;
8356 path.setFillType((SkPathFillType) 1);
8357 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8358 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8359 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8360 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8361 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8362 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8363 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8364 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8365 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8366 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8367 path.close();
8368
8369 SkPath path1(path);
8370 path.reset();
8371 path.setFillType((SkPathFillType) 0);
8372 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8373 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8374 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8375 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8376 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8377 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8378 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8379 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8380 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8381 path.close();
8382
8383 SkPath path2(path);
8384 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8385 }
8386 // op end success 1
8387
battleOp301(skiatest::Reporter * reporter,const char * filename)8388 static void battleOp301(skiatest::Reporter* reporter, const char* filename) {
8389 SkPath path;
8390 path.setFillType((SkPathFillType) 0);
8391 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8392 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8393 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8394 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8395 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8396 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8397 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8398 path.close();
8399
8400 SkPath path1(path);
8401 path.reset();
8402 path.setFillType((SkPathFillType) 0);
8403 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8404 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8405 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8406 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8407 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8408 path.close();
8409
8410 SkPath path2(path);
8411 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8412 }
8413 // op end success 1
8414
battleOp302(skiatest::Reporter * reporter,const char * filename)8415 static void battleOp302(skiatest::Reporter* reporter, const char* filename) {
8416 SkPath path;
8417 path.setFillType((SkPathFillType) 1);
8418 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8419 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8420 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8421 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8422 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8423 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8424 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8425 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8426 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8427 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8428 path.close();
8429
8430 SkPath path1(path);
8431 path.reset();
8432 path.setFillType((SkPathFillType) 0);
8433 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8434 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8435 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8436 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8437 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8438 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8439 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8440 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8441 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8442 path.close();
8443
8444 SkPath path2(path);
8445 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8446 }
8447 // op end success 1
8448
battleOp303(skiatest::Reporter * reporter,const char * filename)8449 static void battleOp303(skiatest::Reporter* reporter, const char* filename) {
8450 SkPath path;
8451 path.setFillType((SkPathFillType) 0);
8452 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8453 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8454 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8455 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8456 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8457 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8458 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8459 path.close();
8460
8461 SkPath path1(path);
8462 path.reset();
8463 path.setFillType((SkPathFillType) 0);
8464 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8465 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8466 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8467 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8468 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8469 path.close();
8470
8471 SkPath path2(path);
8472 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8473 }
8474 // op end success 1
8475
battleOp304(skiatest::Reporter * reporter,const char * filename)8476 static void battleOp304(skiatest::Reporter* reporter, const char* filename) {
8477 SkPath path;
8478 path.setFillType((SkPathFillType) 1);
8479 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8480 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8481 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8482 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8483 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8484 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8485 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8486 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8487 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8488 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8489 path.close();
8490
8491 SkPath path1(path);
8492 path.reset();
8493 path.setFillType((SkPathFillType) 0);
8494 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8495 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8496 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8497 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8498 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8499 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8500 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8501 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8502 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8503 path.close();
8504
8505 SkPath path2(path);
8506 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8507 }
8508 // op end success 1
8509
battleOp305(skiatest::Reporter * reporter,const char * filename)8510 static void battleOp305(skiatest::Reporter* reporter, const char* filename) {
8511 SkPath path;
8512 path.setFillType((SkPathFillType) 0);
8513 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8514 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8515 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8516 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8517 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8518 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8519 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8520 path.close();
8521
8522 SkPath path1(path);
8523 path.reset();
8524 path.setFillType((SkPathFillType) 0);
8525 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8526 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8527 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8528 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8529 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8530 path.close();
8531
8532 SkPath path2(path);
8533 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8534 }
8535 // op end success 1
8536
battleOp306(skiatest::Reporter * reporter,const char * filename)8537 static void battleOp306(skiatest::Reporter* reporter, const char* filename) {
8538 SkPath path;
8539 path.setFillType((SkPathFillType) 1);
8540 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8541 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8542 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8543 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8544 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8545 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8546 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8547 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8548 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8549 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8550 path.close();
8551
8552 SkPath path1(path);
8553 path.reset();
8554 path.setFillType((SkPathFillType) 0);
8555 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8556 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8557 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8558 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8559 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8560 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8561 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8562 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8563 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8564 path.close();
8565
8566 SkPath path2(path);
8567 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8568 }
8569 // op end success 1
8570
battleOp307(skiatest::Reporter * reporter,const char * filename)8571 static void battleOp307(skiatest::Reporter* reporter, const char* filename) {
8572 SkPath path;
8573 path.setFillType((SkPathFillType) 0);
8574 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8575 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8576 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8577 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8578 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8579 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8580 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8581 path.close();
8582
8583 SkPath path1(path);
8584 path.reset();
8585 path.setFillType((SkPathFillType) 0);
8586 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8587 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8588 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8589 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8590 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8591 path.close();
8592
8593 SkPath path2(path);
8594 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8595 }
8596 // op end success 1
8597
battleOp308(skiatest::Reporter * reporter,const char * filename)8598 static void battleOp308(skiatest::Reporter* reporter, const char* filename) {
8599 SkPath path;
8600 path.setFillType((SkPathFillType) 1);
8601 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8602 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8603 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8604 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8605 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8606 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8607 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8608 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8609 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8610 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8611 path.close();
8612
8613 SkPath path1(path);
8614 path.reset();
8615 path.setFillType((SkPathFillType) 0);
8616 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8617 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8618 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8619 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8620 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8621 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8622 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8623 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8624 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8625 path.close();
8626
8627 SkPath path2(path);
8628 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8629 }
8630 // op end success 1
8631
battleOp309(skiatest::Reporter * reporter,const char * filename)8632 static void battleOp309(skiatest::Reporter* reporter, const char* filename) {
8633 SkPath path;
8634 path.setFillType((SkPathFillType) 0);
8635 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8636 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8637 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8638 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8639 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8640 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8641 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8642 path.close();
8643
8644 SkPath path1(path);
8645 path.reset();
8646 path.setFillType((SkPathFillType) 0);
8647 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8648 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8649 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8650 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8651 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8652 path.close();
8653
8654 SkPath path2(path);
8655 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8656 }
8657 // op end success 1
8658
battleOp310(skiatest::Reporter * reporter,const char * filename)8659 static void battleOp310(skiatest::Reporter* reporter, const char* filename) {
8660 SkPath path;
8661 path.setFillType((SkPathFillType) 1);
8662 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8663 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8664 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8665 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8666 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8667 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8668 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8669 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8670 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8671 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8672 path.close();
8673
8674 SkPath path1(path);
8675 path.reset();
8676 path.setFillType((SkPathFillType) 0);
8677 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8678 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8679 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8680 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8681 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8682 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8683 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8684 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8685 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8686 path.close();
8687
8688 SkPath path2(path);
8689 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8690 }
8691 // op end success 1
8692
battleOp311(skiatest::Reporter * reporter,const char * filename)8693 static void battleOp311(skiatest::Reporter* reporter, const char* filename) {
8694 SkPath path;
8695 path.setFillType((SkPathFillType) 0);
8696 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8697 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8698 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8699 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8700 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8701 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8702 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8703 path.close();
8704
8705 SkPath path1(path);
8706 path.reset();
8707 path.setFillType((SkPathFillType) 0);
8708 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8709 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8710 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8711 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8712 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8713 path.close();
8714
8715 SkPath path2(path);
8716 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8717 }
8718 // op end success 1
8719
battleOp312(skiatest::Reporter * reporter,const char * filename)8720 static void battleOp312(skiatest::Reporter* reporter, const char* filename) {
8721 SkPath path;
8722 path.setFillType((SkPathFillType) 1);
8723 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8724 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8725 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8726 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8727 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8728 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8729 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8730 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8731 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8732 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8733 path.close();
8734
8735 SkPath path1(path);
8736 path.reset();
8737 path.setFillType((SkPathFillType) 0);
8738 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8739 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8740 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8741 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8742 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8743 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8744 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8745 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8746 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8747 path.close();
8748
8749 SkPath path2(path);
8750 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8751 }
8752 // op end success 1
8753
battleOp313(skiatest::Reporter * reporter,const char * filename)8754 static void battleOp313(skiatest::Reporter* reporter, const char* filename) {
8755 SkPath path;
8756 path.setFillType((SkPathFillType) 0);
8757 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8758 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8759 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8760 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8761 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8762 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8763 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8764 path.close();
8765
8766 SkPath path1(path);
8767 path.reset();
8768 path.setFillType((SkPathFillType) 0);
8769 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8770 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8771 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8772 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8773 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8774 path.close();
8775
8776 SkPath path2(path);
8777 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8778 }
8779 // op end success 1
8780
battleOp314(skiatest::Reporter * reporter,const char * filename)8781 static void battleOp314(skiatest::Reporter* reporter, const char* filename) {
8782 SkPath path;
8783 path.setFillType((SkPathFillType) 1);
8784 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8785 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8786 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8787 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8788 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8789 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8790 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8791 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8792 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8793 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8794 path.close();
8795
8796 SkPath path1(path);
8797 path.reset();
8798 path.setFillType((SkPathFillType) 0);
8799 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8800 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8801 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8802 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8803 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8804 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8805 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8806 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8807 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8808 path.close();
8809
8810 SkPath path2(path);
8811 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8812 }
8813 // op end success 1
8814
battleOp315(skiatest::Reporter * reporter,const char * filename)8815 static void battleOp315(skiatest::Reporter* reporter, const char* filename) {
8816 SkPath path;
8817 path.setFillType((SkPathFillType) 0);
8818 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8819 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8820 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8821 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8822 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8823 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8824 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8825 path.close();
8826
8827 SkPath path1(path);
8828 path.reset();
8829 path.setFillType((SkPathFillType) 0);
8830 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8831 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8832 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8833 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8834 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8835 path.close();
8836
8837 SkPath path2(path);
8838 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8839 }
8840 // op end success 1
8841
battleOp316(skiatest::Reporter * reporter,const char * filename)8842 static void battleOp316(skiatest::Reporter* reporter, const char* filename) {
8843 SkPath path;
8844 path.setFillType((SkPathFillType) 1);
8845 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8846 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8847 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8848 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8849 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8850 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8851 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8852 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8853 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8854 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8855 path.close();
8856
8857 SkPath path1(path);
8858 path.reset();
8859 path.setFillType((SkPathFillType) 0);
8860 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8861 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8862 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8863 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8864 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8865 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8866 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8867 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8868 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8869 path.close();
8870
8871 SkPath path2(path);
8872 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8873 }
8874 // op end success 1
8875
battleOp317(skiatest::Reporter * reporter,const char * filename)8876 static void battleOp317(skiatest::Reporter* reporter, const char* filename) {
8877 SkPath path;
8878 path.setFillType((SkPathFillType) 0);
8879 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8880 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8881 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8882 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8883 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8884 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8885 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8886 path.close();
8887
8888 SkPath path1(path);
8889 path.reset();
8890 path.setFillType((SkPathFillType) 0);
8891 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8892 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8893 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8894 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8895 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8896 path.close();
8897
8898 SkPath path2(path);
8899 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8900 }
8901 // op end success 1
8902
battleOp318(skiatest::Reporter * reporter,const char * filename)8903 static void battleOp318(skiatest::Reporter* reporter, const char* filename) {
8904 SkPath path;
8905 path.setFillType((SkPathFillType) 1);
8906 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8907 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8908 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8909 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8910 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8911 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8912 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8913 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8914 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8915 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8916 path.close();
8917
8918 SkPath path1(path);
8919 path.reset();
8920 path.setFillType((SkPathFillType) 0);
8921 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8922 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8923 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8924 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8925 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8926 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8927 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8928 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8929 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8930 path.close();
8931
8932 SkPath path2(path);
8933 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8934 }
8935 // op end success 1
8936
battleOp319(skiatest::Reporter * reporter,const char * filename)8937 static void battleOp319(skiatest::Reporter* reporter, const char* filename) {
8938 SkPath path;
8939 path.setFillType((SkPathFillType) 0);
8940 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8941 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8942 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8943 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8944 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8945 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
8946 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
8947 path.close();
8948
8949 SkPath path1(path);
8950 path.reset();
8951 path.setFillType((SkPathFillType) 0);
8952 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8953 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8954 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8955 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8956 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
8957 path.close();
8958
8959 SkPath path2(path);
8960 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8961 }
8962 // op end success 1
8963
battleOp320(skiatest::Reporter * reporter,const char * filename)8964 static void battleOp320(skiatest::Reporter* reporter, const char* filename) {
8965 SkPath path;
8966 path.setFillType((SkPathFillType) 1);
8967 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8968 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
8969 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
8970 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
8971 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8972 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8973 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
8974 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
8975 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
8976 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
8977 path.close();
8978
8979 SkPath path1(path);
8980 path.reset();
8981 path.setFillType((SkPathFillType) 0);
8982 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8983 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
8984 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
8985 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
8986 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
8987 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
8988 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
8989 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
8990 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
8991 path.close();
8992
8993 SkPath path2(path);
8994 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
8995 }
8996 // op end success 1
8997
battleOp321(skiatest::Reporter * reporter,const char * filename)8998 static void battleOp321(skiatest::Reporter* reporter, const char* filename) {
8999 SkPath path;
9000 path.setFillType((SkPathFillType) 0);
9001 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9002 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9003 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9004 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9005 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9006 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9007 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9008 path.close();
9009
9010 SkPath path1(path);
9011 path.reset();
9012 path.setFillType((SkPathFillType) 0);
9013 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9014 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9015 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9016 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9017 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9018 path.close();
9019
9020 SkPath path2(path);
9021 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9022 }
9023 // op end success 1
9024
battleOp322(skiatest::Reporter * reporter,const char * filename)9025 static void battleOp322(skiatest::Reporter* reporter, const char* filename) {
9026 SkPath path;
9027 path.setFillType((SkPathFillType) 1);
9028 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9029 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9030 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9031 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9032 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9033 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9034 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9035 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9036 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9037 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9038 path.close();
9039
9040 SkPath path1(path);
9041 path.reset();
9042 path.setFillType((SkPathFillType) 0);
9043 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9044 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9045 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9046 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9047 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9048 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9049 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9050 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9051 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9052 path.close();
9053
9054 SkPath path2(path);
9055 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9056 }
9057 // op end success 1
9058
battleOp323(skiatest::Reporter * reporter,const char * filename)9059 static void battleOp323(skiatest::Reporter* reporter, const char* filename) {
9060 SkPath path;
9061 path.setFillType((SkPathFillType) 0);
9062 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9063 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9064 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9065 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9066 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9067 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9068 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9069 path.close();
9070
9071 SkPath path1(path);
9072 path.reset();
9073 path.setFillType((SkPathFillType) 0);
9074 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9075 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9076 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9077 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9078 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9079 path.close();
9080
9081 SkPath path2(path);
9082 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9083 }
9084 // op end success 1
9085
battleOp324(skiatest::Reporter * reporter,const char * filename)9086 static void battleOp324(skiatest::Reporter* reporter, const char* filename) {
9087 SkPath path;
9088 path.setFillType((SkPathFillType) 1);
9089 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9090 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9091 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9092 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9093 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9094 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9095 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9096 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9097 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9098 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9099 path.close();
9100
9101 SkPath path1(path);
9102 path.reset();
9103 path.setFillType((SkPathFillType) 0);
9104 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9105 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9106 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9107 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9108 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9109 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9110 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9111 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9112 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9113 path.close();
9114
9115 SkPath path2(path);
9116 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9117 }
9118 // op end success 1
9119
battleOp325(skiatest::Reporter * reporter,const char * filename)9120 static void battleOp325(skiatest::Reporter* reporter, const char* filename) {
9121 SkPath path;
9122 path.setFillType((SkPathFillType) 0);
9123 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9124 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9125 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9126 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9127 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9128 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9129 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9130 path.close();
9131
9132 SkPath path1(path);
9133 path.reset();
9134 path.setFillType((SkPathFillType) 0);
9135 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9136 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9137 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9138 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9139 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9140 path.close();
9141
9142 SkPath path2(path);
9143 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9144 }
9145 // op end success 1
9146
battleOp326(skiatest::Reporter * reporter,const char * filename)9147 static void battleOp326(skiatest::Reporter* reporter, const char* filename) {
9148 SkPath path;
9149 path.setFillType((SkPathFillType) 1);
9150 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9151 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9152 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9153 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9154 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9155 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9156 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9157 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9158 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9159 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9160 path.close();
9161
9162 SkPath path1(path);
9163 path.reset();
9164 path.setFillType((SkPathFillType) 0);
9165 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9166 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9167 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9168 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9169 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9170 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9171 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9172 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9173 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9174 path.close();
9175
9176 SkPath path2(path);
9177 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9178 }
9179 // op end success 1
9180
battleOp327(skiatest::Reporter * reporter,const char * filename)9181 static void battleOp327(skiatest::Reporter* reporter, const char* filename) {
9182 SkPath path;
9183 path.setFillType((SkPathFillType) 0);
9184 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9185 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9186 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9187 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9188 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9189 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9190 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9191 path.close();
9192
9193 SkPath path1(path);
9194 path.reset();
9195 path.setFillType((SkPathFillType) 0);
9196 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9197 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9198 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9199 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9200 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9201 path.close();
9202
9203 SkPath path2(path);
9204 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9205 }
9206 // op end success 1
9207
battleOp328(skiatest::Reporter * reporter,const char * filename)9208 static void battleOp328(skiatest::Reporter* reporter, const char* filename) {
9209 SkPath path;
9210 path.setFillType((SkPathFillType) 1);
9211 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9212 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9213 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9214 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9215 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9216 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9217 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9218 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9219 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9220 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9221 path.close();
9222
9223 SkPath path1(path);
9224 path.reset();
9225 path.setFillType((SkPathFillType) 0);
9226 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9227 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9228 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9229 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9230 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9231 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9232 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9233 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9234 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9235 path.close();
9236
9237 SkPath path2(path);
9238 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9239 }
9240 // op end success 1
9241
battleOp329(skiatest::Reporter * reporter,const char * filename)9242 static void battleOp329(skiatest::Reporter* reporter, const char* filename) {
9243 SkPath path;
9244 path.setFillType((SkPathFillType) 0);
9245 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9246 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9247 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9248 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9249 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9250 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9251 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9252 path.close();
9253
9254 SkPath path1(path);
9255 path.reset();
9256 path.setFillType((SkPathFillType) 0);
9257 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9258 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9259 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9260 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9261 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9262 path.close();
9263
9264 SkPath path2(path);
9265 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9266 }
9267 // op end success 1
9268
battleOp330(skiatest::Reporter * reporter,const char * filename)9269 static void battleOp330(skiatest::Reporter* reporter, const char* filename) {
9270 SkPath path;
9271 path.setFillType((SkPathFillType) 1);
9272 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9273 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9274 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9275 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9276 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9277 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9278 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9279 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9280 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9281 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9282 path.close();
9283
9284 SkPath path1(path);
9285 path.reset();
9286 path.setFillType((SkPathFillType) 0);
9287 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9288 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9289 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9290 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9291 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9292 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9293 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9294 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9295 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9296 path.close();
9297
9298 SkPath path2(path);
9299 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9300 }
9301 // op end success 1
9302
battleOp331(skiatest::Reporter * reporter,const char * filename)9303 static void battleOp331(skiatest::Reporter* reporter, const char* filename) {
9304 SkPath path;
9305 path.setFillType((SkPathFillType) 0);
9306 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9307 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9308 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9309 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9310 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9311 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9312 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9313 path.close();
9314
9315 SkPath path1(path);
9316 path.reset();
9317 path.setFillType((SkPathFillType) 0);
9318 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9319 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9320 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9321 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9322 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9323 path.close();
9324
9325 SkPath path2(path);
9326 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9327 }
9328 // op end success 1
9329
battleOp332(skiatest::Reporter * reporter,const char * filename)9330 static void battleOp332(skiatest::Reporter* reporter, const char* filename) {
9331 SkPath path;
9332 path.setFillType((SkPathFillType) 1);
9333 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9334 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9335 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9336 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9337 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9338 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9339 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9340 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9341 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9342 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9343 path.close();
9344
9345 SkPath path1(path);
9346 path.reset();
9347 path.setFillType((SkPathFillType) 0);
9348 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9349 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9350 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9351 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9352 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9353 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9354 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9355 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9356 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9357 path.close();
9358
9359 SkPath path2(path);
9360 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9361 }
9362 // op end success 1
9363
battleOp333(skiatest::Reporter * reporter,const char * filename)9364 static void battleOp333(skiatest::Reporter* reporter, const char* filename) {
9365 SkPath path;
9366 path.setFillType((SkPathFillType) 0);
9367 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9368 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9369 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9370 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9371 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9372 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9373 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9374 path.close();
9375
9376 SkPath path1(path);
9377 path.reset();
9378 path.setFillType((SkPathFillType) 0);
9379 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9380 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9381 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9382 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9383 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9384 path.close();
9385
9386 SkPath path2(path);
9387 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9388 }
9389 // op end success 1
9390
battleOp334(skiatest::Reporter * reporter,const char * filename)9391 static void battleOp334(skiatest::Reporter* reporter, const char* filename) {
9392 SkPath path;
9393 path.setFillType((SkPathFillType) 1);
9394 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9395 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9396 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9397 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9398 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9399 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9400 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9401 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9402 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9403 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9404 path.close();
9405
9406 SkPath path1(path);
9407 path.reset();
9408 path.setFillType((SkPathFillType) 0);
9409 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9410 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9411 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9412 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9413 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9414 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9415 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9416 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9417 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9418 path.close();
9419
9420 SkPath path2(path);
9421 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9422 }
9423 // op end success 1
9424
battleOp335(skiatest::Reporter * reporter,const char * filename)9425 static void battleOp335(skiatest::Reporter* reporter, const char* filename) {
9426 SkPath path;
9427 path.setFillType((SkPathFillType) 0);
9428 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9429 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9430 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9431 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9432 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9433 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9434 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9435 path.close();
9436
9437 SkPath path1(path);
9438 path.reset();
9439 path.setFillType((SkPathFillType) 0);
9440 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9441 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9442 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9443 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9444 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9445 path.close();
9446
9447 SkPath path2(path);
9448 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9449 }
9450 // op end success 1
9451
battleOp336(skiatest::Reporter * reporter,const char * filename)9452 static void battleOp336(skiatest::Reporter* reporter, const char* filename) {
9453 SkPath path;
9454 path.setFillType((SkPathFillType) 1);
9455 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9456 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9457 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9458 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9459 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9460 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9461 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9462 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9463 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9464 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9465 path.close();
9466
9467 SkPath path1(path);
9468 path.reset();
9469 path.setFillType((SkPathFillType) 0);
9470 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9471 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9472 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9473 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9474 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9475 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9476 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9477 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9478 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9479 path.close();
9480
9481 SkPath path2(path);
9482 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9483 }
9484 // op end success 1
9485
battleOp337(skiatest::Reporter * reporter,const char * filename)9486 static void battleOp337(skiatest::Reporter* reporter, const char* filename) {
9487 SkPath path;
9488 path.setFillType((SkPathFillType) 0);
9489 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9490 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9491 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9492 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9493 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9494 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9495 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9496 path.close();
9497
9498 SkPath path1(path);
9499 path.reset();
9500 path.setFillType((SkPathFillType) 0);
9501 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9502 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9503 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9504 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9505 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9506 path.close();
9507
9508 SkPath path2(path);
9509 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9510 }
9511 // op end success 1
9512
battleOp338(skiatest::Reporter * reporter,const char * filename)9513 static void battleOp338(skiatest::Reporter* reporter, const char* filename) {
9514 SkPath path;
9515 path.setFillType((SkPathFillType) 1);
9516 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9517 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9518 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9519 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9520 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9521 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9522 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9523 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9524 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9525 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9526 path.close();
9527
9528 SkPath path1(path);
9529 path.reset();
9530 path.setFillType((SkPathFillType) 0);
9531 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9532 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9533 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9534 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9535 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9536 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9537 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9538 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9539 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9540 path.close();
9541
9542 SkPath path2(path);
9543 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9544 }
9545 // op end success 1
9546
battleOp339(skiatest::Reporter * reporter,const char * filename)9547 static void battleOp339(skiatest::Reporter* reporter, const char* filename) {
9548 SkPath path;
9549 path.setFillType((SkPathFillType) 0);
9550 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9551 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9552 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9553 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9554 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9555 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9556 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9557 path.close();
9558
9559 SkPath path1(path);
9560 path.reset();
9561 path.setFillType((SkPathFillType) 0);
9562 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9563 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9564 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9565 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9566 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9567 path.close();
9568
9569 SkPath path2(path);
9570 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9571 }
9572 // op end success 1
9573
battleOp340(skiatest::Reporter * reporter,const char * filename)9574 static void battleOp340(skiatest::Reporter* reporter, const char* filename) {
9575 SkPath path;
9576 path.setFillType((SkPathFillType) 1);
9577 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9578 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9579 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9580 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9581 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9582 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9583 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9584 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9585 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9586 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9587 path.close();
9588
9589 SkPath path1(path);
9590 path.reset();
9591 path.setFillType((SkPathFillType) 0);
9592 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9593 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9594 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9595 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9596 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9597 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9598 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9599 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9600 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9601 path.close();
9602
9603 SkPath path2(path);
9604 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9605 }
9606 // op end success 1
9607
battleOp341(skiatest::Reporter * reporter,const char * filename)9608 static void battleOp341(skiatest::Reporter* reporter, const char* filename) {
9609 SkPath path;
9610 path.setFillType((SkPathFillType) 0);
9611 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9612 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9613 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9614 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9615 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9616 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9617 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9618 path.close();
9619
9620 SkPath path1(path);
9621 path.reset();
9622 path.setFillType((SkPathFillType) 0);
9623 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9624 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9625 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9626 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9627 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9628 path.close();
9629
9630 SkPath path2(path);
9631 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9632 }
9633 // op end success 1
9634
battleOp342(skiatest::Reporter * reporter,const char * filename)9635 static void battleOp342(skiatest::Reporter* reporter, const char* filename) {
9636 SkPath path;
9637 path.setFillType((SkPathFillType) 1);
9638 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9639 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9640 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9641 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9642 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9643 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9644 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9645 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9646 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9647 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9648 path.close();
9649
9650 SkPath path1(path);
9651 path.reset();
9652 path.setFillType((SkPathFillType) 0);
9653 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9654 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9655 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9656 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9657 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9658 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9659 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9660 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9661 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9662 path.close();
9663
9664 SkPath path2(path);
9665 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9666 }
9667 // op end success 1
9668
battleOp343(skiatest::Reporter * reporter,const char * filename)9669 static void battleOp343(skiatest::Reporter* reporter, const char* filename) {
9670 SkPath path;
9671 path.setFillType((SkPathFillType) 0);
9672 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9673 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9674 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9675 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9676 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9677 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9678 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9679 path.close();
9680
9681 SkPath path1(path);
9682 path.reset();
9683 path.setFillType((SkPathFillType) 0);
9684 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9685 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9686 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9687 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9688 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9689 path.close();
9690
9691 SkPath path2(path);
9692 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9693 }
9694 // op end success 1
9695
battleOp344(skiatest::Reporter * reporter,const char * filename)9696 static void battleOp344(skiatest::Reporter* reporter, const char* filename) {
9697 SkPath path;
9698 path.setFillType((SkPathFillType) 1);
9699 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9700 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9701 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9702 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9703 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9704 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9705 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9706 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9707 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9708 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9709 path.close();
9710
9711 SkPath path1(path);
9712 path.reset();
9713 path.setFillType((SkPathFillType) 0);
9714 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9715 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9716 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9717 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9718 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9719 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9720 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9721 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9722 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9723 path.close();
9724
9725 SkPath path2(path);
9726 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9727 }
9728 // op end success 1
9729
battleOp345(skiatest::Reporter * reporter,const char * filename)9730 static void battleOp345(skiatest::Reporter* reporter, const char* filename) {
9731 SkPath path;
9732 path.setFillType((SkPathFillType) 0);
9733 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9734 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9735 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9736 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9737 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9738 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9739 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9740 path.close();
9741
9742 SkPath path1(path);
9743 path.reset();
9744 path.setFillType((SkPathFillType) 0);
9745 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9746 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9747 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9748 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9749 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
9750 path.close();
9751
9752 SkPath path2(path);
9753 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9754 }
9755 // op end success 1
9756
battleOp346(skiatest::Reporter * reporter,const char * filename)9757 static void battleOp346(skiatest::Reporter* reporter, const char* filename) {
9758 SkPath path;
9759 path.setFillType((SkPathFillType) 1);
9760 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9761 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9762 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9763 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9764 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9765 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9766 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
9767 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9768 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9769 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9770 path.close();
9771
9772 SkPath path1(path);
9773 path.reset();
9774 path.setFillType((SkPathFillType) 0);
9775 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9776 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
9777 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
9778 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
9779 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
9780 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
9781 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
9782 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
9783 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
9784 path.close();
9785
9786 SkPath path2(path);
9787 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9788 }
9789 // op end success 1
9790
battleOp347(skiatest::Reporter * reporter,const char * filename)9791 static void battleOp347(skiatest::Reporter* reporter, const char* filename) {
9792 SkPath path;
9793 path.setFillType((SkPathFillType) 0);
9794 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9795 path.cubicTo(SkBits2Float(0x3d570205), SkBits2Float(0xc2a60000), SkBits2Float(0x3dd7026d), SkBits2Float(0xc2a5fffa), SkBits2Float(0x3e2141e6), SkBits2Float(0xc2a5ffed));
9796 path.lineTo(SkBits2Float(0x3de92565), SkBits2Float(0xc26fffe4));
9797 path.cubicTo(SkBits2Float(0x3d9b6fac), SkBits2Float(0xc26ffff9), SkBits2Float(0x3d1b715b), SkBits2Float(0xc2700002), SkBits2Float(0x365677c0), SkBits2Float(0xc2700002));
9798 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9799 path.close();
9800
9801 SkPath path1(path);
9802 path.reset();
9803 path.setFillType((SkPathFillType) 0);
9804 path.moveTo(SkBits2Float(0x3e214267), SkBits2Float(0xc2a5ffec));
9805 path.cubicTo(SkBits2Float(0x3e26a1f2), SkBits2Float(0xc2a5ffeb), SkBits2Float(0x3e2c025b), SkBits2Float(0xc2a5ffe9), SkBits2Float(0x3e3162c6), SkBits2Float(0xc2a5ffe7));
9806 path.lineTo(SkBits2Float(0x3e003af5), SkBits2Float(0xc26fffde));
9807 path.cubicTo(SkBits2Float(0x3df8b0d2), SkBits2Float(0xc26fffe0), SkBits2Float(0x3df0ead2), SkBits2Float(0xc26fffe2), SkBits2Float(0x3de924d4), SkBits2Float(0xc26fffe4));
9808 path.lineTo(SkBits2Float(0x3e214267), SkBits2Float(0xc2a5ffec));
9809 path.close();
9810
9811 SkPath path2(path);
9812 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9813 }
9814 // op end success 1
9815
battleOp348(skiatest::Reporter * reporter,const char * filename)9816 static void battleOp348(skiatest::Reporter* reporter, const char* filename) {
9817 SkPath path;
9818 path.setFillType((SkPathFillType) 1);
9819 path.moveTo(SkBits2Float(0x365677c0), SkBits2Float(0xc2700002));
9820 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9821 path.cubicTo(SkBits2Float(0x3d570205), SkBits2Float(0xc2a60000), SkBits2Float(0x3dd7026d), SkBits2Float(0xc2a5fffa), SkBits2Float(0x3e2141e6), SkBits2Float(0xc2a5ffed));
9822 path.lineTo(SkBits2Float(0x3e0492ca), SkBits2Float(0xc28878a2));
9823 path.lineTo(SkBits2Float(0x3e214267), SkBits2Float(0xc2a5ffec));
9824 path.cubicTo(SkBits2Float(0x3e26a1f2), SkBits2Float(0xc2a5ffeb), SkBits2Float(0x3e2c025b), SkBits2Float(0xc2a5ffe9), SkBits2Float(0x3e3162c6), SkBits2Float(0xc2a5ffe7));
9825 path.lineTo(SkBits2Float(0x3e003af5), SkBits2Float(0xc26fffde));
9826 path.lineTo(SkBits2Float(0x3de92565), SkBits2Float(0xc26fffe4));
9827 path.lineTo(SkBits2Float(0x3de924d4), SkBits2Float(0xc26fffe4));
9828 path.cubicTo(SkBits2Float(0x3d9b6f4b), SkBits2Float(0xc26ffff9), SkBits2Float(0x3d1b70fa), SkBits2Float(0xc2700002), SkBits2Float(0x365677c0), SkBits2Float(0xc2700002));
9829 path.close();
9830
9831 SkPath path1(path);
9832 path.reset();
9833 path.setFillType((SkPathFillType) 0);
9834 path.moveTo(SkBits2Float(0x3e3162a4), SkBits2Float(0xc2a5ffe8));
9835 path.cubicTo(SkBits2Float(0x3e843f51), SkBits2Float(0xc2a5ffd1), SkBits2Float(0x3eafcce9), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3edb5a6f), SkBits2Float(0xc2a5ff6f));
9836 path.lineTo(SkBits2Float(0x3e9e9160), SkBits2Float(0xc26fff2e));
9837 path.cubicTo(SkBits2Float(0x3e7e2aec), SkBits2Float(0xc26fff82), SkBits2Float(0x3e3f3306), SkBits2Float(0xc26fffbd), SkBits2Float(0x3e003b0e), SkBits2Float(0xc26fffdf));
9838 path.lineTo(SkBits2Float(0x3e3162a4), SkBits2Float(0xc2a5ffe8));
9839 path.close();
9840
9841 SkPath path2(path);
9842 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9843 }
9844 // op end success 1
9845
battleOp349(skiatest::Reporter * reporter,const char * filename)9846 static void battleOp349(skiatest::Reporter* reporter, const char* filename) {
9847 SkPath path;
9848 path.setFillType((SkPathFillType) 0);
9849 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9850 path.cubicTo(SkBits2Float(0x3e678fda), SkBits2Float(0xc2a60000), SkBits2Float(0x3ee78f7d), SkBits2Float(0xc2a5ff87), SkBits2Float(0x3f2dab18), SkBits2Float(0xc2a5fe96));
9851 path.lineTo(SkBits2Float(0x3efb15d4), SkBits2Float(0xc26ffdf3));
9852 path.cubicTo(SkBits2Float(0x3ea764ab), SkBits2Float(0xc26fff52), SkBits2Float(0x3e2764f3), SkBits2Float(0xc2700000), SkBits2Float(0x35c73da0), SkBits2Float(0xc2700000));
9853 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9854 path.close();
9855
9856 SkPath path1(path);
9857 path.reset();
9858 path.setFillType((SkPathFillType) 0);
9859 path.moveTo(SkBits2Float(0x3f2daad3), SkBits2Float(0xc2a5fe95));
9860 path.cubicTo(SkBits2Float(0x3f3374d8), SkBits2Float(0xc2a5fe7b), SkBits2Float(0x3f393eae), SkBits2Float(0xc2a5fe62), SkBits2Float(0x3f3f0885), SkBits2Float(0xc2a5fe46));
9861 path.lineTo(SkBits2Float(0x3f0a18b8), SkBits2Float(0xc26ffd84));
9862 path.cubicTo(SkBits2Float(0x3f05e964), SkBits2Float(0xc26ffdad), SkBits2Float(0x3f01ba2f), SkBits2Float(0xc26ffdd1), SkBits2Float(0x3efb15f0), SkBits2Float(0xc26ffdf5));
9863 path.lineTo(SkBits2Float(0x3f2daad3), SkBits2Float(0xc2a5fe95));
9864 path.close();
9865
9866 SkPath path2(path);
9867 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9868 }
9869 // op end success 1
9870
battleOp350(skiatest::Reporter * reporter,const char * filename)9871 static void battleOp350(skiatest::Reporter* reporter, const char* filename) {
9872 SkPath path;
9873 path.setFillType((SkPathFillType) 1);
9874 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9875 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9876 path.cubicTo(SkBits2Float(0x3e678fda), SkBits2Float(0xc2a60000), SkBits2Float(0x3ee78f7d), SkBits2Float(0xc2a5ff87), SkBits2Float(0x3f2dab18), SkBits2Float(0xc2a5fe96));
9877 path.cubicTo(SkBits2Float(0x3f3374d8), SkBits2Float(0xc2a5fe7b), SkBits2Float(0x3f393eae), SkBits2Float(0xc2a5fe62), SkBits2Float(0x3f3f0885), SkBits2Float(0xc2a5fe46));
9878 path.lineTo(SkBits2Float(0x3f0a18b8), SkBits2Float(0xc26ffd84));
9879 path.cubicTo(SkBits2Float(0x3f05e964), SkBits2Float(0xc26ffdad), SkBits2Float(0x3f01ba2f), SkBits2Float(0xc26ffdd1), SkBits2Float(0x3efb15f0), SkBits2Float(0xc26ffdf5));
9880 path.lineTo(SkBits2Float(0x3efb15d4), SkBits2Float(0xc26ffdf3));
9881 path.cubicTo(SkBits2Float(0x3ea764ab), SkBits2Float(0xc26fff52), SkBits2Float(0x3e2764f3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9882 path.close();
9883
9884 SkPath path1(path);
9885 path.reset();
9886 path.setFillType((SkPathFillType) 0);
9887 path.moveTo(SkBits2Float(0x3f3f0899), SkBits2Float(0xc2a5fe48));
9888 path.cubicTo(SkBits2Float(0x3f8e6b81), SkBits2Float(0xc2a5fc98), SkBits2Float(0x3fbd51fb), SkBits2Float(0xc2a5f9aa), SkBits2Float(0x3fec36d3), SkBits2Float(0xc2a5f57e));
9889 path.lineTo(SkBits2Float(0x3faac1d7), SkBits2Float(0xc26ff0d0));
9890 path.cubicTo(SkBits2Float(0x3f88dbac), SkBits2Float(0xc26ff6d7), SkBits2Float(0x3f4de8bb), SkBits2Float(0xc26ffb13), SkBits2Float(0x3f0a18e7), SkBits2Float(0xc26ffd83));
9891 path.lineTo(SkBits2Float(0x3f3f0899), SkBits2Float(0xc2a5fe48));
9892 path.close();
9893
9894 SkPath path2(path);
9895 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9896 }
9897 // op end success 1
9898
battleOp351(skiatest::Reporter * reporter,const char * filename)9899 static void battleOp351(skiatest::Reporter* reporter, const char* filename) {
9900 SkPath path;
9901 path.setFillType((SkPathFillType) 0);
9902 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9903 path.cubicTo(SkBits2Float(0x403f62fc), SkBits2Float(0xc2a60000), SkBits2Float(0x40bf510b), SkBits2Float(0xc2a5ad41), SkBits2Float(0x410f39cc), SkBits2Float(0xc2a50821));
9904 path.lineTo(SkBits2Float(0x40cf12cc), SkBits2Float(0xc26e99a0));
9905 path.cubicTo(SkBits2Float(0x408a4d18), SkBits2Float(0xc26f885f), SkBits2Float(0x400a5a13), SkBits2Float(0xc2700000), SkBits2Float(0x36a6ff52), SkBits2Float(0xc2700000));
9906 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9907 path.close();
9908
9909 SkPath path1(path);
9910 path.reset();
9911 path.setFillType((SkPathFillType) 0);
9912 path.moveTo(SkBits2Float(0x410f39cd), SkBits2Float(0xc2a50820));
9913 path.cubicTo(SkBits2Float(0x4113fb3b), SkBits2Float(0xc2a4f79d), SkBits2Float(0x4118bbf1), SkBits2Float(0xc2a4e648), SkBits2Float(0x411d7be1), SkBits2Float(0xc2a4d421));
9914 path.lineTo(SkBits2Float(0x40e3b008), SkBits2Float(0xc26e4e75));
9915 path.cubicTo(SkBits2Float(0x40dcd206), SkBits2Float(0xc26e68b4), SkBits2Float(0x40d5f2eb), SkBits2Float(0xc26e81c3), SkBits2Float(0x40cf12c6), SkBits2Float(0xc26e99a1));
9916 path.lineTo(SkBits2Float(0x410f39cd), SkBits2Float(0xc2a50820));
9917 path.close();
9918
9919 SkPath path2(path);
9920 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9921 }
9922
battleOp352(skiatest::Reporter * reporter,const char * filename)9923 static void battleOp352(skiatest::Reporter* reporter, const char* filename) {
9924 SkPath path;
9925 path.setFillType((SkPathFillType) 1);
9926 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9927 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9928 path.cubicTo(SkBits2Float(0x3e0b17a8), SkBits2Float(0xc2a60000), SkBits2Float(0x3e8b179e), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a337), SkBits2Float(0xc2a5ff7c));
9929 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d));
9930 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60));
9931 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b));
9932 path.cubicTo(SkBits2Float(0x3ea0e0bb), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd9a1), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d286), SkBits2Float(0xc26fff43));
9933 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42));
9934 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
9935 path.close();
9936
9937 SkPath path1(path);
9938 path.reset();
9939 path.setFillType((SkPathFillType) 0);
9940 path.moveTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61));
9941 path.cubicTo(SkBits2Float(0x3f2b1987), SkBits2Float(0xc2a5fec4), SkBits2Float(0x3f637253), SkBits2Float(0xc2a5fdb6), SkBits2Float(0x3f8de535), SkBits2Float(0xc2a5fc35));
9942 path.lineTo(SkBits2Float(0x3f4d269a), SkBits2Float(0xc26ffa85));
9943 path.cubicTo(SkBits2Float(0x3f246b51), SkBits2Float(0xc26ffcb3), SkBits2Float(0x3ef75f30), SkBits2Float(0xc26ffe3a), SkBits2Float(0x3ea5e737), SkBits2Float(0xc26fff1c));
9944 path.lineTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61));
9945 path.close();
9946
9947 SkPath path2(path);
9948 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9949 }
9950
battleOp1390(skiatest::Reporter * reporter,const char * filename)9951 static void battleOp1390(skiatest::Reporter* reporter, const char* filename) {
9952 SkPath path;
9953 path.setFillType((SkPathFillType) 1);
9954 path.moveTo(SkBits2Float(0xb7240057), SkBits2Float(0xc2700000));
9955 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
9956 path.cubicTo(SkBits2Float(0x420377ff), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a8dc0), SkBits2Float(0xc27e6c2f), SkBits2Float(0x4297d760), SkBits2Float(0xc2062ad2));
9957 path.cubicTo(SkBits2Float(0x42b267e1), SkBits2Float(0xc05e974f), SkBits2Float(0x42a6fcda), SkBits2Float(0x41fcbb92), SkBits2Float(0x42757289), SkBits2Float(0x425f8fa5));
9958 path.cubicTo(SkBits2Float(0x426437a0), SkBits2Float(0x42727a5f), SkBits2Float(0x4250dbaa), SkBits2Float(0x4281ab79), SkBits2Float(0x423bc155), SkBits2Float(0x4288e7b2));
9959 path.lineTo(SkBits2Float(0x4207ba06), SkBits2Float(0x4245ef5e));
9960 path.cubicTo(SkBits2Float(0x4216fb52), SkBits2Float(0x423b7973), SkBits2Float(0x4224f9f2), SkBits2Float(0x422f490a), SkBits2Float(0x42316e8e), SkBits2Float(0x42219c46));
9961 path.cubicTo(SkBits2Float(0x42716d91), SkBits2Float(0x41b6b2c9), SkBits2Float(0x4280f7d1), SkBits2Float(0xc020e8c8), SkBits2Float(0x425b8794), SkBits2Float(0xc1c1fa0e));
9962 path.cubicTo(SkBits2Float(0x42351f87), SkBits2Float(0xc237eb83), SkBits2Float(0x41be1342), SkBits2Float(0xc2700002), SkBits2Float(0xb7240057), SkBits2Float(0xc2700000));
9963 path.close();
9964
9965 SkPath path1(path);
9966 path.reset();
9967 path.setFillType((SkPathFillType) 0);
9968 path.moveTo(SkBits2Float(0x423bc156), SkBits2Float(0x4288e7b2));
9969 path.cubicTo(SkBits2Float(0x418c1984), SkBits2Float(0x42b142da), SkBits2Float(0xc1ac2314), SkBits2Float(0x42af7d21), SkBits2Float(0xc247fd43), SkBits2Float(0x428480ce));
9970 path.cubicTo(SkBits2Float(0xc29cf47f), SkBits2Float(0x423308f3), SkBits2Float(0xc2b411dd), SkBits2Float(0x40ef0242), SkBits2Float(0xc29d6757), SkBits2Float(0xc1d2e807));
9971 path.cubicTo(SkBits2Float(0xc286bcd2), SkBits2Float(0xc270c84c), SkBits2Float(0xc20eb9e2), SkBits2Float(0xc2a5ffaa), SkBits2Float(0xbac6f0ca), SkBits2Float(0xc2a5ffff));
9972 path.lineTo(SkBits2Float(0xba901698), SkBits2Float(0xc2700000));
9973 path.cubicTo(SkBits2Float(0xc1ce59d7), SkBits2Float(0xc26fff83), SkBits2Float(0xc242cd21), SkBits2Float(0xc22e0f3f), SkBits2Float(0xc263924f), SkBits2Float(0xc1987661));
9974 path.cubicTo(SkBits2Float(0xc2822bbf), SkBits2Float(0x40acc6fd), SkBits2Float(0xc262ec43), SkBits2Float(0x42016c3b), SkBits2Float(0xc2109210), SkBits2Float(0x423f921c));
9975 path.cubicTo(SkBits2Float(0xc178df72), SkBits2Float(0x427db7fc), SkBits2Float(0x414a8dba), SkBits2Float(0x428023fd), SkBits2Float(0x4207ba05), SkBits2Float(0x4245ef60));
9976 path.lineTo(SkBits2Float(0x423bc156), SkBits2Float(0x4288e7b2));
9977 path.close();
9978
9979 SkPath path2(path);
9980 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
9981 }
9982 // op end success 1
9983
battleOp1391(skiatest::Reporter * reporter,const char * filename)9984 static void battleOp1391(skiatest::Reporter* reporter, const char* filename) {
9985 SkPath path;
9986 path.setFillType((SkPathFillType) 0);
9987 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9988 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
9989 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
9990 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
9991 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
9992 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
9993 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
9994 path.close();
9995
9996 SkPath path1(path);
9997 path.reset();
9998 path.setFillType((SkPathFillType) 0);
9999 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10000 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10001 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10002 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10003 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10004 path.close();
10005
10006 SkPath path2(path);
10007 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10008 }
10009 // op end success 1
10010
battleOp1392(skiatest::Reporter * reporter,const char * filename)10011 static void battleOp1392(skiatest::Reporter* reporter, const char* filename) {
10012 SkPath path;
10013 path.setFillType((SkPathFillType) 1);
10014 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10015 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10016 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10017 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10018 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10019 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10020 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10021 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10022 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10023 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10024 path.close();
10025
10026 SkPath path1(path);
10027 path.reset();
10028 path.setFillType((SkPathFillType) 0);
10029 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10030 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
10031 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
10032 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
10033 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
10034 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
10035 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
10036 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10037 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10038 path.close();
10039
10040 SkPath path2(path);
10041 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10042 }
10043 // op end success 1
10044
battleOp1393(skiatest::Reporter * reporter,const char * filename)10045 static void battleOp1393(skiatest::Reporter* reporter, const char* filename) {
10046 SkPath path;
10047 path.setFillType((SkPathFillType) 0);
10048 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10049 path.cubicTo(SkBits2Float(0x3c436965), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3cc36072), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d128619), SkBits2Float(0xc2a5fffe));
10050 path.lineTo(SkBits2Float(0x3cd3db06), SkBits2Float(0xc26fffff));
10051 path.cubicTo(SkBits2Float(0x3c8d3d03), SkBits2Float(0xc2700000), SkBits2Float(0x3c0d4407), SkBits2Float(0xc2700000), SkBits2Float(0x36606a00), SkBits2Float(0xc2700000));
10052 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10053 path.close();
10054
10055 SkPath path1(path);
10056 path.reset();
10057 path.setFillType((SkPathFillType) 0);
10058 path.moveTo(SkBits2Float(0x3d12888d), SkBits2Float(0xc2a5ffff));
10059 path.cubicTo(SkBits2Float(0x3d176d55), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d1c4dcb), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d212e40), SkBits2Float(0xc2a5ffff));
10060 path.lineTo(SkBits2Float(0x3ce90a84), SkBits2Float(0xc26ffffe));
10061 path.cubicTo(SkBits2Float(0x3ce1ffb6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3cdaedb6), SkBits2Float(0xc26fffff), SkBits2Float(0x3cd3dbb7), SkBits2Float(0xc26fffff));
10062 path.lineTo(SkBits2Float(0x3d12888d), SkBits2Float(0xc2a5ffff));
10063 path.close();
10064
10065 SkPath path2(path);
10066 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10067 }
10068 // op end success 1
10069
battleOp1394(skiatest::Reporter * reporter,const char * filename)10070 static void battleOp1394(skiatest::Reporter* reporter, const char* filename) {
10071 SkPath path;
10072 path.setFillType((SkPathFillType) 1);
10073 path.moveTo(SkBits2Float(0x36606a00), SkBits2Float(0xc2700000));
10074 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10075 path.cubicTo(SkBits2Float(0x3c436965), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3cc36072), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d128619), SkBits2Float(0xc2a5fffe));
10076 path.lineTo(SkBits2Float(0x3d12888d), SkBits2Float(0xc2a5ffff));
10077 path.lineTo(SkBits2Float(0x3d212e40), SkBits2Float(0xc2a5ffff));
10078 path.lineTo(SkBits2Float(0x3ce90a84), SkBits2Float(0xc26ffffe));
10079 path.cubicTo(SkBits2Float(0x3ce1ffb6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3cdaedb6), SkBits2Float(0xc26fffff), SkBits2Float(0x3cd3db06), SkBits2Float(0xc26fffff));
10080 path.cubicTo(SkBits2Float(0x3c8d3d03), SkBits2Float(0xc2700000), SkBits2Float(0x3c0d4407), SkBits2Float(0xc2700000), SkBits2Float(0x36606a00), SkBits2Float(0xc2700000));
10081 path.close();
10082
10083 SkPath path1(path);
10084 path.reset();
10085 path.setFillType((SkPathFillType) 0);
10086 path.moveTo(SkBits2Float(0x3d212fd0), SkBits2Float(0xc2a5ffff));
10087 path.cubicTo(SkBits2Float(0x3d705530), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3d9fbf82), SkBits2Float(0xc2a5fffc), SkBits2Float(0x3dc7546b), SkBits2Float(0xc2a5fffa));
10088 path.lineTo(SkBits2Float(0x3d901696), SkBits2Float(0xc26ffff5));
10089 path.cubicTo(SkBits2Float(0x3d66f230), SkBits2Float(0xc26ffff9), SkBits2Float(0x3d2dbab1), SkBits2Float(0xc26ffffc), SkBits2Float(0x3ce90664), SkBits2Float(0xc26ffffe));
10090 path.lineTo(SkBits2Float(0x3d212fd0), SkBits2Float(0xc2a5ffff));
10091 path.close();
10092
10093 SkPath path2(path);
10094 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10095 }
10096 // op end success 1
10097
battleOp1395(skiatest::Reporter * reporter,const char * filename)10098 static void battleOp1395(skiatest::Reporter* reporter, const char* filename) {
10099 SkPath path;
10100 path.setFillType((SkPathFillType) 0);
10101 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10102 path.cubicTo(SkBits2Float(0x3e06023f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e860192), SkBits2Float(0xc2a5ffd6), SkBits2Float(0x3ec901db), SkBits2Float(0xc2a5ff85));
10103 path.lineTo(SkBits2Float(0x3e914e16), SkBits2Float(0xc26fff50));
10104 path.cubicTo(SkBits2Float(0x3e41bddf), SkBits2Float(0xc26fffc5), SkBits2Float(0x3dc1be4c), SkBits2Float(0xc26fffff), SkBits2Float(0x35c55da0), SkBits2Float(0xc26fffff));
10105 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10106 path.close();
10107
10108 SkPath path1(path);
10109 path.reset();
10110 path.setFillType((SkPathFillType) 0);
10111 path.moveTo(SkBits2Float(0x3ec9015b), SkBits2Float(0xc2a5ff86));
10112 path.cubicTo(SkBits2Float(0x3ecfb4f0), SkBits2Float(0xc2a5ff7d), SkBits2Float(0x3ed66842), SkBits2Float(0xc2a5ff75), SkBits2Float(0x3edd1b92), SkBits2Float(0xc2a5ff6c));
10113 path.lineTo(SkBits2Float(0x3e9fd5de), SkBits2Float(0xc26fff2b));
10114 path.cubicTo(SkBits2Float(0x3e9afe3a), SkBits2Float(0xc26fff39), SkBits2Float(0x3e96263d), SkBits2Float(0xc26fff45), SkBits2Float(0x3e914e41), SkBits2Float(0xc26fff51));
10115 path.lineTo(SkBits2Float(0x3ec9015b), SkBits2Float(0xc2a5ff86));
10116 path.close();
10117
10118 SkPath path2(path);
10119 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10120 }
10121 // op end success 1
10122
battleOp1396(skiatest::Reporter * reporter,const char * filename)10123 static void battleOp1396(skiatest::Reporter* reporter, const char* filename) {
10124 SkPath path;
10125 path.setFillType((SkPathFillType) 1);
10126 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
10127 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10128 path.cubicTo(SkBits2Float(0x3e0601e9), SkBits2Float(0xc2a60000), SkBits2Float(0x3e86013c), SkBits2Float(0xc2a5ffd6), SkBits2Float(0x3ec9015a), SkBits2Float(0xc2a5ff85));
10129 path.lineTo(SkBits2Float(0x3ec9015b), SkBits2Float(0xc2a5ff86));
10130 path.cubicTo(SkBits2Float(0x3ecfb4f0), SkBits2Float(0xc2a5ff7d), SkBits2Float(0x3ed66842), SkBits2Float(0xc2a5ff75), SkBits2Float(0x3edd1b92), SkBits2Float(0xc2a5ff6c));
10131 path.lineTo(SkBits2Float(0x3e9fd5de), SkBits2Float(0xc26fff2b));
10132 path.cubicTo(SkBits2Float(0x3e9afe3a), SkBits2Float(0xc26fff39), SkBits2Float(0x3e96263d), SkBits2Float(0xc26fff45), SkBits2Float(0x3e914e16), SkBits2Float(0xc26fff50));
10133 path.cubicTo(SkBits2Float(0x3e41bddf), SkBits2Float(0xc26fffc5), SkBits2Float(0x3dc1be4c), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
10134 path.close();
10135
10136 SkPath path1(path);
10137 path.reset();
10138 path.setFillType((SkPathFillType) 0);
10139 path.moveTo(SkBits2Float(0x3edd1b0d), SkBits2Float(0xc2a5ff6d));
10140 path.cubicTo(SkBits2Float(0x3f24d70e), SkBits2Float(0xc2a5fedc), SkBits2Float(0x3f5b204e), SkBits2Float(0xc2a5fde1), SkBits2Float(0x3f88b475), SkBits2Float(0xc2a5fc7b));
10141 path.lineTo(SkBits2Float(0x3f45a57e), SkBits2Float(0xc26ffaea));
10142 path.cubicTo(SkBits2Float(0x3f1e67a6), SkBits2Float(0xc26ffcf1), SkBits2Float(0x3eee52e7), SkBits2Float(0xc26ffe5c), SkBits2Float(0x3e9fd606), SkBits2Float(0xc26fff2d));
10143 path.lineTo(SkBits2Float(0x3edd1b0d), SkBits2Float(0xc2a5ff6d));
10144 path.close();
10145
10146 SkPath path2(path);
10147 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10148 }
10149
battleOp2193(skiatest::Reporter * reporter,const char * filename)10150 static void battleOp2193(skiatest::Reporter* reporter, const char* filename) {
10151 SkPath path;
10152 path.setFillType((SkPathFillType) 0);
10153 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10154 path.cubicTo(SkBits2Float(0x3e3881bc), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88238), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19));
10155 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2));
10156 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000));
10157 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10158 path.close();
10159
10160 SkPath path1(path);
10161 path.reset();
10162 path.setFillType((SkPathFillType) 0);
10163 path.moveTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19));
10164 path.cubicTo(SkBits2Float(0x3f0efe46), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b44), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9));
10165 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c));
10166 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2));
10167 path.lineTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19));
10168 path.close();
10169
10170 SkPath path2(path);
10171 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10172 }
10173 // op end success 1
10174
battleOp2194(skiatest::Reporter * reporter,const char * filename)10175 static void battleOp2194(skiatest::Reporter* reporter, const char* filename) {
10176 SkPath path;
10177 path.setFillType((SkPathFillType) 1);
10178 path.moveTo(SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000));
10179 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10180 path.cubicTo(SkBits2Float(0x3e3881ab), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88227), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19));
10181 path.lineTo(SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19));
10182 path.cubicTo(SkBits2Float(0x3f0efe4f), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b48), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9));
10183 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c));
10184 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2));
10185 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2));
10186 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000));
10187 path.close();
10188
10189 SkPath path1(path);
10190 path.reset();
10191 path.setFillType((SkPathFillType) 0);
10192 path.moveTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9));
10193 path.cubicTo(SkBits2Float(0x3f62f7a2), SkBits2Float(0xc2a5fdd7), SkBits2Float(0x3f96db12), SkBits2Float(0xc2a5fbfa), SkBits2Float(0x3fbc3981), SkBits2Float(0xc2a5f954));
10194 path.lineTo(SkBits2Float(0x3f8810cc), SkBits2Float(0xc26ff65b));
10195 path.cubicTo(SkBits2Float(0x3f5a1a86), SkBits2Float(0xc26ffa2f), SkBits2Float(0x3f241256), SkBits2Float(0xc26ffcdf), SkBits2Float(0x3edc1312), SkBits2Float(0xc26ffe6c));
10196 path.lineTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9));
10197 path.close();
10198
10199 SkPath path2(path);
10200 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10201 }
10202
battleOp3368(skiatest::Reporter * reporter,const char * filename)10203 static void battleOp3368(skiatest::Reporter* reporter, const char* filename) {
10204 SkPath path;
10205 path.setFillType((SkPathFillType) 1);
10206 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10207 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10208 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10209 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10210 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10211 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10212 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10213 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10214 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10215 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10216 path.close();
10217
10218 SkPath path1(path);
10219 path.reset();
10220 path.setFillType((SkPathFillType) 0);
10221 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10222 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
10223 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
10224 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
10225 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
10226 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
10227 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
10228 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10229 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10230 path.close();
10231
10232 SkPath path2(path);
10233 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10234 }
10235 // op end success 1
10236
battleOp3369(skiatest::Reporter * reporter,const char * filename)10237 static void battleOp3369(skiatest::Reporter* reporter, const char* filename) {
10238 SkPath path;
10239 path.setFillType((SkPathFillType) 0);
10240 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10241 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10242 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10243 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10244 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10245 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
10246 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10247 path.close();
10248
10249 SkPath path1(path);
10250 path.reset();
10251 path.setFillType((SkPathFillType) 0);
10252 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10253 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10254 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10255 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10256 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10257 path.close();
10258
10259 SkPath path2(path);
10260 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10261 }
10262 // op end success 1
10263
battleOp3370(skiatest::Reporter * reporter,const char * filename)10264 static void battleOp3370(skiatest::Reporter* reporter, const char* filename) {
10265 SkPath path;
10266 path.setFillType((SkPathFillType) 1);
10267 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10268 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10269 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10270 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10271 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10272 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10273 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10274 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10275 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10276 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10277 path.close();
10278
10279 SkPath path1(path);
10280 path.reset();
10281 path.setFillType((SkPathFillType) 0);
10282 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10283 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
10284 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
10285 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
10286 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
10287 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
10288 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
10289 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10290 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10291 path.close();
10292
10293 SkPath path2(path);
10294 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10295 }
10296 // op end success 1
10297
battleOp3371(skiatest::Reporter * reporter,const char * filename)10298 static void battleOp3371(skiatest::Reporter* reporter, const char* filename) {
10299 SkPath path;
10300 path.setFillType((SkPathFillType) 0);
10301 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10302 path.cubicTo(SkBits2Float(0x3c85f8a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d05fda5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d48fefa), SkBits2Float(0xc2a5fffd));
10303 path.lineTo(SkBits2Float(0x3d114e3a), SkBits2Float(0xc26ffffd));
10304 path.cubicTo(SkBits2Float(0x3cc1c2c0), SkBits2Float(0xc26fffff), SkBits2Float(0x3c41c57e), SkBits2Float(0xc26fffff), SkBits2Float(0x35afaa00), SkBits2Float(0xc26fffff));
10305 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10306 path.close();
10307
10308 SkPath path1(path);
10309 path.reset();
10310 path.setFillType((SkPathFillType) 0);
10311 path.moveTo(SkBits2Float(0x3d49018c), SkBits2Float(0xc2a5fffe));
10312 path.cubicTo(SkBits2Float(0x3d4fb7df), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5667bf), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5d179f), SkBits2Float(0xc2a5fffd));
10313 path.lineTo(SkBits2Float(0x3d1fd60d), SkBits2Float(0xc26ffffd));
10314 path.cubicTo(SkBits2Float(0x3d1afde4), SkBits2Float(0xc26fffff), SkBits2Float(0x3d162864), SkBits2Float(0xc26fffff), SkBits2Float(0x3d1152e4), SkBits2Float(0xc26fffff));
10315 path.lineTo(SkBits2Float(0x3d49018c), SkBits2Float(0xc2a5fffe));
10316 path.close();
10317
10318 SkPath path2(path);
10319 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10320 }
10321 // op end success 1
10322
battleOp3372(skiatest::Reporter * reporter,const char * filename)10323 static void battleOp3372(skiatest::Reporter* reporter, const char* filename) {
10324 SkPath path;
10325 path.setFillType((SkPathFillType) 1);
10326 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
10327 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10328 path.cubicTo(SkBits2Float(0x3c85f8a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d05fda5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d48fefa), SkBits2Float(0xc2a5fffd));
10329 path.lineTo(SkBits2Float(0x3d49018c), SkBits2Float(0xc2a5fffe));
10330 path.cubicTo(SkBits2Float(0x3d4fb7df), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5667bf), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5d179f), SkBits2Float(0xc2a5fffd));
10331 path.lineTo(SkBits2Float(0x3d1fd60d), SkBits2Float(0xc26ffffd));
10332 path.cubicTo(SkBits2Float(0x3d1afde4), SkBits2Float(0xc26fffff), SkBits2Float(0x3d162864), SkBits2Float(0xc26fffff), SkBits2Float(0x3d1152e4), SkBits2Float(0xc26fffff));
10333 path.lineTo(SkBits2Float(0x3d114e3a), SkBits2Float(0xc26ffffd));
10334 path.cubicTo(SkBits2Float(0x3cc1c2c0), SkBits2Float(0xc26fffff), SkBits2Float(0x3c41c57e), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
10335 path.close();
10336
10337 SkPath path1(path);
10338 path.reset();
10339 path.setFillType((SkPathFillType) 0);
10340 path.moveTo(SkBits2Float(0x3d5d1b4e), SkBits2Float(0xc2a5fffe));
10341 path.cubicTo(SkBits2Float(0x3da4d661), SkBits2Float(0xc2a5fffc), SkBits2Float(0x3ddb1fb1), SkBits2Float(0xc2a5fff8), SkBits2Float(0x3e08b47e), SkBits2Float(0xc2a5fff2));
10342 path.lineTo(SkBits2Float(0x3dc5a6e0), SkBits2Float(0xc26fffec));
10343 path.cubicTo(SkBits2Float(0x3d9e671d), SkBits2Float(0xc26ffff6), SkBits2Float(0x3d6e51bc), SkBits2Float(0xc26ffffb), SkBits2Float(0x3d1fd53d), SkBits2Float(0xc26ffffe));
10344 path.lineTo(SkBits2Float(0x3d5d1b4e), SkBits2Float(0xc2a5fffe));
10345 path.close();
10346
10347 SkPath path2(path);
10348 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10349 }
10350
battleOp4290(skiatest::Reporter * reporter,const char * filename)10351 static void battleOp4290(skiatest::Reporter* reporter, const char* filename) {
10352 SkPath path;
10353 path.setFillType((SkPathFillType) 1);
10354 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10355 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10356 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10357 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10358 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10359 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10360 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10361 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10362 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10363 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10364 path.close();
10365
10366 SkPath path1(path);
10367 path.reset();
10368 path.setFillType((SkPathFillType) 0);
10369 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10370 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
10371 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
10372 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
10373 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
10374 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
10375 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
10376 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10377 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10378 path.close();
10379
10380 SkPath path2(path);
10381 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10382 }
10383 // op end success 1
10384
battleOp4291(skiatest::Reporter * reporter,const char * filename)10385 static void battleOp4291(skiatest::Reporter* reporter, const char* filename) {
10386 SkPath path;
10387 path.setFillType((SkPathFillType) 0);
10388 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10389 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10390 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10391 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10392 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10393 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
10394 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10395 path.close();
10396
10397 SkPath path1(path);
10398 path.reset();
10399 path.setFillType((SkPathFillType) 0);
10400 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10401 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10402 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10403 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10404 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10405 path.close();
10406
10407 SkPath path2(path);
10408 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10409 }
10410 // op end success 1
10411
battleOp4292(skiatest::Reporter * reporter,const char * filename)10412 static void battleOp4292(skiatest::Reporter* reporter, const char* filename) {
10413 SkPath path;
10414 path.setFillType((SkPathFillType) 1);
10415 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10416 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10417 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10418 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10419 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10420 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10421 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10422 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10423 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10424 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10425 path.close();
10426
10427 SkPath path1(path);
10428 path.reset();
10429 path.setFillType((SkPathFillType) 0);
10430 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10431 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
10432 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
10433 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
10434 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
10435 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
10436 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
10437 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10438 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10439 path.close();
10440
10441 SkPath path2(path);
10442 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10443 }
10444 // op end success 1
10445
battleOp4293(skiatest::Reporter * reporter,const char * filename)10446 static void battleOp4293(skiatest::Reporter* reporter, const char* filename) {
10447 SkPath path;
10448 path.setFillType((SkPathFillType) 0);
10449 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10450 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10451 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10452 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10453 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10454 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000));
10455 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10456 path.close();
10457
10458 SkPath path1(path);
10459 path.reset();
10460 path.setFillType((SkPathFillType) 0);
10461 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10462 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10463 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10464 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10465 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012));
10466 path.close();
10467
10468 SkPath path2(path);
10469 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10470 }
10471 // op end success 1
10472
battleOp4294(skiatest::Reporter * reporter,const char * filename)10473 static void battleOp4294(skiatest::Reporter* reporter, const char* filename) {
10474 SkPath path;
10475 path.setFillType((SkPathFillType) 1);
10476 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10477 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10478 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f));
10479 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011));
10480 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10481 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10482 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94));
10483 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94));
10484 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac));
10485 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10486 path.close();
10487
10488 SkPath path1(path);
10489 path.reset();
10490 path.setFillType((SkPathFillType) 0);
10491 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10492 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083));
10493 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61));
10494 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff));
10495 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000));
10496 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810));
10497 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4));
10498 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0));
10499 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0));
10500 path.close();
10501
10502 SkPath path2(path);
10503 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10504 }
10505 // op end success 1
10506
battleOp4295(skiatest::Reporter * reporter,const char * filename)10507 static void battleOp4295(skiatest::Reporter* reporter, const char* filename) {
10508 SkPath path;
10509 path.setFillType((SkPathFillType) 0);
10510 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10511 path.cubicTo(SkBits2Float(0x3e3881bc), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88238), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19));
10512 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2));
10513 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000));
10514 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10515 path.close();
10516
10517 SkPath path1(path);
10518 path.reset();
10519 path.setFillType((SkPathFillType) 0);
10520 path.moveTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19));
10521 path.cubicTo(SkBits2Float(0x3f0efe46), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b44), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9));
10522 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c));
10523 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2));
10524 path.lineTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19));
10525 path.close();
10526
10527 SkPath path2(path);
10528 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10529 }
10530 // op end success 1
10531
battleOp4296(skiatest::Reporter * reporter,const char * filename)10532 static void battleOp4296(skiatest::Reporter* reporter, const char* filename) {
10533 SkPath path;
10534 path.setFillType((SkPathFillType) 1);
10535 path.moveTo(SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000));
10536 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10537 path.cubicTo(SkBits2Float(0x3e3881ab), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88227), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19));
10538 path.lineTo(SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19));
10539 path.cubicTo(SkBits2Float(0x3f0efe4f), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b48), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9));
10540 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c));
10541 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2));
10542 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2));
10543 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000));
10544 path.close();
10545
10546 SkPath path1(path);
10547 path.reset();
10548 path.setFillType((SkPathFillType) 0);
10549 path.moveTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9));
10550 path.cubicTo(SkBits2Float(0x3f62f7a2), SkBits2Float(0xc2a5fdd7), SkBits2Float(0x3f96db12), SkBits2Float(0xc2a5fbfa), SkBits2Float(0x3fbc3981), SkBits2Float(0xc2a5f954));
10551 path.lineTo(SkBits2Float(0x3f8810cc), SkBits2Float(0xc26ff65b));
10552 path.cubicTo(SkBits2Float(0x3f5a1a86), SkBits2Float(0xc26ffa2f), SkBits2Float(0x3f241256), SkBits2Float(0xc26ffcdf), SkBits2Float(0x3edc1312), SkBits2Float(0xc26ffe6c));
10553 path.lineTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9));
10554 path.close();
10555
10556 SkPath path2(path);
10557 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10558 }
10559
battleOp5193(skiatest::Reporter * reporter,const char * filename)10560 static void battleOp5193(skiatest::Reporter* reporter, const char* filename) {
10561 SkPath path;
10562 path.setFillType((SkPathFillType) 0);
10563 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10564 path.cubicTo(SkBits2Float(0x3e0b17ea), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e8b17df), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a399), SkBits2Float(0xc2a5ff7c));
10565 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42));
10566 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x340ae940), SkBits2Float(0xc2700000));
10567 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10568 path.close();
10569
10570 SkPath path1(path);
10571 path.reset();
10572 path.setFillType((SkPathFillType) 0);
10573 path.moveTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d));
10574 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60));
10575 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b));
10576 path.cubicTo(SkBits2Float(0x3ea0e0aa), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd97e), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d252), SkBits2Float(0xc26fff43));
10577 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d));
10578 path.close();
10579
10580 SkPath path2(path);
10581 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10582 }
10583 // op end success 1
10584
battleOp5194(skiatest::Reporter * reporter,const char * filename)10585 static void battleOp5194(skiatest::Reporter* reporter, const char* filename) {
10586 SkPath path;
10587 path.setFillType((SkPathFillType) 1);
10588 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10589 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10590 path.cubicTo(SkBits2Float(0x3e0b17a8), SkBits2Float(0xc2a60000), SkBits2Float(0x3e8b179e), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a337), SkBits2Float(0xc2a5ff7c));
10591 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d));
10592 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60));
10593 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b));
10594 path.cubicTo(SkBits2Float(0x3ea0e0bb), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd9a1), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d286), SkBits2Float(0xc26fff43));
10595 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42));
10596 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10597 path.close();
10598
10599 SkPath path1(path);
10600 path.reset();
10601 path.setFillType((SkPathFillType) 0);
10602 path.moveTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61));
10603 path.cubicTo(SkBits2Float(0x3f2b1987), SkBits2Float(0xc2a5fec4), SkBits2Float(0x3f637253), SkBits2Float(0xc2a5fdb6), SkBits2Float(0x3f8de535), SkBits2Float(0xc2a5fc35));
10604 path.lineTo(SkBits2Float(0x3f4d269a), SkBits2Float(0xc26ffa85));
10605 path.cubicTo(SkBits2Float(0x3f246b51), SkBits2Float(0xc26ffcb3), SkBits2Float(0x3ef75f30), SkBits2Float(0xc26ffe3a), SkBits2Float(0x3ea5e737), SkBits2Float(0xc26fff1c));
10606 path.lineTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61));
10607 path.close();
10608
10609 SkPath path2(path);
10610 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10611 }
10612
battleOp402(skiatest::Reporter * reporter,const char * filename)10613 static void battleOp402(skiatest::Reporter* reporter, const char* filename) {
10614 SkPath path;
10615 path.setFillType((SkPathFillType) 1);
10616 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10617 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10618 path.cubicTo(SkBits2Float(0x3e0b17a8), SkBits2Float(0xc2a60000), SkBits2Float(0x3e8b179e), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a337), SkBits2Float(0xc2a5ff7c));
10619 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d));
10620 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60));
10621 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b));
10622 path.cubicTo(SkBits2Float(0x3ea0e0bb), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd9a1), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d286), SkBits2Float(0xc26fff43));
10623 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42));
10624 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000));
10625 path.close();
10626
10627 SkPath path1(path);
10628 path.reset();
10629 path.setFillType((SkPathFillType) 0);
10630 path.moveTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61));
10631 path.cubicTo(SkBits2Float(0x3f2b1987), SkBits2Float(0xc2a5fec4), SkBits2Float(0x3f637253), SkBits2Float(0xc2a5fdb6), SkBits2Float(0x3f8de535), SkBits2Float(0xc2a5fc35));
10632 path.lineTo(SkBits2Float(0x3f4d269a), SkBits2Float(0xc26ffa85));
10633 path.cubicTo(SkBits2Float(0x3f246b51), SkBits2Float(0xc26ffcb3), SkBits2Float(0x3ef75f30), SkBits2Float(0xc26ffe3a), SkBits2Float(0x3ea5e737), SkBits2Float(0xc26fff1c));
10634 path.lineTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61));
10635 path.close();
10636
10637 SkPath path2(path);
10638 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10639 }
10640
battleOp6000(skiatest::Reporter * reporter,const char * filename)10641 static void battleOp6000(skiatest::Reporter* reporter, const char* filename) {
10642 SkPath path;
10643 path.setFillType((SkPathFillType) 0);
10644 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10645 path.cubicTo(SkBits2Float(0x3c9b2383), SkBits2Float(0xc2a60000), SkBits2Float(0x3d1b200b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d68ae54), SkBits2Float(0xc2a5fffd));
10646 path.lineTo(SkBits2Float(0x3d283599), SkBits2Float(0xc26ffffc));
10647 path.cubicTo(SkBits2Float(0x3ce049ca), SkBits2Float(0xc26ffffe), SkBits2Float(0x3c604794), SkBits2Float(0xc26fffff), SkBits2Float(0xb58d9000), SkBits2Float(0xc26fffff));
10648 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000));
10649 path.close();
10650
10651 SkPath path1(path);
10652 path.reset();
10653 path.setFillType((SkPathFillType) 0);
10654 path.moveTo(SkBits2Float(0x3d68b08b), SkBits2Float(0xc2a5fffd));
10655 path.cubicTo(SkBits2Float(0x3d707589), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d783329), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d7ff0c9), SkBits2Float(0xc2a5fffd));
10656 path.lineTo(SkBits2Float(0x3d3907c2), SkBits2Float(0xc26ffffc));
10657 path.cubicTo(SkBits2Float(0x3d336bee), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d2dd36e), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d283aee), SkBits2Float(0xc26ffffd));
10658 path.lineTo(SkBits2Float(0x3d68b08b), SkBits2Float(0xc2a5fffd));
10659 path.close();
10660
10661 SkPath path2(path);
10662 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10663 }
10664
battleOp6001(skiatest::Reporter * reporter,const char * filename)10665 static void battleOp6001(skiatest::Reporter* reporter, const char* filename) {
10666 SkPath path;
10667 path.setFillType((SkPathFillType) 1);
10668 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
10669 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000));
10670 path.cubicTo(SkBits2Float(0x3c9b2383), SkBits2Float(0xc2a60000), SkBits2Float(0x3d1b200b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d68ae54), SkBits2Float(0xc2a5fffd));
10671 path.lineTo(SkBits2Float(0x3d7ff0c9), SkBits2Float(0xc2a5fffd));
10672 path.lineTo(SkBits2Float(0x3d3907c2), SkBits2Float(0xc26ffffc));
10673 path.cubicTo(SkBits2Float(0x3d336bee), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d2dd36e), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d283aee), SkBits2Float(0xc26ffffd));
10674 path.lineTo(SkBits2Float(0x3d283599), SkBits2Float(0xc26ffffc));
10675 path.cubicTo(SkBits2Float(0x3ce049ca), SkBits2Float(0xc26ffffe), SkBits2Float(0x3c604794), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff));
10676 path.close();
10677
10678 SkPath path1(path);
10679 path.reset();
10680 path.setFillType((SkPathFillType) 0);
10681 path.moveTo(SkBits2Float(0x3d7ff566), SkBits2Float(0xc2a5fffd));
10682 path.cubicTo(SkBits2Float(0x3dbed1a5), SkBits2Float(0xc2a5fffa), SkBits2Float(0x3dfda9cc), SkBits2Float(0xc2a5fff4), SkBits2Float(0x3e1e40f8), SkBits2Float(0xc2a5ffed));
10683 path.lineTo(SkBits2Float(0x3de4ce81), SkBits2Float(0xc26fffe5));
10684 path.cubicTo(SkBits2Float(0x3db75eff), SkBits2Float(0xc26ffff0), SkBits2Float(0x3d89f101), SkBits2Float(0xc26ffff8), SkBits2Float(0x3d390604), SkBits2Float(0xc26ffffc));
10685 path.lineTo(SkBits2Float(0x3d7ff566), SkBits2Float(0xc2a5fffd));
10686 path.close();
10687
10688 SkPath path2(path);
10689 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename);
10690 }
10691
10692 static void (*firstTest)(skiatest::Reporter* , const char* filename) = battleOp183;
10693 static void (*stopTest)(skiatest::Reporter* , const char* filename) = nullptr;
10694
10695 static struct TestDesc tests[] = {
10696 TEST(battleOp1),
10697 TEST(battleOp2),
10698 TEST(battleOp3),
10699 TEST(battleOp4),
10700 TEST(battleOp5),
10701 TEST(battleOp6),
10702 TEST(battleOp7),
10703 TEST(battleOp8),
10704 TEST(battleOp9),
10705 TEST(battleOp10),
10706
10707 TEST(battleOp11),
10708 TEST(battleOp12),
10709 TEST(battleOp13),
10710 TEST(battleOp14),
10711 TEST(battleOp15),
10712 TEST(battleOp16),
10713 TEST(battleOp17),
10714 TEST(battleOp18),
10715 TEST(battleOp19),
10716 TEST(battleOp20),
10717
10718 TEST(battleOp21),
10719 TEST(battleOp22),
10720 TEST(battleOp23),
10721 TEST(battleOp24),
10722 TEST(battleOp25),
10723 TEST(battleOp26),
10724 TEST(battleOp27),
10725 TEST(battleOp28),
10726 TEST(battleOp29),
10727 TEST(battleOp30),
10728
10729 TEST(battleOp31),
10730 TEST(battleOp32),
10731 TEST(battleOp33),
10732 TEST(battleOp34),
10733 TEST(battleOp35),
10734 TEST(battleOp36),
10735 TEST(battleOp37),
10736 TEST(battleOp38),
10737 TEST(battleOp39),
10738 TEST(battleOp40),
10739
10740 TEST(battleOp41),
10741 TEST(battleOp42),
10742 TEST(battleOp43),
10743 TEST(battleOp44),
10744 TEST(battleOp45),
10745 TEST(battleOp47),
10746 TEST(battleOp48),
10747 TEST(battleOp49),
10748 TEST(battleOp50),
10749
10750 TEST(battleOp51),
10751 TEST(battleOp52),
10752 TEST(battleOp53),
10753 TEST(battleOp55),
10754 TEST(battleOp56),
10755 TEST(battleOp57),
10756 TEST(battleOp58),
10757 TEST(battleOp59),
10758 TEST(battleOp60),
10759
10760 TEST(battleOp61),
10761 TEST(battleOp62),
10762 TEST(battleOp64),
10763 TEST(battleOp65),
10764 TEST(battleOp66),
10765 TEST(battleOp67),
10766 TEST(battleOp68),
10767 TEST(battleOp69),
10768 TEST(battleOp70),
10769
10770 TEST(battleOp71),
10771 TEST(battleOp72),
10772 TEST(battleOp73),
10773 TEST(battleOp74),
10774 TEST(battleOp75),
10775 TEST(battleOp76),
10776 TEST(battleOp77),
10777 TEST(battleOp78),
10778 TEST(battleOp79),
10779 TEST(battleOp80),
10780
10781 TEST(battleOp81),
10782 TEST(battleOp82),
10783 TEST(battleOp83),
10784 TEST(battleOp84),
10785 TEST(battleOp85),
10786 TEST(battleOp86),
10787 TEST(battleOp87),
10788 TEST(battleOp88),
10789 TEST(battleOp89),
10790 TEST(battleOp90),
10791
10792 TEST(battleOp91),
10793 TEST(battleOp92),
10794 TEST(battleOp93),
10795 TEST(battleOp94),
10796 TEST(battleOp95),
10797 TEST(battleOp96),
10798 TEST(battleOp97),
10799 TEST(battleOp98),
10800 TEST(battleOp99),
10801 TEST(battleOp100),
10802
10803 TEST(battleOp101),
10804 TEST(battleOp102),
10805 TEST(battleOp103),
10806 TEST(battleOp104),
10807 TEST(battleOp105),
10808 TEST(battleOp106),
10809 TEST(battleOp107),
10810 TEST(battleOp108),
10811 TEST(battleOp109),
10812 TEST(battleOp110),
10813
10814 TEST(battleOp111),
10815 TEST(battleOp112),
10816 TEST(battleOp113),
10817 TEST(battleOp114),
10818 TEST(battleOp115),
10819 TEST(battleOp116),
10820 TEST(battleOp117),
10821 TEST(battleOp118),
10822 TEST(battleOp119),
10823 TEST(battleOp120),
10824
10825 TEST(battleOp121),
10826 TEST(battleOp122),
10827 TEST(battleOp123),
10828 TEST(battleOp124),
10829 TEST(battleOp125),
10830 TEST(battleOp126),
10831 TEST(battleOp127),
10832 TEST(battleOp128),
10833 TEST(battleOp129),
10834 TEST(battleOp130),
10835
10836 TEST(battleOp131),
10837 TEST(battleOp132),
10838 TEST(battleOp133),
10839 TEST(battleOp134),
10840 TEST(battleOp135),
10841 TEST(battleOp136),
10842 TEST(battleOp137),
10843 TEST(battleOp138),
10844 TEST(battleOp139),
10845 TEST(battleOp140),
10846
10847 TEST(battleOp141),
10848 TEST(battleOp142),
10849 TEST(battleOp143),
10850 TEST(battleOp144),
10851 TEST(battleOp145),
10852 TEST(battleOp146),
10853 TEST(battleOp147),
10854 TEST(battleOp149),
10855 TEST(battleOp150),
10856
10857 TEST(battleOp151),
10858 TEST(battleOp153),
10859 TEST(battleOp154),
10860 TEST(battleOp155),
10861 TEST(battleOp156),
10862 TEST(battleOp158),
10863 TEST(battleOp159),
10864 TEST(battleOp160),
10865
10866 TEST(battleOp161),
10867 TEST(battleOp162),
10868 TEST(battleOp164),
10869 TEST(battleOp165),
10870 TEST(battleOp166),
10871 TEST(battleOp167),
10872 TEST(battleOp168),
10873 TEST(battleOp169),
10874 TEST(battleOp170),
10875
10876 TEST(battleOp171),
10877 TEST(battleOp172),
10878 TEST(battleOp173),
10879 TEST(battleOp174),
10880 TEST(battleOp175),
10881 TEST(battleOp176),
10882 TEST(battleOp177),
10883 TEST(battleOp178),
10884 TEST(battleOp179),
10885 TEST(battleOp180),
10886
10887 TEST(battleOp182),
10888 TEST(battleOp184),
10889 TEST(battleOp185),
10890 TEST(battleOp186),
10891 TEST(battleOp187),
10892 TEST(battleOp188),
10893 TEST(battleOp189),
10894 TEST(battleOp190),
10895
10896 TEST(battleOp191),
10897 TEST(battleOp192),
10898 TEST(battleOp193),
10899 TEST(battleOp194),
10900 TEST(battleOp196),
10901 TEST(battleOp197),
10902 TEST(battleOp199),
10903 TEST(battleOp200),
10904
10905 TEST(battleOp201),
10906 TEST(battleOp202),
10907 TEST(battleOp203),
10908 TEST(battleOp204),
10909 TEST(battleOp205),
10910 TEST(battleOp206),
10911 TEST(battleOp207),
10912 TEST(battleOp208),
10913 TEST(battleOp209),
10914 TEST(battleOp210),
10915
10916 TEST(battleOp211),
10917 TEST(battleOp212),
10918 TEST(battleOp213),
10919 TEST(battleOp214),
10920 TEST(battleOp215),
10921 TEST(battleOp216),
10922 TEST(battleOp217),
10923 TEST(battleOp218),
10924 TEST(battleOp219),
10925 TEST(battleOp220),
10926
10927 TEST(battleOp221),
10928 TEST(battleOp222),
10929 TEST(battleOp223),
10930 TEST(battleOp224),
10931 TEST(battleOp225),
10932 TEST(battleOp226),
10933 TEST(battleOp227),
10934 TEST(battleOp228),
10935 TEST(battleOp229),
10936
10937 TEST(battleOp231),
10938 TEST(battleOp232),
10939 TEST(battleOp233),
10940 TEST(battleOp234),
10941 TEST(battleOp235),
10942 TEST(battleOp236),
10943 TEST(battleOp237),
10944 TEST(battleOp238),
10945 TEST(battleOp239),
10946 TEST(battleOp240),
10947
10948 TEST(battleOp241),
10949 TEST(battleOp242),
10950 TEST(battleOp243),
10951 TEST(battleOp244),
10952 TEST(battleOp245),
10953 TEST(battleOp246),
10954 TEST(battleOp247),
10955 TEST(battleOp248),
10956 TEST(battleOp249),
10957 TEST(battleOp250),
10958
10959 TEST(battleOp251),
10960 TEST(battleOp252),
10961 TEST(battleOp253),
10962 TEST(battleOp254),
10963 TEST(battleOp255),
10964 TEST(battleOp257),
10965 TEST(battleOp258),
10966 TEST(battleOp259),
10967 TEST(battleOp260),
10968
10969 TEST(battleOp261),
10970 TEST(battleOp262),
10971 TEST(battleOp263),
10972 TEST(battleOp264),
10973 TEST(battleOp265),
10974 TEST(battleOp266),
10975 TEST(battleOp267),
10976 TEST(battleOp268),
10977 TEST(battleOp270),
10978
10979 TEST(battleOp271),
10980 TEST(battleOp272),
10981 TEST(battleOp274),
10982 TEST(battleOp275),
10983 TEST(battleOp276),
10984 TEST(battleOp277),
10985 TEST(battleOp278),
10986 TEST(battleOp279),
10987 TEST(battleOp280),
10988
10989 TEST(battleOp281),
10990 TEST(battleOp282),
10991 TEST(battleOp284),
10992 TEST(battleOp285),
10993 TEST(battleOp286),
10994 TEST(battleOp287),
10995 TEST(battleOp288),
10996 TEST(battleOp289),
10997 TEST(battleOp290),
10998
10999 TEST(battleOp291),
11000 TEST(battleOp292),
11001 TEST(battleOp293),
11002 TEST(battleOp294),
11003 TEST(battleOp295),
11004 TEST(battleOp296),
11005 TEST(battleOp297),
11006 TEST(battleOp298),
11007 TEST(battleOp299),
11008 TEST(battleOp300),
11009
11010 TEST(battleOp301),
11011 TEST(battleOp302),
11012 TEST(battleOp303),
11013 TEST(battleOp304),
11014 TEST(battleOp305),
11015 TEST(battleOp306),
11016 TEST(battleOp307),
11017 TEST(battleOp308),
11018 TEST(battleOp309),
11019 TEST(battleOp310),
11020
11021 TEST(battleOp311),
11022 TEST(battleOp312),
11023 TEST(battleOp313),
11024 TEST(battleOp314),
11025 TEST(battleOp315),
11026 TEST(battleOp316),
11027 TEST(battleOp317),
11028 TEST(battleOp318),
11029 TEST(battleOp319),
11030 TEST(battleOp320),
11031
11032 TEST(battleOp321),
11033 TEST(battleOp322),
11034 TEST(battleOp323),
11035 TEST(battleOp324),
11036 TEST(battleOp325),
11037 TEST(battleOp326),
11038 TEST(battleOp327),
11039 TEST(battleOp328),
11040 TEST(battleOp329),
11041 TEST(battleOp330),
11042
11043 TEST(battleOp331),
11044 TEST(battleOp332),
11045 TEST(battleOp333),
11046 TEST(battleOp334),
11047 TEST(battleOp335),
11048 TEST(battleOp336),
11049 TEST(battleOp337),
11050 TEST(battleOp338),
11051 TEST(battleOp339),
11052 TEST(battleOp340),
11053
11054 TEST(battleOp341),
11055 TEST(battleOp342),
11056 TEST(battleOp343),
11057 TEST(battleOp344),
11058 TEST(battleOp345),
11059 TEST(battleOp346),
11060 TEST(battleOp347),
11061 TEST(battleOp348),
11062 TEST(battleOp349),
11063 TEST(battleOp350),
11064
11065 TEST(battleOp351),
11066 TEST(battleOp352),
11067
11068 TEST(battleOp402),
11069
11070 TEST(battleOp1390),
11071 TEST(battleOp1391),
11072 TEST(battleOp1392),
11073 TEST(battleOp1393),
11074 TEST(battleOp1394),
11075 TEST(battleOp1395),
11076 TEST(battleOp1396),
11077
11078 TEST(battleOp2193),
11079 TEST(battleOp2194),
11080
11081 TEST(battleOp3368),
11082 TEST(battleOp3369),
11083 TEST(battleOp3370),
11084 TEST(battleOp3371),
11085 TEST(battleOp3372),
11086
11087 TEST(battleOp4290),
11088 TEST(battleOp4291),
11089 TEST(battleOp4292),
11090 TEST(battleOp4293),
11091 TEST(battleOp4294),
11092 TEST(battleOp4295),
11093 TEST(battleOp4296),
11094
11095 TEST(battleOp5193),
11096 TEST(battleOp5194),
11097
11098 TEST(battleOp6000),
11099 TEST(battleOp6001),
11100
11101 TEST(issue414409c),
11102 TEST(issue414409b),
11103 TEST(issue414409),
11104
11105 // these draw wrong
11106 TEST(battleOp46), // dropped an outer cubic incorrectly
11107 // if assembly rewrite was done, the error would be hidden
11108 TEST(battleOp54),
11109 TEST(battleOp63),
11110 TEST(battleOp152),
11111 TEST(battleOp157),
11112 TEST(battleOp163),
11113 TEST(battleOp181),
11114 TEST(battleOp183),
11115 TEST(battleOp195),
11116 TEST(battleOp198),
11117 TEST(battleOp230),
11118 TEST(battleOp256),
11119 TEST(battleOp269),
11120 TEST(battleOp273),
11121 TEST(battleOp148),
11122 TEST(battleOp283),
11123 };
11124
11125
11126 static const size_t testCount = std::size(tests);
11127
11128 static bool runReverse = false;
11129
DEF_TEST(PathOpsBattle,reporter)11130 DEF_TEST(PathOpsBattle, reporter) {
11131 RunTestSet(reporter, tests, testCount, firstTest, nullptr, stopTest, runReverse);
11132 }
11133