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 "PathOpsExtendedTest.h" 8 #include "PathOpsTestCommon.h" 9 10 #define TEST(name) { name, #name } 11 12 static void issue414409(skiatest::Reporter* reporter, const char* filename) { 13 SkPath path1, path2; 14 15 // one fill 1 16 path1.moveTo(9.53595e-07f, -60); 17 path1.lineTo(5.08228e-15f, -83); 18 path1.cubicTo(32.8673f, -83, 62.6386f, -63.6055f, 75.9208f, -33.5416f); 19 path1.cubicTo(89.2029f, -3.47759f, 83.4937f, 31.5921f, 61.3615f, 55.8907f); 20 path1.lineTo(46.9383f, 68.4529f); 21 path1.lineTo(33.9313f, 49.484f); 22 path1.cubicTo(37.7451f, 46.8689f, 41.2438f, 43.8216f, 44.3577f, 40.4029f); 23 path1.lineTo(44.3577f, 40.4029f); 24 path1.cubicTo(60.3569f, 22.8376f, 64.4841f, -2.51392f, 54.8825f, -24.2469f); 25 path1.cubicTo(45.2809f, -45.9799f, 23.7595f, -60, 9.53595e-07f, -60); 26 path1.close(); 27 28 // two fill 0 29 path2.moveTo(46.9383f, 68.4529f); 30 path2.cubicTo(17.5117f, 88.6307f, -21.518f, 87.7442f, -49.9981f, 66.251f); 31 path2.cubicTo(-78.4781f, 44.7578f, -90.035f, 7.46781f, -78.7014f, -26.3644f); 32 path2.cubicTo(-67.3679f, -60.1967f, -35.6801f, -83, -1.48383e-06f, -83); 33 path2.lineTo(4.22689e-14f, -60); 34 path2.cubicTo(-25.7929f, -60, -48.6997f, -43.5157f, -56.8926f, -19.0586f); 35 path2.cubicTo(-65.0855f, 5.39842f, -56.7312f, 32.355f, -36.1432f, 47.8923f); 36 path2.cubicTo(-15.5552f, 63.4296f, 12.6591f, 64.0704f, 33.9313f, 49.484f); 37 path2.lineTo(46.9383f, 68.4529f); 38 path2.close(); 39 testPathOp(reporter, path1, path2, kUnion_PathOp, filename); 40 } 41 42 static void issue414409b(skiatest::Reporter* reporter, const char* filename) { 43 SkPath path1, path2; 44 // one fill=0 op=2 45 path1.setFillType((SkPath::FillType) 0); 46 path1.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 47 path1.cubicTo(SkBits2Float(0x41f12edc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4267b362), SkBits2Float(0xc2854e1f), SkBits2Float(0x42911faa), SkBits2Float(0xc2212f3b)); 48 path1.cubicTo(SkBits2Float(0x42ae65a2), SkBits2Float(0xc15f08de), SkBits2Float(0x42acc913), SkBits2Float(0x41923f59), SkBits2Float(0x428ce9f0), SkBits2Float(0x422f7dc4)); 49 path1.lineTo(SkBits2Float(0x424bbb16), SkBits2Float(0x41fdb8ed)); 50 path1.cubicTo(SkBits2Float(0x4279cf6e), SkBits2Float(0x41537137), SkBits2Float(0x427c23ea), SkBits2Float(0xc1213ad2), SkBits2Float(0x4251d142), SkBits2Float(0xc1e909ae)); 51 path1.cubicTo(SkBits2Float(0x42277e9a), SkBits2Float(0xc240baf8), SkBits2Float(0x41ae5968), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 52 path1.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 53 path1.close(); 54 55 path2.setFillType((SkPath::FillType) 1); 56 path2.moveTo(SkBits2Float(0x428ce9ef), SkBits2Float(0x422f7dc6)); 57 path2.cubicTo(SkBits2Float(0x4286af43), SkBits2Float(0x42437fa7), SkBits2Float(0x427ed0d6), SkBits2Float(0x42561f5a), SkBits2Float(0x426e69d2), SkBits2Float(0x42670c39)); 58 path2.lineTo(SkBits2Float(0x422c58d6), SkBits2Float(0x422705c1)); 59 path2.cubicTo(SkBits2Float(0x42383446), SkBits2Float(0x421ac98f), SkBits2Float(0x4242b98a), SkBits2Float(0x420d5308), SkBits2Float(0x424bbb17), SkBits2Float(0x41fdb8ee)); 60 path2.lineTo(SkBits2Float(0x428ce9ef), SkBits2Float(0x422f7dc6)); 61 path2.close(); 62 // SkOpSegment.cpp:3488: failed assertion "other->fTs[min].fWindSum == oppWinding" 63 testPathOp(reporter, path1, path2, kUnion_PathOp, filename); 64 } 65 66 static void issue414409c(skiatest::Reporter* reporter, const char* filename) { 67 SkPath path1, path2; 68 path1.setFillType((SkPath::FillType) 1); 69 path1.moveTo(SkBits2Float(0x36961ef0), SkBits2Float(0xc2700000)); 70 path1.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 71 path1.cubicTo(SkBits2Float(0x3df86648), SkBits2Float(0xc2a60000), SkBits2Float(0x3e786777), SkBits2Float(0xc2a5ffdc), SkBits2Float(0x3eba4dc2), SkBits2Float(0xc2a5ff96)); 72 path1.lineTo(SkBits2Float(0x3eba4dc3), SkBits2Float(0xc2a5ff97)); 73 path1.cubicTo(SkBits2Float(0x3ec08370), SkBits2Float(0xc2a5ff8f), SkBits2Float(0x3ec6b964), SkBits2Float(0xc2a5ff88), SkBits2Float(0x3eccef58), SkBits2Float(0xc2a5ff80)); 74 path1.lineTo(SkBits2Float(0x3e942522), SkBits2Float(0xc26fff49)); 75 path1.cubicTo(SkBits2Float(0x3e8fa7da), SkBits2Float(0xc26fff56), SkBits2Float(0x3e8b2acd), SkBits2Float(0xc26fff61), SkBits2Float(0x3e86adc0), SkBits2Float(0xc26fff6b)); 76 path1.lineTo(SkBits2Float(0x3e86ad6a), SkBits2Float(0xc26fff69)); 77 path1.cubicTo(SkBits2Float(0x3e3391e9), SkBits2Float(0xc26fffce), SkBits2Float(0x3db3931e), SkBits2Float(0xc2700000), SkBits2Float(0x36961ef0), SkBits2Float(0xc2700000)); 78 path1.close(); 79 80 path2.setFillType((SkPath::FillType) 0); 81 path2.moveTo(SkBits2Float(0x3eccef1a), SkBits2Float(0xc2a5ff81)); 82 path2.cubicTo(SkBits2Float(0x3f18c8a9), SkBits2Float(0xc2a5ff04), SkBits2Float(0x3f4b19b0), SkBits2Float(0xc2a5fe2d), SkBits2Float(0x3f7d6a37), SkBits2Float(0xc2a5fcfa)); 83 path2.lineTo(SkBits2Float(0x3f3730f2), SkBits2Float(0xc26ffba1)); 84 path2.cubicTo(SkBits2Float(0x3f12d1c8), SkBits2Float(0xc26ffd5d), SkBits2Float(0x3edce4b4), SkBits2Float(0xc26ffe95), SkBits2Float(0x3e942577), SkBits2Float(0xc26fff49)); 85 path2.lineTo(SkBits2Float(0x3eccef1a), SkBits2Float(0xc2a5ff81)); 86 path2.close(); 87 88 testPathOp(reporter, path1, path2, kUnion_PathOp, filename); 89 } 90 91 // fails to draw correctly 92 static void battleOp1(skiatest::Reporter* reporter, const char* filename) { 93 SkPath path; 94 path.setFillType((SkPath::FillType) 0); 95 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 96 path.cubicTo(SkBits2Float(0x3ea4d9f5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f24d9a9), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f774519), SkBits2Float(0xc2a5fd1f)); 97 path.lineTo(SkBits2Float(0x3f32bfc3), SkBits2Float(0xc26ffbd7)); 98 path.cubicTo(SkBits2Float(0x3eee5669), SkBits2Float(0xc26ffe9e), SkBits2Float(0x3e6e56cc), SkBits2Float(0xc2700000), SkBits2Float(0x357ffb40), SkBits2Float(0xc2700000)); 99 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 100 path.close(); 101 102 SkPath path1(path); 103 path.reset(); 104 path.setFillType((SkPath::FillType) 0); 105 path.moveTo(SkBits2Float(0x3f774503), SkBits2Float(0xc2a5fd1f)); 106 path.cubicTo(SkBits2Float(0x3f7f82ff), SkBits2Float(0xc2a5fcee), SkBits2Float(0x3f83e06d), SkBits2Float(0xc2a5fcbb), SkBits2Float(0x3f87ff59), SkBits2Float(0xc2a5fc85)); 107 path.lineTo(SkBits2Float(0x3f449f80), SkBits2Float(0xc26ffaf7)); 108 path.cubicTo(SkBits2Float(0x3f3eaa52), SkBits2Float(0xc26ffb47), SkBits2Float(0x3f38b4f5), SkBits2Float(0xc26ffb92), SkBits2Float(0x3f32bf98), SkBits2Float(0xc26ffbd9)); 109 path.lineTo(SkBits2Float(0x3f774503), SkBits2Float(0xc2a5fd1f)); 110 path.close(); 111 112 SkPath path2(path); 113 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 114 } 115 // op end success 1 116 117 static void battleOp2(skiatest::Reporter* reporter, const char* filename) { 118 SkPath path; 119 path.setFillType((SkPath::FillType) 1); 120 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 121 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 122 path.cubicTo(SkBits2Float(0x3ea4d9e6), SkBits2Float(0xc2a60000), SkBits2Float(0x3f24d99a), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f774503), SkBits2Float(0xc2a5fd1f)); 123 124 SkPath path1(path); 125 path.reset(); 126 path.setFillType((SkPath::FillType) 0); 127 path.moveTo(SkBits2Float(0x3f87ff64), SkBits2Float(0xc2a5fc85)); 128 path.cubicTo(SkBits2Float(0x3fcac720), SkBits2Float(0xc2a5f91a), SkBits2Float(0x4006c62a), SkBits2Float(0xc2a5f329), SkBits2Float(0x40282667), SkBits2Float(0xc2a5eab4)); 129 path.lineTo(SkBits2Float(0x3ff31bb9), SkBits2Float(0xc26fe136)); 130 path.cubicTo(SkBits2Float(0x3fc2da88), SkBits2Float(0xc26fed71), SkBits2Float(0x3f9295ff), SkBits2Float(0xc26ff607), SkBits2Float(0x3f449f66), SkBits2Float(0xc26ffaf9)); 131 path.lineTo(SkBits2Float(0x3f87ff64), SkBits2Float(0xc2a5fc85)); 132 path.close(); 133 134 SkPath path2(path); 135 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 136 } 137 // op end success 1 138 139 static void battleOp3(skiatest::Reporter* reporter, const char* filename) { 140 SkPath path; 141 path.setFillType((SkPath::FillType) 0); 142 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 143 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e2fa), SkBits2Float(0xc2a5f5f7)); 144 path.lineTo(SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d)); 145 path.cubicTo(SkBits2Float(0x3f5e8ed4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fc6), SkBits2Float(0xc2700000), SkBits2Float(0x35d9fd64), SkBits2Float(0xc2700000)); 146 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 147 path.close(); 148 149 SkPath path1(path); 150 path.reset(); 151 path.setFillType((SkPath::FillType) 0); 152 path.moveTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7)); 153 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db)); 154 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71)); 155 path.cubicTo(SkBits2Float(0x3fb20800), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac77ff), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d)); 156 path.lineTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7)); 157 path.close(); 158 159 SkPath path2(path); 160 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 161 } 162 // op end success 1 163 164 static void battleOp4(skiatest::Reporter* reporter, const char* filename) { 165 SkPath path; 166 path.setFillType((SkPath::FillType) 1); 167 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 168 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 169 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7)); 170 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db)); 171 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71)); 172 path.cubicTo(SkBits2Float(0x3fb20808), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac780f), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d)); 173 path.lineTo(SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d)); 174 path.cubicTo(SkBits2Float(0x3f5e8eb4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fa6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 175 path.close(); 176 177 SkPath path1(path); 178 path.reset(); 179 path.setFillType((SkPath::FillType) 0); 180 path.moveTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db)); 181 path.cubicTo(SkBits2Float(0x403d5556), SkBits2Float(0xc2a5e7ed), SkBits2Float(0x407ba65a), SkBits2Float(0xc2a5d338), SkBits2Float(0x409cf3fe), SkBits2Float(0xc2a5b5bc)); 182 path.lineTo(SkBits2Float(0x4062eb8a), SkBits2Float(0xc26f94a1)); 183 path.cubicTo(SkBits2Float(0x4035ea63), SkBits2Float(0xc26fbf44), SkBits2Float(0x4008de16), SkBits2Float(0xc26fdd35), SkBits2Float(0x3fb79810), SkBits2Float(0xc26fee74)); 184 path.lineTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db)); 185 path.close(); 186 187 SkPath path2(path); 188 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 189 } 190 // op end success 1 191 192 static void battleOp5(skiatest::Reporter* reporter, const char* filename) { 193 SkPath path; 194 path.setFillType((SkPath::FillType) 0); 195 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 196 path.cubicTo(SkBits2Float(0x3fe06a9b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40606368), SkBits2Float(0xc2a5e38e), SkBits2Float(0x40a82f8a), SkBits2Float(0xc2a5aab6)); 197 path.lineTo(SkBits2Float(0x40732902), SkBits2Float(0xc26f84b2)); 198 path.cubicTo(SkBits2Float(0x4022355b), SkBits2Float(0xc26fd6e1), SkBits2Float(0x3fa23a8f), SkBits2Float(0xc2700000), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000)); 199 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 200 path.close(); 201 202 SkPath path1(path); 203 path.reset(); 204 path.setFillType((SkPath::FillType) 0); 205 path.moveTo(SkBits2Float(0x40a82f91), SkBits2Float(0xc2a5aab7)); 206 path.cubicTo(SkBits2Float(0x40adc8dc), SkBits2Float(0xc2a5a508), SkBits2Float(0x40b361d8), SkBits2Float(0xc2a59f10), SkBits2Float(0x40b8fa82), SkBits2Float(0xc2a598d0)); 207 path.lineTo(SkBits2Float(0x4085b825), SkBits2Float(0xc26f6ad0)); 208 path.cubicTo(SkBits2Float(0x4081ac7b), SkBits2Float(0xc26f73dc), SkBits2Float(0x407b412c), SkBits2Float(0xc26f7c7c), SkBits2Float(0x407328f8), SkBits2Float(0xc26f84b3)); 209 path.lineTo(SkBits2Float(0x40a82f91), SkBits2Float(0xc2a5aab7)); 210 path.close(); 211 212 SkPath path2(path); 213 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 214 } 215 // op end success 1 216 217 static void battleOp6(skiatest::Reporter* reporter, const char* filename) { 218 SkPath path; 219 path.setFillType((SkPath::FillType) 1); 220 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 221 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 222 path.cubicTo(SkBits2Float(0x3fe06a9b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40606368), SkBits2Float(0xc2a5e38e), SkBits2Float(0x40a82f91), SkBits2Float(0xc2a5aab7)); 223 path.cubicTo(SkBits2Float(0x40adc8dc), SkBits2Float(0xc2a5a508), SkBits2Float(0x40b361d8), SkBits2Float(0xc2a59f10), SkBits2Float(0x40b8fa82), SkBits2Float(0xc2a598d0)); 224 path.lineTo(SkBits2Float(0x4085b825), SkBits2Float(0xc26f6ad0)); 225 path.cubicTo(SkBits2Float(0x4081ac7d), SkBits2Float(0xc26f73dc), SkBits2Float(0x407b4133), SkBits2Float(0xc26f7c7c), SkBits2Float(0x40732902), SkBits2Float(0xc26f84b2)); 226 path.cubicTo(SkBits2Float(0x4022355b), SkBits2Float(0xc26fd6e1), SkBits2Float(0x3fa23a8f), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 227 path.close(); 228 path.moveTo(SkBits2Float(0x408fea52), SkBits2Float(0xc28dc28a)); 229 path.lineTo(SkBits2Float(0x407328f8), SkBits2Float(0xc26f84b3)); 230 path.lineTo(SkBits2Float(0x40732903), SkBits2Float(0xc26f84b3)); 231 path.lineTo(SkBits2Float(0x408fea52), SkBits2Float(0xc28dc28a)); 232 path.close(); 233 234 SkPath path1(path); 235 path.reset(); 236 path.setFillType((SkPath::FillType) 0); 237 path.moveTo(SkBits2Float(0x40b8fa77), SkBits2Float(0xc2a598d0)); 238 path.cubicTo(SkBits2Float(0x4109d7e9), SkBits2Float(0xc2a5337c), SkBits2Float(0x4137014a), SkBits2Float(0xc2a483b2), SkBits2Float(0x4163cbb6), SkBits2Float(0xc2a38a24)); 239 path.lineTo(SkBits2Float(0x4124abf0), SkBits2Float(0xc26c715c)); 240 path.cubicTo(SkBits2Float(0x41044af8), SkBits2Float(0xc26dda2b), SkBits2Float(0x40c74ab0), SkBits2Float(0xc26ed852), SkBits2Float(0x4085b82e), SkBits2Float(0xc26f6ad1)); 241 path.lineTo(SkBits2Float(0x40b8fa77), SkBits2Float(0xc2a598d0)); 242 path.close(); 243 244 SkPath path2(path); 245 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 246 } 247 248 static void battleOp7(skiatest::Reporter* reporter, const char* filename) { 249 SkPath path; 250 path.setFillType((SkPath::FillType) 0); 251 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 252 path.cubicTo(SkBits2Float(0x3de5c884), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e65c882), SkBits2Float(0xc2a5ffe2), SkBits2Float(0x3eac5645), SkBits2Float(0xc2a5ffa7)); 253 path.lineTo(SkBits2Float(0x3e79297e), SkBits2Float(0xc26fff7f)); 254 path.cubicTo(SkBits2Float(0x3e261bbd), SkBits2Float(0xc26fffd7), SkBits2Float(0x3da61bbf), SkBits2Float(0xc2700000), SkBits2Float(0xb3244c00), SkBits2Float(0xc2700000)); 255 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 256 path.close(); 257 258 SkPath path1(path); 259 path.reset(); 260 path.setFillType((SkPath::FillType) 0); 261 path.moveTo(SkBits2Float(0x3eac564d), SkBits2Float(0xc2a5ffa7)); 262 path.cubicTo(SkBits2Float(0x3eb21458), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb7d2fc), SkBits2Float(0xc2a5ff9b), SkBits2Float(0x3ebd91a0), SkBits2Float(0xc2a5ff94)); 263 path.lineTo(SkBits2Float(0x3e8909ff), SkBits2Float(0xc26fff64)); 264 path.cubicTo(SkBits2Float(0x3e84e2cf), SkBits2Float(0xc26fff6d), SkBits2Float(0x3e80bc02), SkBits2Float(0xc26fff76), SkBits2Float(0x3e792a69), SkBits2Float(0xc26fff7f)); 265 path.lineTo(SkBits2Float(0x3eac564d), SkBits2Float(0xc2a5ffa7)); 266 path.close(); 267 268 SkPath path2(path); 269 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 270 } 271 // op end success 1 272 273 static void battleOp8(skiatest::Reporter* reporter, const char* filename) { 274 SkPath path; 275 path.setFillType((SkPath::FillType) 1); 276 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 277 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 278 path.cubicTo(SkBits2Float(0x3de5c884), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e65c882), SkBits2Float(0xc2a5ffe2), SkBits2Float(0x3eac564d), SkBits2Float(0xc2a5ffa7)); 279 path.cubicTo(SkBits2Float(0x3eb21458), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb7d2fc), SkBits2Float(0xc2a5ff9b), SkBits2Float(0x3ebd91a0), SkBits2Float(0xc2a5ff94)); 280 path.lineTo(SkBits2Float(0x3e8909ff), SkBits2Float(0xc26fff64)); 281 path.lineTo(SkBits2Float(0x3e792a69), SkBits2Float(0xc26fff7f)); 282 path.cubicTo(SkBits2Float(0x3e261bbd), SkBits2Float(0xc26fffd7), SkBits2Float(0x3da61bbf), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 283 path.close(); 284 285 SkPath path1(path); 286 path.reset(); 287 path.setFillType((SkPath::FillType) 0); 288 path.moveTo(SkBits2Float(0x3ebd921a), SkBits2Float(0xc2a5ff94)); 289 path.cubicTo(SkBits2Float(0x3f0d545f), SkBits2Float(0xc2a5ff29), SkBits2Float(0x3f3bdfbd), SkBits2Float(0xc2a5fe71), SkBits2Float(0x3f6a6ab6), SkBits2Float(0xc2a5fd69)); 290 path.lineTo(SkBits2Float(0x3f297558), SkBits2Float(0xc26ffc43)); 291 path.cubicTo(SkBits2Float(0x3f07d00d), SkBits2Float(0xc26ffdc0), SkBits2Float(0x3ecc550f), SkBits2Float(0xc26ffecc), SkBits2Float(0x3e8909b7), SkBits2Float(0xc26fff65)); 292 path.lineTo(SkBits2Float(0x3ebd921a), SkBits2Float(0xc2a5ff94)); 293 path.close(); 294 295 SkPath path2(path); 296 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 297 } 298 // op end success 1 299 300 static void battleOp9(skiatest::Reporter* reporter, const char* filename) { // crashes 301 SkPath path; 302 path.setFillType((SkPath::FillType) 0); 303 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 304 path.cubicTo(SkBits2Float(0x3ecc43bf), SkBits2Float(0xc2a60000), SkBits2Float(0x3f4c4385), SkBits2Float(0xc2a5fe87), SkBits2Float(0x3f993163), SkBits2Float(0xc2a5fb95)); 305 path.lineTo(SkBits2Float(0x3f5d7bc4), SkBits2Float(0xc26ff99d)); 306 path.cubicTo(SkBits2Float(0x3f13a919), SkBits2Float(0xc26ffdde), SkBits2Float(0x3e93a998), SkBits2Float(0xc26fffff), SkBits2Float(0x367b7ed0), SkBits2Float(0xc26fffff)); 307 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 308 path.close(); 309 310 SkPath path1(path); 311 path.reset(); 312 path.setFillType((SkPath::FillType) 0); 313 path.moveTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95)); 314 path.cubicTo(SkBits2Float(0x3f9e4c7a), SkBits2Float(0xc2a5fb49), SkBits2Float(0x3fa36794), SkBits2Float(0xc2a5fafa), SkBits2Float(0x3fa882aa), SkBits2Float(0xc2a5faa7)); 315 path.lineTo(SkBits2Float(0x3f73a149), SkBits2Float(0xc26ff845)); 316 path.cubicTo(SkBits2Float(0x3f6c3f64), SkBits2Float(0xc26ff8bf), SkBits2Float(0x3f64dd9d), SkBits2Float(0xc26ff931), SkBits2Float(0x3f5d7bcf), SkBits2Float(0xc26ff99f)); 317 path.lineTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95)); 318 path.close(); 319 320 SkPath path2(path); 321 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 322 } 323 324 static void battleOp10(skiatest::Reporter* reporter, const char* filename) { 325 SkPath path; 326 path.setFillType((SkPath::FillType) 0); 327 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 328 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59eff), SkBits2Float(0xc2a5ffac)); 329 path.lineTo(SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89)); 330 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0xb580e440), SkBits2Float(0xc2700000)); 331 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 332 path.close(); 333 334 SkPath path1(path); 335 path.reset(); 336 path.setFillType((SkPath::FillType) 0); 337 path.moveTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad)); 338 path.cubicTo(SkBits2Float(0x3eab24c0), SkBits2Float(0xc2a5ffa7), SkBits2Float(0x3eb0aa54), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b)); 339 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f)); 340 path.cubicTo(SkBits2Float(0x3e7f6bdb), SkBits2Float(0xc26fff79), SkBits2Float(0x3e777021), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a)); 341 path.lineTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad)); 342 path.close(); 343 344 SkPath path2(path); 345 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 346 } 347 // op end success 1 348 349 static void battleOp11(skiatest::Reporter* reporter, const char* filename) { 350 SkPath path; 351 path.setFillType((SkPath::FillType) 1); 352 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 353 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 354 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad)); 355 path.lineTo(SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b)); 356 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f)); 357 path.cubicTo(SkBits2Float(0x3e7f6bf0), SkBits2Float(0xc26fff79), SkBits2Float(0x3e77704b), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89)); 358 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 359 path.close(); 360 path.moveTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413)); 361 path.lineTo(SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a)); 362 path.lineTo(SkBits2Float(0x3e6f74a4), SkBits2Float(0xc26fff8a)); 363 path.lineTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413)); 364 path.close(); 365 366 SkPath path1(path); 367 path.reset(); 368 path.setFillType((SkPath::FillType) 0); 369 path.moveTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c)); 370 path.cubicTo(SkBits2Float(0x3f07d31d), SkBits2Float(0xc2a5ff3a), SkBits2Float(0x3f348e3e), SkBits2Float(0xc2a5fe8f), SkBits2Float(0x3f614904), SkBits2Float(0xc2a5fd9c)); 371 path.lineTo(SkBits2Float(0x3f22db6c), SkBits2Float(0xc26ffc8c)); 372 path.cubicTo(SkBits2Float(0x3f0285bf), SkBits2Float(0xc26ffdeb), SkBits2Float(0x3ec45fa5), SkBits2Float(0xc26ffee1), SkBits2Float(0x3e83b387), SkBits2Float(0xc26fff6f)); 373 path.lineTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c)); 374 path.close(); 375 376 SkPath path2(path); 377 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 378 } 379 // op end success 1 380 381 static void battleOp12(skiatest::Reporter* reporter, const char* filename) { // crashed 382 SkPath path; 383 path.setFillType((SkPath::FillType) 0); 384 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 385 path.cubicTo(SkBits2Float(0x3ecc43bf), SkBits2Float(0xc2a60000), SkBits2Float(0x3f4c4385), SkBits2Float(0xc2a5fe87), SkBits2Float(0x3f993163), SkBits2Float(0xc2a5fb95)); 386 path.lineTo(SkBits2Float(0x3f5d7bc4), SkBits2Float(0xc26ff99d)); 387 path.cubicTo(SkBits2Float(0x3f13a919), SkBits2Float(0xc26ffdde), SkBits2Float(0x3e93a998), SkBits2Float(0xc26fffff), SkBits2Float(0x367b7ed0), SkBits2Float(0xc26fffff)); 388 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 389 path.close(); 390 391 SkPath path1(path); 392 path.reset(); 393 path.setFillType((SkPath::FillType) 0); 394 path.moveTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95)); 395 path.cubicTo(SkBits2Float(0x3f9e4c7a), SkBits2Float(0xc2a5fb49), SkBits2Float(0x3fa36794), SkBits2Float(0xc2a5fafa), SkBits2Float(0x3fa882aa), SkBits2Float(0xc2a5faa7)); 396 path.lineTo(SkBits2Float(0x3f73a149), SkBits2Float(0xc26ff845)); 397 path.cubicTo(SkBits2Float(0x3f6c3f64), SkBits2Float(0xc26ff8bf), SkBits2Float(0x3f64dd9d), SkBits2Float(0xc26ff931), SkBits2Float(0x3f5d7bcf), SkBits2Float(0xc26ff99f)); 398 path.lineTo(SkBits2Float(0x3f993156), SkBits2Float(0xc2a5fb95)); 399 path.close(); 400 401 SkPath path2(path); 402 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 403 } 404 // ../../third_party/tcmalloc/chromium/src/free_list.h:118] Memory corruption detected. 405 406 static void battleOp13(skiatest::Reporter* reporter, const char* filename) { 407 SkPath path; 408 path.setFillType((SkPath::FillType) 0); 409 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 410 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59eff), SkBits2Float(0xc2a5ffac)); 411 path.lineTo(SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89)); 412 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0xb580e440), SkBits2Float(0xc2700000)); 413 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 414 path.close(); 415 416 SkPath path1(path); 417 path.reset(); 418 path.setFillType((SkPath::FillType) 0); 419 path.moveTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad)); 420 path.cubicTo(SkBits2Float(0x3eab24c0), SkBits2Float(0xc2a5ffa7), SkBits2Float(0x3eb0aa54), SkBits2Float(0xc2a5ffa1), SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b)); 421 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f)); 422 path.cubicTo(SkBits2Float(0x3e7f6bdb), SkBits2Float(0xc26fff79), SkBits2Float(0x3e777021), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a)); 423 path.lineTo(SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad)); 424 path.close(); 425 426 SkPath path2(path); 427 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 428 } 429 // op end success 1 430 431 static void battleOp14(skiatest::Reporter* reporter, const char* filename) { 432 SkPath path; 433 path.setFillType((SkPath::FillType) 1); 434 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 435 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 436 path.cubicTo(SkBits2Float(0x3ddcd524), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e5cd462), SkBits2Float(0xc2a5ffe3), SkBits2Float(0x3ea59f9c), SkBits2Float(0xc2a5ffad)); 437 path.lineTo(SkBits2Float(0x3eb62fe9), SkBits2Float(0xc2a5ff9b)); 438 path.lineTo(SkBits2Float(0x3e83b355), SkBits2Float(0xc26fff6f)); 439 path.cubicTo(SkBits2Float(0x3e7f6bf0), SkBits2Float(0xc26fff79), SkBits2Float(0x3e77704b), SkBits2Float(0xc26fff81), SkBits2Float(0x3e6f74a3), SkBits2Float(0xc26fff89)); 440 path.cubicTo(SkBits2Float(0x3e1fa33e), SkBits2Float(0xc26fffd9), SkBits2Float(0x3d9fa303), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 441 path.close(); 442 path.moveTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413)); 443 path.lineTo(SkBits2Float(0x3e6f7465), SkBits2Float(0xc26fff8a)); 444 path.lineTo(SkBits2Float(0x3e6f74a4), SkBits2Float(0xc26fff8a)); 445 path.lineTo(SkBits2Float(0x3e7ee007), SkBits2Float(0xc27f7413)); 446 path.close(); 447 448 SkPath path1(path); 449 path.reset(); 450 path.setFillType((SkPath::FillType) 0); 451 path.moveTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c)); 452 path.cubicTo(SkBits2Float(0x3f07d31d), SkBits2Float(0xc2a5ff3a), SkBits2Float(0x3f348e3e), SkBits2Float(0xc2a5fe8f), SkBits2Float(0x3f614904), SkBits2Float(0xc2a5fd9c)); 453 path.lineTo(SkBits2Float(0x3f22db6c), SkBits2Float(0xc26ffc8c)); 454 path.cubicTo(SkBits2Float(0x3f0285bf), SkBits2Float(0xc26ffdeb), SkBits2Float(0x3ec45fa5), SkBits2Float(0xc26ffee1), SkBits2Float(0x3e83b387), SkBits2Float(0xc26fff6f)); 455 path.lineTo(SkBits2Float(0x3eb62f8c), SkBits2Float(0xc2a5ff9c)); 456 path.close(); 457 458 SkPath path2(path); 459 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 460 } 461 // op end success 1 462 463 static void battleOp15(skiatest::Reporter* reporter, const char* filename) { 464 SkPath path; 465 path.setFillType((SkPath::FillType) 0); 466 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 467 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e2fa), SkBits2Float(0xc2a5f5f7)); 468 path.lineTo(SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d)); 469 path.cubicTo(SkBits2Float(0x3f5e8ed4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fc6), SkBits2Float(0xc2700000), SkBits2Float(0x35d9fd64), SkBits2Float(0xc2700000)); 470 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 471 path.close(); 472 473 SkPath path1(path); 474 path.reset(); 475 path.setFillType((SkPath::FillType) 0); 476 path.moveTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7)); 477 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db)); 478 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71)); 479 path.cubicTo(SkBits2Float(0x3fb20800), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac77ff), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d)); 480 path.lineTo(SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7)); 481 path.close(); 482 483 SkPath path2(path); 484 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 485 } 486 // op end success 1 487 488 static void battleOp16(skiatest::Reporter* reporter, const char* filename) { 489 SkPath path; 490 path.setFillType((SkPath::FillType) 1); 491 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 492 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 493 path.cubicTo(SkBits2Float(0x3f19f03c), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f99ef95), SkBits2Float(0xc2a5fca7), SkBits2Float(0x3fe6e322), SkBits2Float(0xc2a5f5f7)); 494 path.cubicTo(SkBits2Float(0x3fee94fb), SkBits2Float(0xc2a5f54c), SkBits2Float(0x3ff646db), SkBits2Float(0xc2a5f497), SkBits2Float(0x3ffdf8ad), SkBits2Float(0xc2a5f3db)); 495 path.lineTo(SkBits2Float(0x3fb79813), SkBits2Float(0xc26fee71)); 496 path.cubicTo(SkBits2Float(0x3fb20808), SkBits2Float(0xc26fef82), SkBits2Float(0x3fac780f), SkBits2Float(0xc26ff085), SkBits2Float(0x3fa6e80c), SkBits2Float(0xc26ff17d)); 497 path.lineTo(SkBits2Float(0x3fa6e7f4), SkBits2Float(0xc26ff17d)); 498 path.cubicTo(SkBits2Float(0x3f5e8eb4), SkBits2Float(0xc26ffb2a), SkBits2Float(0x3ede8fa6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 499 path.close(); 500 501 SkPath path1(path); 502 path.reset(); 503 path.setFillType((SkPath::FillType) 0); 504 path.moveTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db)); 505 path.cubicTo(SkBits2Float(0x403d5556), SkBits2Float(0xc2a5e7ed), SkBits2Float(0x407ba65a), SkBits2Float(0xc2a5d338), SkBits2Float(0x409cf3fe), SkBits2Float(0xc2a5b5bc)); 506 path.lineTo(SkBits2Float(0x4062eb8a), SkBits2Float(0xc26f94a1)); 507 path.cubicTo(SkBits2Float(0x4035ea63), SkBits2Float(0xc26fbf44), SkBits2Float(0x4008de16), SkBits2Float(0xc26fdd35), SkBits2Float(0x3fb79810), SkBits2Float(0xc26fee74)); 508 path.lineTo(SkBits2Float(0x3ffdf8c6), SkBits2Float(0xc2a5f3db)); 509 path.close(); 510 511 SkPath path2(path); 512 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 513 } 514 // op end success 1 515 516 static void battleOp17(skiatest::Reporter* reporter, const char* filename) { 517 SkPath path; 518 path.setFillType((SkPath::FillType) 0); 519 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 520 path.cubicTo(SkBits2Float(0x3f9860dc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40185ea2), SkBits2Float(0xc2a5f2e2), SkBits2Float(0x40647d09), SkBits2Float(0xc2a5d8aa)); 521 path.lineTo(SkBits2Float(0x40252c2a), SkBits2Float(0xc26fc723)); 522 path.cubicTo(SkBits2Float(0x3fdc4b47), SkBits2Float(0xc26fed09), SkBits2Float(0x3f5c4ea6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3664fea3), SkBits2Float(0xc26ffffe)); 523 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 524 path.close(); 525 526 SkPath path1(path); 527 path.reset(); 528 path.setFillType((SkPath::FillType) 0); 529 path.moveTo(SkBits2Float(0x40647d17), SkBits2Float(0xc2a5d8ab)); 530 path.cubicTo(SkBits2Float(0x406c19ae), SkBits2Float(0xc2a5d60b), SkBits2Float(0x4073b608), SkBits2Float(0xc2a5d34a), SkBits2Float(0x407b5230), SkBits2Float(0xc2a5d069)); 531 path.lineTo(SkBits2Float(0x4035ad90), SkBits2Float(0xc26fbb32)); 532 path.cubicTo(SkBits2Float(0x40302d3b), SkBits2Float(0xc26fbf5d), SkBits2Float(0x402aacbf), SkBits2Float(0xc26fc358), SkBits2Float(0x40252c21), SkBits2Float(0xc26fc722)); 533 path.lineTo(SkBits2Float(0x40647d17), SkBits2Float(0xc2a5d8ab)); 534 path.close(); 535 536 SkPath path2(path); 537 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 538 } 539 // op end success 1 540 541 static void battleOp18(skiatest::Reporter* reporter, const char* filename) { 542 SkPath path; 543 path.setFillType((SkPath::FillType) 1); 544 path.moveTo(SkBits2Float(0x3664fea3), SkBits2Float(0xc26ffffe)); 545 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 546 path.cubicTo(SkBits2Float(0x3f9860dc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40185ea2), SkBits2Float(0xc2a5f2e2), SkBits2Float(0x40647d17), SkBits2Float(0xc2a5d8ab)); 547 path.cubicTo(SkBits2Float(0x406c19ae), SkBits2Float(0xc2a5d60b), SkBits2Float(0x4073b608), SkBits2Float(0xc2a5d34a), SkBits2Float(0x407b5230), SkBits2Float(0xc2a5d069)); 548 path.lineTo(SkBits2Float(0x4035ad90), SkBits2Float(0xc26fbb32)); 549 path.cubicTo(SkBits2Float(0x40302d3b), SkBits2Float(0xc26fbf5d), SkBits2Float(0x402aacbf), SkBits2Float(0xc26fc358), SkBits2Float(0x40252c2a), SkBits2Float(0xc26fc723)); 550 path.cubicTo(SkBits2Float(0x3fdc4b47), SkBits2Float(0xc26fed09), SkBits2Float(0x3f5c4ea6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3664fea3), SkBits2Float(0xc26ffffe)); 551 path.close(); 552 553 SkPath path1(path); 554 path.reset(); 555 path.setFillType((SkPath::FillType) 0); 556 path.moveTo(SkBits2Float(0x407b523a), SkBits2Float(0xc2a5d069)); 557 path.cubicTo(SkBits2Float(0x40bb53e8), SkBits2Float(0xc2a5a1ad), SkBits2Float(0x40f8dfd1), SkBits2Float(0xc2a5508e), SkBits2Float(0x411b1813), SkBits2Float(0xc2a4dd32)); 558 path.lineTo(SkBits2Float(0x40e03b7c), SkBits2Float(0xc26e5b8f)); 559 path.cubicTo(SkBits2Float(0x40b3e8bb), SkBits2Float(0xc26f0259), SkBits2Float(0x40876aeb), SkBits2Float(0xc26f77a1), SkBits2Float(0x4035ad92), SkBits2Float(0xc26fbb33)); 560 path.lineTo(SkBits2Float(0x407b523a), SkBits2Float(0xc2a5d069)); 561 path.close(); 562 563 SkPath path2(path); 564 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 565 } 566 // op end success 1 567 568 static void battleOp19(skiatest::Reporter* reporter, const char* filename) { 569 SkPath path; 570 path.setFillType((SkPath::FillType) 0); 571 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 572 path.cubicTo(SkBits2Float(0x40272e66), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40a7227d), SkBits2Float(0xc2a5c0db), SkBits2Float(0x40fa5a70), SkBits2Float(0xc2a542ca)); 573 path.lineTo(SkBits2Float(0x40b4fa6e), SkBits2Float(0xc26eee73)); 574 path.cubicTo(SkBits2Float(0x4071a3f5), SkBits2Float(0xc26fa4b8), SkBits2Float(0x3ff1b53c), SkBits2Float(0xc2700000), SkBits2Float(0x359dfd46), SkBits2Float(0xc2700000)); 575 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 576 path.close(); 577 578 SkPath path1(path); 579 path.reset(); 580 path.setFillType((SkPath::FillType) 0); 581 path.moveTo(SkBits2Float(0x40fa5a6d), SkBits2Float(0xc2a542cb)); 582 path.cubicTo(SkBits2Float(0x4101563b), SkBits2Float(0xc2a5362f), SkBits2Float(0x41057ec0), SkBits2Float(0xc2a528f4), SkBits2Float(0x4109a6c0), SkBits2Float(0xc2a51b18)); 583 path.lineTo(SkBits2Float(0x40c70391), SkBits2Float(0xc26eb50e)); 584 path.cubicTo(SkBits2Float(0x40c10142), SkBits2Float(0xc26ec918), SkBits2Float(0x40bafe32), SkBits2Float(0xc26edc3a), SkBits2Float(0x40b4fa70), SkBits2Float(0xc26eee73)); 585 path.lineTo(SkBits2Float(0x40fa5a6d), SkBits2Float(0xc2a542cb)); 586 path.close(); 587 588 SkPath path2(path); 589 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 590 } 591 // op end success 1 592 593 static void battleOp20(skiatest::Reporter* reporter, const char* filename) { 594 SkPath path; 595 path.setFillType((SkPath::FillType) 1); 596 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 597 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 598 path.cubicTo(SkBits2Float(0x40272e63), SkBits2Float(0xc2a60000), SkBits2Float(0x40a7227a), SkBits2Float(0xc2a5c0db), SkBits2Float(0x40fa5a6c), SkBits2Float(0xc2a542ca)); 599 path.lineTo(SkBits2Float(0x40fa5a6d), SkBits2Float(0xc2a542cb)); 600 path.cubicTo(SkBits2Float(0x4101563b), SkBits2Float(0xc2a5362f), SkBits2Float(0x41057ec0), SkBits2Float(0xc2a528f4), SkBits2Float(0x4109a6c0), SkBits2Float(0xc2a51b18)); 601 path.lineTo(SkBits2Float(0x40c70391), SkBits2Float(0xc26eb50e)); 602 path.cubicTo(SkBits2Float(0x40c10142), SkBits2Float(0xc26ec918), SkBits2Float(0x40bafe32), SkBits2Float(0xc26edc3a), SkBits2Float(0x40b4fa6e), SkBits2Float(0xc26eee73)); 603 path.cubicTo(SkBits2Float(0x4071a3f5), SkBits2Float(0xc26fa4b8), SkBits2Float(0x3ff1b53c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 604 path.close(); 605 606 SkPath path1(path); 607 path.reset(); 608 path.setFillType((SkPath::FillType) 0); 609 path.moveTo(SkBits2Float(0x4109a6bc), SkBits2Float(0xc2a51b19)); 610 path.cubicTo(SkBits2Float(0x414d093d), SkBits2Float(0xc2a43a61), SkBits2Float(0x4187e474), SkBits2Float(0xc2a2b4fa), SkBits2Float(0x41a8a805), SkBits2Float(0xc2a08e4d)); 611 path.lineTo(SkBits2Float(0x4173d72c), SkBits2Float(0xc2682105)); 612 path.cubicTo(SkBits2Float(0x41447890), SkBits2Float(0xc26b3d2d), SkBits2Float(0x4114380c), SkBits2Float(0xc26d702b), SkBits2Float(0x40c70392), SkBits2Float(0xc26eb510)); 613 path.lineTo(SkBits2Float(0x4109a6bc), SkBits2Float(0xc2a51b19)); 614 path.close(); 615 616 SkPath path2(path); 617 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 618 } 619 // op end success 1 620 621 static void battleOp21(skiatest::Reporter* reporter, const char* filename) { 622 SkPath path; 623 path.setFillType((SkPath::FillType) 0); 624 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 625 path.cubicTo(SkBits2Float(0x404ef9c5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40cee321), SkBits2Float(0xc2a59f3a), SkBits2Float(0x411ad5ab), SkBits2Float(0xc2a4de2c)); 626 path.lineTo(SkBits2Float(0x40dfdb77), SkBits2Float(0xc26e5cf8)); 627 path.cubicTo(SkBits2Float(0x40958e99), SkBits2Float(0xc26f7414), SkBits2Float(0x40159f04), SkBits2Float(0xc26ffffe), SkBits2Float(0x36ae7f52), SkBits2Float(0xc26ffffe)); 628 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 629 path.close(); 630 631 SkPath path1(path); 632 path.reset(); 633 path.setFillType((SkPath::FillType) 0); 634 path.moveTo(SkBits2Float(0x411ad5aa), SkBits2Float(0xc2a4de2c)); 635 path.cubicTo(SkBits2Float(0x411ff8ea), SkBits2Float(0xc2a4cadf), SkBits2Float(0x41251b3e), SkBits2Float(0xc2a4b69c), SkBits2Float(0x412a3c98), SkBits2Float(0xc2a4a163)); 636 path.lineTo(SkBits2Float(0x40f6200f), SkBits2Float(0xc26e0518)); 637 path.cubicTo(SkBits2Float(0x40eeb53e), SkBits2Float(0xc26e23c6), SkBits2Float(0x40e74902), SkBits2Float(0xc26e4112), SkBits2Float(0x40dfdb73), SkBits2Float(0xc26e5cf8)); 638 path.lineTo(SkBits2Float(0x411ad5aa), SkBits2Float(0xc2a4de2c)); 639 path.close(); 640 641 SkPath path2(path); 642 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 643 } 644 // op end fail 1 645 646 static void battleOp22(skiatest::Reporter* reporter, const char* filename) { 647 SkPath path; 648 path.setFillType((SkPath::FillType) 0); 649 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 650 path.cubicTo(SkBits2Float(0x407fb41a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40ff895b), SkBits2Float(0xc2a56c4b), SkBits2Float(0x413f077c), SkBits2Float(0xc2a44609)); 651 path.lineTo(SkBits2Float(0x410a17ee), SkBits2Float(0xc26d8104)); 652 path.cubicTo(SkBits2Float(0x40b8b9ab), SkBits2Float(0xc26f2a74), SkBits2Float(0x4038d88b), SkBits2Float(0xc2700000), SkBits2Float(0x337fa8c0), SkBits2Float(0xc2700000)); 653 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 654 path.close(); 655 656 SkPath path1(path); 657 path.reset(); 658 path.setFillType((SkPath::FillType) 0); 659 path.moveTo(SkBits2Float(0x413f0780), SkBits2Float(0xc2a44609)); 660 path.cubicTo(SkBits2Float(0x41455a4a), SkBits2Float(0xc2a4289f), SkBits2Float(0x414bab5a), SkBits2Float(0xc2a409bf), SkBits2Float(0x4151fa92), SkBits2Float(0xc2a3e96b)); 661 path.lineTo(SkBits2Float(0x4117cabb), SkBits2Float(0xc26cfb1d)); 662 path.cubicTo(SkBits2Float(0x41133b1d), SkBits2Float(0xc26d29dc), SkBits2Float(0x410eaa27), SkBits2Float(0xc26d567f), SkBits2Float(0x410a17f1), SkBits2Float(0xc26d8105)); 663 path.lineTo(SkBits2Float(0x413f0780), SkBits2Float(0xc2a44609)); 664 path.close(); 665 666 SkPath path2(path); 667 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 668 } 669 // op end success 1 670 671 static void battleOp23(skiatest::Reporter* reporter, const char* filename) { 672 SkPath path; 673 path.setFillType((SkPath::FillType) 1); 674 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 675 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 676 path.cubicTo(SkBits2Float(0x407fb41a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40ff895b), SkBits2Float(0xc2a56c4b), SkBits2Float(0x413f0780), SkBits2Float(0xc2a44609)); 677 path.cubicTo(SkBits2Float(0x41455a4a), SkBits2Float(0xc2a4289f), SkBits2Float(0x414bab5a), SkBits2Float(0xc2a409bf), SkBits2Float(0x4151fa92), SkBits2Float(0xc2a3e96b)); 678 path.lineTo(SkBits2Float(0x4117cabb), SkBits2Float(0xc26cfb1d)); 679 path.cubicTo(SkBits2Float(0x41133b1d), SkBits2Float(0xc26d29dc), SkBits2Float(0x410eaa27), SkBits2Float(0xc26d567f), SkBits2Float(0x410a17ee), SkBits2Float(0xc26d8104)); 680 path.cubicTo(SkBits2Float(0x40b8b9ab), SkBits2Float(0xc26f2a74), SkBits2Float(0x4038d88b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 681 path.close(); 682 683 SkPath path1(path); 684 path.reset(); 685 path.setFillType((SkPath::FillType) 0); 686 path.moveTo(SkBits2Float(0x4151fa93), SkBits2Float(0xc2a3e96b)); 687 path.cubicTo(SkBits2Float(0x419c2b7d), SkBits2Float(0xc2a1dce5), SkBits2Float(0x41ce36f8), SkBits2Float(0xc29e52a6), SkBits2Float(0x41fe1a0a), SkBits2Float(0xc2995d2e)); 688 path.lineTo(SkBits2Float(0x41b7b024), SkBits2Float(0xc25dbb29)); 689 path.cubicTo(SkBits2Float(0x41951228), SkBits2Float(0xc264e68b), SkBits2Float(0x4161c9b2), SkBits2Float(0xc26a04c8), SkBits2Float(0x4117cabf), SkBits2Float(0xc26cfb1e)); 690 path.lineTo(SkBits2Float(0x4151fa93), SkBits2Float(0xc2a3e96b)); 691 path.close(); 692 693 SkPath path2(path); 694 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 695 } 696 // op end success 1 697 698 static void battleOp24(skiatest::Reporter* reporter, const char* filename) { 699 SkPath path; 700 path.setFillType((SkPath::FillType) 0); 701 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 702 path.cubicTo(SkBits2Float(0x409bc7b0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x411ba103), SkBits2Float(0xc2a524b6), SkBits2Float(0x4168515c), SkBits2Float(0xc2a370af)); 703 path.lineTo(SkBits2Float(0x4127f0cc), SkBits2Float(0xc26c4c8f)); 704 path.cubicTo(SkBits2Float(0x40e1017a), SkBits2Float(0xc26ec2f6), SkBits2Float(0x40613965), SkBits2Float(0xc26fffff), SkBits2Float(0x3655fea5), SkBits2Float(0xc26fffff)); 705 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 706 path.close(); 707 708 SkPath path1(path); 709 path.reset(); 710 path.setFillType((SkPath::FillType) 0); 711 path.moveTo(SkBits2Float(0x4168515e), SkBits2Float(0xc2a370b0)); 712 path.cubicTo(SkBits2Float(0x416ffb5b), SkBits2Float(0xc2a3451c), SkBits2Float(0x4177a23d), SkBits2Float(0xc2a31761), SkBits2Float(0x417f45ca), SkBits2Float(0xc2a2e77f)); 713 path.lineTo(SkBits2Float(0x413888ce), SkBits2Float(0xc26b8638)); 714 path.cubicTo(SkBits2Float(0x41330328), SkBits2Float(0xc26bcb72), SkBits2Float(0x412d7b1a), SkBits2Float(0xc26c0d90), SkBits2Float(0x4127f0cb), SkBits2Float(0xc26c4c90)); 715 path.lineTo(SkBits2Float(0x4168515e), SkBits2Float(0xc2a370b0)); 716 path.close(); 717 718 SkPath path2(path); 719 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 720 } 721 // op end success 1 722 723 static void battleOp25(skiatest::Reporter* reporter, const char* filename) { 724 SkPath path; 725 path.setFillType((SkPath::FillType) 1); 726 path.moveTo(SkBits2Float(0x3655fea5), SkBits2Float(0xc26fffff)); 727 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 728 path.cubicTo(SkBits2Float(0x409bc7b0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x411ba103), SkBits2Float(0xc2a524b6), SkBits2Float(0x4168515e), SkBits2Float(0xc2a370b0)); 729 path.cubicTo(SkBits2Float(0x416ffb5b), SkBits2Float(0xc2a3451c), SkBits2Float(0x4177a23d), SkBits2Float(0xc2a31761), SkBits2Float(0x417f45ca), SkBits2Float(0xc2a2e77f)); 730 path.lineTo(SkBits2Float(0x413888ce), SkBits2Float(0xc26b8638)); 731 path.cubicTo(SkBits2Float(0x41330328), SkBits2Float(0xc26bcb72), SkBits2Float(0x412d7b1a), SkBits2Float(0xc26c0d90), SkBits2Float(0x4127f0cc), SkBits2Float(0xc26c4c8f)); 732 path.cubicTo(SkBits2Float(0x40e1017a), SkBits2Float(0xc26ec2f6), SkBits2Float(0x40613965), SkBits2Float(0xc26fffff), SkBits2Float(0x3655fea5), SkBits2Float(0xc26fffff)); 733 path.close(); 734 735 SkPath path1(path); 736 path.reset(); 737 path.setFillType((SkPath::FillType) 0); 738 path.moveTo(SkBits2Float(0x417f45c8), SkBits2Float(0xc2a2e780)); 739 path.cubicTo(SkBits2Float(0x41bda27d), SkBits2Float(0xc29fde49), SkBits2Float(0x41f99531), SkBits2Float(0xc29aa2c4), SkBits2Float(0x4218d569), SkBits2Float(0xc2935d77)); 740 path.lineTo(SkBits2Float(0x41dcf6db), SkBits2Float(0xc2550ed7)); 741 path.cubicTo(SkBits2Float(0x41b46bda), SkBits2Float(0xc25f91e2), SkBits2Float(0x418915db), SkBits2Float(0xc2672288), SkBits2Float(0x413888d2), SkBits2Float(0xc26b8639)); 742 path.lineTo(SkBits2Float(0x417f45c8), SkBits2Float(0xc2a2e780)); 743 path.close(); 744 745 SkPath path2(path); 746 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 747 } 748 // op end success 1 749 750 static void battleOp26(skiatest::Reporter* reporter, const char* filename) { 751 SkPath path; 752 path.setFillType((SkPath::FillType) 0); 753 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 754 path.cubicTo(SkBits2Float(0x40b98c15), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41394aaf), SkBits2Float(0xc2a4c8e8), SkBits2Float(0x418a04fa), SkBits2Float(0xc2a25fd2)); 755 path.lineTo(SkBits2Float(0x41478bd6), SkBits2Float(0xc26ac20e)); 756 path.cubicTo(SkBits2Float(0x4105f224), SkBits2Float(0xc26e3e3c), SkBits2Float(0x40862167), SkBits2Float(0xc2700000), SkBits2Float(0xb4d00ae8), SkBits2Float(0xc2700000)); 757 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 758 path.close(); 759 760 SkPath path1(path); 761 path.reset(); 762 path.setFillType((SkPath::FillType) 0); 763 path.moveTo(SkBits2Float(0x418a04fd), SkBits2Float(0xc2a25fd2)); 764 path.cubicTo(SkBits2Float(0x418e8d81), SkBits2Float(0xc2a2222a), SkBits2Float(0x41931368), SkBits2Float(0xc2a1e17a), SkBits2Float(0x41979681), SkBits2Float(0xc2a19dc3)); 765 path.lineTo(SkBits2Float(0x415b29c8), SkBits2Float(0xc269a97e)); 766 path.cubicTo(SkBits2Float(0x4154a3c3), SkBits2Float(0xc26a0b66), SkBits2Float(0x414e19b0), SkBits2Float(0xc26a68ed), SkBits2Float(0x41478bd5), SkBits2Float(0xc26ac20f)); 767 path.lineTo(SkBits2Float(0x418a04fd), SkBits2Float(0xc2a25fd2)); 768 path.close(); 769 770 SkPath path2(path); 771 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 772 } 773 // op end success 1 774 775 static void battleOp27(skiatest::Reporter* reporter, const char* filename) { 776 SkPath path; 777 path.setFillType((SkPath::FillType) 1); 778 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 779 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 780 path.cubicTo(SkBits2Float(0x40b98c15), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41394aaf), SkBits2Float(0xc2a4c8e8), SkBits2Float(0x418a04fd), SkBits2Float(0xc2a25fd2)); 781 path.cubicTo(SkBits2Float(0x418e8d81), SkBits2Float(0xc2a2222a), SkBits2Float(0x41931368), SkBits2Float(0xc2a1e17a), SkBits2Float(0x41979681), SkBits2Float(0xc2a19dc3)); 782 path.lineTo(SkBits2Float(0x415b29c8), SkBits2Float(0xc269a97e)); 783 path.cubicTo(SkBits2Float(0x4154a3c3), SkBits2Float(0xc26a0b66), SkBits2Float(0x414e19b0), SkBits2Float(0xc26a68ed), SkBits2Float(0x41478bd6), SkBits2Float(0xc26ac20e)); 784 path.cubicTo(SkBits2Float(0x4105f224), SkBits2Float(0xc26e3e3c), SkBits2Float(0x40862167), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 785 path.close(); 786 787 SkPath path1(path); 788 path.reset(); 789 path.setFillType((SkPath::FillType) 0); 790 path.moveTo(SkBits2Float(0x41979680), SkBits2Float(0xc2a19dc4)); 791 path.cubicTo(SkBits2Float(0x41e0e1b2), SkBits2Float(0xc29d51d4), SkBits2Float(0x42135c08), SkBits2Float(0xc295f036), SkBits2Float(0x42330e86), SkBits2Float(0xc28bc9b7)); 792 path.lineTo(SkBits2Float(0x42017048), SkBits2Float(0xc24a1a63)); 793 path.cubicTo(SkBits2Float(0x41d50cc4), SkBits2Float(0xc258c742), SkBits2Float(0x41a290a5), SkBits2Float(0xc263733c), SkBits2Float(0x415b29c7), SkBits2Float(0xc269a980)); 794 path.lineTo(SkBits2Float(0x41979680), SkBits2Float(0xc2a19dc4)); 795 path.close(); 796 797 SkPath path2(path); 798 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 799 } 800 // op end success 1 801 802 static void battleOp28(skiatest::Reporter* reporter, const char* filename) { 803 SkPath path; 804 path.setFillType((SkPath::FillType) 0); 805 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 806 path.cubicTo(SkBits2Float(0x40dd1e63), SkBits2Float(0xc2a5ffff), SkBits2Float(0x415caf98), SkBits2Float(0xc2a44632), SkBits2Float(0x41a3e96c), SkBits2Float(0xc2a0dcda)); 807 path.lineTo(SkBits2Float(0x416cfb1c), SkBits2Float(0xc2689294)); 808 path.cubicTo(SkBits2Float(0x411f8831), SkBits2Float(0xc26d8140), SkBits2Float(0x409fd849), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 809 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 810 path.close(); 811 812 SkPath path1(path); 813 path.reset(); 814 path.setFillType((SkPath::FillType) 0); 815 path.moveTo(SkBits2Float(0x41a3e96b), SkBits2Float(0xc2a0dcda)); 816 path.cubicTo(SkBits2Float(0x41a94306), SkBits2Float(0xc2a085a1), SkBits2Float(0x41ae9839), SkBits2Float(0xc2a02a23), SkBits2Float(0x41b3e8b2), SkBits2Float(0xc29fca67)); 817 path.lineTo(SkBits2Float(0x41820dff), SkBits2Float(0xc26705ca)); 818 path.cubicTo(SkBits2Float(0x417c6d0a), SkBits2Float(0xc2679035), SkBits2Float(0x4174b742), SkBits2Float(0xc268147b), SkBits2Float(0x416cfb1d), SkBits2Float(0xc2689296)); 819 path.lineTo(SkBits2Float(0x41a3e96b), SkBits2Float(0xc2a0dcda)); 820 path.close(); 821 822 SkPath path2(path); 823 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 824 } 825 // op end success 1 826 827 static void battleOp29(skiatest::Reporter* reporter, const char* filename) { 828 SkPath path; 829 path.setFillType((SkPath::FillType) 1); 830 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 831 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 832 path.cubicTo(SkBits2Float(0x40dd1e62), SkBits2Float(0xc2a60000), SkBits2Float(0x415caf97), SkBits2Float(0xc2a44632), SkBits2Float(0x41a3e96b), SkBits2Float(0xc2a0dcda)); 833 path.lineTo(SkBits2Float(0x416cfb1d), SkBits2Float(0xc2689296)); 834 path.cubicTo(SkBits2Float(0x4174b742), SkBits2Float(0xc268147b), SkBits2Float(0x417c6d0a), SkBits2Float(0xc2679035), SkBits2Float(0x41820dff), SkBits2Float(0xc26705ca)); 835 path.lineTo(SkBits2Float(0x41b3e8b2), SkBits2Float(0xc29fca67)); 836 path.cubicTo(SkBits2Float(0x41ae9839), SkBits2Float(0xc2a02a23), SkBits2Float(0x41a94307), SkBits2Float(0xc2a085a1), SkBits2Float(0x41a3e96c), SkBits2Float(0xc2a0dcda)); 837 path.lineTo(SkBits2Float(0x416cfb1c), SkBits2Float(0xc2689294)); 838 path.cubicTo(SkBits2Float(0x411f8831), SkBits2Float(0xc26d8140), SkBits2Float(0x409fd849), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 839 path.close(); 840 841 SkPath path1(path); 842 path.reset(); 843 path.setFillType((SkPath::FillType) 0); 844 path.moveTo(SkBits2Float(0x41b3e8b1), SkBits2Float(0xc29fca67)); 845 path.cubicTo(SkBits2Float(0x4205291f), SkBits2Float(0xc299b5bb), SkBits2Float(0x422d73c0), SkBits2Float(0xc28f4fcf), SkBits2Float(0x425064bf), SkBits2Float(0xc2813989)); 846 path.lineTo(SkBits2Float(0x4216a55b), SkBits2Float(0xc23ad4b9)); 847 path.cubicTo(SkBits2Float(0x41fac62f), SkBits2Float(0xc24f329e), SkBits2Float(0x41c0857c), SkBits2Float(0xc25e3b2e), SkBits2Float(0x41820dfe), SkBits2Float(0xc26705cb)); 848 path.lineTo(SkBits2Float(0x41b3e8b1), SkBits2Float(0xc29fca67)); 849 path.close(); 850 851 SkPath path2(path); 852 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 853 } 854 // op end success 1 855 856 static void battleOp30(skiatest::Reporter* reporter, const char* filename) { 857 SkPath path; 858 path.setFillType((SkPath::FillType) 0); 859 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 860 path.cubicTo(SkBits2Float(0x41028186), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4182264a), SkBits2Float(0xc2a39869), SkBits2Float(0x41c098e8), SkBits2Float(0xc29edd15)); 861 path.lineTo(SkBits2Float(0x418b3a1a), SkBits2Float(0xc265aeac)); 862 path.cubicTo(SkBits2Float(0x413c2b06), SkBits2Float(0xc26c85fe), SkBits2Float(0x40bcaeed), SkBits2Float(0xc2700000), SkBits2Float(0x337fa8c0), SkBits2Float(0xc2700000)); 863 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 864 path.close(); 865 866 SkPath path1(path); 867 path.reset(); 868 path.setFillType((SkPath::FillType) 0); 869 path.moveTo(SkBits2Float(0x41c098e9), SkBits2Float(0xc29edd15)); 870 path.cubicTo(SkBits2Float(0x41c6d4b6), SkBits2Float(0xc29e642a), SkBits2Float(0x41cd0950), SkBits2Float(0xc29de562), SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8)); 871 path.lineTo(SkBits2Float(0x4198aee4), SkBits2Float(0xc26388d7)); 872 path.cubicTo(SkBits2Float(0x41943815), SkBits2Float(0xc264488f), SkBits2Float(0x418fbbb2), SkBits2Float(0xc264ffdc), SkBits2Float(0x418b3a19), SkBits2Float(0xc265aeae)); 873 path.lineTo(SkBits2Float(0x41c098e9), SkBits2Float(0xc29edd15)); 874 path.close(); 875 876 SkPath path2(path); 877 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 878 } 879 // op end success 1 880 881 static void battleOp31(skiatest::Reporter* reporter, const char* filename) { 882 SkPath path; 883 path.setFillType((SkPath::FillType) 1); 884 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 885 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 886 path.cubicTo(SkBits2Float(0x41028186), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4182264a), SkBits2Float(0xc2a39869), SkBits2Float(0x41c098e9), SkBits2Float(0xc29edd15)); 887 path.cubicTo(SkBits2Float(0x41c6d4b6), SkBits2Float(0xc29e642a), SkBits2Float(0x41cd0950), SkBits2Float(0xc29de562), SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8)); 888 path.lineTo(SkBits2Float(0x4198aee4), SkBits2Float(0xc26388d7)); 889 path.cubicTo(SkBits2Float(0x41943816), SkBits2Float(0xc264488f), SkBits2Float(0x418fbbb2), SkBits2Float(0xc264ffda), SkBits2Float(0x418b3a1a), SkBits2Float(0xc265aeac)); 890 path.cubicTo(SkBits2Float(0x413c2b06), SkBits2Float(0xc26c85fe), SkBits2Float(0x40bcaeed), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 891 path.close(); 892 893 SkPath path1(path); 894 path.reset(); 895 path.setFillType((SkPath::FillType) 0); 896 path.moveTo(SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8)); 897 path.cubicTo(SkBits2Float(0x421be102), SkBits2Float(0xc294f1be), SkBits2Float(0x4249615f), SkBits2Float(0xc2869cbc), SkBits2Float(0x426e4d45), SkBits2Float(0xc26729aa)); 898 path.lineTo(SkBits2Float(0x422c4432), SkBits2Float(0xc2271b0a)); 899 path.cubicTo(SkBits2Float(0x42119380), SkBits2Float(0xc2429ec2), SkBits2Float(0x41e15dfd), SkBits2Float(0xc257575a), SkBits2Float(0x4198aee4), SkBits2Float(0xc26388d8)); 900 path.lineTo(SkBits2Float(0x41d33633), SkBits2Float(0xc29d60c8)); 901 path.close(); 902 903 SkPath path2(path); 904 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 905 } 906 // op end success 1 907 908 static void battleOp32(skiatest::Reporter* reporter, const char* filename) { 909 SkPath path; 910 path.setFillType((SkPath::FillType) 0); 911 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 912 path.cubicTo(SkBits2Float(0x4118c001), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41982d6e), SkBits2Float(0xc2a2b4b2), SkBits2Float(0x41e01284), SkBits2Float(0xc29c4333)); 913 path.lineTo(SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf5)); 914 path.cubicTo(SkBits2Float(0x415c0406), SkBits2Float(0xc26b3cc7), SkBits2Float(0x40dcd7ee), SkBits2Float(0xc2700000), SkBits2Float(0x35f7fd46), SkBits2Float(0xc2700000)); 915 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 916 path.close(); 917 918 SkPath path1(path); 919 path.reset(); 920 path.setFillType((SkPath::FillType) 0); 921 path.moveTo(SkBits2Float(0x41e01286), SkBits2Float(0xc29c4334)); 922 path.cubicTo(SkBits2Float(0x41e73e86), SkBits2Float(0xc29b9ea8), SkBits2Float(0x41ee5f11), SkBits2Float(0xc29af239), SkBits2Float(0x41f57356), SkBits2Float(0xc29a3dfa)); 923 path.lineTo(SkBits2Float(0x41b16f25), SkBits2Float(0xc25f0029)); 924 path.cubicTo(SkBits2Float(0x41ac5112), SkBits2Float(0xc26004c3), SkBits2Float(0x41a72a20), SkBits2Float(0xc260fe11), SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf7)); 925 path.lineTo(SkBits2Float(0x41e01286), SkBits2Float(0xc29c4334)); 926 path.close(); 927 928 SkPath path2(path); 929 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 930 } 931 // op end success 1 932 933 static void battleOp33(skiatest::Reporter* reporter, const char* filename) { 934 SkPath path; 935 path.setFillType((SkPath::FillType) 1); 936 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 937 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 938 path.cubicTo(SkBits2Float(0x4118c001), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41982d6e), SkBits2Float(0xc2a2b4b2), SkBits2Float(0x41e01286), SkBits2Float(0xc29c4334)); 939 path.cubicTo(SkBits2Float(0x41e73e86), SkBits2Float(0xc29b9ea8), SkBits2Float(0x41ee5f11), SkBits2Float(0xc29af239), SkBits2Float(0x41f57356), SkBits2Float(0xc29a3dfa)); 940 path.lineTo(SkBits2Float(0x41b16f25), SkBits2Float(0xc25f0029)); 941 path.cubicTo(SkBits2Float(0x41ac5112), SkBits2Float(0xc26004c3), SkBits2Float(0x41a72a20), SkBits2Float(0xc260fe11), SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf7)); 942 path.lineTo(SkBits2Float(0x41a1fae3), SkBits2Float(0xc261ebf5)); 943 path.cubicTo(SkBits2Float(0x415c0406), SkBits2Float(0xc26b3cc7), SkBits2Float(0x40dcd7ee), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 944 path.close(); 945 946 SkPath path1(path); 947 path.reset(); 948 path.setFillType((SkPath::FillType) 0); 949 path.moveTo(SkBits2Float(0x41f57359), SkBits2Float(0xc29a3dfa)); 950 path.cubicTo(SkBits2Float(0x42347528), SkBits2Float(0xc28ec218), SkBits2Float(0x42669614), SkBits2Float(0xc276cf04), SkBits2Float(0x4285b481), SkBits2Float(0xc244c364)); 951 path.lineTo(SkBits2Float(0x42414f00), SkBits2Float(0xc20e3d0e)); 952 path.cubicTo(SkBits2Float(0x4226b05a), SkBits2Float(0xc2326a79), SkBits2Float(0x4202738a), SkBits2Float(0xc24e65b9), SkBits2Float(0x41b16f25), SkBits2Float(0xc25f0028)); 953 path.lineTo(SkBits2Float(0x41f57359), SkBits2Float(0xc29a3dfa)); 954 path.close(); 955 956 SkPath path2(path); 957 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 958 } 959 // op end success 1 960 961 static void battleOp34(skiatest::Reporter* reporter, const char* filename) { 962 SkPath path; 963 path.setFillType((SkPath::FillType) 0); 964 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 965 path.cubicTo(SkBits2Float(0x41360dec), SkBits2Float(0xc2a60000), SkBits2Float(0x41b5150e), SkBits2Float(0xc2a1522b), SkBits2Float(0x42044925), SkBits2Float(0xc29840e5)); 966 path.lineTo(SkBits2Float(0x41bf41a8), SkBits2Float(0xc25c2022)); 967 path.cubicTo(SkBits2Float(0x4182e721), SkBits2Float(0xc2693c30), SkBits2Float(0x41039b08), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 968 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 969 path.close(); 970 971 SkPath path1(path); 972 path.reset(); 973 path.setFillType((SkPath::FillType) 0); 974 path.moveTo(SkBits2Float(0x42044925), SkBits2Float(0xc29840e4)); 975 path.cubicTo(SkBits2Float(0x4208721a), SkBits2Float(0xc2975992), SkBits2Float(0x420c9178), SkBits2Float(0xc296675c), SkBits2Float(0x4210a695), SkBits2Float(0xc2956a6a)); 976 path.lineTo(SkBits2Float(0x41d1222e), SkBits2Float(0xc25805ce)); 977 path.cubicTo(SkBits2Float(0x41cb3b2f), SkBits2Float(0xc2597382), SkBits2Float(0x41c5455b), SkBits2Float(0xc25ad1b2), SkBits2Float(0x41bf41a9), SkBits2Float(0xc25c2023)); 978 path.lineTo(SkBits2Float(0x42044925), SkBits2Float(0xc29840e4)); 979 path.close(); 980 981 SkPath path2(path); 982 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 983 } 984 // op end success 1 985 986 static void battleOp35(skiatest::Reporter* reporter, const char* filename) { 987 SkPath path; 988 path.setFillType((SkPath::FillType) 1); 989 path.moveTo(SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 990 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 991 path.cubicTo(SkBits2Float(0x41360dec), SkBits2Float(0xc2a60000), SkBits2Float(0x41b5150e), SkBits2Float(0xc2a1522b), SkBits2Float(0x42044925), SkBits2Float(0xc29840e5)); 992 path.lineTo(SkBits2Float(0x4210a695), SkBits2Float(0xc2956a6a)); 993 path.lineTo(SkBits2Float(0x41d1222e), SkBits2Float(0xc25805ce)); 994 path.cubicTo(SkBits2Float(0x41cb3b2f), SkBits2Float(0xc2597382), SkBits2Float(0x41c5455b), SkBits2Float(0xc25ad1b2), SkBits2Float(0x41bf41a9), SkBits2Float(0xc25c2023)); 995 path.lineTo(SkBits2Float(0x41bf41a8), SkBits2Float(0xc25c2022)); 996 path.cubicTo(SkBits2Float(0x4182e721), SkBits2Float(0xc2693c30), SkBits2Float(0x41039b08), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 997 path.close(); 998 999 SkPath path1(path); 1000 path.reset(); 1001 path.setFillType((SkPath::FillType) 0); 1002 path.moveTo(SkBits2Float(0x4210a693), SkBits2Float(0xc2956a6a)); 1003 path.cubicTo(SkBits2Float(0x42536b4d), SkBits2Float(0xc2854182), SkBits2Float(0x4284b863), SkBits2Float(0xc254c33a), SkBits2Float(0x42950c68), SkBits2Float(0xc2122882)); 1004 path.lineTo(SkBits2Float(0x42577de3), SkBits2Float(0xc1d35027)); 1005 path.cubicTo(SkBits2Float(0x423fe27d), SkBits2Float(0xc219cde7), SkBits2Float(0x4218d548), SkBits2Float(0xc240a8bd), SkBits2Float(0x41d1222f), SkBits2Float(0xc25805ce)); 1006 path.lineTo(SkBits2Float(0x4210a693), SkBits2Float(0xc2956a6a)); 1007 path.close(); 1008 1009 SkPath path2(path); 1010 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1011 } 1012 // op end success 1 1013 1014 static void battleOp36(skiatest::Reporter* reporter, const char* filename) { 1015 SkPath path; 1016 path.setFillType((SkPath::FillType) 0); 1017 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1018 path.cubicTo(SkBits2Float(0x414e6589), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ccf9e5), SkBits2Float(0xc29ffc89), SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc8)); 1019 path.lineTo(SkBits2Float(0x41d6e236), SkBits2Float(0xc2569b72)); 1020 path.cubicTo(SkBits2Float(0x41942cf0), SkBits2Float(0xc2674e45), SkBits2Float(0x411533d1), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1021 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1022 path.close(); 1023 1024 SkPath path1(path); 1025 path.reset(); 1026 path.setFillType((SkPath::FillType) 0); 1027 path.moveTo(SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc9)); 1028 path.cubicTo(SkBits2Float(0x421938a6), SkBits2Float(0xc293496b), SkBits2Float(0x421dc2c1), SkBits2Float(0xc2921574), SkBits2Float(0x42223e19), SkBits2Float(0xc290d421)); 1029 path.lineTo(SkBits2Float(0x41ea914d), SkBits2Float(0xc251640c)); 1030 path.cubicTo(SkBits2Float(0x41e4167f), SkBits2Float(0xc253349e), SkBits2Float(0x41dd8659), SkBits2Float(0xc254f1de), SkBits2Float(0x41d6e239), SkBits2Float(0xc2569b73)); 1031 path.lineTo(SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc9)); 1032 path.close(); 1033 1034 SkPath path2(path); 1035 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1036 } 1037 // op end success 1 1038 1039 static void battleOp37(skiatest::Reporter* reporter, const char* filename) { 1040 SkPath path; 1041 path.setFillType((SkPath::FillType) 1); 1042 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1043 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1044 path.cubicTo(SkBits2Float(0x414e6589), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ccf9e5), SkBits2Float(0xc29ffc89), SkBits2Float(0x4214a0bb), SkBits2Float(0xc2946fc9)); 1045 path.cubicTo(SkBits2Float(0x421938a6), SkBits2Float(0xc293496b), SkBits2Float(0x421dc2c1), SkBits2Float(0xc2921574), SkBits2Float(0x42223e19), SkBits2Float(0xc290d421)); 1046 path.lineTo(SkBits2Float(0x41ea914d), SkBits2Float(0xc251640c)); 1047 path.cubicTo(SkBits2Float(0x41e4167f), SkBits2Float(0xc253349e), SkBits2Float(0x41dd8659), SkBits2Float(0xc254f1de), SkBits2Float(0x41d6e239), SkBits2Float(0xc2569b73)); 1048 path.lineTo(SkBits2Float(0x41d6e236), SkBits2Float(0xc2569b72)); 1049 path.cubicTo(SkBits2Float(0x41942cf0), SkBits2Float(0xc2674e45), SkBits2Float(0x411533d1), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1050 path.close(); 1051 1052 SkPath path1(path); 1053 path.reset(); 1054 path.setFillType((SkPath::FillType) 0); 1055 path.moveTo(SkBits2Float(0x42223e19), SkBits2Float(0xc290d422)); 1056 path.cubicTo(SkBits2Float(0x426bbc38), SkBits2Float(0xc2787e1d), SkBits2Float(0x42916a94), SkBits2Float(0xc234ee59), SkBits2Float(0x429e2fac), SkBits2Float(0xc1c951fc)); 1057 path.lineTo(SkBits2Float(0x4264b3f7), SkBits2Float(0xc191885f)); 1058 path.cubicTo(SkBits2Float(0x42523d91), SkBits2Float(0xc202cb25), SkBits2Float(0x422a6939), SkBits2Float(0xc233a21b), SkBits2Float(0x41ea914d), SkBits2Float(0xc251640d)); 1059 path.lineTo(SkBits2Float(0x42223e19), SkBits2Float(0xc290d422)); 1060 path.close(); 1061 1062 SkPath path2(path); 1063 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1064 } 1065 // op end success 1 1066 1067 static void battleOp38(skiatest::Reporter* reporter, const char* filename) { 1068 SkPath path; 1069 path.setFillType((SkPath::FillType) 0); 1070 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1071 path.cubicTo(SkBits2Float(0x416c96cf), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ea70fe), SkBits2Float(0xc29e1973), SkBits2Float(0x422836c6), SkBits2Float(0xc28f1d8a)); 1072 path.lineTo(SkBits2Float(0x41f3336d), SkBits2Float(0xc24ee9f1)); 1073 path.cubicTo(SkBits2Float(0x41a979c6), SkBits2Float(0xc26493d6), SkBits2Float(0x412b073c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1074 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1075 path.close(); 1076 1077 SkPath path1(path); 1078 path.reset(); 1079 path.setFillType((SkPath::FillType) 0); 1080 path.moveTo(SkBits2Float(0x422836c5), SkBits2Float(0xc28f1d8b)); 1081 path.cubicTo(SkBits2Float(0x422d4896), SkBits2Float(0xc28da02f), SkBits2Float(0x423245ea), SkBits2Float(0xc28c11a8), SkBits2Float(0x42372d65), SkBits2Float(0xc28a7261)); 1082 path.lineTo(SkBits2Float(0x42046ad7), SkBits2Float(0xc24829ff)); 1083 path.cubicTo(SkBits2Float(0x4200df44), SkBits2Float(0xc24a8267), SkBits2Float(0x41fa87ca), SkBits2Float(0xc24cc296), SkBits2Float(0x41f3336d), SkBits2Float(0xc24ee9f1)); 1084 path.lineTo(SkBits2Float(0x422836c5), SkBits2Float(0xc28f1d8b)); 1085 path.close(); 1086 1087 SkPath path2(path); 1088 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1089 } 1090 // op end success 1 1091 1092 static void battleOp39(skiatest::Reporter* reporter, const char* filename) { 1093 SkPath path; 1094 path.setFillType((SkPath::FillType) 1); 1095 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1096 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1097 path.cubicTo(SkBits2Float(0x416c96cf), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ea70fe), SkBits2Float(0xc29e1973), SkBits2Float(0x422836c5), SkBits2Float(0xc28f1d8b)); 1098 path.cubicTo(SkBits2Float(0x422d4896), SkBits2Float(0xc28da02f), SkBits2Float(0x423245ea), SkBits2Float(0xc28c11a8), SkBits2Float(0x42372d65), SkBits2Float(0xc28a7261)); 1099 path.lineTo(SkBits2Float(0x42046ad7), SkBits2Float(0xc24829ff)); 1100 path.cubicTo(SkBits2Float(0x4200df44), SkBits2Float(0xc24a8267), SkBits2Float(0x41fa87ca), SkBits2Float(0xc24cc296), SkBits2Float(0x41f3336d), SkBits2Float(0xc24ee9f1)); 1101 path.cubicTo(SkBits2Float(0x41a979c6), SkBits2Float(0xc26493d6), SkBits2Float(0x412b073c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1102 path.close(); 1103 1104 SkPath path1(path); 1105 path.reset(); 1106 path.setFillType((SkPath::FillType) 0); 1107 path.moveTo(SkBits2Float(0x42372d65), SkBits2Float(0xc28a7262)); 1108 path.cubicTo(SkBits2Float(0x4283f2b3), SkBits2Float(0xc25f7e9c), SkBits2Float(0x429ea5c2), SkBits2Float(0xc2098801), SkBits2Float(0x42a4b292), SkBits2Float(0xc12607b1)); 1109 path.lineTo(SkBits2Float(0x426e1def), SkBits2Float(0xc0f00b21)); 1110 path.cubicTo(SkBits2Float(0x42655eb1), SkBits2Float(0xc1c6d725), SkBits2Float(0x423ec4ad), SkBits2Float(0xc2218ff6), SkBits2Float(0x42046ad7), SkBits2Float(0xc2482a00)); 1111 path.lineTo(SkBits2Float(0x42372d65), SkBits2Float(0xc28a7262)); 1112 path.close(); 1113 1114 SkPath path2(path); 1115 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1116 } 1117 // op end success 1 1118 1119 static void battleOp40(skiatest::Reporter* reporter, const char* filename) { 1120 SkPath path; 1121 path.setFillType((SkPath::FillType) 0); 1122 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1123 path.cubicTo(SkBits2Float(0x4184d4a8), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42034ddf), SkBits2Float(0xc29c0a4c), SkBits2Float(0x423a47b2), SkBits2Float(0xc289686d)); 1124 path.lineTo(SkBits2Float(0x4206a908), SkBits2Float(0xc246a97c)); 1125 path.cubicTo(SkBits2Float(0x41bdd65f), SkBits2Float(0xc26199af), SkBits2Float(0x41400b5c), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 1126 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1127 path.close(); 1128 1129 SkPath path1(path); 1130 path.reset(); 1131 path.setFillType((SkPath::FillType) 0); 1132 path.moveTo(SkBits2Float(0x423a47b2), SkBits2Float(0xc289686d)); 1133 path.cubicTo(SkBits2Float(0x423fbcc3), SkBits2Float(0xc2878eef), SkBits2Float(0x4245154e), SkBits2Float(0xc285a0be), SkBits2Float(0x424a4f85), SkBits2Float(0xc2839e81)); 1134 path.lineTo(SkBits2Float(0x42123fa7), SkBits2Float(0xc23e4af2)); 1135 path.cubicTo(SkBits2Float(0x420e7846), SkBits2Float(0xc241326c), SkBits2Float(0x420a9af5), SkBits2Float(0xc243fcec), SkBits2Float(0x4206a907), SkBits2Float(0xc246a97c)); 1136 path.lineTo(SkBits2Float(0x423a47b2), SkBits2Float(0xc289686d)); 1137 path.close(); 1138 1139 SkPath path2(path); 1140 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1141 } 1142 // op end fail 1 1143 1144 static void battleOp41(skiatest::Reporter* reporter, const char* filename) { 1145 SkPath path; 1146 path.setFillType((SkPath::FillType) 0); 1147 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1148 path.cubicTo(SkBits2Float(0x4196c4f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42148669), SkBits2Float(0xc2992c23), SkBits2Float(0x424f6452), SkBits2Float(0xc281a081)); 1149 path.lineTo(SkBits2Float(0x4215ebfd), SkBits2Float(0xc23b6999)); 1150 path.cubicTo(SkBits2Float(0x41d6bc2a), SkBits2Float(0xc25d7441), SkBits2Float(0x4159fada), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 1151 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1152 path.close(); 1153 1154 SkPath path1(path); 1155 path.reset(); 1156 path.setFillType((SkPath::FillType) 0); 1157 path.moveTo(SkBits2Float(0x424f6452), SkBits2Float(0xc281a081)); 1158 path.cubicTo(SkBits2Float(0x42553921), SkBits2Float(0xc27e96d1), SkBits2Float(0x425ae53b), SkBits2Float(0xc279ba9d), SkBits2Float(0x42606622), SkBits2Float(0xc274ae80)); 1159 path.lineTo(SkBits2Float(0x42223753), SkBits2Float(0xc230e0d8)); 1160 path.cubicTo(SkBits2Float(0x421e3cd8), SkBits2Float(0xc23486e8), SkBits2Float(0x421a2322), SkBits2Float(0xc2380a55), SkBits2Float(0x4215ebfe), SkBits2Float(0xc23b6999)); 1161 path.lineTo(SkBits2Float(0x424f6452), SkBits2Float(0xc281a081)); 1162 path.close(); 1163 1164 SkPath path2(path); 1165 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1166 } 1167 // op end success 1 1168 1169 static void battleOp42(skiatest::Reporter* reporter, const char* filename) { 1170 SkPath path; 1171 path.setFillType((SkPath::FillType) 1); 1172 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1173 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1174 path.cubicTo(SkBits2Float(0x4196c4f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42148669), SkBits2Float(0xc2992c23), SkBits2Float(0x424f6452), SkBits2Float(0xc281a081)); 1175 path.cubicTo(SkBits2Float(0x42553921), SkBits2Float(0xc27e96d1), SkBits2Float(0x425ae53b), SkBits2Float(0xc279ba9d), SkBits2Float(0x42606622), SkBits2Float(0xc274ae80)); 1176 path.lineTo(SkBits2Float(0x42223753), SkBits2Float(0xc230e0d8)); 1177 path.cubicTo(SkBits2Float(0x421e3cd8), SkBits2Float(0xc23486e8), SkBits2Float(0x421a2322), SkBits2Float(0xc2380a55), SkBits2Float(0x4215ebfd), SkBits2Float(0xc23b6999)); 1178 path.cubicTo(SkBits2Float(0x41d6bc2a), SkBits2Float(0xc25d7441), SkBits2Float(0x4159fada), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1179 path.close(); 1180 1181 SkPath path1(path); 1182 path.reset(); 1183 path.setFillType((SkPath::FillType) 0); 1184 path.moveTo(SkBits2Float(0x42606622), SkBits2Float(0xc274ae80)); 1185 path.cubicTo(SkBits2Float(0x429deeac), SkBits2Float(0xc220cc44), SkBits2Float(0x42b0742c), SkBits2Float(0xc1039d5c), SkBits2Float(0x42a03731), SkBits2Float(0x41adc1b3)); 1186 path.lineTo(SkBits2Float(0x4267a314), SkBits2Float(0x417b36e3)); 1187 path.cubicTo(SkBits2Float(0x427f1d2c), SkBits2Float(0xc0be4950), SkBits2Float(0x426455fc), SkBits2Float(0xc1e87a9a), SkBits2Float(0x42223754), SkBits2Float(0xc230e0d7)); 1188 path.lineTo(SkBits2Float(0x42606622), SkBits2Float(0xc274ae80)); 1189 path.close(); 1190 1191 SkPath path2(path); 1192 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1193 } 1194 // op end success 1 1195 1196 static void battleOp43(skiatest::Reporter* reporter, const char* filename) { 1197 SkPath path; 1198 path.setFillType((SkPath::FillType) 0); 1199 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1200 path.cubicTo(SkBits2Float(0x41aa5d9e), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42271b56), SkBits2Float(0xc295a109), SkBits2Float(0x4264d340), SkBits2Float(0xc2708c1d)); 1201 path.lineTo(SkBits2Float(0x42256a74), SkBits2Float(0xc22de3bf)); 1202 path.cubicTo(SkBits2Float(0x41f199ac), SkBits2Float(0xc25854c9), SkBits2Float(0x41764fdb), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1203 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1204 path.close(); 1205 1206 SkPath path1(path); 1207 path.reset(); 1208 path.setFillType((SkPath::FillType) 0); 1209 path.moveTo(SkBits2Float(0x4264d342), SkBits2Float(0xc2708c1d)); 1210 path.cubicTo(SkBits2Float(0x426aec59), SkBits2Float(0xc26abf16), SkBits2Float(0x4270cc6c), SkBits2Float(0xc264b73d), SkBits2Float(0x42767031), SkBits2Float(0xc25e77e8)); 1211 path.lineTo(SkBits2Float(0x423225ec), SkBits2Float(0xc220d20e)); 1212 path.cubicTo(SkBits2Float(0x422e123c), SkBits2Float(0xc2255633), SkBits2Float(0x4229d2f5), SkBits2Float(0xc229b23c), SkBits2Float(0x42256a74), SkBits2Float(0xc22de3c0)); 1213 path.lineTo(SkBits2Float(0x4264d342), SkBits2Float(0xc2708c1d)); 1214 path.close(); 1215 1216 SkPath path2(path); 1217 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1218 } 1219 // op end success 1 1220 1221 static void battleOp44(skiatest::Reporter* reporter, const char* filename) { 1222 SkPath path; 1223 path.setFillType((SkPath::FillType) 1); 1224 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1225 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1226 path.cubicTo(SkBits2Float(0x41aa5d9e), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42271b56), SkBits2Float(0xc295a109), SkBits2Float(0x4264d340), SkBits2Float(0xc2708c1d)); 1227 path.lineTo(SkBits2Float(0x4264d342), SkBits2Float(0xc2708c1d)); 1228 path.cubicTo(SkBits2Float(0x426aec59), SkBits2Float(0xc26abf16), SkBits2Float(0x4270cc6c), SkBits2Float(0xc264b73d), SkBits2Float(0x42767031), SkBits2Float(0xc25e77e8)); 1229 path.lineTo(SkBits2Float(0x423225ec), SkBits2Float(0xc220d20e)); 1230 path.cubicTo(SkBits2Float(0x422e123c), SkBits2Float(0xc2255633), SkBits2Float(0x4229d2f5), SkBits2Float(0xc229b23c), SkBits2Float(0x42256a74), SkBits2Float(0xc22de3c0)); 1231 path.lineTo(SkBits2Float(0x42256a74), SkBits2Float(0xc22de3bf)); 1232 path.cubicTo(SkBits2Float(0x41f199ac), SkBits2Float(0xc25854c9), SkBits2Float(0x41764fdb), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 1233 path.close(); 1234 1235 SkPath path1(path); 1236 path.reset(); 1237 path.setFillType((SkPath::FillType) 0); 1238 path.moveTo(SkBits2Float(0x42767032), SkBits2Float(0xc25e77e8)); 1239 path.cubicTo(SkBits2Float(0x42aa697a), SkBits2Float(0xc1ebd370), SkBits2Float(0x42b37ad4), SkBits2Float(0x410b48c2), SkBits2Float(0x4291d766), SkBits2Float(0x421e927b)); 1240 path.lineTo(SkBits2Float(0x4252dae4), SkBits2Float(0x41e542d2)); 1241 path.cubicTo(SkBits2Float(0x4281be95), SkBits2Float(0x40c95ff9), SkBits2Float(0x427660fe), SkBits2Float(0xc1aa7a03), SkBits2Float(0x423225ed), SkBits2Float(0xc220d20e)); 1242 path.lineTo(SkBits2Float(0x42767032), SkBits2Float(0xc25e77e8)); 1243 path.close(); 1244 1245 SkPath path2(path); 1246 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1247 } 1248 // op end success 1 1249 1250 static void battleOp45(skiatest::Reporter* reporter, const char* filename) { 1251 SkPath path; 1252 path.setFillType((SkPath::FillType) 0); 1253 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1254 path.cubicTo(SkBits2Float(0x41bfbd07), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423b0ef1), SkBits2Float(0xc2914772), SkBits2Float(0x427a1b1d), SkBits2Float(0xc25a5641)); 1255 path.lineTo(SkBits2Float(0x4234ccaa), SkBits2Float(0xc21dd57d)); 1256 path.cubicTo(SkBits2Float(0x42073912), SkBits2Float(0xc2520ac5), SkBits2Float(0x418a9b2a), SkBits2Float(0xc26fffff), SkBits2Float(0x3697ff52), SkBits2Float(0xc26fffff)); 1257 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1258 path.close(); 1259 1260 SkPath path1(path); 1261 path.reset(); 1262 path.setFillType((SkPath::FillType) 0); 1263 path.moveTo(SkBits2Float(0x427a1b1e), SkBits2Float(0xc25a5642)); 1264 path.cubicTo(SkBits2Float(0x4280286a), SkBits2Float(0xc253393c), SkBits2Float(0x42831c11), SkBits2Float(0xc24bd939), SkBits2Float(0x4285e673), SkBits2Float(0xc2443b5f)); 1265 path.lineTo(SkBits2Float(0x42419733), SkBits2Float(0xc20ddaba)); 1266 path.cubicTo(SkBits2Float(0x423d8e5d), SkBits2Float(0xc2135c44), SkBits2Float(0x423949dc), SkBits2Float(0xc218b118), SkBits2Float(0x4234ccac), SkBits2Float(0xc21dd57e)); 1267 path.lineTo(SkBits2Float(0x427a1b1e), SkBits2Float(0xc25a5642)); 1268 path.close(); 1269 1270 SkPath path2(path); 1271 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1272 } 1273 // op end success 1 1274 1275 static void battleOp46(skiatest::Reporter* reporter, const char* filename) { 1276 if (!FLAGS_runFail) { 1277 return; 1278 } 1279 SkPath path; 1280 path.setFillType((SkPath::FillType) 1); 1281 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc26fffff)); 1282 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1283 path.cubicTo(SkBits2Float(0x41bfbd07), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423b0ef1), SkBits2Float(0xc2914772), SkBits2Float(0x427a1b1e), SkBits2Float(0xc25a5642)); 1284 path.cubicTo(SkBits2Float(0x4280286a), SkBits2Float(0xc253393c), SkBits2Float(0x42831c11), SkBits2Float(0xc24bd939), SkBits2Float(0x4285e673), SkBits2Float(0xc2443b5f)); 1285 path.lineTo(SkBits2Float(0x42419733), SkBits2Float(0xc20ddaba)); 1286 path.cubicTo(SkBits2Float(0x423d8e5d), SkBits2Float(0xc2135c44), SkBits2Float(0x423949dc), SkBits2Float(0xc218b118), SkBits2Float(0x4234ccac), SkBits2Float(0xc21dd57e)); 1287 path.lineTo(SkBits2Float(0x4234ccaa), SkBits2Float(0xc21dd57d)); 1288 path.cubicTo(SkBits2Float(0x42073912), SkBits2Float(0xc2520ac5), SkBits2Float(0x418a9b2a), SkBits2Float(0xc26fffff), SkBits2Float(0x3697ff52), SkBits2Float(0xc26fffff)); 1289 path.close(); 1290 1291 SkPath path1(path); 1292 path.reset(); 1293 path.setFillType((SkPath::FillType) 0); 1294 path.moveTo(SkBits2Float(0x4285e672), SkBits2Float(0xc2443b5f)); 1295 path.cubicTo(SkBits2Float(0x42b50145), SkBits2Float(0xc1875361), SkBits2Float(0x42afc74e), SkBits2Float(0x41db6d5e), SkBits2Float(0x4272e616), SkBits2Float(0x426253de)); 1296 path.lineTo(SkBits2Float(0x422f96e8), SkBits2Float(0x42239c3e)); 1297 path.cubicTo(SkBits2Float(0x427e233c), SkBits2Float(0x419e9f42), SkBits2Float(0x4282d8d3), SkBits2Float(0xc143a6d1), SkBits2Float(0x42419734), SkBits2Float(0xc20ddabb)); 1298 path.lineTo(SkBits2Float(0x4285e672), SkBits2Float(0xc2443b5f)); 1299 path.close(); 1300 1301 SkPath path2(path); 1302 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1303 } 1304 // op end success 1 1305 1306 static void battleOp47(skiatest::Reporter* reporter, const char* filename) { 1307 SkPath path; 1308 path.setFillType((SkPath::FillType) 0); 1309 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1310 path.cubicTo(SkBits2Float(0x41d59904), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424f13ae), SkBits2Float(0xc28c4fb7), SkBits2Float(0x4286bb70), SkBits2Float(0xc241f0ca)); 1311 path.lineTo(SkBits2Float(0x4242cb24), SkBits2Float(0xc20c32b1)); 1312 path.cubicTo(SkBits2Float(0x4215b1b4), SkBits2Float(0xc24adc20), SkBits2Float(0x419a6875), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 1313 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1314 path.close(); 1315 1316 SkPath path1(path); 1317 path.reset(); 1318 path.setFillType((SkPath::FillType) 0); 1319 path.moveTo(SkBits2Float(0x4286bb71), SkBits2Float(0xc241f0ca)); 1320 path.cubicTo(SkBits2Float(0x4289cb2b), SkBits2Float(0xc2396eee), SkBits2Float(0x428ca6e5), SkBits2Float(0xc230a410), SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0)); 1321 path.lineTo(SkBits2Float(0x424f2d54), SkBits2Float(0xc1f24d85)); 1322 path.cubicTo(SkBits2Float(0x424b5a2a), SkBits2Float(0xc1ff6268), SkBits2Float(0x42473840), SkBits2Float(0xc2060c56), SkBits2Float(0x4242cb25), SkBits2Float(0xc20c32b2)); 1323 path.lineTo(SkBits2Float(0x4286bb71), SkBits2Float(0xc241f0ca)); 1324 path.close(); 1325 1326 SkPath path2(path); 1327 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1328 } 1329 // op end success 1 1330 1331 static void battleOp48(skiatest::Reporter* reporter, const char* filename) { 1332 SkPath path; 1333 path.setFillType((SkPath::FillType) 1); 1334 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1335 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1336 path.cubicTo(SkBits2Float(0x41d59904), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424f13ae), SkBits2Float(0xc28c4fb7), SkBits2Float(0x4286bb71), SkBits2Float(0xc241f0ca)); 1337 path.cubicTo(SkBits2Float(0x4289cb2b), SkBits2Float(0xc2396eee), SkBits2Float(0x428ca6e5), SkBits2Float(0xc230a410), SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0)); 1338 path.lineTo(SkBits2Float(0x424f2d54), SkBits2Float(0xc1f24d85)); 1339 path.cubicTo(SkBits2Float(0x424b5a2a), SkBits2Float(0xc1ff6268), SkBits2Float(0x42473840), SkBits2Float(0xc2060c56), SkBits2Float(0x4242cb24), SkBits2Float(0xc20c32b1)); 1340 path.cubicTo(SkBits2Float(0x4215b1b4), SkBits2Float(0xc24adc20), SkBits2Float(0x419a6875), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1341 path.close(); 1342 1343 SkPath path1(path); 1344 path.reset(); 1345 path.setFillType((SkPath::FillType) 0); 1346 path.moveTo(SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0)); 1347 path.cubicTo(SkBits2Float(0x42bc6513), SkBits2Float(0xc055a915), SkBits2Float(0x42a45eb2), SkBits2Float(0x42389acf), SkBits2Float(0x4231df29), SkBits2Float(0x428c2a69)); 1348 path.lineTo(SkBits2Float(0x420094fc), SkBits2Float(0x424aa62f)); 1349 path.cubicTo(SkBits2Float(0x426da4ad), SkBits2Float(0x42057300), SkBits2Float(0x42883065), SkBits2Float(0xc01a7416), SkBits2Float(0x424f2d56), SkBits2Float(0xc1f24d87)); 1350 path.lineTo(SkBits2Float(0x428f4c27), SkBits2Float(0xc22797c0)); 1351 path.close(); 1352 1353 SkPath path2(path); 1354 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1355 } 1356 // op end success 1 1357 1358 static void battleOp49(skiatest::Reporter* reporter, const char* filename) { 1359 SkPath path; 1360 path.setFillType((SkPath::FillType) 0); 1361 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1362 path.cubicTo(SkBits2Float(0x41eed329), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4265a038), SkBits2Float(0xc285ef96), SkBits2Float(0x42905111), SkBits2Float(0xc2240eac)); 1363 path.lineTo(SkBits2Float(0x4250a68d), SkBits2Float(0xc1ed30fa)); 1364 path.cubicTo(SkBits2Float(0x4225fe9e), SkBits2Float(0xc241a46c), SkBits2Float(0x41aca4fc), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 1365 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1366 path.close(); 1367 1368 SkPath path1(path); 1369 path.reset(); 1370 path.setFillType((SkPath::FillType) 0); 1371 path.moveTo(SkBits2Float(0x42905111), SkBits2Float(0xc2240ead)); 1372 path.cubicTo(SkBits2Float(0x429332f8), SkBits2Float(0xc219ea36), SkBits2Float(0x4295cfef), SkBits2Float(0xc20f79c4), SkBits2Float(0x4298252c), SkBits2Float(0xc204c875)); 1373 path.lineTo(SkBits2Float(0x425bf80f), SkBits2Float(0xc1bff9b9)); 1374 path.cubicTo(SkBits2Float(0x42589896), SkBits2Float(0xc1cf6f48), SkBits2Float(0x4254d168), SkBits2Float(0xc1de8710), SkBits2Float(0x4250a68e), SkBits2Float(0xc1ed30fc)); 1375 path.lineTo(SkBits2Float(0x42905111), SkBits2Float(0xc2240ead)); 1376 path.close(); 1377 1378 SkPath path2(path); 1379 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1380 } 1381 // op end success 1 1382 1383 static void battleOp50(skiatest::Reporter* reporter, const char* filename) { 1384 SkPath path; 1385 path.setFillType((SkPath::FillType) 1); 1386 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1387 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1388 path.cubicTo(SkBits2Float(0x41eed328), SkBits2Float(0xc2a60000), SkBits2Float(0x4265a038), SkBits2Float(0xc285ef96), SkBits2Float(0x42905111), SkBits2Float(0xc2240ead)); 1389 path.lineTo(SkBits2Float(0x42905111), SkBits2Float(0xc2240eac)); 1390 path.cubicTo(SkBits2Float(0x429332f8), SkBits2Float(0xc219ea35), SkBits2Float(0x4295cfef), SkBits2Float(0xc20f79c4), SkBits2Float(0x4298252c), SkBits2Float(0xc204c875)); 1391 path.lineTo(SkBits2Float(0x425bf80f), SkBits2Float(0xc1bff9b9)); 1392 path.cubicTo(SkBits2Float(0x42589896), SkBits2Float(0xc1cf6f48), SkBits2Float(0x4254d168), SkBits2Float(0xc1de8710), SkBits2Float(0x4250a68d), SkBits2Float(0xc1ed30fa)); 1393 path.cubicTo(SkBits2Float(0x4225fe9e), SkBits2Float(0xc241a46c), SkBits2Float(0x41aca4fc), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1394 path.close(); 1395 1396 SkPath path1(path); 1397 path.reset(); 1398 path.setFillType((SkPath::FillType) 0); 1399 path.moveTo(SkBits2Float(0x4298252d), SkBits2Float(0xc204c875)); 1400 path.cubicTo(SkBits2Float(0x42ab560c), SkBits2Float(0xc1334da0), SkBits2Float(0x42aa8ee6), SkBits2Float(0x415dbf57), SkBits2Float(0x4296030d), SkBits2Float(0x420e292a)); 1401 path.cubicTo(SkBits2Float(0x42817734), SkBits2Float(0x4264e27f), SkBits2Float(0x42365290), SkBits2Float(0x4292cae0), SkBits2Float(0x41b3e39e), SkBits2Float(0x429fcac3)); 1402 path.lineTo(SkBits2Float(0x41820a52), SkBits2Float(0x4267064e)); 1403 path.cubicTo(SkBits2Float(0x4203cca7), SkBits2Float(0x42543ae9), SkBits2Float(0x423b2de4), SkBits2Float(0x42257578), SkBits2Float(0x4258e27d), SkBits2Float(0x41cd88a1)); 1404 path.cubicTo(SkBits2Float(0x42769717), SkBits2Float(0x41204ca2), SkBits2Float(0x4277b705), SkBits2Float(0xc1019de9), SkBits2Float(0x425bf810), SkBits2Float(0xc1bff9bb)); 1405 path.lineTo(SkBits2Float(0x4298252d), SkBits2Float(0xc204c875)); 1406 path.close(); 1407 1408 SkPath path2(path); 1409 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1410 } 1411 // op end success 1 1412 1413 static void battleOp51(skiatest::Reporter* reporter, const char* filename) { 1414 SkPath path; 1415 path.setFillType((SkPath::FillType) 0); 1416 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1417 path.cubicTo(SkBits2Float(0x42044d64), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427bf9ef), SkBits2Float(0xc27d72ab), SkBits2Float(0x42984d42), SkBits2Float(0xc2041029)); 1418 path.lineTo(SkBits2Float(0x425c3202), SkBits2Float(0xc1beef44)); 1419 path.cubicTo(SkBits2Float(0x423626cb), SkBits2Float(0xc2373722), SkBits2Float(0x41bf47cb), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 1420 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1421 path.close(); 1422 1423 SkPath path1(path); 1424 path.reset(); 1425 path.setFillType((SkPath::FillType) 0); 1426 path.moveTo(SkBits2Float(0x42984d42), SkBits2Float(0xc2041029)); 1427 path.cubicTo(SkBits2Float(0x429adc06), SkBits2Float(0xc1f08771), SkBits2Float(0x429d127e), SkBits2Float(0xc1d85b80), SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc5)); 1428 path.lineTo(SkBits2Float(0x4265c6d6), SkBits2Float(0xc18a9a3f)); 1429 path.cubicTo(SkBits2Float(0x426317a7), SkBits2Float(0xc19c6729), SkBits2Float(0x425fe4aa), SkBits2Float(0xc1ade05f), SkBits2Float(0x425c3203), SkBits2Float(0xc1beef45)); 1430 path.lineTo(SkBits2Float(0x42984d42), SkBits2Float(0xc2041029)); 1431 path.close(); 1432 1433 SkPath path2(path); 1434 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1435 } 1436 // op end success 1 1437 1438 static void battleOp52(skiatest::Reporter* reporter, const char* filename) { 1439 SkPath path; 1440 path.setFillType((SkPath::FillType) 1); 1441 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1442 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1443 path.cubicTo(SkBits2Float(0x42044d64), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427bf9ef), SkBits2Float(0xc27d72ab), SkBits2Float(0x42984d42), SkBits2Float(0xc2041029)); 1444 path.cubicTo(SkBits2Float(0x429adc06), SkBits2Float(0xc1f08771), SkBits2Float(0x429d127e), SkBits2Float(0xc1d85b80), SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc5)); 1445 path.lineTo(SkBits2Float(0x4265c6d6), SkBits2Float(0xc18a9a3f)); 1446 path.cubicTo(SkBits2Float(0x426317a7), SkBits2Float(0xc19c6729), SkBits2Float(0x425fe4aa), SkBits2Float(0xc1ade05f), SkBits2Float(0x425c3202), SkBits2Float(0xc1beef44)); 1447 path.cubicTo(SkBits2Float(0x423626cb), SkBits2Float(0xc2373722), SkBits2Float(0x41bf47cb), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1448 path.close(); 1449 1450 SkPath path1(path); 1451 path.reset(); 1452 path.setFillType((SkPath::FillType) 0); 1453 path.moveTo(SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc6)); 1454 path.cubicTo(SkBits2Float(0x42ae408c), SkBits2Float(0x3fb7daeb), SkBits2Float(0x42a45c89), SkBits2Float(0x41e7c57e), SkBits2Float(0x42845101), SkBits2Float(0x42487bac)); 1455 path.cubicTo(SkBits2Float(0x42488af1), SkBits2Float(0x428e8a4c), SkBits2Float(0x41c7bd0e), SkBits2Float(0x42a6f806), SkBits2Float(0xbfc7d871), SkBits2Float(0x42a5f87b)); 1456 path.lineTo(SkBits2Float(0xbf90777c), SkBits2Float(0x426ff521)); 1457 path.cubicTo(SkBits2Float(0x419063a9), SkBits2Float(0x42716698), SkBits2Float(0x4210f87e), SkBits2Float(0x424e1511), SkBits2Float(0x423f4d05), SkBits2Float(0x4210ed75)); 1458 path.cubicTo(SkBits2Float(0x426da18c), SkBits2Float(0x41a78bb1), SkBits2Float(0x427bee4d), SkBits2Float(0x3f84e856), SkBits2Float(0x4265c6d8), SkBits2Float(0xc18a9a40)); 1459 path.lineTo(SkBits2Float(0x429eedcc), SkBits2Float(0xc1bfbbc6)); 1460 path.close(); 1461 1462 SkPath path2(path); 1463 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1464 } 1465 // op end success 1 1466 1467 static void battleOp53(skiatest::Reporter* reporter, const char* filename) { 1468 SkPath path; 1469 path.setFillType((SkPath::FillType) 0); 1470 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1471 path.cubicTo(SkBits2Float(0x421216db), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4289817d), SkBits2Float(0xc26c814f), SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183ed)); 1472 path.lineTo(SkBits2Float(0x426594dc), SkBits2Float(0xc18be3fc)); 1473 path.cubicTo(SkBits2Float(0x4246cdba), SkBits2Float(0xc22af7b1), SkBits2Float(0x41d336a3), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 1474 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1475 path.close(); 1476 1477 SkPath path1(path); 1478 path.reset(); 1479 path.setFillType((SkPath::FillType) 0); 1480 path.moveTo(SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183e9)); 1481 path.cubicTo(SkBits2Float(0x42a0d9cb), SkBits2Float(0xc1a68281), SkBits2Float(0x42a27999), SkBits2Float(0xc18b01ce), SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595d)); 1482 path.lineTo(SkBits2Float(0x426c9cb2), SkBits2Float(0xc120bbfa)); 1483 path.cubicTo(SkBits2Float(0x426ae754), SkBits2Float(0xc148f95c), SkBits2Float(0x42688e2a), SkBits2Float(0xc170bcb0), SkBits2Float(0x426594dd), SkBits2Float(0xc18be3fd)); 1484 path.lineTo(SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183e9)); 1485 path.close(); 1486 1487 SkPath path2(path); 1488 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1489 } 1490 // op end success 1 1491 1492 static void battleOp54(skiatest::Reporter* reporter, const char* filename) { 1493 if (!FLAGS_runFail) { 1494 return; 1495 } 1496 SkPath path; 1497 path.setFillType((SkPath::FillType) 1); 1498 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1499 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1500 path.cubicTo(SkBits2Float(0x421216db), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4289817d), SkBits2Float(0xc26c814f), SkBits2Float(0x429ecb3a), SkBits2Float(0xc1c183ed)); 1501 path.lineTo(SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595d)); 1502 path.lineTo(SkBits2Float(0x426c9cb2), SkBits2Float(0xc120bbfa)); 1503 path.cubicTo(SkBits2Float(0x426ae754), SkBits2Float(0xc148f95c), SkBits2Float(0x42688e2a), SkBits2Float(0xc170bcb0), SkBits2Float(0x426594dd), SkBits2Float(0xc18be3fd)); 1504 path.lineTo(SkBits2Float(0x426594dc), SkBits2Float(0xc18be3fc)); 1505 path.cubicTo(SkBits2Float(0x4246cdba), SkBits2Float(0xc22af7b1), SkBits2Float(0x41d336a3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1506 path.close(); 1507 1508 SkPath path1(path); 1509 path.reset(); 1510 path.setFillType((SkPath::FillType) 0); 1511 path.moveTo(SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595e)); 1512 path.cubicTo(SkBits2Float(0x42ad725e), SkBits2Float(0x416ed313), SkBits2Float(0x42982fa2), SkBits2Float(0x4230cc44), SkBits2Float(0x42575fca), SkBits2Float(0x427ca963)); 1513 path.cubicTo(SkBits2Float(0x41fcc0a1), SkBits2Float(0x42a44341), SkBits2Float(0x3f80ed4e), SkBits2Float(0x42affc4e), SkBits2Float(0xc1d56b7f), SkBits2Float(0x429d3115)); 1514 path.lineTo(SkBits2Float(0xc19a478e), SkBits2Float(0x426343e2)); 1515 path.cubicTo(SkBits2Float(0x3f3a6666), SkBits2Float(0x427e6fe0), SkBits2Float(0x41b6b66f), SkBits2Float(0x426d7d04), SkBits2Float(0x421bb135), SkBits2Float(0x4236a5a5)); 1516 path.cubicTo(SkBits2Float(0x425c0733), SkBits2Float(0x41ff9c8c), SkBits2Float(0x427ac435), SkBits2Float(0x412ca4f2), SkBits2Float(0x426c9cb3), SkBits2Float(0xc120bbf8)); 1517 path.lineTo(SkBits2Float(0x42a3a81d), SkBits2Float(0xc15e595e)); 1518 path.close(); 1519 1520 SkPath path2(path); 1521 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1522 } 1523 // op end success 1 1524 1525 static void battleOp55(skiatest::Reporter* reporter, const char* filename) { 1526 SkPath path; 1527 path.setFillType((SkPath::FillType) 0); 1528 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1529 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f68), SkBits2Float(0xc16b5614)); 1530 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61)); 1531 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 1532 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1533 path.close(); 1534 1535 SkPath path1(path); 1536 path.reset(); 1537 path.setFillType((SkPath::FillType) 0); 1538 path.moveTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613)); 1539 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 1540 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48)); 1541 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63)); 1542 path.lineTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613)); 1543 path.close(); 1544 1545 SkPath path2(path); 1546 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1547 } 1548 // op end success 1 1549 1550 static void battleOp56(skiatest::Reporter* reporter, const char* filename) { 1551 SkPath path; 1552 path.setFillType((SkPath::FillType) 1); 1553 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 1554 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1555 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613)); 1556 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 1557 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48)); 1558 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63)); 1559 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61)); 1560 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 1561 path.close(); 1562 1563 SkPath path1(path); 1564 path.reset(); 1565 path.setFillType((SkPath::FillType) 0); 1566 path.moveTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 1567 path.cubicTo(SkBits2Float(0x42a85e4f), SkBits2Float(0x41e6959e), SkBits2Float(0x4285b4e3), SkBits2Float(0x426ae44f), SkBits2Float(0x4219b105), SkBits2Float(0x42932450)); 1568 path.cubicTo(SkBits2Float(0x411fe111), SkBits2Float(0x42b0d679), SkBits2Float(0xc1c3966b), SkBits2Float(0x42ab1d42), SkBits2Float(0xc2482755), SkBits2Float(0x428470e8)); 1569 path.lineTo(SkBits2Float(0xc210b07c), SkBits2Float(0x423f7b24)); 1570 path.cubicTo(SkBits2Float(0xc18d6382), SkBits2Float(0x427764e8), SkBits2Float(0x40e72680), SkBits2Float(0x427fab4e), SkBits2Float(0x41de345e), SkBits2Float(0x4254bc3b)); 1571 path.cubicTo(SkBits2Float(0x42414f8e), SkBits2Float(0x4229cd28), SkBits2Float(0x42736c9d), SkBits2Float(0x41a6b008), SkBits2Float(0x426fd18e), SkBits2Float(0xc0154a3f)); 1572 path.lineTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 1573 path.close(); 1574 1575 SkPath path2(path); 1576 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1577 } 1578 // op end success 1 1579 1580 static void battleOp57(skiatest::Reporter* reporter, const char* filename) { 1581 SkPath path; 1582 path.setFillType((SkPath::FillType) 0); 1583 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1584 path.cubicTo(SkBits2Float(0x422b8e0b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429d6dbc), SkBits2Float(0xc2494bad), SkBits2Float(0x42a54cb6), SkBits2Float(0xc0f3b760)); 1585 path.lineTo(SkBits2Float(0x426efcca), SkBits2Float(0xc0b02e2c)); 1586 path.cubicTo(SkBits2Float(0x42639b94), SkBits2Float(0xc21183d2), SkBits2Float(0x41f807f9), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 1587 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1588 path.close(); 1589 1590 SkPath path1(path); 1591 path.reset(); 1592 path.setFillType((SkPath::FillType) 0); 1593 path.moveTo(SkBits2Float(0x42a54cb7), SkBits2Float(0xc0f3b757)); 1594 path.cubicTo(SkBits2Float(0x42a60d08), SkBits2Float(0xc0628d9e), SkBits2Float(0x42a632b1), SkBits2Float(0x3f0efcd8), SkBits2Float(0x42a5bd61), SkBits2Float(0x4094a90a)); 1595 path.lineTo(SkBits2Float(0x426f9faf), SkBits2Float(0x4056ee3d)); 1596 path.cubicTo(SkBits2Float(0x42704949), SkBits2Float(0x3ecebaba), SkBits2Float(0x427012d8), SkBits2Float(0xc023c5fe), SkBits2Float(0x426efccb), SkBits2Float(0xc0b02e2d)); 1597 path.lineTo(SkBits2Float(0x42a54cb7), SkBits2Float(0xc0f3b757)); 1598 path.close(); 1599 1600 SkPath path2(path); 1601 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1602 } 1603 // op end success 1 1604 1605 static void battleOp58(skiatest::Reporter* reporter, const char* filename) { 1606 SkPath path; 1607 path.setFillType((SkPath::FillType) 1); 1608 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 1609 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1610 path.cubicTo(SkBits2Float(0x422b8e0b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429d6dbc), SkBits2Float(0xc2494bad), SkBits2Float(0x42a54cb7), SkBits2Float(0xc0f3b757)); 1611 path.cubicTo(SkBits2Float(0x42a60d08), SkBits2Float(0xc0628d9e), SkBits2Float(0x42a632b1), SkBits2Float(0x3f0efcd8), SkBits2Float(0x42a5bd61), SkBits2Float(0x4094a90a)); 1612 path.lineTo(SkBits2Float(0x426f9faf), SkBits2Float(0x4056ee3d)); 1613 path.cubicTo(SkBits2Float(0x42704949), SkBits2Float(0x3ecebaba), SkBits2Float(0x427012d8), SkBits2Float(0xc023c5fe), SkBits2Float(0x426efcca), SkBits2Float(0xc0b02e2c)); 1614 path.cubicTo(SkBits2Float(0x42639b94), SkBits2Float(0xc21183d2), SkBits2Float(0x41f807f9), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 1615 path.close(); 1616 1617 SkPath path1(path); 1618 path.reset(); 1619 path.setFillType((SkPath::FillType) 0); 1620 path.moveTo(SkBits2Float(0x42a5bd62), SkBits2Float(0x4094a90c)); 1621 path.cubicTo(SkBits2Float(0x42a1e9d4), SkBits2Float(0x421b17cd), SkBits2Float(0x426944f3), SkBits2Float(0x428879ea), SkBits2Float(0x41ceac14), SkBits2Float(0x429dc116)); 1622 path.cubicTo(SkBits2Float(0xc0d4c6f5), SkBits2Float(0x42b30843), SkBits2Float(0xc2295516), SkBits2Float(0x429e4e8b), SkBits2Float(0xc2802142), SkBits2Float(0x4253148e)); 1623 path.lineTo(SkBits2Float(0xc2393f81), SkBits2Float(0x42189693)); 1624 path.cubicTo(SkBits2Float(0xc1f4d162), SkBits2Float(0x4264e09b), SkBits2Float(0xc099d099), SkBits2Float(0x42816bc3), SkBits2Float(0x419566d0), SkBits2Float(0x42641418)); 1625 path.cubicTo(SkBits2Float(0x4228a0e3), SkBits2Float(0x424550a9), SkBits2Float(0x426a177b), SkBits2Float(0x41e03b19), SkBits2Float(0x426f9fb0), SkBits2Float(0x4056ee3a)); 1626 path.lineTo(SkBits2Float(0x42a5bd62), SkBits2Float(0x4094a90c)); 1627 path.close(); 1628 1629 SkPath path2(path); 1630 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1631 } 1632 // op end success 1 1633 1634 static void battleOp59(skiatest::Reporter* reporter, const char* filename) { // hung 1635 if (!FLAGS_runFail) { 1636 return; 1637 } 1638 SkPath path; 1639 path.setFillType((SkPath::FillType) 0); 1640 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1641 path.cubicTo(SkBits2Float(0x423693bc), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42a57249), SkBits2Float(0xc2389374), SkBits2Float(0x42a5ff3a), SkBits2Float(0xbf002494)); 1642 path.lineTo(SkBits2Float(0x426ffee2), SkBits2Float(0xbeb944c3)); 1643 path.cubicTo(SkBits2Float(0x426f331d), SkBits2Float(0xc2056daf), SkBits2Float(0x4203fbc4), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 1644 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1645 path.close(); 1646 1647 SkPath path1(path); 1648 path.reset(); 1649 path.setFillType((SkPath::FillType) 0); 1650 path.moveTo(SkBits2Float(0x42a5ff3a), SkBits2Float(0xbf0024e6)); 1651 path.cubicTo(SkBits2Float(0x42a60c9b), SkBits2Float(0x40752b0d), SkBits2Float(0x42a56c5d), SkBits2Float(0x410284fd), SkBits2Float(0x42a41ffb), SkBits2Float(0x414709fb)); 1652 path.lineTo(SkBits2Float(0x426d49ff), SkBits2Float(0x410fe233)); 1653 path.cubicTo(SkBits2Float(0x426f2a8e), SkBits2Float(0x40bcb3f0), SkBits2Float(0x42701239), SkBits2Float(0x40313ae3), SkBits2Float(0x426ffee3), SkBits2Float(0xbeb944c6)); 1654 path.lineTo(SkBits2Float(0x42a5ff3a), SkBits2Float(0xbf0024e6)); 1655 path.close(); 1656 1657 SkPath path2(path); 1658 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1659 } 1660 1661 static void battleOp60(skiatest::Reporter* reporter, const char* filename) { 1662 SkPath path; 1663 path.setFillType((SkPath::FillType) 0); 1664 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1665 path.cubicTo(SkBits2Float(0x3e9334c2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f13342a), SkBits2Float(0xc2a5ff3c), SkBits2Float(0x3f5ccd0d), SkBits2Float(0xc2a5fdb4)); 1666 path.lineTo(SkBits2Float(0x3f1f9d85), SkBits2Float(0xc26ffcaf)); 1667 path.cubicTo(SkBits2Float(0x3ed4d324), SkBits2Float(0xc26ffee7), SkBits2Float(0x3e54d404), SkBits2Float(0xc2700000), SkBits2Float(0x36b23f68), SkBits2Float(0xc2700000)); 1668 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1669 path.close(); 1670 1671 SkPath path1(path); 1672 path.reset(); 1673 path.setFillType((SkPath::FillType) 0); 1674 path.moveTo(SkBits2Float(0x3f5ccd1a), SkBits2Float(0xc2a5fdb5)); 1675 path.cubicTo(SkBits2Float(0x3f642956), SkBits2Float(0xc2a5fd8c), SkBits2Float(0x3f6b855d), SkBits2Float(0xc2a5fd63), SkBits2Float(0x3f72e163), SkBits2Float(0xc2a5fd38)); 1676 path.lineTo(SkBits2Float(0x3f2f9381), SkBits2Float(0xc26ffbfc)); 1677 path.cubicTo(SkBits2Float(0x3f2a4188), SkBits2Float(0xc26ffc3b), SkBits2Float(0x3f24ef95), SkBits2Float(0xc26ffc76), SkBits2Float(0x3f1f9da0), SkBits2Float(0xc26ffcb0)); 1678 path.lineTo(SkBits2Float(0x3f5ccd1a), SkBits2Float(0xc2a5fdb5)); 1679 path.close(); 1680 1681 SkPath path2(path); 1682 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1683 } 1684 // op end success 1 1685 1686 static void battleOp61(skiatest::Reporter* reporter, const char* filename) { 1687 SkPath path; 1688 path.setFillType((SkPath::FillType) 1); 1689 path.moveTo(SkBits2Float(0x36b23f68), SkBits2Float(0xc2700000)); 1690 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1691 path.cubicTo(SkBits2Float(0x3e9334c2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f13342a), SkBits2Float(0xc2a5ff3c), SkBits2Float(0x3f5ccd1a), SkBits2Float(0xc2a5fdb5)); 1692 path.cubicTo(SkBits2Float(0x3f642956), SkBits2Float(0xc2a5fd8c), SkBits2Float(0x3f6b855d), SkBits2Float(0xc2a5fd63), SkBits2Float(0x3f72e163), SkBits2Float(0xc2a5fd38)); 1693 path.lineTo(SkBits2Float(0x3f2f9381), SkBits2Float(0xc26ffbfc)); 1694 path.cubicTo(SkBits2Float(0x3f2a4188), SkBits2Float(0xc26ffc3b), SkBits2Float(0x3f24ef95), SkBits2Float(0xc26ffc76), SkBits2Float(0x3f1f9d85), SkBits2Float(0xc26ffcaf)); 1695 path.cubicTo(SkBits2Float(0x3ed4d324), SkBits2Float(0xc26ffee7), SkBits2Float(0x3e54d404), SkBits2Float(0xc2700000), SkBits2Float(0x36b23f68), SkBits2Float(0xc2700000)); 1696 path.close(); 1697 1698 SkPath path1(path); 1699 path.reset(); 1700 path.setFillType((SkPath::FillType) 0); 1701 path.moveTo(SkBits2Float(0x3f72e162), SkBits2Float(0xc2a5fd39)); 1702 path.cubicTo(SkBits2Float(0x3fb51288), SkBits2Float(0xc2a5fa80), SkBits2Float(0x3ff0b297), SkBits2Float(0xc2a5f5c4), SkBits2Float(0x401627a5), SkBits2Float(0xc2a5ef06)); 1703 path.lineTo(SkBits2Float(0x3fd9177b), SkBits2Float(0xc26fe773)); 1704 path.cubicTo(SkBits2Float(0x3fadff90), SkBits2Float(0xc26ff134), SkBits2Float(0x3f82e54e), SkBits2Float(0xc26ff80c), SkBits2Float(0x3f2f9393), SkBits2Float(0xc26ffbfc)); 1705 path.lineTo(SkBits2Float(0x3f72e162), SkBits2Float(0xc2a5fd39)); 1706 path.close(); 1707 1708 SkPath path2(path); 1709 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1710 } 1711 // op end success 1 1712 1713 static void battleOp62(skiatest::Reporter* reporter, const char* filename) { 1714 SkPath path; 1715 path.setFillType((SkPath::FillType) 0); 1716 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1717 path.cubicTo(SkBits2Float(0x3f614848), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fe14683), SkBits2Float(0xc2a5f8d5), SkBits2Float(0x4028ee0f), SkBits2Float(0xc2a5ea81)); 1718 path.lineTo(SkBits2Float(0x3ff43c76), SkBits2Float(0xc26fe0ec)); 1719 path.cubicTo(SkBits2Float(0x3fa2d98a), SkBits2Float(0xc26ff5a4), SkBits2Float(0x3f22dad5), SkBits2Float(0xc2700000), SkBits2Float(0xb5420574), SkBits2Float(0xc2700000)); 1720 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1721 path.close(); 1722 1723 SkPath path1(path); 1724 path.reset(); 1725 path.setFillType((SkPath::FillType) 0); 1726 path.moveTo(SkBits2Float(0x4028ee15), SkBits2Float(0xc2a5ea81)); 1727 path.cubicTo(SkBits2Float(0x402e8f25), SkBits2Float(0xc2a5e912), SkBits2Float(0x40343026), SkBits2Float(0xc2a5e791), SkBits2Float(0x4039d111), SkBits2Float(0xc2a5e5fd)); 1728 path.lineTo(SkBits2Float(0x4006533c), SkBits2Float(0xc26fda66)); 1729 path.cubicTo(SkBits2Float(0x4002419e), SkBits2Float(0xc26fdcaf), SkBits2Float(0x3ffc5fdb), SkBits2Float(0xc26fdedc), SkBits2Float(0x3ff43c61), SkBits2Float(0xc26fe0ed)); 1730 path.lineTo(SkBits2Float(0x4028ee15), SkBits2Float(0xc2a5ea81)); 1731 path.close(); 1732 1733 SkPath path2(path); 1734 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1735 } 1736 // op end success 1 1737 1738 static void battleOp63(skiatest::Reporter* reporter, const char* filename) { 1739 if (!FLAGS_runFail) { 1740 return; 1741 } 1742 SkPath path; 1743 path.setFillType((SkPath::FillType) 1); 1744 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1745 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1746 path.cubicTo(SkBits2Float(0x3f614848), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fe14683), SkBits2Float(0xc2a5f8d5), SkBits2Float(0x4028ee15), SkBits2Float(0xc2a5ea81)); 1747 path.cubicTo(SkBits2Float(0x402e8f25), SkBits2Float(0xc2a5e912), SkBits2Float(0x40343026), SkBits2Float(0xc2a5e791), SkBits2Float(0x4039d111), SkBits2Float(0xc2a5e5fd)); 1748 path.lineTo(SkBits2Float(0x4006533c), SkBits2Float(0xc26fda66)); 1749 path.cubicTo(SkBits2Float(0x400241a2), SkBits2Float(0xc26fdcaf), SkBits2Float(0x3ffc5fea), SkBits2Float(0xc26fdedc), SkBits2Float(0x3ff43c76), SkBits2Float(0xc26fe0ec)); 1750 path.cubicTo(SkBits2Float(0x3fa2d98a), SkBits2Float(0xc26ff5a4), SkBits2Float(0x3f22dad5), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 1751 path.close(); 1752 path.moveTo(SkBits2Float(0x40186abb), SkBits2Float(0xc295b297)); 1753 path.lineTo(SkBits2Float(0x3ff43c61), SkBits2Float(0xc26fe0ed)); 1754 path.lineTo(SkBits2Float(0x3ff43c77), SkBits2Float(0xc26fe0ed)); 1755 path.lineTo(SkBits2Float(0x40186abb), SkBits2Float(0xc295b297)); 1756 path.close(); 1757 1758 SkPath path1(path); 1759 path.reset(); 1760 path.setFillType((SkPath::FillType) 0); 1761 path.moveTo(SkBits2Float(0x4039d102), SkBits2Float(0xc2a5e5fe)); 1762 path.cubicTo(SkBits2Float(0x408a83ff), SkBits2Float(0xc2a5cc72), SkBits2Float(0x40b8130f), SkBits2Float(0xc2a5a01a), SkBits2Float(0x40e58a06), SkBits2Float(0xc2a56100)); 1763 path.lineTo(SkBits2Float(0x40a5ee90), SkBits2Float(0xc26f1a20)); 1764 path.cubicTo(SkBits2Float(0x408510de), SkBits2Float(0xc26f755e), SkBits2Float(0x40484386), SkBits2Float(0xc26fb57a), SkBits2Float(0x40065347), SkBits2Float(0xc26fda68)); 1765 path.lineTo(SkBits2Float(0x4039d102), SkBits2Float(0xc2a5e5fe)); 1766 path.close(); 1767 1768 SkPath path2(path); 1769 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1770 } 1771 // op end success 1 1772 1773 static void battleOp64(skiatest::Reporter* reporter, const char* filename) { 1774 SkPath path; 1775 path.setFillType((SkPath::FillType) 0); 1776 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1777 path.cubicTo(SkBits2Float(0x3faf587e), SkBits2Float(0xc2a5ffff), SkBits2Float(0x402f5505), SkBits2Float(0xc2a5eea1), SkBits2Float(0x408372de), SkBits2Float(0xc2a5cbeb)); 1778 path.lineTo(SkBits2Float(0x403e0bd0), SkBits2Float(0xc26fb4b6)); 1779 path.cubicTo(SkBits2Float(0x3ffd7de6), SkBits2Float(0xc26fe6e6), SkBits2Float(0x3f7d82fb), SkBits2Float(0xc2700000), SkBits2Float(0x363f7eb2), SkBits2Float(0xc2700000)); 1780 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1781 path.close(); 1782 1783 SkPath path1(path); 1784 path.reset(); 1785 path.setFillType((SkPath::FillType) 0); 1786 path.moveTo(SkBits2Float(0x408372d6), SkBits2Float(0xc2a5cbec)); 1787 path.cubicTo(SkBits2Float(0x4087d39d), SkBits2Float(0xc2a5c874), SkBits2Float(0x408c3440), SkBits2Float(0xc2a5c4cf), SkBits2Float(0x409094bd), SkBits2Float(0xc2a5c0fe)); 1788 path.lineTo(SkBits2Float(0x40510866), SkBits2Float(0xc26fa4e7)); 1789 path.cubicTo(SkBits2Float(0x404ab468), SkBits2Float(0xc26faa6c), SkBits2Float(0x40446037), SkBits2Float(0xc26fafb2), SkBits2Float(0x403e0bd2), SkBits2Float(0xc26fb4b7)); 1790 path.lineTo(SkBits2Float(0x408372d6), SkBits2Float(0xc2a5cbec)); 1791 path.close(); 1792 1793 SkPath path2(path); 1794 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1795 } 1796 // op end success 1 1797 1798 static void battleOp65(skiatest::Reporter* reporter, const char* filename) { 1799 SkPath path; 1800 path.setFillType((SkPath::FillType) 1); 1801 path.moveTo(SkBits2Float(0x363f7eb2), SkBits2Float(0xc2700000)); 1802 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1803 path.cubicTo(SkBits2Float(0x3faf5872), SkBits2Float(0xc2a60000), SkBits2Float(0x402f54f9), SkBits2Float(0xc2a5eea1), SkBits2Float(0x408372d5), SkBits2Float(0xc2a5cbeb)); 1804 path.lineTo(SkBits2Float(0x408372d6), SkBits2Float(0xc2a5cbec)); 1805 path.cubicTo(SkBits2Float(0x4087d39d), SkBits2Float(0xc2a5c874), SkBits2Float(0x408c3440), SkBits2Float(0xc2a5c4cf), SkBits2Float(0x409094bd), SkBits2Float(0xc2a5c0fe)); 1806 path.lineTo(SkBits2Float(0x40510866), SkBits2Float(0xc26fa4e7)); 1807 path.cubicTo(SkBits2Float(0x404ab468), SkBits2Float(0xc26faa6c), SkBits2Float(0x40446037), SkBits2Float(0xc26fafb2), SkBits2Float(0x403e0bd0), SkBits2Float(0xc26fb4b6)); 1808 path.cubicTo(SkBits2Float(0x3ffd7de6), SkBits2Float(0xc26fe6e6), SkBits2Float(0x3f7d82fb), SkBits2Float(0xc2700000), SkBits2Float(0x363f7eb2), SkBits2Float(0xc2700000)); 1809 path.close(); 1810 1811 SkPath path1(path); 1812 path.reset(); 1813 path.setFillType((SkPath::FillType) 0); 1814 path.moveTo(SkBits2Float(0x409094be), SkBits2Float(0xc2a5c0fe)); 1815 path.cubicTo(SkBits2Float(0x40d784bb), SkBits2Float(0xc2a5831d), SkBits2Float(0x410f22d3), SkBits2Float(0xc2a517ba), SkBits2Float(0x413255ec), SkBits2Float(0xc2a47f15)); 1816 path.lineTo(SkBits2Float(0x4100ead4), SkBits2Float(0xc26dd37e)); 1817 path.cubicTo(SkBits2Float(0x40cef193), SkBits2Float(0xc26eb02f), SkBits2Float(0x409bcbdf), SkBits2Float(0xc26f4b72), SkBits2Float(0x40510859), SkBits2Float(0xc26fa4e8)); 1818 path.lineTo(SkBits2Float(0x409094be), SkBits2Float(0xc2a5c0fe)); 1819 path.close(); 1820 1821 SkPath path2(path); 1822 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1823 } 1824 // op end success 1 1825 1826 static void battleOp66(skiatest::Reporter* reporter, const char* filename) { 1827 SkPath path; 1828 path.setFillType((SkPath::FillType) 0); 1829 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1830 path.cubicTo(SkBits2Float(0x4037e518), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b7d534), SkBits2Float(0xc2a5b39a), SkBits2Float(0x4109a47d), SkBits2Float(0xc2a51b1f)); 1831 path.lineTo(SkBits2Float(0x40c70051), SkBits2Float(0xc26eb519)); 1832 path.cubicTo(SkBits2Float(0x4084e427), SkBits2Float(0xc26f918c), SkBits2Float(0x4004efa4), SkBits2Float(0xc26fffff), SkBits2Float(0x3543fa8c), SkBits2Float(0xc26fffff)); 1833 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1834 path.close(); 1835 1836 SkPath path1(path); 1837 path.reset(); 1838 path.setFillType((SkPath::FillType) 0); 1839 path.moveTo(SkBits2Float(0x4109a47c), SkBits2Float(0xc2a51b20)); 1840 path.cubicTo(SkBits2Float(0x410e36d1), SkBits2Float(0xc2a50be2), SkBits2Float(0x4112c883), SkBits2Float(0xc2a4fbe1), SkBits2Float(0x41175985), SkBits2Float(0xc2a4eb1d)); 1841 path.lineTo(SkBits2Float(0x40dad196), SkBits2Float(0xc26e6faf)); 1842 path.cubicTo(SkBits2Float(0x40d4377d), SkBits2Float(0xc26e87ed), SkBits2Float(0x40cd9c5c), SkBits2Float(0xc26e9f10), SkBits2Float(0x40c7004e), SkBits2Float(0xc26eb51a)); 1843 path.lineTo(SkBits2Float(0x4109a47c), SkBits2Float(0xc2a51b20)); 1844 path.close(); 1845 1846 SkPath path2(path); 1847 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1848 } 1849 // op end success 1 1850 1851 static void battleOp67(skiatest::Reporter* reporter, const char* filename) { // crashed 1852 SkPath path; 1853 path.setFillType((SkPath::FillType) 1); 1854 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 1855 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1856 path.cubicTo(SkBits2Float(0x4037e518), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b7d534), SkBits2Float(0xc2a5b39a), SkBits2Float(0x4109a47c), SkBits2Float(0xc2a51b20)); 1857 path.cubicTo(SkBits2Float(0x410e36d1), SkBits2Float(0xc2a50be2), SkBits2Float(0x4112c883), SkBits2Float(0xc2a4fbe1), SkBits2Float(0x41175985), SkBits2Float(0xc2a4eb1d)); 1858 path.lineTo(SkBits2Float(0x40dad196), SkBits2Float(0xc26e6faf)); 1859 path.cubicTo(SkBits2Float(0x40d4377e), SkBits2Float(0xc26e87ed), SkBits2Float(0x40cd9c5f), SkBits2Float(0xc26e9f10), SkBits2Float(0x40c70052), SkBits2Float(0xc26eb51a)); 1860 path.lineTo(SkBits2Float(0x40c70051), SkBits2Float(0xc26eb519)); 1861 path.cubicTo(SkBits2Float(0x4084e427), SkBits2Float(0xc26f918c), SkBits2Float(0x4004efa4), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 1862 path.close(); 1863 1864 SkPath path1(path); 1865 path.reset(); 1866 path.setFillType((SkPath::FillType) 0); 1867 path.moveTo(SkBits2Float(0x4117597f), SkBits2Float(0xc2a4eb1d)); 1868 path.cubicTo(SkBits2Float(0x41616445), SkBits2Float(0xc2a3db51), SkBits2Float(0x41954b2d), SkBits2Float(0xc2a2048b), SkBits2Float(0x41b914a4), SkBits2Float(0xc29f6bcb)); 1869 path.lineTo(SkBits2Float(0x4185cb10), SkBits2Float(0xc2667d00)); 1870 path.cubicTo(SkBits2Float(0x4157d8a2), SkBits2Float(0xc26a3e17), SkBits2Float(0x4122ef07), SkBits2Float(0xc26ce6b9), SkBits2Float(0x40dad195), SkBits2Float(0xc26e6faf)); 1871 path.lineTo(SkBits2Float(0x4117597f), SkBits2Float(0xc2a4eb1d)); 1872 path.close(); 1873 1874 SkPath path2(path); 1875 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1876 } 1877 1878 static void battleOp68(skiatest::Reporter* reporter, const char* filename) { 1879 SkPath path; 1880 path.setFillType((SkPath::FillType) 0); 1881 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1882 path.cubicTo(SkBits2Float(0x3e1b2207), SkBits2Float(0xc2a60000), SkBits2Float(0x3e9b2105), SkBits2Float(0xc2a5ffca), SkBits2Float(0x3ee8b0c0), SkBits2Float(0xc2a5ff5d)); 1883 path.lineTo(SkBits2Float(0x3ea83563), SkBits2Float(0xc26fff14)); 1884 path.cubicTo(SkBits2Float(0x3e60486a), SkBits2Float(0xc26fffb2), SkBits2Float(0x3de049e3), SkBits2Float(0xc2700000), SkBits2Float(0x36b67768), SkBits2Float(0xc2700000)); 1885 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1886 path.close(); 1887 1888 SkPath path1(path); 1889 path.reset(); 1890 path.setFillType((SkPath::FillType) 0); 1891 path.moveTo(SkBits2Float(0x3ee8b040), SkBits2Float(0xc2a5ff5d)); 1892 path.cubicTo(SkBits2Float(0x3ef0720a), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef83386), SkBits2Float(0xc2a5ff47), SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b)); 1893 path.lineTo(SkBits2Float(0x3eb90778), SkBits2Float(0xc26ffee3)); 1894 path.cubicTo(SkBits2Float(0x3eb36c27), SkBits2Float(0xc26ffef6), SkBits2Float(0x3eadd0dd), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea83592), SkBits2Float(0xc26fff16)); 1895 path.lineTo(SkBits2Float(0x3ee8b040), SkBits2Float(0xc2a5ff5d)); 1896 path.close(); 1897 1898 SkPath path2(path); 1899 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1900 } 1901 // op end success 1 1902 1903 static void battleOp69(skiatest::Reporter* reporter, const char* filename) { 1904 SkPath path; 1905 path.setFillType((SkPath::FillType) 1); 1906 path.moveTo(SkBits2Float(0x36b67768), SkBits2Float(0xc2700000)); 1907 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1908 path.cubicTo(SkBits2Float(0x3e1b21b2), SkBits2Float(0xc2a60000), SkBits2Float(0x3e9b20b0), SkBits2Float(0xc2a5ffca), SkBits2Float(0x3ee8b040), SkBits2Float(0xc2a5ff5d)); 1909 path.cubicTo(SkBits2Float(0x3ef0720a), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef83386), SkBits2Float(0xc2a5ff47), SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b)); 1910 path.lineTo(SkBits2Float(0x3eb90778), SkBits2Float(0xc26ffee3)); 1911 path.lineTo(SkBits2Float(0x3ea83592), SkBits2Float(0xc26fff16)); 1912 path.lineTo(SkBits2Float(0x3ea83563), SkBits2Float(0xc26fff14)); 1913 path.cubicTo(SkBits2Float(0x3e60486a), SkBits2Float(0xc26fffb2), SkBits2Float(0x3de049e3), SkBits2Float(0xc2700000), SkBits2Float(0x36b67768), SkBits2Float(0xc2700000)); 1914 path.close(); 1915 1916 SkPath path1(path); 1917 path.reset(); 1918 path.setFillType((SkPath::FillType) 0); 1919 path.moveTo(SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b)); 1920 path.cubicTo(SkBits2Float(0x3f3ed289), SkBits2Float(0xc2a5fe79), SkBits2Float(0x3f7daa5c), SkBits2Float(0xc2a5fd28), SkBits2Float(0x3f9e4099), SkBits2Float(0xc2a5fb49)); 1921 path.lineTo(SkBits2Float(0x3f64cc5f), SkBits2Float(0xc26ff92f)); 1922 path.cubicTo(SkBits2Float(0x3f375f8f), SkBits2Float(0xc26ffbe5), SkBits2Float(0x3f09f1cf), SkBits2Float(0xc26ffdcc), SkBits2Float(0x3eb9075f), SkBits2Float(0xc26ffee4)); 1923 path.lineTo(SkBits2Float(0x3efff501), SkBits2Float(0xc2a5ff3b)); 1924 path.close(); 1925 1926 SkPath path2(path); 1927 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1928 } 1929 // op end success 1 1930 1931 static void battleOp70(skiatest::Reporter* reporter, const char* filename) { 1932 SkPath path; 1933 path.setFillType((SkPath::FillType) 0); 1934 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1935 path.cubicTo(SkBits2Float(0x3f0938d2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f893841), SkBits2Float(0xc2a5fd56), SkBits2Float(0x3fcdd137), SkBits2Float(0xc2a5f805)); 1936 path.lineTo(SkBits2Float(0x3f94c89b), SkBits2Float(0xc26ff478)); 1937 path.cubicTo(SkBits2Float(0x3f4663c1), SkBits2Float(0xc26ffc29), SkBits2Float(0x3ec6647d), SkBits2Float(0xc2700000), SkBits2Float(0x360ebeb2), SkBits2Float(0xc2700000)); 1938 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1939 path.close(); 1940 1941 SkPath path1(path); 1942 path.reset(); 1943 path.setFillType((SkPath::FillType) 0); 1944 path.moveTo(SkBits2Float(0x3fcdd13c), SkBits2Float(0xc2a5f806)); 1945 path.cubicTo(SkBits2Float(0x3fd4ad55), SkBits2Float(0xc2a5f77d), SkBits2Float(0x3fdb895f), SkBits2Float(0xc2a5f6ef), SkBits2Float(0x3fe26560), SkBits2Float(0xc2a5f659)); 1946 path.lineTo(SkBits2Float(0x3fa3a8ea), SkBits2Float(0xc26ff20c)); 1947 path.cubicTo(SkBits2Float(0x3f9eb37e), SkBits2Float(0xc26ff2e6), SkBits2Float(0x3f99be11), SkBits2Float(0xc26ff3b4), SkBits2Float(0x3f94c89e), SkBits2Float(0xc26ff479)); 1948 path.lineTo(SkBits2Float(0x3fcdd13c), SkBits2Float(0xc2a5f806)); 1949 path.close(); 1950 1951 SkPath path2(path); 1952 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1953 } 1954 // op end success 1 1955 1956 static void battleOp71(skiatest::Reporter* reporter, const char* filename) { 1957 SkPath path; 1958 path.setFillType((SkPath::FillType) 1); 1959 path.moveTo(SkBits2Float(0x360ebeb2), SkBits2Float(0xc2700000)); 1960 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 1961 path.cubicTo(SkBits2Float(0x3f0938d2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f893841), SkBits2Float(0xc2a5fd56), SkBits2Float(0x3fcdd13c), SkBits2Float(0xc2a5f806)); 1962 path.cubicTo(SkBits2Float(0x3fd4ad55), SkBits2Float(0xc2a5f77d), SkBits2Float(0x3fdb895f), SkBits2Float(0xc2a5f6ef), SkBits2Float(0x3fe26560), SkBits2Float(0xc2a5f659)); 1963 path.lineTo(SkBits2Float(0x3fa3a8ea), SkBits2Float(0xc26ff20c)); 1964 path.cubicTo(SkBits2Float(0x3f9eb37e), SkBits2Float(0xc26ff2e6), SkBits2Float(0x3f99be11), SkBits2Float(0xc26ff3b4), SkBits2Float(0x3f94c89b), SkBits2Float(0xc26ff478)); 1965 path.cubicTo(SkBits2Float(0x3f4663c1), SkBits2Float(0xc26ffc29), SkBits2Float(0x3ec6647d), SkBits2Float(0xc2700000), SkBits2Float(0x360ebeb2), SkBits2Float(0xc2700000)); 1966 path.close(); 1967 1968 SkPath path1(path); 1969 path.reset(); 1970 path.setFillType((SkPath::FillType) 0); 1971 path.moveTo(SkBits2Float(0x3fe26566), SkBits2Float(0xc2a5f65a)); 1972 path.cubicTo(SkBits2Float(0x4028c729), SkBits2Float(0xc2a5ecdf), SkBits2Float(0x406055f2), SkBits2Float(0xc2a5dc6a), SkBits2Float(0x408beceb), SkBits2Float(0xc2a5c4fb)); 1973 path.lineTo(SkBits2Float(0x404a4d47), SkBits2Float(0xc26faaae)); 1974 path.cubicTo(SkBits2Float(0x40222b9c), SkBits2Float(0xc26fcc90), SkBits2Float(0x3ff40427), SkBits2Float(0xc26fe45b), SkBits2Float(0x3fa3a8ee), SkBits2Float(0xc26ff20e)); 1975 path.lineTo(SkBits2Float(0x3fe26566), SkBits2Float(0xc2a5f65a)); 1976 path.close(); 1977 1978 SkPath path2(path); 1979 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 1980 } 1981 // op end success 1 1982 1983 static void battleOp72(skiatest::Reporter* reporter, const char* filename) { 1984 SkPath path; 1985 path.setFillType((SkPath::FillType) 0); 1986 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1987 path.cubicTo(SkBits2Float(0x3f73aa4a), SkBits2Float(0xc2a60000), SkBits2Float(0x3ff3a7f0), SkBits2Float(0xc2a5f79e), SkBits2Float(0x4036b54b), SkBits2Float(0xc2a5e6db)); 1988 path.lineTo(SkBits2Float(0x40041412), SkBits2Float(0xc26fdba5)); 1989 path.cubicTo(SkBits2Float(0x3fb0230c), SkBits2Float(0xc26ff3e0), SkBits2Float(0x3f3024c1), SkBits2Float(0xc26fffff), SkBits2Float(0x359dfd4a), SkBits2Float(0xc26fffff)); 1990 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 1991 path.close(); 1992 1993 SkPath path1(path); 1994 path.reset(); 1995 path.setFillType((SkPath::FillType) 0); 1996 path.moveTo(SkBits2Float(0x4036b55d), SkBits2Float(0xc2a5e6db)); 1997 path.cubicTo(SkBits2Float(0x403ccbdf), SkBits2Float(0xc2a5e52d), SkBits2Float(0x4042e24c), SkBits2Float(0xc2a5e36a), SkBits2Float(0x4048f89e), SkBits2Float(0xc2a5e192)); 1998 path.lineTo(SkBits2Float(0x401147bc), SkBits2Float(0xc26fd403)); 1999 path.cubicTo(SkBits2Float(0x400ce144), SkBits2Float(0xc26fd6ae), SkBits2Float(0x40087ab2), SkBits2Float(0xc26fd939), SkBits2Float(0x4004140f), SkBits2Float(0xc26fdba5)); 2000 path.lineTo(SkBits2Float(0x4036b55d), SkBits2Float(0xc2a5e6db)); 2001 path.close(); 2002 2003 SkPath path2(path); 2004 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2005 } 2006 // op end fail 1 2007 2008 static void battleOp73(skiatest::Reporter* reporter, const char* filename) { 2009 SkPath path; 2010 path.setFillType((SkPath::FillType) 0); 2011 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2012 path.cubicTo(SkBits2Float(0x40447e19), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40c46ab2), SkBits2Float(0xc2a5a8c7), SkBits2Float(0x4113078c), SkBits2Float(0xc2a4fabe)); 2013 path.lineTo(SkBits2Float(0x40d4929e), SkBits2Float(0xc26e8647)); 2014 path.cubicTo(SkBits2Float(0x408dfcf1), SkBits2Float(0xc26f81e6), SkBits2Float(0x400e0af8), SkBits2Float(0xc2700000), SkBits2Float(0x3655fea5), SkBits2Float(0xc2700000)); 2015 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2016 path.close(); 2017 2018 SkPath path1(path); 2019 path.reset(); 2020 path.setFillType((SkPath::FillType) 0); 2021 path.moveTo(SkBits2Float(0x4113078b), SkBits2Float(0xc2a4fabe)); 2022 path.cubicTo(SkBits2Float(0x4117e908), SkBits2Float(0xc2a4e957), SkBits2Float(0x411cc9c0), SkBits2Float(0xc2a4d714), SkBits2Float(0x4121a9a1), SkBits2Float(0xc2a4c3f3)); 2023 path.lineTo(SkBits2Float(0x40e9baad), SkBits2Float(0xc26e370e)); 2024 path.cubicTo(SkBits2Float(0x40e2ae85), SkBits2Float(0xc26e52b6), SkBits2Float(0x40dba120), SkBits2Float(0xc26e6d20), SkBits2Float(0x40d4929a), SkBits2Float(0xc26e8647)); 2025 path.lineTo(SkBits2Float(0x4113078b), SkBits2Float(0xc2a4fabe)); 2026 path.close(); 2027 2028 SkPath path2(path); 2029 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2030 } 2031 // op end fail 1 2032 2033 static void battleOp74(skiatest::Reporter* reporter, const char* filename) { 2034 SkPath path; 2035 path.setFillType((SkPath::FillType) 0); 2036 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2037 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afb7), SkBits2Float(0xc2a481e4)); 2038 path.lineTo(SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e)); 2039 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2040 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2041 path.close(); 2042 2043 SkPath path1(path); 2044 path.reset(); 2045 path.setFillType((SkPath::FillType) 0); 2046 path.moveTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4)); 2047 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca)); 2048 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0)); 2049 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b4), SkBits2Float(0xc26dd78e)); 2050 path.lineTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4)); 2051 path.close(); 2052 2053 SkPath path2(path); 2054 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2055 } 2056 // op end success 1 2057 2058 static void battleOp75(skiatest::Reporter* reporter, const char* filename) { 2059 SkPath path; 2060 path.setFillType((SkPath::FillType) 1); 2061 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2062 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2063 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4)); 2064 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca)); 2065 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0)); 2066 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e)); 2067 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2068 path.close(); 2069 2070 SkPath path1(path); 2071 path.reset(); 2072 path.setFillType((SkPath::FillType) 0); 2073 path.moveTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb)); 2074 path.cubicTo(SkBits2Float(0x419152e5), SkBits2Float(0xc2a26c3a), SkBits2Float(0x41c0119b), SkBits2Float(0xc29f5c06), SkBits2Float(0x41ed1335), SkBits2Float(0xc29b0f0a)); 2075 path.lineTo(SkBits2Float(0x41ab612b), SkBits2Float(0xc2602e6b)); 2076 path.cubicTo(SkBits2Float(0x418ad84d), SkBits2Float(0xc2666635), SkBits2Float(0x41521b54), SkBits2Float(0xc26ad3fe), SkBits2Float(0x410d3426), SkBits2Float(0xc26d63c0)); 2077 path.lineTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb)); 2078 path.close(); 2079 2080 SkPath path2(path); 2081 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2082 } 2083 // op end success 1 2084 2085 static void battleOp76(skiatest::Reporter* reporter, const char* filename) { 2086 SkPath path; 2087 path.setFillType((SkPath::FillType) 0); 2088 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2089 path.cubicTo(SkBits2Float(0x40932e58), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41130dbc), SkBits2Float(0xc2a53c41), SkBits2Float(0x415ba178), SkBits2Float(0xc2a3b6ca)); 2090 path.lineTo(SkBits2Float(0x411ec4eb), SkBits2Float(0xc26cb1eb)); 2091 path.cubicTo(SkBits2Float(0x40d49b93), SkBits2Float(0xc26ee4ff), SkBits2Float(0x4054cab9), SkBits2Float(0xc26fffff), SkBits2Float(0x35f7fd46), SkBits2Float(0xc26fffff)); 2092 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2093 path.close(); 2094 2095 SkPath path1(path); 2096 path.reset(); 2097 path.setFillType((SkPath::FillType) 0); 2098 path.moveTo(SkBits2Float(0x415ba178), SkBits2Float(0xc2a3b6cb)); 2099 path.cubicTo(SkBits2Float(0x4162e261), SkBits2Float(0xc2a38fde), SkBits2Float(0x416a20aa), SkBits2Float(0xc2a36704), SkBits2Float(0x41715c23), SkBits2Float(0xc2a33c3e)); 2100 path.lineTo(SkBits2Float(0x412e7a25), SkBits2Float(0xc26c00bd)); 2101 path.cubicTo(SkBits2Float(0x41293fb6), SkBits2Float(0xc26c3e94), SkBits2Float(0x41240342), SkBits2Float(0xc26c79a4), SkBits2Float(0x411ec4e8), SkBits2Float(0xc26cb1eb)); 2102 path.lineTo(SkBits2Float(0x415ba178), SkBits2Float(0xc2a3b6cb)); 2103 path.close(); 2104 2105 SkPath path2(path); 2106 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2107 } 2108 // op end fail 1 2109 2110 static void battleOp77(skiatest::Reporter* reporter, const char* filename) { 2111 SkPath path; 2112 path.setFillType((SkPath::FillType) 0); 2113 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2114 path.cubicTo(SkBits2Float(0x40d0158a), SkBits2Float(0xc2a60000), SkBits2Float(0x414fb944), SkBits2Float(0xc2a478c0), SkBits2Float(0x419a74b5), SkBits2Float(0xc2a1724b)); 2115 path.lineTo(SkBits2Float(0x415f4f4c), SkBits2Float(0xc2696aa5)); 2116 path.cubicTo(SkBits2Float(0x41162967), SkBits2Float(0xc26dca57), SkBits2Float(0x40966c1f), SkBits2Float(0xc2700000), SkBits2Float(0x3655fea3), SkBits2Float(0xc2700000)); 2117 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2118 path.close(); 2119 2120 SkPath path1(path); 2121 path.reset(); 2122 path.setFillType((SkPath::FillType) 0); 2123 path.moveTo(SkBits2Float(0x419a74b6), SkBits2Float(0xc2a1724b)); 2124 path.cubicTo(SkBits2Float(0x419f8274), SkBits2Float(0xc2a124ef), SkBits2Float(0x41a48c82), SkBits2Float(0xc2a0d3c9), SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edb)); 2125 path.lineTo(SkBits2Float(0x41752a58), SkBits2Float(0xc2680ab0)); 2126 path.cubicTo(SkBits2Float(0x416de6e6), SkBits2Float(0xc268857b), SkBits2Float(0x41669dc0), SkBits2Float(0xc268facf), SkBits2Float(0x415f4f4b), SkBits2Float(0xc2696aa6)); 2127 path.lineTo(SkBits2Float(0x419a74b6), SkBits2Float(0xc2a1724b)); 2128 path.close(); 2129 2130 SkPath path2(path); 2131 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2132 } 2133 // op end success 1 2134 2135 static void battleOp78(skiatest::Reporter* reporter, const char* filename) { 2136 SkPath path; 2137 path.setFillType((SkPath::FillType) 1); 2138 path.moveTo(SkBits2Float(0x3655fea3), SkBits2Float(0xc2700000)); 2139 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2140 path.cubicTo(SkBits2Float(0x40d0158a), SkBits2Float(0xc2a60000), SkBits2Float(0x414fb944), SkBits2Float(0xc2a478c0), SkBits2Float(0x419a74b6), SkBits2Float(0xc2a1724b)); 2141 path.cubicTo(SkBits2Float(0x419f8274), SkBits2Float(0xc2a124ef), SkBits2Float(0x41a48c82), SkBits2Float(0xc2a0d3c9), SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edb)); 2142 path.lineTo(SkBits2Float(0x41752a58), SkBits2Float(0xc2680ab0)); 2143 path.cubicTo(SkBits2Float(0x416de6e6), SkBits2Float(0xc268857b), SkBits2Float(0x41669dc0), SkBits2Float(0xc268facf), SkBits2Float(0x415f4f4c), SkBits2Float(0xc2696aa5)); 2144 path.cubicTo(SkBits2Float(0x41162967), SkBits2Float(0xc26dca57), SkBits2Float(0x40966c1f), SkBits2Float(0xc2700000), SkBits2Float(0x3655fea3), SkBits2Float(0xc2700000)); 2145 path.close(); 2146 2147 SkPath path1(path); 2148 path.reset(); 2149 path.setFillType((SkPath::FillType) 0); 2150 path.moveTo(SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edc)); 2151 path.cubicTo(SkBits2Float(0x41fb3aee), SkBits2Float(0xc29b1a71), SkBits2Float(0x422402f4), SkBits2Float(0xc291ddaf), SkBits2Float(0x4245eaa6), SkBits2Float(0xc2854763)); 2152 path.lineTo(SkBits2Float(0x420f1280), SkBits2Float(0xc240b13c)); 2153 path.cubicTo(SkBits2Float(0x41ed200b), SkBits2Float(0xc252e3f9), SkBits2Float(0x41b59cbb), SkBits2Float(0xc2603ee8), SkBits2Float(0x41752a58), SkBits2Float(0xc2680aaf)); 2154 path.lineTo(SkBits2Float(0x41a9929f), SkBits2Float(0xc2a07edc)); 2155 path.close(); 2156 2157 SkPath path2(path); 2158 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2159 } 2160 // op end success 1 2161 2162 static void battleOp79(skiatest::Reporter* reporter, const char* filename) { //crashed 2163 SkPath path; 2164 path.setFillType((SkPath::FillType) 0); 2165 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2166 path.cubicTo(SkBits2Float(0x4110a0cc), SkBits2Float(0xc2a60000), SkBits2Float(0x4190247a), SkBits2Float(0xc2a30bfe), SkBits2Float(0x41d4a5dc), SkBits2Float(0xc29d41d4)); 2167 path.lineTo(SkBits2Float(0x4199b8a9), SkBits2Float(0xc2635c16)); 2168 path.cubicTo(SkBits2Float(0x4150660f), SkBits2Float(0xc26bbaf8), SkBits2Float(0x40d119d0), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 2169 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2170 path.close(); 2171 2172 SkPath path1(path); 2173 path.reset(); 2174 path.setFillType((SkPath::FillType) 0); 2175 path.moveTo(SkBits2Float(0x41d4a5d9), SkBits2Float(0xc29d41d4)); 2176 path.cubicTo(SkBits2Float(0x41db7bbd), SkBits2Float(0xc29cadef), SkBits2Float(0x41e247df), SkBits2Float(0xc29c12ec), SkBits2Float(0x41e9098d), SkBits2Float(0xc29b70d9)); 2177 path.lineTo(SkBits2Float(0x41a875f1), SkBits2Float(0xc260bbd5)); 2178 path.cubicTo(SkBits2Float(0x41a39393), SkBits2Float(0xc261a627), SkBits2Float(0x419ea9a6), SkBits2Float(0xc2628645), SkBits2Float(0x4199b8ab), SkBits2Float(0xc2635c17)); 2179 path.lineTo(SkBits2Float(0x41d4a5d9), SkBits2Float(0xc29d41d4)); 2180 path.close(); 2181 2182 SkPath path2(path); 2183 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2184 } 2185 2186 static void battleOp80(skiatest::Reporter* reporter, const char* filename) { 2187 SkPath path; 2188 path.setFillType((SkPath::FillType) 0); 2189 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2190 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07980), SkBits2Float(0xc2a5ff68)); 2191 path.lineTo(SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25)); 2192 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000)); 2193 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2194 path.close(); 2195 2196 SkPath path1(path); 2197 path.reset(); 2198 path.setFillType((SkPath::FillType) 0); 2199 path.moveTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68)); 2200 path.cubicTo(SkBits2Float(0x3ee7f565), SkBits2Float(0xc2a5ff5d), SkBits2Float(0x3eef70d9), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47)); 2201 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6)); 2202 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea24612), SkBits2Float(0xc26fff26)); 2203 path.lineTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68)); 2204 path.close(); 2205 2206 SkPath path2(path); 2207 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2208 } 2209 // op end success 1 2210 2211 static void battleOp81(skiatest::Reporter* reporter, const char* filename) { 2212 SkPath path; 2213 path.setFillType((SkPath::FillType) 1); 2214 path.moveTo(SkBits2Float(0x3691e768), SkBits2Float(0xc2700000)); 2215 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2216 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68)); 2217 path.lineTo(SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47)); 2218 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6)); 2219 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25)); 2220 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000)); 2221 path.close(); 2222 2223 SkPath path1(path); 2224 path.reset(); 2225 path.setFillType((SkPath::FillType) 0); 2226 path.moveTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48)); 2227 path.cubicTo(SkBits2Float(0x3f3816c9), SkBits2Float(0xc2a5fe94), SkBits2Float(0x3f74b6e1), SkBits2Float(0xc2a5fd5b), SkBits2Float(0x3f98ab0b), SkBits2Float(0xc2a5fb9d)); 2228 path.lineTo(SkBits2Float(0x3f5cb973), SkBits2Float(0xc26ff9a8)); 2229 path.cubicTo(SkBits2Float(0x3f30e6e7), SkBits2Float(0xc26ffc2e), SkBits2Float(0x3f05138e), SkBits2Float(0xc26ffdf2), SkBits2Float(0x3eb27fc6), SkBits2Float(0xc26ffef7)); 2230 path.lineTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48)); 2231 path.close(); 2232 2233 SkPath path2(path); 2234 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2235 } 2236 // op end success 1 2237 2238 static void battleOp82(skiatest::Reporter* reporter, const char* filename) { 2239 SkPath path; 2240 path.setFillType((SkPath::FillType) 0); 2241 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2242 path.cubicTo(SkBits2Float(0x3eff98a5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f7f97b3), SkBits2Float(0xc2a5fdb1), SkBits2Float(0x3fbfaf38), SkBits2Float(0xc2a5f914)); 2243 path.lineTo(SkBits2Float(0x3f8a9112), SkBits2Float(0xc26ff600)); 2244 path.cubicTo(SkBits2Float(0x3f38c3e7), SkBits2Float(0xc26ffcab), SkBits2Float(0x3eb8c475), SkBits2Float(0xc2700000), SkBits2Float(0x35877d28), SkBits2Float(0xc2700000)); 2245 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2246 path.close(); 2247 2248 SkPath path1(path); 2249 path.reset(); 2250 path.setFillType((SkPath::FillType) 0); 2251 path.moveTo(SkBits2Float(0x3fbfaf15), SkBits2Float(0xc2a5f915)); 2252 path.cubicTo(SkBits2Float(0x3fc612b4), SkBits2Float(0xc2a5f8a0), SkBits2Float(0x3fcc7634), SkBits2Float(0xc2a5f824), SkBits2Float(0x3fd2d9ad), SkBits2Float(0xc2a5f7a2)); 2253 path.lineTo(SkBits2Float(0x3f986bef), SkBits2Float(0xc26ff3e6)); 2254 path.cubicTo(SkBits2Float(0x3f93cdb9), SkBits2Float(0xc26ff4a2), SkBits2Float(0x3f8f2f70), SkBits2Float(0xc26ff556), SkBits2Float(0x3f8a9121), SkBits2Float(0xc26ff601)); 2255 path.lineTo(SkBits2Float(0x3fbfaf15), SkBits2Float(0xc2a5f915)); 2256 path.close(); 2257 2258 SkPath path2(path); 2259 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2260 } 2261 // op end success 1 2262 2263 static void battleOp83(skiatest::Reporter* reporter, const char* filename) { 2264 SkPath path; 2265 path.setFillType((SkPath::FillType) 1); 2266 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2267 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2268 path.cubicTo(SkBits2Float(0x3eff9875), SkBits2Float(0xc2a60000), SkBits2Float(0x3f7f9783), SkBits2Float(0xc2a5fdb1), SkBits2Float(0x3fbfaf14), SkBits2Float(0xc2a5f914)); 2269 path.lineTo(SkBits2Float(0x3fbfaf15), SkBits2Float(0xc2a5f915)); 2270 path.cubicTo(SkBits2Float(0x3fc612b4), SkBits2Float(0xc2a5f8a0), SkBits2Float(0x3fcc7634), SkBits2Float(0xc2a5f824), SkBits2Float(0x3fd2d9ad), SkBits2Float(0xc2a5f7a2)); 2271 path.lineTo(SkBits2Float(0x3f986bef), SkBits2Float(0xc26ff3e6)); 2272 path.cubicTo(SkBits2Float(0x3f93cdb9), SkBits2Float(0xc26ff4a2), SkBits2Float(0x3f8f2f70), SkBits2Float(0xc26ff556), SkBits2Float(0x3f8a9112), SkBits2Float(0xc26ff600)); 2273 path.cubicTo(SkBits2Float(0x3f38c3e7), SkBits2Float(0xc26ffcab), SkBits2Float(0x3eb8c475), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2274 path.close(); 2275 2276 SkPath path1(path); 2277 path.reset(); 2278 path.setFillType((SkPath::FillType) 0); 2279 path.moveTo(SkBits2Float(0x3fd2d994), SkBits2Float(0xc2a5f7a1)); 2280 path.cubicTo(SkBits2Float(0x401d305c), SkBits2Float(0xc2a5ef69), SkBits2Float(0x4050ef71), SkBits2Float(0xc2a5e123), SkBits2Float(0x408252dc), SkBits2Float(0xc2a5ccd0)); 2281 path.lineTo(SkBits2Float(0x403c6b7d), SkBits2Float(0xc26fb5fe)); 2282 path.cubicTo(SkBits2Float(0x401709a2), SkBits2Float(0xc26fd362), SkBits2Float(0x3fe342dd), SkBits2Float(0xc26fe805), SkBits2Float(0x3f986be0), SkBits2Float(0xc26ff3e7)); 2283 path.lineTo(SkBits2Float(0x3fd2d994), SkBits2Float(0xc2a5f7a1)); 2284 path.close(); 2285 2286 SkPath path2(path); 2287 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2288 } 2289 // op end success 1 2290 2291 static void battleOp84(skiatest::Reporter* reporter, const char* filename) { 2292 SkPath path; 2293 path.setFillType((SkPath::FillType) 0); 2294 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2295 path.cubicTo(SkBits2Float(0x3f541e8b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd41d19), SkBits2Float(0xc2a5f9a6), SkBits2Float(0x401f1022), SkBits2Float(0xc2a5ecf2)); 2296 path.lineTo(SkBits2Float(0x3fe5f882), SkBits2Float(0xc26fe473)); 2297 path.cubicTo(SkBits2Float(0x3f9955cf), SkBits2Float(0xc26ff6d2), SkBits2Float(0x3f1956dc), SkBits2Float(0xc2700000), SkBits2Float(0xb5bb02d8), SkBits2Float(0xc2700000)); 2298 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2299 path.close(); 2300 2301 SkPath path1(path); 2302 path.reset(); 2303 path.setFillType((SkPath::FillType) 0); 2304 path.moveTo(SkBits2Float(0x401f1027), SkBits2Float(0xc2a5ecf2)); 2305 path.cubicTo(SkBits2Float(0x40245d21), SkBits2Float(0xc2a5ebac), SkBits2Float(0x4029aa04), SkBits2Float(0xc2a5ea57), SkBits2Float(0x402ef6d6), SkBits2Float(0xc2a5e8f1)); 2306 path.lineTo(SkBits2Float(0x3ffcf5ba), SkBits2Float(0xc26fdeaa)); 2307 path.cubicTo(SkBits2Float(0x3ff54c2d), SkBits2Float(0xc26fe0b0), SkBits2Float(0x3feda268), SkBits2Float(0xc26fe29e), SkBits2Float(0x3fe5f88e), SkBits2Float(0xc26fe474)); 2308 path.lineTo(SkBits2Float(0x401f1027), SkBits2Float(0xc2a5ecf2)); 2309 path.close(); 2310 2311 SkPath path2(path); 2312 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2313 } 2314 // op end success 1 2315 2316 static void battleOp85(skiatest::Reporter* reporter, const char* filename) { 2317 if (!FLAGS_runFail) { 2318 return; 2319 } 2320 SkPath path; 2321 path.setFillType((SkPath::FillType) 1); 2322 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2323 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2324 path.cubicTo(SkBits2Float(0x3f541e8b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd41d19), SkBits2Float(0xc2a5f9a6), SkBits2Float(0x401f1027), SkBits2Float(0xc2a5ecf2)); 2325 path.cubicTo(SkBits2Float(0x40245d21), SkBits2Float(0xc2a5ebac), SkBits2Float(0x4029aa04), SkBits2Float(0xc2a5ea57), SkBits2Float(0x402ef6d6), SkBits2Float(0xc2a5e8f1)); 2326 path.lineTo(SkBits2Float(0x3ffcf5ba), SkBits2Float(0xc26fdeaa)); 2327 path.cubicTo(SkBits2Float(0x3ff54c2d), SkBits2Float(0xc26fe0b0), SkBits2Float(0x3feda268), SkBits2Float(0xc26fe29e), SkBits2Float(0x3fe5f882), SkBits2Float(0xc26fe473)); 2328 path.cubicTo(SkBits2Float(0x3f9955cf), SkBits2Float(0xc26ff6d2), SkBits2Float(0x3f1956dc), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2329 path.close(); 2330 2331 SkPath path1(path); 2332 path.reset(); 2333 path.setFillType((SkPath::FillType) 0); 2334 path.moveTo(SkBits2Float(0x402ef6c3), SkBits2Float(0xc2a5e8f1)); 2335 path.cubicTo(SkBits2Float(0x40826d68), SkBits2Float(0xc2a5d24c), SkBits2Float(0x40ad550a), SkBits2Float(0xc2a5aafb), SkBits2Float(0x40d82890), SkBits2Float(0xc2a57308)); 2336 path.lineTo(SkBits2Float(0x409c425c), SkBits2Float(0xc26f3430)); 2337 path.cubicTo(SkBits2Float(0x407a99d8), SkBits2Float(0xc26f8515), SkBits2Float(0x403c91e6), SkBits2Float(0xc26fbded), SkBits2Float(0x3ffcf5ca), SkBits2Float(0xc26fdeaa)); 2338 path.lineTo(SkBits2Float(0x402ef6c3), SkBits2Float(0xc2a5e8f1)); 2339 path.close(); 2340 2341 SkPath path2(path); 2342 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2343 } 2344 // op end success 1 2345 2346 static void battleOp86(skiatest::Reporter* reporter, const char* filename) { 2347 SkPath path; 2348 path.setFillType((SkPath::FillType) 0); 2349 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2350 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5f), SkBits2Float(0xc2a568f2)); 2351 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d)); 2352 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000)); 2353 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2354 path.close(); 2355 2356 SkPath path1(path); 2357 path.reset(); 2358 path.setFillType((SkPath::FillType) 0); 2359 path.moveTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3)); 2360 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941)); 2361 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9)); 2362 path.cubicTo(SkBits2Float(0x40ac7ea0), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e37), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd4f), SkBits2Float(0xc26f259f)); 2363 path.lineTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3)); 2364 path.close(); 2365 2366 SkPath path2(path); 2367 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2368 } 2369 // op end success 1 2370 2371 static void battleOp87(skiatest::Reporter* reporter, const char* filename) { 2372 SkPath path; 2373 path.setFillType((SkPath::FillType) 1); 2374 path.moveTo(SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000)); 2375 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2376 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3)); 2377 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941)); 2378 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9)); 2379 path.cubicTo(SkBits2Float(0x40ac7ea2), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e3a), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd54), SkBits2Float(0xc26f259f)); 2380 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d)); 2381 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000)); 2382 path.close(); 2383 2384 SkPath path1(path); 2385 path.reset(); 2386 path.setFillType((SkPath::FillType) 0); 2387 path.moveTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941)); 2388 path.cubicTo(SkBits2Float(0x41374a21), SkBits2Float(0xc2a495d5), SkBits2Float(0x41731962), SkBits2Float(0xc2a35eca), SkBits2Float(0x419704b1), SkBits2Float(0xc2a1a64c)); 2389 path.lineTo(SkBits2Float(0x415a56f5), SkBits2Float(0xc269b5d4)); 2390 path.cubicTo(SkBits2Float(0x412fbbfb), SkBits2Float(0xc26c32af), SkBits2Float(0x41047f9a), SkBits2Float(0xc26df463), SkBits2Float(0x40b1de7e), SkBits2Float(0xc26ef7cb)); 2391 path.lineTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941)); 2392 path.close(); 2393 2394 SkPath path2(path); 2395 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2396 } 2397 // op end success 1 2398 2399 static void battleOp88(skiatest::Reporter* reporter, const char* filename) { // crashed 2400 SkPath path; 2401 path.setFillType((SkPath::FillType) 0); 2402 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2403 path.cubicTo(SkBits2Float(0x4059d383), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40d9b918), SkBits2Float(0xc2a594d0), SkBits2Float(0x4122e820), SkBits2Float(0xc2a4bf0c)); 2404 path.lineTo(SkBits2Float(0x40eb871c), SkBits2Float(0xc26e2ff8)); 2405 path.cubicTo(SkBits2Float(0x409d63e0), SkBits2Float(0xc26f6508), SkBits2Float(0x401d76fa), SkBits2Float(0xc2700000), SkBits2Float(0x35f7fd4a), SkBits2Float(0xc2700000)); 2406 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2407 path.close(); 2408 2409 SkPath path1(path); 2410 path.reset(); 2411 path.setFillType((SkPath::FillType) 0); 2412 path.moveTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c)); 2413 path.cubicTo(SkBits2Float(0x41284f3c), SkBits2Float(0xc2a4a9ac), SkBits2Float(0x412db549), SkBits2Float(0xc2a4933e), SkBits2Float(0x41331a33), SkBits2Float(0xc2a47bbf)); 2414 path.lineTo(SkBits2Float(0x410178be), SkBits2Float(0xc26dceac)); 2415 path.cubicTo(SkBits2Float(0x40fb24f7), SkBits2Float(0xc26df0a4), SkBits2Float(0x40f356d1), SkBits2Float(0xc26e1114), SkBits2Float(0x40eb871f), SkBits2Float(0xc26e2ff8)); 2416 path.lineTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c)); 2417 path.close(); 2418 2419 SkPath path2(path); 2420 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2421 } 2422 2423 static void battleOp89(skiatest::Reporter* reporter, const char* filename) { 2424 SkPath path; 2425 path.setFillType((SkPath::FillType) 0); 2426 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2427 path.cubicTo(SkBits2Float(0x3dd41fb8), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e5b), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1657), SkBits2Float(0xc2a5ffb2)); 2428 path.lineTo(SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92)); 2429 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x350f7780), SkBits2Float(0xc2700000)); 2430 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2431 path.close(); 2432 2433 SkPath path1(path); 2434 path.reset(); 2435 path.setFillType((SkPath::FillType) 0); 2436 path.moveTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4)); 2437 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3)); 2438 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b)); 2439 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e660197), SkBits2Float(0xc26fff93)); 2440 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4)); 2441 path.close(); 2442 2443 SkPath path2(path); 2444 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2445 } 2446 // op end success 1 2447 2448 static void battleOp90(skiatest::Reporter* reporter, const char* filename) { 2449 SkPath path; 2450 path.setFillType((SkPath::FillType) 1); 2451 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2452 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2453 path.cubicTo(SkBits2Float(0x3dd41f74), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e17), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1624), SkBits2Float(0xc2a5ffb2)); 2454 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4)); 2455 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3)); 2456 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b)); 2457 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92)); 2458 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2459 path.close(); 2460 2461 SkPath path1(path); 2462 path.reset(); 2463 path.setFillType((SkPath::FillType) 0); 2464 path.moveTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4)); 2465 path.cubicTo(SkBits2Float(0x3f0276b7), SkBits2Float(0xc2a5ff4a), SkBits2Float(0x3f2d6dea), SkBits2Float(0xc2a5feac), SkBits2Float(0x3f5864cc), SkBits2Float(0xc2a5fdcd)); 2466 path.lineTo(SkBits2Float(0x3f1c6df6), SkBits2Float(0xc26ffcd0)); 2467 path.cubicTo(SkBits2Float(0x3efabdec), SkBits2Float(0xc26ffe15), SkBits2Float(0x3ebc9f78), SkBits2Float(0xc26ffef9), SkBits2Float(0x3e7d0190), SkBits2Float(0xc26fff7c)); 2468 path.lineTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4)); 2469 path.close(); 2470 2471 SkPath path2(path); 2472 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2473 } 2474 // op end success 1 2475 2476 static void battleOp91(skiatest::Reporter* reporter, const char* filename) { // crashed 2477 SkPath path; 2478 path.setFillType((SkPath::FillType) 0); 2479 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2480 path.cubicTo(SkBits2Float(0x3ec1e1ad), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f41e136), SkBits2Float(0xc2a5feac), SkBits2Float(0x3f9167c6), SkBits2Float(0xc2a5fc05)); 2481 path.lineTo(SkBits2Float(0x3f523979), SkBits2Float(0xc26ffa3f)); 2482 path.cubicTo(SkBits2Float(0x3f0c2737), SkBits2Float(0xc26ffe17), SkBits2Float(0x3e8c2756), SkBits2Float(0xc2700000), SkBits2Float(0xb5b74260), SkBits2Float(0xc2700000)); 2483 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2484 path.close(); 2485 2486 SkPath path1(path); 2487 path.reset(); 2488 path.setFillType((SkPath::FillType) 0); 2489 path.moveTo(SkBits2Float(0x3f9167c1), SkBits2Float(0xc2a5fc05)); 2490 path.cubicTo(SkBits2Float(0x3f96406f), SkBits2Float(0xc2a5fbc1), SkBits2Float(0x3f9b1917), SkBits2Float(0xc2a5fb79), SkBits2Float(0x3f9ff1bc), SkBits2Float(0xc2a5fb2f)); 2491 path.lineTo(SkBits2Float(0x3f673ed7), SkBits2Float(0xc26ff909)); 2492 path.cubicTo(SkBits2Float(0x3f603cf4), SkBits2Float(0xc26ff977), SkBits2Float(0x3f593b3c), SkBits2Float(0xc26ff9dd), SkBits2Float(0x3f52397f), SkBits2Float(0xc26ffa3f)); 2493 path.lineTo(SkBits2Float(0x3f9167c1), SkBits2Float(0xc2a5fc05)); 2494 path.close(); 2495 2496 SkPath path2(path); 2497 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2498 } 2499 2500 static void battleOp92(skiatest::Reporter* reporter, const char* filename) { 2501 SkPath path; 2502 path.setFillType((SkPath::FillType) 0); 2503 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2504 path.cubicTo(SkBits2Float(0x3e2c5962), SkBits2Float(0xc2a60000), SkBits2Float(0x3eac58ef), SkBits2Float(0xc2a5ffbd), SkBits2Float(0x3f014269), SkBits2Float(0xc2a5ff37)); 2505 path.lineTo(SkBits2Float(0x3ebae1ca), SkBits2Float(0xc26ffedd)); 2506 path.cubicTo(SkBits2Float(0x3e792d51), SkBits2Float(0xc26fff9f), SkBits2Float(0x3df92dfa), SkBits2Float(0xc2700000), SkBits2Float(0x36163ed0), SkBits2Float(0xc2700000)); 2507 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2508 path.close(); 2509 2510 SkPath path1(path); 2511 path.reset(); 2512 path.setFillType((SkPath::FillType) 0); 2513 path.moveTo(SkBits2Float(0x3f014292), SkBits2Float(0xc2a5ff37)); 2514 path.cubicTo(SkBits2Float(0x3f0591a2), SkBits2Float(0xc2a5ff28), SkBits2Float(0x3f09e09b), SkBits2Float(0xc2a5ff1a), SkBits2Float(0x3f0e2f92), SkBits2Float(0xc2a5ff0b)); 2515 path.lineTo(SkBits2Float(0x3ecd91e5), SkBits2Float(0xc26ffea0)); 2516 path.cubicTo(SkBits2Float(0x3ec75718), SkBits2Float(0xc26ffeb6), SkBits2Float(0x3ec11c70), SkBits2Float(0xc26ffeca), SkBits2Float(0x3ebae1c7), SkBits2Float(0xc26ffedd)); 2517 path.lineTo(SkBits2Float(0x3f014292), SkBits2Float(0xc2a5ff37)); 2518 path.close(); 2519 2520 SkPath path2(path); 2521 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2522 } 2523 // op end success 1 2524 2525 static void battleOp93(skiatest::Reporter* reporter, const char* filename) { 2526 SkPath path; 2527 path.setFillType((SkPath::FillType) 1); 2528 path.moveTo(SkBits2Float(0x36163ed0), SkBits2Float(0xc2700000)); 2529 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2530 path.quadTo(SkBits2Float(0x3e81430a), SkBits2Float(0xc2a60000), SkBits2Float(0x3f014292), SkBits2Float(0xc2a5ff37)); 2531 path.cubicTo(SkBits2Float(0x3f0591a2), SkBits2Float(0xc2a5ff28), SkBits2Float(0x3f09e09b), SkBits2Float(0xc2a5ff1a), SkBits2Float(0x3f0e2f92), SkBits2Float(0xc2a5ff0b)); 2532 path.lineTo(SkBits2Float(0x3ecd91e5), SkBits2Float(0xc26ffea0)); 2533 path.cubicTo(SkBits2Float(0x3ec75719), SkBits2Float(0xc26ffeb6), SkBits2Float(0x3ec11c72), SkBits2Float(0xc26ffeca), SkBits2Float(0x3ebae1ca), SkBits2Float(0xc26ffedd)); 2534 path.quadTo(SkBits2Float(0x3e3ae230), SkBits2Float(0xc2700000), SkBits2Float(0x36163ed0), SkBits2Float(0xc2700000)); 2535 path.close(); 2536 2537 SkPath path1(path); 2538 path.reset(); 2539 path.setFillType((SkPath::FillType) 0); 2540 path.moveTo(SkBits2Float(0x3f0e2f94), SkBits2Float(0xc2a5ff0c)); 2541 path.cubicTo(SkBits2Float(0x3f5401b9), SkBits2Float(0xc2a5fe1c), SkBits2Float(0x3f8ce9a3), SkBits2Float(0xc2a5fc7d), SkBits2Float(0x3fafd1bd), SkBits2Float(0xc2a5fa2d)); 2542 path.lineTo(SkBits2Float(0x3f7e3238), SkBits2Float(0xc26ff796)); 2543 path.cubicTo(SkBits2Float(0x3f4bbaca), SkBits2Float(0xc26ffaee), SkBits2Float(0x3f194226), SkBits2Float(0xc26ffd46), SkBits2Float(0x3ecd9202), SkBits2Float(0xc26ffea0)); 2544 path.lineTo(SkBits2Float(0x3f0e2f94), SkBits2Float(0xc2a5ff0c)); 2545 path.close(); 2546 2547 SkPath path2(path); 2548 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2549 } 2550 // op end success 1 2551 2552 static void battleOp94(skiatest::Reporter* reporter, const char* filename) { 2553 SkPath path; 2554 path.setFillType((SkPath::FillType) 0); 2555 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2556 path.cubicTo(SkBits2Float(0x3f167e4a), SkBits2Float(0xc2a60000), SkBits2Float(0x3f967d97), SkBits2Float(0xc2a5fcce), SkBits2Float(0x3fe1b83b), SkBits2Float(0xc2a5f668)); 2557 path.lineTo(SkBits2Float(0x3fa32ba2), SkBits2Float(0xc26ff222)); 2558 path.cubicTo(SkBits2Float(0x3f599370), SkBits2Float(0xc26ffb61), SkBits2Float(0x3ed9943c), SkBits2Float(0xc2700000), SkBits2Float(0x3437e940), SkBits2Float(0xc2700000)); 2559 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2560 path.close(); 2561 2562 SkPath path1(path); 2563 path.reset(); 2564 path.setFillType((SkPath::FillType) 0); 2565 path.moveTo(SkBits2Float(0x3fe1b817), SkBits2Float(0xc2a5f668)); 2566 path.cubicTo(SkBits2Float(0x3fe93dd6), SkBits2Float(0xc2a5f5c4), SkBits2Float(0x3ff0c3a7), SkBits2Float(0xc2a5f518), SkBits2Float(0x3ff8496b), SkBits2Float(0xc2a5f464)); 2567 path.lineTo(SkBits2Float(0x3fb37c11), SkBits2Float(0xc26fef38)); 2568 path.cubicTo(SkBits2Float(0x3fae0bf9), SkBits2Float(0xc26ff03c), SkBits2Float(0x3fa89bd2), SkBits2Float(0xc26ff134), SkBits2Float(0x3fa32ba2), SkBits2Float(0xc26ff222)); 2569 path.lineTo(SkBits2Float(0x3fe1b817), SkBits2Float(0xc2a5f668)); 2570 path.close(); 2571 2572 SkPath path2(path); 2573 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2574 } 2575 // op end success 1 2576 2577 static void battleOp95(skiatest::Reporter* reporter, const char* filename) { 2578 SkPath path; 2579 path.setFillType((SkPath::FillType) 1); 2580 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2581 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2582 path.cubicTo(SkBits2Float(0x3f167e32), SkBits2Float(0xc2a60000), SkBits2Float(0x3f967d7f), SkBits2Float(0xc2a5fcce), SkBits2Float(0x3fe1b817), SkBits2Float(0xc2a5f668)); 2583 2584 SkPath path1(path); 2585 path.reset(); 2586 path.setFillType((SkPath::FillType) 0); 2587 path.moveTo(SkBits2Float(0x3ff8497f), SkBits2Float(0xc2a5f465)); 2588 path.cubicTo(SkBits2Float(0x40391895), SkBits2Float(0xc2a5e8fe), SkBits2Float(0x407604f1), SkBits2Float(0xc2a5d533), SkBits2Float(0x40997177), SkBits2Float(0xc2a5b905)); 2589 path.lineTo(SkBits2Float(0x405dd87f), SkBits2Float(0xc26f9962)); 2590 path.cubicTo(SkBits2Float(0x4031d867), SkBits2Float(0xc26fc221), SkBits2Float(0x4005cdec), SkBits2Float(0xc26fdebf), SkBits2Float(0x3fb37c22), SkBits2Float(0xc26fef39)); 2591 path.lineTo(SkBits2Float(0x3ff8497f), SkBits2Float(0xc2a5f465)); 2592 path.close(); 2593 2594 SkPath path2(path); 2595 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2596 } 2597 // op end success 1 2598 2599 static void battleOp96(skiatest::Reporter* reporter, const char* filename) { 2600 SkPath path; 2601 path.setFillType((SkPath::FillType) 0); 2602 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2603 path.cubicTo(SkBits2Float(0x3fa966bb), SkBits2Float(0xc2a5ffff), SkBits2Float(0x402963a4), SkBits2Float(0xc2a5efcb), SkBits2Float(0x407dfe39), SkBits2Float(0xc2a5cf64)); 2604 path.lineTo(SkBits2Float(0x40379c05), SkBits2Float(0xc26fb9ba)); 2605 path.cubicTo(SkBits2Float(0x3ff4e689), SkBits2Float(0xc26fe893), SkBits2Float(0x3f74eb1f), SkBits2Float(0xc2700000), SkBits2Float(0x363f7e94), SkBits2Float(0xc2700000)); 2606 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2607 path.close(); 2608 2609 SkPath path1(path); 2610 path.reset(); 2611 path.setFillType((SkPath::FillType) 0); 2612 path.moveTo(SkBits2Float(0x407dfe3a), SkBits2Float(0xc2a5cf65)); 2613 path.cubicTo(SkBits2Float(0x40833a01), SkBits2Float(0xc2a5cc27), SkBits2Float(0x408774bf), SkBits2Float(0xc2a5c8c0), SkBits2Float(0x408baf5a), SkBits2Float(0xc2a5c52f)); 2614 path.lineTo(SkBits2Float(0x4049f448), SkBits2Float(0xc26faaf9)); 2615 path.cubicTo(SkBits2Float(0x4043d713), SkBits2Float(0xc26fb022), SkBits2Float(0x403db99f), SkBits2Float(0xc26fb50d), SkBits2Float(0x40379bfe), SkBits2Float(0xc26fb9bc)); 2616 path.lineTo(SkBits2Float(0x407dfe3a), SkBits2Float(0xc2a5cf65)); 2617 path.close(); 2618 2619 SkPath path2(path); 2620 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2621 } 2622 // op end success 1 2623 2624 static void battleOp97(skiatest::Reporter* reporter, const char* filename) { 2625 SkPath path; 2626 path.setFillType((SkPath::FillType) 1); 2627 path.moveTo(SkBits2Float(0x363f7e94), SkBits2Float(0xc2700000)); 2628 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2629 path.cubicTo(SkBits2Float(0x3fa966bb), SkBits2Float(0xc2a5ffff), SkBits2Float(0x402963a4), SkBits2Float(0xc2a5efcb), SkBits2Float(0x407dfe3a), SkBits2Float(0xc2a5cf65)); 2630 path.cubicTo(SkBits2Float(0x40833a01), SkBits2Float(0xc2a5cc27), SkBits2Float(0x408774bf), SkBits2Float(0xc2a5c8c0), SkBits2Float(0x408baf5a), SkBits2Float(0xc2a5c52f)); 2631 path.lineTo(SkBits2Float(0x4049f448), SkBits2Float(0xc26faaf9)); 2632 path.cubicTo(SkBits2Float(0x4043d716), SkBits2Float(0xc26fb022), SkBits2Float(0x403db9a5), SkBits2Float(0xc26fb50d), SkBits2Float(0x40379c07), SkBits2Float(0xc26fb9bc)); 2633 path.lineTo(SkBits2Float(0x40379c05), SkBits2Float(0xc26fb9ba)); 2634 path.cubicTo(SkBits2Float(0x3ff4e689), SkBits2Float(0xc26fe893), SkBits2Float(0x3f74eb1f), SkBits2Float(0xc2700000), SkBits2Float(0x363f7e94), SkBits2Float(0xc2700000)); 2635 path.close(); 2636 2637 SkPath path1(path); 2638 path.reset(); 2639 path.setFillType((SkPath::FillType) 0); 2640 path.moveTo(SkBits2Float(0x408baf5c), SkBits2Float(0xc2a5c530)); 2641 path.cubicTo(SkBits2Float(0x40d03963), SkBits2Float(0xc2a58b6e), SkBits2Float(0x410a4c7d), SkBits2Float(0xc2a52732), SkBits2Float(0x412c535f), SkBits2Float(0xc2a498b2)); 2642 path.lineTo(SkBits2Float(0x40f9253d), SkBits2Float(0xc26df886)); 2643 path.cubicTo(SkBits2Float(0x40c7f32d), SkBits2Float(0xc26ec68d), SkBits2Float(0x409685fb), SkBits2Float(0xc26f577a), SkBits2Float(0x4049f441), SkBits2Float(0xc26faafa)); 2644 path.lineTo(SkBits2Float(0x408baf5c), SkBits2Float(0xc2a5c530)); 2645 path.close(); 2646 2647 SkPath path2(path); 2648 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2649 } 2650 // op end success 1 2651 2652 static void battleOp98(skiatest::Reporter* reporter, const char* filename) { 2653 SkPath path; 2654 path.setFillType((SkPath::FillType) 0); 2655 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2656 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5f), SkBits2Float(0xc2a568f2)); 2657 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d)); 2658 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000)); 2659 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2660 path.close(); 2661 2662 SkPath path1(path); 2663 path.reset(); 2664 path.setFillType((SkPath::FillType) 0); 2665 path.moveTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3)); 2666 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941)); 2667 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9)); 2668 path.cubicTo(SkBits2Float(0x40ac7ea0), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e37), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd4f), SkBits2Float(0xc26f259f)); 2669 path.lineTo(SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3)); 2670 path.close(); 2671 2672 SkPath path2(path); 2673 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2674 } 2675 // op end success 1 2676 2677 static void battleOp99(skiatest::Reporter* reporter, const char* filename) { 2678 SkPath path; 2679 path.setFillType((SkPath::FillType) 1); 2680 path.moveTo(SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000)); 2681 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2682 path.cubicTo(SkBits2Float(0x40155bee), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40955364), SkBits2Float(0xc2a5cd99), SkBits2Float(0x40dfbd5e), SkBits2Float(0xc2a568f3)); 2683 path.cubicTo(SkBits2Float(0x40e72e1b), SkBits2Float(0xc2a55ee2), SkBits2Float(0x40ee9e1c), SkBits2Float(0xc2a55452), SkBits2Float(0x40f60d62), SkBits2Float(0xc2a54941)); 2684 path.lineTo(SkBits2Float(0x40b1de84), SkBits2Float(0xc26ef7c9)); 2685 path.cubicTo(SkBits2Float(0x40ac7ea2), SkBits2Float(0xc26f07cb), SkBits2Float(0x40a71e3a), SkBits2Float(0xc26f1712), SkBits2Float(0x40a1bd54), SkBits2Float(0xc26f259f)); 2686 path.lineTo(SkBits2Float(0x40a1bd53), SkBits2Float(0xc26f259d)); 2687 path.cubicTo(SkBits2Float(0x4057e483), SkBits2Float(0xc26fb724), SkBits2Float(0x3fd7f0d9), SkBits2Float(0xc2700000), SkBits2Float(0x3619fea3), SkBits2Float(0xc2700000)); 2688 path.close(); 2689 2690 SkPath path1(path); 2691 path.reset(); 2692 path.setFillType((SkPath::FillType) 0); 2693 path.moveTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941)); 2694 path.cubicTo(SkBits2Float(0x41374a21), SkBits2Float(0xc2a495d5), SkBits2Float(0x41731962), SkBits2Float(0xc2a35eca), SkBits2Float(0x419704b1), SkBits2Float(0xc2a1a64c)); 2695 path.lineTo(SkBits2Float(0x415a56f5), SkBits2Float(0xc269b5d4)); 2696 path.cubicTo(SkBits2Float(0x412fbbfb), SkBits2Float(0xc26c32af), SkBits2Float(0x41047f9a), SkBits2Float(0xc26df463), SkBits2Float(0x40b1de7e), SkBits2Float(0xc26ef7cb)); 2697 path.lineTo(SkBits2Float(0x40f60d69), SkBits2Float(0xc2a54941)); 2698 path.close(); 2699 2700 SkPath path2(path); 2701 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2702 } 2703 // op end success 1 2704 2705 static void battleOp100(skiatest::Reporter* reporter, const char* filename) { 2706 SkPath path; 2707 path.setFillType((SkPath::FillType) 0); 2708 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2709 path.cubicTo(SkBits2Float(0x403cde0b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40bcccc9), SkBits2Float(0xc2a5af6a), SkBits2Float(0x410d5936), SkBits2Float(0xc2a50e98)); 2710 path.lineTo(SkBits2Float(0x40cc5bf6), SkBits2Float(0xc26ea2fc)); 2711 path.cubicTo(SkBits2Float(0x40887b5e), SkBits2Float(0xc26f8b7f), SkBits2Float(0x400887d8), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2712 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2713 path.close(); 2714 2715 SkPath path1(path); 2716 path.reset(); 2717 path.setFillType((SkPath::FillType) 0); 2718 path.moveTo(SkBits2Float(0x410d5935), SkBits2Float(0xc2a50e99)); 2719 path.cubicTo(SkBits2Float(0x41120ace), SkBits2Float(0xc2a4fe85), SkBits2Float(0x4116bbb5), SkBits2Float(0xc2a4eda4), SkBits2Float(0x411b6bdd), SkBits2Float(0xc2a4dbf6)); 2720 path.lineTo(SkBits2Float(0x40e0b4a3), SkBits2Float(0xc26e59c7)); 2721 path.cubicTo(SkBits2Float(0x40d9ed7a), SkBits2Float(0xc26e7357), SkBits2Float(0x40d32536), SkBits2Float(0xc26e8bbe), SkBits2Float(0x40cc5bf1), SkBits2Float(0xc26ea2fc)); 2722 path.lineTo(SkBits2Float(0x410d5935), SkBits2Float(0xc2a50e99)); 2723 path.close(); 2724 2725 SkPath path2(path); 2726 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2727 } 2728 // op end fail 1 2729 2730 static void battleOp101(skiatest::Reporter* reporter, const char* filename) { 2731 SkPath path; 2732 path.setFillType((SkPath::FillType) 0); 2733 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2734 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afb7), SkBits2Float(0xc2a481e4)); 2735 path.lineTo(SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e)); 2736 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2737 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2738 path.close(); 2739 2740 SkPath path1(path); 2741 path.reset(); 2742 path.setFillType((SkPath::FillType) 0); 2743 path.moveTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4)); 2744 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca)); 2745 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0)); 2746 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b4), SkBits2Float(0xc26dd78e)); 2747 path.lineTo(SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4)); 2748 path.close(); 2749 2750 SkPath path2(path); 2751 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2752 } 2753 // op end success 1 2754 2755 static void battleOp102(skiatest::Reporter* reporter, const char* filename) { 2756 SkPath path; 2757 path.setFillType((SkPath::FillType) 1); 2758 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2759 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2760 path.cubicTo(SkBits2Float(0x406db78d), SkBits2Float(0xc2a60000), SkBits2Float(0x40ed953d), SkBits2Float(0xc2a58058), SkBits2Float(0x4131afba), SkBits2Float(0xc2a481e4)); 2761 path.cubicTo(SkBits2Float(0x413792dd), SkBits2Float(0xc2a46874), SkBits2Float(0x413d74a2), SkBits2Float(0xc2a44dc1), SkBits2Float(0x414354e9), SkBits2Float(0xc2a431ca)); 2762 path.lineTo(SkBits2Float(0x410d3424), SkBits2Float(0xc26d63c0)); 2763 path.cubicTo(SkBits2Float(0x4108f4b6), SkBits2Float(0xc26d8c2e), SkBits2Float(0x4104b435), SkBits2Float(0xc26db2c8), SkBits2Float(0x410072b2), SkBits2Float(0xc26dd78e)); 2764 path.cubicTo(SkBits2Float(0x40abbf2e), SkBits2Float(0xc26f4770), SkBits2Float(0x402bd807), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 2765 path.close(); 2766 2767 SkPath path1(path); 2768 path.reset(); 2769 path.setFillType((SkPath::FillType) 0); 2770 path.moveTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb)); 2771 path.cubicTo(SkBits2Float(0x419152e5), SkBits2Float(0xc2a26c3a), SkBits2Float(0x41c0119b), SkBits2Float(0xc29f5c06), SkBits2Float(0x41ed1335), SkBits2Float(0xc29b0f0a)); 2772 path.lineTo(SkBits2Float(0x41ab612b), SkBits2Float(0xc2602e6b)); 2773 path.cubicTo(SkBits2Float(0x418ad84d), SkBits2Float(0xc2666635), SkBits2Float(0x41521b54), SkBits2Float(0xc26ad3fe), SkBits2Float(0x410d3426), SkBits2Float(0xc26d63c0)); 2774 path.lineTo(SkBits2Float(0x414354ed), SkBits2Float(0xc2a431cb)); 2775 path.close(); 2776 2777 SkPath path2(path); 2778 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2779 } 2780 // op end success 1 2781 2782 static void battleOp103(skiatest::Reporter* reporter, const char* filename) { //crash 2783 SkPath path; 2784 path.setFillType((SkPath::FillType) 0); 2785 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2786 path.cubicTo(SkBits2Float(0x408e2d73), SkBits2Float(0xc2a5ffff), SkBits2Float(0x410e100a), SkBits2Float(0xc2a54957), SkBits2Float(0x41543cd2), SkBits2Float(0xc2a3ddc8)); 2787 path.lineTo(SkBits2Float(0x41196cba), SkBits2Float(0xc26cea49)); 2788 path.cubicTo(SkBits2Float(0x40cd643f), SkBits2Float(0xc26ef7e9), SkBits2Float(0x404d8eb8), SkBits2Float(0xc26fffff), SkBits2Float(0xb5ac02ba), SkBits2Float(0xc26fffff)); 2789 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2790 path.close(); 2791 2792 SkPath path1(path); 2793 path.reset(); 2794 path.setFillType((SkPath::FillType) 0); 2795 path.moveTo(SkBits2Float(0x41543cce), SkBits2Float(0xc2a3ddc8)); 2796 path.cubicTo(SkBits2Float(0x415b4057), SkBits2Float(0xc2a3b973), SkBits2Float(0x41624181), SkBits2Float(0xc2a39350), SkBits2Float(0x41694022), SkBits2Float(0xc2a36b60)); 2797 path.lineTo(SkBits2Float(0x41289d63), SkBits2Float(0xc26c44e1)); 2798 path.cubicTo(SkBits2Float(0x41238ef8), SkBits2Float(0xc26c7e9e), SkBits2Float(0x411e7eb5), SkBits2Float(0xc26cb5c1), SkBits2Float(0x41196cbd), SkBits2Float(0xc26cea4a)); 2799 path.lineTo(SkBits2Float(0x41543cce), SkBits2Float(0xc2a3ddc8)); 2800 path.close(); 2801 2802 SkPath path2(path); 2803 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2804 } 2805 2806 static void battleOp104(skiatest::Reporter* reporter, const char* filename) { 2807 SkPath path; 2808 path.setFillType((SkPath::FillType) 0); 2809 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2810 path.cubicTo(SkBits2Float(0x3dd41fb8), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e5b), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1657), SkBits2Float(0xc2a5ffb2)); 2811 path.lineTo(SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92)); 2812 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x350f7780), SkBits2Float(0xc2700000)); 2813 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2814 path.close(); 2815 2816 SkPath path1(path); 2817 path.reset(); 2818 path.setFillType((SkPath::FillType) 0); 2819 path.moveTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4)); 2820 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3)); 2821 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b)); 2822 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e660197), SkBits2Float(0xc26fff93)); 2823 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4)); 2824 path.close(); 2825 2826 SkPath path2(path); 2827 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2828 } 2829 // op end success 1 2830 2831 static void battleOp105(skiatest::Reporter* reporter, const char* filename) { 2832 SkPath path; 2833 path.setFillType((SkPath::FillType) 1); 2834 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2835 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2836 path.cubicTo(SkBits2Float(0x3dd41f74), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3e541e17), SkBits2Float(0xc2a5ffe5), SkBits2Float(0x3e9f1624), SkBits2Float(0xc2a5ffb2)); 2837 path.lineTo(SkBits2Float(0x3e9f1626), SkBits2Float(0xc2a5ffb4)); 2838 path.cubicTo(SkBits2Float(0x3ea463a8), SkBits2Float(0xc2a5ffae), SkBits2Float(0x3ea9b10b), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3eaefe6d), SkBits2Float(0xc2a5ffa3)); 2839 path.lineTo(SkBits2Float(0x3e7d0144), SkBits2Float(0xc26fff7b)); 2840 path.cubicTo(SkBits2Float(0x3e75568f), SkBits2Float(0xc26fff84), SkBits2Float(0x3e6dac12), SkBits2Float(0xc26fff8c), SkBits2Float(0x3e66012b), SkBits2Float(0xc26fff92)); 2841 path.cubicTo(SkBits2Float(0x3e1955e2), SkBits2Float(0xc26fffdc), SkBits2Float(0x3d99560b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2842 path.close(); 2843 2844 SkPath path1(path); 2845 path.reset(); 2846 path.setFillType((SkPath::FillType) 0); 2847 path.moveTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4)); 2848 path.cubicTo(SkBits2Float(0x3f0276b7), SkBits2Float(0xc2a5ff4a), SkBits2Float(0x3f2d6dea), SkBits2Float(0xc2a5feac), SkBits2Float(0x3f5864cc), SkBits2Float(0xc2a5fdcd)); 2849 path.lineTo(SkBits2Float(0x3f1c6df6), SkBits2Float(0xc26ffcd0)); 2850 path.cubicTo(SkBits2Float(0x3efabdec), SkBits2Float(0xc26ffe15), SkBits2Float(0x3ebc9f78), SkBits2Float(0xc26ffef9), SkBits2Float(0x3e7d0190), SkBits2Float(0xc26fff7c)); 2851 path.lineTo(SkBits2Float(0x3eaefebc), SkBits2Float(0xc2a5ffa4)); 2852 path.close(); 2853 2854 SkPath path2(path); 2855 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2856 } 2857 // op end success 1 2858 2859 static void battleOp106(skiatest::Reporter* reporter, const char* filename) { 2860 SkPath path; 2861 path.setFillType((SkPath::FillType) 0); 2862 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2863 path.cubicTo(SkBits2Float(0x3ee221f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f622166), SkBits2Float(0xc2a5fe31), SkBits2Float(0x3fa9974d), SkBits2Float(0xc2a5fa95)); 2864 path.lineTo(SkBits2Float(0x3f753159), SkBits2Float(0xc26ff82c)); 2865 path.cubicTo(SkBits2Float(0x3f237814), SkBits2Float(0xc26ffd64), SkBits2Float(0x3ea3787a), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa50), SkBits2Float(0xc2700000)); 2866 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2867 path.close(); 2868 2869 SkPath path1(path); 2870 path.reset(); 2871 path.setFillType((SkPath::FillType) 0); 2872 path.moveTo(SkBits2Float(0x3fa99777), SkBits2Float(0xc2a5fa96)); 2873 path.cubicTo(SkBits2Float(0x3faf3e7a), SkBits2Float(0xc2a5fa39), SkBits2Float(0x3fb4e596), SkBits2Float(0xc2a5f9d8), SkBits2Float(0x3fba8cad), SkBits2Float(0xc2a5f972)); 2874 path.lineTo(SkBits2Float(0x3f86dad5), SkBits2Float(0xc26ff687)); 2875 path.cubicTo(SkBits2Float(0x3f82c4d9), SkBits2Float(0xc26ff71a), SkBits2Float(0x3f7d5da4), SkBits2Float(0xc26ff7a6), SkBits2Float(0x3f753191), SkBits2Float(0xc26ff82c)); 2876 path.lineTo(SkBits2Float(0x3fa99777), SkBits2Float(0xc2a5fa96)); 2877 path.close(); 2878 2879 SkPath path2(path); 2880 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2881 } 2882 // op end success 1 2883 2884 static void battleOp107(skiatest::Reporter* reporter, const char* filename) { 2885 SkPath path; 2886 path.setFillType((SkPath::FillType) 1); 2887 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2888 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2889 path.cubicTo(SkBits2Float(0x3ee221f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f622166), SkBits2Float(0xc2a5fe31), SkBits2Float(0x3fa99777), SkBits2Float(0xc2a5fa96)); 2890 path.cubicTo(SkBits2Float(0x3faf3e7a), SkBits2Float(0xc2a5fa39), SkBits2Float(0x3fb4e596), SkBits2Float(0xc2a5f9d8), SkBits2Float(0x3fba8cad), SkBits2Float(0xc2a5f972)); 2891 path.lineTo(SkBits2Float(0x3f86dad5), SkBits2Float(0xc26ff687)); 2892 path.cubicTo(SkBits2Float(0x3f82c4d9), SkBits2Float(0xc26ff71a), SkBits2Float(0x3f7d5da4), SkBits2Float(0xc26ff7a6), SkBits2Float(0x3f753159), SkBits2Float(0xc26ff82c)); 2893 path.cubicTo(SkBits2Float(0x3f237814), SkBits2Float(0xc26ffd64), SkBits2Float(0x3ea3787a), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2894 path.close(); 2895 2896 SkPath path1(path); 2897 path.reset(); 2898 path.setFillType((SkPath::FillType) 0); 2899 path.moveTo(SkBits2Float(0x3fba8c96), SkBits2Float(0xc2a5f973)); 2900 path.cubicTo(SkBits2Float(0x400b1301), SkBits2Float(0xc2a5f303), SkBits2Float(0x4038dc7e), SkBits2Float(0xc2a5e7d6), SkBits2Float(0x40669fe4), SkBits2Float(0xc2a5d7ed)); 2901 path.lineTo(SkBits2Float(0x4026b765), SkBits2Float(0xc26fc611)); 2902 path.cubicTo(SkBits2Float(0x4005a27d), SkBits2Float(0xc26fdd13), SkBits2Float(0x3fc9123c), SkBits2Float(0xc26fed3b), SkBits2Float(0x3f86daf1), SkBits2Float(0xc26ff689)); 2903 path.lineTo(SkBits2Float(0x3fba8c96), SkBits2Float(0xc2a5f973)); 2904 path.close(); 2905 2906 SkPath path2(path); 2907 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2908 } 2909 // op end success 1 2910 2911 static void battleOp108(skiatest::Reporter* reporter, const char* filename) { 2912 SkPath path; 2913 path.setFillType((SkPath::FillType) 0); 2914 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2915 path.cubicTo(SkBits2Float(0x3f587304), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd8713e), SkBits2Float(0xc2a5f962), SkBits2Float(0x40224ed5), SkBits2Float(0xc2a5ec27)); 2916 path.lineTo(SkBits2Float(0x3feaa996), SkBits2Float(0xc26fe350)); 2917 path.cubicTo(SkBits2Float(0x3f9c76e4), SkBits2Float(0xc26ff671), SkBits2Float(0x3f1c780b), SkBits2Float(0xc2700000), SkBits2Float(0xb5510538), SkBits2Float(0xc2700000)); 2918 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2919 path.close(); 2920 2921 SkPath path1(path); 2922 path.reset(); 2923 path.setFillType((SkPath::FillType) 0); 2924 path.moveTo(SkBits2Float(0x40224ee4), SkBits2Float(0xc2a5ec28)); 2925 path.cubicTo(SkBits2Float(0x4027b77a), SkBits2Float(0xc2a5ead6), SkBits2Float(0x402d1ffd), SkBits2Float(0xc2a5e972), SkBits2Float(0x4032886f), SkBits2Float(0xc2a5e7fe)); 2926 path.lineTo(SkBits2Float(0x40010f64), SkBits2Float(0xc26fdd4a)); 2927 path.cubicTo(SkBits2Float(0x3ffa4d23), SkBits2Float(0xc26fdf64), SkBits2Float(0x3ff27b6d), SkBits2Float(0xc26fe166), SkBits2Float(0x3feaa9a1), SkBits2Float(0xc26fe350)); 2928 path.lineTo(SkBits2Float(0x40224ee4), SkBits2Float(0xc2a5ec28)); 2929 path.close(); 2930 2931 SkPath path2(path); 2932 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2933 } 2934 // op end success 1 2935 2936 static void battleOp109(skiatest::Reporter* reporter, const char* filename) { 2937 SkPath path; 2938 path.setFillType((SkPath::FillType) 1); 2939 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2940 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2941 path.cubicTo(SkBits2Float(0x3f587304), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3fd8713e), SkBits2Float(0xc2a5f962), SkBits2Float(0x40224ee4), SkBits2Float(0xc2a5ec28)); 2942 path.cubicTo(SkBits2Float(0x4027b77a), SkBits2Float(0xc2a5ead6), SkBits2Float(0x402d1ffd), SkBits2Float(0xc2a5e972), SkBits2Float(0x4032886f), SkBits2Float(0xc2a5e7fe)); 2943 path.lineTo(SkBits2Float(0x40010f64), SkBits2Float(0xc26fdd4a)); 2944 path.cubicTo(SkBits2Float(0x3ffa4d23), SkBits2Float(0xc26fdf64), SkBits2Float(0x3ff27b6d), SkBits2Float(0xc26fe166), SkBits2Float(0x3feaa996), SkBits2Float(0xc26fe350)); 2945 path.cubicTo(SkBits2Float(0x3f9c76e4), SkBits2Float(0xc26ff671), SkBits2Float(0x3f1c780b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 2946 path.close(); 2947 2948 SkPath path1(path); 2949 path.reset(); 2950 path.setFillType((SkPath::FillType) 0); 2951 path.moveTo(SkBits2Float(0x4032887d), SkBits2Float(0xc2a5e7fe)); 2952 path.cubicTo(SkBits2Float(0x4085166b), SkBits2Float(0xc2a5d069), SkBits2Float(0x40b0dd8e), SkBits2Float(0xc2a5a77a), SkBits2Float(0x40dc8f53), SkBits2Float(0xc2a56d38)); 2953 path.lineTo(SkBits2Float(0x409f70d9), SkBits2Float(0xc26f2bca)); 2954 path.cubicTo(SkBits2Float(0x407fb58c), SkBits2Float(0xc26f8005), SkBits2Float(0x40406a74), SkBits2Float(0xc26fbb35), SkBits2Float(0x40010f5f), SkBits2Float(0xc26fdd4b)); 2955 path.lineTo(SkBits2Float(0x4032887d), SkBits2Float(0xc2a5e7fe)); 2956 path.close(); 2957 2958 SkPath path2(path); 2959 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2960 } 2961 // op end success 1 2962 2963 static void battleOp110(skiatest::Reporter* reporter, const char* filename) { 2964 SkPath path; 2965 path.setFillType((SkPath::FillType) 0); 2966 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2967 path.cubicTo(SkBits2Float(0x400cf1ae), SkBits2Float(0xc2a5ffff), SkBits2Float(0x408cea87), SkBits2Float(0xc2a5d31f), SkBits2Float(0x40d32a40), SkBits2Float(0xc2a57979)); 2968 path.lineTo(SkBits2Float(0x4098a645), SkBits2Float(0xc26f3d83)); 2969 path.cubicTo(SkBits2Float(0x404bbc01), SkBits2Float(0xc26fbf1e), SkBits2Float(0x3fcbc669), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff59), SkBits2Float(0xc26fffff)); 2970 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 2971 path.close(); 2972 2973 SkPath path1(path); 2974 path.reset(); 2975 path.setFillType((SkPath::FillType) 0); 2976 path.moveTo(SkBits2Float(0x40d32a46), SkBits2Float(0xc2a5797a)); 2977 path.cubicTo(SkBits2Float(0x40da306e), SkBits2Float(0xc2a57083), SkBits2Float(0x40e135fe), SkBits2Float(0xc2a5671a), SkBits2Float(0x40e83aef), SkBits2Float(0xc2a55d3f)); 2978 path.lineTo(SkBits2Float(0x40a7e090), SkBits2Float(0xc26f14b1)); 2979 path.cubicTo(SkBits2Float(0x40a2cd8d), SkBits2Float(0xc26f22f4), SkBits2Float(0x409dba1d), SkBits2Float(0xc26f308e), SkBits2Float(0x4098a641), SkBits2Float(0xc26f3d84)); 2980 path.lineTo(SkBits2Float(0x40d32a46), SkBits2Float(0xc2a5797a)); 2981 path.close(); 2982 2983 SkPath path2(path); 2984 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 2985 } 2986 // op end success 1 2987 2988 static void battleOp111(skiatest::Reporter* reporter, const char* filename) { 2989 SkPath path; 2990 path.setFillType((SkPath::FillType) 1); 2991 path.moveTo(SkBits2Float(0x3697ff59), SkBits2Float(0xc26fffff)); 2992 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 2993 path.cubicTo(SkBits2Float(0x400cf1ae), SkBits2Float(0xc2a5ffff), SkBits2Float(0x408cea87), SkBits2Float(0xc2a5d31f), SkBits2Float(0x40d32a46), SkBits2Float(0xc2a5797a)); 2994 path.cubicTo(SkBits2Float(0x40da306e), SkBits2Float(0xc2a57083), SkBits2Float(0x40e135fe), SkBits2Float(0xc2a5671a), SkBits2Float(0x40e83aef), SkBits2Float(0xc2a55d3f)); 2995 path.lineTo(SkBits2Float(0x40a7e090), SkBits2Float(0xc26f14b1)); 2996 path.cubicTo(SkBits2Float(0x40a2cd8f), SkBits2Float(0xc26f22f4), SkBits2Float(0x409dba20), SkBits2Float(0xc26f308e), SkBits2Float(0x4098a645), SkBits2Float(0xc26f3d83)); 2997 path.cubicTo(SkBits2Float(0x404bbc01), SkBits2Float(0xc26fbf1e), SkBits2Float(0x3fcbc669), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff59), SkBits2Float(0xc26fffff)); 2998 path.close(); 2999 path.moveTo(SkBits2Float(0x40b5a39a), SkBits2Float(0xc28e5650)); 3000 path.lineTo(SkBits2Float(0x4098a641), SkBits2Float(0xc26f3d84)); 3001 path.lineTo(SkBits2Float(0x4098a646), SkBits2Float(0xc26f3d84)); 3002 path.lineTo(SkBits2Float(0x40b5a39a), SkBits2Float(0xc28e5650)); 3003 path.close(); 3004 3005 SkPath path1(path); 3006 path.reset(); 3007 path.setFillType((SkPath::FillType) 0); 3008 path.moveTo(SkBits2Float(0x40e83ae9), SkBits2Float(0xc2a55d3f)); 3009 path.cubicTo(SkBits2Float(0x412d0232), SkBits2Float(0xc2a4bd73), SkBits2Float(0x4165854a), SkBits2Float(0xc2a3a860), SkBits2Float(0x418ea651), SkBits2Float(0xc2a21fbf)); 3010 path.lineTo(SkBits2Float(0x414e3d91), SkBits2Float(0xc26a656a)); 3011 path.cubicTo(SkBits2Float(0x4125eb27), SkBits2Float(0xc26c9d13), SkBits2Float(0x40fa2207), SkBits2Float(0xc26e2daa), SkBits2Float(0x40a7e094), SkBits2Float(0xc26f14b2)); 3012 path.lineTo(SkBits2Float(0x40e83ae9), SkBits2Float(0xc2a55d3f)); 3013 path.close(); 3014 3015 SkPath path2(path); 3016 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3017 } 3018 // op end success 1 3019 3020 static void battleOp112(skiatest::Reporter* reporter, const char* filename) { 3021 SkPath path; 3022 path.setFillType((SkPath::FillType) 0); 3023 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3024 path.cubicTo(SkBits2Float(0x4035711d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b561d9), SkBits2Float(0xc2a5b5a1), SkBits2Float(0x4107d050), SkBits2Float(0xc2a5212f)); 3025 path.lineTo(SkBits2Float(0x40c45b76), SkBits2Float(0xc26ebddb)); 3026 path.cubicTo(SkBits2Float(0x40831ea4), SkBits2Float(0xc26f947a), SkBits2Float(0x400329ad), SkBits2Float(0xc26fffff), SkBits2Float(0x35bbfd46), SkBits2Float(0xc26fffff)); 3027 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3028 path.close(); 3029 3030 SkPath path1(path); 3031 path.reset(); 3032 path.setFillType((SkPath::FillType) 0); 3033 path.moveTo(SkBits2Float(0x4107d054), SkBits2Float(0xc2a5212f)); 3034 path.cubicTo(SkBits2Float(0x410c5332), SkBits2Float(0xc2a51258), SkBits2Float(0x4110d578), SkBits2Float(0xc2a502c3), SkBits2Float(0x41155714), SkBits2Float(0xc2a4f271)); 3035 path.lineTo(SkBits2Float(0x40d7e9e2), SkBits2Float(0xc26e7a46)); 3036 path.cubicTo(SkBits2Float(0x40d16605), SkBits2Float(0xc26e91e0), SkBits2Float(0x40cae131), SkBits2Float(0xc26ea866), SkBits2Float(0x40c45b7a), SkBits2Float(0xc26ebddc)); 3037 path.lineTo(SkBits2Float(0x4107d054), SkBits2Float(0xc2a5212f)); 3038 path.close(); 3039 3040 SkPath path2(path); 3041 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3042 } 3043 // op end success 1 3044 3045 static void battleOp113(skiatest::Reporter* reporter, const char* filename) { 3046 SkPath path; 3047 path.setFillType((SkPath::FillType) 1); 3048 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 3049 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3050 path.cubicTo(SkBits2Float(0x4035711d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40b561d9), SkBits2Float(0xc2a5b5a1), SkBits2Float(0x4107d054), SkBits2Float(0xc2a5212f)); 3051 path.cubicTo(SkBits2Float(0x410c5332), SkBits2Float(0xc2a51258), SkBits2Float(0x4110d578), SkBits2Float(0xc2a502c3), SkBits2Float(0x41155714), SkBits2Float(0xc2a4f271)); 3052 path.lineTo(SkBits2Float(0x40d7e9e2), SkBits2Float(0xc26e7a46)); 3053 path.cubicTo(SkBits2Float(0x40d16605), SkBits2Float(0xc26e91e0), SkBits2Float(0x40cae131), SkBits2Float(0xc26ea866), SkBits2Float(0x40c45b76), SkBits2Float(0xc26ebddb)); 3054 path.cubicTo(SkBits2Float(0x40831ea4), SkBits2Float(0xc26f947a), SkBits2Float(0x400329ad), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 3055 path.close(); 3056 3057 SkPath path1(path); 3058 path.reset(); 3059 path.setFillType((SkPath::FillType) 0); 3060 path.moveTo(SkBits2Float(0x4115571a), SkBits2Float(0xc2a4f271)); 3061 path.cubicTo(SkBits2Float(0x415e6818), SkBits2Float(0xc2a3e9d4), SkBits2Float(0x41935478), SkBits2Float(0xc2a21f7a), SkBits2Float(0x41b6ad74), SkBits2Float(0xc29f981d)); 3062 path.lineTo(SkBits2Float(0x41840e5b), SkBits2Float(0xc266bd14)); 3063 path.cubicTo(SkBits2Float(0x415501d6), SkBits2Float(0xc26a6507), SkBits2Float(0x4120c6a0), SkBits2Float(0xc26cfbb4), SkBits2Float(0x40d7e9e6), SkBits2Float(0xc26e7a47)); 3064 path.lineTo(SkBits2Float(0x4115571a), SkBits2Float(0xc2a4f271)); 3065 path.close(); 3066 3067 SkPath path2(path); 3068 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3069 } 3070 // op end success 1 3071 3072 static void battleOp114(skiatest::Reporter* reporter, const char* filename) { 3073 SkPath path; 3074 path.setFillType((SkPath::FillType) 0); 3075 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3076 path.cubicTo(SkBits2Float(0x405f6414), SkBits2Float(0xc2a60000), SkBits2Float(0x40df4798), SkBits2Float(0xc2a58f44), SkBits2Float(0x41270b42), SkBits2Float(0xc2a4ae78)); 3077 path.lineTo(SkBits2Float(0x40f1826b), SkBits2Float(0xc26e1801)); 3078 path.cubicTo(SkBits2Float(0x40a16831), SkBits2Float(0xc26f5d03), SkBits2Float(0x40217cc8), SkBits2Float(0xc2700000), SkBits2Float(0x3507fa94), SkBits2Float(0xc2700000)); 3079 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3080 path.close(); 3081 3082 SkPath path1(path); 3083 path.reset(); 3084 path.setFillType((SkPath::FillType) 0); 3085 path.moveTo(SkBits2Float(0x41270b46), SkBits2Float(0xc2a4ae78)); 3086 path.cubicTo(SkBits2Float(0x412c952a), SkBits2Float(0xc2a497ff), SkBits2Float(0x41321de3), SkBits2Float(0xc2a48068), SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4)); 3087 path.lineTo(SkBits2Float(0x4104c195), SkBits2Float(0xc26db1b1)); 3088 path.cubicTo(SkBits2Float(0x4100c256), SkBits2Float(0xc26dd569), SkBits2Float(0x40f98465), SkBits2Float(0xc26df784), SkBits2Float(0x40f18273), SkBits2Float(0xc26e1801)); 3089 path.lineTo(SkBits2Float(0x41270b46), SkBits2Float(0xc2a4ae78)); 3090 path.close(); 3091 3092 SkPath path2(path); 3093 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3094 } 3095 // op end success 1 3096 3097 static void battleOp115(skiatest::Reporter* reporter, const char* filename) { 3098 SkPath path; 3099 path.setFillType((SkPath::FillType) 1); 3100 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3101 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3102 path.cubicTo(SkBits2Float(0x405f6414), SkBits2Float(0xc2a60000), SkBits2Float(0x40df4798), SkBits2Float(0xc2a58f44), SkBits2Float(0x41270b46), SkBits2Float(0xc2a4ae78)); 3103 path.cubicTo(SkBits2Float(0x412c952a), SkBits2Float(0xc2a497ff), SkBits2Float(0x41321de3), SkBits2Float(0xc2a48068), SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4)); 3104 path.lineTo(SkBits2Float(0x4104c195), SkBits2Float(0xc26db1b1)); 3105 path.cubicTo(SkBits2Float(0x4100c256), SkBits2Float(0xc26dd569), SkBits2Float(0x40f98465), SkBits2Float(0xc26df784), SkBits2Float(0x40f1826b), SkBits2Float(0xc26e1801)); 3106 path.cubicTo(SkBits2Float(0x40a16831), SkBits2Float(0xc26f5d03), SkBits2Float(0x40217cc8), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3107 path.close(); 3108 3109 SkPath path1(path); 3110 path.reset(); 3111 path.setFillType((SkPath::FillType) 0); 3112 path.moveTo(SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4)); 3113 path.cubicTo(SkBits2Float(0x4188a9bf), SkBits2Float(0xc2a2d700), SkBits2Float(0x41b4bec4), SkBits2Float(0xc2a021d5), SkBits2Float(0x41df619b), SkBits2Float(0xc29c5308)); 3114 path.lineTo(SkBits2Float(0x41a17afe), SkBits2Float(0xc26202d7)); 3115 path.cubicTo(SkBits2Float(0x4182a8c1), SkBits2Float(0xc2678433), SkBits2Float(0x414595cf), SkBits2Float(0xc26b6e5e), SkBits2Float(0x4104c197), SkBits2Float(0xc26db1b2)); 3116 path.lineTo(SkBits2Float(0x4137a563), SkBits2Float(0xc2a467b4)); 3117 path.close(); 3118 3119 SkPath path2(path); 3120 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3121 } 3122 // op end success 1 3123 3124 static void battleOp116(skiatest::Reporter* reporter, const char* filename) { 3125 SkPath path; 3126 path.setFillType((SkPath::FillType) 0); 3127 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3128 path.cubicTo(SkBits2Float(0x40894a00), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41092f84), SkBits2Float(0xc2a555af), SkBits2Float(0x414d01d5), SkBits2Float(0xc2a40295)); 3129 path.lineTo(SkBits2Float(0x411432a9), SkBits2Float(0xc26d1f80)); 3130 path.cubicTo(SkBits2Float(0x40c65728), SkBits2Float(0xc26f09c3), SkBits2Float(0x40467d64), SkBits2Float(0xc2700000), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000)); 3131 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3132 path.close(); 3133 3134 SkPath path1(path); 3135 path.reset(); 3136 path.setFillType((SkPath::FillType) 0); 3137 path.moveTo(SkBits2Float(0x414d01d1), SkBits2Float(0xc2a40296)); 3138 path.cubicTo(SkBits2Float(0x4153c92e), SkBits2Float(0xc2a3e0b1), SkBits2Float(0x415a8e6d), SkBits2Float(0xc2a3bd1e), SkBits2Float(0x41615162), SkBits2Float(0xc2a397de)); 3139 path.lineTo(SkBits2Float(0x4122e164), SkBits2Float(0xc26c8535)); 3140 path.cubicTo(SkBits2Float(0x411dfe19), SkBits2Float(0xc26cbb11), SkBits2Float(0x41191928), SkBits2Float(0xc26cee7f), SkBits2Float(0x411432ab), SkBits2Float(0xc26d1f80)); 3141 path.lineTo(SkBits2Float(0x414d01d1), SkBits2Float(0xc2a40296)); 3142 path.close(); 3143 3144 SkPath path2(path); 3145 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3146 } 3147 // op end success 1 3148 3149 static void battleOp117(skiatest::Reporter* reporter, const char* filename) { 3150 SkPath path; 3151 path.setFillType((SkPath::FillType) 1); 3152 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3153 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3154 path.cubicTo(SkBits2Float(0x408949fd), SkBits2Float(0xc2a60000), SkBits2Float(0x41092f81), SkBits2Float(0xc2a555af), SkBits2Float(0x414d01d0), SkBits2Float(0xc2a40295)); 3155 path.lineTo(SkBits2Float(0x414d01d1), SkBits2Float(0xc2a40296)); 3156 path.cubicTo(SkBits2Float(0x4153c92e), SkBits2Float(0xc2a3e0b1), SkBits2Float(0x415a8e6d), SkBits2Float(0xc2a3bd1e), SkBits2Float(0x41615162), SkBits2Float(0xc2a397de)); 3157 path.lineTo(SkBits2Float(0x4122e164), SkBits2Float(0xc26c8535)); 3158 path.cubicTo(SkBits2Float(0x411dfe19), SkBits2Float(0xc26cbb11), SkBits2Float(0x41191928), SkBits2Float(0xc26cee7f), SkBits2Float(0x411432a9), SkBits2Float(0xc26d1f80)); 3159 path.cubicTo(SkBits2Float(0x40c65728), SkBits2Float(0xc26f09c3), SkBits2Float(0x40467d64), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3160 path.close(); 3161 3162 SkPath path1(path); 3163 path.reset(); 3164 path.setFillType((SkPath::FillType) 0); 3165 path.moveTo(SkBits2Float(0x41615164), SkBits2Float(0xc2a397de)); 3166 path.cubicTo(SkBits2Float(0x41a78432), SkBits2Float(0xc2a13b6d), SkBits2Float(0x41dcf7f2), SkBits2Float(0xc29d27e8), SkBits2Float(0x4207e0f5), SkBits2Float(0xc29775db)); 3167 path.lineTo(SkBits2Float(0x41c47380), SkBits2Float(0xc25afa96)); 3168 path.cubicTo(SkBits2Float(0x419fbc7e), SkBits2Float(0xc263369d), SkBits2Float(0x41723143), SkBits2Float(0xc2691b52), SkBits2Float(0x4122e168), SkBits2Float(0xc26c8537)); 3169 path.lineTo(SkBits2Float(0x41615164), SkBits2Float(0xc2a397de)); 3170 path.close(); 3171 3172 SkPath path2(path); 3173 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3174 } 3175 // op end success 1 3176 3177 static void battleOp118(skiatest::Reporter* reporter, const char* filename) { 3178 SkPath path; 3179 path.setFillType((SkPath::FillType) 0); 3180 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3181 path.cubicTo(SkBits2Float(0x40a2e582), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4122b94f), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4)); 3182 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464)); 3183 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 3184 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3185 path.close(); 3186 3187 SkPath path1(path); 3188 path.reset(); 3189 path.setFillType((SkPath::FillType) 0); 3190 path.moveTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4)); 3191 path.cubicTo(SkBits2Float(0x417acd1a), SkBits2Float(0xc2a30415), SkBits2Float(0x41816508), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb)); 3192 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8)); 3193 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463)); 3194 path.lineTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4)); 3195 path.close(); 3196 3197 SkPath path2(path); 3198 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3199 } 3200 // op end success 1 3201 3202 static void battleOp119(skiatest::Reporter* reporter, const char* filename) { 3203 SkPath path; 3204 path.setFillType((SkPath::FillType) 1); 3205 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 3206 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3207 path.cubicTo(SkBits2Float(0x40a2e57f), SkBits2Float(0xc2a60000), SkBits2Float(0x4122b94c), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4)); 3208 path.lineTo(SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4)); 3209 path.cubicTo(SkBits2Float(0x417acd1d), SkBits2Float(0xc2a30415), SkBits2Float(0x41816509), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb)); 3210 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8)); 3211 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463)); 3212 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464)); 3213 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 3214 path.close(); 3215 3216 SkPath path1(path); 3217 path.reset(); 3218 path.setFillType((SkPath::FillType) 0); 3219 path.moveTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc)); 3220 path.cubicTo(SkBits2Float(0x41c61a92), SkBits2Float(0xc29f4c69), SkBits2Float(0x42023dd6), SkBits2Float(0xc299958f), SkBits2Float(0x421f3a98), SkBits2Float(0xc291a994)); 3221 path.lineTo(SkBits2Float(0x41e635e1), SkBits2Float(0xc25298a5)); 3222 path.cubicTo(SkBits2Float(0x41bc4d11), SkBits2Float(0xc25e0caa), SkBits2Float(0x418f3524), SkBits2Float(0xc2664fa2), SkBits2Float(0x4140d729), SkBits2Float(0xc26b1ba9)); 3223 path.lineTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc)); 3224 path.close(); 3225 3226 SkPath path2(path); 3227 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3228 } 3229 // op end success 1 3230 3231 static void battleOp120(skiatest::Reporter* reporter, const char* filename) { 3232 SkPath path; 3233 path.setFillType((SkPath::FillType) 0); 3234 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3235 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158cf), SkBits2Float(0xc2a1f965)); 3236 path.lineTo(SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8)); 3237 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x35bbfd46), SkBits2Float(0xc2700000)); 3238 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3239 path.close(); 3240 3241 SkPath path1(path); 3242 path.reset(); 3243 path.setFillType((SkPath::FillType) 0); 3244 path.moveTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965)); 3245 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207)); 3246 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a)); 3247 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8)); 3248 path.lineTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965)); 3249 path.close(); 3250 3251 SkPath path2(path); 3252 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3253 } 3254 // op end success 1 3255 3256 static void battleOp121(skiatest::Reporter* reporter, const char* filename) { 3257 SkPath path; 3258 path.setFillType((SkPath::FillType) 1); 3259 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3260 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3261 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965)); 3262 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207)); 3263 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a)); 3264 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8)); 3265 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3266 path.close(); 3267 3268 SkPath path1(path); 3269 path.reset(); 3270 path.setFillType((SkPath::FillType) 0); 3271 path.moveTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208)); 3272 path.cubicTo(SkBits2Float(0x41eca53e), SkBits2Float(0xc29c5d1a), SkBits2Float(0x421ad1be), SkBits2Float(0xc2942e2b), SkBits2Float(0x423b8fe1), SkBits2Float(0xc288f8a3)); 3273 path.lineTo(SkBits2Float(0x42079647), SkBits2Float(0xc24607dc)); 3274 path.cubicTo(SkBits2Float(0x41dfd5cc), SkBits2Float(0xc2563c94), SkBits2Float(0x41ab11aa), SkBits2Float(0xc2621167), SkBits2Float(0x4166c24e), SkBits2Float(0xc268f69b)); 3275 path.lineTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208)); 3276 path.close(); 3277 3278 SkPath path2(path); 3279 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3280 } 3281 // op end success 1 3282 3283 static void battleOp122(skiatest::Reporter* reporter, const char* filename) { 3284 SkPath path; 3285 path.setFillType((SkPath::FillType) 0); 3286 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3287 path.cubicTo(SkBits2Float(0x410a1653), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4189aa2f), SkBits2Float(0xc2a34ed0), SkBits2Float(0x41cb63be), SkBits2Float(0xc29e054b)); 3288 path.lineTo(SkBits2Float(0x41930758), SkBits2Float(0xc26476b2)); 3289 path.cubicTo(SkBits2Float(0x41470896), SkBits2Float(0xc26c1b98), SkBits2Float(0x40c7a4f2), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000)); 3290 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3291 path.close(); 3292 3293 SkPath path1(path); 3294 path.reset(); 3295 path.setFillType((SkPath::FillType) 0); 3296 path.moveTo(SkBits2Float(0x41cb63c3), SkBits2Float(0xc29e054c)); 3297 path.cubicTo(SkBits2Float(0x41d1f2f3), SkBits2Float(0xc29d7e37), SkBits2Float(0x41d879a0), SkBits2Float(0xc29cf09c), SkBits2Float(0x41def72d), SkBits2Float(0xc29c5c87)); 3298 path.lineTo(SkBits2Float(0x41a12e10), SkBits2Float(0xc2621091)); 3299 path.cubicTo(SkBits2Float(0x419c7cee), SkBits2Float(0xc262e6aa), SkBits2Float(0x4197c536), SkBits2Float(0xc263b366), SkBits2Float(0x41930757), SkBits2Float(0xc26476b3)); 3300 path.lineTo(SkBits2Float(0x41cb63c3), SkBits2Float(0xc29e054c)); 3301 path.close(); 3302 3303 SkPath path2(path); 3304 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3305 } 3306 // op end success 1 3307 3308 static void battleOp123(skiatest::Reporter* reporter, const char* filename) { 3309 SkPath path; 3310 path.setFillType((SkPath::FillType) 1); 3311 path.moveTo(SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000)); 3312 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3313 path.cubicTo(SkBits2Float(0x410a1653), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4189aa2f), SkBits2Float(0xc2a34ed0), SkBits2Float(0x41cb63be), SkBits2Float(0xc29e054b)); 3314 path.lineTo(SkBits2Float(0x41cb63c3), SkBits2Float(0xc29e054c)); 3315 path.cubicTo(SkBits2Float(0x41d1f2f3), SkBits2Float(0xc29d7e37), SkBits2Float(0x41d879a0), SkBits2Float(0xc29cf09c), SkBits2Float(0x41def72d), SkBits2Float(0xc29c5c87)); 3316 path.lineTo(SkBits2Float(0x41a12e10), SkBits2Float(0xc2621091)); 3317 path.cubicTo(SkBits2Float(0x419c7cee), SkBits2Float(0xc262e6aa), SkBits2Float(0x4197c536), SkBits2Float(0xc263b366), SkBits2Float(0x41930757), SkBits2Float(0xc26476b3)); 3318 path.lineTo(SkBits2Float(0x41930758), SkBits2Float(0xc26476b2)); 3319 path.cubicTo(SkBits2Float(0x41470896), SkBits2Float(0xc26c1b98), SkBits2Float(0x40c7a4f2), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000)); 3320 path.close(); 3321 3322 SkPath path1(path); 3323 path.reset(); 3324 path.setFillType((SkPath::FillType) 0); 3325 path.moveTo(SkBits2Float(0x41def730), SkBits2Float(0xc29c5c87)); 3326 path.cubicTo(SkBits2Float(0x422459f2), SkBits2Float(0xc292f017), SkBits2Float(0x42539427), SkBits2Float(0xc282f764), SkBits2Float(0x4278c050), SkBits2Float(0xc25be110)); 3327 path.lineTo(SkBits2Float(0x4233d1f5), SkBits2Float(0xc21ef2e3)); 3328 path.cubicTo(SkBits2Float(0x4218f2cf), SkBits2Float(0xc23d5956), SkBits2Float(0x41ed9dce), SkBits2Float(0xc25470b6), SkBits2Float(0x41a12e11), SkBits2Float(0xc2621092)); 3329 path.lineTo(SkBits2Float(0x41def730), SkBits2Float(0xc29c5c87)); 3330 path.close(); 3331 3332 SkPath path2(path); 3333 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3334 } 3335 // op end success 1 3336 3337 static void battleOp124(skiatest::Reporter* reporter, const char* filename) { 3338 SkPath path; 3339 path.setFillType((SkPath::FillType) 0); 3340 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3341 path.cubicTo(SkBits2Float(0x411fc00b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419f1845), SkBits2Float(0xc2a265a5), SkBits2Float(0x41e9da2b), SkBits2Float(0xc29b5d43)); 3342 path.lineTo(SkBits2Float(0x41a90cc1), SkBits2Float(0xc2609f84)); 3343 path.cubicTo(SkBits2Float(0x41660440), SkBits2Float(0xc26aca7c), SkBits2Float(0x40e6f6cd), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa8c), SkBits2Float(0xc2700000)); 3344 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3345 path.close(); 3346 3347 SkPath path1(path); 3348 path.reset(); 3349 path.setFillType((SkPath::FillType) 0); 3350 path.moveTo(SkBits2Float(0x41e9da2e), SkBits2Float(0xc29b5d44)); 3351 path.cubicTo(SkBits2Float(0x41f14eda), SkBits2Float(0xc29aa9b5), SkBits2Float(0x41f8b671), SkBits2Float(0xc299ed94), SkBits2Float(0x42000805), SkBits2Float(0xc29928f7)); 3352 path.lineTo(SkBits2Float(0x41b91b05), SkBits2Float(0xc25d6faa)); 3353 path.cubicTo(SkBits2Float(0x41b3cad4), SkBits2Float(0xc25e8bec), SkBits2Float(0x41ae7086), SkBits2Float(0xc25f9beb), SkBits2Float(0x41a90cc3), SkBits2Float(0xc2609f85)); 3354 path.lineTo(SkBits2Float(0x41e9da2e), SkBits2Float(0xc29b5d44)); 3355 path.close(); 3356 3357 SkPath path2(path); 3358 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3359 } 3360 // op end success 1 3361 3362 static void battleOp125(skiatest::Reporter* reporter, const char* filename) { 3363 SkPath path; 3364 path.setFillType((SkPath::FillType) 1); 3365 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3366 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3367 path.cubicTo(SkBits2Float(0x411fc00b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419f1845), SkBits2Float(0xc2a265a5), SkBits2Float(0x41e9da2e), SkBits2Float(0xc29b5d44)); 3368 path.cubicTo(SkBits2Float(0x41f14eda), SkBits2Float(0xc29aa9b5), SkBits2Float(0x41f8b671), SkBits2Float(0xc299ed94), SkBits2Float(0x42000805), SkBits2Float(0xc29928f7)); 3369 path.lineTo(SkBits2Float(0x41b91b05), SkBits2Float(0xc25d6faa)); 3370 path.cubicTo(SkBits2Float(0x41b3cad4), SkBits2Float(0xc25e8bec), SkBits2Float(0x41ae7086), SkBits2Float(0xc25f9beb), SkBits2Float(0x41a90cc1), SkBits2Float(0xc2609f84)); 3371 path.cubicTo(SkBits2Float(0x41660440), SkBits2Float(0xc26aca7c), SkBits2Float(0x40e6f6cd), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3372 path.close(); 3373 3374 SkPath path1(path); 3375 path.reset(); 3376 path.setFillType((SkPath::FillType) 0); 3377 path.moveTo(SkBits2Float(0x42000806), SkBits2Float(0xc29928f8)); 3378 path.cubicTo(SkBits2Float(0x423c0231), SkBits2Float(0xc28ca034), SkBits2Float(0x426f4e95), SkBits2Float(0xc26f2095), SkBits2Float(0x4289c821), SkBits2Float(0xc2392c12)); 3379 path.lineTo(SkBits2Float(0x424733db), SkBits2Float(0xc205dc02)); 3380 path.cubicTo(SkBits2Float(0x422cfe35), SkBits2Float(0xc22cdcf5), SkBits2Float(0x4207e8ea), SkBits2Float(0xc24b507f), SkBits2Float(0x41b91b06), SkBits2Float(0xc25d6faa)); 3381 path.lineTo(SkBits2Float(0x42000806), SkBits2Float(0xc29928f8)); 3382 path.close(); 3383 3384 SkPath path2(path); 3385 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3386 } 3387 // op end success 1 3388 3389 static void battleOp126(skiatest::Reporter* reporter, const char* filename) { 3390 SkPath path; 3391 path.setFillType((SkPath::FillType) 0); 3392 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3393 path.cubicTo(SkBits2Float(0x41379cd4), SkBits2Float(0xc2a60000), SkBits2Float(0x41b69d77), SkBits2Float(0xc2a13d93), SkBits2Float(0x42055871), SkBits2Float(0xc29805ae)); 3394 path.lineTo(SkBits2Float(0x41c0c9e6), SkBits2Float(0xc25bca86)); 3395 path.cubicTo(SkBits2Float(0x418402cc), SkBits2Float(0xc2691e6b), SkBits2Float(0x4104bb66), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea5), SkBits2Float(0xc26fffff)); 3396 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3397 path.close(); 3398 3399 SkPath path1(path); 3400 path.reset(); 3401 path.setFillType((SkPath::FillType) 0); 3402 path.moveTo(SkBits2Float(0x42055872), SkBits2Float(0xc29805ae)); 3403 path.cubicTo(SkBits2Float(0x420988d2), SkBits2Float(0xc2971a85), SkBits2Float(0x420daf5c), SkBits2Float(0xc296244f), SkBits2Float(0x4211cb64), SkBits2Float(0xc2952332)); 3404 path.lineTo(SkBits2Float(0x41d2c988), SkBits2Float(0xc2579ed7)); 3405 path.cubicTo(SkBits2Float(0x41ccd887), SkBits2Float(0xc2591291), SkBits2Float(0x41c6d852), SkBits2Float(0xc25a7689), SkBits2Float(0x41c0c9e6), SkBits2Float(0xc25bca86)); 3406 path.lineTo(SkBits2Float(0x42055872), SkBits2Float(0xc29805ae)); 3407 path.close(); 3408 3409 SkPath path2(path); 3410 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3411 } 3412 // op end success 1 3413 3414 static void battleOp127(skiatest::Reporter* reporter, const char* filename) { 3415 SkPath path; 3416 path.setFillType((SkPath::FillType) 1); 3417 path.moveTo(SkBits2Float(0x3673fea5), SkBits2Float(0xc26fffff)); 3418 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3419 path.cubicTo(SkBits2Float(0x41379cd4), SkBits2Float(0xc2a60000), SkBits2Float(0x41b69d77), SkBits2Float(0xc2a13d93), SkBits2Float(0x42055872), SkBits2Float(0xc29805ae)); 3420 path.cubicTo(SkBits2Float(0x420988d2), SkBits2Float(0xc2971a85), SkBits2Float(0x420daf5c), SkBits2Float(0xc296244f), SkBits2Float(0x4211cb64), SkBits2Float(0xc2952332)); 3421 path.lineTo(SkBits2Float(0x41d2c988), SkBits2Float(0xc2579ed7)); 3422 path.cubicTo(SkBits2Float(0x41ccd887), SkBits2Float(0xc2591291), SkBits2Float(0x41c6d852), SkBits2Float(0xc25a7689), SkBits2Float(0x41c0c9e6), SkBits2Float(0xc25bca86)); 3423 path.cubicTo(SkBits2Float(0x418402cc), SkBits2Float(0xc2691e6b), SkBits2Float(0x4104bb66), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea5), SkBits2Float(0xc26fffff)); 3424 path.close(); 3425 3426 SkPath path1(path); 3427 path.reset(); 3428 path.setFillType((SkPath::FillType) 0); 3429 path.moveTo(SkBits2Float(0x4211cb65), SkBits2Float(0xc2952332)); 3430 path.cubicTo(SkBits2Float(0x42550406), SkBits2Float(0xc284b578), SkBits2Float(0x42859569), SkBits2Float(0xc252d13a), SkBits2Float(0x4295bbf4), SkBits2Float(0xc20f53bf)); 3431 path.lineTo(SkBits2Float(0x42587bb2), SkBits2Float(0xc1cf3850)); 3432 path.cubicTo(SkBits2Float(0x4241220a), SkBits2Float(0xc21865e8), SkBits2Float(0x4219fcbd), SkBits2Float(0xc23fde48), SkBits2Float(0x41d2c988), SkBits2Float(0xc2579ed8)); 3433 path.lineTo(SkBits2Float(0x4211cb65), SkBits2Float(0xc2952332)); 3434 path.close(); 3435 3436 SkPath path2(path); 3437 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3438 } 3439 // op end success 1 3440 3441 static void battleOp128(skiatest::Reporter* reporter, const char* filename) { 3442 SkPath path; 3443 path.setFillType((SkPath::FillType) 0); 3444 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3445 path.cubicTo(SkBits2Float(0x4151cd59), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41d04f3f), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e058), SkBits2Float(0xc293de54)); 3446 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926)); 3447 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 3448 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3449 path.close(); 3450 3451 SkPath path1(path); 3452 path.reset(); 3453 path.setFillType((SkPath::FillType) 0); 3454 path.moveTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54)); 3455 path.cubicTo(SkBits2Float(0x421b86ea), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e)); 3456 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790)); 3457 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927)); 3458 path.lineTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54)); 3459 path.close(); 3460 3461 SkPath path2(path); 3462 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3463 } 3464 // op end success 1 3465 3466 static void battleOp129(skiatest::Reporter* reporter, const char* filename) { 3467 SkPath path; 3468 path.setFillType((SkPath::FillType) 1); 3469 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 3470 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3471 path.cubicTo(SkBits2Float(0x4151cd58), SkBits2Float(0xc2a60000), SkBits2Float(0x41d04f3d), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e057), SkBits2Float(0xc293de54)); 3472 path.lineTo(SkBits2Float(0x4216e058), SkBits2Float(0xc293de54)); 3473 path.cubicTo(SkBits2Float(0x421b86eb), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e)); 3474 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790)); 3475 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927)); 3476 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926)); 3477 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 3478 path.close(); 3479 3480 SkPath path1(path); 3481 path.reset(); 3482 path.setFillType((SkPath::FillType) 0); 3483 path.moveTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f)); 3484 path.cubicTo(SkBits2Float(0x426f06c3), SkBits2Float(0xc275d105), SkBits2Float(0x42930d85), SkBits2Float(0xc2303df6), SkBits2Float(0x429f3103), SkBits2Float(0xc1bc373f)); 3485 path.lineTo(SkBits2Float(0x42662806), SkBits2Float(0xc1880f44)); 3486 path.cubicTo(SkBits2Float(0x42549b44), SkBits2Float(0xc1fececc), SkBits2Float(0x422cca4c), SkBits2Float(0xc231b2de), SkBits2Float(0x41ee0e18), SkBits2Float(0xc2506792)); 3487 path.lineTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f)); 3488 path.close(); 3489 3490 SkPath path2(path); 3491 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3492 } 3493 // op end success 1 3494 3495 static void battleOp130(skiatest::Reporter* reporter, const char* filename) { 3496 SkPath path; 3497 path.setFillType((SkPath::FillType) 0); 3498 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3499 path.cubicTo(SkBits2Float(0x417054a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ee1405), SkBits2Float(0xc29dd904), SkBits2Float(0x422a9595), SkBits2Float(0xc28e6989)); 3500 path.lineTo(SkBits2Float(0x41f6a0c0), SkBits2Float(0xc24de5b0)); 3501 path.cubicTo(SkBits2Float(0x41ac1ad0), SkBits2Float(0xc26436ad), SkBits2Float(0x412dbba0), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 3502 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3503 path.close(); 3504 3505 SkPath path1(path); 3506 path.reset(); 3507 path.setFillType((SkPath::FillType) 0); 3508 path.moveTo(SkBits2Float(0x422a9596), SkBits2Float(0xc28e6989)); 3509 path.cubicTo(SkBits2Float(0x422fb535), SkBits2Float(0xc28ce0c4), SkBits2Float(0x4234bf65), SkBits2Float(0xc28b465e), SkBits2Float(0x4239b2bc), SkBits2Float(0xc2899acc)); 3510 path.lineTo(SkBits2Float(0x42063d5a), SkBits2Float(0xc246f24e)); 3511 path.cubicTo(SkBits2Float(0x4202a934), SkBits2Float(0xc2495c7c), SkBits2Float(0x41fe0912), SkBits2Float(0xc24badd5), SkBits2Float(0x41f6a0c0), SkBits2Float(0xc24de5b1)); 3512 path.lineTo(SkBits2Float(0x422a9596), SkBits2Float(0xc28e6989)); 3513 path.close(); 3514 3515 SkPath path2(path); 3516 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3517 } 3518 // op end success 1 3519 3520 static void battleOp131(skiatest::Reporter* reporter, const char* filename) { 3521 SkPath path; 3522 path.setFillType((SkPath::FillType) 1); 3523 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 3524 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3525 path.cubicTo(SkBits2Float(0x417054a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41ee1405), SkBits2Float(0xc29dd904), SkBits2Float(0x422a9596), SkBits2Float(0xc28e6989)); 3526 path.cubicTo(SkBits2Float(0x422fb535), SkBits2Float(0xc28ce0c4), SkBits2Float(0x4234bf65), SkBits2Float(0xc28b465e), SkBits2Float(0x4239b2bc), SkBits2Float(0xc2899acc)); 3527 path.lineTo(SkBits2Float(0x42063d5a), SkBits2Float(0xc246f24e)); 3528 path.cubicTo(SkBits2Float(0x4202a934), SkBits2Float(0xc2495c7c), SkBits2Float(0x41fe0912), SkBits2Float(0xc24badd5), SkBits2Float(0x41f6a0c0), SkBits2Float(0xc24de5b0)); 3529 path.cubicTo(SkBits2Float(0x41ac1ad0), SkBits2Float(0xc26436ad), SkBits2Float(0x412dbba0), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 3530 path.close(); 3531 3532 SkPath path1(path); 3533 path.reset(); 3534 path.setFillType((SkPath::FillType) 0); 3535 path.moveTo(SkBits2Float(0x4239b2bd), SkBits2Float(0xc2899acc)); 3536 path.cubicTo(SkBits2Float(0x42859c2b), SkBits2Float(0xc25c33ca), SkBits2Float(0x42a01474), SkBits2Float(0xc203e23a), SkBits2Float(0x42a51fce), SkBits2Float(0xc1083bae)); 3537 path.lineTo(SkBits2Float(0x426ebbdb), SkBits2Float(0xc0c4f6ab)); 3538 path.cubicTo(SkBits2Float(0x426770d9), SkBits2Float(0xc1beacda), SkBits2Float(0x42412bce), SkBits2Float(0xc21f2eb0), SkBits2Float(0x42063d5a), SkBits2Float(0xc246f24e)); 3539 path.lineTo(SkBits2Float(0x4239b2bd), SkBits2Float(0xc2899acc)); 3540 path.close(); 3541 3542 SkPath path2(path); 3543 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3544 } 3545 // op end success 1 3546 3547 static void battleOp132(skiatest::Reporter* reporter, const char* filename) { 3548 SkPath path; 3549 path.setFillType((SkPath::FillType) 0); 3550 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3551 path.cubicTo(SkBits2Float(0x4187e175), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42063ec3), SkBits2Float(0xc29b93fb), SkBits2Float(0x423df6fd), SkBits2Float(0xc2882410)); 3552 path.lineTo(SkBits2Float(0x420952ef), SkBits2Float(0xc244d488)); 3553 path.cubicTo(SkBits2Float(0x41c216e4), SkBits2Float(0xc260eea0), SkBits2Float(0x4144743c), SkBits2Float(0xc26fffff), SkBits2Float(0x357ffa94), SkBits2Float(0xc26fffff)); 3554 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3555 path.close(); 3556 3557 SkPath path1(path); 3558 path.reset(); 3559 path.setFillType((SkPath::FillType) 0); 3560 path.moveTo(SkBits2Float(0x423df6fe), SkBits2Float(0xc2882411)); 3561 path.cubicTo(SkBits2Float(0x42437e7a), SkBits2Float(0xc286364a), SkBits2Float(0x4248e78f), SkBits2Float(0xc2843312), SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20)); 3562 path.lineTo(SkBits2Float(0x42150d53), SkBits2Float(0xc23c1ae0)); 3563 path.cubicTo(SkBits2Float(0x42113b72), SkBits2Float(0xc23f21be), SkBits2Float(0x420d522e), SkBits2Float(0xc2420aa4), SkBits2Float(0x420952ef), SkBits2Float(0xc244d48a)); 3564 path.lineTo(SkBits2Float(0x423df6fe), SkBits2Float(0xc2882411)); 3565 path.close(); 3566 3567 SkPath path2(path); 3568 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3569 } 3570 // op end success 1 3571 3572 static void battleOp133(skiatest::Reporter* reporter, const char* filename) { 3573 SkPath path; 3574 path.setFillType((SkPath::FillType) 1); 3575 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 3576 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3577 path.cubicTo(SkBits2Float(0x4187e175), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42063ec3), SkBits2Float(0xc29b93fb), SkBits2Float(0x423df6fe), SkBits2Float(0xc2882411)); 3578 path.cubicTo(SkBits2Float(0x42437e7a), SkBits2Float(0xc286364a), SkBits2Float(0x4248e78f), SkBits2Float(0xc2843312), SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20)); 3579 path.lineTo(SkBits2Float(0x42150d53), SkBits2Float(0xc23c1ae0)); 3580 path.cubicTo(SkBits2Float(0x42113b72), SkBits2Float(0xc23f21be), SkBits2Float(0x420d522e), SkBits2Float(0xc2420aa4), SkBits2Float(0x420952ef), SkBits2Float(0xc244d48a)); 3581 path.lineTo(SkBits2Float(0x420952ef), SkBits2Float(0xc244d488)); 3582 path.cubicTo(SkBits2Float(0x41c216e4), SkBits2Float(0xc260eea0), SkBits2Float(0x4144743c), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 3583 path.close(); 3584 3585 SkPath path1(path); 3586 path.reset(); 3587 path.setFillType((SkPath::FillType) 0); 3588 path.moveTo(SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20)); 3589 path.cubicTo(SkBits2Float(0x4292cbf1), SkBits2Float(0xc23ef41d), SkBits2Float(0x42aa31a6), SkBits2Float(0xc1a4e14c), SkBits2Float(0x42a56158), SkBits2Float(0x40e54b3a)); 3590 path.lineTo(SkBits2Float(0x426f1a9e), SkBits2Float(0x40a5c12f)); 3591 path.cubicTo(SkBits2Float(0x42761044), SkBits2Float(0xc16e617c), SkBits2Float(0x42543c73), SkBits2Float(0xc20a09ea), SkBits2Float(0x42150d54), SkBits2Float(0xc23c1ae1)); 3592 path.lineTo(SkBits2Float(0x424e304d), SkBits2Float(0xc2821b20)); 3593 path.close(); 3594 3595 SkPath path2(path); 3596 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3597 } 3598 // op end success 1 3599 3600 static void battleOp134(skiatest::Reporter* reporter, const char* filename) { 3601 SkPath path; 3602 path.setFillType((SkPath::FillType) 0); 3603 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3604 path.cubicTo(SkBits2Float(0x419c5b1f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4219d929), SkBits2Float(0xc29834b3), SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c)); 3605 path.lineTo(SkBits2Float(0x421a77f2), SkBits2Float(0xc237aede)); 3606 path.cubicTo(SkBits2Float(0x41de6e66), SkBits2Float(0xc25c0e82), SkBits2Float(0x41620e8a), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 3607 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3608 path.close(); 3609 3610 SkPath path1(path); 3611 path.reset(); 3612 path.setFillType((SkPath::FillType) 0); 3613 path.moveTo(SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c)); 3614 path.cubicTo(SkBits2Float(0x425b9ab5), SkBits2Float(0xc2791d33), SkBits2Float(0x426159ea), SkBits2Float(0xc273ed7b), SkBits2Float(0x4266e960), SkBits2Float(0xc26e8b92)); 3615 path.lineTo(SkBits2Float(0x4226ec90), SkBits2Float(0xc22c713c)); 3616 path.cubicTo(SkBits2Float(0x4222e78d), SkBits2Float(0xc2305550), SkBits2Float(0x421ec008), SkBits2Float(0xc234151d), SkBits2Float(0x421a77f3), SkBits2Float(0xc237aedd)); 3617 path.lineTo(SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c)); 3618 path.close(); 3619 3620 SkPath path2(path); 3621 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3622 } 3623 // op end success 1 3624 3625 static void battleOp135(skiatest::Reporter* reporter, const char* filename) { 3626 SkPath path; 3627 path.setFillType((SkPath::FillType) 1); 3628 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 3629 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3630 path.cubicTo(SkBits2Float(0x419c5b1f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4219d929), SkBits2Float(0xc29834b3), SkBits2Float(0x4255ae76), SkBits2Float(0xc27e184c)); 3631 path.cubicTo(SkBits2Float(0x425b9ab5), SkBits2Float(0xc2791d33), SkBits2Float(0x426159ea), SkBits2Float(0xc273ed7b), SkBits2Float(0x4266e960), SkBits2Float(0xc26e8b92)); 3632 path.lineTo(SkBits2Float(0x4226ec90), SkBits2Float(0xc22c713c)); 3633 path.cubicTo(SkBits2Float(0x4222e78d), SkBits2Float(0xc2305550), SkBits2Float(0x421ec008), SkBits2Float(0xc234151d), SkBits2Float(0x421a77f2), SkBits2Float(0xc237aede)); 3634 path.cubicTo(SkBits2Float(0x41de6e66), SkBits2Float(0xc25c0e82), SkBits2Float(0x41620e8a), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 3635 path.close(); 3636 3637 SkPath path1(path); 3638 path.reset(); 3639 path.setFillType((SkPath::FillType) 0); 3640 path.moveTo(SkBits2Float(0x4266e961), SkBits2Float(0xc26e8b93)); 3641 path.cubicTo(SkBits2Float(0x42a1bfce), SkBits2Float(0xc214ebcf), SkBits2Float(0x42b1ee5a), SkBits2Float(0xc05d1412), SkBits2Float(0x429cf75a), SkBits2Float(0x41d80f2c)); 3642 path.lineTo(SkBits2Float(0x4262f06b), SkBits2Float(0x419c2ffb)); 3643 path.cubicTo(SkBits2Float(0x42809ff9), SkBits2Float(0xc01fd0e5), SkBits2Float(0x4269dab8), SkBits2Float(0xc1d74ec6), SkBits2Float(0x4226ec91), SkBits2Float(0xc22c713d)); 3644 path.lineTo(SkBits2Float(0x4266e961), SkBits2Float(0xc26e8b93)); 3645 path.close(); 3646 3647 SkPath path2(path); 3648 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3649 } 3650 // op end success 1 3651 3652 static void battleOp136(skiatest::Reporter* reporter, const char* filename) { 3653 SkPath path; 3654 path.setFillType((SkPath::FillType) 0); 3655 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3656 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b67), SkBits2Float(0xc26ce46c)); 3657 path.lineTo(SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58)); 3658 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 3659 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3660 path.close(); 3661 3662 SkPath path1(path); 3663 path.reset(); 3664 path.setFillType((SkPath::FillType) 0); 3665 path.moveTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d)); 3666 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2)); 3667 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e)); 3668 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282652), SkBits2Float(0xc22b3f58)); 3669 path.lineTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d)); 3670 path.close(); 3671 3672 SkPath path2(path); 3673 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3674 } 3675 // op end success 1 3676 3677 static void battleOp137(skiatest::Reporter* reporter, const char* filename) { 3678 SkPath path; 3679 path.setFillType((SkPath::FillType) 1); 3680 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3681 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3682 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d)); 3683 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2)); 3684 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e)); 3685 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58)); 3686 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3687 path.close(); 3688 3689 SkPath path1(path); 3690 path.reset(); 3691 path.setFillType((SkPath::FillType) 0); 3692 path.moveTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2)); 3693 path.cubicTo(SkBits2Float(0x42ac7185), SkBits2Float(0xc1db2f83), SkBits2Float(0x42b35ed0), SkBits2Float(0x413e447a), SkBits2Float(0x428e4a3d), SkBits2Float(0x422afde8)); 3694 path.lineTo(SkBits2Float(0x424db871), SkBits2Float(0x41f73799)); 3695 path.cubicTo(SkBits2Float(0x4281aa54), SkBits2Float(0x41098afa), SkBits2Float(0x427950da), SkBits2Float(0xc19e728d), SkBits2Float(0x4234ec66), SkBits2Float(0xc21db120)); 3696 path.lineTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2)); 3697 path.close(); 3698 3699 SkPath path2(path); 3700 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3701 } 3702 // op end success 1 3703 3704 static void battleOp138(skiatest::Reporter* reporter, const char* filename) { 3705 SkPath path; 3706 path.setFillType((SkPath::FillType) 0); 3707 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3708 path.cubicTo(SkBits2Float(0x41c2602d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423d7ece), SkBits2Float(0xc290b51a), SkBits2Float(0x427c92bc), SkBits2Float(0xc2577a5f)); 3709 path.lineTo(SkBits2Float(0x42369543), SkBits2Float(0xc21bc469)); 3710 path.cubicTo(SkBits2Float(0x4208fc10), SkBits2Float(0xc2513731), SkBits2Float(0x418c8338), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 3711 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3712 path.close(); 3713 3714 SkPath path1(path); 3715 path.reset(); 3716 path.setFillType((SkPath::FillType) 0); 3717 path.moveTo(SkBits2Float(0x427c92be), SkBits2Float(0xc2577a5f)); 3718 path.cubicTo(SkBits2Float(0x42816448), SkBits2Float(0xc25032db), SkBits2Float(0x42845689), SkBits2Float(0xc248a77c), SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa)); 3719 path.lineTo(SkBits2Float(0x424359af), SkBits2Float(0xc20b6bce)); 3720 path.cubicTo(SkBits2Float(0x423f5505), SkBits2Float(0xc2110d1f), SkBits2Float(0x423b1287), SkBits2Float(0xc216814b), SkBits2Float(0x42369543), SkBits2Float(0xc21bc46a)); 3721 path.lineTo(SkBits2Float(0x427c92be), SkBits2Float(0xc2577a5f)); 3722 path.close(); 3723 3724 SkPath path2(path); 3725 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3726 } 3727 // op end success 1 3728 3729 static void battleOp139(skiatest::Reporter* reporter, const char* filename) { 3730 SkPath path; 3731 path.setFillType((SkPath::FillType) 1); 3732 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3733 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3734 path.cubicTo(SkBits2Float(0x41c2602d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423d7ece), SkBits2Float(0xc290b51a), SkBits2Float(0x427c92bc), SkBits2Float(0xc2577a5f)); 3735 path.lineTo(SkBits2Float(0x427c92be), SkBits2Float(0xc2577a5f)); 3736 path.cubicTo(SkBits2Float(0x42816448), SkBits2Float(0xc25032db), SkBits2Float(0x42845689), SkBits2Float(0xc248a77c), SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa)); 3737 path.lineTo(SkBits2Float(0x424359af), SkBits2Float(0xc20b6bce)); 3738 path.cubicTo(SkBits2Float(0x423f5505), SkBits2Float(0xc2110d1f), SkBits2Float(0x423b1287), SkBits2Float(0xc216814a), SkBits2Float(0x42369543), SkBits2Float(0xc21bc469)); 3739 path.lineTo(SkBits2Float(0x42369543), SkBits2Float(0xc21bc46a)); 3740 path.cubicTo(SkBits2Float(0x4208fc10), SkBits2Float(0xc2513732), SkBits2Float(0x418c8337), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3741 path.close(); 3742 3743 SkPath path1(path); 3744 path.reset(); 3745 path.setFillType((SkPath::FillType) 0); 3746 path.moveTo(SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa)); 3747 path.cubicTo(SkBits2Float(0x42b615a2), SkBits2Float(0xc174ff4e), SkBits2Float(0x42aecf41), SkBits2Float(0x41edcc49), SkBits2Float(0x426bc7a7), SkBits2Float(0x4269bc09)); 3748 path.lineTo(SkBits2Float(0x422a717e), SkBits2Float(0x4228f6f7)); 3749 path.cubicTo(SkBits2Float(0x427cbca0), SkBits2Float(0x41abe6f4), SkBits2Float(0x4283a09b), SkBits2Float(0xc1311b44), SkBits2Float(0x424359af), SkBits2Float(0xc20b6bcd)); 3750 path.lineTo(SkBits2Float(0x42871e08), SkBits2Float(0xc240ddaa)); 3751 path.close(); 3752 3753 SkPath path2(path); 3754 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3755 } 3756 // op end success 1 3757 3758 static void battleOp140(skiatest::Reporter* reporter, const char* filename) { 3759 SkPath path; 3760 path.setFillType((SkPath::FillType) 0); 3761 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3762 path.cubicTo(SkBits2Float(0x41d9e52a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4252f644), SkBits2Float(0xc28b460f), SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b)); 3763 path.lineTo(SkBits2Float(0x42455485), SkBits2Float(0xc2089ac5)); 3764 path.cubicTo(SkBits2Float(0x421880ae), SkBits2Float(0xc2495c0a), SkBits2Float(0x419d83bb), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 3765 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3766 path.close(); 3767 3768 SkPath path1(path); 3769 path.reset(); 3770 path.setFillType((SkPath::FillType) 0); 3771 path.moveTo(SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b)); 3772 path.cubicTo(SkBits2Float(0x428b8706), SkBits2Float(0xc2342f4a), SkBits2Float(0x428e5ab7), SkBits2Float(0xc22b1c84), SkBits2Float(0x4290f525), SkBits2Float(0xc221c800)); 3773 path.lineTo(SkBits2Float(0x425193c7), SkBits2Float(0xc1e9e68d)); 3774 path.cubicTo(SkBits2Float(0x424dd044), SkBits2Float(0xc1f763d3), SkBits2Float(0x4249b9f6), SkBits2Float(0xc2024108), SkBits2Float(0x42455485), SkBits2Float(0xc2089ac6)); 3775 path.lineTo(SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b)); 3776 path.close(); 3777 3778 SkPath path2(path); 3779 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3780 } 3781 // op end success 1 3782 3783 static void battleOp141(skiatest::Reporter* reporter, const char* filename) { 3784 SkPath path; 3785 path.setFillType((SkPath::FillType) 1); 3786 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3787 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3788 path.cubicTo(SkBits2Float(0x41d9e52a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4252f644), SkBits2Float(0xc28b460f), SkBits2Float(0x42887c98), SkBits2Float(0xc23cf83b)); 3789 path.cubicTo(SkBits2Float(0x428b8706), SkBits2Float(0xc2342f4a), SkBits2Float(0x428e5ab7), SkBits2Float(0xc22b1c84), SkBits2Float(0x4290f525), SkBits2Float(0xc221c800)); 3790 path.lineTo(SkBits2Float(0x425193c7), SkBits2Float(0xc1e9e68d)); 3791 path.cubicTo(SkBits2Float(0x424dd044), SkBits2Float(0xc1f763d3), SkBits2Float(0x4249b9f6), SkBits2Float(0xc2024107), SkBits2Float(0x42455485), SkBits2Float(0xc2089ac5)); 3792 path.lineTo(SkBits2Float(0x42455485), SkBits2Float(0xc2089ac6)); 3793 path.cubicTo(SkBits2Float(0x421880ae), SkBits2Float(0xc2495c0b), SkBits2Float(0x419d83ba), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3794 path.close(); 3795 3796 SkPath path1(path); 3797 path.reset(); 3798 path.setFillType((SkPath::FillType) 0); 3799 path.moveTo(SkBits2Float(0x4290f526), SkBits2Float(0xc221c800)); 3800 path.cubicTo(SkBits2Float(0x42bd6cdd), SkBits2Float(0xbf1a1474), SkBits2Float(0x42a13baa), SkBits2Float(0x4246de93), SkBits2Float(0x4223add7), SkBits2Float(0x42906c8a)); 3801 path.lineTo(SkBits2Float(0x41eca4f8), SkBits2Float(0x4250ce48)); 3802 path.cubicTo(SkBits2Float(0x42691bac), SkBits2Float(0x420fc2d7), SkBits2Float(0x4288ef16), SkBits2Float(0xbedec420), SkBits2Float(0x425193c9), SkBits2Float(0xc1e9e690)); 3803 path.lineTo(SkBits2Float(0x4290f526), SkBits2Float(0xc221c800)); 3804 path.close(); 3805 3806 SkPath path2(path); 3807 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3808 } 3809 // op end success 1 3810 3811 static void battleOp142(skiatest::Reporter* reporter, const char* filename) { 3812 SkPath path; 3813 path.setFillType((SkPath::FillType) 0); 3814 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3815 path.cubicTo(SkBits2Float(0x41f6a97d), SkBits2Float(0xc2a60000), SkBits2Float(0x426c7f9e), SkBits2Float(0xc283d12f), SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5)); 3816 path.lineTo(SkBits2Float(0x42547147), SkBits2Float(0xc1df5274)); 3817 path.cubicTo(SkBits2Float(0x422af677), SkBits2Float(0xc23e9438), SkBits2Float(0x41b24f58), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 3818 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3819 path.close(); 3820 3821 SkPath path1(path); 3822 path.reset(); 3823 path.setFillType((SkPath::FillType) 0); 3824 path.moveTo(SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5)); 3825 path.cubicTo(SkBits2Float(0x4295bcf6), SkBits2Float(0xc20fd099), SkBits2Float(0x42983ed1), SkBits2Float(0xc204de6d), SkBits2Float(0x429a7333), SkBits2Float(0xc1f3598c)); 3826 path.lineTo(SkBits2Float(0x425f4d1c), SkBits2Float(0xc1afea60)); 3827 path.cubicTo(SkBits2Float(0x425c1d22), SkBits2Float(0xc1c0197b), SkBits2Float(0x42587d28), SkBits2Float(0xc1cfecd2), SkBits2Float(0x42547148), SkBits2Float(0xc1df5275)); 3828 path.lineTo(SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5)); 3829 path.close(); 3830 3831 SkPath path2(path); 3832 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3833 } 3834 // op end success 1 3835 3836 static void battleOp143(skiatest::Reporter* reporter, const char* filename) { 3837 SkPath path; 3838 path.setFillType((SkPath::FillType) 1); 3839 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3840 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3841 path.cubicTo(SkBits2Float(0x41f6a97d), SkBits2Float(0xc2a60000), SkBits2Float(0x426c7f9e), SkBits2Float(0xc283d12f), SkBits2Float(0x4292f07c), SkBits2Float(0xc21a76e5)); 3842 path.cubicTo(SkBits2Float(0x4295bcf6), SkBits2Float(0xc20fd099), SkBits2Float(0x42983ed1), SkBits2Float(0xc204de6d), SkBits2Float(0x429a7333), SkBits2Float(0xc1f3598c)); 3843 path.lineTo(SkBits2Float(0x425f4d1c), SkBits2Float(0xc1afea60)); 3844 path.cubicTo(SkBits2Float(0x425c1d22), SkBits2Float(0xc1c0197b), SkBits2Float(0x42587d28), SkBits2Float(0xc1cfecd2), SkBits2Float(0x42547147), SkBits2Float(0xc1df5274)); 3845 path.cubicTo(SkBits2Float(0x422af677), SkBits2Float(0xc23e9438), SkBits2Float(0x41b24f58), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3846 path.close(); 3847 3848 SkPath path1(path); 3849 path.reset(); 3850 path.setFillType((SkPath::FillType) 0); 3851 path.moveTo(SkBits2Float(0x429a7334), SkBits2Float(0xc1f3598d)); 3852 path.cubicTo(SkBits2Float(0x42ac9a56), SkBits2Float(0xc0ec08d5), SkBits2Float(0x42a93a4b), SkBits2Float(0x4194209c), SkBits2Float(0x42913f11), SkBits2Float(0x4220bdeb)); 3853 path.cubicTo(SkBits2Float(0x427287b0), SkBits2Float(0x42776b87), SkBits2Float(0x421e5dc6), SkBits2Float(0x429a1372), SkBits2Float(0x4173f4a4), SkBits2Float(0x42a32ccd)); 3854 path.lineTo(SkBits2Float(0x41305a7f), SkBits2Float(0x426bea6b)); 3855 path.cubicTo(SkBits2Float(0x41e4f69e), SkBits2Float(0x425ec2af), SkBits2Float(0x422f52ad), SkBits2Float(0x4232db9e), SkBits2Float(0x4251feaa), SkBits2Float(0x41e865df)); 3856 path.cubicTo(SkBits2Float(0x4274aaa7), SkBits2Float(0x41562902), SkBits2Float(0x42798bdd), SkBits2Float(0xc0aaa09a), SkBits2Float(0x425f4d1d), SkBits2Float(0xc1afea60)); 3857 path.lineTo(SkBits2Float(0x429a7334), SkBits2Float(0xc1f3598d)); 3858 path.close(); 3859 3860 SkPath path2(path); 3861 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3862 } 3863 // op end success 1 3864 3865 static void battleOp144(skiatest::Reporter* reporter, const char* filename) { 3866 SkPath path; 3867 path.setFillType((SkPath::FillType) 0); 3868 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3869 path.cubicTo(SkBits2Float(0x42079c39), SkBits2Float(0xc2a60000), SkBits2Float(0x4280cb64), SkBits2Float(0xc279860f), SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758df)); 3870 path.lineTo(SkBits2Float(0x425eba08), SkBits2Float(0xc1b2ce1f)); 3871 path.cubicTo(SkBits2Float(0x423a357b), SkBits2Float(0xc23460ea), SkBits2Float(0x41c41023), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 3872 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3873 path.close(); 3874 3875 SkPath path1(path); 3876 path.reset(); 3877 path.setFillType((SkPath::FillType) 0); 3878 path.moveTo(SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758de)); 3879 path.cubicTo(SkBits2Float(0x429c811b), SkBits2Float(0xc1deea6e), SkBits2Float(0x429e9731), SkBits2Float(0xc1c5ec3a), SkBits2Float(0x42a04ce7), SkBits2Float(0xc1ac8024)); 3880 path.lineTo(SkBits2Float(0x4267c277), SkBits2Float(0xc17965fc)); 3881 path.cubicTo(SkBits2Float(0x426549a1), SkBits2Float(0xc18f13a3), SkBits2Float(0x42624575), SkBits2Float(0xc1a124d8), SkBits2Float(0x425eba09), SkBits2Float(0xc1b2ce1e)); 3882 path.lineTo(SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758de)); 3883 path.close(); 3884 3885 SkPath path2(path); 3886 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3887 } 3888 // op end success 1 3889 3890 static void battleOp145(skiatest::Reporter* reporter, const char* filename) { 3891 SkPath path; 3892 path.setFillType((SkPath::FillType) 1); 3893 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3894 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3895 path.cubicTo(SkBits2Float(0x42079c39), SkBits2Float(0xc2a60000), SkBits2Float(0x4280cb64), SkBits2Float(0xc279860f), SkBits2Float(0x429a0d79), SkBits2Float(0xc1f758df)); 3896 path.lineTo(SkBits2Float(0x42a04ce7), SkBits2Float(0xc1ac8024)); 3897 path.lineTo(SkBits2Float(0x4267c277), SkBits2Float(0xc17965fc)); 3898 path.cubicTo(SkBits2Float(0x426549a1), SkBits2Float(0xc18f13a3), SkBits2Float(0x42624575), SkBits2Float(0xc1a124d8), SkBits2Float(0x425eba09), SkBits2Float(0xc1b2ce1e)); 3899 path.lineTo(SkBits2Float(0x425eba08), SkBits2Float(0xc1b2ce1f)); 3900 path.cubicTo(SkBits2Float(0x423a357b), SkBits2Float(0xc23460ea), SkBits2Float(0x41c41023), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3901 path.close(); 3902 3903 SkPath path1(path); 3904 path.reset(); 3905 path.setFillType((SkPath::FillType) 0); 3906 path.moveTo(SkBits2Float(0x42a04ce8), SkBits2Float(0xc1ac8024)); 3907 path.cubicTo(SkBits2Float(0x42ae6ca1), SkBits2Float(0x4095ff41), SkBits2Float(0x42a1f1fa), SkBits2Float(0x4202ed54), SkBits2Float(0x427dc9de), SkBits2Float(0x42560b98)); 3908 path.cubicTo(SkBits2Float(0x4237afc7), SkBits2Float(0x429494ee), SkBits2Float(0x419aa752), SkBits2Float(0x42aa57e8), SkBits2Float(0xc0f777b3), SkBits2Float(0x42a54724)); 3909 path.lineTo(SkBits2Float(0xc0b2e472), SkBits2Float(0x426ef4bb)); 3910 path.cubicTo(SkBits2Float(0x415f9870), SkBits2Float(0x42764794), SkBits2Float(0x4204c916), SkBits2Float(0x4256d126), SkBits2Float(0x4237762a), SkBits2Float(0x421abb46)); 3911 path.cubicTo(SkBits2Float(0x426a233f), SkBits2Float(0x41bd4acb), SkBits2Float(0x427c2e04), SkBits2Float(0x4058dcfe), SkBits2Float(0x4267c279), SkBits2Float(0xc17965fc)); 3912 path.lineTo(SkBits2Float(0x42a04ce8), SkBits2Float(0xc1ac8024)); 3913 path.close(); 3914 3915 SkPath path2(path); 3916 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3917 } 3918 // op end success 1 3919 3920 static void battleOp146(skiatest::Reporter* reporter, const char* filename) { 3921 SkPath path; 3922 path.setFillType((SkPath::FillType) 0); 3923 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3924 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a5ffff), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d7), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986)); 3925 path.lineTo(SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f)); 3926 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 3927 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3928 path.close(); 3929 3930 SkPath path1(path); 3931 path.reset(); 3932 path.setFillType((SkPath::FillType) 0); 3933 path.moveTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988)); 3934 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b837), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594e), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba)); 3935 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0)); 3936 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f)); 3937 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988)); 3938 path.close(); 3939 3940 SkPath path2(path); 3941 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3942 } 3943 // op end success 1 3944 3945 static void battleOp147(skiatest::Reporter* reporter, const char* filename) { 3946 SkPath path; 3947 path.setFillType((SkPath::FillType) 1); 3948 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3949 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 3950 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a60000), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d8), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988)); 3951 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986)); 3952 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b836), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594d), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba)); 3953 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0)); 3954 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f)); 3955 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 3956 path.close(); 3957 3958 SkPath path1(path); 3959 path.reset(); 3960 path.setFillType((SkPath::FillType) 0); 3961 path.moveTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb)); 3962 path.cubicTo(SkBits2Float(0x42ace9b0), SkBits2Float(0x4189ae79), SkBits2Float(0x429590d6), SkBits2Float(0x423ab1c1), SkBits2Float(0x424df762), SkBits2Float(0x428231a6)); 3963 path.cubicTo(SkBits2Float(0x41e19a31), SkBits2Float(0x42a70a69), SkBits2Float(0xc04a3289), SkBits2Float(0x42b03133), SkBits2Float(0xc1f5f36e), SkBits2Float(0x429a3139)); 3964 path.lineTo(SkBits2Float(0xc1b1cbb9), SkBits2Float(0x425eedb9)); 3965 path.cubicTo(SkBits2Float(0xc0122aac), SkBits2Float(0x427ebc5a), SkBits2Float(0x41a31606), SkBits2Float(0x42718130), SkBits2Float(0x4214e430), SkBits2Float(0x423c3b73)); 3966 path.cubicTo(SkBits2Float(0x42583d5c), SkBits2Float(0x4206f5b6), SkBits2Float(0x4279fe97), SkBits2Float(0x41470ec8), SkBits2Float(0x426d6866), SkBits2Float(0xc10cb6eb)); 3967 path.lineTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb)); 3968 path.close(); 3969 3970 SkPath path2(path); 3971 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 3972 } 3973 // op end success 1 3974 3975 static void battleOp148(skiatest::Reporter* reporter, const char* filename) { 3976 if (!FLAGS_runFail) { 3977 return; 3978 } 3979 SkPath path; 3980 path.setFillType((SkPath::FillType) 0); 3981 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3982 path.cubicTo(SkBits2Float(0x42216831), SkBits2Float(0xc2a60000), SkBits2Float(0x4295b6bc), SkBits2Float(0xc257ea44), SkBits2Float(0x42a38b53), SkBits2Float(0xc1639572)); 3983 path.lineTo(SkBits2Float(0x426c7311), SkBits2Float(0xc12484b9)); 3984 path.cubicTo(SkBits2Float(0x42587424), SkBits2Float(0xc21c154e), SkBits2Float(0x41e95c08), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 3985 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 3986 path.close(); 3987 3988 SkPath path1(path); 3989 path.reset(); 3990 path.setFillType((SkPath::FillType) 0); 3991 path.moveTo(SkBits2Float(0x42a38b52), SkBits2Float(0xc1639578)); 3992 path.cubicTo(SkBits2Float(0x42a4def8), SkBits2Float(0xc1269090), SkBits2Float(0x42a5a99a), SkBits2Float(0xc0d1c16f), SkBits2Float(0x42a5e9be), SkBits2Float(0xc02be63c)); 3993 path.lineTo(SkBits2Float(0x426fdfd2), SkBits2Float(0xbff8877d)); 3994 path.cubicTo(SkBits2Float(0x426f8319), SkBits2Float(0xc097a16e), SkBits2Float(0x426e5e22), SkBits2Float(0xc0f0d105), SkBits2Float(0x426c7311), SkBits2Float(0xc12484ba)); 3995 path.lineTo(SkBits2Float(0x42a38b52), SkBits2Float(0xc1639578)); 3996 path.close(); 3997 3998 SkPath path2(path); 3999 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4000 } 4001 // op end success 1 4002 4003 static void battleOp149(skiatest::Reporter* reporter, const char* filename) { 4004 SkPath path; 4005 path.setFillType((SkPath::FillType) 1); 4006 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4007 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4008 path.cubicTo(SkBits2Float(0x42216831), SkBits2Float(0xc2a60000), SkBits2Float(0x4295b6bc), SkBits2Float(0xc257ea44), SkBits2Float(0x42a38b52), SkBits2Float(0xc1639578)); 4009 path.lineTo(SkBits2Float(0x426c7311), SkBits2Float(0xc12484ba)); 4010 path.cubicTo(SkBits2Float(0x42587424), SkBits2Float(0xc21c154e), SkBits2Float(0x41e95c08), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4011 path.close(); 4012 4013 SkPath path1(path); 4014 path.reset(); 4015 path.setFillType((SkPath::FillType) 0); 4016 path.moveTo(SkBits2Float(0x42a5e9be), SkBits2Float(0xc02be63f)); 4017 path.cubicTo(SkBits2Float(0x42a7ff8e), SkBits2Float(0x41ec1faa), SkBits2Float(0x42849fff), SkBits2Float(0x426da4e1), SkBits2Float(0x4216595b), SkBits2Float(0x429400af)); 4018 path.cubicTo(SkBits2Float(0x410dcade), SkBits2Float(0x42b12eec), SkBits2Float(0xc1cdb135), SkBits2Float(0x42aa7b1c), SkBits2Float(0xc24c6646), SkBits2Float(0x4282cf52)); 4019 path.lineTo(SkBits2Float(0xc213c238), SkBits2Float(0x423d1f66)); 4020 path.cubicTo(SkBits2Float(0xc194b176), SkBits2Float(0x42767a79), SkBits2Float(0x40cd0045), SkBits2Float(0x42801597), SkBits2Float(0x41d95f44), SkBits2Float(0x4255fad4)); 4021 path.cubicTo(SkBits2Float(0x423fbf3c), SkBits2Float(0x422bca7a), SkBits2Float(0x4272e39a), SkBits2Float(0x41aab11f), SkBits2Float(0x426fdfd3), SkBits2Float(0xbff88758)); 4022 path.lineTo(SkBits2Float(0x42a5e9be), SkBits2Float(0xc02be63f)); 4023 path.close(); 4024 4025 SkPath path2(path); 4026 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4027 } 4028 // op end success 1 4029 4030 static void battleOp150(skiatest::Reporter* reporter, const char* filename) { 4031 SkPath path; 4032 path.setFillType((SkPath::FillType) 0); 4033 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4034 path.cubicTo(SkBits2Float(0x422dab0f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429efeec), SkBits2Float(0xc2462810), SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d837)); 4035 path.lineTo(SkBits2Float(0x426f51d5), SkBits2Float(0xc0907750)); 4036 path.cubicTo(SkBits2Float(0x4265df9a), SkBits2Float(0xc20f3ee4), SkBits2Float(0x41fb162c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3637fea5), SkBits2Float(0xc26fffff)); 4037 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4038 path.close(); 4039 4040 SkPath path1(path); 4041 path.reset(); 4042 path.setFillType((SkPath::FillType) 0); 4043 path.moveTo(SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d840)); 4044 path.cubicTo(SkBits2Float(0x42a626ff), SkBits2Float(0xc0078454), SkBits2Float(0x42a62824), SkBits2Float(0x4001c6d5), SkBits2Float(0x42a58af5), SkBits2Float(0x40c4fc3c)); 4045 path.lineTo(SkBits2Float(0x426f56ca), SkBits2Float(0x408e6626)); 4046 path.cubicTo(SkBits2Float(0x42703a0b), SkBits2Float(0x3fbba106), SkBits2Float(0x42703864), SkBits2Float(0xbfc3ed93), SkBits2Float(0x426f51d4), SkBits2Float(0xc090774f)); 4047 path.lineTo(SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d840)); 4048 path.close(); 4049 4050 SkPath path2(path); 4051 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4052 } 4053 // op end success 1 4054 4055 static void battleOp151(skiatest::Reporter* reporter, const char* filename) { 4056 SkPath path; 4057 path.setFillType((SkPath::FillType) 1); 4058 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc26fffff)); 4059 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4060 path.cubicTo(SkBits2Float(0x422dab0f), SkBits2Float(0xc2a60000), SkBits2Float(0x429efeec), SkBits2Float(0xc2462811), SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d840)); 4061 path.lineTo(SkBits2Float(0x42a58789), SkBits2Float(0xc0c7d837)); 4062 path.cubicTo(SkBits2Float(0x42a626ff), SkBits2Float(0xc0078448), SkBits2Float(0x42a62824), SkBits2Float(0x4001c6db), SkBits2Float(0x42a58af5), SkBits2Float(0x40c4fc3c)); 4063 path.lineTo(SkBits2Float(0x426f56ca), SkBits2Float(0x408e6626)); 4064 path.cubicTo(SkBits2Float(0x42703a0b), SkBits2Float(0x3fbba106), SkBits2Float(0x42703864), SkBits2Float(0xbfc3ed93), SkBits2Float(0x426f51d4), SkBits2Float(0xc090774f)); 4065 path.lineTo(SkBits2Float(0x426f51d5), SkBits2Float(0xc0907750)); 4066 path.cubicTo(SkBits2Float(0x4265df9a), SkBits2Float(0xc20f3ee4), SkBits2Float(0x41fb162c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3637fea5), SkBits2Float(0xc26fffff)); 4067 path.close(); 4068 4069 SkPath path1(path); 4070 path.reset(); 4071 path.setFillType((SkPath::FillType) 0); 4072 path.moveTo(SkBits2Float(0x42a58af6), SkBits2Float(0x40c4fc3d)); 4073 path.cubicTo(SkBits2Float(0x42a06986), SkBits2Float(0x422298c3), SkBits2Float(0x42621341), SkBits2Float(0x428bdf10), SkBits2Float(0x41ba9762), SkBits2Float(0x429f4f99)); 4074 path.cubicTo(SkBits2Float(0xc11def80), SkBits2Float(0x42b2c022), SkBits2Float(0xc236745f), SkBits2Float(0x429afb1c), SkBits2Float(0xc284c1e2), SkBits2Float(0x4247504a)); 4075 path.lineTo(SkBits2Float(0xc23ff038), SkBits2Float(0x42101509)); 4076 path.cubicTo(SkBits2Float(0xc203e517), SkBits2Float(0x4260119e), SkBits2Float(0xc0e45731), SkBits2Float(0x428137a0), SkBits2Float(0x4186e2a5), SkBits2Float(0x42665443)); 4077 path.cubicTo(SkBits2Float(0x42236d8c), SkBits2Float(0x424a3945), SkBits2Float(0x4267ebda), SkBits2Float(0x41eb1462), SkBits2Float(0x426f56cb), SkBits2Float(0x408e661a)); 4078 path.lineTo(SkBits2Float(0x42a58af6), SkBits2Float(0x40c4fc3d)); 4079 path.close(); 4080 4081 SkPath path2(path); 4082 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4083 } 4084 // op end success 1 4085 4086 static void battleOp152(skiatest::Reporter* reporter, const char* filename) { 4087 if (!FLAGS_runFail) { 4088 return; // draws wrong 4089 } 4090 SkPath path; 4091 path.setFillType((SkPath::FillType) 0); 4092 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4093 path.cubicTo(SkBits2Float(0x41b12ed4), SkBits2Float(0xc2a60000), SkBits2Float(0x422d822c), SkBits2Float(0xc2944bde), SkBits2Float(0x426bdb91), SkBits2Float(0xc269a7f3)); 4094 path.cubicTo(SkBits2Float(0x42951a7b), SkBits2Float(0xc22ab829), SkBits2Float(0x42a66879), SkBits2Float(0xc1aaf2b1), SkBits2Float(0x42a5fe21), SkBits2Float(0x3f4744a4)); 4095 path.lineTo(SkBits2Float(0x426ffd4c), SkBits2Float(0x3f100c99)); 4096 path.cubicTo(SkBits2Float(0x4270970c), SkBits2Float(0xc177275d), SkBits2Float(0x4257923d), SkBits2Float(0xc1f6d2bd), SkBits2Float(0x422a7fe2), SkBits2Float(0xc228e872)); 4097 path.cubicTo(SkBits2Float(0x41fadb0b), SkBits2Float(0xc2566785), SkBits2Float(0x41801584), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 4098 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4099 path.close(); 4100 4101 SkPath path1(path); 4102 path.reset(); 4103 path.setFillType((SkPath::FillType) 0); 4104 path.moveTo(SkBits2Float(0x42a5fe22), SkBits2Float(0x3f4744a1)); 4105 path.cubicTo(SkBits2Float(0x42a5e921), SkBits2Float(0x40a4df91), SkBits2Float(0x42a52322), SkBits2Float(0x411841f7), SkBits2Float(0x42a3adfe), SkBits2Float(0x415d43d0)); 4106 path.lineTo(SkBits2Float(0x426ca531), SkBits2Float(0x411ff355)); 4107 path.cubicTo(SkBits2Float(0x426ec0ad), SkBits2Float(0x40dc21ae), SkBits2Float(0x426fdeef), SkBits2Float(0x406e5efe), SkBits2Float(0x426ffd4d), SkBits2Float(0x3f100c9b)); 4108 path.lineTo(SkBits2Float(0x42a5fe22), SkBits2Float(0x3f4744a1)); 4109 path.close(); 4110 4111 SkPath path2(path); 4112 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4113 } 4114 // op end success 1 4115 4116 static void battleOp153(skiatest::Reporter* reporter, const char* filename) { 4117 SkPath path; 4118 path.setFillType((SkPath::FillType) 1); 4119 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4120 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4121 path.cubicTo(SkBits2Float(0x41b12ed4), SkBits2Float(0xc2a60000), SkBits2Float(0x422d822c), SkBits2Float(0xc2944bde), SkBits2Float(0x426bdb91), SkBits2Float(0xc269a7f3)); 4122 path.cubicTo(SkBits2Float(0x42951a7b), SkBits2Float(0xc22ab829), SkBits2Float(0x42a66879), SkBits2Float(0xc1aaf2b1), SkBits2Float(0x42a5fe21), SkBits2Float(0x3f4744a0)); 4123 path.lineTo(SkBits2Float(0x426ffd4c), SkBits2Float(0x3f100c99)); 4124 path.cubicTo(SkBits2Float(0x4270970c), SkBits2Float(0xc177275d), SkBits2Float(0x4257923d), SkBits2Float(0xc1f6d2bd), SkBits2Float(0x422a7fe2), SkBits2Float(0xc228e872)); 4125 path.cubicTo(SkBits2Float(0x41fadb0b), SkBits2Float(0xc2566785), SkBits2Float(0x41801584), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4126 path.close(); 4127 4128 SkPath path1(path); 4129 path.reset(); 4130 path.setFillType((SkPath::FillType) 0); 4131 path.moveTo(SkBits2Float(0x42a3adfe), SkBits2Float(0x415d43d0)); 4132 path.cubicTo(SkBits2Float(0x42977493), SkBits2Float(0x42480062), SkBits2Float(0x423a617c), SkBits2Float(0x429bbd03), SkBits2Float(0x4123044a), SkBits2Float(0x42a4be9a)); 4133 path.cubicTo(SkBits2Float(0xc1d1beaf), SkBits2Float(0x42adc030), SkBits2Float(0xc2750d30), SkBits2Float(0x4285e3a3), SkBits2Float(0xc2980208), SkBits2Float(0x42056911)); 4134 path.lineTo(SkBits2Float(0xc25bc541), SkBits2Float(0x41c0e1ed)); 4135 path.cubicTo(SkBits2Float(0xc231254e), SkBits2Float(0x42419328), SkBits2Float(0xc1979f72), SkBits2Float(0x427b34be), SkBits2Float(0x40ebafde), SkBits2Float(0x426e2f5c)); 4136 path.cubicTo(SkBits2Float(0x4206bbb1), SkBits2Float(0x426129fa), SkBits2Float(0x425af8c2), SkBits2Float(0x42109457), SkBits2Float(0x426ca533), SkBits2Float(0x411ff35b)); 4137 path.lineTo(SkBits2Float(0x42a3adfe), SkBits2Float(0x415d43d0)); 4138 path.close(); 4139 4140 SkPath path2(path); 4141 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4142 } 4143 // op end success 1 4144 4145 static void battleOp154(skiatest::Reporter* reporter, const char* filename) { 4146 SkPath path; 4147 path.setFillType((SkPath::FillType) 0); 4148 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4149 path.cubicTo(SkBits2Float(0x41bb5603), SkBits2Float(0xc2a60000), SkBits2Float(0x4236fa4e), SkBits2Float(0xc2923760), SkBits2Float(0x4275e892), SkBits2Float(0xc25f0dc8)); 4150 path.cubicTo(SkBits2Float(0x429a6b6b), SkBits2Float(0xc219acd0), SkBits2Float(0x42a9c473), SkBits2Float(0xc173c3a6), SkBits2Float(0x42a5369d), SkBits2Float(0x410121d8)); 4151 path.lineTo(SkBits2Float(0x426edcd8), SkBits2Float(0x40bab276)); 4152 path.cubicTo(SkBits2Float(0x42757264), SkBits2Float(0xc1303715), SkBits2Float(0x425f41dd), SkBits2Float(0xc1de2e4a), SkBits2Float(0x4231c3e2), SkBits2Float(0xc2213e66)); 4153 path.cubicTo(SkBits2Float(0x420445e8), SkBits2Float(0xc25365a8), SkBits2Float(0x41876c72), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 4154 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4155 path.close(); 4156 4157 SkPath path1(path); 4158 path.reset(); 4159 path.setFillType((SkPath::FillType) 0); 4160 path.moveTo(SkBits2Float(0x42a5369e), SkBits2Float(0x410121d6)); 4161 path.cubicTo(SkBits2Float(0x42a450b5), SkBits2Float(0x414aab85), SkBits2Float(0x42a2a6cd), SkBits2Float(0x4189bd6e), SkBits2Float(0x42a03d57), SkBits2Float(0x41ad66e6)); 4162 path.lineTo(SkBits2Float(0x4267abf7), SkBits2Float(0x417ab39f)); 4163 path.cubicTo(SkBits2Float(0x426b28ae), SkBits2Float(0x41472463), SkBits2Float(0x426d9071), SkBits2Float(0x41128229), SkBits2Float(0x426edcd8), SkBits2Float(0x40bab277)); 4164 path.lineTo(SkBits2Float(0x42a5369e), SkBits2Float(0x410121d6)); 4165 path.close(); 4166 4167 SkPath path2(path); 4168 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4169 } 4170 // op end success 1 4171 4172 static void battleOp155(skiatest::Reporter* reporter, const char* filename) { 4173 SkPath path; 4174 path.setFillType((SkPath::FillType) 1); 4175 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4176 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4177 path.cubicTo(SkBits2Float(0x41bb5603), SkBits2Float(0xc2a60000), SkBits2Float(0x4236fa4e), SkBits2Float(0xc2923760), SkBits2Float(0x4275e892), SkBits2Float(0xc25f0dc8)); 4178 path.cubicTo(SkBits2Float(0x429a6b6b), SkBits2Float(0xc219acd0), SkBits2Float(0x42a9c473), SkBits2Float(0xc173c3a8), SkBits2Float(0x42a5369d), SkBits2Float(0x410121d5)); 4179 path.lineTo(SkBits2Float(0x42a5369e), SkBits2Float(0x410121d6)); 4180 path.cubicTo(SkBits2Float(0x42a450b5), SkBits2Float(0x414aab85), SkBits2Float(0x42a2a6cd), SkBits2Float(0x4189bd6e), SkBits2Float(0x42a03d57), SkBits2Float(0x41ad66e6)); 4181 path.lineTo(SkBits2Float(0x4267abf7), SkBits2Float(0x417ab39f)); 4182 path.cubicTo(SkBits2Float(0x426b28ae), SkBits2Float(0x41472463), SkBits2Float(0x426d9071), SkBits2Float(0x41128229), SkBits2Float(0x426edcd8), SkBits2Float(0x40bab276)); 4183 path.cubicTo(SkBits2Float(0x42757264), SkBits2Float(0xc1303715), SkBits2Float(0x425f41dd), SkBits2Float(0xc1de2e4a), SkBits2Float(0x4231c3e2), SkBits2Float(0xc2213e66)); 4184 path.cubicTo(SkBits2Float(0x420445e8), SkBits2Float(0xc25365a8), SkBits2Float(0x41876c72), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4185 path.close(); 4186 4187 SkPath path1(path); 4188 path.reset(); 4189 path.setFillType((SkPath::FillType) 0); 4190 path.moveTo(SkBits2Float(0x42a03d58), SkBits2Float(0x41ad66e7)); 4191 path.cubicTo(SkBits2Float(0x428bedd4), SkBits2Float(0x426cda0a), SkBits2Float(0x420c6f35), SkBits2Float(0x42a955c4), SkBits2Float(0xc06f4c79), SkBits2Float(0x42a5d4d6)); 4192 path.cubicTo(SkBits2Float(0xc22a58c2), SkBits2Float(0x42a253e8), SkBits2Float(0xc2960525), SkBits2Float(0x4252b394), SkBits2Float(0xc2a37db3), SkBits2Float(0x41660422)); 4193 path.lineTo(SkBits2Float(0xc26c5f63), SkBits2Float(0x412646cf)); 4194 path.cubicTo(SkBits2Float(0xc258e58a), SkBits2Float(0x4218507a), SkBits2Float(0xc1f648da), SkBits2Float(0x426ab0dc), SkBits2Float(0xc02cfcc3), SkBits2Float(0x426fc1a0)); 4195 path.cubicTo(SkBits2Float(0x41cb09aa), SkBits2Float(0x4274d265), SkBits2Float(0x424a4e9e), SkBits2Float(0x422b37da), SkBits2Float(0x4267abf8), SkBits2Float(0x417ab398)); 4196 path.lineTo(SkBits2Float(0x42a03d58), SkBits2Float(0x41ad66e7)); 4197 path.close(); 4198 4199 SkPath path2(path); 4200 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4201 } 4202 // op end success 1 4203 4204 static void battleOp156(skiatest::Reporter* reporter, const char* filename) { 4205 SkPath path; 4206 path.setFillType((SkPath::FillType) 0); 4207 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4208 path.cubicTo(SkBits2Float(0x41c3ae1a), SkBits2Float(0xc2a60000), SkBits2Float(0x423eb2d3), SkBits2Float(0xc2906c00), SkBits2Float(0x427dc7c2), SkBits2Float(0xc2560e13)); 4209 path.cubicTo(SkBits2Float(0x429e6e58), SkBits2Float(0xc20b4426), SkBits2Float(0x42abdf2b), SkBits2Float(0xc121d7a7), SkBits2Float(0x42a39f93), SkBits2Float(0x415fea21)); 4210 path.lineTo(SkBits2Float(0x426c905a), SkBits2Float(0x4121ddae)); 4211 path.cubicTo(SkBits2Float(0x42787d42), SkBits2Float(0xc0e9fd34), SkBits2Float(0x42650e94), SkBits2Float(0xc1c95949), SkBits2Float(0x423774a6), SkBits2Float(0xc21abd13)); 4212 path.cubicTo(SkBits2Float(0x4209dab9), SkBits2Float(0xc250cd81), SkBits2Float(0x418d749b), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 4213 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4214 path.close(); 4215 4216 SkPath path1(path); 4217 path.reset(); 4218 path.setFillType((SkPath::FillType) 0); 4219 path.moveTo(SkBits2Float(0x42a39f93), SkBits2Float(0x415fea20)); 4220 path.cubicTo(SkBits2Float(0x42a1ffad), SkBits2Float(0x4195f252), SkBits2Float(0x429f8ce1), SkBits2Float(0x41bb4c45), SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969a)); 4221 path.lineTo(SkBits2Float(0x4261fbff), SkBits2Float(0x41a1a14e)); 4222 path.cubicTo(SkBits2Float(0x4266acd9), SkBits2Float(0x41876566), SkBits2Float(0x426a370e), SkBits2Float(0x4158ca4c), SkBits2Float(0x426c905b), SkBits2Float(0x4121ddaf)); 4223 path.lineTo(SkBits2Float(0x42a39f93), SkBits2Float(0x415fea20)); 4224 path.close(); 4225 4226 SkPath path2(path); 4227 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4228 } 4229 // op end success 1 4230 4231 static void battleOp157(skiatest::Reporter* reporter, const char* filename) { 4232 if (!FLAGS_runFail) { 4233 return; // draws wrong 4234 } 4235 SkPath path; 4236 path.setFillType((SkPath::FillType) 1); 4237 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4238 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4239 path.cubicTo(SkBits2Float(0x41c3ae1a), SkBits2Float(0xc2a60000), SkBits2Float(0x423eb2d3), SkBits2Float(0xc2906c00), SkBits2Float(0x427dc7c2), SkBits2Float(0xc2560e13)); 4240 path.cubicTo(SkBits2Float(0x429e6e58), SkBits2Float(0xc20b4426), SkBits2Float(0x42abdf2b), SkBits2Float(0xc121d7a8), SkBits2Float(0x42a39f93), SkBits2Float(0x415fea20)); 4241 path.lineTo(SkBits2Float(0x42a39f93), SkBits2Float(0x415fea21)); 4242 path.cubicTo(SkBits2Float(0x42a1ffad), SkBits2Float(0x4195f252), SkBits2Float(0x429f8ce1), SkBits2Float(0x41bb4c45), SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969a)); 4243 path.lineTo(SkBits2Float(0x4261fbff), SkBits2Float(0x41a1a14e)); 4244 path.cubicTo(SkBits2Float(0x4266acd9), SkBits2Float(0x41876566), SkBits2Float(0x426a370e), SkBits2Float(0x4158ca4c), SkBits2Float(0x426c905b), SkBits2Float(0x4121ddaf)); 4245 path.lineTo(SkBits2Float(0x426c905a), SkBits2Float(0x4121ddae)); 4246 path.cubicTo(SkBits2Float(0x42787d42), SkBits2Float(0xc0e9fd34), SkBits2Float(0x42650e94), SkBits2Float(0xc1c95949), SkBits2Float(0x423774a6), SkBits2Float(0xc21abd13)); 4247 path.cubicTo(SkBits2Float(0x4209dab9), SkBits2Float(0xc250cd81), SkBits2Float(0x418d749b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4248 path.close(); 4249 4250 SkPath path1(path); 4251 path.reset(); 4252 path.setFillType((SkPath::FillType) 0); 4253 path.moveTo(SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969b)); 4254 path.cubicTo(SkBits2Float(0x4280e391), SkBits2Float(0x4284903f), SkBits2Float(0x41c7a851), SkBits2Float(0x42b2072e), SkBits2Float(0xc1713833), SkBits2Float(0x42a33d14)); 4255 path.cubicTo(SkBits2Float(0xc25c7040), SkBits2Float(0x429472fb), SkBits2Float(0xc2a7bda2), SkBits2Float(0x421b8b2e), SkBits2Float(0xc2a5f5d6), SkBits2Float(0xbfe85110)); 4256 path.lineTo(SkBits2Float(0xc26ff14f), SkBits2Float(0xbfa7f00b)); 4257 path.cubicTo(SkBits2Float(0xc272844c), SkBits2Float(0x41e0e1f3), SkBits2Float(0xc21f5a65), SkBits2Float(0x4256a019), SkBits2Float(0xc12e6015), SkBits2Float(0x426c01f9)); 4258 path.cubicTo(SkBits2Float(0x419054b7), SkBits2Float(0x4280b1ec), SkBits2Float(0x423a5877), SkBits2Float(0x423fa872), SkBits2Float(0x4261fc02), SkBits2Float(0x41a1a142)); 4259 path.lineTo(SkBits2Float(0x429c4e4c), SkBits2Float(0x41df969b)); 4260 path.close(); 4261 4262 SkPath path2(path); 4263 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4264 } 4265 // op end success 1 4266 4267 static void battleOp158(skiatest::Reporter* reporter, const char* filename) { 4268 SkPath path; 4269 path.setFillType((SkPath::FillType) 0); 4270 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4271 path.cubicTo(SkBits2Float(0x41cb677f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4245cb36), SkBits2Float(0xc28eb15b), SkBits2Float(0x42825fc2), SkBits2Float(0xc24d8299)); 4272 path.cubicTo(SkBits2Float(0x42a1d9e8), SkBits2Float(0xc1fb44f8), SkBits2Float(0x42ad4967), SkBits2Float(0xc0aa7cf8), SkBits2Float(0x42a1679f), SkBits2Float(0x419b26cf)); 4273 path.lineTo(SkBits2Float(0x42695b36), SkBits2Float(0x416050ca)); 4274 path.cubicTo(SkBits2Float(0x427a88f8), SkBits2Float(0xc0767d2a), SkBits2Float(0x426a0074), SkBits2Float(0xc1b5a3f9), SkBits2Float(0x423c7e1d), SkBits2Float(0xc2148fc2)); 4275 path.cubicTo(SkBits2Float(0x420efbc6), SkBits2Float(0xc24e4d87), SkBits2Float(0x41930a0e), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 4276 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4277 path.close(); 4278 4279 SkPath path1(path); 4280 path.reset(); 4281 path.setFillType((SkPath::FillType) 0); 4282 path.moveTo(SkBits2Float(0x42a1679f), SkBits2Float(0x419b26d0)); 4283 path.cubicTo(SkBits2Float(0x429f113c), SkBits2Float(0x41c20ede), SkBits2Float(0x429bdafe), SkBits2Float(0x41e80a2e), SkBits2Float(0x4297ceee), SkBits2Float(0x42065107)); 4284 path.lineTo(SkBits2Float(0x425b7b5f), SkBits2Float(0x41c2314a)); 4285 path.cubicTo(SkBits2Float(0x4261554b), SkBits2Float(0x41a7bd56), SkBits2Float(0x4265fa14), SkBits2Float(0x418c4870), SkBits2Float(0x42695b37), SkBits2Float(0x416050cb)); 4286 path.lineTo(SkBits2Float(0x42a1679f), SkBits2Float(0x419b26d0)); 4287 path.close(); 4288 4289 SkPath path2(path); 4290 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4291 } 4292 // op end success 1 4293 4294 static void battleOp159(skiatest::Reporter* reporter, const char* filename) { 4295 SkPath path; 4296 path.setFillType((SkPath::FillType) 1); 4297 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4298 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4299 path.cubicTo(SkBits2Float(0x41cb677f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4245cb36), SkBits2Float(0xc28eb15b), SkBits2Float(0x42825fc2), SkBits2Float(0xc24d8299)); 4300 path.cubicTo(SkBits2Float(0x42a1d9e8), SkBits2Float(0xc1fb44f8), SkBits2Float(0x42ad4967), SkBits2Float(0xc0aa7cf8), SkBits2Float(0x42a1679f), SkBits2Float(0x419b26d0)); 4301 path.cubicTo(SkBits2Float(0x429f113c), SkBits2Float(0x41c20ede), SkBits2Float(0x429bdafe), SkBits2Float(0x41e80a2e), SkBits2Float(0x4297ceee), SkBits2Float(0x42065107)); 4302 path.lineTo(SkBits2Float(0x425b7b5f), SkBits2Float(0x41c2314a)); 4303 path.cubicTo(SkBits2Float(0x4261554b), SkBits2Float(0x41a7bd56), SkBits2Float(0x4265fa14), SkBits2Float(0x418c4870), SkBits2Float(0x42695b36), SkBits2Float(0x416050ca)); 4304 path.cubicTo(SkBits2Float(0x427a88f8), SkBits2Float(0xc0767d2a), SkBits2Float(0x426a0074), SkBits2Float(0xc1b5a3f9), SkBits2Float(0x423c7e1d), SkBits2Float(0xc2148fc2)); 4305 path.cubicTo(SkBits2Float(0x420efbc6), SkBits2Float(0xc24e4d87), SkBits2Float(0x41930a0e), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4306 path.close(); 4307 4308 SkPath path1(path); 4309 path.reset(); 4310 path.setFillType((SkPath::FillType) 0); 4311 path.moveTo(SkBits2Float(0x4297ceef), SkBits2Float(0x42065107)); 4312 path.cubicTo(SkBits2Float(0x426afc81), SkBits2Float(0x4290b9e3), SkBits2Float(0x4171c53f), SkBits2Float(0x42b7f2c1), SkBits2Float(0xc1ca446b), SkBits2Float(0x429e1c54)); 4313 path.cubicTo(SkBits2Float(0xc2835add), SkBits2Float(0x428445e8), SkBits2Float(0xc2b3ab9e), SkBits2Float(0x41c6c009), SkBits2Float(0xc2a29b10), SkBits2Float(0xc18596e4)); 4314 path.lineTo(SkBits2Float(0xc26b17b4), SkBits2Float(0xc141242b)); 4315 path.cubicTo(SkBits2Float(0xc281e1de), SkBits2Float(0x418faccb), SkBits2Float(0xc23de932), SkBits2Float(0x423f3d09), SkBits2Float(0xc19237aa), SkBits2Float(0x42649810)); 4316 path.cubicTo(SkBits2Float(0x412ec628), SkBits2Float(0x4284f98c), SkBits2Float(0x4229deab), SkBits2Float(0x42513e23), SkBits2Float(0x425b7b62), SkBits2Float(0x41c23147)); 4317 path.lineTo(SkBits2Float(0x4297ceef), SkBits2Float(0x42065107)); 4318 path.close(); 4319 4320 SkPath path2(path); 4321 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4322 } 4323 // op end success 1 4324 4325 static void battleOp160(skiatest::Reporter* reporter, const char* filename) { 4326 SkPath path; 4327 path.setFillType((SkPath::FillType) 0); 4328 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4329 path.cubicTo(SkBits2Float(0x41d3ccce), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424d7252), SkBits2Float(0xc28cbd55), SkBits2Float(0x4285fbcc), SkBits2Float(0xc244010c)); 4330 path.cubicTo(SkBits2Float(0x42a53e6e), SkBits2Float(0xc1dd0edd), SkBits2Float(0x42ae3d82), SkBits2Float(0xbdb630d0), SkBits2Float(0x429e3366), SkBits2Float(0x41c92323)); 4331 path.lineTo(SkBits2Float(0x4264b95a), SkBits2Float(0x41916681)); 4332 path.cubicTo(SkBits2Float(0x427be9e4), SkBits2Float(0xbd83b620), SkBits2Float(0x426ee823), SkBits2Float(0xc19fcd11), SkBits2Float(0x4241b610), SkBits2Float(0xc20db091)); 4333 path.cubicTo(SkBits2Float(0x421483fd), SkBits2Float(0xc24b7a9a), SkBits2Float(0x41991bc1), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 4334 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4335 path.close(); 4336 4337 SkPath path1(path); 4338 path.reset(); 4339 path.setFillType((SkPath::FillType) 0); 4340 path.moveTo(SkBits2Float(0x429e3367), SkBits2Float(0x41c92322)); 4341 path.cubicTo(SkBits2Float(0x429b0cbc), SkBits2Float(0x41f0ca9b), SkBits2Float(0x4296f94f), SkBits2Float(0x420b9629), SkBits2Float(0x429206e2), SkBits2Float(0x421de34f)); 4342 path.lineTo(SkBits2Float(0x42531f8a), SkBits2Float(0x41e4458f)); 4343 path.cubicTo(SkBits2Float(0x425a4685), SkBits2Float(0x41c9cfd9), SkBits2Float(0x42602b18), SkBits2Float(0x41ae10ed), SkBits2Float(0x4264b95a), SkBits2Float(0x41916682)); 4344 path.lineTo(SkBits2Float(0x429e3367), SkBits2Float(0x41c92322)); 4345 path.close(); 4346 4347 SkPath path2(path); 4348 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4349 } 4350 // op end success 1 4351 4352 static void battleOp161(skiatest::Reporter* reporter, const char* filename) { 4353 SkPath path; 4354 path.setFillType((SkPath::FillType) 1); 4355 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 4356 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4357 path.cubicTo(SkBits2Float(0x41d3ccce), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424d7252), SkBits2Float(0xc28cbd55), SkBits2Float(0x4285fbcc), SkBits2Float(0xc244010c)); 4358 path.cubicTo(SkBits2Float(0x42a53e6e), SkBits2Float(0xc1dd0edd), SkBits2Float(0x42ae3d82), SkBits2Float(0xbdb630d0), SkBits2Float(0x429e3367), SkBits2Float(0x41c92322)); 4359 path.cubicTo(SkBits2Float(0x429b0cbc), SkBits2Float(0x41f0ca9b), SkBits2Float(0x4296f94f), SkBits2Float(0x420b9629), SkBits2Float(0x429206e2), SkBits2Float(0x421de34f)); 4360 path.lineTo(SkBits2Float(0x42531f8a), SkBits2Float(0x41e4458f)); 4361 path.cubicTo(SkBits2Float(0x425a4685), SkBits2Float(0x41c9cfd9), SkBits2Float(0x42602b18), SkBits2Float(0x41ae10ed), SkBits2Float(0x4264b95a), SkBits2Float(0x41916681)); 4362 path.cubicTo(SkBits2Float(0x427be9e4), SkBits2Float(0xbd83b620), SkBits2Float(0x426ee823), SkBits2Float(0xc19fcd11), SkBits2Float(0x4241b610), SkBits2Float(0xc20db091)); 4363 path.cubicTo(SkBits2Float(0x421483fd), SkBits2Float(0xc24b7a9a), SkBits2Float(0x41991bc1), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 4364 path.close(); 4365 4366 SkPath path1(path); 4367 path.reset(); 4368 path.setFillType((SkPath::FillType) 0); 4369 path.moveTo(SkBits2Float(0x429206e2), SkBits2Float(0x421de34f)); 4370 path.cubicTo(SkBits2Float(0x424fd7be), SkBits2Float(0x429cd433), SkBits2Float(0x40819da9), SkBits2Float(0x42bbf605), SkBits2Float(0xc20f7b98), SkBits2Float(0x4295b271)); 4371 path.cubicTo(SkBits2Float(0xc2979573), SkBits2Float(0x425eddba), SkBits2Float(0xc2bb57fe), SkBits2Float(0x4109ef62), SkBits2Float(0xc2990315), SkBits2Float(0xc200bcbb)); 4372 path.lineTo(SkBits2Float(0xc25d38e3), SkBits2Float(0xc1ba2048)); 4373 path.cubicTo(SkBits2Float(0xc2876de1), SkBits2Float(0x40c76c9c), SkBits2Float(0xc25b2842), SkBits2Float(0x42211baa), SkBits2Float(0xc1cf71e5), SkBits2Float(0x42586df1)); 4374 path.cubicTo(SkBits2Float(0x403b65b7), SkBits2Float(0x4287e01c), SkBits2Float(0x42163f6f), SkBits2Float(0x4262bd95), SkBits2Float(0x42531f8c), SkBits2Float(0x41e4458b)); 4375 path.lineTo(SkBits2Float(0x429206e2), SkBits2Float(0x421de34f)); 4376 path.close(); 4377 4378 SkPath path2(path); 4379 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4380 } 4381 // op end success 1 4382 4383 static void battleOp162(skiatest::Reporter* reporter, const char* filename) { 4384 SkPath path; 4385 path.setFillType((SkPath::FillType) 0); 4386 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4387 path.cubicTo(SkBits2Float(0x41da3d7f), SkBits2Float(0xc2a60000), SkBits2Float(0x425345ee), SkBits2Float(0xc28b3082), SkBits2Float(0x4288a01b), SkBits2Float(0xc23c9177)); 4388 path.cubicTo(SkBits2Float(0x42a79d3f), SkBits2Float(0xc1c583d9), SkBits2Float(0x42ae8eeb), SkBits2Float(0x407c6461), SkBits2Float(0x429b333a), SkBits2Float(0x41eb9731)); 4389 path.lineTo(SkBits2Float(0x426062bb), SkBits2Float(0x41aa4e75)); 4390 path.cubicTo(SkBits2Float(0x427c5f9a), SkBits2Float(0x403673d5), SkBits2Float(0x4272557b), SkBits2Float(0xc18ec82c), SkBits2Float(0x424587e0), SkBits2Float(0xc208507b)); 4391 path.cubicTo(SkBits2Float(0x4218ba46), SkBits2Float(0xc2493ce1), SkBits2Float(0x419dc399), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 4392 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4393 path.close(); 4394 4395 SkPath path1(path); 4396 path.reset(); 4397 path.setFillType((SkPath::FillType) 0); 4398 path.moveTo(SkBits2Float(0x429b3339), SkBits2Float(0x41eb9733)); 4399 path.cubicTo(SkBits2Float(0x429766b3), SkBits2Float(0x4209d0f3), SkBits2Float(0x4292a485), SkBits2Float(0x421d0e17), SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e33)); 4400 path.lineTo(SkBits2Float(0x424bd7ac), SkBits2Float(0x41fd5d06)); 4401 path.cubicTo(SkBits2Float(0x42540374), SkBits2Float(0x41e3114e), SkBits2Float(0x425ae4ae), SkBits2Float(0x41c7409b), SkBits2Float(0x426062bc), SkBits2Float(0x41aa4e76)); 4402 path.lineTo(SkBits2Float(0x429b3339), SkBits2Float(0x41eb9733)); 4403 path.close(); 4404 4405 SkPath path2(path); 4406 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4407 } 4408 // op end success 1 4409 4410 static void battleOp163(skiatest::Reporter* reporter, const char* filename) { 4411 if (!FLAGS_runFail) { 4412 return; // draws wrong 4413 } 4414 SkPath path; 4415 path.setFillType((SkPath::FillType) 1); 4416 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 4417 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4418 path.cubicTo(SkBits2Float(0x41da3d7f), SkBits2Float(0xc2a60000), SkBits2Float(0x425345ee), SkBits2Float(0xc28b3082), SkBits2Float(0x4288a01b), SkBits2Float(0xc23c9177)); 4419 path.cubicTo(SkBits2Float(0x42a79d3f), SkBits2Float(0xc1c583d9), SkBits2Float(0x42ae8eeb), SkBits2Float(0x407c6461), SkBits2Float(0x429b3339), SkBits2Float(0x41eb9733)); 4420 path.cubicTo(SkBits2Float(0x429766b3), SkBits2Float(0x4209d0f3), SkBits2Float(0x4292a485), SkBits2Float(0x421d0e17), SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e33)); 4421 path.lineTo(SkBits2Float(0x424bd7ac), SkBits2Float(0x41fd5d06)); 4422 path.cubicTo(SkBits2Float(0x42540374), SkBits2Float(0x41e3114e), SkBits2Float(0x425ae4ae), SkBits2Float(0x41c7409b), SkBits2Float(0x426062bb), SkBits2Float(0x41aa4e75)); 4423 path.cubicTo(SkBits2Float(0x427c5f9a), SkBits2Float(0x403673d5), SkBits2Float(0x4272557b), SkBits2Float(0xc18ec82c), SkBits2Float(0x424587e0), SkBits2Float(0xc208507b)); 4424 path.cubicTo(SkBits2Float(0x4218ba46), SkBits2Float(0xc2493ce1), SkBits2Float(0x419dc399), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 4425 path.close(); 4426 4427 SkPath path1(path); 4428 path.reset(); 4429 path.setFillType((SkPath::FillType) 0); 4430 path.moveTo(SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e36)); 4431 path.cubicTo(SkBits2Float(0x42397b9c), SkBits2Float(0x42a54202), SkBits2Float(0xc0931849), SkBits2Float(0x42bd474f), SkBits2Float(0xc22e0fe8), SkBits2Float(0x428d5ab7)); 4432 path.cubicTo(SkBits2Float(0xc2a4de63), SkBits2Float(0x423adc3f), SkBits2Float(0xc2bd50df), SkBits2Float(0xc08673c0), SkBits2Float(0xc28db7cd), SkBits2Float(0xc22ce1b4)); 4433 path.lineTo(SkBits2Float(0xc24ce4bb), SkBits2Float(0xc1f9f306)); 4434 path.cubicTo(SkBits2Float(0xc288db72), SkBits2Float(0xc0426216), SkBits2Float(0xc26e5ec8), SkBits2Float(0x42071590), SkBits2Float(0xc1fba9c9), SkBits2Float(0x424c5fa5)); 4435 path.cubicTo(SkBits2Float(0xc054b001), SkBits2Float(0x4288d4dc), SkBits2Float(0x420615fc), SkBits2Float(0x426eee67), SkBits2Float(0x424bd7af), SkBits2Float(0x41fd5d01)); 4436 path.lineTo(SkBits2Float(0x428cfdb5), SkBits2Float(0x422f3e36)); 4437 path.close(); 4438 4439 SkPath path2(path); 4440 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4441 } 4442 // op end success 1 4443 4444 static void battleOp164(skiatest::Reporter* reporter, const char* filename) { 4445 SkPath path; 4446 path.setFillType((SkPath::FillType) 0); 4447 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4448 path.cubicTo(SkBits2Float(0x41e183ec), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4259cec4), SkBits2Float(0xc2896274), SkBits2Float(0x428b79bc), SkBits2Float(0xc2340753)); 4449 path.cubicTo(SkBits2Float(0x42aa0c16), SkBits2Float(0xc1aa937d), SkBits2Float(0x42ae7c71), SkBits2Float(0x41080a55), SkBits2Float(0x42974339), SkBits2Float(0x4208c1d5)); 4450 path.lineTo(SkBits2Float(0x425ab161), SkBits2Float(0x41c5b8a2)); 4451 path.cubicTo(SkBits2Float(0x427c44e4), SkBits2Float(0x40c4af5a), SkBits2Float(0x4275d9f7), SkBits2Float(0xc1769dba), SkBits2Float(0x4249a6c2), SkBits2Float(0xc2022424)); 4452 path.cubicTo(SkBits2Float(0x421d738b), SkBits2Float(0xc246a0db), SkBits2Float(0x41a305f1), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 4453 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4454 path.close(); 4455 4456 SkPath path1(path); 4457 path.reset(); 4458 path.setFillType((SkPath::FillType) 0); 4459 path.moveTo(SkBits2Float(0x42974339), SkBits2Float(0x4208c1d6)); 4460 path.cubicTo(SkBits2Float(0x4292b5f8), SkBits2Float(0x421ce537), SkBits2Float(0x428d2a3f), SkBits2Float(0x42301305), SkBits2Float(0x4286b52e), SkBits2Float(0x4242022c)); 4461 path.lineTo(SkBits2Float(0x4242c218), SkBits2Float(0x420c3f43)); 4462 path.cubicTo(SkBits2Float(0x424c1813), SkBits2Float(0x41fe90b7), SkBits2Float(0x42541cae), SkBits2Float(0x41e2d634), SkBits2Float(0x425ab162), SkBits2Float(0x41c5b8a3)); 4463 path.lineTo(SkBits2Float(0x42974339), SkBits2Float(0x4208c1d6)); 4464 path.close(); 4465 4466 SkPath path2(path); 4467 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4468 } 4469 // op end success 1 4470 4471 static void battleOp165(skiatest::Reporter* reporter, const char* filename) { 4472 SkPath path; 4473 path.setFillType((SkPath::FillType) 1); 4474 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 4475 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4476 path.cubicTo(SkBits2Float(0x41e183ec), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4259cec4), SkBits2Float(0xc2896274), SkBits2Float(0x428b79bc), SkBits2Float(0xc2340753)); 4477 path.cubicTo(SkBits2Float(0x42aa0c16), SkBits2Float(0xc1aa937d), SkBits2Float(0x42ae7c71), SkBits2Float(0x41080a55), SkBits2Float(0x42974339), SkBits2Float(0x4208c1d6)); 4478 path.cubicTo(SkBits2Float(0x4292b5f8), SkBits2Float(0x421ce537), SkBits2Float(0x428d2a3f), SkBits2Float(0x42301305), SkBits2Float(0x4286b52e), SkBits2Float(0x4242022c)); 4479 path.lineTo(SkBits2Float(0x4242c218), SkBits2Float(0x420c3f43)); 4480 path.cubicTo(SkBits2Float(0x424c1813), SkBits2Float(0x41fe90b7), SkBits2Float(0x42541cae), SkBits2Float(0x41e2d634), SkBits2Float(0x425ab161), SkBits2Float(0x41c5b8a2)); 4481 path.cubicTo(SkBits2Float(0x427c44e4), SkBits2Float(0x40c4af5a), SkBits2Float(0x4275d9f7), SkBits2Float(0xc1769dba), SkBits2Float(0x4249a6c2), SkBits2Float(0xc2022424)); 4482 path.cubicTo(SkBits2Float(0x421d738b), SkBits2Float(0xc246a0db), SkBits2Float(0x41a305f1), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 4483 path.close(); 4484 4485 SkPath path1(path); 4486 path.reset(); 4487 path.setFillType((SkPath::FillType) 0); 4488 path.moveTo(SkBits2Float(0x4286b52e), SkBits2Float(0x4242022d)); 4489 path.cubicTo(SkBits2Float(0x4245f9c6), SkBits2Float(0x42929b97), SkBits2Float(0x419b96e9), SkBits2Float(0x42ac9135), SkBits2Float(0xc12da222), SkBits2Float(0x42a4933a)); 4490 path.cubicTo(SkBits2Float(0xc2249c85), SkBits2Float(0x429c9540), SkBits2Float(0xc2859c99), SkBits2Float(0x4267dd85), SkBits2Float(0xc29b4028), SkBits2Float(0x41eb0f05)); 4491 path.cubicTo(SkBits2Float(0xc2b0e3b8), SkBits2Float(0x3f4c608a), SkBits2Float(0xc2a55c16), SkBits2Float(0xc1fb5a07), SkBits2Float(0xc27a7a78), SkBits2Float(0xc259e8d8)); 4492 path.lineTo(SkBits2Float(0xc2351199), SkBits2Float(0xc21d8664)); 4493 path.cubicTo(SkBits2Float(0xc26f12eb), SkBits2Float(0xc1b5b32d), SkBits2Float(0xc27fbe43), SkBits2Float(0x3f13bb74), SkBits2Float(0xc2607541), SkBits2Float(0x41a9ebcd)); 4494 path.cubicTo(SkBits2Float(0xc2412c3e), SkBits2Float(0x42279ce1), SkBits2Float(0xc1edfdc7), SkBits2Float(0x4262625e), SkBits2Float(0xc0fb089d), SkBits2Float(0x426df06d)); 4495 path.cubicTo(SkBits2Float(0x4160f2f1), SkBits2Float(0x42797e7c), SkBits2Float(0x420f1d6a), SkBits2Float(0x4253f671), SkBits2Float(0x4242c21c), SkBits2Float(0x420c3f41)); 4496 path.lineTo(SkBits2Float(0x4286b52e), SkBits2Float(0x4242022d)); 4497 path.close(); 4498 4499 SkPath path2(path); 4500 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4501 } 4502 // op end success 1 4503 4504 static void battleOp166(skiatest::Reporter* reporter, const char* filename) { 4505 SkPath path; 4506 path.setFillType((SkPath::FillType) 0); 4507 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4508 path.cubicTo(SkBits2Float(0x41e5cd16), SkBits2Float(0xc2a60000), SkBits2Float(0x425da203), SkBits2Float(0xc2884b73), SkBits2Float(0x428d165b), SkBits2Float(0xc22eeec9)); 4509 path.cubicTo(SkBits2Float(0x42ab5bb4), SkBits2Float(0xc19a8d5b), SkBits2Float(0x42ae3add), SkBits2Float(0x4132f7c2), SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b)); 4510 path.lineTo(SkBits2Float(0x4256f554), SkBits2Float(0x41d579ab)); 4511 path.cubicTo(SkBits2Float(0x427be612), SkBits2Float(0x41015fcf), SkBits2Float(0x4277bf2e), SkBits2Float(0xc15f72f6), SkBits2Float(0x424bfb4d), SkBits2Float(0xc1fcea38)); 4512 path.cubicTo(SkBits2Float(0x4220376c), SkBits2Float(0xc2450d7a), SkBits2Float(0x41a61f08), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 4513 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4514 path.close(); 4515 4516 SkPath path1(path); 4517 path.reset(); 4518 path.setFillType((SkPath::FillType) 0); 4519 path.moveTo(SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b)); 4520 path.cubicTo(SkBits2Float(0x428facea), SkBits2Float(0x4227cf1b), SkBits2Float(0x4289a8e5), SkBits2Float(0x423ae500), SkBits2Float(0x4282b9a7), SkBits2Float(0x424c9dab)); 4521 path.lineTo(SkBits2Float(0x423d0015), SkBits2Float(0x4213ea45)); 4522 path.cubicTo(SkBits2Float(0x424706b3), SkBits2Float(0x42071ac0), SkBits2Float(0x424fb93a), SkBits2Float(0x41f29d8f), SkBits2Float(0x4256f555), SkBits2Float(0x41d579ac)); 4523 path.lineTo(SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b)); 4524 path.close(); 4525 4526 SkPath path2(path); 4527 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4528 } 4529 // op end success 1 4530 4531 static void battleOp167(skiatest::Reporter* reporter, const char* filename) { 4532 SkPath path; 4533 path.setFillType((SkPath::FillType) 1); 4534 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 4535 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4536 path.cubicTo(SkBits2Float(0x41e5cd16), SkBits2Float(0xc2a60000), SkBits2Float(0x425da203), SkBits2Float(0xc2884b73), SkBits2Float(0x428d165b), SkBits2Float(0xc22eeec9)); 4537 path.cubicTo(SkBits2Float(0x42ab5bb4), SkBits2Float(0xc19a8d5b), SkBits2Float(0x42ae3add), SkBits2Float(0x4132f7c2), SkBits2Float(0x4294adf4), SkBits2Float(0x4213a75b)); 4538 path.cubicTo(SkBits2Float(0x428facea), SkBits2Float(0x4227cf1b), SkBits2Float(0x4289a8e5), SkBits2Float(0x423ae500), SkBits2Float(0x4282b9a7), SkBits2Float(0x424c9dab)); 4539 path.lineTo(SkBits2Float(0x423d0015), SkBits2Float(0x4213ea45)); 4540 path.cubicTo(SkBits2Float(0x424706b3), SkBits2Float(0x42071ac0), SkBits2Float(0x424fb93a), SkBits2Float(0x41f29d8f), SkBits2Float(0x4256f554), SkBits2Float(0x41d579ab)); 4541 path.cubicTo(SkBits2Float(0x427be612), SkBits2Float(0x41015fcf), SkBits2Float(0x4277bf2e), SkBits2Float(0xc15f72f6), SkBits2Float(0x424bfb4d), SkBits2Float(0xc1fcea38)); 4542 path.cubicTo(SkBits2Float(0x4220376c), SkBits2Float(0xc2450d7a), SkBits2Float(0x41a61f08), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 4543 path.close(); 4544 4545 SkPath path1(path); 4546 path.reset(); 4547 path.setFillType((SkPath::FillType) 0); 4548 path.moveTo(SkBits2Float(0x4282b9a8), SkBits2Float(0x424c9dac)); 4549 path.cubicTo(SkBits2Float(0x4238a98e), SkBits2Float(0x42975dcd), SkBits2Float(0x416d9db4), SkBits2Float(0x42aecc7f), SkBits2Float(0xc17bb856), SkBits2Float(0x42a2fd9a)); 4550 path.cubicTo(SkBits2Float(0xc2394396), SkBits2Float(0x42972eb6), SkBits2Float(0xc28e09e8), SkBits2Float(0x42543e5a), SkBits2Float(0xc29f69c3), SkBits2Float(0x41b9307a)); 4551 path.cubicTo(SkBits2Float(0xc2b0c99f), SkBits2Float(0xc0d86efe), SkBits2Float(0xc29f345f), SkBits2Float(0xc21c161b), SkBits2Float(0xc263c1d4), SkBits2Float(0xc2718f13)); 4552 path.lineTo(SkBits2Float(0xc224a4cd), SkBits2Float(0xc22e9eef)); 4553 path.cubicTo(SkBits2Float(0xc2662cd7), SkBits2Float(0xc1e1aab7), SkBits2Float(0xc27f98a3), SkBits2Float(0xc09c754c), SkBits2Float(0xc26679fe), SkBits2Float(0x4185df20)); 4554 path.cubicTo(SkBits2Float(0xc24d5b58), SkBits2Float(0x42196dcb), SkBits2Float(0xc205ecef), SkBits2Float(0x425a93a6), SkBits2Float(0xc135f72f), SkBits2Float(0x426ba619)); 4555 path.cubicTo(SkBits2Float(0x412bc560), SkBits2Float(0x427cb88a), SkBits2Float(0x42057da8), SkBits2Float(0x425ad7c5), SkBits2Float(0x423d0018), SkBits2Float(0x4213ea45)); 4556 path.lineTo(SkBits2Float(0x4282b9a8), SkBits2Float(0x424c9dac)); 4557 path.close(); 4558 4559 SkPath path2(path); 4560 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4561 } 4562 // op end success 1 4563 4564 static void battleOp168(skiatest::Reporter* reporter, const char* filename) { 4565 SkPath path; 4566 path.setFillType((SkPath::FillType) 0); 4567 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4568 path.cubicTo(SkBits2Float(0x41ea54b9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4261a7de), SkBits2Float(0xc2871f16), SkBits2Float(0x428ebc81), SkBits2Float(0xc2297f4d)); 4569 path.cubicTo(SkBits2Float(0x42aca513), SkBits2Float(0xc18980da), SkBits2Float(0x42adc9a4), SkBits2Float(0x41604127), SkBits2Float(0x4291be57), SkBits2Float(0x421eee87)); 4570 path.lineTo(SkBits2Float(0x4252b6a9), SkBits2Float(0x41e5c7e9)); 4571 path.cubicTo(SkBits2Float(0x427b4260), SkBits2Float(0x41221c9f), SkBits2Float(0x42799b62), SkBits2Float(0xc146ccc2), SkBits2Float(0x424e5da6), SkBits2Float(0xc1f50e65)); 4572 path.cubicTo(SkBits2Float(0x42231fea), SkBits2Float(0xc2435b34), SkBits2Float(0x41a9655c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3725ffa9), SkBits2Float(0xc26fffff)); 4573 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4574 path.close(); 4575 4576 SkPath path1(path); 4577 path.reset(); 4578 path.setFillType((SkPath::FillType) 0); 4579 path.moveTo(SkBits2Float(0x4291be57), SkBits2Float(0x421eee8a)); 4580 path.cubicTo(SkBits2Float(0x428c4169), SkBits2Float(0x42330feb), SkBits2Float(0x4285bd57), SkBits2Float(0x4246005c), SkBits2Float(0x427c99ac), SkBits2Float(0x4257723d)); 4581 path.lineTo(SkBits2Float(0x42369a46), SkBits2Float(0x421bbe89)); 4582 path.cubicTo(SkBits2Float(0x42415bc7), SkBits2Float(0x420f2230), SkBits2Float(0x424ac771), SkBits2Float(0x4201714b), SkBits2Float(0x4252b6a9), SkBits2Float(0x41e5c7e9)); 4583 path.lineTo(SkBits2Float(0x4291be57), SkBits2Float(0x421eee8a)); 4584 path.close(); 4585 4586 SkPath path2(path); 4587 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4588 } 4589 // op end success 1 4590 4591 static void battleOp169(skiatest::Reporter* reporter, const char* filename) { 4592 SkPath path; 4593 path.setFillType((SkPath::FillType) 1); 4594 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc26fffff)); 4595 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4596 path.cubicTo(SkBits2Float(0x41ea54b9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4261a7de), SkBits2Float(0xc2871f16), SkBits2Float(0x428ebc81), SkBits2Float(0xc2297f4d)); 4597 path.cubicTo(SkBits2Float(0x42aca513), SkBits2Float(0xc18980da), SkBits2Float(0x42adc9a4), SkBits2Float(0x41604127), SkBits2Float(0x4291be57), SkBits2Float(0x421eee8a)); 4598 path.cubicTo(SkBits2Float(0x428c4169), SkBits2Float(0x42330feb), SkBits2Float(0x4285bd57), SkBits2Float(0x4246005c), SkBits2Float(0x427c99ac), SkBits2Float(0x4257723d)); 4599 path.lineTo(SkBits2Float(0x42369a46), SkBits2Float(0x421bbe89)); 4600 path.cubicTo(SkBits2Float(0x42415bc7), SkBits2Float(0x420f2230), SkBits2Float(0x424ac771), SkBits2Float(0x4201714b), SkBits2Float(0x4252b6a9), SkBits2Float(0x41e5c7e9)); 4601 path.cubicTo(SkBits2Float(0x427b4260), SkBits2Float(0x41221c9f), SkBits2Float(0x42799b62), SkBits2Float(0xc146ccc2), SkBits2Float(0x424e5da6), SkBits2Float(0xc1f50e65)); 4602 path.cubicTo(SkBits2Float(0x42231fea), SkBits2Float(0xc2435b34), SkBits2Float(0x41a9655c), SkBits2Float(0xc26ffffe), SkBits2Float(0x3725ffa9), SkBits2Float(0xc26fffff)); 4603 path.close(); 4604 4605 SkPath path1(path); 4606 path.reset(); 4607 path.setFillType((SkPath::FillType) 0); 4608 path.moveTo(SkBits2Float(0x427c99ad), SkBits2Float(0x4257723e)); 4609 path.cubicTo(SkBits2Float(0x422a2459), SkBits2Float(0x429c0ff6), SkBits2Float(0x411ef0c1), SkBits2Float(0x42b0a109), SkBits2Float(0xc1a68a7f), SkBits2Float(0x42a0b1a2)); 4610 path.cubicTo(SkBits2Float(0xc24e46af), SkBits2Float(0x4290c23b), SkBits2Float(0xc296269a), SkBits2Float(0x423e3c04), SkBits2Float(0xc2a2b82b), SkBits2Float(0x41835b51)); 4611 path.cubicTo(SkBits2Float(0xc2af49bc), SkBits2Float(0xc16b82d9), SkBits2Float(0xc2973524), SkBits2Float(0xc23adb29), SkBits2Float(0xc24965c6), SkBits2Float(0xc283f801)); 4612 path.lineTo(SkBits2Float(0xc21196ae), SkBits2Float(0xc23ecc58)); 4613 path.cubicTo(SkBits2Float(0xc25a9cfe), SkBits2Float(0xc20713a1), SkBits2Float(0xc27d6da1), SkBits2Float(0xc12a3fcc), SkBits2Float(0xc26b41bb), SkBits2Float(0x413de9a9)); 4614 path.cubicTo(SkBits2Float(0xc25915d3), SkBits2Float(0x420984c8), SkBits2Float(0xc2151d75), SkBits2Float(0x42514a1b), SkBits2Float(0xc170c819), SkBits2Float(0x4268540a)); 4615 path.cubicTo(SkBits2Float(0x40e5cb46), SkBits2Float(0x427f5dfa), SkBits2Float(0x41f5fd0c), SkBits2Float(0x4261a1d8), SkBits2Float(0x42369a4a), SkBits2Float(0x421bbe87)); 4616 path.lineTo(SkBits2Float(0x427c99ad), SkBits2Float(0x4257723e)); 4617 path.close(); 4618 4619 SkPath path2(path); 4620 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4621 } 4622 // op end success 1 4623 4624 static void battleOp170(skiatest::Reporter* reporter, const char* filename) { 4625 SkPath path; 4626 path.setFillType((SkPath::FillType) 0); 4627 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4628 path.cubicTo(SkBits2Float(0x41ef3488), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4265f5fc), SkBits2Float(0xc285d5a4), SkBits2Float(0x429072a6), SkBits2Float(0xc2239841)); 4629 path.cubicTo(SkBits2Float(0x42adea4e), SkBits2Float(0xc16e14e5), SkBits2Float(0x42ad1da2), SkBits2Float(0x41886b20), SkBits2Float(0x428e5adb), SkBits2Float(0x422ac68e)); 4630 path.lineTo(SkBits2Float(0x424dd078), SkBits2Float(0x41f6e790)); 4631 path.cubicTo(SkBits2Float(0x427a49b4), SkBits2Float(0x41453b4b), SkBits2Float(0x427b719d), SkBits2Float(0xc12c1b6e), SkBits2Float(0x4250d71f), SkBits2Float(0xc1ec85c5)); 4632 path.cubicTo(SkBits2Float(0x42263ca0), SkBits2Float(0xc2417eea), SkBits2Float(0x41aceb63), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 4633 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4634 path.close(); 4635 4636 SkPath path1(path); 4637 path.reset(); 4638 path.setFillType((SkPath::FillType) 0); 4639 path.moveTo(SkBits2Float(0x428e5adb), SkBits2Float(0x422ac690)); 4640 path.cubicTo(SkBits2Float(0x42885732), SkBits2Float(0x423ed443), SkBits2Float(0x428148a8), SkBits2Float(0x42518e43), SkBits2Float(0x42729aa0), SkBits2Float(0x4262a4bd)); 4641 path.lineTo(SkBits2Float(0x422f605c), SkBits2Float(0x4223d6b5)); 4642 path.cubicTo(SkBits2Float(0x423aea98), SkBits2Float(0x42177c70), SkBits2Float(0x42451e76), SkBits2Float(0x4209f2e4), SkBits2Float(0x424dd078), SkBits2Float(0x41f6e792)); 4643 path.lineTo(SkBits2Float(0x428e5adb), SkBits2Float(0x422ac690)); 4644 path.close(); 4645 4646 SkPath path2(path); 4647 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4648 } 4649 // op end success 1 4650 4651 static void battleOp171(skiatest::Reporter* reporter, const char* filename) { 4652 SkPath path; 4653 path.setFillType((SkPath::FillType) 1); 4654 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 4655 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4656 path.cubicTo(SkBits2Float(0x41ef3488), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4265f5fc), SkBits2Float(0xc285d5a4), SkBits2Float(0x429072a6), SkBits2Float(0xc2239841)); 4657 path.cubicTo(SkBits2Float(0x42adea4e), SkBits2Float(0xc16e14e5), SkBits2Float(0x42ad1da2), SkBits2Float(0x41886b20), SkBits2Float(0x428e5adb), SkBits2Float(0x422ac690)); 4658 path.cubicTo(SkBits2Float(0x42885732), SkBits2Float(0x423ed443), SkBits2Float(0x428148a8), SkBits2Float(0x42518e43), SkBits2Float(0x42729aa0), SkBits2Float(0x4262a4bd)); 4659 path.lineTo(SkBits2Float(0x422f605c), SkBits2Float(0x4223d6b5)); 4660 path.cubicTo(SkBits2Float(0x423aea98), SkBits2Float(0x42177c70), SkBits2Float(0x42451e76), SkBits2Float(0x4209f2e4), SkBits2Float(0x424dd078), SkBits2Float(0x41f6e790)); 4661 path.cubicTo(SkBits2Float(0x427a49b4), SkBits2Float(0x41453b4b), SkBits2Float(0x427b719d), SkBits2Float(0xc12c1b6e), SkBits2Float(0x4250d71f), SkBits2Float(0xc1ec85c5)); 4662 path.cubicTo(SkBits2Float(0x42263ca0), SkBits2Float(0xc2417eea), SkBits2Float(0x41aceb63), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 4663 path.close(); 4664 4665 SkPath path1(path); 4666 path.reset(); 4667 path.setFillType((SkPath::FillType) 0); 4668 path.moveTo(SkBits2Float(0x42729aa1), SkBits2Float(0x4262a4be)); 4669 path.cubicTo(SkBits2Float(0x421a0aa1), SkBits2Float(0x42a0b8ab), SkBits2Float(0x4092ff14), SkBits2Float(0x42b1fc82), SkBits2Float(0xc1d17709), SkBits2Float(0x429d861f)); 4670 path.cubicTo(SkBits2Float(0xc263d6eb), SkBits2Float(0x42890fbc), SkBits2Float(0xc29dea71), SkBits2Float(0x42253dbf), SkBits2Float(0xc2a5016a), SkBits2Float(0x4111261a)); 4671 path.cubicTo(SkBits2Float(0xc2ac1862), SkBits2Float(0xc1b95567), SkBits2Float(0xc28cface), SkBits2Float(0xc25a1117), SkBits2Float(0xc22aafa6), SkBits2Float(0xc28e61ba)); 4672 path.lineTo(SkBits2Float(0xc1f6c679), SkBits2Float(0xc24dda63)); 4673 path.cubicTo(SkBits2Float(0xc24bd376), SkBits2Float(0xc21da377), SkBits2Float(0xc278cff1), SkBits2Float(0xc185f9db), SkBits2Float(0xc26e8fe1), SkBits2Float(0x40d1da84)); 4674 path.cubicTo(SkBits2Float(0xc2644fd1), SkBits2Float(0x41eee71d), SkBits2Float(0xc224b3fc), SkBits2Float(0x4246293b), SkBits2Float(0xc1976b90), SkBits2Float(0x4263becd)); 4675 path.cubicTo(SkBits2Float(0x405486c0), SkBits2Float(0x4280aa2f), SkBits2Float(0x41deb5f2), SkBits2Float(0x42685e3e), SkBits2Float(0x422f605e), SkBits2Float(0x4223d6b6)); 4676 path.lineTo(SkBits2Float(0x42729aa1), SkBits2Float(0x4262a4be)); 4677 path.close(); 4678 4679 SkPath path2(path); 4680 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4681 } 4682 // op end success 1 4683 4684 static void battleOp172(skiatest::Reporter* reporter, const char* filename) { 4685 SkPath path; 4686 path.setFillType((SkPath::FillType) 0); 4687 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4688 path.cubicTo(SkBits2Float(0x41f30c96), SkBits2Float(0xc2a60000), SkBits2Float(0x426956a5), SkBits2Float(0xc284cd4a), SkBits2Float(0x4291c05e), SkBits2Float(0xc21ee718)); 4689 path.cubicTo(SkBits2Float(0x42aed56a), SkBits2Float(0xc150ce71), SkBits2Float(0x42ac7181), SkBits2Float(0x419b8107), SkBits2Float(0x428b8516), SkBits2Float(0x4233e422)); 4690 path.lineTo(SkBits2Float(0x4249b729), SkBits2Float(0x42020ab3)); 4691 path.cubicTo(SkBits2Float(0x427950d3), SkBits2Float(0x4160d339), SkBits2Float(0x427cc584), SkBits2Float(0xc116f1c4), SkBits2Float(0x4252b998), SkBits2Float(0xc1e5bd26)); 4692 path.cubicTo(SkBits2Float(0x4228adad), SkBits2Float(0xc24000b5), SkBits2Float(0x41afb2be), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 4693 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4694 path.close(); 4695 4696 SkPath path1(path); 4697 path.reset(); 4698 path.setFillType((SkPath::FillType) 0); 4699 path.moveTo(SkBits2Float(0x428b8516), SkBits2Float(0x4233e422)); 4700 path.cubicTo(SkBits2Float(0x4285165c), SkBits2Float(0x4247d8d0), SkBits2Float(0x427b34bd), SkBits2Float(0x425a5d74), SkBits2Float(0x426a6401), SkBits2Float(0x426b20b1)); 4701 path.lineTo(SkBits2Float(0x42297063), SkBits2Float(0x4229f8c9)); 4702 path.cubicTo(SkBits2Float(0x42359840), SkBits2Float(0x421ddab1), SkBits2Float(0x42406a5a), SkBits2Float(0x421077b9), SkBits2Float(0x4249b72b), SkBits2Float(0x42020ab4)); 4703 path.lineTo(SkBits2Float(0x428b8516), SkBits2Float(0x4233e422)); 4704 path.close(); 4705 4706 SkPath path2(path); 4707 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4708 } 4709 // op end success 1 4710 4711 static void battleOp173(skiatest::Reporter* reporter, const char* filename) { 4712 SkPath path; 4713 path.setFillType((SkPath::FillType) 1); 4714 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4715 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4716 path.cubicTo(SkBits2Float(0x41f30c96), SkBits2Float(0xc2a60000), SkBits2Float(0x426956a5), SkBits2Float(0xc284cd4a), SkBits2Float(0x4291c05e), SkBits2Float(0xc21ee718)); 4717 path.cubicTo(SkBits2Float(0x42aed56a), SkBits2Float(0xc150ce71), SkBits2Float(0x42ac7181), SkBits2Float(0x419b8107), SkBits2Float(0x428b8516), SkBits2Float(0x4233e422)); 4718 path.cubicTo(SkBits2Float(0x4285165c), SkBits2Float(0x4247d8d0), SkBits2Float(0x427b34bd), SkBits2Float(0x425a5d74), SkBits2Float(0x426a6401), SkBits2Float(0x426b20b1)); 4719 path.lineTo(SkBits2Float(0x42297063), SkBits2Float(0x4229f8c9)); 4720 path.cubicTo(SkBits2Float(0x42359840), SkBits2Float(0x421ddab1), SkBits2Float(0x42406a5a), SkBits2Float(0x421077b9), SkBits2Float(0x4249b72b), SkBits2Float(0x42020ab4)); 4721 path.lineTo(SkBits2Float(0x4249b729), SkBits2Float(0x42020ab3)); 4722 path.cubicTo(SkBits2Float(0x427950d3), SkBits2Float(0x4160d339), SkBits2Float(0x427cc584), SkBits2Float(0xc116f1c4), SkBits2Float(0x4252b998), SkBits2Float(0xc1e5bd26)); 4723 path.cubicTo(SkBits2Float(0x4228adad), SkBits2Float(0xc24000b5), SkBits2Float(0x41afb2be), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4724 path.close(); 4725 4726 SkPath path1(path); 4727 path.reset(); 4728 path.setFillType((SkPath::FillType) 0); 4729 path.moveTo(SkBits2Float(0x426a6401), SkBits2Float(0x426b20b0)); 4730 path.cubicTo(SkBits2Float(0x420d0644), SkBits2Float(0x42a419c2), SkBits2Float(0x3eb79d8f), SkBits2Float(0x42b29b69), SkBits2Float(0xc1f292a7), SkBits2Float(0x429a86c6)); 4731 path.cubicTo(SkBits2Float(0xc27401e4), SkBits2Float(0x42827223), SkBits2Float(0xc2a34d81), SkBits2Float(0x4210aea0), SkBits2Float(0xc2a5dfaf), SkBits2Float(0x404f3106)); 4732 path.cubicTo(SkBits2Float(0xc2a871dd), SkBits2Float(0xc1ed90fa), SkBits2Float(0xc283ccf3), SkBits2Float(0xc27113da), SkBits2Float(0xc21101fe), SkBits2Float(0xc2955440)); 4733 path.lineTo(SkBits2Float(0xc1d1a65c), SkBits2Float(0xc257e5c3)); 4734 path.cubicTo(SkBits2Float(0xc23e8e16), SkBits2Float(0xc22e45d9), SkBits2Float(0xc27388d2), SkBits2Float(0xc1abbc0d), SkBits2Float(0xc26fd138), SkBits2Float(0x4015c6fe)); 4735 path.cubicTo(SkBits2Float(0xc26c199f), SkBits2Float(0x41d12dcc), SkBits2Float(0xc2306400), SkBits2Float(0x423c98a5), SkBits2Float(0xc1af5a7e), SkBits2Float(0x425f695f)); 4736 path.cubicTo(SkBits2Float(0x3e84bf70), SkBits2Float(0x42811d0c), SkBits2Float(0x41cbe40c), SkBits2Float(0x426d40fa), SkBits2Float(0x42297064), SkBits2Float(0x4229f8cc)); 4737 path.lineTo(SkBits2Float(0x426a6401), SkBits2Float(0x426b20b0)); 4738 path.close(); 4739 4740 SkPath path2(path); 4741 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4742 } 4743 // op end success 1 4744 4745 static void battleOp174(skiatest::Reporter* reporter, const char* filename) { 4746 SkPath path; 4747 path.setFillType((SkPath::FillType) 0); 4748 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4749 path.cubicTo(SkBits2Float(0x41f67553), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426c5214), SkBits2Float(0xc283df7d), SkBits2Float(0x4292df93), SkBits2Float(0xc21ab724)); 4750 path.cubicTo(SkBits2Float(0x42af961c), SkBits2Float(0xc136bd38), SkBits2Float(0x42abbe10), SkBits2Float(0x41ac5dd5), SkBits2Float(0x4288e395), SkBits2Float(0x423bcd53)); 4751 path.lineTo(SkBits2Float(0x4245e96c), SkBits2Float(0x4207c2b1)); 4752 path.cubicTo(SkBits2Float(0x42784d66), SkBits2Float(0x41793464), SkBits2Float(0x427ddc1f), SkBits2Float(0xc10419c2), SkBits2Float(0x425458d8), SkBits2Float(0xc1dfaf58)); 4753 path.cubicTo(SkBits2Float(0x422ad590), SkBits2Float(0xc23ea8e8), SkBits2Float(0x41b229a4), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 4754 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4755 path.close(); 4756 4757 SkPath path1(path); 4758 path.reset(); 4759 path.setFillType((SkPath::FillType) 0); 4760 path.moveTo(SkBits2Float(0x4288e396), SkBits2Float(0x423bcd52)); 4761 path.cubicTo(SkBits2Float(0x42821571), SkBits2Float(0x424fa4b8), SkBits2Float(0x427470be), SkBits2Float(0x4261f24c), SkBits2Float(0x4262dfb6), SkBits2Float(0x4272637b)); 4762 path.lineTo(SkBits2Float(0x42240156), SkBits2Float(0x422f387f)); 4763 path.cubicTo(SkBits2Float(0x4230b436), SkBits2Float(0x422355b8), SkBits2Float(0x423c12ab), SkBits2Float(0x42161a8d), SkBits2Float(0x4245e96e), SkBits2Float(0x4207c2b2)); 4764 path.lineTo(SkBits2Float(0x4288e396), SkBits2Float(0x423bcd52)); 4765 path.close(); 4766 4767 SkPath path2(path); 4768 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4769 } 4770 // op end success 1 4771 4772 static void battleOp175(skiatest::Reporter* reporter, const char* filename) { 4773 SkPath path; 4774 path.setFillType((SkPath::FillType) 1); 4775 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4776 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4777 path.cubicTo(SkBits2Float(0x41f67553), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426c5214), SkBits2Float(0xc283df7d), SkBits2Float(0x4292df93), SkBits2Float(0xc21ab724)); 4778 path.cubicTo(SkBits2Float(0x42af961c), SkBits2Float(0xc136bd38), SkBits2Float(0x42abbe10), SkBits2Float(0x41ac5dd5), SkBits2Float(0x4288e396), SkBits2Float(0x423bcd52)); 4779 path.cubicTo(SkBits2Float(0x42821571), SkBits2Float(0x424fa4b8), SkBits2Float(0x427470be), SkBits2Float(0x4261f24c), SkBits2Float(0x4262dfb6), SkBits2Float(0x4272637b)); 4780 path.lineTo(SkBits2Float(0x42240156), SkBits2Float(0x422f387f)); 4781 path.cubicTo(SkBits2Float(0x4230b436), SkBits2Float(0x422355b8), SkBits2Float(0x423c12ab), SkBits2Float(0x42161a8d), SkBits2Float(0x4245e96e), SkBits2Float(0x4207c2b2)); 4782 path.lineTo(SkBits2Float(0x4245e96c), SkBits2Float(0x4207c2b1)); 4783 path.cubicTo(SkBits2Float(0x42784d66), SkBits2Float(0x41793464), SkBits2Float(0x427ddc1f), SkBits2Float(0xc10419c2), SkBits2Float(0x425458d8), SkBits2Float(0xc1dfaf58)); 4784 path.cubicTo(SkBits2Float(0x422ad590), SkBits2Float(0xc23ea8e8), SkBits2Float(0x41b229a4), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 4785 path.close(); 4786 4787 SkPath path1(path); 4788 path.reset(); 4789 path.setFillType((SkPath::FillType) 0); 4790 path.moveTo(SkBits2Float(0x4262dfb7), SkBits2Float(0x4272637c)); 4791 path.cubicTo(SkBits2Float(0x4201435c), SkBits2Float(0x42a6e035), SkBits2Float(0xc05a052a), SkBits2Float(0x42b2d330), SkBits2Float(0xc207a774), SkBits2Float(0x429782c3)); 4792 path.cubicTo(SkBits2Float(0xc280d74a), SkBits2Float(0x427864aa), SkBits2Float(0xc2a78489), SkBits2Float(0x41fbcc10), SkBits2Float(0xc2a5f467), SkBits2Float(0xbff86670)); 4793 path.cubicTo(SkBits2Float(0xc2a46445), SkBits2Float(0xc20d6c6d), SkBits2Float(0xc275c9b5), SkBits2Float(0xc2821580), SkBits2Float(0xc1f2ade6), SkBits2Float(0xc29a8413)); 4794 path.lineTo(SkBits2Float(0xc1af6e4e), SkBits2Float(0xc25f6582)); 4795 path.cubicTo(SkBits2Float(0xc231ad90), SkBits2Float(0xc23c12bd), SkBits2Float(0xc26dacb3), SkBits2Float(0xc1cc77b7), SkBits2Float(0xc26fef30), SkBits2Float(0xbfb390a5)); 4796 path.cubicTo(SkBits2Float(0xc27231ae), SkBits2Float(0x41b605a0), SkBits2Float(0xc23a46a0), SkBits2Float(0x42338faf), SkBits2Float(0xc1c42047), SkBits2Float(0x425b0d36)); 4797 path.cubicTo(SkBits2Float(0xc01d9a6d), SkBits2Float(0x4281455e), SkBits2Float(0x41bae2f1), SkBits2Float(0x42714420), SkBits2Float(0x42240157), SkBits2Float(0x422f387f)); 4798 path.lineTo(SkBits2Float(0x4262dfb7), SkBits2Float(0x4272637c)); 4799 path.close(); 4800 4801 SkPath path2(path); 4802 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4803 } 4804 // op end success 1 4805 4806 static void battleOp176(skiatest::Reporter* reporter, const char* filename) { 4807 SkPath path; 4808 path.setFillType((SkPath::FillType) 0); 4809 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4810 path.cubicTo(SkBits2Float(0x41f9cdf3), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426f3c43), SkBits2Float(0xc282f30b), SkBits2Float(0x4293f176), SkBits2Float(0xc2169536)); 4811 path.cubicTo(SkBits2Float(0x42b044ca), SkBits2Float(0xc11d115b), SkBits2Float(0x42aaf59e), SkBits2Float(0x41bcd986), SkBits2Float(0x428633ff), SkBits2Float(0x42436703)); 4812 path.lineTo(SkBits2Float(0x42420751), SkBits2Float(0x420d4138)); 4813 path.cubicTo(SkBits2Float(0x42772b98), SkBits2Float(0x41888496), SkBits2Float(0x427ed8af), SkBits2Float(0xc0e315f7), SkBits2Float(0x4255e4d4), SkBits2Float(0xc1d9b5cc)); 4814 path.cubicTo(SkBits2Float(0x422cf0fb), SkBits2Float(0xc23d530d), SkBits2Float(0x41b494e9), SkBits2Float(0xc2700000), SkBits2Float(0x3743ffa9), SkBits2Float(0xc2700000)); 4815 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4816 path.close(); 4817 4818 SkPath path1(path); 4819 path.reset(); 4820 path.setFillType((SkPath::FillType) 0); 4821 path.moveTo(SkBits2Float(0x428633ff), SkBits2Float(0x42436705)); 4822 path.cubicTo(SkBits2Float(0x427e0fd0), SkBits2Float(0x42571b29), SkBits2Float(0x426d975d), SkBits2Float(0x42692b9b), SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c1)); 4823 path.lineTo(SkBits2Float(0x421e8652), SkBits2Float(0x423431b3)); 4824 path.cubicTo(SkBits2Float(0x422bc0b3), SkBits2Float(0x42288e8e), SkBits2Float(0x4237a8bb), SkBits2Float(0x421b7f95), SkBits2Float(0x42420752), SkBits2Float(0x420d4138)); 4825 path.lineTo(SkBits2Float(0x428633ff), SkBits2Float(0x42436705)); 4826 path.close(); 4827 4828 SkPath path2(path); 4829 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4830 } 4831 // op end success 1 4832 4833 static void battleOp177(skiatest::Reporter* reporter, const char* filename) { 4834 SkPath path; 4835 path.setFillType((SkPath::FillType) 1); 4836 path.moveTo(SkBits2Float(0x3743ffa9), SkBits2Float(0xc2700000)); 4837 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4838 path.cubicTo(SkBits2Float(0x41f9cdf3), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426f3c43), SkBits2Float(0xc282f30b), SkBits2Float(0x4293f176), SkBits2Float(0xc2169536)); 4839 path.cubicTo(SkBits2Float(0x42b044ca), SkBits2Float(0xc11d115b), SkBits2Float(0x42aaf59e), SkBits2Float(0x41bcd986), SkBits2Float(0x428633ff), SkBits2Float(0x42436705)); 4840 path.cubicTo(SkBits2Float(0x427e0fd0), SkBits2Float(0x42571b29), SkBits2Float(0x426d975d), SkBits2Float(0x42692b9b), SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c1)); 4841 path.lineTo(SkBits2Float(0x421e8652), SkBits2Float(0x423431b3)); 4842 path.cubicTo(SkBits2Float(0x422bc0b3), SkBits2Float(0x42288e8e), SkBits2Float(0x4237a8bb), SkBits2Float(0x421b7f95), SkBits2Float(0x42420751), SkBits2Float(0x420d4138)); 4843 path.cubicTo(SkBits2Float(0x42772b98), SkBits2Float(0x41888496), SkBits2Float(0x427ed8af), SkBits2Float(0xc0e315f7), SkBits2Float(0x4255e4d4), SkBits2Float(0xc1d9b5cc)); 4844 path.cubicTo(SkBits2Float(0x422cf0fb), SkBits2Float(0xc23d530d), SkBits2Float(0x41b494e9), SkBits2Float(0xc2700000), SkBits2Float(0x3743ffa9), SkBits2Float(0xc2700000)); 4845 path.close(); 4846 4847 SkPath path1(path); 4848 path.reset(); 4849 path.setFillType((SkPath::FillType) 0); 4850 path.moveTo(SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c0)); 4851 path.cubicTo(SkBits2Float(0x41eb12b8), SkBits2Float(0x42a964d5), SkBits2Float(0xc0e3546a), SkBits2Float(0x42b2bc1c), SkBits2Float(0xc2157060), SkBits2Float(0x42943ba4)); 4852 path.cubicTo(SkBits2Float(0xc2873b19), SkBits2Float(0x426b7658), SkBits2Float(0xc2ab209f), SkBits2Float(0x41d60b1d), SkBits2Float(0xc2a5685b), SkBits2Float(0xc0e02f3c)); 4853 path.cubicTo(SkBits2Float(0xc29fb018), SkBits2Float(0xc223115c), SkBits2Float(0xc263001e), SkBits2Float(0xc28acd07), SkBits2Float(0xc1c2e1a0), SkBits2Float(0xc29eb07c)); 4854 path.lineTo(SkBits2Float(0xc18ce0d1), SkBits2Float(0xc2656e32)); 4855 path.cubicTo(SkBits2Float(0xc22418c2), SkBits2Float(0xc248ad0a), SkBits2Float(0xc266dfbc), SkBits2Float(0xc1ebc2b6), SkBits2Float(0xc26f24bb), SkBits2Float(0xc0a20f94)); 4856 path.cubicTo(SkBits2Float(0xc27769ba), SkBits2Float(0x419abaee), SkBits2Float(0xc24383ac), SkBits2Float(0x422a36b0), SkBits2Float(0xc1d80e5c), SkBits2Float(0x4256500a)); 4857 path.cubicTo(SkBits2Float(0xc0a45587), SkBits2Float(0x428134b2), SkBits2Float(0x41a9eeb8), SkBits2Float(0x4274e820), SkBits2Float(0x421e8655), SkBits2Float(0x423431b1)); 4858 path.lineTo(SkBits2Float(0x425b4ae0), SkBits2Float(0x427944c0)); 4859 path.close(); 4860 4861 SkPath path2(path); 4862 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4863 } 4864 // op end success 1 4865 4866 static void battleOp178(skiatest::Reporter* reporter, const char* filename) { 4867 SkPath path; 4868 path.setFillType((SkPath::FillType) 0); 4869 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4870 path.cubicTo(SkBits2Float(0x41fc5f30), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427176a0), SkBits2Float(0xc2823b95), SkBits2Float(0x4294be35), SkBits2Float(0xc21365c9)); 4871 path.cubicTo(SkBits2Float(0x42b0c118), SkBits2Float(0xc1095198), SkBits2Float(0x42aa4b8f), SkBits2Float(0x41c9721a), SkBits2Float(0x42841312), SkBits2Float(0x42491ec0)); 4872 path.lineTo(SkBits2Float(0x423ef37b), SkBits2Float(0x42116356)); 4873 path.cubicTo(SkBits2Float(0x427635bc), SkBits2Float(0x41919f96), SkBits2Float(0x427f8c66), SkBits2Float(0xc0c68887), SkBits2Float(0x42570cd6), SkBits2Float(0xc1d51ae4)); 4874 path.cubicTo(SkBits2Float(0x422e8d45), SkBits2Float(0xc23c49d3), SkBits2Float(0x41b66ffd), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc26fffff)); 4875 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4876 path.close(); 4877 4878 SkPath path1(path); 4879 path.reset(); 4880 path.setFillType((SkPath::FillType) 0); 4881 path.moveTo(SkBits2Float(0x42841313), SkBits2Float(0x42491ebf)); 4882 path.cubicTo(SkBits2Float(0x42793d8e), SkBits2Float(0x425cb36e), SkBits2Float(0x4268336d), SkBits2Float(0x426e9032), SkBits2Float(0x4255582b), SkBits2Float(0x427e60c5)); 4883 path.lineTo(SkBits2Float(0x421a3990), SkBits2Float(0x4237e342)); 4884 path.cubicTo(SkBits2Float(0x4227db27), SkBits2Float(0x422c7494), SkBits2Float(0x42342c7f), SkBits2Float(0x421f8af7), SkBits2Float(0x423ef37c), SkBits2Float(0x42116357)); 4885 path.lineTo(SkBits2Float(0x42841313), SkBits2Float(0x42491ebf)); 4886 path.close(); 4887 4888 SkPath path2(path); 4889 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4890 } 4891 // op end success 1 4892 4893 static void battleOp179(skiatest::Reporter* reporter, const char* filename) { 4894 SkPath path; 4895 path.setFillType((SkPath::FillType) 1); 4896 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc26fffff)); 4897 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4898 path.cubicTo(SkBits2Float(0x41fc5f30), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427176a0), SkBits2Float(0xc2823b95), SkBits2Float(0x4294be35), SkBits2Float(0xc21365c9)); 4899 path.cubicTo(SkBits2Float(0x42b0c118), SkBits2Float(0xc1095198), SkBits2Float(0x42aa4b8f), SkBits2Float(0x41c9721a), SkBits2Float(0x42841313), SkBits2Float(0x42491ebf)); 4900 path.cubicTo(SkBits2Float(0x42793d8e), SkBits2Float(0x425cb36e), SkBits2Float(0x4268336d), SkBits2Float(0x426e9032), SkBits2Float(0x4255582b), SkBits2Float(0x427e60c5)); 4901 path.lineTo(SkBits2Float(0x421a3990), SkBits2Float(0x4237e342)); 4902 path.cubicTo(SkBits2Float(0x4227db27), SkBits2Float(0x422c7494), SkBits2Float(0x42342c7f), SkBits2Float(0x421f8af7), SkBits2Float(0x423ef37b), SkBits2Float(0x42116356)); 4903 path.cubicTo(SkBits2Float(0x427635bc), SkBits2Float(0x41919f96), SkBits2Float(0x427f8c66), SkBits2Float(0xc0c68887), SkBits2Float(0x42570cd6), SkBits2Float(0xc1d51ae4)); 4904 path.cubicTo(SkBits2Float(0x422e8d45), SkBits2Float(0xc23c49d3), SkBits2Float(0x41b66ffd), SkBits2Float(0xc2700000), SkBits2Float(0xb7060057), SkBits2Float(0xc26fffff)); 4905 path.close(); 4906 4907 SkPath path1(path); 4908 path.reset(); 4909 path.setFillType((SkPath::FillType) 0); 4910 path.moveTo(SkBits2Float(0x4255582a), SkBits2Float(0x427e60c6)); 4911 path.cubicTo(SkBits2Float(0x41d8da26), SkBits2Float(0x42ab2f9f), SkBits2Float(0xc11f0392), SkBits2Float(0x42b2763a), SkBits2Float(0xc21fc8f1), SkBits2Float(0x4291829a)); 4912 path.cubicTo(SkBits2Float(0xc28be87e), SkBits2Float(0x42611df4), SkBits2Float(0xc2ad8941), SkBits2Float(0x41b88f93), SkBits2Float(0xc2a49219), SkBits2Float(0xc12de56c)); 4913 path.cubicTo(SkBits2Float(0xc29b9af2), SkBits2Float(0xc2333a80), SkBits2Float(0xc253c58e), SkBits2Float(0xc2910614), SkBits2Float(0xc19d7dc6), SkBits2Float(0xc2a14359)); 4914 path.lineTo(SkBits2Float(0xc163b2c9), SkBits2Float(0xc26926c4)); 4915 path.cubicTo(SkBits2Float(0xc2191685), SkBits2Float(0xc251ac40), SkBits2Float(0xc260f8ae), SkBits2Float(0xc201900e), SkBits2Float(0xc26deef7), SkBits2Float(0xc0fb6a70)); 4916 path.cubicTo(SkBits2Float(0xc27ae541), SkBits2Float(0x41856ae3), SkBits2Float(0xc24a46d8), SkBits2Float(0x4222bc35), SkBits2Float(0xc1e7039a), SkBits2Float(0x42526049)); 4917 path.cubicTo(SkBits2Float(0xc0e5e60c), SkBits2Float(0x4281022e), SkBits2Float(0x419cc2c4), SkBits2Float(0x42777f70), SkBits2Float(0x421a3996), SkBits2Float(0x4237e33e)); 4918 path.lineTo(SkBits2Float(0x4255582a), SkBits2Float(0x427e60c6)); 4919 path.close(); 4920 4921 SkPath path2(path); 4922 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4923 } 4924 // op end success 1 4925 4926 static void battleOp180(skiatest::Reporter* reporter, const char* filename) { 4927 SkPath path; 4928 path.setFillType((SkPath::FillType) 0); 4929 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4930 path.cubicTo(SkBits2Float(0x41fed5d1), SkBits2Float(0xc2a60000), SkBits2Float(0x4273981d), SkBits2Float(0xc28189e8), SkBits2Float(0x42957e40), SkBits2Float(0xc210547e)); 4931 path.cubicTo(SkBits2Float(0x42b13073), SkBits2Float(0xc0eca961), SkBits2Float(0x42a99b35), SkBits2Float(0x41d57c6c), SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d3)); 4932 path.lineTo(SkBits2Float(0x423beb8b), SkBits2Float(0x421548fc)); 4933 path.cubicTo(SkBits2Float(0x427536c2), SkBits2Float(0x419a53c7), SkBits2Float(0x428016af), SkBits2Float(0xc0ab14a9), SkBits2Float(0x4258227d), SkBits2Float(0xc1d0ab83)); 4934 path.cubicTo(SkBits2Float(0x4230179a), SkBits2Float(0xc23b48ee), SkBits2Float(0x41b837da), SkBits2Float(0xc2700002), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 4935 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4936 path.close(); 4937 4938 SkPath path1(path); 4939 path.reset(); 4940 path.setFillType((SkPath::FillType) 0); 4941 path.moveTo(SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d5)); 4942 path.cubicTo(SkBits2Float(0x4274817d), SkBits2Float(0x4261f5b7), SkBits2Float(0x4262ebfa), SkBits2Float(0x42739d02), SkBits2Float(0x424f88b8), SkBits2Float(0x428191ef)); 4943 path.lineTo(SkBits2Float(0x4216064f), SkBits2Float(0x423b5489)); 4944 path.cubicTo(SkBits2Float(0x42240a35), SkBits2Float(0x42301b25), SkBits2Float(0x4230c051), SkBits2Float(0x4223582f), SkBits2Float(0x423beb8c), SkBits2Float(0x421548fc)); 4945 path.lineTo(SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d5)); 4946 path.close(); 4947 4948 SkPath path2(path); 4949 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4950 } 4951 // op end success 1 4952 4953 static void battleOp181(skiatest::Reporter* reporter, const char* filename) { 4954 if (!FLAGS_runFail) { 4955 return; // draws wrong 4956 } 4957 SkPath path; 4958 path.setFillType((SkPath::FillType) 1); 4959 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 4960 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 4961 path.cubicTo(SkBits2Float(0x41fed5d1), SkBits2Float(0xc2a60000), SkBits2Float(0x4273981d), SkBits2Float(0xc28189e8), SkBits2Float(0x42957e40), SkBits2Float(0xc210547e)); 4962 path.cubicTo(SkBits2Float(0x42b13073), SkBits2Float(0xc0eca961), SkBits2Float(0x42a99b35), SkBits2Float(0x41d57c6c), SkBits2Float(0x4281fa62), SkBits2Float(0x424e82d5)); 4963 path.cubicTo(SkBits2Float(0x4274817d), SkBits2Float(0x4261f5b7), SkBits2Float(0x4262ebfa), SkBits2Float(0x42739d02), SkBits2Float(0x424f88b8), SkBits2Float(0x428191ef)); 4964 path.lineTo(SkBits2Float(0x4216064f), SkBits2Float(0x423b5489)); 4965 path.cubicTo(SkBits2Float(0x42240a35), SkBits2Float(0x42301b25), SkBits2Float(0x4230c051), SkBits2Float(0x4223582f), SkBits2Float(0x423beb8b), SkBits2Float(0x421548fc)); 4966 path.cubicTo(SkBits2Float(0x427536c2), SkBits2Float(0x419a53c7), SkBits2Float(0x428016af), SkBits2Float(0xc0ab14a9), SkBits2Float(0x4258227d), SkBits2Float(0xc1d0ab83)); 4967 path.cubicTo(SkBits2Float(0x4230179a), SkBits2Float(0xc23b48ee), SkBits2Float(0x41b837da), SkBits2Float(0xc2700002), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 4968 path.close(); 4969 4970 SkPath path1(path); 4971 path.reset(); 4972 path.setFillType((SkPath::FillType) 0); 4973 path.moveTo(SkBits2Float(0x424f88ba), SkBits2Float(0x428191f0)); 4974 path.cubicTo(SkBits2Float(0x41c732b7), SkBits2Float(0x42acca52), SkBits2Float(0xc14a7268), SkBits2Float(0x42b208b4), SkBits2Float(0xc22982dc), SkBits2Float(0x428ebb75)); 4975 path.cubicTo(SkBits2Float(0xc2903490), SkBits2Float(0x4256dc6c), SkBits2Float(0xc2af8c6f), SkBits2Float(0x419be833), SkBits2Float(0xc2a36e37), SkBits2Float(0xc168c0a6)); 4976 path.cubicTo(SkBits2Float(0xc2974fff), SkBits2Float(0xc242546a), SkBits2Float(0xc2448acf), SkBits2Float(0xc29698ac), SkBits2Float(0xc17253d7), SkBits2Float(0xc2a33682)); 4977 path.lineTo(SkBits2Float(0xc12f2d38), SkBits2Float(0xc26bf872)); 4978 path.cubicTo(SkBits2Float(0xc20e1427), SkBits2Float(0xc259bacc), SkBits2Float(0xc25ac3d7), SkBits2Float(0xc20c7ab2), SkBits2Float(0xc26c48f7), SkBits2Float(0xc1284130)); 4979 path.cubicTo(SkBits2Float(0xc27dce17), SkBits2Float(0x41616864), SkBits2Float(0xc2507d50), SkBits2Float(0x421b5239), SkBits2Float(0xc1f51386), SkBits2Float(0x424e5c1e)); 4980 path.cubicTo(SkBits2Float(0xc11258cd), SkBits2Float(0x4280b301), SkBits2Float(0x418fffac), SkBits2Float(0x4279d13a), SkBits2Float(0x42160652), SkBits2Float(0x423b5488)); 4981 path.lineTo(SkBits2Float(0x424f88ba), SkBits2Float(0x428191f0)); 4982 path.close(); 4983 4984 SkPath path2(path); 4985 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 4986 } 4987 // op end success 1 4988 4989 static void battleOp182(skiatest::Reporter* reporter, const char* filename) { 4990 SkPath path; 4991 path.setFillType((SkPath::FillType) 0); 4992 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4993 path.cubicTo(SkBits2Float(0x420048ef), SkBits2Float(0xc2a60000), SkBits2Float(0x4275172d), SkBits2Float(0xc2810bd2), SkBits2Float(0x429602e3), SkBits2Float(0xc20e29dc)); 4994 path.cubicTo(SkBits2Float(0x42b17a30), SkBits2Float(0xc0d1e0a1), SkBits2Float(0x42a9174e), SkBits2Float(0x41ddef9e), SkBits2Float(0x4280787d), SkBits2Float(0x4252400e)); 4995 path.lineTo(SkBits2Float(0x4239bd9f), SkBits2Float(0x4217fcf6)); 4996 path.cubicTo(SkBits2Float(0x4274780f), SkBits2Float(0x41a06f8c), SkBits2Float(0x42804bfe), SkBits2Float(0xc097b7f0), SkBits2Float(0x4258e240), SkBits2Float(0xc1cd899e)); 4997 path.cubicTo(SkBits2Float(0x42312c84), SkBits2Float(0xc23a929f), SkBits2Float(0x41b978e3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 4998 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 4999 path.close(); 5000 5001 SkPath path1(path); 5002 path.reset(); 5003 path.setFillType((SkPath::FillType) 0); 5004 path.moveTo(SkBits2Float(0x4280787d), SkBits2Float(0x42524010)); 5005 path.cubicTo(SkBits2Float(0x42711c0e), SkBits2Float(0x42659909), SkBits2Float(0x425f24ad), SkBits2Float(0x42771864), SkBits2Float(0x424b624a), SkBits2Float(0x4283347a)); 5006 path.lineTo(SkBits2Float(0x42130648), SkBits2Float(0x423db1a5)); 5007 path.cubicTo(SkBits2Float(0x42214ef3), SkBits2Float(0x42329f82), SkBits2Float(0x422e4bcd), SkBits2Float(0x4225f96c), SkBits2Float(0x4239bd9f), SkBits2Float(0x4217fcf7)); 5008 path.lineTo(SkBits2Float(0x4280787d), SkBits2Float(0x42524010)); 5009 path.close(); 5010 5011 SkPath path2(path); 5012 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5013 } 5014 // op end success 1 5015 5016 static void battleOp183(skiatest::Reporter* reporter, const char* filename) { 5017 if (!FLAGS_runFail) { 5018 return; // draws wrong 5019 } 5020 SkPath path; 5021 path.setFillType((SkPath::FillType) 1); 5022 path.moveTo(SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 5023 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5024 path.cubicTo(SkBits2Float(0x420048ef), SkBits2Float(0xc2a60000), SkBits2Float(0x4275172d), SkBits2Float(0xc2810bd2), SkBits2Float(0x429602e3), SkBits2Float(0xc20e29dc)); 5025 path.cubicTo(SkBits2Float(0x42b17a30), SkBits2Float(0xc0d1e0a1), SkBits2Float(0x42a9174e), SkBits2Float(0x41ddef9e), SkBits2Float(0x4280787d), SkBits2Float(0x42524010)); 5026 path.cubicTo(SkBits2Float(0x42711c0e), SkBits2Float(0x42659909), SkBits2Float(0x425f24ad), SkBits2Float(0x42771864), SkBits2Float(0x424b624a), SkBits2Float(0x4283347a)); 5027 path.lineTo(SkBits2Float(0x42130648), SkBits2Float(0x423db1a5)); 5028 path.cubicTo(SkBits2Float(0x42214ef3), SkBits2Float(0x42329f82), SkBits2Float(0x422e4bcd), SkBits2Float(0x4225f96c), SkBits2Float(0x4239bd9f), SkBits2Float(0x4217fcf6)); 5029 path.cubicTo(SkBits2Float(0x4274780f), SkBits2Float(0x41a06f8c), SkBits2Float(0x42804bfe), SkBits2Float(0xc097b7f0), SkBits2Float(0x4258e240), SkBits2Float(0xc1cd899e)); 5030 path.cubicTo(SkBits2Float(0x42312c84), SkBits2Float(0xc23a929f), SkBits2Float(0x41b978e3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 5031 path.close(); 5032 5033 SkPath path1(path); 5034 path.reset(); 5035 path.setFillType((SkPath::FillType) 0); 5036 path.moveTo(SkBits2Float(0x424b624a), SkBits2Float(0x42833479)); 5037 path.cubicTo(SkBits2Float(0x41baac2f), SkBits2Float(0x42adda12), SkBits2Float(0xc168f6a7), SkBits2Float(0x42b1a2b3), SkBits2Float(0xc2303c92), SkBits2Float(0x428cae5c)); 5038 path.cubicTo(SkBits2Float(0xc2931dbe), SkBits2Float(0x424f7409), SkBits2Float(0xc2b0c9d8), SkBits2Float(0x41878abe), SkBits2Float(0xc2a26e7f), SkBits2Float(0xc188ef9a)); 5039 path.cubicTo(SkBits2Float(0xc2941327), SkBits2Float(0xc24cb4f5), SkBits2Float(0xc2397a7c), SkBits2Float(0xc29a4742), SkBits2Float(0xc13ec328), SkBits2Float(0xc2a44746)); 5040 path.lineTo(SkBits2Float(0xc109e67a), SkBits2Float(0xc26d82d0)); 5041 path.cubicTo(SkBits2Float(0xc20614b0), SkBits2Float(0xc25f0d94), SkBits2Float(0xc2561585), SkBits2Float(0xc213fb18), SkBits2Float(0xc26ad744), SkBits2Float(0xc145fabb)); 5042 path.cubicTo(SkBits2Float(0xc27f9901), SkBits2Float(0x4143f6e8), SkBits2Float(0xc254b2af), SkBits2Float(0x4215f75b), SkBits2Float(0xc1feccbb), SkBits2Float(0x424b64f3)); 5043 path.cubicTo(SkBits2Float(0xc128682f), SkBits2Float(0x42806945), SkBits2Float(0x4186f1ba), SkBits2Float(0x427b5a1e), SkBits2Float(0x4213064f), SkBits2Float(0x423db1a2)); 5044 path.lineTo(SkBits2Float(0x424b624a), SkBits2Float(0x42833479)); 5045 path.close(); 5046 5047 SkPath path2(path); 5048 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5049 } 5050 // op end success 1 5051 5052 static void battleOp184(skiatest::Reporter* reporter, const char* filename) { 5053 SkPath path; 5054 path.setFillType((SkPath::FillType) 0); 5055 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5056 path.cubicTo(SkBits2Float(0x42011b87), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427681ab), SkBits2Float(0xc280937a), SkBits2Float(0x42967eb3), SkBits2Float(0xc20c1a94)); 5057 path.cubicTo(SkBits2Float(0x42b1bc91), SkBits2Float(0xc0b87191), SkBits2Float(0x42a89454), SkBits2Float(0x41e5ed6f), SkBits2Float(0x427e0902), SkBits2Float(0x4255c0a2)); 5058 path.lineTo(SkBits2Float(0x4237a3d0), SkBits2Float(0x421a8517)); 5059 path.cubicTo(SkBits2Float(0x4273bab4), SkBits2Float(0x41a63674), SkBits2Float(0x42807bfc), SkBits2Float(0xc0855530), SkBits2Float(0x42599545), SkBits2Float(0xc1ca8f4f)); 5060 path.cubicTo(SkBits2Float(0x42323293), SkBits2Float(0xc239e4a8), SkBits2Float(0x41baa959), SkBits2Float(0xc2700002), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000)); 5061 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5062 path.close(); 5063 5064 SkPath path1(path); 5065 path.reset(); 5066 path.setFillType((SkPath::FillType) 0); 5067 path.moveTo(SkBits2Float(0x427e0901), SkBits2Float(0x4255c0a4)); 5068 path.cubicTo(SkBits2Float(0x426dd77c), SkBits2Float(0x4268ff65), SkBits2Float(0x425b838b), SkBits2Float(0x427a571f), SkBits2Float(0x42476779), SkBits2Float(0x4284b92f)); 5069 path.lineTo(SkBits2Float(0x421025c9), SkBits2Float(0x423fe3a3)); 5070 path.cubicTo(SkBits2Float(0x421eaf4b), SkBits2Float(0x4234f80b), SkBits2Float(0x422bef10), SkBits2Float(0x42286e9a), SkBits2Float(0x4237a3d2), SkBits2Float(0x421a8517)); 5071 path.lineTo(SkBits2Float(0x427e0901), SkBits2Float(0x4255c0a4)); 5072 path.close(); 5073 5074 SkPath path2(path); 5075 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5076 } 5077 // op end success 1 5078 5079 static void battleOp185(skiatest::Reporter* reporter, const char* filename) { 5080 SkPath path; 5081 path.setFillType((SkPath::FillType) 1); 5082 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 5083 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5084 path.cubicTo(SkBits2Float(0x42011b87), SkBits2Float(0xc2a5fffe), SkBits2Float(0x427681ab), SkBits2Float(0xc280937a), SkBits2Float(0x42967eb3), SkBits2Float(0xc20c1a94)); 5085 path.cubicTo(SkBits2Float(0x42b1bc91), SkBits2Float(0xc0b87191), SkBits2Float(0x42a89454), SkBits2Float(0x41e5ed6f), SkBits2Float(0x427e0902), SkBits2Float(0x4255c0a2)); 5086 path.lineTo(SkBits2Float(0x427e0901), SkBits2Float(0x4255c0a4)); 5087 path.cubicTo(SkBits2Float(0x426dd77c), SkBits2Float(0x4268ff65), SkBits2Float(0x425b838b), SkBits2Float(0x427a571f), SkBits2Float(0x42476779), SkBits2Float(0x4284b92f)); 5088 path.lineTo(SkBits2Float(0x421025c9), SkBits2Float(0x423fe3a3)); 5089 path.cubicTo(SkBits2Float(0x421eaf4b), SkBits2Float(0x4234f80b), SkBits2Float(0x422bef10), SkBits2Float(0x42286e9a), SkBits2Float(0x4237a3d2), SkBits2Float(0x421a8517)); 5090 path.lineTo(SkBits2Float(0x4237a3d0), SkBits2Float(0x421a8517)); 5091 path.cubicTo(SkBits2Float(0x4273bab4), SkBits2Float(0x41a63674), SkBits2Float(0x42807bfc), SkBits2Float(0xc0855530), SkBits2Float(0x42599545), SkBits2Float(0xc1ca8f4f)); 5092 path.cubicTo(SkBits2Float(0x42323293), SkBits2Float(0xc239e4a8), SkBits2Float(0x41baa959), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 5093 path.close(); 5094 5095 SkPath path1(path); 5096 path.reset(); 5097 path.setFillType((SkPath::FillType) 0); 5098 path.moveTo(SkBits2Float(0x42476779), SkBits2Float(0x4284b92f)); 5099 path.cubicTo(SkBits2Float(0x41aeb99d), SkBits2Float(0x42aece6d), SkBits2Float(0xc182ebc7), SkBits2Float(0x42b12f04), SkBits2Float(0xc236847b), SkBits2Float(0x428aaa1d)); 5100 path.cubicTo(SkBits2Float(0xc295c989), SkBits2Float(0x42484a6d), SkBits2Float(0xc2b1d401), SkBits2Float(0x41683386), SkBits2Float(0xc2a15607), SkBits2Float(0xc19c4a77)); 5101 path.cubicTo(SkBits2Float(0xc290d80f), SkBits2Float(0xc2565754), SkBits2Float(0xc22ebdc1), SkBits2Float(0xc29d94aa), SkBits2Float(0xc10da15c), SkBits2Float(0xc2a50da2)); 5102 path.lineTo(SkBits2Float(0xc0ccc448), SkBits2Float(0xc26ea197)); 5103 path.cubicTo(SkBits2Float(0xc1fca350), SkBits2Float(0xc263d3da), SkBits2Float(0xc25169ba), SkBits2Float(0xc21af203), SkBits2Float(0xc26941c7), SkBits2Float(0xc161f664)); 5104 path.cubicTo(SkBits2Float(0xc2808cea), SkBits2Float(0x4127db45), SkBits2Float(0xc2588f4e), SkBits2Float(0x4210c9da), SkBits2Float(0xc203f0b6), SkBits2Float(0x42487a91)); 5105 path.cubicTo(SkBits2Float(0xc13d487f), SkBits2Float(0x428015a4), SkBits2Float(0x417c9d5c), SkBits2Float(0x427cbb65), SkBits2Float(0x421025ca), SkBits2Float(0x423fe3a2)); 5106 path.lineTo(SkBits2Float(0x42476779), SkBits2Float(0x4284b92f)); 5107 path.close(); 5108 5109 SkPath path2(path); 5110 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5111 } 5112 // op end success 1 5113 5114 static void battleOp186(skiatest::Reporter* reporter, const char* filename) { 5115 SkPath path; 5116 path.setFillType((SkPath::FillType) 0); 5117 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5118 path.cubicTo(SkBits2Float(0x4201bd60), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427797bb), SkBits2Float(0xc2803682), SkBits2Float(0x4296dc8c), SkBits2Float(0xc20a848f)); 5119 path.cubicTo(SkBits2Float(0x42b1ed3b), SkBits2Float(0xc0a4e0c3), SkBits2Float(0x42a82bcd), SkBits2Float(0x41ec0db8), SkBits2Float(0x427bc56e), SkBits2Float(0x42586a20)); 5120 path.lineTo(SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc)); 5121 path.cubicTo(SkBits2Float(0x42732394), SkBits2Float(0x41aaa425), SkBits2Float(0x42809f29), SkBits2Float(0xc06e60a8), SkBits2Float(0x425a1cf3), SkBits2Float(0xc1c84447)); 5122 path.cubicTo(SkBits2Float(0x4232fb94), SkBits2Float(0xc2395e3c), SkBits2Float(0x41bb9357), SkBits2Float(0xc2700002), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 5123 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5124 path.close(); 5125 5126 SkPath path1(path); 5127 path.reset(); 5128 path.setFillType((SkPath::FillType) 0); 5129 path.moveTo(SkBits2Float(0x427bc56c), SkBits2Float(0x42586a22)); 5130 path.cubicTo(SkBits2Float(0x426b4cc6), SkBits2Float(0x426b93ad), SkBits2Float(0x4258b1e1), SkBits2Float(0x427ccbca), SkBits2Float(0x42445140), SkBits2Float(0x4285de6e)); 5131 path.lineTo(SkBits2Float(0x420dea8b), SkBits2Float(0x42418b9b)); 5132 path.cubicTo(SkBits2Float(0x421ca599), SkBits2Float(0x4236be7f), SkBits2Float(0x422a18a8), SkBits2Float(0x422a4be8), SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc)); 5133 path.lineTo(SkBits2Float(0x427bc56c), SkBits2Float(0x42586a22)); 5134 path.close(); 5135 5136 SkPath path2(path); 5137 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5138 } 5139 // op end success 1 5140 5141 static void battleOp187(skiatest::Reporter* reporter, const char* filename) { 5142 SkPath path; 5143 path.setFillType((SkPath::FillType) 1); 5144 path.moveTo(SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 5145 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5146 path.cubicTo(SkBits2Float(0x4201bd60), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427797bb), SkBits2Float(0xc2803682), SkBits2Float(0x4296dc8c), SkBits2Float(0xc20a848f)); 5147 path.cubicTo(SkBits2Float(0x42b1ed3b), SkBits2Float(0xc0a4e0c3), SkBits2Float(0x42a82bcd), SkBits2Float(0x41ec0db8), SkBits2Float(0x427bc56e), SkBits2Float(0x42586a20)); 5148 path.lineTo(SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc)); 5149 path.cubicTo(SkBits2Float(0x42732394), SkBits2Float(0x41aaa425), SkBits2Float(0x42809f29), SkBits2Float(0xc06e60a8), SkBits2Float(0x425a1cf3), SkBits2Float(0xc1c84447)); 5150 path.cubicTo(SkBits2Float(0x4232fb94), SkBits2Float(0xc2395e3c), SkBits2Float(0x41bb9357), SkBits2Float(0xc2700002), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 5151 path.close(); 5152 path.moveTo(SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc)); 5153 path.lineTo(SkBits2Float(0x427bc56c), SkBits2Float(0x42586a22)); 5154 path.cubicTo(SkBits2Float(0x426b4cc6), SkBits2Float(0x426b93ad), SkBits2Float(0x4258b1e1), SkBits2Float(0x427ccbca), SkBits2Float(0x42445140), SkBits2Float(0x4285de6e)); 5155 path.lineTo(SkBits2Float(0x420dea8b), SkBits2Float(0x42418b9b)); 5156 path.cubicTo(SkBits2Float(0x421ca599), SkBits2Float(0x4236be7f), SkBits2Float(0x422a18a8), SkBits2Float(0x422a4be8), SkBits2Float(0x423600d6), SkBits2Float(0x421c71bc)); 5157 path.close(); 5158 5159 SkPath path1(path); 5160 path.reset(); 5161 path.setFillType((SkPath::FillType) 0); 5162 path.moveTo(SkBits2Float(0x42445140), SkBits2Float(0x4285de6e)); 5163 path.cubicTo(SkBits2Float(0x41a5801a), SkBits2Float(0x42af8153), SkBits2Float(0xc18dfe3b), SkBits2Float(0x42b0c99d), SkBits2Float(0xc23b472e), SkBits2Float(0x42891183)); 5164 path.cubicTo(SkBits2Float(0xc297c79f), SkBits2Float(0x4242b2d1), SkBits2Float(0xc2b28961), SkBits2Float(0x414a2ba6), SkBits2Float(0xc2a0659f), SkBits2Float(0xc1ab0f22)); 5165 path.cubicTo(SkBits2Float(0xc28e41db), SkBits2Float(0xc25d9a0f), SkBits2Float(0xc2265613), SkBits2Float(0xc29ffd9f), SkBits2Float(0xc0cf8787), SkBits2Float(0xc2a57e12)); 5166 path.lineTo(SkBits2Float(0xc09605ca), SkBits2Float(0xc26f4428)); 5167 path.cubicTo(SkBits2Float(0xc1f07c7d), SkBits2Float(0xc2674fd1), SkBits2Float(0xc24dac50), SkBits2Float(0xc22031a9), SkBits2Float(0xc267e62b), SkBits2Float(0xc1775074)); 5168 path.cubicTo(SkBits2Float(0xc2811003), SkBits2Float(0x411225be), SkBits2Float(0xc25b70c1), SkBits2Float(0x420cbef2), SkBits2Float(0xc20761ad), SkBits2Float(0x42462bd0)); 5169 path.cubicTo(SkBits2Float(0xc14d4a68), SkBits2Float(0x427f98ac), SkBits2Float(0x416f472e), SkBits2Float(0x427dbe0b), SkBits2Float(0x420dea8f), SkBits2Float(0x42418b9b)); 5170 path.lineTo(SkBits2Float(0x42445140), SkBits2Float(0x4285de6e)); 5171 path.close(); 5172 5173 SkPath path2(path); 5174 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5175 } 5176 // op end success 1 5177 5178 static void battleOp188(skiatest::Reporter* reporter, const char* filename) { 5179 SkPath path; 5180 path.setFillType((SkPath::FillType) 0); 5181 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5182 path.cubicTo(SkBits2Float(0x42025498), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42789b1b), SkBits2Float(0xc27fbe84), SkBits2Float(0x42973334), SkBits2Float(0xc2090897)); 5183 path.cubicTo(SkBits2Float(0x42b218da), SkBits2Float(0xc092954a), SkBits2Float(0x42a7c71a), SkBits2Float(0x41f1c3b5), SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9)); 5184 path.lineTo(SkBits2Float(0x42347503), SkBits2Float(0x421e39ac)); 5185 path.cubicTo(SkBits2Float(0x427291fe), SkBits2Float(0x41aec4fe), SkBits2Float(0x4280beb1), SkBits2Float(0xc053ed89), SkBits2Float(0x425a9a3a), SkBits2Float(0xc1c61ef1)); 5186 path.cubicTo(SkBits2Float(0x4233b713), SkBits2Float(0xc238e018), SkBits2Float(0x41bc6df5), SkBits2Float(0xc2700002), SkBits2Float(0xb7240057), SkBits2Float(0xc2700000)); 5187 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5188 path.close(); 5189 5190 SkPath path1(path); 5191 path.reset(); 5192 path.setFillType((SkPath::FillType) 0); 5193 path.moveTo(SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9)); 5194 path.cubicTo(SkBits2Float(0x4268e6ce), SkBits2Float(0x426df5b7), SkBits2Float(0x425609c8), SkBits2Float(0x427f0f64), SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f)); 5195 path.lineTo(SkBits2Float(0x420bd0d2), SkBits2Float(0x42431170)); 5196 path.cubicTo(SkBits2Float(0x421ab9f8), SkBits2Float(0x4238617e), SkBits2Float(0x42285cd4), SkBits2Float(0x422c04e7), SkBits2Float(0x42347505), SkBits2Float(0x421e39ac)); 5197 path.lineTo(SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9)); 5198 path.close(); 5199 5200 SkPath path2(path); 5201 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5202 } 5203 // op end success 1 5204 5205 static void battleOp189(skiatest::Reporter* reporter, const char* filename) { 5206 SkPath path; 5207 path.setFillType((SkPath::FillType) 1); 5208 path.moveTo(SkBits2Float(0xb7240057), SkBits2Float(0xc2700000)); 5209 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5210 path.cubicTo(SkBits2Float(0x42025498), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42789b1b), SkBits2Float(0xc27fbe84), SkBits2Float(0x42973334), SkBits2Float(0xc2090897)); 5211 path.cubicTo(SkBits2Float(0x42b218da), SkBits2Float(0xc092954a), SkBits2Float(0x42a7c71a), SkBits2Float(0x41f1c3b5), SkBits2Float(0x4279a1de), SkBits2Float(0x425ae0d9)); 5212 path.cubicTo(SkBits2Float(0x4268e6ce), SkBits2Float(0x426df5b7), SkBits2Float(0x425609c8), SkBits2Float(0x427f0f64), SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f)); 5213 path.lineTo(SkBits2Float(0x420bd0d2), SkBits2Float(0x42431170)); 5214 path.cubicTo(SkBits2Float(0x421ab9f8), SkBits2Float(0x4238617e), SkBits2Float(0x42285cd4), SkBits2Float(0x422c04e7), SkBits2Float(0x42347505), SkBits2Float(0x421e39ac)); 5215 path.lineTo(SkBits2Float(0x42347503), SkBits2Float(0x421e39ac)); 5216 path.cubicTo(SkBits2Float(0x427291fe), SkBits2Float(0x41aec4fe), SkBits2Float(0x4280beb1), SkBits2Float(0xc053ed89), SkBits2Float(0x425a9a3a), SkBits2Float(0xc1c61ef1)); 5217 path.cubicTo(SkBits2Float(0x4233b713), SkBits2Float(0xc238e018), SkBits2Float(0x41bc6df5), SkBits2Float(0xc2700002), SkBits2Float(0xb7240057), SkBits2Float(0xc2700000)); 5218 path.close(); 5219 5220 SkPath path1(path); 5221 path.reset(); 5222 path.setFillType((SkPath::FillType) 0); 5223 path.moveTo(SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f)); 5224 path.cubicTo(SkBits2Float(0x419cd99a), SkBits2Float(0x42b02173), SkBits2Float(0xc19850b8), SkBits2Float(0x42b06117), SkBits2Float(0xc23fac11), SkBits2Float(0x42878a96)); 5225 path.cubicTo(SkBits2Float(0xc29997e3), SkBits2Float(0x423d682a), SkBits2Float(0xc2b3208c), SkBits2Float(0x412e025f), SkBits2Float(0xc29f71a3), SkBits2Float(0xc1b8c415)); 5226 path.cubicTo(SkBits2Float(0xc28bc2ba), SkBits2Float(0xc26444ae), SkBits2Float(0xc21e5e96), SkBits2Float(0xc2a223df), SkBits2Float(0xc088ac52), SkBits2Float(0xc2a5c7b3)); 5227 path.lineTo(SkBits2Float(0xc0459a01), SkBits2Float(0xc26fae99)); 5228 path.cubicTo(SkBits2Float(0xc1e4f7d0), SkBits2Float(0xc26a6b5c), SkBits2Float(0xc24a1045), SkBits2Float(0xc225035c), SkBits2Float(0xc266856e), SkBits2Float(0xc18590cd)); 5229 path.cubicTo(SkBits2Float(0xc2817d4a), SkBits2Float(0x40fb9475), SkBits2Float(0xc25e0ffd), SkBits2Float(0x4208ebae), SkBits2Float(0xc20a8edd), SkBits2Float(0x4243f69e)); 5230 path.cubicTo(SkBits2Float(0xc15c36ee), SkBits2Float(0x427f018f), SkBits2Float(0x4162c57c), SkBits2Float(0x427ea58e), SkBits2Float(0x420bd0d7), SkBits2Float(0x4243116e)); 5231 path.lineTo(SkBits2Float(0x42416967), SkBits2Float(0x4286ec0f)); 5232 path.close(); 5233 5234 SkPath path2(path); 5235 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5236 } 5237 // op end success 1 5238 5239 static void battleOp190(skiatest::Reporter* reporter, const char* filename) { 5240 SkPath path; 5241 path.setFillType((SkPath::FillType) 0); 5242 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5243 path.cubicTo(SkBits2Float(0x4202b56e), SkBits2Float(0xc2a60000), SkBits2Float(0x427940ff), SkBits2Float(0xc27f4e67), SkBits2Float(0x42976a2d), SkBits2Float(0xc20814ff)); 5244 path.cubicTo(SkBits2Float(0x42b233da), SkBits2Float(0xc086dcb5), SkBits2Float(0x42a78518), SkBits2Float(0x41f56a27), SkBits2Float(0x42784037), SkBits2Float(0x425c71a4)); 5245 path.lineTo(SkBits2Float(0x4233755d), SkBits2Float(0x421f5b67)); 5246 path.cubicTo(SkBits2Float(0x4272328d), SkBits2Float(0x41b16880), SkBits2Float(0x4280d235), SkBits2Float(0xc042fb32), SkBits2Float(0x425ae9b3), SkBits2Float(0xc1c4bebc)); 5247 path.cubicTo(SkBits2Float(0x42342efc), SkBits2Float(0xc2388f09), SkBits2Float(0x41bcf9fa), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5248 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5249 path.close(); 5250 5251 SkPath path1(path); 5252 path.reset(); 5253 path.setFillType((SkPath::FillType) 0); 5254 path.moveTo(SkBits2Float(0x42784038), SkBits2Float(0x425c71a4)); 5255 path.cubicTo(SkBits2Float(0x42675aa4), SkBits2Float(0x426f78d5), SkBits2Float(0x4254535c), SkBits2Float(0x42803f48), SkBits2Float(0x423f8a54), SkBits2Float(0x4287967e)); 5256 path.lineTo(SkBits2Float(0x420a7682), SkBits2Float(0x424407da)); 5257 path.cubicTo(SkBits2Float(0x42197d0c), SkBits2Float(0x42396aed), SkBits2Float(0x42273e74), SkBits2Float(0x422d1cc3), SkBits2Float(0x4233755f), SkBits2Float(0x421f5b68)); 5258 path.lineTo(SkBits2Float(0x42784038), SkBits2Float(0x425c71a4)); 5259 path.close(); 5260 5261 SkPath path2(path); 5262 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5263 } 5264 // op end success 1 5265 5266 static void battleOp191(skiatest::Reporter* reporter, const char* filename) { 5267 SkPath path; 5268 path.setFillType((SkPath::FillType) 1); 5269 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5270 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5271 path.cubicTo(SkBits2Float(0x4202b56e), SkBits2Float(0xc2a60000), SkBits2Float(0x427940ff), SkBits2Float(0xc27f4e67), SkBits2Float(0x42976a2d), SkBits2Float(0xc20814ff)); 5272 path.cubicTo(SkBits2Float(0x42b233da), SkBits2Float(0xc086dcb5), SkBits2Float(0x42a78518), SkBits2Float(0x41f56a27), SkBits2Float(0x42784038), SkBits2Float(0x425c71a4)); 5273 path.cubicTo(SkBits2Float(0x42675aa4), SkBits2Float(0x426f78d5), SkBits2Float(0x4254535c), SkBits2Float(0x42803f48), SkBits2Float(0x423f8a54), SkBits2Float(0x4287967e)); 5274 path.lineTo(SkBits2Float(0x420a7682), SkBits2Float(0x424407da)); 5275 path.cubicTo(SkBits2Float(0x42197d0c), SkBits2Float(0x42396aed), SkBits2Float(0x42273e74), SkBits2Float(0x422d1cc3), SkBits2Float(0x4233755f), SkBits2Float(0x421f5b68)); 5276 path.lineTo(SkBits2Float(0x4233755d), SkBits2Float(0x421f5b67)); 5277 path.cubicTo(SkBits2Float(0x4272328d), SkBits2Float(0x41b16880), SkBits2Float(0x4280d235), SkBits2Float(0xc042fb32), SkBits2Float(0x425ae9b3), SkBits2Float(0xc1c4bebc)); 5278 path.cubicTo(SkBits2Float(0x42342efc), SkBits2Float(0xc2388f09), SkBits2Float(0x41bcf9fa), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5279 path.close(); 5280 5281 SkPath path1(path); 5282 path.reset(); 5283 path.setFillType((SkPath::FillType) 0); 5284 path.moveTo(SkBits2Float(0x423f8a55), SkBits2Float(0x4287967f)); 5285 path.cubicTo(SkBits2Float(0x41974ba2), SkBits2Float(0x42b0846d), SkBits2Float(0xc19ee9a3), SkBits2Float(0x42b01937), SkBits2Float(0xc2427547), SkBits2Float(0x42868bae)); 5286 path.cubicTo(SkBits2Float(0xc29abade), SkBits2Float(0x4239fc4c), SkBits2Float(0xc2b3780d), SkBits2Float(0x411bee16), SkBits2Float(0xc29ecbab), SkBits2Float(0xc1c17e4f)); 5287 path.cubicTo(SkBits2Float(0xc28a1f48), SkBits2Float(0xc26879d6), SkBits2Float(0xc2193674), SkBits2Float(0xc2a376c5), SkBits2Float(0xc0368c8c), SkBits2Float(0xc2a5e6e5)); 5288 path.lineTo(SkBits2Float(0xc003f6b5), SkBits2Float(0xc26fdbb6)); 5289 path.cubicTo(SkBits2Float(0xc1dd8323), SkBits2Float(0xc26c555a), SkBits2Float(0xc247b1d3), SkBits2Float(0xc2280e0b), SkBits2Float(0xc2659575), SkBits2Float(0xc18bdff2)); 5290 path.cubicTo(SkBits2Float(0xc281bc8c), SkBits2Float(0x40e170d0), SkBits2Float(0xc25fb4ae), SkBits2Float(0x42067283), SkBits2Float(0xc20c926e), SkBits2Float(0x42428613)); 5291 path.cubicTo(SkBits2Float(0xc165c0b5), SkBits2Float(0x427e99a3), SkBits2Float(0x415abda1), SkBits2Float(0x427f34a6), SkBits2Float(0x420a7686), SkBits2Float(0x424407d8)); 5292 path.lineTo(SkBits2Float(0x423f8a55), SkBits2Float(0x4287967f)); 5293 path.close(); 5294 5295 SkPath path2(path); 5296 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5297 } 5298 // op end success 1 5299 5300 static void battleOp192(skiatest::Reporter* reporter, const char* filename) { 5301 SkPath path; 5302 path.setFillType((SkPath::FillType) 0); 5303 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5304 path.cubicTo(SkBits2Float(0x4202fa25), SkBits2Float(0xc2a60000), SkBits2Float(0x4279b699), SkBits2Float(0xc27efea4), SkBits2Float(0x429790ee), SkBits2Float(0xc20767f9)); 5305 path.cubicTo(SkBits2Float(0x42b24690), SkBits2Float(0xc07d14fa), SkBits2Float(0x42a75587), SkBits2Float(0x41f80076), SkBits2Float(0x427743d2), SkBits2Float(0x425d8c9b)); 5306 path.lineTo(SkBits2Float(0x4232bee9), SkBits2Float(0x422027f2)); 5307 path.cubicTo(SkBits2Float(0x4271edc7), SkBits2Float(0x41b34741), SkBits2Float(0x4280dfbb), SkBits2Float(0xc036f37a), SkBits2Float(0x425b21bb), SkBits2Float(0xc1c3c49a)); 5308 path.cubicTo(SkBits2Float(0x423483ff), SkBits2Float(0xc2385562), SkBits2Float(0x41bd5d54), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 5309 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5310 path.close(); 5311 5312 SkPath path1(path); 5313 path.reset(); 5314 path.setFillType((SkPath::FillType) 0); 5315 path.moveTo(SkBits2Float(0x427743d4), SkBits2Float(0x425d8c98)); 5316 path.cubicTo(SkBits2Float(0x4266401a), SkBits2Float(0x427089e5), SkBits2Float(0x42531ae2), SkBits2Float(0x4280c0a0), SkBits2Float(0x423e3514), SkBits2Float(0x42880e64)); 5317 path.lineTo(SkBits2Float(0x42097fd1), SkBits2Float(0x4244b531)); 5318 path.cubicTo(SkBits2Float(0x42189b26), SkBits2Float(0x423a25ea), SkBits2Float(0x42267233), SkBits2Float(0x422de224), SkBits2Float(0x4232beea), SkBits2Float(0x422027f3)); 5319 path.lineTo(SkBits2Float(0x427743d4), SkBits2Float(0x425d8c98)); 5320 path.close(); 5321 5322 SkPath path2(path); 5323 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5324 } 5325 5326 static void battleOp193(skiatest::Reporter* reporter, const char* filename) { 5327 SkPath path; 5328 path.setFillType((SkPath::FillType) 0); 5329 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5330 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07980), SkBits2Float(0xc2a5ff68)); 5331 path.lineTo(SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25)); 5332 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000)); 5333 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5334 path.close(); 5335 5336 SkPath path1(path); 5337 path.reset(); 5338 path.setFillType((SkPath::FillType) 0); 5339 path.moveTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68)); 5340 path.cubicTo(SkBits2Float(0x3ee7f565), SkBits2Float(0xc2a5ff5d), SkBits2Float(0x3eef70d9), SkBits2Float(0xc2a5ff52), SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47)); 5341 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6)); 5342 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea24612), SkBits2Float(0xc26fff26)); 5343 path.lineTo(SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68)); 5344 path.close(); 5345 5346 SkPath path2(path); 5347 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5348 } 5349 // op end success 1 5350 5351 static void battleOp194(skiatest::Reporter* reporter, const char* filename) { 5352 SkPath path; 5353 path.setFillType((SkPath::FillType) 1); 5354 path.moveTo(SkBits2Float(0x3691e768), SkBits2Float(0xc2700000)); 5355 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5356 path.cubicTo(SkBits2Float(0x3e15a675), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e95a67a), SkBits2Float(0xc2a5ffcd), SkBits2Float(0x3ee07a10), SkBits2Float(0xc2a5ff68)); 5357 path.lineTo(SkBits2Float(0x3ef6ec4d), SkBits2Float(0xc2a5ff47)); 5358 path.lineTo(SkBits2Float(0x3eb27fdb), SkBits2Float(0xc26ffef6)); 5359 path.cubicTo(SkBits2Float(0x3ead1768), SkBits2Float(0xc26fff07), SkBits2Float(0x3ea7aebe), SkBits2Float(0xc26fff17), SkBits2Float(0x3ea245bb), SkBits2Float(0xc26fff25)); 5360 path.cubicTo(SkBits2Float(0x3e585de0), SkBits2Float(0xc26fffb9), SkBits2Float(0x3dd85f11), SkBits2Float(0xc2700000), SkBits2Float(0x3691e768), SkBits2Float(0xc2700000)); 5361 path.close(); 5362 5363 SkPath path1(path); 5364 path.reset(); 5365 path.setFillType((SkPath::FillType) 0); 5366 path.moveTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48)); 5367 path.cubicTo(SkBits2Float(0x3f3816c9), SkBits2Float(0xc2a5fe94), SkBits2Float(0x3f74b6e1), SkBits2Float(0xc2a5fd5b), SkBits2Float(0x3f98ab0b), SkBits2Float(0xc2a5fb9d)); 5368 path.lineTo(SkBits2Float(0x3f5cb973), SkBits2Float(0xc26ff9a8)); 5369 path.cubicTo(SkBits2Float(0x3f30e6e7), SkBits2Float(0xc26ffc2e), SkBits2Float(0x3f05138e), SkBits2Float(0xc26ffdf2), SkBits2Float(0x3eb27fc6), SkBits2Float(0xc26ffef7)); 5370 path.lineTo(SkBits2Float(0x3ef6ec9b), SkBits2Float(0xc2a5ff48)); 5371 path.close(); 5372 5373 SkPath path2(path); 5374 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5375 } 5376 // op end success 1 5377 5378 static void battleOp195(skiatest::Reporter* reporter, const char* filename) { 5379 if (!FLAGS_runFail) { 5380 return; // draws wrong 5381 } 5382 SkPath path; 5383 path.setFillType((SkPath::FillType) 0); 5384 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5385 path.cubicTo(SkBits2Float(0x3f0607d9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3f860760), SkBits2Float(0xc2a5fd76), SkBits2Float(0x3fc90825), SkBits2Float(0xc2a5f863)); 5386 path.lineTo(SkBits2Float(0x3f9152f7), SkBits2Float(0xc26ff500)); 5387 path.cubicTo(SkBits2Float(0x3f41c6b2), SkBits2Float(0xc26ffc55), SkBits2Float(0x3ec1c794), SkBits2Float(0xc26fffff), SkBits2Float(0x36a51f4a), SkBits2Float(0xc26fffff)); 5388 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5389 path.close(); 5390 5391 SkPath path1(path); 5392 path.reset(); 5393 path.setFillType((SkPath::FillType) 0); 5394 path.moveTo(SkBits2Float(0x3fc9081a), SkBits2Float(0xc2a5f864)); 5395 path.cubicTo(SkBits2Float(0x3fcfbb75), SkBits2Float(0xc2a5f7e2), SkBits2Float(0x3fd66eab), SkBits2Float(0xc2a5f75a), SkBits2Float(0x3fdd21d8), SkBits2Float(0xc2a5f6cb)); 5396 path.lineTo(SkBits2Float(0x3f9fdac0), SkBits2Float(0xc26ff2b1)); 5397 path.cubicTo(SkBits2Float(0x3f9b02da), SkBits2Float(0xc26ff37f), SkBits2Float(0x3f962add), SkBits2Float(0xc26ff444), SkBits2Float(0x3f9152da), SkBits2Float(0xc26ff500)); 5398 path.lineTo(SkBits2Float(0x3fc9081a), SkBits2Float(0xc2a5f864)); 5399 path.close(); 5400 5401 SkPath path2(path); 5402 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5403 } 5404 // op end success 1 5405 5406 static void battleOp196(skiatest::Reporter* reporter, const char* filename) { 5407 SkPath path; 5408 path.setFillType((SkPath::FillType) 1); 5409 path.moveTo(SkBits2Float(0x36a51f4a), SkBits2Float(0xc26fffff)); 5410 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5411 path.cubicTo(SkBits2Float(0x3f0607d1), SkBits2Float(0xc2a60000), SkBits2Float(0x3f860758), SkBits2Float(0xc2a5fd76), SkBits2Float(0x3fc9081a), SkBits2Float(0xc2a5f864)); 5412 5413 SkPath path1(path); 5414 path.reset(); 5415 path.setFillType((SkPath::FillType) 0); 5416 path.moveTo(SkBits2Float(0x3fdd21ce), SkBits2Float(0xc2a5f6cb)); 5417 path.cubicTo(SkBits2Float(0x4024daa1), SkBits2Float(0xc2a5edc0), SkBits2Float(0x405b1f05), SkBits2Float(0xc2a5de0d), SkBits2Float(0x4088aca3), SkBits2Float(0xc2a5c7b3)); 5418 path.lineTo(SkBits2Float(0x40459a01), SkBits2Float(0xc26fae99)); 5419 path.cubicTo(SkBits2Float(0x401e66a3), SkBits2Float(0xc26fceed), SkBits2Float(0x3fee57cd), SkBits2Float(0xc26fe5a0), SkBits2Float(0x3f9fdaba), SkBits2Float(0xc26ff2b3)); 5420 path.lineTo(SkBits2Float(0x3fdd21ce), SkBits2Float(0xc2a5f6cb)); 5421 path.close(); 5422 5423 SkPath path2(path); 5424 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5425 } 5426 // op end success 1 5427 5428 static void battleOp197(skiatest::Reporter* reporter, const char* filename) { 5429 SkPath path; 5430 path.setFillType((SkPath::FillType) 0); 5431 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5432 path.cubicTo(SkBits2Float(0x3fa0bd52), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4020babd), SkBits2Float(0xc2a5f168), SkBits2Float(0x40710446), SkBits2Float(0xc2a5d43c)); 5433 path.lineTo(SkBits2Float(0x402e3a94), SkBits2Float(0xc26fc0ba)); 5434 path.cubicTo(SkBits2Float(0x3fe86158), SkBits2Float(0xc26feae9), SkBits2Float(0x3f686554), SkBits2Float(0xc2700000), SkBits2Float(0x369bbf59), SkBits2Float(0xc2700000)); 5435 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5436 path.close(); 5437 5438 SkPath path1(path); 5439 path.reset(); 5440 path.setFillType((SkPath::FillType) 0); 5441 path.moveTo(SkBits2Float(0x4071043c), SkBits2Float(0xc2a5d43c)); 5442 path.cubicTo(SkBits2Float(0x40790b78), SkBits2Float(0xc2a5d151), SkBits2Float(0x40808943), SkBits2Float(0xc2a5ce41), SkBits2Float(0x40848cac), SkBits2Float(0xc2a5cb0c)); 5443 path.lineTo(SkBits2Float(0x403fa34c), SkBits2Float(0xc26fb371)); 5444 path.cubicTo(SkBits2Float(0x4039d5dd), SkBits2Float(0xc26fb815), SkBits2Float(0x40340849), SkBits2Float(0xc26fbc83), SkBits2Float(0x402e3a8d), SkBits2Float(0xc26fc0bb)); 5445 path.lineTo(SkBits2Float(0x4071043c), SkBits2Float(0xc2a5d43c)); 5446 path.close(); 5447 5448 SkPath path2(path); 5449 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5450 } 5451 // op end success 1 5452 5453 static void battleOp198(skiatest::Reporter* reporter, const char* filename) { 5454 if (!FLAGS_runFail) { 5455 return; // draws wrong 5456 } 5457 SkPath path; 5458 path.setFillType((SkPath::FillType) 1); 5459 path.moveTo(SkBits2Float(0x369bbf59), SkBits2Float(0xc2700000)); 5460 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5461 path.cubicTo(SkBits2Float(0x3fa0bd4b), SkBits2Float(0xc2a60000), SkBits2Float(0x4020bab6), SkBits2Float(0xc2a5f168), SkBits2Float(0x4071043c), SkBits2Float(0xc2a5d43c)); 5462 path.lineTo(SkBits2Float(0x40710446), SkBits2Float(0xc2a5d43c)); 5463 path.cubicTo(SkBits2Float(0x40790b7f), SkBits2Float(0xc2a5d151), SkBits2Float(0x40808945), SkBits2Float(0xc2a5ce41), SkBits2Float(0x40848cac), SkBits2Float(0xc2a5cb0c)); 5464 path.lineTo(SkBits2Float(0x403fa34c), SkBits2Float(0xc26fb371)); 5465 path.quadTo(SkBits2Float(0x4036ef2a), SkBits2Float(0xc26fba67), SkBits2Float(0x402e3a95), SkBits2Float(0xc26fc0bb)); 5466 path.lineTo(SkBits2Float(0x402e3a94), SkBits2Float(0xc26fc0ba)); 5467 path.cubicTo(SkBits2Float(0x3fe86158), SkBits2Float(0xc26feae9), SkBits2Float(0x3f686554), SkBits2Float(0xc2700000), SkBits2Float(0x369bbf59), SkBits2Float(0xc2700000)); 5468 path.close(); 5469 5470 SkPath path1(path); 5471 path.reset(); 5472 path.setFillType((SkPath::FillType) 0); 5473 path.moveTo(SkBits2Float(0x40848cae), SkBits2Float(0xc2a5cb0c)); 5474 path.cubicTo(SkBits2Float(0x40c597bc), SkBits2Float(0xc2a5970c), SkBits2Float(0x41033f43), SkBits2Float(0xc2a53cca), SkBits2Float(0x41238fb3), SkBits2Float(0xc2a4bc74)); 5475 path.lineTo(SkBits2Float(0x40ec7963), SkBits2Float(0xc26e2c38)); 5476 path.cubicTo(SkBits2Float(0x40bdc13f), SkBits2Float(0xc26ee5c4), SkBits2Float(0x408ed689), SkBits2Float(0xc26f6843), SkBits2Float(0x403fa341), SkBits2Float(0xc26fb372)); 5477 path.lineTo(SkBits2Float(0x40848cae), SkBits2Float(0xc2a5cb0c)); 5478 path.close(); 5479 5480 SkPath path2(path); 5481 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5482 } 5483 // op end success 1 5484 5485 static void battleOp199(skiatest::Reporter* reporter, const char* filename) { 5486 SkPath path; 5487 path.setFillType((SkPath::FillType) 0); 5488 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5489 path.cubicTo(SkBits2Float(0x3ffdfad4), SkBits2Float(0xc2a60000), SkBits2Float(0x407df074), SkBits2Float(0xc2a5db92), SkBits2Float(0x40be4d32), SkBits2Float(0xc2a592c7)); 5490 path.lineTo(SkBits2Float(0x40899143), SkBits2Float(0xc26f6217)); 5491 path.cubicTo(SkBits2Float(0x40379219), SkBits2Float(0xc26fcb54), SkBits2Float(0x3fb799b8), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea3), SkBits2Float(0xc26fffff)); 5492 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5493 path.close(); 5494 5495 SkPath path1(path); 5496 path.reset(); 5497 path.setFillType((SkPath::FillType) 0); 5498 path.moveTo(SkBits2Float(0x40be4d37), SkBits2Float(0xc2a592c7)); 5499 path.cubicTo(SkBits2Float(0x40c4a257), SkBits2Float(0xc2a58b80), SkBits2Float(0x40caf70c), SkBits2Float(0xc2a583db), SkBits2Float(0x40d14b4e), SkBits2Float(0xc2a57bda)); 5500 path.lineTo(SkBits2Float(0x40974c04), SkBits2Float(0xc26f40f2)); 5501 path.cubicTo(SkBits2Float(0x4092b8c1), SkBits2Float(0xc26f4c86), SkBits2Float(0x408e252c), SkBits2Float(0xc26f5792), SkBits2Float(0x4089914a), SkBits2Float(0xc26f6219)); 5502 path.lineTo(SkBits2Float(0x40be4d37), SkBits2Float(0xc2a592c7)); 5503 path.close(); 5504 5505 SkPath path2(path); 5506 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5507 } 5508 // op end success 1 5509 5510 static void battleOp200(skiatest::Reporter* reporter, const char* filename) { 5511 SkPath path; 5512 path.setFillType((SkPath::FillType) 1); 5513 path.moveTo(SkBits2Float(0x3673fea3), SkBits2Float(0xc26fffff)); 5514 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5515 path.cubicTo(SkBits2Float(0x3ffdfad4), SkBits2Float(0xc2a60000), SkBits2Float(0x407df074), SkBits2Float(0xc2a5db92), SkBits2Float(0x40be4d37), SkBits2Float(0xc2a592c7)); 5516 path.cubicTo(SkBits2Float(0x40c4a257), SkBits2Float(0xc2a58b80), SkBits2Float(0x40caf70c), SkBits2Float(0xc2a583db), SkBits2Float(0x40d14b4e), SkBits2Float(0xc2a57bda)); 5517 path.lineTo(SkBits2Float(0x40974c04), SkBits2Float(0xc26f40f2)); 5518 path.cubicTo(SkBits2Float(0x4092b8c1), SkBits2Float(0xc26f4c86), SkBits2Float(0x408e252c), SkBits2Float(0xc26f5792), SkBits2Float(0x4089914a), SkBits2Float(0xc26f6219)); 5519 path.lineTo(SkBits2Float(0x40899143), SkBits2Float(0xc26f6217)); 5520 path.cubicTo(SkBits2Float(0x40379219), SkBits2Float(0xc26fcb54), SkBits2Float(0x3fb799b8), SkBits2Float(0xc26fffff), SkBits2Float(0x3673fea3), SkBits2Float(0xc26fffff)); 5521 path.close(); 5522 5523 SkPath path1(path); 5524 path.reset(); 5525 path.setFillType((SkPath::FillType) 0); 5526 path.moveTo(SkBits2Float(0x40d14b4a), SkBits2Float(0xc2a57bdb)); 5527 path.cubicTo(SkBits2Float(0x411bf161), SkBits2Float(0xc2a4fa1a), SkBits2Float(0x414ef5ad), SkBits2Float(0xc2a4190e), SkBits2Float(0x4180b83e), SkBits2Float(0xc2a2d9dc)); 5528 path.lineTo(SkBits2Float(0x413a19cf), SkBits2Float(0xc26b727f)); 5529 path.cubicTo(SkBits2Float(0x41159c04), SkBits2Float(0xc26d3fff), SkBits2Float(0x40e175a8), SkBits2Float(0xc26e855c), SkBits2Float(0x40974c02), SkBits2Float(0xc26f40f4)); 5530 path.lineTo(SkBits2Float(0x40d14b4a), SkBits2Float(0xc2a57bdb)); 5531 path.close(); 5532 5533 SkPath path2(path); 5534 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5535 } 5536 // op end success 1 5537 5538 static void battleOp201(skiatest::Reporter* reporter, const char* filename) { 5539 SkPath path; 5540 path.setFillType((SkPath::FillType) 0); 5541 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5542 path.cubicTo(SkBits2Float(0x4059d383), SkBits2Float(0xc2a5ffff), SkBits2Float(0x40d9b918), SkBits2Float(0xc2a594d0), SkBits2Float(0x4122e820), SkBits2Float(0xc2a4bf0c)); 5543 path.lineTo(SkBits2Float(0x40eb871c), SkBits2Float(0xc26e2ff8)); 5544 path.cubicTo(SkBits2Float(0x409d63e0), SkBits2Float(0xc26f6508), SkBits2Float(0x401d76fa), SkBits2Float(0xc2700000), SkBits2Float(0x35f7fd4a), SkBits2Float(0xc2700000)); 5545 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5546 path.close(); 5547 5548 SkPath path1(path); 5549 path.reset(); 5550 path.setFillType((SkPath::FillType) 0); 5551 path.moveTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c)); 5552 path.cubicTo(SkBits2Float(0x41284f3c), SkBits2Float(0xc2a4a9ac), SkBits2Float(0x412db549), SkBits2Float(0xc2a4933e), SkBits2Float(0x41331a33), SkBits2Float(0xc2a47bbf)); 5553 path.lineTo(SkBits2Float(0x410178be), SkBits2Float(0xc26dceac)); 5554 path.cubicTo(SkBits2Float(0x40fb24f7), SkBits2Float(0xc26df0a4), SkBits2Float(0x40f356d1), SkBits2Float(0xc26e1114), SkBits2Float(0x40eb871f), SkBits2Float(0xc26e2ff8)); 5555 path.lineTo(SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c)); 5556 path.close(); 5557 5558 SkPath path2(path); 5559 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5560 } 5561 // op end success 1 5562 5563 static void battleOp202(skiatest::Reporter* reporter, const char* filename) { 5564 SkPath path; 5565 path.setFillType((SkPath::FillType) 1); 5566 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 5567 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5568 path.cubicTo(SkBits2Float(0x4059d380), SkBits2Float(0xc2a60000), SkBits2Float(0x40d9b915), SkBits2Float(0xc2a594d0), SkBits2Float(0x4122e81e), SkBits2Float(0xc2a4bf0c)); 5569 path.lineTo(SkBits2Float(0x4122e820), SkBits2Float(0xc2a4bf0c)); 5570 path.cubicTo(SkBits2Float(0x41284f3d), SkBits2Float(0xc2a4a9ac), SkBits2Float(0x412db54a), SkBits2Float(0xc2a4933e), SkBits2Float(0x41331a33), SkBits2Float(0xc2a47bbf)); 5571 path.lineTo(SkBits2Float(0x410178be), SkBits2Float(0xc26dceac)); 5572 path.cubicTo(SkBits2Float(0x40fb24f7), SkBits2Float(0xc26df0a4), SkBits2Float(0x40f356d1), SkBits2Float(0xc26e1114), SkBits2Float(0x40eb871f), SkBits2Float(0xc26e2ff8)); 5573 path.lineTo(SkBits2Float(0x40eb871c), SkBits2Float(0xc26e2ff8)); 5574 path.cubicTo(SkBits2Float(0x409d63e0), SkBits2Float(0xc26f6508), SkBits2Float(0x401d76fa), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 5575 path.close(); 5576 5577 SkPath path1(path); 5578 path.reset(); 5579 path.setFillType((SkPath::FillType) 0); 5580 path.moveTo(SkBits2Float(0x41331a39), SkBits2Float(0xc2a47bc0)); 5581 path.cubicTo(SkBits2Float(0x41854b40), SkBits2Float(0xc2a2feb5), SkBits2Float(0x41b05576), SkBits2Float(0xc2a06b6c), SkBits2Float(0x41da0834), SkBits2Float(0xc29ccbb1)); 5582 path.lineTo(SkBits2Float(0x419d9d10), SkBits2Float(0xc262b148)); 5583 path.cubicTo(SkBits2Float(0x417ef0c0), SkBits2Float(0xc267ee96), SkBits2Float(0x4140b6cf), SkBits2Float(0xc26ba7c4), SkBits2Float(0x410178c0), SkBits2Float(0xc26dcead)); 5584 path.lineTo(SkBits2Float(0x41331a39), SkBits2Float(0xc2a47bc0)); 5585 path.close(); 5586 5587 SkPath path2(path); 5588 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5589 } 5590 // op end success 1 5591 5592 static void battleOp203(skiatest::Reporter* reporter, const char* filename) { 5593 SkPath path; 5594 path.setFillType((SkPath::FillType) 0); 5595 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5596 path.cubicTo(SkBits2Float(0x4087af55), SkBits2Float(0xc2a5ffff), SkBits2Float(0x410795c5), SkBits2Float(0xc2a559a4), SkBits2Float(0x414aa20a), SkBits2Float(0xc2a40e63)); 5597 path.lineTo(SkBits2Float(0x41127b4b), SkBits2Float(0xc26d308f)); 5598 path.cubicTo(SkBits2Float(0x40c406cd), SkBits2Float(0xc26f0f7b), SkBits2Float(0x40442bc2), SkBits2Float(0xc26fffff), SkBits2Float(0x36b5ff52), SkBits2Float(0xc26fffff)); 5599 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5600 path.close(); 5601 5602 SkPath path1(path); 5603 path.reset(); 5604 path.setFillType((SkPath::FillType) 0); 5605 path.moveTo(SkBits2Float(0x414aa206), SkBits2Float(0xc2a40e63)); 5606 path.cubicTo(SkBits2Float(0x4151559c), SkBits2Float(0xc2a3ed46), SkBits2Float(0x41580726), SkBits2Float(0xc2a3ca86), SkBits2Float(0x415eb67b), SkBits2Float(0xc2a3a622)); 5607 path.lineTo(SkBits2Float(0x4120ff4d), SkBits2Float(0xc26c99d6)); 5608 path.cubicTo(SkBits2Float(0x411c2a2f), SkBits2Float(0xc26cce74), SkBits2Float(0x41175378), SkBits2Float(0xc26d00b1), SkBits2Float(0x41127b46), SkBits2Float(0xc26d308f)); 5609 path.lineTo(SkBits2Float(0x414aa206), SkBits2Float(0xc2a40e63)); 5610 path.close(); 5611 5612 SkPath path2(path); 5613 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5614 } 5615 // op end success 1 5616 5617 static void battleOp204(skiatest::Reporter* reporter, const char* filename) { 5618 SkPath path; 5619 path.setFillType((SkPath::FillType) 1); 5620 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc26fffff)); 5621 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5622 path.cubicTo(SkBits2Float(0x4087af52), SkBits2Float(0xc2a60000), SkBits2Float(0x410795c2), SkBits2Float(0xc2a559a4), SkBits2Float(0x414aa206), SkBits2Float(0xc2a40e63)); 5623 path.lineTo(SkBits2Float(0x414aa20a), SkBits2Float(0xc2a40e63)); 5624 path.cubicTo(SkBits2Float(0x4151559f), SkBits2Float(0xc2a3ed46), SkBits2Float(0x41580727), SkBits2Float(0xc2a3ca86), SkBits2Float(0x415eb67b), SkBits2Float(0xc2a3a622)); 5625 path.lineTo(SkBits2Float(0x4120ff4d), SkBits2Float(0xc26c99d6)); 5626 path.cubicTo(SkBits2Float(0x411c2a31), SkBits2Float(0xc26cce74), SkBits2Float(0x4117537b), SkBits2Float(0xc26d00b1), SkBits2Float(0x41127b4b), SkBits2Float(0xc26d308f)); 5627 path.lineTo(SkBits2Float(0x41127b46), SkBits2Float(0xc26d308f)); 5628 path.cubicTo(SkBits2Float(0x40c406c6), SkBits2Float(0xc26f0f7b), SkBits2Float(0x40442bbb), SkBits2Float(0xc26fffff), SkBits2Float(0x36b5ff52), SkBits2Float(0xc26fffff)); 5629 path.close(); 5630 5631 SkPath path1(path); 5632 path.reset(); 5633 path.setFillType((SkPath::FillType) 0); 5634 path.moveTo(SkBits2Float(0x415eb680), SkBits2Float(0xc2a3a623)); 5635 path.cubicTo(SkBits2Float(0x41a59721), SkBits2Float(0xc2a157ad), SkBits2Float(0x41da77ab), SkBits2Float(0xc29d5c25), SkBits2Float(0x420662d7), SkBits2Float(0xc297cafd)); 5636 path.lineTo(SkBits2Float(0x41c24b0d), SkBits2Float(0xc25b75ac)); 5637 path.cubicTo(SkBits2Float(0x419deda5), SkBits2Float(0xc2638226), SkBits2Float(0x416f6860), SkBits2Float(0xc269442a), SkBits2Float(0x4120ff4a), SkBits2Float(0xc26c99d9)); 5638 path.lineTo(SkBits2Float(0x415eb680), SkBits2Float(0xc2a3a623)); 5639 path.close(); 5640 5641 SkPath path2(path); 5642 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5643 } 5644 // op end success 1 5645 5646 static void battleOp205(skiatest::Reporter* reporter, const char* filename) { 5647 SkPath path; 5648 path.setFillType((SkPath::FillType) 0); 5649 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5650 path.cubicTo(SkBits2Float(0x40a2e582), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4122b94f), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4)); 5651 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464)); 5652 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 5653 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5654 path.close(); 5655 5656 SkPath path1(path); 5657 path.reset(); 5658 path.setFillType((SkPath::FillType) 0); 5659 path.moveTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4)); 5660 path.cubicTo(SkBits2Float(0x417acd1a), SkBits2Float(0xc2a30415), SkBits2Float(0x41816508), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb)); 5661 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8)); 5662 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463)); 5663 path.lineTo(SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4)); 5664 path.close(); 5665 5666 SkPath path2(path); 5667 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5668 } 5669 // op end success 1 5670 5671 static void battleOp206(skiatest::Reporter* reporter, const char* filename) { 5672 SkPath path; 5673 path.setFillType((SkPath::FillType) 1); 5674 path.moveTo(SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 5675 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5676 path.cubicTo(SkBits2Float(0x40a2e57f), SkBits2Float(0xc2a60000), SkBits2Float(0x4122b94c), SkBits2Float(0xc2a51039), SkBits2Float(0x4172cc9b), SkBits2Float(0xc2a333b4)); 5677 path.lineTo(SkBits2Float(0x4172cca0), SkBits2Float(0xc2a333b4)); 5678 path.cubicTo(SkBits2Float(0x417acd1d), SkBits2Float(0xc2a30415), SkBits2Float(0x41816509), SkBits2Float(0xc2a2d21d), SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcb)); 5679 path.lineTo(SkBits2Float(0x4140d724), SkBits2Float(0xc26b1ba8)); 5680 path.cubicTo(SkBits2Float(0x413b139d), SkBits2Float(0xc26b674c), SkBits2Float(0x41354d54), SkBits2Float(0xc26baf8b), SkBits2Float(0x412f847c), SkBits2Float(0xc26bf463)); 5681 path.lineTo(SkBits2Float(0x412f847d), SkBits2Float(0xc26bf464)); 5682 path.cubicTo(SkBits2Float(0x40eb4376), SkBits2Float(0xc26ea556), SkBits2Float(0x406b836d), SkBits2Float(0xc2700000), SkBits2Float(0x36b5ff52), SkBits2Float(0xc2700000)); 5683 path.close(); 5684 5685 SkPath path1(path); 5686 path.reset(); 5687 path.setFillType((SkPath::FillType) 0); 5688 path.moveTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc)); 5689 path.cubicTo(SkBits2Float(0x41c61a92), SkBits2Float(0xc29f4c69), SkBits2Float(0x42023dd6), SkBits2Float(0xc299958f), SkBits2Float(0x421f3a98), SkBits2Float(0xc291a994)); 5690 path.lineTo(SkBits2Float(0x41e635e1), SkBits2Float(0xc25298a5)); 5691 path.cubicTo(SkBits2Float(0x41bc4d11), SkBits2Float(0xc25e0caa), SkBits2Float(0x418f3524), SkBits2Float(0xc2664fa2), SkBits2Float(0x4140d729), SkBits2Float(0xc26b1ba9)); 5692 path.lineTo(SkBits2Float(0x4185619b), SkBits2Float(0xc2a29dcc)); 5693 path.close(); 5694 5695 SkPath path2(path); 5696 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5697 } 5698 // op end success 1 5699 5700 static void battleOp207(skiatest::Reporter* reporter, const char* filename) { 5701 SkPath path; 5702 path.setFillType((SkPath::FillType) 0); 5703 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5704 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158cf), SkBits2Float(0xc2a1f965)); 5705 path.lineTo(SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8)); 5706 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x35bbfd46), SkBits2Float(0xc2700000)); 5707 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5708 path.close(); 5709 5710 SkPath path1(path); 5711 path.reset(); 5712 path.setFillType((SkPath::FillType) 0); 5713 path.moveTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965)); 5714 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207)); 5715 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a)); 5716 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8)); 5717 path.lineTo(SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965)); 5718 path.close(); 5719 5720 SkPath path2(path); 5721 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5722 } 5723 // op end success 1 5724 5725 static void battleOp208(skiatest::Reporter* reporter, const char* filename) { 5726 SkPath path; 5727 path.setFillType((SkPath::FillType) 1); 5728 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 5729 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5730 path.cubicTo(SkBits2Float(0x40c39389), SkBits2Float(0xc2a60000), SkBits2Float(0x414346f4), SkBits2Float(0xc2a4a65f), SkBits2Float(0x419158d0), SkBits2Float(0xc2a1f965)); 5731 path.cubicTo(SkBits2Float(0x41961cea), SkBits2Float(0xc2a1b4f6), SkBits2Float(0x419addf6), SkBits2Float(0xc2a16d2c), SkBits2Float(0x419f9bbb), SkBits2Float(0xc2a12207)); 5732 path.lineTo(SkBits2Float(0x4166c251), SkBits2Float(0xc268f69a)); 5733 path.cubicTo(SkBits2Float(0x415fe778), SkBits2Float(0xc269633e), SkBits2Float(0x415907e2), SkBits2Float(0xc269cb09), SkBits2Float(0x415223e0), SkBits2Float(0xc26a2df8)); 5734 path.cubicTo(SkBits2Float(0x410d2a0c), SkBits2Float(0xc26e0c4b), SkBits2Float(0x408d616c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 5735 path.close(); 5736 5737 SkPath path1(path); 5738 path.reset(); 5739 path.setFillType((SkPath::FillType) 0); 5740 path.moveTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208)); 5741 path.cubicTo(SkBits2Float(0x41eca53e), SkBits2Float(0xc29c5d1a), SkBits2Float(0x421ad1be), SkBits2Float(0xc2942e2b), SkBits2Float(0x423b8fe1), SkBits2Float(0xc288f8a3)); 5742 path.lineTo(SkBits2Float(0x42079647), SkBits2Float(0xc24607dc)); 5743 path.cubicTo(SkBits2Float(0x41dfd5cc), SkBits2Float(0xc2563c94), SkBits2Float(0x41ab11aa), SkBits2Float(0xc2621167), SkBits2Float(0x4166c24e), SkBits2Float(0xc268f69b)); 5744 path.lineTo(SkBits2Float(0x419f9bbc), SkBits2Float(0xc2a12208)); 5745 path.close(); 5746 5747 SkPath path2(path); 5748 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5749 } 5750 // op end success 1 5751 5752 static void battleOp209(skiatest::Reporter* reporter, const char* filename) { 5753 SkPath path; 5754 path.setFillType((SkPath::FillType) 0); 5755 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5756 path.cubicTo(SkBits2Float(0x40e86425), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4167e385), SkBits2Float(0xc2a41801), SkBits2Float(0x41ac0ecd), SkBits2Float(0xc2a05484)); 5757 path.lineTo(SkBits2Float(0x4178c21d), SkBits2Float(0xc267cd79)); 5758 path.cubicTo(SkBits2Float(0x4127a168), SkBits2Float(0xc26d3e79), SkBits2Float(0x40a7fe68), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 5759 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5760 path.close(); 5761 5762 SkPath path1(path); 5763 path.reset(); 5764 path.setFillType((SkPath::FillType) 0); 5765 path.moveTo(SkBits2Float(0x41ac0ecb), SkBits2Float(0xc2a05485)); 5766 path.cubicTo(SkBits2Float(0x41b1a941), SkBits2Float(0xc29ff44e), SkBits2Float(0x41b73ea0), SkBits2Float(0xc29f8f65), SkBits2Float(0x41bcce84), SkBits2Float(0xc29f25d1)); 5767 path.lineTo(SkBits2Float(0x41887c9d), SkBits2Float(0xc26617d6)); 5768 path.cubicTo(SkBits2Float(0x4184774a), SkBits2Float(0xc266b07c), SkBits2Float(0x41806e06), SkBits2Float(0xc2674260), SkBits2Float(0x4178c21e), SkBits2Float(0xc267cd7a)); 5769 path.lineTo(SkBits2Float(0x41ac0ecb), SkBits2Float(0xc2a05485)); 5770 path.close(); 5771 5772 SkPath path2(path); 5773 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5774 } 5775 // op end success 1 5776 5777 static void battleOp210(skiatest::Reporter* reporter, const char* filename) { 5778 SkPath path; 5779 path.setFillType((SkPath::FillType) 1); 5780 path.moveTo(SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 5781 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5782 path.cubicTo(SkBits2Float(0x40e86421), SkBits2Float(0xc2a60000), SkBits2Float(0x4167e381), SkBits2Float(0xc2a41801), SkBits2Float(0x41ac0eca), SkBits2Float(0xc2a05484)); 5783 path.lineTo(SkBits2Float(0x41ac0ecd), SkBits2Float(0xc2a05484)); 5784 path.lineTo(SkBits2Float(0x4178c21e), SkBits2Float(0xc267cd7a)); 5785 path.lineTo(SkBits2Float(0x41ac0ecb), SkBits2Float(0xc2a05485)); 5786 path.cubicTo(SkBits2Float(0x41b1a941), SkBits2Float(0xc29ff44e), SkBits2Float(0x41b73ea0), SkBits2Float(0xc29f8f65), SkBits2Float(0x41bcce84), SkBits2Float(0xc29f25d1)); 5787 path.lineTo(SkBits2Float(0x41887c9d), SkBits2Float(0xc26617d6)); 5788 path.cubicTo(SkBits2Float(0x4184774a), SkBits2Float(0xc266b07c), SkBits2Float(0x41806e06), SkBits2Float(0xc2674260), SkBits2Float(0x4178c21d), SkBits2Float(0xc267cd79)); 5789 path.cubicTo(SkBits2Float(0x4127a168), SkBits2Float(0xc26d3e79), SkBits2Float(0x40a7fe68), SkBits2Float(0xc2700000), SkBits2Float(0x3673fea3), SkBits2Float(0xc2700000)); 5790 path.close(); 5791 5792 SkPath path1(path); 5793 path.reset(); 5794 path.setFillType((SkPath::FillType) 0); 5795 path.moveTo(SkBits2Float(0x41bcce83), SkBits2Float(0xc29f25d2)); 5796 path.cubicTo(SkBits2Float(0x420ba3b4), SkBits2Float(0xc2987080), SkBits2Float(0x42357f09), SkBits2Float(0xc28cfcb1), SkBits2Float(0x42592f07), SkBits2Float(0xc27b1ba7)); 5797 path.lineTo(SkBits2Float(0x421d0012), SkBits2Float(0xc235861c)); 5798 path.cubicTo(SkBits2Float(0x420333bc), SkBits2Float(0xc24bd636), SkBits2Float(0x41c9e36e), SkBits2Float(0xc25c64f6), SkBits2Float(0x41887c9c), SkBits2Float(0xc26617d7)); 5799 path.lineTo(SkBits2Float(0x41bcce83), SkBits2Float(0xc29f25d2)); 5800 path.close(); 5801 5802 SkPath path2(path); 5803 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5804 } 5805 // op end success 1 5806 5807 static void battleOp211(skiatest::Reporter* reporter, const char* filename) { 5808 SkPath path; 5809 path.setFillType((SkPath::FillType) 0); 5810 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5811 path.cubicTo(SkBits2Float(0x411e5541), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419db1ee), SkBits2Float(0xc2a275ef), SkBits2Float(0x41e7e0a3), SkBits2Float(0xc29b8c98)); 5812 path.lineTo(SkBits2Float(0x41a79f51), SkBits2Float(0xc260e3f1)); 5813 path.cubicTo(SkBits2Float(0x4163fe32), SkBits2Float(0xc26ae208), SkBits2Float(0x40e4ea54), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000)); 5814 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5815 path.close(); 5816 5817 SkPath path1(path); 5818 path.reset(); 5819 path.setFillType((SkPath::FillType) 0); 5820 path.moveTo(SkBits2Float(0x41e7e0a8), SkBits2Float(0xc29b8c98)); 5821 path.cubicTo(SkBits2Float(0x41ef46bb), SkBits2Float(0xc29adc20), SkBits2Float(0x41f6a013), SkBits2Float(0xc29a2338), SkBits2Float(0x41fdebc8), SkBits2Float(0xc29961f8)); 5822 path.lineTo(SkBits2Float(0x41b78eb0), SkBits2Float(0xc25dc215)); 5823 path.cubicTo(SkBits2Float(0x41b2488a), SkBits2Float(0xc25ed97a), SkBits2Float(0x41acf889), SkBits2Float(0xc25fe4cd), SkBits2Float(0x41a79f51), SkBits2Float(0xc260e3f1)); 5824 path.lineTo(SkBits2Float(0x41e7e0a8), SkBits2Float(0xc29b8c98)); 5825 path.close(); 5826 5827 SkPath path2(path); 5828 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5829 } 5830 // op end success 1 5831 5832 static void battleOp212(skiatest::Reporter* reporter, const char* filename) { 5833 SkPath path; 5834 path.setFillType((SkPath::FillType) 1); 5835 path.moveTo(SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000)); 5836 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5837 path.cubicTo(SkBits2Float(0x411e5541), SkBits2Float(0xc2a5ffff), SkBits2Float(0x419db1ee), SkBits2Float(0xc2a275ef), SkBits2Float(0x41e7e0a8), SkBits2Float(0xc29b8c98)); 5838 path.cubicTo(SkBits2Float(0x41ef46bb), SkBits2Float(0xc29adc20), SkBits2Float(0x41f6a013), SkBits2Float(0xc29a2338), SkBits2Float(0x41fdebc8), SkBits2Float(0xc29961f8)); 5839 path.lineTo(SkBits2Float(0x41b78eb0), SkBits2Float(0xc25dc215)); 5840 path.cubicTo(SkBits2Float(0x41b2488a), SkBits2Float(0xc25ed97a), SkBits2Float(0x41acf889), SkBits2Float(0xc25fe4cd), SkBits2Float(0x41a79f51), SkBits2Float(0xc260e3f1)); 5841 path.cubicTo(SkBits2Float(0x4163fe32), SkBits2Float(0xc26ae208), SkBits2Float(0x40e4ea54), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea3), SkBits2Float(0xc2700000)); 5842 path.close(); 5843 5844 SkPath path1(path); 5845 path.reset(); 5846 path.setFillType((SkPath::FillType) 0); 5847 path.moveTo(SkBits2Float(0x41fdebc9), SkBits2Float(0xc29961f9)); 5848 path.cubicTo(SkBits2Float(0x423a7ccd), SkBits2Float(0xc28d1085), SkBits2Float(0x426d8f8d), SkBits2Float(0xc270b4b0), SkBits2Float(0x4288fa0c), SkBits2Float(0xc23b8bbf)); 5849 path.lineTo(SkBits2Float(0x424609e8), SkBits2Float(0xc207934a)); 5850 path.cubicTo(SkBits2Float(0x422bbb0d), SkBits2Float(0xc22e0114), SkBits2Float(0x4206cf6b), SkBits2Float(0xc24bf2e1), SkBits2Float(0x41b78eaf), SkBits2Float(0xc25dc216)); 5851 path.lineTo(SkBits2Float(0x41fdebc9), SkBits2Float(0xc29961f9)); 5852 path.close(); 5853 5854 SkPath path2(path); 5855 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5856 } 5857 // op end success 1 5858 5859 static void battleOp213(skiatest::Reporter* reporter, const char* filename) { 5860 SkPath path; 5861 path.setFillType((SkPath::FillType) 0); 5862 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5863 path.cubicTo(SkBits2Float(0x4151cd59), SkBits2Float(0xc2a5ffff), SkBits2Float(0x41d04f3f), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e058), SkBits2Float(0xc293de54)); 5864 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926)); 5865 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 5866 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5867 path.close(); 5868 5869 SkPath path1(path); 5870 path.reset(); 5871 path.setFillType((SkPath::FillType) 0); 5872 path.moveTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54)); 5873 path.cubicTo(SkBits2Float(0x421b86ea), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e)); 5874 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790)); 5875 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927)); 5876 path.lineTo(SkBits2Float(0x4216e057), SkBits2Float(0xc293de54)); 5877 path.close(); 5878 5879 SkPath path2(path); 5880 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5881 } 5882 // op end success 1 5883 5884 static void battleOp214(skiatest::Reporter* reporter, const char* filename) { 5885 SkPath path; 5886 path.setFillType((SkPath::FillType) 1); 5887 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 5888 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5889 path.cubicTo(SkBits2Float(0x4151cd58), SkBits2Float(0xc2a60000), SkBits2Float(0x41d04f3d), SkBits2Float(0xc29fc954), SkBits2Float(0x4216e057), SkBits2Float(0xc293de54)); 5890 path.lineTo(SkBits2Float(0x4216e058), SkBits2Float(0xc293de54)); 5891 path.cubicTo(SkBits2Float(0x421b86eb), SkBits2Float(0xc292aea0), SkBits2Float(0x42201eff), SkBits2Float(0xc29170ed), SkBits2Float(0x4224a79b), SkBits2Float(0xc290257e)); 5892 path.lineTo(SkBits2Float(0x41ee0e15), SkBits2Float(0xc2506790)); 5893 path.cubicTo(SkBits2Float(0x41e78019), SkBits2Float(0xc25246bf), SkBits2Float(0x41e0dbbc), SkBits2Float(0xc2541212), SkBits2Float(0x41da226b), SkBits2Float(0xc255c927)); 5894 path.lineTo(SkBits2Float(0x41da226b), SkBits2Float(0xc255c926)); 5895 path.cubicTo(SkBits2Float(0x419695d1), SkBits2Float(0xc267043d), SkBits2Float(0x4117aa0a), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 5896 path.close(); 5897 5898 SkPath path1(path); 5899 path.reset(); 5900 path.setFillType((SkPath::FillType) 0); 5901 path.moveTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f)); 5902 path.cubicTo(SkBits2Float(0x426f06c3), SkBits2Float(0xc275d105), SkBits2Float(0x42930d85), SkBits2Float(0xc2303df6), SkBits2Float(0x429f3103), SkBits2Float(0xc1bc373f)); 5903 path.lineTo(SkBits2Float(0x42662806), SkBits2Float(0xc1880f44)); 5904 path.cubicTo(SkBits2Float(0x42549b44), SkBits2Float(0xc1fececc), SkBits2Float(0x422cca4c), SkBits2Float(0xc231b2de), SkBits2Float(0x41ee0e18), SkBits2Float(0xc2506792)); 5905 path.lineTo(SkBits2Float(0x4224a79b), SkBits2Float(0xc290257f)); 5906 path.close(); 5907 5908 SkPath path2(path); 5909 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5910 } 5911 // op end success 1 5912 5913 static void battleOp215(skiatest::Reporter* reporter, const char* filename) { 5914 SkPath path; 5915 path.setFillType((SkPath::FillType) 0); 5916 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5917 path.cubicTo(SkBits2Float(0x41741cf0), SkBits2Float(0xc2a60000), SkBits2Float(0x41f1c060), SkBits2Float(0xc29d96da), SkBits2Float(0x422cf7a2), SkBits2Float(0xc28db11c)); 5918 path.lineTo(SkBits2Float(0x41fa12be), SkBits2Float(0xc24cdb0d)); 5919 path.cubicTo(SkBits2Float(0x41aec295), SkBits2Float(0xc263d704), SkBits2Float(0x413077a0), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5920 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5921 path.close(); 5922 5923 SkPath path1(path); 5924 path.reset(); 5925 path.setFillType((SkPath::FillType) 0); 5926 path.moveTo(SkBits2Float(0x422cf7a1), SkBits2Float(0xc28db11c)); 5927 path.cubicTo(SkBits2Float(0x423224e7), SkBits2Float(0xc28c1ca8), SkBits2Float(0x42373bc3), SkBits2Float(0xc28a7620), SkBits2Float(0x423c3abd), SkBits2Float(0xc288bdfd)); 5928 path.lineTo(SkBits2Float(0x420811ca), SkBits2Float(0xc245b313)); 5929 path.cubicTo(SkBits2Float(0x4204753a), SkBits2Float(0xc2482f6b), SkBits2Float(0x4200c767), SkBits2Float(0xc24a924f), SkBits2Float(0x41fa12c1), SkBits2Float(0xc24cdb0e)); 5930 path.lineTo(SkBits2Float(0x422cf7a1), SkBits2Float(0xc28db11c)); 5931 path.close(); 5932 5933 SkPath path2(path); 5934 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5935 } 5936 // op end success 1 5937 5938 static void battleOp216(skiatest::Reporter* reporter, const char* filename) { 5939 SkPath path; 5940 path.setFillType((SkPath::FillType) 1); 5941 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5942 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5943 path.cubicTo(SkBits2Float(0x41741cef), SkBits2Float(0xc2a60000), SkBits2Float(0x41f1c05e), SkBits2Float(0xc29d96da), SkBits2Float(0x422cf7a1), SkBits2Float(0xc28db11c)); 5944 path.lineTo(SkBits2Float(0x422cf7a2), SkBits2Float(0xc28db11c)); 5945 path.cubicTo(SkBits2Float(0x423224e8), SkBits2Float(0xc28c1ca8), SkBits2Float(0x42373bc3), SkBits2Float(0xc28a7620), SkBits2Float(0x423c3abd), SkBits2Float(0xc288bdfd)); 5946 path.lineTo(SkBits2Float(0x420811ca), SkBits2Float(0xc245b313)); 5947 path.cubicTo(SkBits2Float(0x4204753a), SkBits2Float(0xc2482f6b), SkBits2Float(0x4200c767), SkBits2Float(0xc24a924f), SkBits2Float(0x41fa12c1), SkBits2Float(0xc24cdb0e)); 5948 path.lineTo(SkBits2Float(0x41fa12be), SkBits2Float(0xc24cdb0d)); 5949 path.cubicTo(SkBits2Float(0x41aec295), SkBits2Float(0xc263d704), SkBits2Float(0x413077a0), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5950 path.close(); 5951 5952 SkPath path1(path); 5953 path.reset(); 5954 path.setFillType((SkPath::FillType) 0); 5955 path.moveTo(SkBits2Float(0x423c3abe), SkBits2Float(0xc288bdfe)); 5956 path.cubicTo(SkBits2Float(0x42874551), SkBits2Float(0xc258d4f5), SkBits2Float(0x42a17ace), SkBits2Float(0xc1fc3ce7), SkBits2Float(0x42a57844), SkBits2Float(0xc0d41d22)); 5957 path.lineTo(SkBits2Float(0x426f3bc1), SkBits2Float(0xc09955d3)); 5958 path.cubicTo(SkBits2Float(0x426976f3), SkBits2Float(0xc1b65735), SkBits2Float(0x4243927c), SkBits2Float(0xc21cbef5), SkBits2Float(0x420811ca), SkBits2Float(0xc245b314)); 5959 path.lineTo(SkBits2Float(0x423c3abe), SkBits2Float(0xc288bdfe)); 5960 path.close(); 5961 5962 SkPath path2(path); 5963 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5964 } 5965 // op end success 1 5966 5967 static void battleOp217(skiatest::Reporter* reporter, const char* filename) { 5968 SkPath path; 5969 path.setFillType((SkPath::FillType) 0); 5970 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5971 path.cubicTo(SkBits2Float(0x4188e880), SkBits2Float(0xc2a60000), SkBits2Float(0x42073c1a), SkBits2Float(0xc29b6b86), SkBits2Float(0x423f3295), SkBits2Float(0xc287b573)); 5972 path.lineTo(SkBits2Float(0x420a3712), SkBits2Float(0xc2443499)); 5973 path.cubicTo(SkBits2Float(0x41c3852b), SkBits2Float(0xc260b421), SkBits2Float(0x4145f08c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5974 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 5975 path.close(); 5976 5977 SkPath path1(path); 5978 path.reset(); 5979 path.setFillType((SkPath::FillType) 0); 5980 path.moveTo(SkBits2Float(0x423f3294), SkBits2Float(0xc287b572)); 5981 path.cubicTo(SkBits2Float(0x4244c015), SkBits2Float(0xc285c0c3), SkBits2Float(0x424a2e84), SkBits2Float(0xc283b664), SkBits2Float(0x424f7bec), SkBits2Float(0xc281970f)); 5982 path.lineTo(SkBits2Float(0x4215fd0e), SkBits2Float(0xc23b5bf1)); 5983 path.cubicTo(SkBits2Float(0x421227cb), SkBits2Float(0xc23e6d7a), SkBits2Float(0x420e3aa9), SkBits2Float(0xc24160b8), SkBits2Float(0x420a3713), SkBits2Float(0xc2443498)); 5984 path.lineTo(SkBits2Float(0x423f3294), SkBits2Float(0xc287b572)); 5985 path.close(); 5986 5987 SkPath path2(path); 5988 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 5989 } 5990 // op end success 1 5991 5992 static void battleOp218(skiatest::Reporter* reporter, const char* filename) { 5993 SkPath path; 5994 path.setFillType((SkPath::FillType) 1); 5995 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 5996 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 5997 path.cubicTo(SkBits2Float(0x4188e880), SkBits2Float(0xc2a60000), SkBits2Float(0x42073c1a), SkBits2Float(0xc29b6b86), SkBits2Float(0x423f3295), SkBits2Float(0xc287b573)); 5998 path.lineTo(SkBits2Float(0x424f7bec), SkBits2Float(0xc281970f)); 5999 path.lineTo(SkBits2Float(0x4215fd0e), SkBits2Float(0xc23b5bf1)); 6000 path.cubicTo(SkBits2Float(0x421227cb), SkBits2Float(0xc23e6d7a), SkBits2Float(0x420e3aa9), SkBits2Float(0xc24160b8), SkBits2Float(0x420a3713), SkBits2Float(0xc2443498)); 6001 path.lineTo(SkBits2Float(0x420a3712), SkBits2Float(0xc2443499)); 6002 path.cubicTo(SkBits2Float(0x41c3852b), SkBits2Float(0xc260b421), SkBits2Float(0x4145f08c), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6003 path.close(); 6004 6005 SkPath path1(path); 6006 path.reset(); 6007 path.setFillType((SkPath::FillType) 0); 6008 path.moveTo(SkBits2Float(0x424f7bed), SkBits2Float(0xc281970f)); 6009 path.cubicTo(SkBits2Float(0x42939bdb), SkBits2Float(0xc23cf22a), SkBits2Float(0x42aabb70), SkBits2Float(0xc19e30f8), SkBits2Float(0x42a530dd), SkBits2Float(0x4102f5b1)); 6010 path.lineTo(SkBits2Float(0x426ed486), SkBits2Float(0x40bd56e4)); 6011 path.cubicTo(SkBits2Float(0x4276d778), SkBits2Float(0xc164b5d6), SkBits2Float(0x4255690c), SkBits2Float(0xc2089663), SkBits2Float(0x4215fd0d), SkBits2Float(0xc23b5bf2)); 6012 path.lineTo(SkBits2Float(0x424f7bed), SkBits2Float(0xc281970f)); 6013 path.close(); 6014 6015 SkPath path2(path); 6016 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6017 } 6018 // op end success 1 6019 6020 static void battleOp219(skiatest::Reporter* reporter, const char* filename) { 6021 SkPath path; 6022 path.setFillType((SkPath::FillType) 0); 6023 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6024 path.cubicTo(SkBits2Float(0x4198fc97), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4216a3e3), SkBits2Float(0xc298caff), SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9b)); 6025 path.lineTo(SkBits2Float(0x4217bd0d), SkBits2Float(0xc239f1d8)); 6026 path.cubicTo(SkBits2Float(0x41d9cb04), SkBits2Float(0xc25ce7ce), SkBits2Float(0x415d2f7f), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 6027 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6028 path.close(); 6029 6030 SkPath path1(path); 6031 path.reset(); 6032 path.setFillType((SkPath::FillType) 0); 6033 path.moveTo(SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9c)); 6034 path.cubicTo(SkBits2Float(0x4257c623), SkBits2Float(0xc27c6f1e), SkBits2Float(0x425d7a38), SkBits2Float(0xc27771f7), SkBits2Float(0x42630157), SkBits2Float(0xc27243fd)); 6035 path.lineTo(SkBits2Float(0x422419a4), SkBits2Float(0xc22f21bb)); 6036 path.cubicTo(SkBits2Float(0x42201aab), SkBits2Float(0xc232e046), SkBits2Float(0x421bfb30), SkBits2Float(0xc2367b84), SkBits2Float(0x4217bd0d), SkBits2Float(0xc239f1d8)); 6037 path.lineTo(SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9c)); 6038 path.close(); 6039 6040 SkPath path2(path); 6041 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6042 } 6043 // op end success 1 6044 6045 static void battleOp220(skiatest::Reporter* reporter, const char* filename) { 6046 SkPath path; 6047 path.setFillType((SkPath::FillType) 1); 6048 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 6049 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6050 path.cubicTo(SkBits2Float(0x4198fc97), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4216a3e3), SkBits2Float(0xc298caff), SkBits2Float(0x4251e7a7), SkBits2Float(0xc2809c9c)); 6051 path.cubicTo(SkBits2Float(0x4257c623), SkBits2Float(0xc27c6f1e), SkBits2Float(0x425d7a38), SkBits2Float(0xc27771f7), SkBits2Float(0x42630157), SkBits2Float(0xc27243fd)); 6052 path.lineTo(SkBits2Float(0x422419a4), SkBits2Float(0xc22f21bb)); 6053 path.cubicTo(SkBits2Float(0x42201aab), SkBits2Float(0xc232e046), SkBits2Float(0x421bfb30), SkBits2Float(0xc2367b84), SkBits2Float(0x4217bd0d), SkBits2Float(0xc239f1d8)); 6054 path.cubicTo(SkBits2Float(0x41d9cb04), SkBits2Float(0xc25ce7ce), SkBits2Float(0x415d2f7f), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 6055 path.close(); 6056 6057 SkPath path1(path); 6058 path.reset(); 6059 path.setFillType((SkPath::FillType) 0); 6060 path.moveTo(SkBits2Float(0x42630157), SkBits2Float(0xc27243ff)); 6061 path.cubicTo(SkBits2Float(0x429f78af), SkBits2Float(0xc21c1e80), SkBits2Float(0x42b11918), SkBits2Float(0xc0cad7ee), SkBits2Float(0x429f0274), SkBits2Float(0x41bea8f4)); 6062 path.lineTo(SkBits2Float(0x4265e4b4), SkBits2Float(0x4189d394)); 6063 path.cubicTo(SkBits2Float(0x428005cc), SkBits2Float(0xc092a249), SkBits2Float(0x42668fa3), SkBits2Float(0xc1e1b6e5), SkBits2Float(0x422419a4), SkBits2Float(0xc22f21bb)); 6064 path.lineTo(SkBits2Float(0x42630157), SkBits2Float(0xc27243ff)); 6065 path.close(); 6066 6067 SkPath path2(path); 6068 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6069 } 6070 // op end success 1 6071 6072 static void battleOp221(skiatest::Reporter* reporter, const char* filename) { 6073 SkPath path; 6074 path.setFillType((SkPath::FillType) 0); 6075 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6076 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b67), SkBits2Float(0xc26ce46c)); 6077 path.lineTo(SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58)); 6078 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 6079 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6080 path.close(); 6081 6082 SkPath path1(path); 6083 path.reset(); 6084 path.setFillType((SkPath::FillType) 0); 6085 path.moveTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d)); 6086 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2)); 6087 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e)); 6088 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282652), SkBits2Float(0xc22b3f58)); 6089 path.lineTo(SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d)); 6090 path.close(); 6091 6092 SkPath path2(path); 6093 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6094 } 6095 // op end success 1 6096 6097 static void battleOp222(skiatest::Reporter* reporter, const char* filename) { 6098 SkPath path; 6099 path.setFillType((SkPath::FillType) 1); 6100 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6101 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6102 path.cubicTo(SkBits2Float(0x41ae0130), SkBits2Float(0xc2a5ffff), SkBits2Float(0x422a8737), SkBits2Float(0xc294ec91), SkBits2Float(0x42689b68), SkBits2Float(0xc26ce46d)); 6103 path.cubicTo(SkBits2Float(0x426ebcd2), SkBits2Float(0xc266df67), SkBits2Float(0x4274a1d2), SkBits2Float(0xc2609e09), SkBits2Float(0x427a4701), SkBits2Float(0xc25a23f2)); 6104 path.lineTo(SkBits2Float(0x4234ec64), SkBits2Float(0xc21db11e)); 6105 path.cubicTo(SkBits2Float(0x4230d7ae), SkBits2Float(0xc2225fbc), SkBits2Float(0x422c94d6), SkBits2Float(0xc226e55a), SkBits2Float(0x42282651), SkBits2Float(0xc22b3f58)); 6106 path.cubicTo(SkBits2Float(0x41f68bfb), SkBits2Float(0xc2574fdc), SkBits2Float(0x417b92b3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6107 path.close(); 6108 6109 SkPath path1(path); 6110 path.reset(); 6111 path.setFillType((SkPath::FillType) 0); 6112 path.moveTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2)); 6113 path.cubicTo(SkBits2Float(0x42ac7185), SkBits2Float(0xc1db2f83), SkBits2Float(0x42b35ed0), SkBits2Float(0x413e447a), SkBits2Float(0x428e4a3d), SkBits2Float(0x422afde8)); 6114 path.lineTo(SkBits2Float(0x424db871), SkBits2Float(0x41f73799)); 6115 path.cubicTo(SkBits2Float(0x4281aa54), SkBits2Float(0x41098afa), SkBits2Float(0x427950da), SkBits2Float(0xc19e728d), SkBits2Float(0x4234ec66), SkBits2Float(0xc21db120)); 6116 path.lineTo(SkBits2Float(0x427a4702), SkBits2Float(0xc25a23f2)); 6117 path.close(); 6118 6119 SkPath path2(path); 6120 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6121 } 6122 // op end success 1 6123 6124 static void battleOp223(skiatest::Reporter* reporter, const char* filename) { 6125 SkPath path; 6126 path.setFillType((SkPath::FillType) 0); 6127 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6128 path.cubicTo(SkBits2Float(0x41c50a2c), SkBits2Float(0xc2a60000), SkBits2Float(0x423ff37f), SkBits2Float(0xc2901f4e), SkBits2Float(0x427f077c), SkBits2Float(0xc25490c6)); 6129 path.lineTo(SkBits2Float(0x42385bc5), SkBits2Float(0xc219a96d)); 6130 path.cubicTo(SkBits2Float(0x420ac287), SkBits2Float(0xc2505e9c), SkBits2Float(0x418e7039), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6131 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6132 path.close(); 6133 6134 SkPath path1(path); 6135 path.reset(); 6136 path.setFillType((SkPath::FillType) 0); 6137 path.moveTo(SkBits2Float(0x427f077b), SkBits2Float(0xc25490c6)); 6138 path.cubicTo(SkBits2Float(0x42829e52), SkBits2Float(0xc24d1e28), SkBits2Float(0x42858ec1), SkBits2Float(0xc24566d6), SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081)); 6139 path.lineTo(SkBits2Float(0x42451839), SkBits2Float(0xc208f1b7)); 6140 path.cubicTo(SkBits2Float(0x4241186a), SkBits2Float(0xc20eb335), SkBits2Float(0x423cd88e), SkBits2Float(0xc2144725), SkBits2Float(0x42385bc4), SkBits2Float(0xc219a96c)); 6141 path.lineTo(SkBits2Float(0x427f077b), SkBits2Float(0xc25490c6)); 6142 path.close(); 6143 6144 SkPath path2(path); 6145 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6146 } 6147 // op end success 1 6148 6149 static void battleOp224(skiatest::Reporter* reporter, const char* filename) { 6150 SkPath path; 6151 path.setFillType((SkPath::FillType) 1); 6152 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6153 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6154 path.cubicTo(SkBits2Float(0x41c50a2c), SkBits2Float(0xc2a60000), SkBits2Float(0x423ff37f), SkBits2Float(0xc2901f4e), SkBits2Float(0x427f077c), SkBits2Float(0xc25490c6)); 6155 path.lineTo(SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081)); 6156 path.lineTo(SkBits2Float(0x42451839), SkBits2Float(0xc208f1b7)); 6157 path.cubicTo(SkBits2Float(0x4241186a), SkBits2Float(0xc20eb335), SkBits2Float(0x423cd88e), SkBits2Float(0xc2144725), SkBits2Float(0x42385bc4), SkBits2Float(0xc219a96c)); 6158 path.lineTo(SkBits2Float(0x42385bc5), SkBits2Float(0xc219a96d)); 6159 path.cubicTo(SkBits2Float(0x420ac287), SkBits2Float(0xc2505e9c), SkBits2Float(0x418e7039), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6160 path.close(); 6161 6162 SkPath path1(path); 6163 path.reset(); 6164 path.setFillType((SkPath::FillType) 0); 6165 path.moveTo(SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081)); 6166 path.cubicTo(SkBits2Float(0x42b71f8a), SkBits2Float(0xc15aea65), SkBits2Float(0x42adb77f), SkBits2Float(0x42002593), SkBits2Float(0x42645e8b), SkBits2Float(0x4270faee)); 6167 path.lineTo(SkBits2Float(0x42251616), SkBits2Float(0x422e33d9)); 6168 path.cubicTo(SkBits2Float(0x427b2825), SkBits2Float(0x41b945be), SkBits2Float(0x428460d4), SkBits2Float(0xc11e4099), SkBits2Float(0x4245183a), SkBits2Float(0xc208f1b8)); 6169 path.lineTo(SkBits2Float(0x428852e3), SkBits2Float(0xc23d7081)); 6170 path.close(); 6171 6172 SkPath path2(path); 6173 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6174 } 6175 // op end success 1 6176 6177 static void battleOp225(skiatest::Reporter* reporter, const char* filename) { 6178 SkPath path; 6179 path.setFillType((SkPath::FillType) 0); 6180 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6181 path.cubicTo(SkBits2Float(0x41d8749b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4251a993), SkBits2Float(0xc28b9f9f), SkBits2Float(0x4287e789), SkBits2Float(0xc23ea40d)); 6182 path.lineTo(SkBits2Float(0x42447d05), SkBits2Float(0xc209d00a)); 6183 path.cubicTo(SkBits2Float(0x4217902d), SkBits2Float(0xc249dd89), SkBits2Float(0x419c7951), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 6184 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6185 path.close(); 6186 6187 SkPath path1(path); 6188 path.reset(); 6189 path.setFillType((SkPath::FillType) 0); 6190 path.moveTo(SkBits2Float(0x4287e78a), SkBits2Float(0xc23ea40e)); 6191 path.cubicTo(SkBits2Float(0x428af3dc), SkBits2Float(0xc235f2f3), SkBits2Float(0x428dca5e), SkBits2Float(0xc22cf844), SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef)); 6192 path.lineTo(SkBits2Float(0x4250c881), SkBits2Float(0xc1ecb95a)); 6193 path.cubicTo(SkBits2Float(0x424cff91), SkBits2Float(0xc1fa13ac), SkBits2Float(0x4248e532), SkBits2Float(0xc2038788), SkBits2Float(0x42447d06), SkBits2Float(0xc209d00a)); 6194 path.lineTo(SkBits2Float(0x4287e78a), SkBits2Float(0xc23ea40e)); 6195 path.close(); 6196 6197 SkPath path2(path); 6198 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6199 } 6200 // op end success 1 6201 6202 static void battleOp226(skiatest::Reporter* reporter, const char* filename) { 6203 SkPath path; 6204 path.setFillType((SkPath::FillType) 1); 6205 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6206 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6207 path.cubicTo(SkBits2Float(0x41d8749b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4251a993), SkBits2Float(0xc28b9f9f), SkBits2Float(0x4287e78a), SkBits2Float(0xc23ea40e)); 6208 path.cubicTo(SkBits2Float(0x428af3dc), SkBits2Float(0xc235f2f3), SkBits2Float(0x428dca5e), SkBits2Float(0xc22cf844), SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef)); 6209 path.lineTo(SkBits2Float(0x4250c881), SkBits2Float(0xc1ecb95a)); 6210 path.cubicTo(SkBits2Float(0x424cff91), SkBits2Float(0xc1fa13ac), SkBits2Float(0x4248e532), SkBits2Float(0xc2038788), SkBits2Float(0x42447d05), SkBits2Float(0xc209d00a)); 6211 path.cubicTo(SkBits2Float(0x4217902d), SkBits2Float(0xc249dd89), SkBits2Float(0x419c7951), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6212 path.close(); 6213 6214 SkPath path1(path); 6215 path.reset(); 6216 path.setFillType((SkPath::FillType) 0); 6217 path.moveTo(SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef)); 6218 path.cubicTo(SkBits2Float(0x42bd187d), SkBits2Float(0xbfc2a74a), SkBits2Float(0x42a250ed), SkBits2Float(0x42421cbf), SkBits2Float(0x42287a28), SkBits2Float(0x428f09b7)); 6219 path.lineTo(SkBits2Float(0x41f394da), SkBits2Float(0x424ecd48)); 6220 path.cubicTo(SkBits2Float(0x426aac8a), SkBits2Float(0x420c527b), SkBits2Float(0x4288b219), SkBits2Float(0xbf8cb68f), SkBits2Float(0x4250c882), SkBits2Float(0xc1ecb95c)); 6221 path.lineTo(SkBits2Float(0x4290688d), SkBits2Float(0xc223bbef)); 6222 path.close(); 6223 6224 SkPath path2(path); 6225 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6226 } 6227 // op end success 1 6228 6229 static void battleOp227(skiatest::Reporter* reporter, const char* filename) { 6230 SkPath path; 6231 path.setFillType((SkPath::FillType) 0); 6232 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6233 path.cubicTo(SkBits2Float(0x41f1efaa), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42685cb5), SkBits2Float(0xc2851a3e), SkBits2Float(0x429160d2), SkBits2Float(0xc22043b6)); 6234 path.lineTo(SkBits2Float(0x42522f73), SkBits2Float(0xc1e7b52d)); 6235 path.cubicTo(SkBits2Float(0x4227f8ff), SkBits2Float(0xc2406ff8), SkBits2Float(0x41aee4c7), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 6236 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6237 path.close(); 6238 6239 SkPath path1(path); 6240 path.reset(); 6241 path.setFillType((SkPath::FillType) 0); 6242 path.moveTo(SkBits2Float(0x429160d2), SkBits2Float(0xc22043b7)); 6243 path.cubicTo(SkBits2Float(0x42943aa0), SkBits2Float(0xc215eba6), SkBits2Float(0x4296cd42), SkBits2Float(0xc20b4794), SkBits2Float(0x429915e6), SkBits2Float(0xc200631e)); 6244 path.lineTo(SkBits2Float(0x425d5418), SkBits2Float(0xc1b99eb9)); 6245 path.cubicTo(SkBits2Float(0x425a06d4), SkBits2Float(0xc1c95e3a), SkBits2Float(0x42564e98), SkBits2Float(0xc1d8c0a6), SkBits2Float(0x42522f74), SkBits2Float(0xc1e7b52e)); 6246 path.lineTo(SkBits2Float(0x429160d2), SkBits2Float(0xc22043b7)); 6247 path.close(); 6248 6249 SkPath path2(path); 6250 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6251 } 6252 // op end success 1 6253 6254 static void battleOp228(skiatest::Reporter* reporter, const char* filename) { 6255 SkPath path; 6256 path.setFillType((SkPath::FillType) 1); 6257 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6258 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6259 path.cubicTo(SkBits2Float(0x41f1efa9), SkBits2Float(0xc2a60000), SkBits2Float(0x42685cb5), SkBits2Float(0xc2851a3e), SkBits2Float(0x429160d2), SkBits2Float(0xc22043b7)); 6260 path.lineTo(SkBits2Float(0x429160d2), SkBits2Float(0xc22043b6)); 6261 path.cubicTo(SkBits2Float(0x42943aa0), SkBits2Float(0xc215eba5), SkBits2Float(0x4296cd42), SkBits2Float(0xc20b4794), SkBits2Float(0x429915e6), SkBits2Float(0xc200631e)); 6262 path.lineTo(SkBits2Float(0x425d5418), SkBits2Float(0xc1b99eb9)); 6263 path.cubicTo(SkBits2Float(0x425a06d4), SkBits2Float(0xc1c95e3a), SkBits2Float(0x42564e98), SkBits2Float(0xc1d8c0a6), SkBits2Float(0x42522f74), SkBits2Float(0xc1e7b52e)); 6264 path.lineTo(SkBits2Float(0x42522f73), SkBits2Float(0xc1e7b52d)); 6265 path.cubicTo(SkBits2Float(0x4227f8ff), SkBits2Float(0xc2406ff8), SkBits2Float(0x41aee4c7), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6266 path.close(); 6267 6268 SkPath path1(path); 6269 path.reset(); 6270 path.setFillType((SkPath::FillType) 0); 6271 path.moveTo(SkBits2Float(0x429915e6), SkBits2Float(0xc200631e)); 6272 path.cubicTo(SkBits2Float(0x42abe101), SkBits2Float(0xc11b0235), SkBits2Float(0x42aa16bb), SkBits2Float(0x417b685c), SkBits2Float(0x42942fff), SkBits2Float(0x42159e77)); 6273 path.cubicTo(SkBits2Float(0x427c9284), SkBits2Float(0x426c62d8), SkBits2Float(0x422cf27d), SkBits2Float(0x4295ccdb), SkBits2Float(0x419d039e), SkBits2Float(0x42a14aca)); 6274 path.lineTo(SkBits2Float(0x4163022c), SkBits2Float(0x42693188)); 6275 path.cubicTo(SkBits2Float(0x41fa0b56), SkBits2Float(0x42589424), SkBits2Float(0x4236951c), SkBits2Float(0x422ae1ad), SkBits2Float(0x42563f3c), SkBits2Float(0x41d85112)); 6276 path.cubicTo(SkBits2Float(0x4275e95c), SkBits2Float(0x4135bd94), SkBits2Float(0x42787fea), SkBits2Float(0xc0e01be1), SkBits2Float(0x425d5419), SkBits2Float(0xc1b99eba)); 6277 path.lineTo(SkBits2Float(0x429915e6), SkBits2Float(0xc200631e)); 6278 path.close(); 6279 6280 SkPath path2(path); 6281 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6282 } 6283 // op end success 1 6284 6285 static void battleOp229(skiatest::Reporter* reporter, const char* filename) { 6286 SkPath path; 6287 path.setFillType((SkPath::FillType) 0); 6288 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6289 path.cubicTo(SkBits2Float(0x4206c976), SkBits2Float(0xc2a60000), SkBits2Float(0x42801937), SkBits2Float(0xc27a823c), SkBits2Float(0x4299a0d7), SkBits2Float(0xc1fb88d1)); 6290 path.lineTo(SkBits2Float(0x425e1cfa), SkBits2Float(0xc1b5d505)); 6291 path.cubicTo(SkBits2Float(0x423933e1), SkBits2Float(0xc2351735), SkBits2Float(0x41c2df6b), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 6292 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6293 path.close(); 6294 6295 SkPath path1(path); 6296 path.reset(); 6297 path.setFillType((SkPath::FillType) 0); 6298 path.moveTo(SkBits2Float(0x4299a0d8), SkBits2Float(0xc1fb88d0)); 6299 path.cubicTo(SkBits2Float(0x429c1b73), SkBits2Float(0xc1e34f53), SkBits2Float(0x429e39d2), SkBits2Float(0xc1ca8528), SkBits2Float(0x429ff920), SkBits2Float(0xc1b14b8c)); 6300 path.lineTo(SkBits2Float(0x42674955), SkBits2Float(0xc1802a45)); 6301 path.cubicTo(SkBits2Float(0x4264c2a3), SkBits2Float(0xc192666d), SkBits2Float(0x4261b27b), SkBits2Float(0xc1a45204), SkBits2Float(0x425e1cfb), SkBits2Float(0xc1b5d506)); 6302 path.lineTo(SkBits2Float(0x4299a0d8), SkBits2Float(0xc1fb88d0)); 6303 path.close(); 6304 6305 SkPath path2(path); 6306 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6307 } 6308 // op end success 1 6309 6310 static void battleOp230(skiatest::Reporter* reporter, const char* filename) { 6311 if (!FLAGS_runFail) { 6312 return; // draws wrong 6313 } 6314 SkPath path; 6315 path.setFillType((SkPath::FillType) 1); 6316 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6317 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6318 path.cubicTo(SkBits2Float(0x4206c976), SkBits2Float(0xc2a60000), SkBits2Float(0x42801937), SkBits2Float(0xc27a823c), SkBits2Float(0x4299a0d8), SkBits2Float(0xc1fb88d0)); 6319 path.cubicTo(SkBits2Float(0x429c1b73), SkBits2Float(0xc1e34f53), SkBits2Float(0x429e39d2), SkBits2Float(0xc1ca8528), SkBits2Float(0x429ff920), SkBits2Float(0xc1b14b8c)); 6320 path.lineTo(SkBits2Float(0x42674955), SkBits2Float(0xc1802a45)); 6321 path.cubicTo(SkBits2Float(0x4264c2a3), SkBits2Float(0xc192666d), SkBits2Float(0x4261b27b), SkBits2Float(0xc1a45204), SkBits2Float(0x425e1cfa), SkBits2Float(0xc1b5d505)); 6322 path.cubicTo(SkBits2Float(0x423933e1), SkBits2Float(0xc2351735), SkBits2Float(0x41c2df6b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6323 path.close(); 6324 6325 SkPath path1(path); 6326 path.reset(); 6327 path.setFillType((SkPath::FillType) 0); 6328 path.moveTo(SkBits2Float(0x429ff91f), SkBits2Float(0xc1b14b8a)); 6329 path.cubicTo(SkBits2Float(0x42ae673b), SkBits2Float(0x40783c41), SkBits2Float(0x42a293c2), SkBits2Float(0x41fe6960), SkBits2Float(0x4280464e), SkBits2Float(0x4252ba7b)); 6330 path.cubicTo(SkBits2Float(0x423bf1b3), SkBits2Float(0x42932023), SkBits2Float(0x41a5f32c), SkBits2Float(0x42a99309), SkBits2Float(0xc0c67989), SkBits2Float(0x42a5892f)); 6331 path.lineTo(SkBits2Float(0xc08f79c7), SkBits2Float(0x426f5437)); 6332 path.cubicTo(SkBits2Float(0x416fed74), SkBits2Float(0x42752af2), SkBits2Float(0x4207dcfc), SkBits2Float(0x4254b62d), SkBits2Float(0x42397512), SkBits2Float(0x42185575)); 6333 path.cubicTo(SkBits2Float(0x426b0d26), SkBits2Float(0x41b7e97d), SkBits2Float(0x427c2639), SkBits2Float(0x40337286), SkBits2Float(0x42674956), SkBits2Float(0xc1802a46)); 6334 path.lineTo(SkBits2Float(0x429ff91f), SkBits2Float(0xc1b14b8a)); 6335 path.close(); 6336 6337 SkPath path2(path); 6338 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6339 } 6340 // op end success 1 6341 6342 static void battleOp231(skiatest::Reporter* reporter, const char* filename) { 6343 SkPath path; 6344 path.setFillType((SkPath::FillType) 0); 6345 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6346 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a5ffff), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d7), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986)); 6347 path.lineTo(SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f)); 6348 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 6349 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6350 path.close(); 6351 6352 SkPath path1(path); 6353 path.reset(); 6354 path.setFillType((SkPath::FillType) 0); 6355 path.moveTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988)); 6356 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b837), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594e), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba)); 6357 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0)); 6358 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f)); 6359 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988)); 6360 path.close(); 6361 6362 SkPath path2(path); 6363 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6364 } 6365 // op end success 1 6366 6367 static void battleOp232(skiatest::Reporter* reporter, const char* filename) { 6368 SkPath path; 6369 path.setFillType((SkPath::FillType) 1); 6370 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6371 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6372 path.cubicTo(SkBits2Float(0x421472e7), SkBits2Float(0xc2a60000), SkBits2Float(0x428b6da4), SkBits2Float(0xc26973d8), SkBits2Float(0x429fb179), SkBits2Float(0xc1b54988)); 6373 path.lineTo(SkBits2Float(0x429fb179), SkBits2Float(0xc1b54986)); 6374 path.cubicTo(SkBits2Float(0x42a1a632), SkBits2Float(0xc199b836), SkBits2Float(0x42a3282f), SkBits2Float(0xc17b594d), SkBits2Float(0x42a43501), SkBits2Float(0xc142a7ba)); 6375 path.lineTo(SkBits2Float(0x426d6865), SkBits2Float(0xc10cb6f0)); 6376 path.cubicTo(SkBits2Float(0x426be3bc), SkBits2Float(0xc135b2ae), SkBits2Float(0x4269b5af), SkBits2Float(0xc15e3ec8), SkBits2Float(0x4266e1be), SkBits2Float(0xc1830d0f)); 6377 path.cubicTo(SkBits2Float(0x42499544), SkBits2Float(0xc228c2c8), SkBits2Float(0x41d69ff6), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6378 path.close(); 6379 6380 SkPath path1(path); 6381 path.reset(); 6382 path.setFillType((SkPath::FillType) 0); 6383 path.moveTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb)); 6384 path.cubicTo(SkBits2Float(0x42ace9b0), SkBits2Float(0x4189ae79), SkBits2Float(0x429590d6), SkBits2Float(0x423ab1c1), SkBits2Float(0x424df762), SkBits2Float(0x428231a6)); 6385 path.cubicTo(SkBits2Float(0x41e19a31), SkBits2Float(0x42a70a69), SkBits2Float(0xc04a3289), SkBits2Float(0x42b03133), SkBits2Float(0xc1f5f36e), SkBits2Float(0x429a3139)); 6386 path.lineTo(SkBits2Float(0xc1b1cbb9), SkBits2Float(0x425eedb9)); 6387 path.cubicTo(SkBits2Float(0xc0122aac), SkBits2Float(0x427ebc5a), SkBits2Float(0x41a31606), SkBits2Float(0x42718130), SkBits2Float(0x4214e430), SkBits2Float(0x423c3b73)); 6388 path.cubicTo(SkBits2Float(0x42583d5c), SkBits2Float(0x4206f5b6), SkBits2Float(0x4279fe97), SkBits2Float(0x41470ec8), SkBits2Float(0x426d6866), SkBits2Float(0xc10cb6eb)); 6389 path.lineTo(SkBits2Float(0x42a43502), SkBits2Float(0xc142a7bb)); 6390 path.close(); 6391 6392 SkPath path2(path); 6393 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6394 } 6395 // op end success 1 6396 6397 static void battleOp233(skiatest::Reporter* reporter, const char* filename) { 6398 SkPath path; 6399 path.setFillType((SkPath::FillType) 0); 6400 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6401 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f68), SkBits2Float(0xc16b5614)); 6402 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61)); 6403 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6404 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6405 path.close(); 6406 6407 SkPath path1(path); 6408 path.reset(); 6409 path.setFillType((SkPath::FillType) 0); 6410 path.moveTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613)); 6411 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 6412 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48)); 6413 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63)); 6414 path.lineTo(SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613)); 6415 path.close(); 6416 6417 SkPath path2(path); 6418 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6419 } 6420 // op end success 1 6421 6422 static void battleOp234(skiatest::Reporter* reporter, const char* filename) { 6423 SkPath path; 6424 path.setFillType((SkPath::FillType) 1); 6425 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6426 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6427 path.cubicTo(SkBits2Float(0x4220aa02), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42952310), SkBits2Float(0xc258f48d), SkBits2Float(0x42a35f69), SkBits2Float(0xc16b5613)); 6428 path.cubicTo(SkBits2Float(0x42a4bd24), SkBits2Float(0xc12ea3c2), SkBits2Float(0x42a59325), SkBits2Float(0xc0e282d6), SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 6429 path.lineTo(SkBits2Float(0x426fd18d), SkBits2Float(0xc0154a48)); 6430 path.cubicTo(SkBits2Float(0x426f62a1), SkBits2Float(0xc0a3be33), SkBits2Float(0x426e2d39), SkBits2Float(0xc0fc7dbb), SkBits2Float(0x426c3397), SkBits2Float(0xc12a1f63)); 6431 path.lineTo(SkBits2Float(0x426c3395), SkBits2Float(0xc12a1f61)); 6432 path.cubicTo(SkBits2Float(0x42579ea8), SkBits2Float(0xc21cd5ce), SkBits2Float(0x41e84916), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6433 path.close(); 6434 6435 SkPath path1(path); 6436 path.reset(); 6437 path.setFillType((SkPath::FillType) 0); 6438 path.moveTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 6439 path.cubicTo(SkBits2Float(0x42a85e4f), SkBits2Float(0x41e6959e), SkBits2Float(0x4285b4e3), SkBits2Float(0x426ae44f), SkBits2Float(0x4219b105), SkBits2Float(0x42932450)); 6440 path.cubicTo(SkBits2Float(0x411fe111), SkBits2Float(0x42b0d679), SkBits2Float(0xc1c3966b), SkBits2Float(0x42ab1d42), SkBits2Float(0xc2482755), SkBits2Float(0x428470e8)); 6441 path.lineTo(SkBits2Float(0xc210b07c), SkBits2Float(0x423f7b24)); 6442 path.cubicTo(SkBits2Float(0xc18d6382), SkBits2Float(0x427764e8), SkBits2Float(0x40e72680), SkBits2Float(0x427fab4e), SkBits2Float(0x41de345e), SkBits2Float(0x4254bc3b)); 6443 path.cubicTo(SkBits2Float(0x42414f8e), SkBits2Float(0x4229cd28), SkBits2Float(0x42736c9d), SkBits2Float(0x41a6b008), SkBits2Float(0x426fd18e), SkBits2Float(0xc0154a3f)); 6444 path.lineTo(SkBits2Float(0x42a5dfdf), SkBits2Float(0xc04e84a0)); 6445 path.close(); 6446 6447 SkPath path2(path); 6448 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6449 } 6450 // op end success 1 6451 6452 static void battleOp235(skiatest::Reporter* reporter, const char* filename) { 6453 SkPath path; 6454 path.setFillType((SkPath::FillType) 0); 6455 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6456 path.cubicTo(SkBits2Float(0x422e5e2d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429f82f2), SkBits2Float(0xc2451c35), SkBits2Float(0x42a59867), SkBits2Float(0xc0b956c5)); 6457 path.lineTo(SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae3)); 6458 path.cubicTo(SkBits2Float(0x42669e7e), SkBits2Float(0xc20e7d42), SkBits2Float(0x41fc1920), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6459 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6460 path.close(); 6461 6462 SkPath path1(path); 6463 path.reset(); 6464 path.setFillType((SkPath::FillType) 0); 6465 path.moveTo(SkBits2Float(0x42a59868), SkBits2Float(0xc0b956ca)); 6466 path.cubicTo(SkBits2Float(0x42a62cd8), SkBits2Float(0xbfd2dd07), SkBits2Float(0x42a621be), SkBits2Float(0x4020d557), SkBits2Float(0x42a57734), SkBits2Float(0x40d4ef9c)); 6467 path.lineTo(SkBits2Float(0x426f3a3b), SkBits2Float(0x4099edfc)); 6468 path.cubicTo(SkBits2Float(0x427030cb), SkBits2Float(0x3fe887ba), SkBits2Float(0x427040d6), SkBits2Float(0xbf986e77), SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae4)); 6469 path.lineTo(SkBits2Float(0x42a59868), SkBits2Float(0xc0b956ca)); 6470 path.close(); 6471 6472 SkPath path2(path); 6473 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6474 } 6475 // op end success 1 6476 6477 static void battleOp236(skiatest::Reporter* reporter, const char* filename) { 6478 SkPath path; 6479 path.setFillType((SkPath::FillType) 1); 6480 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6481 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6482 path.cubicTo(SkBits2Float(0x422e5e2d), SkBits2Float(0xc2a5ffff), SkBits2Float(0x429f82f2), SkBits2Float(0xc2451c35), SkBits2Float(0x42a59868), SkBits2Float(0xc0b956ca)); 6483 path.cubicTo(SkBits2Float(0x42a62cd8), SkBits2Float(0xbfd2dd07), SkBits2Float(0x42a621be), SkBits2Float(0x4020d557), SkBits2Float(0x42a57734), SkBits2Float(0x40d4ef9c)); 6484 path.lineTo(SkBits2Float(0x426f3a3b), SkBits2Float(0x4099edfc)); 6485 path.cubicTo(SkBits2Float(0x427030cb), SkBits2Float(0x3fe887bb), SkBits2Float(0x427040d6), SkBits2Float(0xbf986e74), SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae3)); 6486 path.lineTo(SkBits2Float(0x426f6a3b), SkBits2Float(0xc085fae4)); 6487 path.cubicTo(SkBits2Float(0x42669e7e), SkBits2Float(0xc20e7d42), SkBits2Float(0x41fc1920), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6488 path.close(); 6489 6490 SkPath path1(path); 6491 path.reset(); 6492 path.setFillType((SkPath::FillType) 0); 6493 path.moveTo(SkBits2Float(0x42a57735), SkBits2Float(0x40d4ef9d)); 6494 path.cubicTo(SkBits2Float(0x429fe5e1), SkBits2Float(0x4225104d), SkBits2Float(0x425fa7d9), SkBits2Float(0x428cf91a), SkBits2Float(0x41b3ea58), SkBits2Float(0x429fca49)); 6495 path.cubicTo(SkBits2Float(0xc12ef606), SkBits2Float(0x42b29b77), SkBits2Float(0xc23abc07), SkBits2Float(0x4299d29d), SkBits2Float(0xc2863a28), SkBits2Float(0x42435615)); 6496 path.lineTo(SkBits2Float(0xc242103b), SkBits2Float(0x420d34fa)); 6497 path.cubicTo(SkBits2Float(0xc206fd22), SkBits2Float(0x425e64f1), SkBits2Float(0xc0fcf4a4), SkBits2Float(0x42811d1e), SkBits2Float(0x41820f34), SkBits2Float(0x426705a2)); 6498 path.cubicTo(SkBits2Float(0x4221adc8), SkBits2Float(0x424bd107), SkBits2Float(0x42672d88), SkBits2Float(0x41eea576), SkBits2Float(0x426f3a3c), SkBits2Float(0x4099edfe)); 6499 path.lineTo(SkBits2Float(0x42a57735), SkBits2Float(0x40d4ef9d)); 6500 path.close(); 6501 6502 SkPath path2(path); 6503 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6504 } 6505 // op end success 1 6506 6507 static void battleOp237(skiatest::Reporter* reporter, const char* filename) { 6508 if (!FLAGS_runFail) { 6509 return; // draws wrong 6510 } 6511 SkPath path; 6512 path.setFillType((SkPath::FillType) 0); 6513 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6514 path.cubicTo(SkBits2Float(0x41b25a1b), SkBits2Float(0xc2a60000), SkBits2Float(0x422e9a51), SkBits2Float(0xc294100b), SkBits2Float(0x426d0a79), SkBits2Float(0xc26874a1)); 6515 path.cubicTo(SkBits2Float(0x4295bd51), SkBits2Float(0xc228c92e), SkBits2Float(0x42a6d6d5), SkBits2Float(0xc1a5596e), SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f4c)); 6516 path.lineTo(SkBits2Float(0x426ff448), SkBits2Float(0x3f95ff69)); 6517 path.cubicTo(SkBits2Float(0x4271369b), SkBits2Float(0xc16f0f30), SkBits2Float(0x42587daa), SkBits2Float(0xc1f4071e), SkBits2Float(0x422b5ada), SkBits2Float(0xc2280a4b)); 6518 path.cubicTo(SkBits2Float(0x41fc7014), SkBits2Float(0xc2561107), SkBits2Float(0x4180eddd), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6519 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6520 path.close(); 6521 6522 SkPath path1(path); 6523 path.reset(); 6524 path.setFillType((SkPath::FillType) 0); 6525 path.moveTo(SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f2e)); 6526 path.cubicTo(SkBits2Float(0x42a5cbdf), SkBits2Float(0x40c0b7f8), SkBits2Float(0x42a4eca2), SkBits2Float(0x41268f7d), SkBits2Float(0x42a35c4c), SkBits2Float(0x416be04e)); 6527 path.lineTo(SkBits2Float(0x426c2f14), SkBits2Float(0x412a834e)); 6528 path.cubicTo(SkBits2Float(0x426e71e2), SkBits2Float(0x40f0cf74), SkBits2Float(0x426fb4a3), SkBits2Float(0x408b5090), SkBits2Float(0x426ff449), SkBits2Float(0x3f95ff6b)); 6529 path.lineTo(SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f2e)); 6530 path.close(); 6531 6532 SkPath path2(path); 6533 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6534 } 6535 // op end success 1 6536 6537 static void battleOp238(skiatest::Reporter* reporter, const char* filename) { 6538 SkPath path; 6539 path.setFillType((SkPath::FillType) 1); 6540 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6541 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6542 path.cubicTo(SkBits2Float(0x41b25a1b), SkBits2Float(0xc2a60000), SkBits2Float(0x422e9a51), SkBits2Float(0xc294100b), SkBits2Float(0x426d0a79), SkBits2Float(0xc26874a1)); 6543 path.cubicTo(SkBits2Float(0x4295bd51), SkBits2Float(0xc228c92e), SkBits2Float(0x42a6d6d5), SkBits2Float(0xc1a5596f), SkBits2Float(0x42a5f7e5), SkBits2Float(0x3fcf7f2e)); 6544 path.lineTo(SkBits2Float(0x426c2f14), SkBits2Float(0x412a834e)); 6545 path.cubicTo(SkBits2Float(0x426e71e2), SkBits2Float(0x40f0cf74), SkBits2Float(0x426fb4a3), SkBits2Float(0x408b5090), SkBits2Float(0x426ff449), SkBits2Float(0x3f95ff6b)); 6546 path.lineTo(SkBits2Float(0x426ff448), SkBits2Float(0x3f95ff69)); 6547 path.cubicTo(SkBits2Float(0x4271369b), SkBits2Float(0xc16f0f30), SkBits2Float(0x42587daa), SkBits2Float(0xc1f4071e), SkBits2Float(0x422b5ada), SkBits2Float(0xc2280a4b)); 6548 path.cubicTo(SkBits2Float(0x41fc7014), SkBits2Float(0xc2561107), SkBits2Float(0x4180eddd), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6549 path.close(); 6550 6551 SkPath path1(path); 6552 path.reset(); 6553 path.setFillType((SkPath::FillType) 0); 6554 path.moveTo(SkBits2Float(0x42a35c4c), SkBits2Float(0x416be04e)); 6555 path.cubicTo(SkBits2Float(0x42963d3f), SkBits2Float(0x424c5e0d), SkBits2Float(0x42354f77), SkBits2Float(0x429d76d6), SkBits2Float(0x41096c90), SkBits2Float(0x42a51bdb)); 6556 path.cubicTo(SkBits2Float(0xc1e1325f), SkBits2Float(0x42acc0e0), SkBits2Float(0xc27bf938), SkBits2Float(0x4282ec23), SkBits2Float(0xc299cad8), SkBits2Float(0x41f9ecd8)); 6557 path.lineTo(SkBits2Float(0xc25e59b3), SkBits2Float(0x41b4ab36)); 6558 path.cubicTo(SkBits2Float(0xc2362649), SkBits2Float(0x423d4911), SkBits2Float(0xc1a2caf7), SkBits2Float(0x4279c398), SkBits2Float(0x40c6af7d), SkBits2Float(0x426eb62b)); 6559 path.cubicTo(SkBits2Float(0x4203115b), SkBits2Float(0x4263a8be), SkBits2Float(0x425936a2), SkBits2Float(0x4213bc4a), SkBits2Float(0x426c2f16), SkBits2Float(0x412a8350)); 6560 path.lineTo(SkBits2Float(0x42a35c4c), SkBits2Float(0x416be04e)); 6561 path.close(); 6562 6563 SkPath path2(path); 6564 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6565 } 6566 // op end success 1 6567 6568 static void battleOp239(skiatest::Reporter* reporter, const char* filename) { 6569 SkPath path; 6570 path.setFillType((SkPath::FillType) 0); 6571 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6572 path.cubicTo(SkBits2Float(0x41ba3f99), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4235f79d), SkBits2Float(0xc29271cf), SkBits2Float(0x4274db3f), SkBits2Float(0xc260354d)); 6573 path.cubicTo(SkBits2Float(0x4299df70), SkBits2Float(0xc21b86fd), SkBits2Float(0x42a97305), SkBits2Float(0xc17e5d7a), SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b4)); 6574 path.lineTo(SkBits2Float(0x426f1259), SkBits2Float(0x40a8b5ae)); 6575 path.cubicTo(SkBits2Float(0x4274fca8), SkBits2Float(0xc137e0e1), SkBits2Float(0x425e777b), SkBits2Float(0xc1e0dbdb), SkBits2Float(0x42310131), SkBits2Float(0xc2221408)); 6576 path.cubicTo(SkBits2Float(0x42038ae6), SkBits2Float(0xc253ba22), SkBits2Float(0x4186a32c), SkBits2Float(0xc2700000), SkBits2Float(0xb560056c), SkBits2Float(0xc2700000)); 6577 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6578 path.close(); 6579 6580 SkPath path1(path); 6581 path.reset(); 6582 path.setFillType((SkPath::FillType) 0); 6583 path.moveTo(SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b9)); 6584 path.cubicTo(SkBits2Float(0x42a48d09), SkBits2Float(0x413de0a1), SkBits2Float(0x42a2fc74), SkBits2Float(0x41833376), SkBits2Float(0x42a0adff), SkBits2Float(0x41a6c250)); 6585 path.lineTo(SkBits2Float(0x42684ed9), SkBits2Float(0x417118ef)); 6586 path.cubicTo(SkBits2Float(0x426ba483), SkBits2Float(0x413db02f), SkBits2Float(0x426de7aa), SkBits2Float(0x410942c3), SkBits2Float(0x426f1258), SkBits2Float(0x40a8b5ad)); 6587 path.lineTo(SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b9)); 6588 path.close(); 6589 6590 SkPath path2(path); 6591 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6592 } 6593 // op end success 1 6594 6595 static void battleOp240(skiatest::Reporter* reporter, const char* filename) { 6596 SkPath path; 6597 path.setFillType((SkPath::FillType) 1); 6598 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6599 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6600 path.cubicTo(SkBits2Float(0x41ba3f99), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4235f79d), SkBits2Float(0xc29271cf), SkBits2Float(0x4274db3f), SkBits2Float(0xc260354d)); 6601 path.cubicTo(SkBits2Float(0x4299df70), SkBits2Float(0xc21b86fd), SkBits2Float(0x42a97305), SkBits2Float(0xc17e5d7a), SkBits2Float(0x42a55ba0), SkBits2Float(0x40e961b9)); 6602 path.cubicTo(SkBits2Float(0x42a48d09), SkBits2Float(0x413de0a1), SkBits2Float(0x42a2fc74), SkBits2Float(0x41833376), SkBits2Float(0x42a0adff), SkBits2Float(0x41a6c250)); 6603 path.lineTo(SkBits2Float(0x42684ed9), SkBits2Float(0x417118ef)); 6604 path.cubicTo(SkBits2Float(0x426ba483), SkBits2Float(0x413db02f), SkBits2Float(0x426de7aa), SkBits2Float(0x410942c3), SkBits2Float(0x426f1259), SkBits2Float(0x40a8b5ae)); 6605 path.cubicTo(SkBits2Float(0x4274fca8), SkBits2Float(0xc137e0e1), SkBits2Float(0x425e777b), SkBits2Float(0xc1e0dbdb), SkBits2Float(0x42310131), SkBits2Float(0xc2221408)); 6606 path.cubicTo(SkBits2Float(0x42038ae6), SkBits2Float(0xc253ba22), SkBits2Float(0x4186a32c), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 6607 path.close(); 6608 6609 SkPath path1(path); 6610 path.reset(); 6611 path.setFillType((SkPath::FillType) 0); 6612 path.moveTo(SkBits2Float(0x42a0ae00), SkBits2Float(0x41a6c250)); 6613 path.cubicTo(SkBits2Float(0x428d4422), SkBits2Float(0x4269069e), SkBits2Float(0x42118d33), SkBits2Float(0x42a8086f), SkBits2Float(0xc00fe376), SkBits2Float(0x42a5f066)); 6614 path.cubicTo(SkBits2Float(0xc22389a2), SkBits2Float(0x42a3d85e), SkBits2Float(0xc2935e5d), SkBits2Float(0x42596224), SkBits2Float(0xc2a2b39d), SkBits2Float(0x4183b53a)); 6615 path.lineTo(SkBits2Float(0xc26b3b33), SkBits2Float(0x413e6bca)); 6616 path.cubicTo(SkBits2Float(0xc2551027), SkBits2Float(0x421d2508), SkBits2Float(0xc1ec70a3), SkBits2Float(0x426ce27d), SkBits2Float(0xbfd007ff), SkBits2Float(0x426fe979)); 6617 path.cubicTo(SkBits2Float(0x41d26fa4), SkBits2Float(0x4272f076), SkBits2Float(0x424c3d84), SkBits2Float(0x422873d5), SkBits2Float(0x42684eda), SkBits2Float(0x417118ee)); 6618 path.lineTo(SkBits2Float(0x42a0ae00), SkBits2Float(0x41a6c250)); 6619 path.close(); 6620 6621 SkPath path2(path); 6622 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6623 } 6624 // op end success 1 6625 6626 static void battleOp241(skiatest::Reporter* reporter, const char* filename) { 6627 SkPath path; 6628 path.setFillType((SkPath::FillType) 0); 6629 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6630 path.cubicTo(SkBits2Float(0x41c2abe0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423dc4ab), SkBits2Float(0xc290a493), SkBits2Float(0x427cd8fd), SkBits2Float(0xc25727eb)); 6631 path.cubicTo(SkBits2Float(0x429df6a6), SkBits2Float(0xc20d06b1), SkBits2Float(0x42aba628), SkBits2Float(0xc12bcbe5), SkBits2Float(0x42a3dc46), SkBits2Float(0x4154872f)); 6632 path.lineTo(SkBits2Float(0x426ce81c), SkBits2Float(0x4119a283)); 6633 path.cubicTo(SkBits2Float(0x42782ad8), SkBits2Float(0xc0f86165), SkBits2Float(0x42646188), SkBits2Float(0xc1cbe4ab), SkBits2Float(0x4236c80c), SkBits2Float(0xc21b88d1)); 6634 path.cubicTo(SkBits2Float(0x42092e8f), SkBits2Float(0xc2511f4c), SkBits2Float(0x418cb9f2), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6635 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6636 path.close(); 6637 6638 SkPath path1(path); 6639 path.reset(); 6640 path.setFillType((SkPath::FillType) 0); 6641 path.moveTo(SkBits2Float(0x42a3dc46), SkBits2Float(0x41548735)); 6642 path.cubicTo(SkBits2Float(0x42a2537f), SkBits2Float(0x41901e3f), SkBits2Float(0x429ff996), SkBits2Float(0x41b55e92), SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0)); 6643 path.lineTo(SkBits2Float(0x4262bf29), SkBits2Float(0x419d4d21)); 6644 path.cubicTo(SkBits2Float(0x42674a02), SkBits2Float(0x41831c46), SkBits2Float(0x426ab03e), SkBits2Float(0x41505d16), SkBits2Float(0x426ce81d), SkBits2Float(0x4119a283)); 6645 path.lineTo(SkBits2Float(0x42a3dc46), SkBits2Float(0x41548735)); 6646 path.close(); 6647 6648 SkPath path2(path); 6649 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6650 } 6651 // op end success 1 6652 6653 static void battleOp242(skiatest::Reporter* reporter, const char* filename) { 6654 SkPath path; 6655 path.setFillType((SkPath::FillType) 1); 6656 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6657 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6658 path.cubicTo(SkBits2Float(0x41c2abe0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x423dc4ab), SkBits2Float(0xc290a493), SkBits2Float(0x427cd8fd), SkBits2Float(0xc25727eb)); 6659 path.cubicTo(SkBits2Float(0x429df6a6), SkBits2Float(0xc20d06b1), SkBits2Float(0x42aba628), SkBits2Float(0xc12bcbe5), SkBits2Float(0x42a3dc46), SkBits2Float(0x41548735)); 6660 path.cubicTo(SkBits2Float(0x42a2537f), SkBits2Float(0x41901e3f), SkBits2Float(0x429ff996), SkBits2Float(0x41b55e92), SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0)); 6661 path.lineTo(SkBits2Float(0x4262bf29), SkBits2Float(0x419d4d21)); 6662 path.cubicTo(SkBits2Float(0x42674a02), SkBits2Float(0x41831c46), SkBits2Float(0x426ab03e), SkBits2Float(0x41505d16), SkBits2Float(0x426ce81c), SkBits2Float(0x4119a283)); 6663 path.cubicTo(SkBits2Float(0x42782ad8), SkBits2Float(0xc0f86165), SkBits2Float(0x42646188), SkBits2Float(0xc1cbe4ab), SkBits2Float(0x4236c80c), SkBits2Float(0xc21b88d1)); 6664 path.cubicTo(SkBits2Float(0x42092e8f), SkBits2Float(0xc2511f4c), SkBits2Float(0x418cb9f2), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6665 path.close(); 6666 6667 SkPath path1(path); 6668 path.reset(); 6669 path.setFillType((SkPath::FillType) 0); 6670 path.moveTo(SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0)); 6671 path.cubicTo(SkBits2Float(0x42824b9e), SkBits2Float(0x4282e841), SkBits2Float(0x41d1b597), SkBits2Float(0x42b119ff), SkBits2Float(0xc15b80c3), SkBits2Float(0x42a3b776)); 6672 path.cubicTo(SkBits2Float(0xc2569b2d), SkBits2Float(0x429654ee), SkBits2Float(0xc2a5db0b), SkBits2Float(0x42228c64), SkBits2Float(0xc2a5ffee), SkBits2Float(0x3e172efd)); 6673 path.lineTo(SkBits2Float(0xc26fffe7), SkBits2Float(0x3dda91a4)); 6674 path.cubicTo(SkBits2Float(0xc26fca99), SkBits2Float(0x41eb0285), SkBits2Float(0xc21b2317), SkBits2Float(0x425958e5), SkBits2Float(0xc11ead4d), SkBits2Float(0x426cb2ed)); 6675 path.cubicTo(SkBits2Float(0x419798e1), SkBits2Float(0x4280067a), SkBits2Float(0x423c6102), SkBits2Float(0x423d4379), SkBits2Float(0x4262bf29), SkBits2Float(0x419d4d1f)); 6676 path.lineTo(SkBits2Float(0x429cd549), SkBits2Float(0x41d999a0)); 6677 path.close(); 6678 6679 SkPath path2(path); 6680 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6681 } 6682 // op end success 1 6683 6684 static void battleOp243(skiatest::Reporter* reporter, const char* filename) { 6685 SkPath path; 6686 path.setFillType((SkPath::FillType) 0); 6687 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6688 path.cubicTo(SkBits2Float(0x41caf078), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42455e40), SkBits2Float(0xc28ecc78), SkBits2Float(0x42822b31), SkBits2Float(0xc24e07b4)); 6689 path.cubicTo(SkBits2Float(0x42a1a743), SkBits2Float(0xc1fcecee), SkBits2Float(0x42ad3753), SkBits2Float(0xc0b3be45), SkBits2Float(0x42a18eed), SkBits2Float(0x419892cb)); 6690 path.lineTo(SkBits2Float(0x42699409), SkBits2Float(0x415c9689)); 6691 path.cubicTo(SkBits2Float(0x427a6ed6), SkBits2Float(0xc081ef5b), SkBits2Float(0x4269b739), SkBits2Float(0xc1b6d67a), SkBits2Float(0x423c321c), SkBits2Float(0xc214effc)); 6692 path.cubicTo(SkBits2Float(0x420eacff), SkBits2Float(0xc24e74bc), SkBits2Float(0x4192b3ff), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 6693 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6694 path.close(); 6695 6696 SkPath path1(path); 6697 path.reset(); 6698 path.setFillType((SkPath::FillType) 0); 6699 path.moveTo(SkBits2Float(0x42a18eed), SkBits2Float(0x419892ca)); 6700 path.cubicTo(SkBits2Float(0x429f43c9), SkBits2Float(0x41bf6e44), SkBits2Float(0x429c198b), SkBits2Float(0x41e561a5), SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e)); 6701 path.lineTo(SkBits2Float(0x425be7f8), SkBits2Float(0x41c0436a)); 6702 path.cubicTo(SkBits2Float(0x4261afba), SkBits2Float(0x41a5d162), SkBits2Float(0x42664329), SkBits2Float(0x418a6237), SkBits2Float(0x4269940a), SkBits2Float(0x415c968a)); 6703 path.lineTo(SkBits2Float(0x42a18eed), SkBits2Float(0x419892ca)); 6704 path.close(); 6705 6706 SkPath path2(path); 6707 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6708 } 6709 // op end success 1 6710 6711 static void battleOp244(skiatest::Reporter* reporter, const char* filename) { 6712 SkPath path; 6713 path.setFillType((SkPath::FillType) 1); 6714 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 6715 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6716 path.cubicTo(SkBits2Float(0x41caf078), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42455e40), SkBits2Float(0xc28ecc78), SkBits2Float(0x42822b31), SkBits2Float(0xc24e07b4)); 6717 path.cubicTo(SkBits2Float(0x42a1a743), SkBits2Float(0xc1fcecee), SkBits2Float(0x42ad3753), SkBits2Float(0xc0b3be48), SkBits2Float(0x42a18eed), SkBits2Float(0x419892ca)); 6718 path.lineTo(SkBits2Float(0x42a18eed), SkBits2Float(0x419892cb)); 6719 path.cubicTo(SkBits2Float(0x429f43c9), SkBits2Float(0x41bf6e45), SkBits2Float(0x429c198b), SkBits2Float(0x41e561a5), SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e)); 6720 path.lineTo(SkBits2Float(0x425be7f8), SkBits2Float(0x41c0436a)); 6721 path.cubicTo(SkBits2Float(0x4261afba), SkBits2Float(0x41a5d162), SkBits2Float(0x42664329), SkBits2Float(0x418a6237), SkBits2Float(0x4269940a), SkBits2Float(0x415c968a)); 6722 path.lineTo(SkBits2Float(0x42699409), SkBits2Float(0x415c9689)); 6723 path.cubicTo(SkBits2Float(0x427a6ed6), SkBits2Float(0xc081ef5b), SkBits2Float(0x4269b739), SkBits2Float(0xc1b6d67a), SkBits2Float(0x423c321c), SkBits2Float(0xc214effc)); 6724 path.cubicTo(SkBits2Float(0x420eacff), SkBits2Float(0xc24e74bc), SkBits2Float(0x4192b3ff), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 6725 path.close(); 6726 6727 SkPath path1(path); 6728 path.reset(); 6729 path.setFillType((SkPath::FillType) 0); 6730 path.moveTo(SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e)); 6731 path.cubicTo(SkBits2Float(0x426c6b55), SkBits2Float(0x42900555), SkBits2Float(0x417b6a9f), SkBits2Float(0x42b7a6c3), SkBits2Float(0xc1c57072), SkBits2Float(0x429e7dd7)); 6732 path.cubicTo(SkBits2Float(0xc282258c), SkBits2Float(0x428554eb), SkBits2Float(0xc2b314c4), SkBits2Float(0x41cdbc89), SkBits2Float(0xc2a2f571), SkBits2Float(0xc17d09b6)); 6733 path.lineTo(SkBits2Float(0xc26b9a61), SkBits2Float(0xc136eb32)); 6734 path.cubicTo(SkBits2Float(0xc28174d0), SkBits2Float(0x4194b9b3), SkBits2Float(0xc23c29fc), SkBits2Float(0x4240c4dc), SkBits2Float(0xc18eba2f), SkBits2Float(0x4265250a)); 6735 path.cubicTo(SkBits2Float(0x4135bf41), SkBits2Float(0x4284c29d), SkBits2Float(0x422ae7d8), SkBits2Float(0x42503918), SkBits2Float(0x425be7f9), SkBits2Float(0x41c04367)); 6736 path.lineTo(SkBits2Float(0x42981a0b), SkBits2Float(0x4204fb6e)); 6737 path.close(); 6738 6739 SkPath path2(path); 6740 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6741 } 6742 // op end success 1 6743 6744 static void battleOp245(skiatest::Reporter* reporter, const char* filename) { 6745 SkPath path; 6746 path.setFillType((SkPath::FillType) 0); 6747 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6748 path.cubicTo(SkBits2Float(0x41d28773), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424c4acf), SkBits2Float(0xc28d0a47), SkBits2Float(0x428572fc), SkBits2Float(0xc24574fc)); 6749 path.cubicTo(SkBits2Float(0x42a4c090), SkBits2Float(0xc1e1aad9), SkBits2Float(0x42ae2294), SkBits2Float(0xbf62367e), SkBits2Float(0x429ebce0), SkBits2Float(0x41c23fec)); 6750 path.lineTo(SkBits2Float(0x4265801d), SkBits2Float(0x418c6be6)); 6751 path.cubicTo(SkBits2Float(0x427bc2fb), SkBits2Float(0xbf238720), SkBits2Float(0x426e322e), SkBits2Float(0xc1a32211), SkBits2Float(0x4240f046), SkBits2Float(0xc20ebd71)); 6752 path.cubicTo(SkBits2Float(0x4213ae61), SkBits2Float(0xc24be9da), SkBits2Float(0x41983095), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6753 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6754 path.close(); 6755 6756 SkPath path1(path); 6757 path.reset(); 6758 path.setFillType((SkPath::FillType) 0); 6759 path.moveTo(SkBits2Float(0x429ebce1), SkBits2Float(0x41c23fee)); 6760 path.cubicTo(SkBits2Float(0x429bb658), SkBits2Float(0x41e9cedc), SkBits2Float(0x4297c4ea), SkBits2Float(0x4208130e), SkBits2Float(0x4292f5c0), SkBits2Float(0x421a62d5)); 6761 path.lineTo(SkBits2Float(0x425478e6), SkBits2Float(0x41df3573)); 6762 path.cubicTo(SkBits2Float(0x425b6ce6), SkBits2Float(0x41c4bbf1), SkBits2Float(0x42612050), SkBits2Float(0x41a90494), SkBits2Float(0x4265801e), SkBits2Float(0x418c6be6)); 6763 path.lineTo(SkBits2Float(0x429ebce1), SkBits2Float(0x41c23fee)); 6764 path.close(); 6765 6766 SkPath path2(path); 6767 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6768 } 6769 // op end success 1 6770 6771 static void battleOp246(skiatest::Reporter* reporter, const char* filename) { 6772 SkPath path; 6773 path.setFillType((SkPath::FillType) 1); 6774 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6775 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6776 path.cubicTo(SkBits2Float(0x41d28773), SkBits2Float(0xc2a5ffff), SkBits2Float(0x424c4acf), SkBits2Float(0xc28d0a47), SkBits2Float(0x428572fc), SkBits2Float(0xc24574fc)); 6777 path.cubicTo(SkBits2Float(0x42a4c090), SkBits2Float(0xc1e1aad9), SkBits2Float(0x42ae2294), SkBits2Float(0xbf62367e), SkBits2Float(0x429ebce1), SkBits2Float(0x41c23fee)); 6778 path.cubicTo(SkBits2Float(0x429bb658), SkBits2Float(0x41e9cedc), SkBits2Float(0x4297c4ea), SkBits2Float(0x4208130e), SkBits2Float(0x4292f5c0), SkBits2Float(0x421a62d5)); 6779 path.lineTo(SkBits2Float(0x425478e6), SkBits2Float(0x41df3573)); 6780 path.cubicTo(SkBits2Float(0x425b6ce6), SkBits2Float(0x41c4bbf1), SkBits2Float(0x42612050), SkBits2Float(0x41a90494), SkBits2Float(0x4265801d), SkBits2Float(0x418c6be6)); 6781 path.cubicTo(SkBits2Float(0x427bc2fb), SkBits2Float(0xbf238720), SkBits2Float(0x426e322e), SkBits2Float(0xc1a32211), SkBits2Float(0x4240f046), SkBits2Float(0xc20ebd71)); 6782 path.cubicTo(SkBits2Float(0x4213ae61), SkBits2Float(0xc24be9da), SkBits2Float(0x41983095), SkBits2Float(0xc2700000), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 6783 path.close(); 6784 6785 SkPath path1(path); 6786 path.reset(); 6787 path.setFillType((SkPath::FillType) 0); 6788 path.moveTo(SkBits2Float(0x4292f5c1), SkBits2Float(0x421a62d6)); 6789 path.cubicTo(SkBits2Float(0x42541a09), SkBits2Float(0x429b1363), SkBits2Float(0x40b7c75d), SkBits2Float(0x42bb84d6), SkBits2Float(0xc2093cef), SkBits2Float(0x42972755)); 6790 path.cubicTo(SkBits2Float(0xc294b966), SkBits2Float(0x426593a9), SkBits2Float(0xc2ba8c7c), SkBits2Float(0x4131f51c), SkBits2Float(0xc29ad8fe), SkBits2Float(0xc1ef45cd)); 6791 path.lineTo(SkBits2Float(0xc25fe048), SkBits2Float(0xc1acf7d7)); 6792 path.cubicTo(SkBits2Float(0xc286dac7), SkBits2Float(0x4100a4f0), SkBits2Float(0xc25705ec), SkBits2Float(0x4225f597), SkBits2Float(0xc1c66aa8), SkBits2Float(0x425a891e)); 6793 path.cubicTo(SkBits2Float(0x4084da24), SkBits2Float(0x42878e54), SkBits2Float(0x4219539e), SkBits2Float(0x426034bf), SkBits2Float(0x425478e7), SkBits2Float(0x41df3571)); 6794 path.lineTo(SkBits2Float(0x4292f5c1), SkBits2Float(0x421a62d6)); 6795 path.close(); 6796 6797 SkPath path2(path); 6798 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6799 } 6800 // op end success 1 6801 6802 static void battleOp247(skiatest::Reporter* reporter, const char* filename) { 6803 SkPath path; 6804 path.setFillType((SkPath::FillType) 0); 6805 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6806 path.cubicTo(SkBits2Float(0x41d91350), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425238e3), SkBits2Float(0xc28b791f), SkBits2Float(0x428827e4), SkBits2Float(0xc23dec02)); 6807 path.cubicTo(SkBits2Float(0x42a73357), SkBits2Float(0xc1c9cb8b), SkBits2Float(0x42ae86ff), SkBits2Float(0x404daf5b), SkBits2Float(0x429bc6e8), SkBits2Float(0x41e56ae9)); 6808 path.lineTo(SkBits2Float(0x42613841), SkBits2Float(0x41a5d816)); 6809 path.cubicTo(SkBits2Float(0x427c5425), SkBits2Float(0x4014b024), SkBits2Float(0x4271bc5c), SkBits2Float(0xc191e03e), SkBits2Float(0x4244da12), SkBits2Float(0xc2094aff)); 6810 path.cubicTo(SkBits2Float(0x4217f7c8), SkBits2Float(0xc249a5df), SkBits2Float(0x419cec09), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 6811 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6812 path.close(); 6813 6814 SkPath path1(path); 6815 path.reset(); 6816 path.setFillType((SkPath::FillType) 0); 6817 path.moveTo(SkBits2Float(0x429bc6e9), SkBits2Float(0x41e56aeb)); 6818 path.cubicTo(SkBits2Float(0x429818bd), SkBits2Float(0x4206b36a), SkBits2Float(0x42937671), SkBits2Float(0x4219f01e), SkBits2Float(0x428df070), SkBits2Float(0x422c2771)); 6819 path.lineTo(SkBits2Float(0x424d369d), SkBits2Float(0x41f8e5bf)); 6820 path.cubicTo(SkBits2Float(0x425532f6), SkBits2Float(0x41de8f99), SkBits2Float(0x425be616), SkBits2Float(0x41c2bf8b), SkBits2Float(0x42613843), SkBits2Float(0x41a5d816)); 6821 path.lineTo(SkBits2Float(0x429bc6e9), SkBits2Float(0x41e56aeb)); 6822 path.close(); 6823 6824 SkPath path2(path); 6825 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6826 } 6827 // op end success 1 6828 6829 static void battleOp248(skiatest::Reporter* reporter, const char* filename) { 6830 SkPath path; 6831 path.setFillType((SkPath::FillType) 1); 6832 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 6833 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6834 path.cubicTo(SkBits2Float(0x41d91350), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425238e3), SkBits2Float(0xc28b791f), SkBits2Float(0x428827e4), SkBits2Float(0xc23dec02)); 6835 path.cubicTo(SkBits2Float(0x42a73357), SkBits2Float(0xc1c9cb8b), SkBits2Float(0x42ae86ff), SkBits2Float(0x404daf5b), SkBits2Float(0x429bc6e9), SkBits2Float(0x41e56aeb)); 6836 path.cubicTo(SkBits2Float(0x429818bd), SkBits2Float(0x4206b36a), SkBits2Float(0x42937671), SkBits2Float(0x4219f01e), SkBits2Float(0x428df070), SkBits2Float(0x422c2771)); 6837 path.lineTo(SkBits2Float(0x424d369d), SkBits2Float(0x41f8e5bf)); 6838 path.cubicTo(SkBits2Float(0x425532f6), SkBits2Float(0x41de8f99), SkBits2Float(0x425be616), SkBits2Float(0x41c2bf8b), SkBits2Float(0x42613843), SkBits2Float(0x41a5d816)); 6839 path.lineTo(SkBits2Float(0x42613841), SkBits2Float(0x41a5d816)); 6840 path.cubicTo(SkBits2Float(0x427c5425), SkBits2Float(0x4014b024), SkBits2Float(0x4271bc5c), SkBits2Float(0xc191e03e), SkBits2Float(0x4244da12), SkBits2Float(0xc2094aff)); 6841 path.cubicTo(SkBits2Float(0x4217f7c8), SkBits2Float(0xc249a5df), SkBits2Float(0x419cec09), SkBits2Float(0xc2700000), SkBits2Float(0xb630015b), SkBits2Float(0xc2700000)); 6842 path.close(); 6843 6844 SkPath path1(path); 6845 path.reset(); 6846 path.setFillType((SkPath::FillType) 0); 6847 path.moveTo(SkBits2Float(0x428df071), SkBits2Float(0x422c2771)); 6848 path.cubicTo(SkBits2Float(0x423d9ebb), SkBits2Float(0x42a3ca6a), SkBits2Float(0xc041a78f), SkBits2Float(0x42bd279e), SkBits2Float(0xc228abe7), SkBits2Float(0x428efaad)); 6849 path.cubicTo(SkBits2Float(0xc2a29eac), SkBits2Float(0x42419b78), SkBits2Float(0xc2bd3710), SkBits2Float(0xbfef63d4), SkBits2Float(0xc2900003), SkBits2Float(0xc2252a98)); 6850 path.lineTo(SkBits2Float(0xc250315d), SkBits2Float(0xc1eecb7c)); 6851 path.cubicTo(SkBits2Float(0xc288c864), SkBits2Float(0xbfad0c79), SkBits2Float(0xc26b1d6b), SkBits2Float(0x420bf56b), SkBits2Float(0xc1f3dd5d), SkBits2Float(0x424eb80d)); 6852 path.cubicTo(SkBits2Float(0xc00bff34), SkBits2Float(0x4288bd57), SkBits2Float(0x4209134e), SkBits2Float(0x426ccea7), SkBits2Float(0x424d369e), SkBits2Float(0x41f8e5bd)); 6853 path.lineTo(SkBits2Float(0x428df071), SkBits2Float(0x422c2771)); 6854 path.close(); 6855 6856 SkPath path2(path); 6857 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6858 } 6859 // op end success 1 6860 6861 static void battleOp249(skiatest::Reporter* reporter, const char* filename) { 6862 SkPath path; 6863 path.setFillType((SkPath::FillType) 0); 6864 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6865 path.cubicTo(SkBits2Float(0x41df6bc7), SkBits2Float(0xc2a60000), SkBits2Float(0x4257ee8b), SkBits2Float(0xc289e8f6), SkBits2Float(0x428aab73), SkBits2Float(0xc2368066)); 6866 path.cubicTo(SkBits2Float(0x42a95fa1), SkBits2Float(0xc1b25dc1), SkBits2Float(0x42ae8dc1), SkBits2Float(0x40e61789), SkBits2Float(0x42987459), SkBits2Float(0x42035b41)); 6867 path.lineTo(SkBits2Float(0x425c6a87), SkBits2Float(0x41bde9b7)); 6868 path.cubicTo(SkBits2Float(0x427c5dea), SkBits2Float(0x40a654db), SkBits2Float(0x4274e0a0), SkBits2Float(0xc180f082), SkBits2Float(0x42487c82), SkBits2Float(0xc203edca)); 6869 path.cubicTo(SkBits2Float(0x421c1865), SkBits2Float(0xc2476353), SkBits2Float(0x41a18256), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 6870 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6871 path.close(); 6872 6873 SkPath path1(path); 6874 path.reset(); 6875 path.setFillType((SkPath::FillType) 0); 6876 path.moveTo(SkBits2Float(0x42987459), SkBits2Float(0x42035b41)); 6877 path.cubicTo(SkBits2Float(0x42941f1a), SkBits2Float(0x421778e1), SkBits2Float(0x428ecdc9), SkBits2Float(0x422aae55), SkBits2Float(0x42889449), SkBits2Float(0x423cb3b9)); 6878 path.lineTo(SkBits2Float(0x424576c5), SkBits2Float(0x4208693e)); 6879 path.cubicTo(SkBits2Float(0x424e76a2), SkBits2Float(0x41f6c488), SkBits2Float(0x425626ce), SkBits2Float(0x41dafef6), SkBits2Float(0x425c6a88), SkBits2Float(0x41bde9b8)); 6880 path.lineTo(SkBits2Float(0x42987459), SkBits2Float(0x42035b41)); 6881 path.close(); 6882 6883 SkPath path2(path); 6884 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6885 } 6886 // op end success 1 6887 6888 static void battleOp250(skiatest::Reporter* reporter, const char* filename) { 6889 SkPath path; 6890 path.setFillType((SkPath::FillType) 1); 6891 path.moveTo(SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 6892 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6893 path.cubicTo(SkBits2Float(0x41df6bc7), SkBits2Float(0xc2a60000), SkBits2Float(0x4257ee8b), SkBits2Float(0xc289e8f6), SkBits2Float(0x428aab73), SkBits2Float(0xc2368066)); 6894 path.cubicTo(SkBits2Float(0x42a95fa1), SkBits2Float(0xc1b25dc1), SkBits2Float(0x42ae8dc1), SkBits2Float(0x40e61789), SkBits2Float(0x42987459), SkBits2Float(0x42035b41)); 6895 path.cubicTo(SkBits2Float(0x42941f1a), SkBits2Float(0x421778e1), SkBits2Float(0x428ecdc9), SkBits2Float(0x422aae55), SkBits2Float(0x42889449), SkBits2Float(0x423cb3b9)); 6896 path.lineTo(SkBits2Float(0x424576c5), SkBits2Float(0x4208693e)); 6897 path.cubicTo(SkBits2Float(0x424e76a2), SkBits2Float(0x41f6c488), SkBits2Float(0x425626ce), SkBits2Float(0x41dafef6), SkBits2Float(0x425c6a87), SkBits2Float(0x41bde9b7)); 6898 path.cubicTo(SkBits2Float(0x427c5dea), SkBits2Float(0x40a654db), SkBits2Float(0x4274e0a0), SkBits2Float(0xc180f082), SkBits2Float(0x42487c82), SkBits2Float(0xc203edca)); 6899 path.cubicTo(SkBits2Float(0x421c1865), SkBits2Float(0xc2476353), SkBits2Float(0x41a18256), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 6900 path.close(); 6901 6902 SkPath path1(path); 6903 path.reset(); 6904 path.setFillType((SkPath::FillType) 0); 6905 path.moveTo(SkBits2Float(0x42889449), SkBits2Float(0x423cb3b8)); 6906 path.cubicTo(SkBits2Float(0x424c5291), SkBits2Float(0x42902c61), SkBits2Float(0x41ad609d), SkBits2Float(0x42ab4d26), SkBits2Float(0xc1072a9c), SkBits2Float(0x42a52356)); 6907 path.cubicTo(SkBits2Float(0xc21a459c), SkBits2Float(0x429ef985), SkBits2Float(0xc2813d9b), SkBits2Float(0x4270fef6), SkBits2Float(0xc298db30), SkBits2Float(0x420179e4)); 6908 path.cubicTo(SkBits2Float(0xc2b078c6), SkBits2Float(0x408fa686), SkBits2Float(0xc2a7d9d7), SkBits2Float(0xc1dcde62), SkBits2Float(0xc2825c7e), SkBits2Float(0xc24d8ae0)); 6909 path.lineTo(SkBits2Float(0xc23c7965), SkBits2Float(0xc21495bd)); 6910 path.cubicTo(SkBits2Float(0xc272ad07), SkBits2Float(0xc19fa9fe), SkBits2Float(0xc27f23bc), SkBits2Float(0x404faf9e), SkBits2Float(0xc25cff22), SkBits2Float(0x41bb31a8)); 6911 path.cubicTo(SkBits2Float(0xc23ada86), SkBits2Float(0x422e36b1), SkBits2Float(0xc1df0b0c), SkBits2Float(0x4265d7b2), SkBits2Float(0xc0c36b6f), SkBits2Float(0x426ec0e0)); 6912 path.cubicTo(SkBits2Float(0x417aaa9e), SkBits2Float(0x4277aa0e), SkBits2Float(0x4213b3f9), SkBits2Float(0x42507175), SkBits2Float(0x424576c8), SkBits2Float(0x4208693c)); 6913 path.lineTo(SkBits2Float(0x42889449), SkBits2Float(0x423cb3b8)); 6914 path.close(); 6915 6916 SkPath path2(path); 6917 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6918 } 6919 // op end success 1 6920 6921 static void battleOp251(skiatest::Reporter* reporter, const char* filename) { 6922 SkPath path; 6923 path.setFillType((SkPath::FillType) 0); 6924 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6925 path.cubicTo(SkBits2Float(0x41e529f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425d10b2), SkBits2Float(0xc2887541), SkBits2Float(0x428cd9cf), SkBits2Float(0xc22fb184)); 6926 path.cubicTo(SkBits2Float(0x42ab2b45), SkBits2Float(0xc19cf10c), SkBits2Float(0x42ae472d), SkBits2Float(0x412c96c0), SkBits2Float(0x42951360), SkBits2Float(0x42120c0d)); 6927 path.lineTo(SkBits2Float(0x425787f7), SkBits2Float(0x41d32707)); 6928 path.cubicTo(SkBits2Float(0x427bf7e0), SkBits2Float(0x40f986c2), SkBits2Float(0x4277792b), SkBits2Float(0xc162e746), SkBits2Float(0x424ba3c8), SkBits2Float(0xc1fe03ba)); 6929 path.cubicTo(SkBits2Float(0x421fce66), SkBits2Float(0xc24549e8), SkBits2Float(0x41a5a922), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 6930 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6931 path.close(); 6932 6933 SkPath path1(path); 6934 path.reset(); 6935 path.setFillType((SkPath::FillType) 0); 6936 path.moveTo(SkBits2Float(0x42951360), SkBits2Float(0x42120c0f)); 6937 path.cubicTo(SkBits2Float(0x429023a5), SkBits2Float(0x422633cd), SkBits2Float(0x428a3193), SkBits2Float(0x42394df4), SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e)); 6938 path.lineTo(SkBits2Float(0x423ddffa), SkBits2Float(0x4212ca6e)); 6939 path.cubicTo(SkBits2Float(0x4247cc4f), SkBits2Float(0x4205f480), SkBits2Float(0x425064e4), SkBits2Float(0x41f04ae6), SkBits2Float(0x425787f8), SkBits2Float(0x41d32708)); 6940 path.lineTo(SkBits2Float(0x42951360), SkBits2Float(0x42120c0f)); 6941 path.close(); 6942 6943 SkPath path2(path); 6944 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6945 } 6946 // op end success 1 6947 6948 static void battleOp252(skiatest::Reporter* reporter, const char* filename) { 6949 SkPath path; 6950 path.setFillType((SkPath::FillType) 1); 6951 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 6952 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 6953 path.cubicTo(SkBits2Float(0x41e529f0), SkBits2Float(0xc2a5ffff), SkBits2Float(0x425d10b2), SkBits2Float(0xc2887541), SkBits2Float(0x428cd9cf), SkBits2Float(0xc22fb184)); 6954 path.cubicTo(SkBits2Float(0x42ab2b45), SkBits2Float(0xc19cf10c), SkBits2Float(0x42ae472d), SkBits2Float(0x412c96c0), SkBits2Float(0x42951360), SkBits2Float(0x42120c0f)); 6955 path.cubicTo(SkBits2Float(0x429023a5), SkBits2Float(0x422633cd), SkBits2Float(0x428a3193), SkBits2Float(0x42394df4), SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e)); 6956 path.lineTo(SkBits2Float(0x423ddffa), SkBits2Float(0x4212ca6e)); 6957 path.cubicTo(SkBits2Float(0x4247cc4f), SkBits2Float(0x4205f480), SkBits2Float(0x425064e4), SkBits2Float(0x41f04ae6), SkBits2Float(0x425787f7), SkBits2Float(0x41d32707)); 6958 path.cubicTo(SkBits2Float(0x427bf7e0), SkBits2Float(0x40f986c2), SkBits2Float(0x4277792b), SkBits2Float(0xc162e746), SkBits2Float(0x424ba3c8), SkBits2Float(0xc1fe03ba)); 6959 path.cubicTo(SkBits2Float(0x421fce66), SkBits2Float(0xc24549e8), SkBits2Float(0x41a5a922), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 6960 path.close(); 6961 6962 SkPath path1(path); 6963 path.reset(); 6964 path.setFillType((SkPath::FillType) 0); 6965 path.moveTo(SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e)); 6966 path.cubicTo(SkBits2Float(0x423aab34), SkBits2Float(0x4296ad9b), SkBits2Float(0x41789cf4), SkBits2Float(0x42ae7f70), SkBits2Float(0xc1702bd2), SkBits2Float(0x42a3434e)); 6967 path.cubicTo(SkBits2Float(0xc2363d27), SkBits2Float(0x4298072c), SkBits2Float(0xc28cd4c4), SkBits2Float(0x42573cf7), SkBits2Float(0xc29edb8e), SkBits2Float(0x41c0adb0)); 6968 path.cubicTo(SkBits2Float(0xc2b0e257), SkBits2Float(0xc0b47a14), SkBits2Float(0xc2a03550), SkBits2Float(0xc217a35b), SkBits2Float(0xc2674746), SkBits2Float(0xc26e3089)); 6969 path.lineTo(SkBits2Float(0xc2273070), SkBits2Float(0xc22c2f6e)); 6970 path.cubicTo(SkBits2Float(0xc267a050), SkBits2Float(0xc1db3c5e), SkBits2Float(0xc27fbc5f), SkBits2Float(0xc0827737), SkBits2Float(0xc265ac62), SkBits2Float(0x418b490c)); 6971 path.cubicTo(SkBits2Float(0xc24b9c64), SkBits2Float(0x421b97f2), SkBits2Float(0xc203bd1c), SkBits2Float(0x425bcc95), SkBits2Float(0xc12d9e08), SkBits2Float(0x426c0adc)); 6972 path.cubicTo(SkBits2Float(0x4133b85e), SkBits2Float(0x427c4921), SkBits2Float(0x4206f0f2), SkBits2Float(0x4259d90a), SkBits2Float(0x423ddff7), SkBits2Float(0x4212ca73)); 6973 path.lineTo(SkBits2Float(0x42835484), SkBits2Float(0x424b0f7e)); 6974 path.close(); 6975 6976 SkPath path2(path); 6977 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 6978 } 6979 // op end success 1 6980 6981 static void battleOp253(skiatest::Reporter* reporter, const char* filename) { 6982 SkPath path; 6983 path.setFillType((SkPath::FillType) 0); 6984 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6985 path.cubicTo(SkBits2Float(0x41ea9e19), SkBits2Float(0xc2a60000), SkBits2Float(0x4261e8db), SkBits2Float(0xc2870be6), SkBits2Float(0x428ed6bc), SkBits2Float(0xc22926d7)); 6986 path.cubicTo(SkBits2Float(0x42acb90a), SkBits2Float(0xc1886bc1), SkBits2Float(0x42adc0f7), SkBits2Float(0x41631db6), SkBits2Float(0x42918cff), SkBits2Float(0x421fa302)); 6987 path.lineTo(SkBits2Float(0x42526f53), SkBits2Float(0x41e6ccd4)); 6988 path.cubicTo(SkBits2Float(0x427b35d6), SkBits2Float(0x41242e26), SkBits2Float(0x4279b842), SkBits2Float(0xc1453c2f), SkBits2Float(0x424e8393), SkBits2Float(0xc1f48e84)); 6989 path.cubicTo(SkBits2Float(0x42234ee4), SkBits2Float(0xc2433f78), SkBits2Float(0x41a99a66), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 6990 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 6991 path.close(); 6992 6993 SkPath path1(path); 6994 path.reset(); 6995 path.setFillType((SkPath::FillType) 0); 6996 path.moveTo(SkBits2Float(0x42918d00), SkBits2Float(0x421fa301)); 6997 path.cubicTo(SkBits2Float(0x428c0830), SkBits2Float(0x4233c399), SkBits2Float(0x42857bfe), SkBits2Float(0x4246b13f), SkBits2Float(0x427c06a0), SkBits2Float(0x42581e30)); 6998 path.lineTo(SkBits2Float(0x42362ff8), SkBits2Float(0x421c3ad6)); 6999 path.cubicTo(SkBits2Float(0x4240fd4a), SkBits2Float(0x420fa210), SkBits2Float(0x424a74b5), SkBits2Float(0x4201f32f), SkBits2Float(0x42526f54), SkBits2Float(0x41e6ccd5)); 7000 path.lineTo(SkBits2Float(0x42918d00), SkBits2Float(0x421fa301)); 7001 path.close(); 7002 7003 SkPath path2(path); 7004 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7005 } 7006 // op end success 1 7007 7008 static void battleOp254(skiatest::Reporter* reporter, const char* filename) { 7009 SkPath path; 7010 path.setFillType((SkPath::FillType) 1); 7011 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 7012 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7013 path.cubicTo(SkBits2Float(0x41ea9e19), SkBits2Float(0xc2a60000), SkBits2Float(0x4261e8db), SkBits2Float(0xc2870be6), SkBits2Float(0x428ed6bc), SkBits2Float(0xc22926d7)); 7014 path.cubicTo(SkBits2Float(0x42acb90a), SkBits2Float(0xc1886bc1), SkBits2Float(0x42adc0f7), SkBits2Float(0x41631db6), SkBits2Float(0x42918d00), SkBits2Float(0x421fa301)); 7015 path.cubicTo(SkBits2Float(0x428c0830), SkBits2Float(0x4233c399), SkBits2Float(0x42857bfe), SkBits2Float(0x4246b13f), SkBits2Float(0x427c06a0), SkBits2Float(0x42581e30)); 7016 path.lineTo(SkBits2Float(0x42362ff8), SkBits2Float(0x421c3ad6)); 7017 path.cubicTo(SkBits2Float(0x4240fd4a), SkBits2Float(0x420fa210), SkBits2Float(0x424a74b5), SkBits2Float(0x4201f32f), SkBits2Float(0x42526f53), SkBits2Float(0x41e6ccd4)); 7018 path.cubicTo(SkBits2Float(0x427b35d6), SkBits2Float(0x41242e26), SkBits2Float(0x4279b842), SkBits2Float(0xc1453c2f), SkBits2Float(0x424e8393), SkBits2Float(0xc1f48e84)); 7019 path.cubicTo(SkBits2Float(0x42234ee4), SkBits2Float(0xc2433f78), SkBits2Float(0x41a99a66), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 7020 path.close(); 7021 7022 SkPath path1(path); 7023 path.reset(); 7024 path.setFillType((SkPath::FillType) 0); 7025 path.moveTo(SkBits2Float(0x427c069f), SkBits2Float(0x42581e31)); 7026 path.cubicTo(SkBits2Float(0x4229355f), SkBits2Float(0x429c5901), SkBits2Float(0x4119ef9b), SkBits2Float(0x42b0b9f6), SkBits2Float(0xc1a91754), SkBits2Float(0x42a086fc)); 7027 path.cubicTo(SkBits2Float(0xc24f933a), SkBits2Float(0x42905402), SkBits2Float(0xc296a2af), SkBits2Float(0x423cccf9), SkBits2Float(0xc2a2e3f0), SkBits2Float(0x417fd713)); 7028 path.cubicTo(SkBits2Float(0xc2af2532), SkBits2Float(0xc17385be), SkBits2Float(0xc296a6d5), SkBits2Float(0xc23cbfbd), SkBits2Float(0xc247a7c9), SkBits2Float(0xc284a101)); 7029 path.lineTo(SkBits2Float(0xc210544b), SkBits2Float(0xc23fc0ab)); 7030 path.cubicTo(SkBits2Float(0xc259cf4c), SkBits2Float(0xc20871e9), SkBits2Float(0xc27d38da), SkBits2Float(0xc1300a36), SkBits2Float(0xc26b810f), SkBits2Float(0x4138f1f1)); 7031 path.cubicTo(SkBits2Float(0xc259c944), SkBits2Float(0x42087b85), SkBits2Float(0xc2160de3), SkBits2Float(0x4250aad1), SkBits2Float(0xc174780b), SkBits2Float(0x42681670)); 7032 path.cubicTo(SkBits2Float(0x40de8efd), SkBits2Float(0x427f820e), SkBits2Float(0x41f4a392), SkBits2Float(0x42620b79), SkBits2Float(0x42362ffc), SkBits2Float(0x421c3ad2)); 7033 path.lineTo(SkBits2Float(0x427c069f), SkBits2Float(0x42581e31)); 7034 path.close(); 7035 7036 SkPath path2(path); 7037 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7038 } 7039 // op end success 1 7040 7041 static void battleOp255(skiatest::Reporter* reporter, const char* filename) { 7042 SkPath path; 7043 path.setFillType((SkPath::FillType) 0); 7044 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7045 path.cubicTo(SkBits2Float(0x41eeb164), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42658277), SkBits2Float(0xc285f892), SkBits2Float(0x42904565), SkBits2Float(0xc22437b5)); 7046 path.cubicTo(SkBits2Float(0x42adc98d), SkBits2Float(0xc171f916), SkBits2Float(0x42ad3226), SkBits2Float(0x4185deb6), SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bae)); 7047 path.lineTo(SkBits2Float(0x424e5857), SkBits2Float(0x41f5204e)); 7048 path.cubicTo(SkBits2Float(0x427a675d), SkBits2Float(0x41418c03), SkBits2Float(0x427b4242), SkBits2Float(0xc12eeb9a), SkBits2Float(0x425095b0), SkBits2Float(0xc1ed6c50)); 7049 path.cubicTo(SkBits2Float(0x4225e91e), SkBits2Float(0xc241b169), SkBits2Float(0x41ac8c92), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 7050 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7051 path.close(); 7052 7053 SkPath path1(path); 7054 path.reset(); 7055 path.setFillType((SkPath::FillType) 0); 7056 path.moveTo(SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bad)); 7057 path.cubicTo(SkBits2Float(0x4288c365), SkBits2Float(0x423d9c15), SkBits2Float(0x4281c36f), SkBits2Float(0x42505c7e), SkBits2Float(0x4273ad50), SkBits2Float(0x42617d52)); 7058 path.lineTo(SkBits2Float(0x423026ec), SkBits2Float(0x42230126)); 7059 path.cubicTo(SkBits2Float(0x423b9c18), SkBits2Float(0x42169f65), SkBits2Float(0x4245bae4), SkBits2Float(0x42091136), SkBits2Float(0x424e5858), SkBits2Float(0x41f5204d)); 7060 path.lineTo(SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bad)); 7061 path.close(); 7062 7063 SkPath path2(path); 7064 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7065 } 7066 // op end success 1 7067 7068 static void battleOp256(skiatest::Reporter* reporter, const char* filename) { 7069 if (!FLAGS_runFail) { 7070 return; // draws wrong 7071 } 7072 SkPath path; 7073 path.setFillType((SkPath::FillType) 1); 7074 path.moveTo(SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 7075 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7076 path.cubicTo(SkBits2Float(0x41eeb164), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42658277), SkBits2Float(0xc285f892), SkBits2Float(0x42904565), SkBits2Float(0xc22437b5)); 7077 path.cubicTo(SkBits2Float(0x42adc98d), SkBits2Float(0xc171f917), SkBits2Float(0x42ad3226), SkBits2Float(0x4185deb4), SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bad)); 7078 path.lineTo(SkBits2Float(0x428eb8d5), SkBits2Float(0x42298bae)); 7079 path.cubicTo(SkBits2Float(0x4288c365), SkBits2Float(0x423d9c16), SkBits2Float(0x4281c36f), SkBits2Float(0x42505c7e), SkBits2Float(0x4273ad50), SkBits2Float(0x42617d52)); 7080 path.lineTo(SkBits2Float(0x423026ec), SkBits2Float(0x42230126)); 7081 path.cubicTo(SkBits2Float(0x423b9c18), SkBits2Float(0x42169f65), SkBits2Float(0x4245bae4), SkBits2Float(0x42091136), SkBits2Float(0x424e5858), SkBits2Float(0x41f5204d)); 7082 path.cubicTo(SkBits2Float(0x427a675e), SkBits2Float(0x41418c02), SkBits2Float(0x427b4242), SkBits2Float(0xc12eeb9b), SkBits2Float(0x425095b0), SkBits2Float(0xc1ed6c50)); 7083 path.cubicTo(SkBits2Float(0x4225e91e), SkBits2Float(0xc241b169), SkBits2Float(0x41ac8c92), SkBits2Float(0xc2700000), SkBits2Float(0xb69400ae), SkBits2Float(0xc2700000)); 7084 path.close(); 7085 7086 SkPath path1(path); 7087 path.reset(); 7088 path.setFillType((SkPath::FillType) 0); 7089 path.moveTo(SkBits2Float(0x4273ad4f), SkBits2Float(0x42617d52)); 7090 path.cubicTo(SkBits2Float(0x421bc173), SkBits2Float(0x42a0404f), SkBits2Float(0x40a50405), SkBits2Float(0x42b1dfaa), SkBits2Float(0xc1cd0022), SkBits2Float(0x429de3fd)); 7091 path.cubicTo(SkBits2Float(0xc261a0a2), SkBits2Float(0x4289e850), SkBits2Float(0xc29d25ee), SkBits2Float(0x4227ed4e), SkBits2Float(0xc2a4d3d8), SkBits2Float(0x411d8f80)); 7092 path.cubicTo(SkBits2Float(0xc2ac81c3), SkBits2Float(0xc1b24b1c), SkBits2Float(0xc28e216c), SkBits2Float(0xc256e38c), SkBits2Float(0xc22e0453), SkBits2Float(0xc28d5ec3)); 7093 path.lineTo(SkBits2Float(0xc1fb9743), SkBits2Float(0xc24c63fd)); 7094 path.cubicTo(SkBits2Float(0xc24d7d6b), SkBits2Float(0xc21b575f), SkBits2Float(0xc279684a), SkBits2Float(0xc180e302), SkBits2Float(0xc26e4dff), SkBits2Float(0x40e3cc4e)); 7095 path.cubicTo(SkBits2Float(0xc26333b4), SkBits2Float(0x41f2c929), SkBits2Float(0xc2231aa4), SkBits2Float(0x42476256), SkBits2Float(0xc1943166), SkBits2Float(0x4264467e)); 7096 path.cubicTo(SkBits2Float(0x406e93d1), SkBits2Float(0x42809553), SkBits2Float(0x41e1305a), SkBits2Float(0x4267b03c), SkBits2Float(0x423026ed), SkBits2Float(0x42230127)); 7097 path.lineTo(SkBits2Float(0x4273ad4f), SkBits2Float(0x42617d52)); 7098 path.close(); 7099 7100 SkPath path2(path); 7101 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7102 } 7103 // op end success 1 7104 7105 static void battleOp257(skiatest::Reporter* reporter, const char* filename) { 7106 SkPath path; 7107 path.setFillType((SkPath::FillType) 0); 7108 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7109 path.cubicTo(SkBits2Float(0x41f2d268), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426923a2), SkBits2Float(0xc284dd06), SkBits2Float(0x4291aced), SkBits2Float(0xc21f2e53)); 7110 path.cubicTo(SkBits2Float(0x42aec809), SkBits2Float(0xc1528a66), SkBits2Float(0x42ac7c90), SkBits2Float(0x419a60b1), SkBits2Float(0x428bb0fe), SkBits2Float(0x42335ba0)); 7111 path.lineTo(SkBits2Float(0x4249f6a4), SkBits2Float(0x4201a806)); 7112 path.cubicTo(SkBits2Float(0x427960d2), SkBits2Float(0x415f325f), SkBits2Float(0x427cb22e), SkBits2Float(0xc11832b1), SkBits2Float(0x42529d7e), SkBits2Float(0xc1e62422)); 7113 path.cubicTo(SkBits2Float(0x422888ce), SkBits2Float(0xc2401775), SkBits2Float(0x41af88b3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 7114 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7115 path.close(); 7116 7117 SkPath path1(path); 7118 path.reset(); 7119 path.setFillType((SkPath::FillType) 0); 7120 path.moveTo(SkBits2Float(0x428bb0ff), SkBits2Float(0x42335ba2)); 7121 path.cubicTo(SkBits2Float(0x4285489d), SkBits2Float(0x42475206), SkBits2Float(0x427ba631), SkBits2Float(0x4259da14), SkBits2Float(0x426ae250), SkBits2Float(0x426aa282)); 7122 path.lineTo(SkBits2Float(0x4229cbb3), SkBits2Float(0x42299d92)); 7123 path.cubicTo(SkBits2Float(0x4235ea43), SkBits2Float(0x421d7bb7), SkBits2Float(0x4240b302), SkBits2Float(0x42101649), SkBits2Float(0x4249f6a5), SkBits2Float(0x4201a807)); 7124 path.lineTo(SkBits2Float(0x428bb0ff), SkBits2Float(0x42335ba2)); 7125 path.close(); 7126 7127 SkPath path2(path); 7128 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7129 } 7130 // op end success 1 7131 7132 static void battleOp258(skiatest::Reporter* reporter, const char* filename) { 7133 SkPath path; 7134 path.setFillType((SkPath::FillType) 1); 7135 path.moveTo(SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 7136 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7137 path.cubicTo(SkBits2Float(0x41f2d268), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426923a2), SkBits2Float(0xc284dd06), SkBits2Float(0x4291aced), SkBits2Float(0xc21f2e53)); 7138 path.cubicTo(SkBits2Float(0x42aec809), SkBits2Float(0xc1528a66), SkBits2Float(0x42ac7c90), SkBits2Float(0x419a60b1), SkBits2Float(0x428bb0ff), SkBits2Float(0x42335ba2)); 7139 path.cubicTo(SkBits2Float(0x4285489d), SkBits2Float(0x42475206), SkBits2Float(0x427ba631), SkBits2Float(0x4259da14), SkBits2Float(0x426ae250), SkBits2Float(0x426aa282)); 7140 path.lineTo(SkBits2Float(0x4229cbb3), SkBits2Float(0x42299d92)); 7141 path.cubicTo(SkBits2Float(0x4235ea43), SkBits2Float(0x421d7bb7), SkBits2Float(0x4240b302), SkBits2Float(0x42101649), SkBits2Float(0x4249f6a4), SkBits2Float(0x4201a806)); 7142 path.cubicTo(SkBits2Float(0x427960d2), SkBits2Float(0x415f325f), SkBits2Float(0x427cb22e), SkBits2Float(0xc11832b1), SkBits2Float(0x42529d7e), SkBits2Float(0xc1e62422)); 7143 path.cubicTo(SkBits2Float(0x422888ce), SkBits2Float(0xc2401775), SkBits2Float(0x41af88b3), SkBits2Float(0xc2700000), SkBits2Float(0x36d3ff52), SkBits2Float(0xc2700000)); 7144 path.close(); 7145 7146 SkPath path1(path); 7147 path.reset(); 7148 path.setFillType((SkPath::FillType) 0); 7149 path.moveTo(SkBits2Float(0x426ae251), SkBits2Float(0x426aa281)); 7150 path.cubicTo(SkBits2Float(0x420dcd2c), SkBits2Float(0x42a3e87c), SkBits2Float(0x3f1c0197), SkBits2Float(0x42b294d6), SkBits2Float(0xc1f0a2ab), SkBits2Float(0x429ab731)); 7151 path.cubicTo(SkBits2Float(0xc27312b1), SkBits2Float(0x4282d98e), SkBits2Float(0xc2a300b1), SkBits2Float(0x4211eaa7), SkBits2Float(0xc2a5d865), SkBits2Float(0x40654aaf)); 7152 path.cubicTo(SkBits2Float(0xc2a8b018), SkBits2Float(0xc1ea82a2), SkBits2Float(0xc2845e8a), SkBits2Float(0xc26fc272), SkBits2Float(0xc2128ebb), SkBits2Float(0xc294f34d)); 7153 path.lineTo(SkBits2Float(0xc1d3e3ef), SkBits2Float(0xc2575999)); 7154 path.cubicTo(SkBits2Float(0xc23f6093), SkBits2Float(0xc22d51f6), SkBits2Float(0xc273e2d0), SkBits2Float(0xc1a9868a), SkBits2Float(0xc26fc6b5), SkBits2Float(0x4025c090)); 7155 path.cubicTo(SkBits2Float(0xc26baa9a), SkBits2Float(0x41d2f6ae), SkBits2Float(0xc22fb71e), SkBits2Float(0x423d2e2a), SkBits2Float(0xc1adf403), SkBits2Float(0x425faf61)); 7156 path.cubicTo(SkBits2Float(0x3ee18e9e), SkBits2Float(0x4281184d), SkBits2Float(0x41cd03a3), SkBits2Float(0x426cf9bf), SkBits2Float(0x4229cbb7), SkBits2Float(0x42299d90)); 7157 path.lineTo(SkBits2Float(0x426ae251), SkBits2Float(0x426aa281)); 7158 path.close(); 7159 7160 SkPath path2(path); 7161 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7162 } 7163 // op end success 1 7164 7165 static void battleOp259(skiatest::Reporter* reporter, const char* filename) { 7166 SkPath path; 7167 path.setFillType((SkPath::FillType) 0); 7168 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7169 path.cubicTo(SkBits2Float(0x41f70d18), SkBits2Float(0xc2a60000), SkBits2Float(0x426cd682), SkBits2Float(0xc283b5d2), SkBits2Float(0x429310ae), SkBits2Float(0xc219fc22)); 7170 path.cubicTo(SkBits2Float(0x42afb61c), SkBits2Float(0xc132327f), SkBits2Float(0x42ab9c4e), SkBits2Float(0x41af4ab2), SkBits2Float(0x42886baa), SkBits2Float(0x423d2918)); 7171 path.lineTo(SkBits2Float(0x42453c0d), SkBits2Float(0x4208be17)); 7172 path.cubicTo(SkBits2Float(0x42781c98), SkBits2Float(0x417d6f0f), SkBits2Float(0x427e0a5e), SkBits2Float(0xc100d142), SkBits2Float(0x42549fd3), SkBits2Float(0xc1dea0fa)); 7173 path.cubicTo(SkBits2Float(0x422b3547), SkBits2Float(0xc23e6ca9), SkBits2Float(0x41b29756), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 7174 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7175 path.close(); 7176 7177 SkPath path1(path); 7178 path.reset(); 7179 path.setFillType((SkPath::FillType) 0); 7180 path.moveTo(SkBits2Float(0x42886bab), SkBits2Float(0x423d2917)); 7181 path.cubicTo(SkBits2Float(0x42818ce6), SkBits2Float(0x4250fab6), SkBits2Float(0x42733ded), SkBits2Float(0x42633df9), SkBits2Float(0x42618b96), SkBits2Float(0x4273a01b)); 7182 path.lineTo(SkBits2Float(0x42230b75), SkBits2Float(0x42301d61)); 7183 path.cubicTo(SkBits2Float(0x422fd668), SkBits2Float(0x4224457a), SkBits2Float(0x423b4d41), SkBits2Float(0x421711c6), SkBits2Float(0x42453c0e), SkBits2Float(0x4208be17)); 7184 path.lineTo(SkBits2Float(0x42886bab), SkBits2Float(0x423d2917)); 7185 path.close(); 7186 7187 SkPath path2(path); 7188 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7189 } 7190 // op end success 1 7191 7192 static void battleOp260(skiatest::Reporter* reporter, const char* filename) { 7193 SkPath path; 7194 path.setFillType((SkPath::FillType) 1); 7195 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 7196 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7197 path.cubicTo(SkBits2Float(0x41f70d18), SkBits2Float(0xc2a60000), SkBits2Float(0x426cd682), SkBits2Float(0xc283b5d2), SkBits2Float(0x429310ae), SkBits2Float(0xc219fc22)); 7198 path.cubicTo(SkBits2Float(0x42afb61c), SkBits2Float(0xc132327f), SkBits2Float(0x42ab9c4e), SkBits2Float(0x41af4ab2), SkBits2Float(0x42886bab), SkBits2Float(0x423d2917)); 7199 path.cubicTo(SkBits2Float(0x42818ce6), SkBits2Float(0x4250fab6), SkBits2Float(0x42733ded), SkBits2Float(0x42633df9), SkBits2Float(0x42618b96), SkBits2Float(0x4273a01b)); 7200 path.lineTo(SkBits2Float(0x42230b75), SkBits2Float(0x42301d61)); 7201 path.cubicTo(SkBits2Float(0x422fd668), SkBits2Float(0x4224457a), SkBits2Float(0x423b4d41), SkBits2Float(0x421711c6), SkBits2Float(0x42453c0d), SkBits2Float(0x4208be17)); 7202 path.cubicTo(SkBits2Float(0x42781c98), SkBits2Float(0x417d6f0f), SkBits2Float(0x427e0a5e), SkBits2Float(0xc100d142), SkBits2Float(0x42549fd3), SkBits2Float(0xc1dea0fa)); 7203 path.cubicTo(SkBits2Float(0x422b3547), SkBits2Float(0xc23e6ca9), SkBits2Float(0x41b29756), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 7204 path.close(); 7205 7206 SkPath path1(path); 7207 path.reset(); 7208 path.setFillType((SkPath::FillType) 0); 7209 path.moveTo(SkBits2Float(0x42618b95), SkBits2Float(0x4273a01c)); 7210 path.cubicTo(SkBits2Float(0x41fe659e), SkBits2Float(0x42a75638), SkBits2Float(0xc081f8cf), SkBits2Float(0x42b2d4b3), SkBits2Float(0xc20a1eaa), SkBits2Float(0x4296f3e7)); 7211 path.cubicTo(SkBits2Float(0xc281ff1e), SkBits2Float(0x42762634), SkBits2Float(0xc2a8320c), SkBits2Float(0x41f52b39), SkBits2Float(0xc2a5e71e), SkBits2Float(0xc035be80)); 7212 path.cubicTo(SkBits2Float(0xc2a39c30), SkBits2Float(0xc2114d6a), SkBits2Float(0xc2728d06), SkBits2Float(0xc283ad37), SkBits2Float(0xc1ea4cbe), SkBits2Float(0xc29b5279)); 7213 path.lineTo(SkBits2Float(0xc1a95f99), SkBits2Float(0xc2608fe9)); 7214 path.cubicTo(SkBits2Float(0xc22f5688), SkBits2Float(0xc23e6034), SkBits2Float(0xc26c8b72), SkBits2Float(0xc1d2135a), SkBits2Float(0xc26fdc03), SkBits2Float(0xc003615b)); 7215 path.cubicTo(SkBits2Float(0xc2732c96), SkBits2Float(0x41b13b02), SkBits2Float(0xc23bf25c), SkBits2Float(0x4231f06e), SkBits2Float(0xc1c7b0f0), SkBits2Float(0x425a3eb1)); 7216 path.cubicTo(SkBits2Float(0xc03be91a), SkBits2Float(0x4281467b), SkBits2Float(0x41b7e6c5), SkBits2Float(0x4271eec4), SkBits2Float(0x42230b77), SkBits2Float(0x42301d61)); 7217 path.lineTo(SkBits2Float(0x42618b95), SkBits2Float(0x4273a01c)); 7218 path.close(); 7219 7220 SkPath path2(path); 7221 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7222 } 7223 // op end success 1 7224 7225 static void battleOp261(skiatest::Reporter* reporter, const char* filename) { 7226 SkPath path; 7227 path.setFillType((SkPath::FillType) 0); 7228 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7229 path.cubicTo(SkBits2Float(0x41f9750b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426eeefa), SkBits2Float(0xc2830bb8), SkBits2Float(0x4293d569), SkBits2Float(0xc2170343)); 7230 path.cubicTo(SkBits2Float(0x42b03354), SkBits2Float(0xc11fbc55), SkBits2Float(0x42ab0b89), SkBits2Float(0x41bb247a), SkBits2Float(0x42867c8e), SkBits2Float(0x42429f12)); 7231 path.lineTo(SkBits2Float(0x42427039), SkBits2Float(0x420cb0ae)); 7232 path.cubicTo(SkBits2Float(0x42774b4a), SkBits2Float(0x418748a6), SkBits2Float(0x427ebf70), SkBits2Float(0xc0e6f16a), SkBits2Float(0x4255bc46), SkBits2Float(0xc1da54e8)); 7233 path.cubicTo(SkBits2Float(0x422cb91b), SkBits2Float(0xc23d76ba), SkBits2Float(0x41b454a4), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 7234 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7235 path.close(); 7236 7237 SkPath path1(path); 7238 path.reset(); 7239 path.setFillType((SkPath::FillType) 0); 7240 path.moveTo(SkBits2Float(0x42867c8e), SkBits2Float(0x42429f13)); 7241 path.cubicTo(SkBits2Float(0x427eb473), SkBits2Float(0x4256572c), SkBits2Float(0x426e4fbb), SkBits2Float(0x42686e49), SkBits2Float(0x425c16a2), SkBits2Float(0x427890ea)); 7242 path.lineTo(SkBits2Float(0x421f199c), SkBits2Float(0x4233afb3)); 7243 path.cubicTo(SkBits2Float(0x422c45f9), SkBits2Float(0x422805b5), SkBits2Float(0x42381fbf), SkBits2Float(0x421af1ea), SkBits2Float(0x4242703a), SkBits2Float(0x420cb0af)); 7244 path.lineTo(SkBits2Float(0x42867c8e), SkBits2Float(0x42429f13)); 7245 path.close(); 7246 7247 SkPath path2(path); 7248 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7249 } 7250 // op end success 1 7251 7252 static void battleOp262(skiatest::Reporter* reporter, const char* filename) { 7253 SkPath path; 7254 path.setFillType((SkPath::FillType) 1); 7255 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 7256 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7257 path.cubicTo(SkBits2Float(0x41f9750b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x426eeefa), SkBits2Float(0xc2830bb8), SkBits2Float(0x4293d569), SkBits2Float(0xc2170343)); 7258 path.cubicTo(SkBits2Float(0x42b03354), SkBits2Float(0xc11fbc55), SkBits2Float(0x42ab0b89), SkBits2Float(0x41bb247a), SkBits2Float(0x42867c8e), SkBits2Float(0x42429f13)); 7259 path.cubicTo(SkBits2Float(0x427eb473), SkBits2Float(0x4256572c), SkBits2Float(0x426e4fbb), SkBits2Float(0x42686e49), SkBits2Float(0x425c16a2), SkBits2Float(0x427890ea)); 7260 path.lineTo(SkBits2Float(0x421f199c), SkBits2Float(0x4233afb3)); 7261 path.cubicTo(SkBits2Float(0x422c45f9), SkBits2Float(0x422805b5), SkBits2Float(0x42381fbf), SkBits2Float(0x421af1ea), SkBits2Float(0x42427039), SkBits2Float(0x420cb0ae)); 7262 path.cubicTo(SkBits2Float(0x42774b4a), SkBits2Float(0x418748a6), SkBits2Float(0x427ebf70), SkBits2Float(0xc0e6f16a), SkBits2Float(0x4255bc46), SkBits2Float(0xc1da54e8)); 7263 path.cubicTo(SkBits2Float(0x422cb91b), SkBits2Float(0xc23d76ba), SkBits2Float(0x41b454a4), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 7264 path.close(); 7265 7266 SkPath path1(path); 7267 path.reset(); 7268 path.setFillType((SkPath::FillType) 0); 7269 path.moveTo(SkBits2Float(0x425c16a1), SkBits2Float(0x427890eb)); 7270 path.cubicTo(SkBits2Float(0x41ed85e5), SkBits2Float(0x42a9245e), SkBits2Float(0xc0d70d9a), SkBits2Float(0x42b2c211), SkBits2Float(0xc2140612), SkBits2Float(0x42949665)); 7271 path.cubicTo(SkBits2Float(0xc2869539), SkBits2Float(0x426cd56f), SkBits2Float(0xc2aac701), SkBits2Float(0x41d9ff9c), SkBits2Float(0xc2a57e3b), SkBits2Float(0xc0cf6824)); 7272 path.cubicTo(SkBits2Float(0xc2a03574), SkBits2Float(0xc220d9d7), SkBits2Float(0xc26501e3), SkBits2Float(0xc289ed78), SkBits2Float(0xc1c7e516), SkBits2Float(0xc29e4c97)); 7273 path.lineTo(SkBits2Float(0xc190809e), SkBits2Float(0xc264ddc3)); 7274 path.cubicTo(SkBits2Float(0xc2258c2b), SkBits2Float(0xc24769d4), SkBits2Float(0xc267a08f), SkBits2Float(0xc1e88e39), SkBits2Float(0xc26f4461), SkBits2Float(0xc095eec9)); 7275 path.cubicTo(SkBits2Float(0xc276e835), SkBits2Float(0x419d96da), SkBits2Float(0xc24293e3), SkBits2Float(0x422b3483), SkBits2Float(0xc1d60298), SkBits2Float(0x4256d347)); 7276 path.cubicTo(SkBits2Float(0xc09b75b0), SkBits2Float(0x42813905), SkBits2Float(0x41abb417), SkBits2Float(0x42748af0), SkBits2Float(0x421f199e), SkBits2Float(0x4233afb2)); 7277 path.lineTo(SkBits2Float(0x425c16a1), SkBits2Float(0x427890eb)); 7278 path.close(); 7279 7280 SkPath path2(path); 7281 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7282 } 7283 // op end success 1 7284 7285 static void battleOp263(skiatest::Reporter* reporter, const char* filename) { 7286 SkPath path; 7287 path.setFillType((SkPath::FillType) 0); 7288 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7289 path.cubicTo(SkBits2Float(0x41fc38da), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4271556b), SkBits2Float(0xc2824656), SkBits2Float(0x4294b266), SkBits2Float(0xc213956f)); 7290 path.cubicTo(SkBits2Float(0x42b0ba15), SkBits2Float(0xc10a78c9), SkBits2Float(0x42aa55de), SkBits2Float(0x41c8b65d), SkBits2Float(0x42843343), SkBits2Float(0x4248ca15)); 7291 path.lineTo(SkBits2Float(0x423f2206), SkBits2Float(0x42112621)); 7292 path.cubicTo(SkBits2Float(0x427644a6), SkBits2Float(0x419117e2), SkBits2Float(0x427f8241), SkBits2Float(0xc0c83353), SkBits2Float(0x4256fbc4), SkBits2Float(0xc1d55fc8)); 7293 path.cubicTo(SkBits2Float(0x422e7546), SkBits2Float(0xc23c595d), SkBits2Float(0x41b6544b), SkBits2Float(0xc2700002), SkBits2Float(0x357ffa8c), SkBits2Float(0xc2700000)); 7294 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7295 path.close(); 7296 7297 SkPath path1(path); 7298 path.reset(); 7299 path.setFillType((SkPath::FillType) 0); 7300 path.moveTo(SkBits2Float(0x42843344), SkBits2Float(0x4248ca14)); 7301 path.cubicTo(SkBits2Float(0x4279865a), SkBits2Float(0x425c60b2), SkBits2Float(0x426884b7), SkBits2Float(0x426e4097), SkBits2Float(0x4255b1c1), SkBits2Float(0x427e1584)); 7302 path.lineTo(SkBits2Float(0x421a7a55), SkBits2Float(0x4237acdc)); 7303 path.cubicTo(SkBits2Float(0x422815ec), SkBits2Float(0x422c3b08), SkBits2Float(0x42346121), SkBits2Float(0x421f4f28), SkBits2Float(0x423f2207), SkBits2Float(0x42112621)); 7304 path.lineTo(SkBits2Float(0x42843344), SkBits2Float(0x4248ca14)); 7305 path.close(); 7306 7307 SkPath path2(path); 7308 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7309 } 7310 // op end success 1 7311 7312 static void battleOp264(skiatest::Reporter* reporter, const char* filename) { 7313 SkPath path; 7314 path.setFillType((SkPath::FillType) 1); 7315 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 7316 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7317 path.cubicTo(SkBits2Float(0x41fc38da), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4271556b), SkBits2Float(0xc2824656), SkBits2Float(0x4294b266), SkBits2Float(0xc213956f)); 7318 path.cubicTo(SkBits2Float(0x42b0ba15), SkBits2Float(0xc10a78c9), SkBits2Float(0x42aa55de), SkBits2Float(0x41c8b65d), SkBits2Float(0x42843344), SkBits2Float(0x4248ca14)); 7319 path.cubicTo(SkBits2Float(0x4279865a), SkBits2Float(0x425c60b2), SkBits2Float(0x426884b7), SkBits2Float(0x426e4097), SkBits2Float(0x4255b1c1), SkBits2Float(0x427e1584)); 7320 path.lineTo(SkBits2Float(0x421a7a55), SkBits2Float(0x4237acdc)); 7321 path.cubicTo(SkBits2Float(0x422815ec), SkBits2Float(0x422c3b08), SkBits2Float(0x42346121), SkBits2Float(0x421f4f28), SkBits2Float(0x423f2206), SkBits2Float(0x42112621)); 7322 path.cubicTo(SkBits2Float(0x427644a6), SkBits2Float(0x419117e2), SkBits2Float(0x427f8241), SkBits2Float(0xc0c83353), SkBits2Float(0x4256fbc4), SkBits2Float(0xc1d55fc8)); 7323 path.cubicTo(SkBits2Float(0x422e7546), SkBits2Float(0xc23c595d), SkBits2Float(0x41b6544b), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 7324 path.close(); 7325 7326 SkPath path1(path); 7327 path.reset(); 7328 path.setFillType((SkPath::FillType) 0); 7329 path.moveTo(SkBits2Float(0x4255b1c2), SkBits2Float(0x427e1586)); 7330 path.cubicTo(SkBits2Float(0x41d9eb88), SkBits2Float(0x42ab15b8), SkBits2Float(0xc11c5ee2), SkBits2Float(0x42b27b8c), SkBits2Float(0xc21f2fec), SkBits2Float(0x4291ac82)); 7331 path.cubicTo(SkBits2Float(0xc28ba40f), SkBits2Float(0x4261baf0), SkBits2Float(0xc2ad6782), SkBits2Float(0x41ba4aab), SkBits2Float(0xc2a4a120), SkBits2Float(0xc12a4d95)); 7332 path.cubicTo(SkBits2Float(0xc29bdabd), SkBits2Float(0xc2324c20), SkBits2Float(0xc254adab), SkBits2Float(0xc290ac19), SkBits2Float(0xc19fafc0), SkBits2Float(0xc2a120ca)); 7333 path.lineTo(SkBits2Float(0xc166df50), SkBits2Float(0xc268f4ce)); 7334 path.cubicTo(SkBits2Float(0xc219be54), SkBits2Float(0xc2512a28), SkBits2Float(0xc26154eb), SkBits2Float(0xc200e3bb), SkBits2Float(0xc26e04b2), SkBits2Float(0xc0f6387e)); 7335 path.cubicTo(SkBits2Float(0xc27ab479), SkBits2Float(0x4186ab35), SkBits2Float(0xc249e3ea), SkBits2Float(0x42232db1), SkBits2Float(0xc1e62664), SkBits2Float(0x42529ce0)); 7336 path.cubicTo(SkBits2Float(0xc0e213c9), SkBits2Float(0x42810608), SkBits2Float(0x419d8860), SkBits2Float(0x427759fd), SkBits2Float(0x421a7a58), SkBits2Float(0x4237acda)); 7337 path.lineTo(SkBits2Float(0x4255b1c2), SkBits2Float(0x427e1586)); 7338 path.close(); 7339 7340 SkPath path2(path); 7341 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7342 } 7343 // op end success 1 7344 7345 static void battleOp265(skiatest::Reporter* reporter, const char* filename) { 7346 SkPath path; 7347 path.setFillType((SkPath::FillType) 0); 7348 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7349 path.cubicTo(SkBits2Float(0x41fe7454), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427343e8), SkBits2Float(0xc281a57b), SkBits2Float(0x429560d9), SkBits2Float(0xc210ce12)); 7350 path.cubicTo(SkBits2Float(0x42b11fbd), SkBits2Float(0xc0f2896e), SkBits2Float(0x42a9b750), SkBits2Float(0x41d3a0ba), SkBits2Float(0x42824e39), SkBits2Float(0x424daf12)); 7351 path.lineTo(SkBits2Float(0x423c64bf), SkBits2Float(0x4214afea)); 7352 path.cubicTo(SkBits2Float(0x42755f66), SkBits2Float(0x4198fbec), SkBits2Float(0x42800a9d), SkBits2Float(0xc0af53e2), SkBits2Float(0x4257f7fc), SkBits2Float(0xc1d15b49)); 7353 path.cubicTo(SkBits2Float(0x422fdabc), SkBits2Float(0xc23b70cc), SkBits2Float(0x41b7f168), SkBits2Float(0xc2700002), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000)); 7354 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7355 path.close(); 7356 7357 SkPath path1(path); 7358 path.reset(); 7359 path.setFillType((SkPath::FillType) 0); 7360 path.moveTo(SkBits2Float(0x42824e38), SkBits2Float(0x424daf15)); 7361 path.cubicTo(SkBits2Float(0x42753e9a), SkBits2Float(0x4261276c), SkBits2Float(0x4263be9a), SkBits2Float(0x4272d73c), SkBits2Float(0x4250704b), SkBits2Float(0x428134df)); 7362 path.lineTo(SkBits2Float(0x4216adb6), SkBits2Float(0x423acdfc)); 7363 path.cubicTo(SkBits2Float(0x4224a276), SkBits2Float(0x422f8c2c), SkBits2Float(0x42314905), SkBits2Float(0x4222c30f), SkBits2Float(0x423c64c0), SkBits2Float(0x4214afec)); 7364 path.lineTo(SkBits2Float(0x42824e38), SkBits2Float(0x424daf15)); 7365 path.close(); 7366 7367 SkPath path2(path); 7368 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7369 } 7370 // op end success 1 7371 7372 static void battleOp266(skiatest::Reporter* reporter, const char* filename) { 7373 SkPath path; 7374 path.setFillType((SkPath::FillType) 1); 7375 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 7376 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7377 path.cubicTo(SkBits2Float(0x41fe7454), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427343e8), SkBits2Float(0xc281a57b), SkBits2Float(0x429560d9), SkBits2Float(0xc210ce12)); 7378 path.cubicTo(SkBits2Float(0x42b11fbd), SkBits2Float(0xc0f2896e), SkBits2Float(0x42a9b750), SkBits2Float(0x41d3a0ba), SkBits2Float(0x42824e39), SkBits2Float(0x424daf12)); 7379 path.lineTo(SkBits2Float(0x42824e38), SkBits2Float(0x424daf15)); 7380 path.cubicTo(SkBits2Float(0x42753e9a), SkBits2Float(0x4261276c), SkBits2Float(0x4263be9a), SkBits2Float(0x4272d73c), SkBits2Float(0x4250704b), SkBits2Float(0x428134df)); 7381 path.lineTo(SkBits2Float(0x4216adb6), SkBits2Float(0x423acdfc)); 7382 path.cubicTo(SkBits2Float(0x4224a276), SkBits2Float(0x422f8c2c), SkBits2Float(0x42314905), SkBits2Float(0x4222c30f), SkBits2Float(0x423c64c0), SkBits2Float(0x4214afec)); 7383 path.lineTo(SkBits2Float(0x423c64bf), SkBits2Float(0x4214afea)); 7384 path.cubicTo(SkBits2Float(0x42755f66), SkBits2Float(0x4198fbec), SkBits2Float(0x42800a9d), SkBits2Float(0xc0af53e2), SkBits2Float(0x4257f7fc), SkBits2Float(0xc1d15b49)); 7385 path.cubicTo(SkBits2Float(0x422fdabc), SkBits2Float(0xc23b70cc), SkBits2Float(0x41b7f168), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 7386 path.close(); 7387 7388 SkPath path1(path); 7389 path.reset(); 7390 path.setFillType((SkPath::FillType) 0); 7391 path.moveTo(SkBits2Float(0x4250704d), SkBits2Float(0x428134e0)); 7392 path.cubicTo(SkBits2Float(0x41c9effb), SkBits2Float(0x42ac8cba), SkBits2Float(0xc143bd6b), SkBits2Float(0x42b21c58), SkBits2Float(0xc2280561), SkBits2Float(0x428f2c0c)); 7393 path.cubicTo(SkBits2Float(0xc28f8db2), SkBits2Float(0x42587782), SkBits2Float(0xc2af41ba), SkBits2Float(0x41a05b8a), SkBits2Float(0xc2a3a0d2), SkBits2Float(0xc15fb01a)); 7394 path.cubicTo(SkBits2Float(0xc297ffea), SkBits2Float(0xc24005d3), SkBits2Float(0xc246ef26), SkBits2Float(0xc295c2d5), SkBits2Float(0xc17d9b57), SkBits2Float(0xc2a2f1e8)); 7395 path.lineTo(SkBits2Float(0xc1375488), SkBits2Float(0xc26b9543)); 7396 path.cubicTo(SkBits2Float(0xc20fcecd), SkBits2Float(0xc25885a3), SkBits2Float(0xc25bc22e), SkBits2Float(0xc20acfc5), SkBits2Float(0xc26c9222), SkBits2Float(0xc121b3b7)); 7397 path.cubicTo(SkBits2Float(0xc27d6216), SkBits2Float(0x4167d7a5), SkBits2Float(0xc24f8c13), SkBits2Float(0x421c7b68), SkBits2Float(0xc1f2ebf9), SkBits2Float(0x424efee8)); 7398 path.cubicTo(SkBits2Float(0xc10d7f99), SkBits2Float(0x4280c134), SkBits2Float(0x4191fa9e), SkBits2Float(0x4279782f), SkBits2Float(0x4216adb8), SkBits2Float(0x423acdfc)); 7399 path.lineTo(SkBits2Float(0x4250704d), SkBits2Float(0x428134e0)); 7400 path.close(); 7401 7402 SkPath path2(path); 7403 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7404 } 7405 // op end success 1 7406 7407 static void battleOp267(skiatest::Reporter* reporter, const char* filename) { 7408 SkPath path; 7409 path.setFillType((SkPath::FillType) 0); 7410 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7411 path.cubicTo(SkBits2Float(0x42003b3a), SkBits2Float(0xc2a60000), SkBits2Float(0x4274ff8d), SkBits2Float(0xc28113a0), SkBits2Float(0x4295fac2), SkBits2Float(0xc20e4c24)); 7412 path.cubicTo(SkBits2Float(0x42b175be), SkBits2Float(0xc0d38840), SkBits2Float(0x42a91fa3), SkBits2Float(0x41dd6a3d), SkBits2Float(0x42809081), SkBits2Float(0x4252054f)); 7413 path.lineTo(SkBits2Float(0x4239e059), SkBits2Float(0x4217d27c)); 7414 path.cubicTo(SkBits2Float(0x4274841b), SkBits2Float(0x41a00f1c), SkBits2Float(0x428048c8), SkBits2Float(0xc098ea38), SkBits2Float(0x4258d681), SkBits2Float(0xc1cdbb32)); 7415 path.cubicTo(SkBits2Float(0x42311b71), SkBits2Float(0xc23a9deb), SkBits2Float(0x41b96511), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 7416 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7417 path.close(); 7418 7419 SkPath path1(path); 7420 path.reset(); 7421 path.setFillType((SkPath::FillType) 0); 7422 path.moveTo(SkBits2Float(0x42809082), SkBits2Float(0x4252054e)); 7423 path.cubicTo(SkBits2Float(0x4271521d), SkBits2Float(0x42655feb), SkBits2Float(0x425f60c7), SkBits2Float(0x4276e1ca), SkBits2Float(0x424ba43f), SkBits2Float(0x42831ae1)); 7424 path.lineTo(SkBits2Float(0x421335f7), SkBits2Float(0x423d8ca7)); 7425 path.cubicTo(SkBits2Float(0x42217a65), SkBits2Float(0x4232780c), SkBits2Float(0x422e72e3), SkBits2Float(0x4225d023), SkBits2Float(0x4239e05a), SkBits2Float(0x4217d27c)); 7426 path.lineTo(SkBits2Float(0x42809082), SkBits2Float(0x4252054e)); 7427 path.close(); 7428 7429 SkPath path2(path); 7430 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7431 } 7432 // op end success 1 7433 7434 static void battleOp268(skiatest::Reporter* reporter, const char* filename) { 7435 SkPath path; 7436 path.setFillType((SkPath::FillType) 1); 7437 path.moveTo(SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 7438 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7439 path.cubicTo(SkBits2Float(0x42003b3a), SkBits2Float(0xc2a60000), SkBits2Float(0x4274ff8d), SkBits2Float(0xc28113a0), SkBits2Float(0x4295fac2), SkBits2Float(0xc20e4c24)); 7440 path.cubicTo(SkBits2Float(0x42b175be), SkBits2Float(0xc0d38840), SkBits2Float(0x42a91fa3), SkBits2Float(0x41dd6a3d), SkBits2Float(0x42809082), SkBits2Float(0x4252054e)); 7441 path.cubicTo(SkBits2Float(0x4271521d), SkBits2Float(0x42655feb), SkBits2Float(0x425f60c7), SkBits2Float(0x4276e1ca), SkBits2Float(0x424ba43f), SkBits2Float(0x42831ae1)); 7442 path.lineTo(SkBits2Float(0x421335f7), SkBits2Float(0x423d8ca7)); 7443 path.cubicTo(SkBits2Float(0x42217a65), SkBits2Float(0x4232780c), SkBits2Float(0x422e72e3), SkBits2Float(0x4225d023), SkBits2Float(0x4239e059), SkBits2Float(0x4217d27c)); 7444 path.cubicTo(SkBits2Float(0x4274841b), SkBits2Float(0x41a00f1c), SkBits2Float(0x428048c8), SkBits2Float(0xc098ea38), SkBits2Float(0x4258d681), SkBits2Float(0xc1cdbb32)); 7445 path.cubicTo(SkBits2Float(0x42311b71), SkBits2Float(0xc23a9deb), SkBits2Float(0x41b96511), SkBits2Float(0xc2700000), SkBits2Float(0x3697ff52), SkBits2Float(0xc2700000)); 7446 path.close(); 7447 7448 SkPath path1(path); 7449 path.reset(); 7450 path.setFillType((SkPath::FillType) 0); 7451 path.moveTo(SkBits2Float(0x424ba440), SkBits2Float(0x42831ae2)); 7452 path.cubicTo(SkBits2Float(0x41bb72ba), SkBits2Float(0x42adc9b8), SkBits2Float(0xc16714ca), SkBits2Float(0x42b1a998), SkBits2Float(0xc22fd30d), SkBits2Float(0x428ccf5c)); 7453 path.cubicTo(SkBits2Float(0xc292f074), SkBits2Float(0x424fea41), SkBits2Float(0xc2b0b757), SkBits2Float(0x4188cdbd), SkBits2Float(0xc2a27f7d), SkBits2Float(0xc187abb1)); 7454 path.cubicTo(SkBits2Float(0xc29447a3), SkBits2Float(0xc24c1290), SkBits2Float(0xc23a2b5e), SkBits2Float(0xc29a0e93), SkBits2Float(0xc141f42b), SkBits2Float(0xc2a43853)); 7455 path.lineTo(SkBits2Float(0xc10c3538), SkBits2Float(0xc26d6d31)); 7456 path.cubicTo(SkBits2Float(0xc2069491), SkBits2Float(0xc25ebb9d), SkBits2Float(0xc2566164), SkBits2Float(0xc21385b2), SkBits2Float(0xc26aefd1), SkBits2Float(0xc1442672)); 7457 path.cubicTo(SkBits2Float(0xc27f7e3e), SkBits2Float(0x4145c9dc), SkBits2Float(0xc2547130), SkBits2Float(0x42164ccc), SkBits2Float(0xc1fe3427), SkBits2Float(0x424b94a6)); 7458 path.cubicTo(SkBits2Float(0xc1270bd9), SkBits2Float(0x42806e40), SkBits2Float(0x41878138), SkBits2Float(0x427b4278), SkBits2Float(0x421335f8), SkBits2Float(0x423d8ca8)); 7459 path.lineTo(SkBits2Float(0x424ba440), SkBits2Float(0x42831ae2)); 7460 path.close(); 7461 7462 SkPath path2(path); 7463 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7464 } 7465 // op end success 1 7466 7467 static void battleOp269(skiatest::Reporter* reporter, const char* filename) { 7468 if (!FLAGS_runFail) { 7469 return; // draws wrong 7470 } 7471 SkPath path; 7472 path.setFillType((SkPath::FillType) 0); 7473 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7474 path.cubicTo(SkBits2Float(0x42011047), SkBits2Float(0xc2a60000), SkBits2Float(0x42766e56), SkBits2Float(0xc28099ef), SkBits2Float(0x42967824), SkBits2Float(0xc20c36c8)); 7475 path.cubicTo(SkBits2Float(0x42b1b91c), SkBits2Float(0xc0b9cd9b), SkBits2Float(0x42a89b7a), SkBits2Float(0x41e5804f), SkBits2Float(0x427e310b), SkBits2Float(0x42559106)); 7476 path.lineTo(SkBits2Float(0x4237c0bf), SkBits2Float(0x421a62ac)); 7477 path.cubicTo(SkBits2Float(0x4273c506), SkBits2Float(0x41a5e791), SkBits2Float(0x4280797a), SkBits2Float(0xc08650bf), SkBits2Float(0x42598bc5), SkBits2Float(0xc1cab811)); 7478 path.cubicTo(SkBits2Float(0x42322494), SkBits2Float(0xc239edfa), SkBits2Float(0x41ba9913), SkBits2Float(0xc2700002), SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 7479 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7480 path.close(); 7481 7482 SkPath path1(path); 7483 path.reset(); 7484 path.setFillType((SkPath::FillType) 0); 7485 path.moveTo(SkBits2Float(0x427e3109), SkBits2Float(0x42559108)); 7486 path.cubicTo(SkBits2Float(0x426e0477), SkBits2Float(0x4268d13b), SkBits2Float(0x425bb575), SkBits2Float(0x427a2b1d), SkBits2Float(0x42479e2a), SkBits2Float(0x4284a4a0)); 7487 path.lineTo(SkBits2Float(0x42104d52), SkBits2Float(0x423fc5ea)); 7488 path.cubicTo(SkBits2Float(0x421ed35e), SkBits2Float(0x4234d83a), SkBits2Float(0x422c0f91), SkBits2Float(0x42284d3a), SkBits2Float(0x4237c0bf), SkBits2Float(0x421a62ad)); 7489 path.lineTo(SkBits2Float(0x427e3109), SkBits2Float(0x42559108)); 7490 path.close(); 7491 7492 SkPath path2(path); 7493 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7494 } 7495 // op end success 1 7496 7497 static void battleOp270(skiatest::Reporter* reporter, const char* filename) { 7498 SkPath path; 7499 path.setFillType((SkPath::FillType) 1); 7500 path.moveTo(SkBits2Float(0xb7060057), SkBits2Float(0xc2700000)); 7501 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7502 path.cubicTo(SkBits2Float(0x42011047), SkBits2Float(0xc2a60000), SkBits2Float(0x42766e56), SkBits2Float(0xc28099ef), SkBits2Float(0x42967824), SkBits2Float(0xc20c36c8)); 7503 path.cubicTo(SkBits2Float(0x42b1b91c), SkBits2Float(0xc0b9cd9b), SkBits2Float(0x42a89b7a), SkBits2Float(0x41e5804f), SkBits2Float(0x427e310b), SkBits2Float(0x42559106)); 7504 path.lineTo(SkBits2Float(0x4237c0bf), SkBits2Float(0x421a62ad)); 7505 7506 SkPath path1(path); 7507 path.reset(); 7508 path.setFillType((SkPath::FillType) 0); 7509 path.moveTo(SkBits2Float(0x42479e29), SkBits2Float(0x4284a4a0)); 7510 path.cubicTo(SkBits2Float(0x41af5d68), SkBits2Float(0x42aec1b4), SkBits2Float(0xc1822698), SkBits2Float(0x42b135a9), SkBits2Float(0xc2362f3e), SkBits2Float(0x428ac623)); 7511 path.cubicTo(SkBits2Float(0xc295a599), SkBits2Float(0x4248ad36), SkBits2Float(0xc2b1c6ab), SkBits2Float(0x416a48a9), SkBits2Float(0xc2a165f3), SkBits2Float(0xc19b42cf)); 7512 path.cubicTo(SkBits2Float(0xc291053c), SkBits2Float(0xc255d4f6), SkBits2Float(0xc22f520a), SkBits2Float(0xc29d68ba), SkBits2Float(0xc110422a), SkBits2Float(0xc2a50486)); 7513 path.lineTo(SkBits2Float(0xc0d09136), SkBits2Float(0xc26e946c)); 7514 path.cubicTo(SkBits2Float(0xc1fd79b9), SkBits2Float(0xc2639452), SkBits2Float(0xc251ab0b), SkBits2Float(0xc21a93c1), SkBits2Float(0xc26958c8), SkBits2Float(0xc1607927)); 7515 path.cubicTo(SkBits2Float(0xc2808342), SkBits2Float(0x41295cae), SkBits2Float(0xc2585b55), SkBits2Float(0x42111142), SkBits2Float(0xc203b318), SkBits2Float(0x4248a313)); 7516 path.cubicTo(SkBits2Float(0xc13c2b63), SkBits2Float(0x42801a73), SkBits2Float(0x417d8a30), SkBits2Float(0x427ca903), SkBits2Float(0x42104d56), SkBits2Float(0x423fc5e8)); 7517 path.lineTo(SkBits2Float(0x42479e29), SkBits2Float(0x4284a4a0)); 7518 path.close(); 7519 7520 SkPath path2(path); 7521 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7522 } 7523 // op end success 1 7524 7525 static void battleOp271(skiatest::Reporter* reporter, const char* filename) { 7526 SkPath path; 7527 path.setFillType((SkPath::FillType) 0); 7528 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7529 path.cubicTo(SkBits2Float(0x4201b43a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4277880a), SkBits2Float(0xc2803bc7), SkBits2Float(0x4296d747), SkBits2Float(0xc20a9b85)); 7530 path.cubicTo(SkBits2Float(0x42b1ea89), SkBits2Float(0xc0a5fbe3), SkBits2Float(0x42a831cc), SkBits2Float(0x41ebb52f), SkBits2Float(0x427be65b), SkBits2Float(0x425843c9)); 7531 path.lineTo(SkBits2Float(0x423618a6), SkBits2Float(0x421c5604)); 7532 path.cubicTo(SkBits2Float(0x42732c40), SkBits2Float(0x41aa6424), SkBits2Float(0x42809d37), SkBits2Float(0xc06ffa1c), SkBits2Float(0x425a1555), SkBits2Float(0xc1c8657d)); 7533 path.cubicTo(SkBits2Float(0x4232f03c), SkBits2Float(0xc23965db), SkBits2Float(0x41bb8620), SkBits2Float(0xc2700002), SkBits2Float(0xb5600574), SkBits2Float(0xc2700000)); 7534 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7535 path.close(); 7536 7537 SkPath path1(path); 7538 path.reset(); 7539 path.setFillType((SkPath::FillType) 0); 7540 path.moveTo(SkBits2Float(0x427be65e), SkBits2Float(0x425843c9)); 7541 path.cubicTo(SkBits2Float(0x426b71bd), SkBits2Float(0x426b6e8c), SkBits2Float(0x4258dad9), SkBits2Float(0x427ca87a), SkBits2Float(0x42447e14), SkBits2Float(0x4285cdfb)); 7542 path.lineTo(SkBits2Float(0x420e0af4), SkBits2Float(0x424173d3)); 7543 path.cubicTo(SkBits2Float(0x421cc338), SkBits2Float(0x4236a4f9), SkBits2Float(0x422a3361), SkBits2Float(0x422a3113), SkBits2Float(0x423618a6), SkBits2Float(0x421c5605)); 7544 path.lineTo(SkBits2Float(0x427be65e), SkBits2Float(0x425843c9)); 7545 path.close(); 7546 7547 SkPath path2(path); 7548 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7549 } 7550 // op end success 1 7551 7552 static void battleOp272(skiatest::Reporter* reporter, const char* filename) { 7553 SkPath path; 7554 path.setFillType((SkPath::FillType) 1); 7555 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 7556 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7557 path.cubicTo(SkBits2Float(0x4201b43a), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4277880a), SkBits2Float(0xc2803bc7), SkBits2Float(0x4296d747), SkBits2Float(0xc20a9b85)); 7558 path.cubicTo(SkBits2Float(0x42b1ea89), SkBits2Float(0xc0a5fbe3), SkBits2Float(0x42a831cc), SkBits2Float(0x41ebb52f), SkBits2Float(0x427be65b), SkBits2Float(0x425843c9)); 7559 path.lineTo(SkBits2Float(0x427be65e), SkBits2Float(0x425843c9)); 7560 path.cubicTo(SkBits2Float(0x426b71bd), SkBits2Float(0x426b6e8c), SkBits2Float(0x4258dad9), SkBits2Float(0x427ca87a), SkBits2Float(0x42447e14), SkBits2Float(0x4285cdfb)); 7561 path.lineTo(SkBits2Float(0x420e0af4), SkBits2Float(0x424173d3)); 7562 path.cubicTo(SkBits2Float(0x421cc338), SkBits2Float(0x4236a4f9), SkBits2Float(0x422a3361), SkBits2Float(0x422a3113), SkBits2Float(0x423618a6), SkBits2Float(0x421c5605)); 7563 path.lineTo(SkBits2Float(0x423618a6), SkBits2Float(0x421c5604)); 7564 path.cubicTo(SkBits2Float(0x42732c40), SkBits2Float(0x41aa6424), SkBits2Float(0x42809d37), SkBits2Float(0xc06ffa1c), SkBits2Float(0x425a1555), SkBits2Float(0xc1c8657d)); 7565 path.cubicTo(SkBits2Float(0x4232f03c), SkBits2Float(0xc23965db), SkBits2Float(0x41bb8620), SkBits2Float(0xc2700002), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 7566 path.close(); 7567 7568 SkPath path1(path); 7569 path.reset(); 7570 path.setFillType((SkPath::FillType) 0); 7571 path.moveTo(SkBits2Float(0x42447e16), SkBits2Float(0x4285cdfb)); 7572 path.cubicTo(SkBits2Float(0x41a605d7), SkBits2Float(0x42af776a), SkBits2Float(0xc18d5e26), SkBits2Float(0x42b0cfa2), SkBits2Float(0xc23b02ad), SkBits2Float(0x428928e1)); 7573 path.cubicTo(SkBits2Float(0xc297ab24), SkBits2Float(0x42430442), SkBits2Float(0xc2b27fa9), SkBits2Float(0x414bdf0d), SkBits2Float(0xc2a073c8), SkBits2Float(0xc1aa3a13)); 7574 path.cubicTo(SkBits2Float(0xc28e67e7), SkBits2Float(0xc25d31d4), SkBits2Float(0xc226d0a4), SkBits2Float(0xc29fdb7e), SkBits2Float(0xc0d3d11a), SkBits2Float(0xc2a578a5)); 7575 path.lineTo(SkBits2Float(0xc0991eb2), SkBits2Float(0xc26f3c4f)); 7576 path.cubicTo(SkBits2Float(0xc1f12d9c), SkBits2Float(0xc2671e82), SkBits2Float(0xc24de350), SkBits2Float(0xc21fe656), SkBits2Float(0xc267faa7), SkBits2Float(0xc1761c74)); 7577 path.cubicTo(SkBits2Float(0xc28108ff), SkBits2Float(0x4113607a), SkBits2Float(0xc25b4798), SkBits2Float(0x420cf9d1), SkBits2Float(0xc207302c), SkBits2Float(0x42464d9a)); 7578 path.cubicTo(SkBits2Float(0xc14c6303), SkBits2Float(0x427fa162), SkBits2Float(0x4170087f), SkBits2Float(0x427dafb7), SkBits2Float(0x420e0af6), SkBits2Float(0x424173d2)); 7579 path.lineTo(SkBits2Float(0x42447e16), SkBits2Float(0x4285cdfb)); 7580 path.close(); 7581 7582 SkPath path2(path); 7583 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7584 } 7585 // op end success 1 7586 7587 static void battleOp273(skiatest::Reporter* reporter, const char* filename) { 7588 if (!FLAGS_runFail) { 7589 return; // draws wrong 7590 } 7591 SkPath path; 7592 path.setFillType((SkPath::FillType) 0); 7593 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7594 path.cubicTo(SkBits2Float(0x42023f77), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427876e4), SkBits2Float(0xc27fd6f4), SkBits2Float(0x42972728), SkBits2Float(0xc2093dbb)); 7595 path.cubicTo(SkBits2Float(0x42b212de), SkBits2Float(0xc0952410), SkBits2Float(0x42a7d55b), SkBits2Float(0x41f0f791), SkBits2Float(0x4279eebf), SkBits2Float(0x425a890b)); 7596 path.lineTo(SkBits2Float(0x4234ac95), SkBits2Float(0x421dfa35)); 7597 path.cubicTo(SkBits2Float(0x4272a697), SkBits2Float(0x41ae3171), SkBits2Float(0x4280ba5e), SkBits2Float(0xc057a00f), SkBits2Float(0x425a88d0), SkBits2Float(0xc1c66bc2)); 7598 path.cubicTo(SkBits2Float(0x42339ce5), SkBits2Float(0xc238f1c1), SkBits2Float(0x41bc4f6b), SkBits2Float(0xc2700002), SkBits2Float(0xb630015d), SkBits2Float(0xc2700000)); 7599 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7600 path.close(); 7601 7602 SkPath path1(path); 7603 path.reset(); 7604 path.setFillType((SkPath::FillType) 0); 7605 path.moveTo(SkBits2Float(0x4279eebd), SkBits2Float(0x425a890e)); 7606 path.cubicTo(SkBits2Float(0x42693cf3), SkBits2Float(0x426da0dc), SkBits2Float(0x42566929), SkBits2Float(0x427ebed8), SkBits2Float(0x4241d1ac), SkBits2Float(0x4286c6a2)); 7607 path.lineTo(SkBits2Float(0x420c1c33), SkBits2Float(0x4242db53)); 7608 path.cubicTo(SkBits2Float(0x421afee9), SkBits2Float(0x42382742), SkBits2Float(0x42289b18), SkBits2Float(0x422bc78f), SkBits2Float(0x4234ac94), SkBits2Float(0x421dfa34)); 7609 path.lineTo(SkBits2Float(0x4279eebd), SkBits2Float(0x425a890e)); 7610 path.close(); 7611 7612 SkPath path2(path); 7613 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7614 } 7615 // op end success 1 7616 7617 static void battleOp274(skiatest::Reporter* reporter, const char* filename) { 7618 SkPath path; 7619 path.setFillType((SkPath::FillType) 1); 7620 path.moveTo(SkBits2Float(0xb630015d), SkBits2Float(0xc2700000)); 7621 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7622 path.cubicTo(SkBits2Float(0x42023f77), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427876e4), SkBits2Float(0xc27fd6f4), SkBits2Float(0x42972728), SkBits2Float(0xc2093dbb)); 7623 path.cubicTo(SkBits2Float(0x42b212de), SkBits2Float(0xc0952410), SkBits2Float(0x42a7d55b), SkBits2Float(0x41f0f791), SkBits2Float(0x4279eebf), SkBits2Float(0x425a890b)); 7624 path.lineTo(SkBits2Float(0x4234ac95), SkBits2Float(0x421dfa35)); 7625 path.cubicTo(SkBits2Float(0x4272a697), SkBits2Float(0x41ae3171), SkBits2Float(0x4280ba5e), SkBits2Float(0xc057a00f), SkBits2Float(0x425a88d0), SkBits2Float(0xc1c66bc2)); 7626 path.cubicTo(SkBits2Float(0x42339ce5), SkBits2Float(0xc238f1c1), SkBits2Float(0x41bc4f6b), SkBits2Float(0xc2700002), SkBits2Float(0xb630015d), SkBits2Float(0xc2700000)); 7627 path.close(); 7628 7629 SkPath path1(path); 7630 path.reset(); 7631 path.setFillType((SkPath::FillType) 0); 7632 path.moveTo(SkBits2Float(0x4241d1ad), SkBits2Float(0x4286c6a2)); 7633 path.cubicTo(SkBits2Float(0x419e0f8e), SkBits2Float(0x42b00b7b), SkBits2Float(0xc196dfc4), SkBits2Float(0x42b07042), SkBits2Float(0xc23f0fa7), SkBits2Float(0x4287c1be)); 7634 path.cubicTo(SkBits2Float(0xc29957b6), SkBits2Float(0x423e2672), SkBits2Float(0xc2b30c7a), SkBits2Float(0x4131f351), SkBits2Float(0xc29f94d8), SkBits2Float(0xc1b6db1d)); 7635 path.cubicTo(SkBits2Float(0xc28c1d38), SkBits2Float(0xc26357ee), SkBits2Float(0xc21f7d48), SkBits2Float(0xc2a1d87d), SkBits2Float(0xc09294c7), SkBits2Float(0xc2a5bf3c)); 7636 path.lineTo(SkBits2Float(0xc053ec94), SkBits2Float(0xc26fa25d)); 7637 path.cubicTo(SkBits2Float(0xc1e69644), SkBits2Float(0xc269fe64), SkBits2Float(0xc24a931a), SkBits2Float(0xc224583b), SkBits2Float(0xc266b858), SkBits2Float(0xc1842f59)); 7638 path.cubicTo(SkBits2Float(0xc2816ecb), SkBits2Float(0x4100a388), SkBits2Float(0xc25db33b), SkBits2Float(0x42097539), SkBits2Float(0xc20a1dd2), SkBits2Float(0x4244465c)); 7639 path.cubicTo(SkBits2Float(0xc15a2194), SkBits2Float(0x427f177f), SkBits2Float(0x41648588), SkBits2Float(0x427e85cc), SkBits2Float(0x420c1c35), SkBits2Float(0x4242db52)); 7640 path.lineTo(SkBits2Float(0x4241d1ad), SkBits2Float(0x4286c6a2)); 7641 path.close(); 7642 7643 SkPath path2(path); 7644 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7645 } 7646 // op end success 1 7647 7648 static void battleOp275(skiatest::Reporter* reporter, const char* filename) { 7649 SkPath path; 7650 path.setFillType((SkPath::FillType) 0); 7651 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7652 path.cubicTo(SkBits2Float(0x4202aab9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42792ea4), SkBits2Float(0xc27f5acc), SkBits2Float(0x4297641b), SkBits2Float(0xc2082fee)); 7653 path.cubicTo(SkBits2Float(0x42b230e5), SkBits2Float(0xc0882884), SkBits2Float(0x42a78c73), SkBits2Float(0x41f502e3), SkBits2Float(0x4278676f), SkBits2Float(0x425c4571)); 7654 path.lineTo(SkBits2Float(0x423391b8), SkBits2Float(0x421f3b73)); 7655 path.cubicTo(SkBits2Float(0x42723d33), SkBits2Float(0x41b11ddb), SkBits2Float(0x4280d014), SkBits2Float(0xc044db05), SkBits2Float(0x425ae0f2), SkBits2Float(0xc1c4e5b3)); 7656 path.cubicTo(SkBits2Float(0x423421be), SkBits2Float(0xc2389802), SkBits2Float(0x41bcea83), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 7657 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7658 path.close(); 7659 7660 SkPath path1(path); 7661 path.reset(); 7662 path.setFillType((SkPath::FillType) 0); 7663 path.moveTo(SkBits2Float(0x42786771), SkBits2Float(0x425c4570)); 7664 path.cubicTo(SkBits2Float(0x42678692), SkBits2Float(0x426f4e2b), SkBits2Float(0x425483f6), SkBits2Float(0x42802b0f), SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc)); 7665 path.lineTo(SkBits2Float(0x420a9ce1), SkBits2Float(0x4243ecb9)); 7666 path.cubicTo(SkBits2Float(0x4219a02a), SkBits2Float(0x42394dac), SkBits2Float(0x42275e32), SkBits2Float(0x422cfde6), SkBits2Float(0x423391b8), SkBits2Float(0x421f3b72)); 7667 path.lineTo(SkBits2Float(0x42786771), SkBits2Float(0x425c4570)); 7668 path.close(); 7669 7670 SkPath path2(path); 7671 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7672 } 7673 // op end success 1 7674 7675 static void battleOp276(skiatest::Reporter* reporter, const char* filename) { 7676 SkPath path; 7677 path.setFillType((SkPath::FillType) 1); 7678 path.moveTo(SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 7679 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7680 path.cubicTo(SkBits2Float(0x4202aab9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x42792ea4), SkBits2Float(0xc27f5acc), SkBits2Float(0x4297641b), SkBits2Float(0xc2082fee)); 7681 path.cubicTo(SkBits2Float(0x42b230e5), SkBits2Float(0xc0882884), SkBits2Float(0x42a78c73), SkBits2Float(0x41f502e3), SkBits2Float(0x4278676f), SkBits2Float(0x425c4571)); 7682 path.cubicTo(SkBits2Float(0x42678690), SkBits2Float(0x426f4e2b), SkBits2Float(0x425483f5), SkBits2Float(0x42802b0f), SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc)); 7683 path.lineTo(SkBits2Float(0x420a9ce1), SkBits2Float(0x4243ecb9)); 7684 path.cubicTo(SkBits2Float(0x4219a02a), SkBits2Float(0x42394dac), SkBits2Float(0x42275e32), SkBits2Float(0x422cfde7), SkBits2Float(0x423391b8), SkBits2Float(0x421f3b73)); 7685 path.lineTo(SkBits2Float(0x423391b8), SkBits2Float(0x421f3b72)); 7686 path.cubicTo(SkBits2Float(0x42723d33), SkBits2Float(0x41b11dd9), SkBits2Float(0x4280d014), SkBits2Float(0xc044db09), SkBits2Float(0x425ae0f2), SkBits2Float(0xc1c4e5b3)); 7687 path.cubicTo(SkBits2Float(0x423421be), SkBits2Float(0xc2389802), SkBits2Float(0x41bcea83), SkBits2Float(0xc2700000), SkBits2Float(0x3725ffa9), SkBits2Float(0xc2700000)); 7688 path.close(); 7689 7690 SkPath path1(path); 7691 path.reset(); 7692 path.setFillType((SkPath::FillType) 0); 7693 path.moveTo(SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc)); 7694 path.cubicTo(SkBits2Float(0x4197e908), SkBits2Float(0x42b0799e), SkBits2Float(0xc19e2f01), SkBits2Float(0x42b0215b), SkBits2Float(0xc24226b0), SkBits2Float(0x4286a80b)); 7695 path.cubicTo(SkBits2Float(0xc29a9aef), SkBits2Float(0x423a5d79), SkBits2Float(0xc2b36ebb), SkBits2Float(0x411dee4a), SkBits2Float(0xc29ede64), SkBits2Float(0xc1c087c1)); 7696 path.cubicTo(SkBits2Float(0xc28a4e0d), SkBits2Float(0xc2680353), SkBits2Float(0xc219c8f7), SkBits2Float(0xc2a351d0), SkBits2Float(0xc0409740), SkBits2Float(0xc2a5e40e)); 7697 path.lineTo(SkBits2Float(0xc00b391c), SkBits2Float(0xc26fd79b)); 7698 path.cubicTo(SkBits2Float(0xc1de5701), SkBits2Float(0xc26c1feb), SkBits2Float(0xc247f576), SkBits2Float(0xc227b85e), SkBits2Float(0xc265b08d), SkBits2Float(0xc18b2dac)); 7699 path.cubicTo(SkBits2Float(0xc281b5d1), SkBits2Float(0x40e45588), SkBits2Float(0xc25f8687), SkBits2Float(0x4206b8c8), SkBits2Float(0xc20c59a1), SkBits2Float(0x4242af19)); 7700 path.cubicTo(SkBits2Float(0xc164b2eb), SkBits2Float(0x427ea56a), SkBits2Float(0x415ba119), SkBits2Float(0x427f2508), SkBits2Float(0x420a9ce0), SkBits2Float(0x4243ecba)); 7701 path.lineTo(SkBits2Float(0x423fbf6b), SkBits2Float(0x428783bc)); 7702 path.close(); 7703 7704 SkPath path2(path); 7705 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7706 } 7707 // op end success 1 7708 7709 static void battleOp277(skiatest::Reporter* reporter, const char* filename) { 7710 SkPath path; 7711 path.setFillType((SkPath::FillType) 0); 7712 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7713 path.cubicTo(SkBits2Float(0x4202f62b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4279afc7), SkBits2Float(0xc27f0340), SkBits2Float(0x42978eaf), SkBits2Float(0xc20771fd)); 7714 path.cubicTo(SkBits2Float(0x42b2457b), SkBits2Float(0xc07e0b91), SkBits2Float(0x42a7584a), SkBits2Float(0x41f7da1e), SkBits2Float(0x42775276), SkBits2Float(0x425d7c3f)); 7715 path.lineTo(SkBits2Float(0x4232c97e), SkBits2Float(0x42201c22)); 7716 path.cubicTo(SkBits2Float(0x4271f1c7), SkBits2Float(0x41b32b8d), SkBits2Float(0x4280def3), SkBits2Float(0xc037a5cf), SkBits2Float(0x425b1e7c), SkBits2Float(0xc1c3d316)); 7717 path.cubicTo(SkBits2Float(0x42347f10), SkBits2Float(0xc23858b9), SkBits2Float(0x41bd578b), SkBits2Float(0xc26fffff), SkBits2Float(0xb7240057), SkBits2Float(0xc26fffff)); 7718 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7719 path.close(); 7720 7721 SkPath path1(path); 7722 path.reset(); 7723 path.setFillType((SkPath::FillType) 0); 7724 path.moveTo(SkBits2Float(0x42775277), SkBits2Float(0x425d7c41)); 7725 path.cubicTo(SkBits2Float(0x4266507b), SkBits2Float(0x42707a20), SkBits2Float(0x42532cff), SkBits2Float(0x4280b928), SkBits2Float(0x423e48db), SkBits2Float(0x42880779)); 7726 path.lineTo(SkBits2Float(0x42098e1c), SkBits2Float(0x4244ab32)); 7727 path.cubicTo(SkBits2Float(0x4218a83e), SkBits2Float(0x423a1b21), SkBits2Float(0x42267e0b), SkBits2Float(0x422dd6be), SkBits2Float(0x4232c97e), SkBits2Float(0x42201c22)); 7728 path.lineTo(SkBits2Float(0x42775277), SkBits2Float(0x425d7c41)); 7729 path.close(); 7730 7731 SkPath path2(path); 7732 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7733 } 7734 // op end success 1 7735 7736 static void battleOp278(skiatest::Reporter* reporter, const char* filename) { 7737 SkPath path; 7738 path.setFillType((SkPath::FillType) 1); 7739 path.moveTo(SkBits2Float(0xb7240057), SkBits2Float(0xc26fffff)); 7740 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7741 path.cubicTo(SkBits2Float(0x4202f62b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x4279afc7), SkBits2Float(0xc27f0340), SkBits2Float(0x42978eaf), SkBits2Float(0xc20771fd)); 7742 path.cubicTo(SkBits2Float(0x42b2457b), SkBits2Float(0xc07e0b91), SkBits2Float(0x42a7584a), SkBits2Float(0x41f7da1e), SkBits2Float(0x42775276), SkBits2Float(0x425d7c3f)); 7743 path.lineTo(SkBits2Float(0x42775277), SkBits2Float(0x425d7c41)); 7744 path.cubicTo(SkBits2Float(0x4266507b), SkBits2Float(0x42707a20), SkBits2Float(0x42532cff), SkBits2Float(0x4280b928), SkBits2Float(0x423e48db), SkBits2Float(0x42880779)); 7745 path.lineTo(SkBits2Float(0x42098e1c), SkBits2Float(0x4244ab32)); 7746 path.cubicTo(SkBits2Float(0x4218a83e), SkBits2Float(0x423a1b21), SkBits2Float(0x42267e0b), SkBits2Float(0x422dd6be), SkBits2Float(0x4232c97e), SkBits2Float(0x42201c22)); 7747 path.cubicTo(SkBits2Float(0x4271f1c7), SkBits2Float(0x41b32b8d), SkBits2Float(0x4280def3), SkBits2Float(0xc037a5cf), SkBits2Float(0x425b1e7c), SkBits2Float(0xc1c3d316)); 7748 path.cubicTo(SkBits2Float(0x42347f10), SkBits2Float(0xc23858b9), SkBits2Float(0x41bd578b), SkBits2Float(0xc26fffff), SkBits2Float(0xb7240057), SkBits2Float(0xc26fffff)); 7749 path.close(); 7750 7751 SkPath path1(path); 7752 path.reset(); 7753 path.setFillType((SkPath::FillType) 0); 7754 path.moveTo(SkBits2Float(0x423e48db), SkBits2Float(0x4288077a)); 7755 path.cubicTo(SkBits2Float(0x41939344), SkBits2Float(0x42b0c509), SkBits2Float(0xc1a3515b), SkBits2Float(0x42afe6ff), SkBits2Float(0xc2444efb), SkBits2Float(0x4285df44)); 7756 path.cubicTo(SkBits2Float(0xc29b7aa2), SkBits2Float(0x4237af14), SkBits2Float(0xc2b3ae7d), SkBits2Float(0x410fd2d1), SkBits2Float(0xc29e5879), SkBits2Float(0xc1c74e5b)); 7757 path.cubicTo(SkBits2Float(0xc2890275), SkBits2Float(0xc26b4310), SkBits2Float(0xc215bdd9), SkBits2Float(0xc2a45375), SkBits2Float(0xbff3abc7), SkBits2Float(0xc2a5f4d2)); 7758 path.lineTo(SkBits2Float(0xbfb025f0), SkBits2Float(0xc26fefd6)); 7759 path.cubicTo(SkBits2Float(0xc1d87e6f), SkBits2Float(0xc26d946b), SkBits2Float(0xc246160c), SkBits2Float(0xc22a11a0), SkBits2Float(0xc264eef0), SkBits2Float(0xc190139e)); 7760 path.cubicTo(SkBits2Float(0xc281e3ea), SkBits2Float(0x40cff015), SkBits2Float(0xc260c9f8), SkBits2Float(0x4204c898), SkBits2Float(0xc20de8e2), SkBits2Float(0x42418cd3)); 7761 path.cubicTo(SkBits2Float(0xc16c1f36), SkBits2Float(0x427e510e), SkBits2Float(0x41555c9e), SkBits2Float(0x427f9213), SkBits2Float(0x42098e1b), SkBits2Float(0x4244ab33)); 7762 path.lineTo(SkBits2Float(0x423e48db), SkBits2Float(0x4288077a)); 7763 path.close(); 7764 7765 SkPath path2(path); 7766 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7767 } 7768 // op end success 1 7769 7770 static void battleOp279(skiatest::Reporter* reporter, const char* filename) { 7771 SkPath path; 7772 path.setFillType((SkPath::FillType) 0); 7773 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7774 path.cubicTo(SkBits2Float(0x420331e6), SkBits2Float(0xc2a60000), SkBits2Float(0x427a15f4), SkBits2Float(0xc27ebdd3), SkBits2Float(0x4297b03a), SkBits2Float(0xc206db86)); 7775 path.cubicTo(SkBits2Float(0x42b2557a), SkBits2Float(0xc06f9378), SkBits2Float(0x42a72e7e), SkBits2Float(0x41fa194a), SkBits2Float(0x4276762d), SkBits2Float(0x425e7148)); 7776 path.lineTo(SkBits2Float(0x42322a40), SkBits2Float(0x4220cd43)); 7777 path.cubicTo(SkBits2Float(0x4271b558), SkBits2Float(0x41b4cb56), SkBits2Float(0x4280ea83), SkBits2Float(0xc02d3004), SkBits2Float(0x425b4efa), SkBits2Float(0xc1c2f986)); 7778 path.cubicTo(SkBits2Float(0x4234c8ee), SkBits2Float(0xc2382686), SkBits2Float(0x41bdadf1), SkBits2Float(0xc26fffff), SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000)); 7779 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7780 path.close(); 7781 7782 SkPath path1(path); 7783 path.reset(); 7784 path.setFillType((SkPath::FillType) 0); 7785 path.moveTo(SkBits2Float(0x4276762e), SkBits2Float(0x425e7147)); 7786 path.cubicTo(SkBits2Float(0x42655a01), SkBits2Float(0x42716669), SkBits2Float(0x42521c84), SkBits2Float(0x428128fd), SkBits2Float(0x423d1f69), SkBits2Float(0x42886f05)); 7787 path.lineTo(SkBits2Float(0x4208b718), SkBits2Float(0x424540e7)); 7788 path.cubicTo(SkBits2Float(0x4217e344), SkBits2Float(0x423abccf), SkBits2Float(0x4225cbdd), SkBits2Float(0x422e818f), SkBits2Float(0x42322a41), SkBits2Float(0x4220cd43)); 7789 path.lineTo(SkBits2Float(0x4276762e), SkBits2Float(0x425e7147)); 7790 path.close(); 7791 7792 SkPath path2(path); 7793 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7794 } 7795 // op end success 1 7796 7797 static void battleOp280(skiatest::Reporter* reporter, const char* filename) { 7798 SkPath path; 7799 path.setFillType((SkPath::FillType) 1); 7800 path.moveTo(SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000)); 7801 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7802 path.cubicTo(SkBits2Float(0x420331e6), SkBits2Float(0xc2a60000), SkBits2Float(0x427a15f4), SkBits2Float(0xc27ebdd3), SkBits2Float(0x4297b03a), SkBits2Float(0xc206db86)); 7803 path.cubicTo(SkBits2Float(0x42b2557a), SkBits2Float(0xc06f937f), SkBits2Float(0x42a72e7e), SkBits2Float(0x41fa1948), SkBits2Float(0x4276762e), SkBits2Float(0x425e7147)); 7804 path.lineTo(SkBits2Float(0x4276762d), SkBits2Float(0x425e7148)); 7805 path.cubicTo(SkBits2Float(0x42655a00), SkBits2Float(0x4271666a), SkBits2Float(0x42521c84), SkBits2Float(0x428128fd), SkBits2Float(0x423d1f69), SkBits2Float(0x42886f05)); 7806 path.lineTo(SkBits2Float(0x4208b718), SkBits2Float(0x424540e7)); 7807 path.cubicTo(SkBits2Float(0x4217e344), SkBits2Float(0x423abccf), SkBits2Float(0x4225cbdd), SkBits2Float(0x422e818f), SkBits2Float(0x42322a41), SkBits2Float(0x4220cd43)); 7808 path.lineTo(SkBits2Float(0x42322a40), SkBits2Float(0x4220cd43)); 7809 path.cubicTo(SkBits2Float(0x4271b558), SkBits2Float(0x41b4cb56), SkBits2Float(0x4280ea83), SkBits2Float(0xc02d3004), SkBits2Float(0x425b4efa), SkBits2Float(0xc1c2f986)); 7810 path.cubicTo(SkBits2Float(0x4234c8ee), SkBits2Float(0xc2382686), SkBits2Float(0x41bdadf1), SkBits2Float(0xc26fffff), SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000)); 7811 path.close(); 7812 7813 SkPath path1(path); 7814 path.reset(); 7815 path.setFillType((SkPath::FillType) 0); 7816 path.moveTo(SkBits2Float(0x423d1f69), SkBits2Float(0x42886f06)); 7817 path.cubicTo(SkBits2Float(0x4190236c), SkBits2Float(0x42b0ff8c), SkBits2Float(0xc1a760b7), SkBits2Float(0x42afb726), SkBits2Float(0xc24601c7), SkBits2Float(0x42853ece)); 7818 path.cubicTo(SkBits2Float(0xc29c2998), SkBits2Float(0x42358ced), SkBits2Float(0xc2b3ddd5), SkBits2Float(0x4104a433), SkBits2Float(0xc29deb35), SkBits2Float(0xc1cca70e)); 7819 path.cubicTo(SkBits2Float(0xc287f895), SkBits2Float(0xc26dd020), SkBits2Float(0xc21285d2), SkBits2Float(0xc2a51ade), SkBits2Float(0xbf83a2cf), SkBits2Float(0xc2a5fcbd)); 7820 path.lineTo(SkBits2Float(0xbf3e53cf), SkBits2Float(0xc26ffb48)); 7821 path.cubicTo(SkBits2Float(0xc1d3d71b), SkBits2Float(0xc26eb4b2), SkBits2Float(0xc24495a7), SkBits2Float(0xc22be9b4), SkBits2Float(0xc26450f5), SkBits2Float(0xc193f109)); 7822 path.cubicTo(SkBits2Float(0xc2820621), SkBits2Float(0x40bfc558), SkBits2Float(0xc261c6ea), SkBits2Float(0x42033dc6), SkBits2Float(0xc20f2333), SkBits2Float(0x4240a4d2)); 7823 path.cubicTo(SkBits2Float(0xc171fde8), SkBits2Float(0x427e0bde), SkBits2Float(0x4150649d), SkBits2Float(0x427fe6ab), SkBits2Float(0x4208b71a), SkBits2Float(0x424540e8)); 7824 path.lineTo(SkBits2Float(0x423d1f69), SkBits2Float(0x42886f06)); 7825 path.close(); 7826 7827 SkPath path2(path); 7828 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7829 } 7830 // op end success 1 7831 7832 static void battleOp281(skiatest::Reporter* reporter, const char* filename) { 7833 SkPath path; 7834 path.setFillType((SkPath::FillType) 0); 7835 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7836 path.cubicTo(SkBits2Float(0x42035955), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a595d), SkBits2Float(0xc27e8fe6), SkBits2Float(0x4297c647), SkBits2Float(0xc206781b)); 7837 path.cubicTo(SkBits2Float(0x42b25fdf), SkBits2Float(0xc0660504), SkBits2Float(0x42a712a2), SkBits2Float(0x41fb94c7), SkBits2Float(0x4275e43b), SkBits2Float(0x425f1290)); 7838 path.lineTo(SkBits2Float(0x4231c0be), SkBits2Float(0x422141dc)); 7839 path.cubicTo(SkBits2Float(0x42718d10), SkBits2Float(0x41b5ddaf), SkBits2Float(0x4280f208), SkBits2Float(0xc026476c), SkBits2Float(0x425b6edc), SkBits2Float(0xc1c269cb)); 7840 path.cubicTo(SkBits2Float(0x4234f9ab), SkBits2Float(0xc2380553), SkBits2Float(0x41bde6f3), SkBits2Float(0xc26fffff), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 7841 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7842 path.close(); 7843 7844 SkPath path1(path); 7845 path.reset(); 7846 path.setFillType((SkPath::FillType) 0); 7847 path.moveTo(SkBits2Float(0x4275e43b), SkBits2Float(0x425f1292)); 7848 path.cubicTo(SkBits2Float(0x4264b6c3), SkBits2Float(0x427201df), SkBits2Float(0x4251681e), SkBits2Float(0x42817283), SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b309)); 7849 path.lineTo(SkBits2Float(0x420828ca), SkBits2Float(0x4245a33c)); 7850 path.cubicTo(SkBits2Float(0x421760db), SkBits2Float(0x423b2719), SkBits2Float(0x422555d9), SkBits2Float(0x422ef1ee), SkBits2Float(0x4231c0be), SkBits2Float(0x422141da)); 7851 path.lineTo(SkBits2Float(0x4275e43b), SkBits2Float(0x425f1292)); 7852 path.close(); 7853 7854 SkPath path2(path); 7855 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7856 } 7857 // op end success 1 7858 7859 static void battleOp282(skiatest::Reporter* reporter, const char* filename) { 7860 SkPath path; 7861 path.setFillType((SkPath::FillType) 1); 7862 path.moveTo(SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 7863 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7864 path.cubicTo(SkBits2Float(0x42035955), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a595d), SkBits2Float(0xc27e8fe6), SkBits2Float(0x4297c647), SkBits2Float(0xc206781b)); 7865 path.cubicTo(SkBits2Float(0x42b25fdf), SkBits2Float(0xc0660504), SkBits2Float(0x42a712a2), SkBits2Float(0x41fb94c7), SkBits2Float(0x4275e43b), SkBits2Float(0x425f1290)); 7866 path.lineTo(SkBits2Float(0x4275e43b), SkBits2Float(0x425f1292)); 7867 path.cubicTo(SkBits2Float(0x4264b6c3), SkBits2Float(0x427201df), SkBits2Float(0x4251681e), SkBits2Float(0x42817283), SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b309)); 7868 path.lineTo(SkBits2Float(0x420828ca), SkBits2Float(0x4245a33c)); 7869 path.cubicTo(SkBits2Float(0x421760db), SkBits2Float(0x423b2719), SkBits2Float(0x422555d9), SkBits2Float(0x422ef1f0), SkBits2Float(0x4231c0be), SkBits2Float(0x422141dc)); 7870 path.cubicTo(SkBits2Float(0x42718d10), SkBits2Float(0x41b5ddaf), SkBits2Float(0x4280f208), SkBits2Float(0xc026476c), SkBits2Float(0x425b6edc), SkBits2Float(0xc1c269cb)); 7871 path.cubicTo(SkBits2Float(0x4234f9ab), SkBits2Float(0xc2380553), SkBits2Float(0x41bde6f3), SkBits2Float(0xc26fffff), SkBits2Float(0x3637fea5), SkBits2Float(0xc2700000)); 7872 path.close(); 7873 7874 SkPath path1(path); 7875 path.reset(); 7876 path.setFillType((SkPath::FillType) 0); 7877 path.moveTo(SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b30a)); 7878 path.cubicTo(SkBits2Float(0x418dddd4), SkBits2Float(0x42b12599), SkBits2Float(0xc1aa0e7c), SkBits2Float(0x42af96c0), SkBits2Float(0xc2471fb7), SkBits2Float(0x4284d41e)); 7879 path.cubicTo(SkBits2Float(0xc29c9c18), SkBits2Float(0x423422f8), SkBits2Float(0xc2b3fb95), SkBits2Float(0x40fa8096), SkBits2Float(0xc29da17e), SkBits2Float(0xc1d02ca0)); 7880 path.cubicTo(SkBits2Float(0xc2874768), SkBits2Float(0xc26f7cb1), SkBits2Float(0xc2106396), SkBits2Float(0xc2a59c4c), SkBits2Float(0xbee6b152), SkBits2Float(0xc2a5ff5f)); 7881 path.lineTo(SkBits2Float(0xbea6c49b), SkBits2Float(0xc26fff18)); 7882 path.cubicTo(SkBits2Float(0xc1d0c156), SkBits2Float(0xc26f6fd8), SkBits2Float(0xc2439580), SkBits2Float(0xc22d1f86), SkBits2Float(0xc263e663), SkBits2Float(0xc1967cc0)); 7883 path.cubicTo(SkBits2Float(0xc2821ba4), SkBits2Float(0x40b51622), SkBits2Float(0xc2626c73), SkBits2Float(0x4202381f), SkBits2Float(0xc20ff1e5), SkBits2Float(0x42400a93)); 7884 path.cubicTo(SkBits2Float(0xc175dd55), SkBits2Float(0x427ddd08), SkBits2Float(0x414d1bd1), SkBits2Float(0x42800ed7), SkBits2Float(0x420828d0), SkBits2Float(0x4245a338)); 7885 path.lineTo(SkBits2Float(0x423c5a8f), SkBits2Float(0x4288b30a)); 7886 path.close(); 7887 7888 SkPath path2(path); 7889 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7890 } 7891 // op end success 1 7892 7893 static void battleOp283(skiatest::Reporter* reporter, const char* filename) { 7894 if (!FLAGS_runFail) { 7895 return; // draws wrong 7896 } 7897 SkPath path; 7898 path.setFillType((SkPath::FillType) 0); 7899 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7900 path.cubicTo(SkBits2Float(0x42036bf7), SkBits2Float(0xc2a60000), SkBits2Float(0x427a7934), SkBits2Float(0xc27e7a35), SkBits2Float(0x4297d0ad), SkBits2Float(0xc2064926)); 7901 path.cubicTo(SkBits2Float(0x42b264c0), SkBits2Float(0xc061818a), SkBits2Float(0x42a70569), SkBits2Float(0x41fc47ee), SkBits2Float(0x42759f2d), SkBits2Float(0x425f5e99)); 7902 path.lineTo(SkBits2Float(0x42318ed2), SkBits2Float(0x422178d2)); 7903 path.cubicTo(SkBits2Float(0x427179f2), SkBits2Float(0x41b65f2f), SkBits2Float(0x4280f58f), SkBits2Float(0xc0230424), SkBits2Float(0x425b7de6), SkBits2Float(0xc1c225e6)); 7904 path.cubicTo(SkBits2Float(0x423510af), SkBits2Float(0xc237f5a4), SkBits2Float(0x41be01e5), SkBits2Float(0xc26fffff), SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000)); 7905 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7906 path.close(); 7907 7908 SkPath path1(path); 7909 path.reset(); 7910 path.setFillType((SkPath::FillType) 0); 7911 path.moveTo(SkBits2Float(0x42759f2b), SkBits2Float(0x425f5e9b)); 7912 path.cubicTo(SkBits2Float(0x42646988), SkBits2Float(0x42724b20), SkBits2Float(0x425112cb), SkBits2Float(0x42819524), SkBits2Float(0x423bfd7a), SkBits2Float(0x4288d30e)); 7913 path.lineTo(SkBits2Float(0x4207e580), SkBits2Float(0x4245d187)); 7914 path.cubicTo(SkBits2Float(0x4217232e), SkBits2Float(0x423b592c), SkBits2Float(0x42251e07), SkBits2Float(0x422f26e4), SkBits2Float(0x42318ed3), SkBits2Float(0x422178d2)); 7915 path.lineTo(SkBits2Float(0x42759f2b), SkBits2Float(0x425f5e9b)); 7916 path.close(); 7917 7918 SkPath path2(path); 7919 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7920 } 7921 // op end success 1 7922 7923 static void battleOp284(skiatest::Reporter* reporter, const char* filename) { 7924 SkPath path; 7925 path.setFillType((SkPath::FillType) 1); 7926 path.moveTo(SkBits2Float(0x3707ffa9), SkBits2Float(0xc2700000)); 7927 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7928 path.cubicTo(SkBits2Float(0x42036bf7), SkBits2Float(0xc2a60000), SkBits2Float(0x427a7934), SkBits2Float(0xc27e7a35), SkBits2Float(0x4297d0ad), SkBits2Float(0xc2064926)); 7929 path.cubicTo(SkBits2Float(0x42b264c0), SkBits2Float(0xc061818a), SkBits2Float(0x42a70569), SkBits2Float(0x41fc47ee), SkBits2Float(0x42759f2d), SkBits2Float(0x425f5e99)); 7930 path.lineTo(SkBits2Float(0x42318ed3), SkBits2Float(0x422178d2)); 7931 7932 SkPath path1(path); 7933 path.reset(); 7934 path.setFillType((SkPath::FillType) 0); 7935 path.moveTo(SkBits2Float(0x423bfd7a), SkBits2Float(0x4288d30e)); 7936 path.cubicTo(SkBits2Float(0x418ccafd), SkBits2Float(0x42b13768), SkBits2Float(0xc1ab522b), SkBits2Float(0x42af873b), SkBits2Float(0xc247a66c), SkBits2Float(0x4284a188)); 7937 path.cubicTo(SkBits2Float(0xc29cd1e0), SkBits2Float(0x423377ac), SkBits2Float(0xc2b40936), SkBits2Float(0x40f384e7), SkBits2Float(0xc29d7e41), SkBits2Float(0xc1d1d5b9)); 7938 path.cubicTo(SkBits2Float(0xc286f34a), SkBits2Float(0xc2704657), SkBits2Float(0xc20f6108), SkBits2Float(0xc2a5d8cf), SkBits2Float(0xbe35f437), SkBits2Float(0xc2a5ffe6)); 7939 path.lineTo(SkBits2Float(0xbe038989), SkBits2Float(0xc26fffdc)); 7940 path.cubicTo(SkBits2Float(0xc1cf4b80), SkBits2Float(0xc26fc755), SkBits2Float(0xc2431bdf), SkBits2Float(0xc22db14d), SkBits2Float(0xc263b36c), SkBits2Float(0xc197b016)); 7941 path.cubicTo(SkBits2Float(0xc282257d), SkBits2Float(0x40b009af), SkBits2Float(0xc262ba31), SkBits2Float(0x4201bc49), SkBits2Float(0xc2105343), SkBits2Float(0x423fc16f)); 7942 path.cubicTo(SkBits2Float(0xc177b158), SkBits2Float(0x427dc695), SkBits2Float(0x414b8e67), SkBits2Float(0x42801bb6), SkBits2Float(0x4207e581), SkBits2Float(0x4245d188)); 7943 path.lineTo(SkBits2Float(0x423bfd7a), SkBits2Float(0x4288d30e)); 7944 path.close(); 7945 7946 SkPath path2(path); 7947 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7948 } 7949 // op end success 1 7950 7951 static void battleOp285(skiatest::Reporter* reporter, const char* filename) { 7952 SkPath path; 7953 path.setFillType((SkPath::FillType) 0); 7954 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7955 path.cubicTo(SkBits2Float(0x420374f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a8897), SkBits2Float(0xc27e6fb3), SkBits2Float(0x4297d5b1), SkBits2Float(0xc2063270)); 7956 path.cubicTo(SkBits2Float(0x42b26718), SkBits2Float(0xc05f52ba), SkBits2Float(0x42a6ff00), SkBits2Float(0x41fc9e87), SkBits2Float(0x42757dbf), SkBits2Float(0x425f8353)); 7957 path.lineTo(SkBits2Float(0x423176ab), SkBits2Float(0x4221935e)); 7958 path.cubicTo(SkBits2Float(0x427170b0), SkBits2Float(0x41b69dc5), SkBits2Float(0x4280f73f), SkBits2Float(0xc0217057), SkBits2Float(0x425b8525), SkBits2Float(0xc1c20512)); 7959 path.cubicTo(SkBits2Float(0x42351bcc), SkBits2Float(0xc237ee0d), SkBits2Float(0x41be0ee4), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 7960 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 7961 path.close(); 7962 7963 SkPath path1(path); 7964 path.reset(); 7965 path.setFillType((SkPath::FillType) 0); 7966 path.moveTo(SkBits2Float(0x42757dc1), SkBits2Float(0x425f8353)); 7967 path.cubicTo(SkBits2Float(0x4264442b), SkBits2Float(0x42726e80), SkBits2Float(0x4250e985), SkBits2Float(0x4281a5dc), SkBits2Float(0x423bd072), SkBits2Float(0x4288e283)); 7968 path.lineTo(SkBits2Float(0x4207c4f4), SkBits2Float(0x4245e7df)); 7969 path.cubicTo(SkBits2Float(0x42170559), SkBits2Float(0x423b7158), SkBits2Float(0x42250305), SkBits2Float(0x422f4076), SkBits2Float(0x423176ac), SkBits2Float(0x4221935e)); 7970 path.lineTo(SkBits2Float(0x42757dc1), SkBits2Float(0x425f8353)); 7971 path.close(); 7972 7973 SkPath path2(path); 7974 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 7975 } 7976 // op end success 1 7977 7978 static void battleOp286(skiatest::Reporter* reporter, const char* filename) { 7979 SkPath path; 7980 path.setFillType((SkPath::FillType) 1); 7981 path.moveTo(SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 7982 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 7983 path.cubicTo(SkBits2Float(0x420374f9), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a8897), SkBits2Float(0xc27e6fb3), SkBits2Float(0x4297d5b1), SkBits2Float(0xc2063270)); 7984 path.cubicTo(SkBits2Float(0x42b26718), SkBits2Float(0xc05f52c1), SkBits2Float(0x42a6ff01), SkBits2Float(0x41fc9e87), SkBits2Float(0x42757dc1), SkBits2Float(0x425f8353)); 7985 path.cubicTo(SkBits2Float(0x4264442b), SkBits2Float(0x42726e80), SkBits2Float(0x4250e985), SkBits2Float(0x4281a5dc), SkBits2Float(0x423bd072), SkBits2Float(0x4288e283)); 7986 path.lineTo(SkBits2Float(0x4207c4f4), SkBits2Float(0x4245e7df)); 7987 path.cubicTo(SkBits2Float(0x42170559), SkBits2Float(0x423b7158), SkBits2Float(0x42250305), SkBits2Float(0x422f4076), SkBits2Float(0x423176ab), SkBits2Float(0x4221935e)); 7988 path.cubicTo(SkBits2Float(0x427170b0), SkBits2Float(0x41b69dc5), SkBits2Float(0x4280f73f), SkBits2Float(0xc0217057), SkBits2Float(0x425b8525), SkBits2Float(0xc1c20512)); 7989 path.cubicTo(SkBits2Float(0x42351bcc), SkBits2Float(0xc237ee0d), SkBits2Float(0x41be0ee4), SkBits2Float(0xc26fffff), SkBits2Float(0xb630015b), SkBits2Float(0xc26fffff)); 7990 path.close(); 7991 7992 SkPath path1(path); 7993 path.reset(); 7994 path.setFillType((SkPath::FillType) 0); 7995 path.moveTo(SkBits2Float(0x423bd073), SkBits2Float(0x4288e283)); 7996 path.cubicTo(SkBits2Float(0x418c461b), SkBits2Float(0x42b13ffc), SkBits2Float(0xc1abee9c), SkBits2Float(0x42af7fac), SkBits2Float(0xc247e775), SkBits2Float(0x42848907)); 7997 path.cubicTo(SkBits2Float(0xc29cebcd), SkBits2Float(0x423324c4), SkBits2Float(0xc2b40fb2), SkBits2Float(0x40f02474), SkBits2Float(0xc29d6d1c), SkBits2Float(0xc1d2a316)); 7998 path.cubicTo(SkBits2Float(0xc286ca87), SkBits2Float(0xc270a7a6), SkBits2Float(0xc20ee3ea), SkBits2Float(0xc2a5f5e9), SkBits2Float(0xbd3ba09e), SkBits2Float(0xc2a5fffd)); 7999 path.lineTo(SkBits2Float(0xbd0796d7), SkBits2Float(0xc26ffffe)); 8000 path.cubicTo(SkBits2Float(0xc1ce9695), SkBits2Float(0xc26ff16b), SkBits2Float(0xc242e0ee), SkBits2Float(0xc22df7a5), SkBits2Float(0xc2639aa3), SkBits2Float(0xc198448c)); 8001 path.cubicTo(SkBits2Float(0xc2822a2c), SkBits2Float(0x40ad98d0), SkBits2Float(0xc262dfac), SkBits2Float(0x4201805e), SkBits2Float(0xc2108243), SkBits2Float(0x423f9e03)); 8002 path.cubicTo(SkBits2Float(0xc178936c), SkBits2Float(0x427dbba8), SkBits2Float(0x414ace5d), SkBits2Float(0x428021e8), SkBits2Float(0x4207c4fa), SkBits2Float(0x4245e7dc)); 8003 path.lineTo(SkBits2Float(0x423bd073), SkBits2Float(0x4288e283)); 8004 path.close(); 8005 8006 SkPath path2(path); 8007 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8008 } 8009 // op end success 1 8010 8011 static void battleOp287(skiatest::Reporter* reporter, const char* filename) { 8012 SkPath path; 8013 path.setFillType((SkPath::FillType) 0); 8014 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8015 path.cubicTo(SkBits2Float(0x420377c9), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8d67), SkBits2Float(0xc27e6c6d), SkBits2Float(0x4297d744), SkBits2Float(0xc2062b59)); 8016 path.cubicTo(SkBits2Float(0x42b267d3), SkBits2Float(0xc05ea43d), SkBits2Float(0x42a6fd01), SkBits2Float(0x41fcb991), SkBits2Float(0x42757351), SkBits2Float(0x425f8ecb)); 8017 path.lineTo(SkBits2Float(0x42316f1e), SkBits2Float(0x42219ba8)); 8018 path.cubicTo(SkBits2Float(0x42716dc9), SkBits2Float(0x41b6b154), SkBits2Float(0x4280f7c8), SkBits2Float(0xc020f212), SkBits2Float(0x425b876b), SkBits2Float(0xc1c1fad0)); 8019 path.cubicTo(SkBits2Float(0x42351f48), SkBits2Float(0xc237ebae), SkBits2Float(0x41be12f9), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8020 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8021 path.close(); 8022 8023 SkPath path1(path); 8024 path.reset(); 8025 path.setFillType((SkPath::FillType) 0); 8026 path.moveTo(SkBits2Float(0x42757350), SkBits2Float(0x425f8ecb)); 8027 path.cubicTo(SkBits2Float(0x42643881), SkBits2Float(0x4272798e), SkBits2Float(0x4250dca0), SkBits2Float(0x4281ab15), SkBits2Float(0x423bc262), SkBits2Float(0x4288e756)); 8028 path.lineTo(SkBits2Float(0x4207bac8), SkBits2Float(0x4245eed9)); 8029 path.cubicTo(SkBits2Float(0x4216fc05), SkBits2Float(0x423b78e5), SkBits2Float(0x4224fa94), SkBits2Float(0x422f4874), SkBits2Float(0x42316f1f), SkBits2Float(0x42219baa)); 8030 path.lineTo(SkBits2Float(0x42757350), SkBits2Float(0x425f8ecb)); 8031 path.close(); 8032 8033 SkPath path2(path); 8034 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8035 } 8036 // op end success 1 8037 8038 static void battleOp288(skiatest::Reporter* reporter, const char* filename) { 8039 SkPath path; 8040 path.setFillType((SkPath::FillType) 1); 8041 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8042 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8043 path.cubicTo(SkBits2Float(0x420377c9), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8d67), SkBits2Float(0xc27e6c6d), SkBits2Float(0x4297d744), SkBits2Float(0xc2062b59)); 8044 path.cubicTo(SkBits2Float(0x42b267d3), SkBits2Float(0xc05ea43d), SkBits2Float(0x42a6fd01), SkBits2Float(0x41fcb991), SkBits2Float(0x42757351), SkBits2Float(0x425f8ecb)); 8045 path.lineTo(SkBits2Float(0x423bc262), SkBits2Float(0x4288e756)); 8046 path.lineTo(SkBits2Float(0x4207bac8), SkBits2Float(0x4245eed9)); 8047 path.cubicTo(SkBits2Float(0x4216fc05), SkBits2Float(0x423b78e5), SkBits2Float(0x4224fa94), SkBits2Float(0x422f4874), SkBits2Float(0x42316f1f), SkBits2Float(0x42219baa)); 8048 path.lineTo(SkBits2Float(0x42316f1e), SkBits2Float(0x42219ba8)); 8049 path.cubicTo(SkBits2Float(0x42716dc9), SkBits2Float(0x41b6b154), SkBits2Float(0x4280f7c8), SkBits2Float(0xc020f212), SkBits2Float(0x425b876b), SkBits2Float(0xc1c1fad0)); 8050 path.cubicTo(SkBits2Float(0x42351f48), SkBits2Float(0xc237ebae), SkBits2Float(0x41be12f9), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8051 path.close(); 8052 8053 SkPath path1(path); 8054 path.reset(); 8055 path.setFillType((SkPath::FillType) 0); 8056 path.moveTo(SkBits2Float(0x423bc261), SkBits2Float(0x4288e756)); 8057 path.cubicTo(SkBits2Float(0x418c1c95), SkBits2Float(0x42b142a6), SkBits2Float(0xc1ac1f7e), SkBits2Float(0x42af7d4d), SkBits2Float(0xc247fbc6), SkBits2Float(0x4284815d)); 8058 path.cubicTo(SkBits2Float(0xc29cf3e6), SkBits2Float(0x42330ad8), SkBits2Float(0xc2b411b5), SkBits2Float(0x40ef163d), SkBits2Float(0xc29d67bc), SkBits2Float(0xc1d2e345)); 8059 path.cubicTo(SkBits2Float(0xc286bdc4), SkBits2Float(0xc270c60d), SkBits2Float(0xc20ebcc7), SkBits2Float(0xc2a5feff), SkBits2Float(0xbb958372), SkBits2Float(0xc2a5ffff)); 8060 path.lineTo(SkBits2Float(0xbb591ee2), SkBits2Float(0xc2700000)); 8061 path.cubicTo(SkBits2Float(0xc1ce5e0c), SkBits2Float(0xc26ffe8b), SkBits2Float(0xc242ce80), SkBits2Float(0xc22e0d9d), SkBits2Float(0xc26392e3), SkBits2Float(0xc19872ed)); 8062 path.cubicTo(SkBits2Float(0xc2822ba3), SkBits2Float(0x40acd588), SkBits2Float(0xc262eb66), SkBits2Float(0x42016da1), SkBits2Float(0xc21090f8), SkBits2Float(0x423f92f0)); 8063 path.cubicTo(SkBits2Float(0xc178da2a), SkBits2Float(0x427db83e), SkBits2Float(0x414a923f), SkBits2Float(0x428023d8), SkBits2Float(0x4207baca), SkBits2Float(0x4245eed8)); 8064 path.lineTo(SkBits2Float(0x423bc261), SkBits2Float(0x4288e756)); 8065 path.close(); 8066 8067 SkPath path2(path); 8068 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8069 } 8070 // op end success 1 8071 8072 static void battleOp289(skiatest::Reporter* reporter, const char* filename) { 8073 SkPath path; 8074 path.setFillType((SkPath::FillType) 0); 8075 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8076 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8077 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8078 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8079 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8080 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8081 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8082 path.close(); 8083 8084 SkPath path1(path); 8085 path.reset(); 8086 path.setFillType((SkPath::FillType) 0); 8087 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8088 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8089 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8090 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8091 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8092 path.close(); 8093 8094 SkPath path2(path); 8095 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8096 } 8097 // op end success 1 8098 8099 static void battleOp290(skiatest::Reporter* reporter, const char* filename) { 8100 SkPath path; 8101 path.setFillType((SkPath::FillType) 1); 8102 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8103 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8104 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8105 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8106 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8107 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8108 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8109 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8110 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8111 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8112 path.close(); 8113 8114 SkPath path1(path); 8115 path.reset(); 8116 path.setFillType((SkPath::FillType) 0); 8117 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8118 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8119 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8120 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8121 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8122 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8123 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8124 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8125 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8126 path.close(); 8127 8128 SkPath path2(path); 8129 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8130 } 8131 // op end success 1 8132 8133 static void battleOp291(skiatest::Reporter* reporter, const char* filename) { 8134 SkPath path; 8135 path.setFillType((SkPath::FillType) 0); 8136 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8137 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8138 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8139 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8140 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8141 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8142 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8143 path.close(); 8144 8145 SkPath path1(path); 8146 path.reset(); 8147 path.setFillType((SkPath::FillType) 0); 8148 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8149 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8150 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8151 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8152 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8153 path.close(); 8154 8155 SkPath path2(path); 8156 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8157 } 8158 // op end success 1 8159 8160 static void battleOp292(skiatest::Reporter* reporter, const char* filename) { 8161 SkPath path; 8162 path.setFillType((SkPath::FillType) 1); 8163 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8164 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8165 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8166 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8167 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8168 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8169 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8170 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8171 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8172 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8173 path.close(); 8174 8175 SkPath path1(path); 8176 path.reset(); 8177 path.setFillType((SkPath::FillType) 0); 8178 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8179 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8180 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8181 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8182 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8183 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8184 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8185 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8186 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8187 path.close(); 8188 8189 SkPath path2(path); 8190 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8191 } 8192 // op end success 1 8193 8194 static void battleOp293(skiatest::Reporter* reporter, const char* filename) { 8195 SkPath path; 8196 path.setFillType((SkPath::FillType) 0); 8197 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8198 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8199 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8200 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8201 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8202 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8203 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8204 path.close(); 8205 8206 SkPath path1(path); 8207 path.reset(); 8208 path.setFillType((SkPath::FillType) 0); 8209 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8210 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8211 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8212 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8213 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8214 path.close(); 8215 8216 SkPath path2(path); 8217 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8218 } 8219 // op end success 1 8220 8221 static void battleOp294(skiatest::Reporter* reporter, const char* filename) { 8222 SkPath path; 8223 path.setFillType((SkPath::FillType) 1); 8224 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8225 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8226 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8227 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8228 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8229 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8230 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8231 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8232 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8233 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8234 path.close(); 8235 8236 SkPath path1(path); 8237 path.reset(); 8238 path.setFillType((SkPath::FillType) 0); 8239 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8240 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8241 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8242 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8243 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8244 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8245 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8246 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8247 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8248 path.close(); 8249 8250 SkPath path2(path); 8251 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8252 } 8253 // op end success 1 8254 8255 static void battleOp295(skiatest::Reporter* reporter, const char* filename) { 8256 SkPath path; 8257 path.setFillType((SkPath::FillType) 0); 8258 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8259 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8260 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8261 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8262 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8263 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8264 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8265 path.close(); 8266 8267 SkPath path1(path); 8268 path.reset(); 8269 path.setFillType((SkPath::FillType) 0); 8270 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8271 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8272 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8273 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8274 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8275 path.close(); 8276 8277 SkPath path2(path); 8278 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8279 } 8280 // op end success 1 8281 8282 static void battleOp296(skiatest::Reporter* reporter, const char* filename) { 8283 SkPath path; 8284 path.setFillType((SkPath::FillType) 1); 8285 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8286 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8287 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8288 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8289 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8290 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8291 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8292 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8293 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8294 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8295 path.close(); 8296 8297 SkPath path1(path); 8298 path.reset(); 8299 path.setFillType((SkPath::FillType) 0); 8300 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8301 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8302 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8303 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8304 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8305 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8306 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8307 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8308 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8309 path.close(); 8310 8311 SkPath path2(path); 8312 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8313 } 8314 // op end success 1 8315 8316 static void battleOp297(skiatest::Reporter* reporter, const char* filename) { 8317 SkPath path; 8318 path.setFillType((SkPath::FillType) 0); 8319 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8320 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8321 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8322 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8323 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8324 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8325 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8326 path.close(); 8327 8328 SkPath path1(path); 8329 path.reset(); 8330 path.setFillType((SkPath::FillType) 0); 8331 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8332 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8333 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8334 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8335 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8336 path.close(); 8337 8338 SkPath path2(path); 8339 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8340 } 8341 // op end success 1 8342 8343 static void battleOp298(skiatest::Reporter* reporter, const char* filename) { 8344 SkPath path; 8345 path.setFillType((SkPath::FillType) 1); 8346 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8347 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8348 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8349 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8350 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8351 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8352 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8353 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8354 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8355 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8356 path.close(); 8357 8358 SkPath path1(path); 8359 path.reset(); 8360 path.setFillType((SkPath::FillType) 0); 8361 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8362 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8363 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8364 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8365 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8366 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8367 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8368 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8369 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8370 path.close(); 8371 8372 SkPath path2(path); 8373 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8374 } 8375 // op end success 1 8376 8377 static void battleOp299(skiatest::Reporter* reporter, const char* filename) { 8378 SkPath path; 8379 path.setFillType((SkPath::FillType) 0); 8380 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8381 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8382 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8383 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8384 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8385 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8386 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8387 path.close(); 8388 8389 SkPath path1(path); 8390 path.reset(); 8391 path.setFillType((SkPath::FillType) 0); 8392 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8393 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8394 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8395 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8396 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8397 path.close(); 8398 8399 SkPath path2(path); 8400 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8401 } 8402 // op end success 1 8403 8404 static void battleOp300(skiatest::Reporter* reporter, const char* filename) { 8405 SkPath path; 8406 path.setFillType((SkPath::FillType) 1); 8407 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8408 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8409 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8410 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8411 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8412 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8413 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8414 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8415 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8416 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8417 path.close(); 8418 8419 SkPath path1(path); 8420 path.reset(); 8421 path.setFillType((SkPath::FillType) 0); 8422 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8423 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8424 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8425 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8426 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8427 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8428 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8429 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8430 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8431 path.close(); 8432 8433 SkPath path2(path); 8434 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8435 } 8436 // op end success 1 8437 8438 static void battleOp301(skiatest::Reporter* reporter, const char* filename) { 8439 SkPath path; 8440 path.setFillType((SkPath::FillType) 0); 8441 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8442 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8443 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8444 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8445 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8446 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8447 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8448 path.close(); 8449 8450 SkPath path1(path); 8451 path.reset(); 8452 path.setFillType((SkPath::FillType) 0); 8453 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8454 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8455 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8456 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8457 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8458 path.close(); 8459 8460 SkPath path2(path); 8461 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8462 } 8463 // op end success 1 8464 8465 static void battleOp302(skiatest::Reporter* reporter, const char* filename) { 8466 SkPath path; 8467 path.setFillType((SkPath::FillType) 1); 8468 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8469 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8470 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8471 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8472 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8473 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8474 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8475 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8476 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8477 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8478 path.close(); 8479 8480 SkPath path1(path); 8481 path.reset(); 8482 path.setFillType((SkPath::FillType) 0); 8483 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8484 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8485 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8486 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8487 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8488 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8489 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8490 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8491 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8492 path.close(); 8493 8494 SkPath path2(path); 8495 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8496 } 8497 // op end success 1 8498 8499 static void battleOp303(skiatest::Reporter* reporter, const char* filename) { 8500 SkPath path; 8501 path.setFillType((SkPath::FillType) 0); 8502 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8503 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8504 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8505 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8506 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8507 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8508 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8509 path.close(); 8510 8511 SkPath path1(path); 8512 path.reset(); 8513 path.setFillType((SkPath::FillType) 0); 8514 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8515 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8516 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8517 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8518 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8519 path.close(); 8520 8521 SkPath path2(path); 8522 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8523 } 8524 // op end success 1 8525 8526 static void battleOp304(skiatest::Reporter* reporter, const char* filename) { 8527 SkPath path; 8528 path.setFillType((SkPath::FillType) 1); 8529 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8530 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8531 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8532 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8533 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8534 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8535 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8536 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8537 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8538 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8539 path.close(); 8540 8541 SkPath path1(path); 8542 path.reset(); 8543 path.setFillType((SkPath::FillType) 0); 8544 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8545 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8546 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8547 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8548 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8549 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8550 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8551 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8552 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8553 path.close(); 8554 8555 SkPath path2(path); 8556 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8557 } 8558 // op end success 1 8559 8560 static void battleOp305(skiatest::Reporter* reporter, const char* filename) { 8561 SkPath path; 8562 path.setFillType((SkPath::FillType) 0); 8563 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8564 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8565 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8566 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8567 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8568 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8569 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8570 path.close(); 8571 8572 SkPath path1(path); 8573 path.reset(); 8574 path.setFillType((SkPath::FillType) 0); 8575 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8576 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8577 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8578 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8579 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8580 path.close(); 8581 8582 SkPath path2(path); 8583 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8584 } 8585 // op end success 1 8586 8587 static void battleOp306(skiatest::Reporter* reporter, const char* filename) { 8588 SkPath path; 8589 path.setFillType((SkPath::FillType) 1); 8590 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8591 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8592 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8593 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8594 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8595 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8596 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8597 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8598 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8599 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8600 path.close(); 8601 8602 SkPath path1(path); 8603 path.reset(); 8604 path.setFillType((SkPath::FillType) 0); 8605 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8606 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8607 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8608 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8609 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8610 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8611 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8612 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8613 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8614 path.close(); 8615 8616 SkPath path2(path); 8617 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8618 } 8619 // op end success 1 8620 8621 static void battleOp307(skiatest::Reporter* reporter, const char* filename) { 8622 SkPath path; 8623 path.setFillType((SkPath::FillType) 0); 8624 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8625 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8626 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8627 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8628 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8629 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8630 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8631 path.close(); 8632 8633 SkPath path1(path); 8634 path.reset(); 8635 path.setFillType((SkPath::FillType) 0); 8636 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8637 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8638 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8639 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8640 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8641 path.close(); 8642 8643 SkPath path2(path); 8644 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8645 } 8646 // op end success 1 8647 8648 static void battleOp308(skiatest::Reporter* reporter, const char* filename) { 8649 SkPath path; 8650 path.setFillType((SkPath::FillType) 1); 8651 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8652 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8653 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8654 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8655 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8656 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8657 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8658 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8659 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8660 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8661 path.close(); 8662 8663 SkPath path1(path); 8664 path.reset(); 8665 path.setFillType((SkPath::FillType) 0); 8666 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8667 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8668 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8669 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8670 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8671 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8672 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8673 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8674 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8675 path.close(); 8676 8677 SkPath path2(path); 8678 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8679 } 8680 // op end success 1 8681 8682 static void battleOp309(skiatest::Reporter* reporter, const char* filename) { 8683 SkPath path; 8684 path.setFillType((SkPath::FillType) 0); 8685 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8686 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8687 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8688 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8689 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8690 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8691 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8692 path.close(); 8693 8694 SkPath path1(path); 8695 path.reset(); 8696 path.setFillType((SkPath::FillType) 0); 8697 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8698 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8699 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8700 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8701 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8702 path.close(); 8703 8704 SkPath path2(path); 8705 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8706 } 8707 // op end success 1 8708 8709 static void battleOp310(skiatest::Reporter* reporter, const char* filename) { 8710 SkPath path; 8711 path.setFillType((SkPath::FillType) 1); 8712 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8713 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8714 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8715 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8716 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8717 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8718 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8719 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8720 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8721 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8722 path.close(); 8723 8724 SkPath path1(path); 8725 path.reset(); 8726 path.setFillType((SkPath::FillType) 0); 8727 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8728 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8729 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8730 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8731 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8732 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8733 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8734 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8735 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8736 path.close(); 8737 8738 SkPath path2(path); 8739 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8740 } 8741 // op end success 1 8742 8743 static void battleOp311(skiatest::Reporter* reporter, const char* filename) { 8744 SkPath path; 8745 path.setFillType((SkPath::FillType) 0); 8746 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8747 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8748 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8749 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8750 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8751 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8752 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8753 path.close(); 8754 8755 SkPath path1(path); 8756 path.reset(); 8757 path.setFillType((SkPath::FillType) 0); 8758 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8759 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8760 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8761 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8762 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8763 path.close(); 8764 8765 SkPath path2(path); 8766 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8767 } 8768 // op end success 1 8769 8770 static void battleOp312(skiatest::Reporter* reporter, const char* filename) { 8771 SkPath path; 8772 path.setFillType((SkPath::FillType) 1); 8773 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8774 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8775 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8776 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8777 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8778 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8779 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8780 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8781 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8782 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8783 path.close(); 8784 8785 SkPath path1(path); 8786 path.reset(); 8787 path.setFillType((SkPath::FillType) 0); 8788 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8789 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8790 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8791 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8792 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8793 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8794 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8795 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8796 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8797 path.close(); 8798 8799 SkPath path2(path); 8800 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8801 } 8802 // op end success 1 8803 8804 static void battleOp313(skiatest::Reporter* reporter, const char* filename) { 8805 SkPath path; 8806 path.setFillType((SkPath::FillType) 0); 8807 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8808 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8809 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8810 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8811 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8812 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8813 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8814 path.close(); 8815 8816 SkPath path1(path); 8817 path.reset(); 8818 path.setFillType((SkPath::FillType) 0); 8819 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8820 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8821 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8822 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8823 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8824 path.close(); 8825 8826 SkPath path2(path); 8827 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8828 } 8829 // op end success 1 8830 8831 static void battleOp314(skiatest::Reporter* reporter, const char* filename) { 8832 SkPath path; 8833 path.setFillType((SkPath::FillType) 1); 8834 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8835 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8836 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8837 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8838 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8839 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8840 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8841 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8842 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8843 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8844 path.close(); 8845 8846 SkPath path1(path); 8847 path.reset(); 8848 path.setFillType((SkPath::FillType) 0); 8849 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8850 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8851 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8852 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8853 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8854 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8855 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8856 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8857 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8858 path.close(); 8859 8860 SkPath path2(path); 8861 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8862 } 8863 // op end success 1 8864 8865 static void battleOp315(skiatest::Reporter* reporter, const char* filename) { 8866 SkPath path; 8867 path.setFillType((SkPath::FillType) 0); 8868 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8869 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8870 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8871 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8872 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8873 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8874 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8875 path.close(); 8876 8877 SkPath path1(path); 8878 path.reset(); 8879 path.setFillType((SkPath::FillType) 0); 8880 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8881 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8882 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8883 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8884 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8885 path.close(); 8886 8887 SkPath path2(path); 8888 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8889 } 8890 // op end success 1 8891 8892 static void battleOp316(skiatest::Reporter* reporter, const char* filename) { 8893 SkPath path; 8894 path.setFillType((SkPath::FillType) 1); 8895 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8896 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8897 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8898 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8899 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8900 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8901 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8902 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8903 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8904 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8905 path.close(); 8906 8907 SkPath path1(path); 8908 path.reset(); 8909 path.setFillType((SkPath::FillType) 0); 8910 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8911 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8912 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8913 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8914 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8915 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8916 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8917 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8918 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8919 path.close(); 8920 8921 SkPath path2(path); 8922 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8923 } 8924 // op end success 1 8925 8926 static void battleOp317(skiatest::Reporter* reporter, const char* filename) { 8927 SkPath path; 8928 path.setFillType((SkPath::FillType) 0); 8929 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8930 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8931 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8932 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8933 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8934 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8935 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8936 path.close(); 8937 8938 SkPath path1(path); 8939 path.reset(); 8940 path.setFillType((SkPath::FillType) 0); 8941 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8942 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8943 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8944 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8945 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 8946 path.close(); 8947 8948 SkPath path2(path); 8949 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8950 } 8951 // op end success 1 8952 8953 static void battleOp318(skiatest::Reporter* reporter, const char* filename) { 8954 SkPath path; 8955 path.setFillType((SkPath::FillType) 1); 8956 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8957 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 8958 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8959 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8960 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8961 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8962 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 8963 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8964 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8965 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 8966 path.close(); 8967 8968 SkPath path1(path); 8969 path.reset(); 8970 path.setFillType((SkPath::FillType) 0); 8971 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8972 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 8973 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 8974 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 8975 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 8976 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 8977 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 8978 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 8979 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 8980 path.close(); 8981 8982 SkPath path2(path); 8983 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 8984 } 8985 // op end success 1 8986 8987 static void battleOp319(skiatest::Reporter* reporter, const char* filename) { 8988 SkPath path; 8989 path.setFillType((SkPath::FillType) 0); 8990 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8991 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 8992 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 8993 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 8994 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 8995 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 8996 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 8997 path.close(); 8998 8999 SkPath path1(path); 9000 path.reset(); 9001 path.setFillType((SkPath::FillType) 0); 9002 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9003 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9004 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9005 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9006 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9007 path.close(); 9008 9009 SkPath path2(path); 9010 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9011 } 9012 // op end success 1 9013 9014 static void battleOp320(skiatest::Reporter* reporter, const char* filename) { 9015 SkPath path; 9016 path.setFillType((SkPath::FillType) 1); 9017 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9018 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9019 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9020 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9021 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9022 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9023 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9024 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9025 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9026 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9027 path.close(); 9028 9029 SkPath path1(path); 9030 path.reset(); 9031 path.setFillType((SkPath::FillType) 0); 9032 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9033 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9034 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9035 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9036 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9037 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9038 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9039 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9040 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9041 path.close(); 9042 9043 SkPath path2(path); 9044 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9045 } 9046 // op end success 1 9047 9048 static void battleOp321(skiatest::Reporter* reporter, const char* filename) { 9049 SkPath path; 9050 path.setFillType((SkPath::FillType) 0); 9051 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9052 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9053 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9054 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9055 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9056 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9057 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9058 path.close(); 9059 9060 SkPath path1(path); 9061 path.reset(); 9062 path.setFillType((SkPath::FillType) 0); 9063 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9064 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9065 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9066 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9067 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9068 path.close(); 9069 9070 SkPath path2(path); 9071 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9072 } 9073 // op end success 1 9074 9075 static void battleOp322(skiatest::Reporter* reporter, const char* filename) { 9076 SkPath path; 9077 path.setFillType((SkPath::FillType) 1); 9078 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9079 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9080 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9081 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9082 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9083 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9084 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9085 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9086 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9087 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9088 path.close(); 9089 9090 SkPath path1(path); 9091 path.reset(); 9092 path.setFillType((SkPath::FillType) 0); 9093 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9094 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9095 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9096 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9097 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9098 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9099 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9100 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9101 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9102 path.close(); 9103 9104 SkPath path2(path); 9105 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9106 } 9107 // op end success 1 9108 9109 static void battleOp323(skiatest::Reporter* reporter, const char* filename) { 9110 SkPath path; 9111 path.setFillType((SkPath::FillType) 0); 9112 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9113 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9114 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9115 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9116 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9117 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9118 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9119 path.close(); 9120 9121 SkPath path1(path); 9122 path.reset(); 9123 path.setFillType((SkPath::FillType) 0); 9124 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9125 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9126 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9127 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9128 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9129 path.close(); 9130 9131 SkPath path2(path); 9132 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9133 } 9134 // op end success 1 9135 9136 static void battleOp324(skiatest::Reporter* reporter, const char* filename) { 9137 SkPath path; 9138 path.setFillType((SkPath::FillType) 1); 9139 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9140 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9141 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9142 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9143 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9144 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9145 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9146 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9147 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9148 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9149 path.close(); 9150 9151 SkPath path1(path); 9152 path.reset(); 9153 path.setFillType((SkPath::FillType) 0); 9154 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9155 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9156 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9157 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9158 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9159 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9160 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9161 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9162 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9163 path.close(); 9164 9165 SkPath path2(path); 9166 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9167 } 9168 // op end success 1 9169 9170 static void battleOp325(skiatest::Reporter* reporter, const char* filename) { 9171 SkPath path; 9172 path.setFillType((SkPath::FillType) 0); 9173 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9174 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9175 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9176 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9177 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9178 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9179 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9180 path.close(); 9181 9182 SkPath path1(path); 9183 path.reset(); 9184 path.setFillType((SkPath::FillType) 0); 9185 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9186 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9187 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9188 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9189 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9190 path.close(); 9191 9192 SkPath path2(path); 9193 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9194 } 9195 // op end success 1 9196 9197 static void battleOp326(skiatest::Reporter* reporter, const char* filename) { 9198 SkPath path; 9199 path.setFillType((SkPath::FillType) 1); 9200 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9201 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9202 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9203 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9204 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9205 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9206 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9207 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9208 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9209 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9210 path.close(); 9211 9212 SkPath path1(path); 9213 path.reset(); 9214 path.setFillType((SkPath::FillType) 0); 9215 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9216 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9217 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9218 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9219 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9220 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9221 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9222 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9223 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9224 path.close(); 9225 9226 SkPath path2(path); 9227 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9228 } 9229 // op end success 1 9230 9231 static void battleOp327(skiatest::Reporter* reporter, const char* filename) { 9232 SkPath path; 9233 path.setFillType((SkPath::FillType) 0); 9234 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9235 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9236 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9237 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9238 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9239 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9240 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9241 path.close(); 9242 9243 SkPath path1(path); 9244 path.reset(); 9245 path.setFillType((SkPath::FillType) 0); 9246 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9247 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9248 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9249 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9250 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9251 path.close(); 9252 9253 SkPath path2(path); 9254 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9255 } 9256 // op end success 1 9257 9258 static void battleOp328(skiatest::Reporter* reporter, const char* filename) { 9259 SkPath path; 9260 path.setFillType((SkPath::FillType) 1); 9261 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9262 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9263 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9264 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9265 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9266 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9267 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9268 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9269 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9270 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9271 path.close(); 9272 9273 SkPath path1(path); 9274 path.reset(); 9275 path.setFillType((SkPath::FillType) 0); 9276 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9277 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9278 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9279 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9280 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9281 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9282 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9283 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9284 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9285 path.close(); 9286 9287 SkPath path2(path); 9288 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9289 } 9290 // op end success 1 9291 9292 static void battleOp329(skiatest::Reporter* reporter, const char* filename) { 9293 SkPath path; 9294 path.setFillType((SkPath::FillType) 0); 9295 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9296 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9297 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9298 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9299 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9300 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9301 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9302 path.close(); 9303 9304 SkPath path1(path); 9305 path.reset(); 9306 path.setFillType((SkPath::FillType) 0); 9307 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9308 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9309 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9310 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9311 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9312 path.close(); 9313 9314 SkPath path2(path); 9315 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9316 } 9317 // op end success 1 9318 9319 static void battleOp330(skiatest::Reporter* reporter, const char* filename) { 9320 SkPath path; 9321 path.setFillType((SkPath::FillType) 1); 9322 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9323 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9324 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9325 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9326 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9327 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9328 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9329 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9330 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9331 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9332 path.close(); 9333 9334 SkPath path1(path); 9335 path.reset(); 9336 path.setFillType((SkPath::FillType) 0); 9337 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9338 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9339 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9340 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9341 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9342 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9343 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9344 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9345 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9346 path.close(); 9347 9348 SkPath path2(path); 9349 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9350 } 9351 // op end success 1 9352 9353 static void battleOp331(skiatest::Reporter* reporter, const char* filename) { 9354 SkPath path; 9355 path.setFillType((SkPath::FillType) 0); 9356 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9357 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9358 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9359 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9360 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9361 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9362 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9363 path.close(); 9364 9365 SkPath path1(path); 9366 path.reset(); 9367 path.setFillType((SkPath::FillType) 0); 9368 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9369 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9370 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9371 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9372 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9373 path.close(); 9374 9375 SkPath path2(path); 9376 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9377 } 9378 // op end success 1 9379 9380 static void battleOp332(skiatest::Reporter* reporter, const char* filename) { 9381 SkPath path; 9382 path.setFillType((SkPath::FillType) 1); 9383 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9384 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9385 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9386 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9387 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9388 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9389 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9390 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9391 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9392 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9393 path.close(); 9394 9395 SkPath path1(path); 9396 path.reset(); 9397 path.setFillType((SkPath::FillType) 0); 9398 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9399 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9400 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9401 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9402 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9403 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9404 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9405 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9406 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9407 path.close(); 9408 9409 SkPath path2(path); 9410 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9411 } 9412 // op end success 1 9413 9414 static void battleOp333(skiatest::Reporter* reporter, const char* filename) { 9415 SkPath path; 9416 path.setFillType((SkPath::FillType) 0); 9417 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9418 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9419 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9420 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9421 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9422 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9423 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9424 path.close(); 9425 9426 SkPath path1(path); 9427 path.reset(); 9428 path.setFillType((SkPath::FillType) 0); 9429 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9430 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9431 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9432 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9433 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9434 path.close(); 9435 9436 SkPath path2(path); 9437 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9438 } 9439 // op end success 1 9440 9441 static void battleOp334(skiatest::Reporter* reporter, const char* filename) { 9442 SkPath path; 9443 path.setFillType((SkPath::FillType) 1); 9444 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9445 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9446 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9447 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9448 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9449 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9450 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9451 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9452 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9453 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9454 path.close(); 9455 9456 SkPath path1(path); 9457 path.reset(); 9458 path.setFillType((SkPath::FillType) 0); 9459 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9460 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9461 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9462 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9463 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9464 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9465 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9466 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9467 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9468 path.close(); 9469 9470 SkPath path2(path); 9471 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9472 } 9473 // op end success 1 9474 9475 static void battleOp335(skiatest::Reporter* reporter, const char* filename) { 9476 SkPath path; 9477 path.setFillType((SkPath::FillType) 0); 9478 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9479 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9480 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9481 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9482 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9483 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9484 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9485 path.close(); 9486 9487 SkPath path1(path); 9488 path.reset(); 9489 path.setFillType((SkPath::FillType) 0); 9490 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9491 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9492 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9493 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9494 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9495 path.close(); 9496 9497 SkPath path2(path); 9498 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9499 } 9500 // op end success 1 9501 9502 static void battleOp336(skiatest::Reporter* reporter, const char* filename) { 9503 SkPath path; 9504 path.setFillType((SkPath::FillType) 1); 9505 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9506 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9507 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9508 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9509 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9510 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9511 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9512 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9513 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9514 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9515 path.close(); 9516 9517 SkPath path1(path); 9518 path.reset(); 9519 path.setFillType((SkPath::FillType) 0); 9520 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9521 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9522 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9523 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9524 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9525 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9526 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9527 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9528 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9529 path.close(); 9530 9531 SkPath path2(path); 9532 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9533 } 9534 // op end success 1 9535 9536 static void battleOp337(skiatest::Reporter* reporter, const char* filename) { 9537 SkPath path; 9538 path.setFillType((SkPath::FillType) 0); 9539 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9540 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9541 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9542 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9543 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9544 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9545 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9546 path.close(); 9547 9548 SkPath path1(path); 9549 path.reset(); 9550 path.setFillType((SkPath::FillType) 0); 9551 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9552 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9553 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9554 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9555 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9556 path.close(); 9557 9558 SkPath path2(path); 9559 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9560 } 9561 // op end success 1 9562 9563 static void battleOp338(skiatest::Reporter* reporter, const char* filename) { 9564 SkPath path; 9565 path.setFillType((SkPath::FillType) 1); 9566 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9567 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9568 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9569 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9570 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9571 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9572 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9573 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9574 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9575 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9576 path.close(); 9577 9578 SkPath path1(path); 9579 path.reset(); 9580 path.setFillType((SkPath::FillType) 0); 9581 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9582 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9583 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9584 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9585 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9586 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9587 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9588 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9589 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9590 path.close(); 9591 9592 SkPath path2(path); 9593 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9594 } 9595 // op end success 1 9596 9597 static void battleOp339(skiatest::Reporter* reporter, const char* filename) { 9598 SkPath path; 9599 path.setFillType((SkPath::FillType) 0); 9600 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9601 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9602 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9603 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9604 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9605 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9606 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9607 path.close(); 9608 9609 SkPath path1(path); 9610 path.reset(); 9611 path.setFillType((SkPath::FillType) 0); 9612 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9613 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9614 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9615 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9616 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9617 path.close(); 9618 9619 SkPath path2(path); 9620 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9621 } 9622 // op end success 1 9623 9624 static void battleOp340(skiatest::Reporter* reporter, const char* filename) { 9625 SkPath path; 9626 path.setFillType((SkPath::FillType) 1); 9627 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9628 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9629 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9630 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9631 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9632 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9633 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9634 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9635 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9636 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9637 path.close(); 9638 9639 SkPath path1(path); 9640 path.reset(); 9641 path.setFillType((SkPath::FillType) 0); 9642 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9643 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9644 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9645 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9646 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9647 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9648 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9649 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9650 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9651 path.close(); 9652 9653 SkPath path2(path); 9654 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9655 } 9656 // op end success 1 9657 9658 static void battleOp341(skiatest::Reporter* reporter, const char* filename) { 9659 SkPath path; 9660 path.setFillType((SkPath::FillType) 0); 9661 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9662 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9663 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9664 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9665 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9666 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9667 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9668 path.close(); 9669 9670 SkPath path1(path); 9671 path.reset(); 9672 path.setFillType((SkPath::FillType) 0); 9673 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9674 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9675 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9676 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9677 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9678 path.close(); 9679 9680 SkPath path2(path); 9681 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9682 } 9683 // op end success 1 9684 9685 static void battleOp342(skiatest::Reporter* reporter, const char* filename) { 9686 SkPath path; 9687 path.setFillType((SkPath::FillType) 1); 9688 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9689 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9690 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9691 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9692 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9693 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9694 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9695 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9696 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9697 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9698 path.close(); 9699 9700 SkPath path1(path); 9701 path.reset(); 9702 path.setFillType((SkPath::FillType) 0); 9703 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9704 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9705 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9706 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9707 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9708 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9709 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9710 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9711 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9712 path.close(); 9713 9714 SkPath path2(path); 9715 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9716 } 9717 // op end success 1 9718 9719 static void battleOp343(skiatest::Reporter* reporter, const char* filename) { 9720 SkPath path; 9721 path.setFillType((SkPath::FillType) 0); 9722 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9723 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9724 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9725 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9726 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9727 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9728 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9729 path.close(); 9730 9731 SkPath path1(path); 9732 path.reset(); 9733 path.setFillType((SkPath::FillType) 0); 9734 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9735 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9736 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9737 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9738 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9739 path.close(); 9740 9741 SkPath path2(path); 9742 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9743 } 9744 // op end success 1 9745 9746 static void battleOp344(skiatest::Reporter* reporter, const char* filename) { 9747 SkPath path; 9748 path.setFillType((SkPath::FillType) 1); 9749 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9750 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9751 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9752 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9753 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9754 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9755 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9756 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9757 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9758 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9759 path.close(); 9760 9761 SkPath path1(path); 9762 path.reset(); 9763 path.setFillType((SkPath::FillType) 0); 9764 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9765 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9766 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9767 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9768 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9769 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9770 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9771 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9772 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9773 path.close(); 9774 9775 SkPath path2(path); 9776 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9777 } 9778 // op end success 1 9779 9780 static void battleOp345(skiatest::Reporter* reporter, const char* filename) { 9781 SkPath path; 9782 path.setFillType((SkPath::FillType) 0); 9783 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9784 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9785 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9786 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9787 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9788 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 9789 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9790 path.close(); 9791 9792 SkPath path1(path); 9793 path.reset(); 9794 path.setFillType((SkPath::FillType) 0); 9795 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9796 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9797 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9798 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9799 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 9800 path.close(); 9801 9802 SkPath path2(path); 9803 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9804 } 9805 // op end success 1 9806 9807 static void battleOp346(skiatest::Reporter* reporter, const char* filename) { 9808 SkPath path; 9809 path.setFillType((SkPath::FillType) 1); 9810 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9811 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9812 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 9813 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 9814 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9815 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9816 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 9817 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 9818 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 9819 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9820 path.close(); 9821 9822 SkPath path1(path); 9823 path.reset(); 9824 path.setFillType((SkPath::FillType) 0); 9825 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9826 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 9827 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 9828 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 9829 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 9830 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 9831 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 9832 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 9833 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 9834 path.close(); 9835 9836 SkPath path2(path); 9837 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9838 } 9839 // op end success 1 9840 9841 static void battleOp347(skiatest::Reporter* reporter, const char* filename) { 9842 SkPath path; 9843 path.setFillType((SkPath::FillType) 0); 9844 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9845 path.cubicTo(SkBits2Float(0x3d570205), SkBits2Float(0xc2a60000), SkBits2Float(0x3dd7026d), SkBits2Float(0xc2a5fffa), SkBits2Float(0x3e2141e6), SkBits2Float(0xc2a5ffed)); 9846 path.lineTo(SkBits2Float(0x3de92565), SkBits2Float(0xc26fffe4)); 9847 path.cubicTo(SkBits2Float(0x3d9b6fac), SkBits2Float(0xc26ffff9), SkBits2Float(0x3d1b715b), SkBits2Float(0xc2700002), SkBits2Float(0x365677c0), SkBits2Float(0xc2700002)); 9848 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9849 path.close(); 9850 9851 SkPath path1(path); 9852 path.reset(); 9853 path.setFillType((SkPath::FillType) 0); 9854 path.moveTo(SkBits2Float(0x3e214267), SkBits2Float(0xc2a5ffec)); 9855 path.cubicTo(SkBits2Float(0x3e26a1f2), SkBits2Float(0xc2a5ffeb), SkBits2Float(0x3e2c025b), SkBits2Float(0xc2a5ffe9), SkBits2Float(0x3e3162c6), SkBits2Float(0xc2a5ffe7)); 9856 path.lineTo(SkBits2Float(0x3e003af5), SkBits2Float(0xc26fffde)); 9857 path.cubicTo(SkBits2Float(0x3df8b0d2), SkBits2Float(0xc26fffe0), SkBits2Float(0x3df0ead2), SkBits2Float(0xc26fffe2), SkBits2Float(0x3de924d4), SkBits2Float(0xc26fffe4)); 9858 path.lineTo(SkBits2Float(0x3e214267), SkBits2Float(0xc2a5ffec)); 9859 path.close(); 9860 9861 SkPath path2(path); 9862 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9863 } 9864 // op end success 1 9865 9866 static void battleOp348(skiatest::Reporter* reporter, const char* filename) { 9867 SkPath path; 9868 path.setFillType((SkPath::FillType) 1); 9869 path.moveTo(SkBits2Float(0x365677c0), SkBits2Float(0xc2700002)); 9870 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9871 path.cubicTo(SkBits2Float(0x3d570205), SkBits2Float(0xc2a60000), SkBits2Float(0x3dd7026d), SkBits2Float(0xc2a5fffa), SkBits2Float(0x3e2141e6), SkBits2Float(0xc2a5ffed)); 9872 path.lineTo(SkBits2Float(0x3e0492ca), SkBits2Float(0xc28878a2)); 9873 path.lineTo(SkBits2Float(0x3e214267), SkBits2Float(0xc2a5ffec)); 9874 path.cubicTo(SkBits2Float(0x3e26a1f2), SkBits2Float(0xc2a5ffeb), SkBits2Float(0x3e2c025b), SkBits2Float(0xc2a5ffe9), SkBits2Float(0x3e3162c6), SkBits2Float(0xc2a5ffe7)); 9875 path.lineTo(SkBits2Float(0x3e003af5), SkBits2Float(0xc26fffde)); 9876 path.lineTo(SkBits2Float(0x3de92565), SkBits2Float(0xc26fffe4)); 9877 path.lineTo(SkBits2Float(0x3de924d4), SkBits2Float(0xc26fffe4)); 9878 path.cubicTo(SkBits2Float(0x3d9b6f4b), SkBits2Float(0xc26ffff9), SkBits2Float(0x3d1b70fa), SkBits2Float(0xc2700002), SkBits2Float(0x365677c0), SkBits2Float(0xc2700002)); 9879 path.close(); 9880 9881 SkPath path1(path); 9882 path.reset(); 9883 path.setFillType((SkPath::FillType) 0); 9884 path.moveTo(SkBits2Float(0x3e3162a4), SkBits2Float(0xc2a5ffe8)); 9885 path.cubicTo(SkBits2Float(0x3e843f51), SkBits2Float(0xc2a5ffd1), SkBits2Float(0x3eafcce9), SkBits2Float(0xc2a5ffa8), SkBits2Float(0x3edb5a6f), SkBits2Float(0xc2a5ff6f)); 9886 path.lineTo(SkBits2Float(0x3e9e9160), SkBits2Float(0xc26fff2e)); 9887 path.cubicTo(SkBits2Float(0x3e7e2aec), SkBits2Float(0xc26fff82), SkBits2Float(0x3e3f3306), SkBits2Float(0xc26fffbd), SkBits2Float(0x3e003b0e), SkBits2Float(0xc26fffdf)); 9888 path.lineTo(SkBits2Float(0x3e3162a4), SkBits2Float(0xc2a5ffe8)); 9889 path.close(); 9890 9891 SkPath path2(path); 9892 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9893 } 9894 // op end success 1 9895 9896 static void battleOp349(skiatest::Reporter* reporter, const char* filename) { 9897 SkPath path; 9898 path.setFillType((SkPath::FillType) 0); 9899 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9900 path.cubicTo(SkBits2Float(0x3e678fda), SkBits2Float(0xc2a60000), SkBits2Float(0x3ee78f7d), SkBits2Float(0xc2a5ff87), SkBits2Float(0x3f2dab18), SkBits2Float(0xc2a5fe96)); 9901 path.lineTo(SkBits2Float(0x3efb15d4), SkBits2Float(0xc26ffdf3)); 9902 path.cubicTo(SkBits2Float(0x3ea764ab), SkBits2Float(0xc26fff52), SkBits2Float(0x3e2764f3), SkBits2Float(0xc2700000), SkBits2Float(0x35c73da0), SkBits2Float(0xc2700000)); 9903 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9904 path.close(); 9905 9906 SkPath path1(path); 9907 path.reset(); 9908 path.setFillType((SkPath::FillType) 0); 9909 path.moveTo(SkBits2Float(0x3f2daad3), SkBits2Float(0xc2a5fe95)); 9910 path.cubicTo(SkBits2Float(0x3f3374d8), SkBits2Float(0xc2a5fe7b), SkBits2Float(0x3f393eae), SkBits2Float(0xc2a5fe62), SkBits2Float(0x3f3f0885), SkBits2Float(0xc2a5fe46)); 9911 path.lineTo(SkBits2Float(0x3f0a18b8), SkBits2Float(0xc26ffd84)); 9912 path.cubicTo(SkBits2Float(0x3f05e964), SkBits2Float(0xc26ffdad), SkBits2Float(0x3f01ba2f), SkBits2Float(0xc26ffdd1), SkBits2Float(0x3efb15f0), SkBits2Float(0xc26ffdf5)); 9913 path.lineTo(SkBits2Float(0x3f2daad3), SkBits2Float(0xc2a5fe95)); 9914 path.close(); 9915 9916 SkPath path2(path); 9917 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9918 } 9919 // op end success 1 9920 9921 static void battleOp350(skiatest::Reporter* reporter, const char* filename) { 9922 SkPath path; 9923 path.setFillType((SkPath::FillType) 1); 9924 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9925 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9926 path.cubicTo(SkBits2Float(0x3e678fda), SkBits2Float(0xc2a60000), SkBits2Float(0x3ee78f7d), SkBits2Float(0xc2a5ff87), SkBits2Float(0x3f2dab18), SkBits2Float(0xc2a5fe96)); 9927 path.cubicTo(SkBits2Float(0x3f3374d8), SkBits2Float(0xc2a5fe7b), SkBits2Float(0x3f393eae), SkBits2Float(0xc2a5fe62), SkBits2Float(0x3f3f0885), SkBits2Float(0xc2a5fe46)); 9928 path.lineTo(SkBits2Float(0x3f0a18b8), SkBits2Float(0xc26ffd84)); 9929 path.cubicTo(SkBits2Float(0x3f05e964), SkBits2Float(0xc26ffdad), SkBits2Float(0x3f01ba2f), SkBits2Float(0xc26ffdd1), SkBits2Float(0x3efb15f0), SkBits2Float(0xc26ffdf5)); 9930 path.lineTo(SkBits2Float(0x3efb15d4), SkBits2Float(0xc26ffdf3)); 9931 path.cubicTo(SkBits2Float(0x3ea764ab), SkBits2Float(0xc26fff52), SkBits2Float(0x3e2764f3), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9932 path.close(); 9933 9934 SkPath path1(path); 9935 path.reset(); 9936 path.setFillType((SkPath::FillType) 0); 9937 path.moveTo(SkBits2Float(0x3f3f0899), SkBits2Float(0xc2a5fe48)); 9938 path.cubicTo(SkBits2Float(0x3f8e6b81), SkBits2Float(0xc2a5fc98), SkBits2Float(0x3fbd51fb), SkBits2Float(0xc2a5f9aa), SkBits2Float(0x3fec36d3), SkBits2Float(0xc2a5f57e)); 9939 path.lineTo(SkBits2Float(0x3faac1d7), SkBits2Float(0xc26ff0d0)); 9940 path.cubicTo(SkBits2Float(0x3f88dbac), SkBits2Float(0xc26ff6d7), SkBits2Float(0x3f4de8bb), SkBits2Float(0xc26ffb13), SkBits2Float(0x3f0a18e7), SkBits2Float(0xc26ffd83)); 9941 path.lineTo(SkBits2Float(0x3f3f0899), SkBits2Float(0xc2a5fe48)); 9942 path.close(); 9943 9944 SkPath path2(path); 9945 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9946 } 9947 // op end success 1 9948 9949 static void battleOp351(skiatest::Reporter* reporter, const char* filename) { 9950 SkPath path; 9951 path.setFillType((SkPath::FillType) 0); 9952 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9953 path.cubicTo(SkBits2Float(0x403f62fc), SkBits2Float(0xc2a60000), SkBits2Float(0x40bf510b), SkBits2Float(0xc2a5ad41), SkBits2Float(0x410f39cc), SkBits2Float(0xc2a50821)); 9954 path.lineTo(SkBits2Float(0x40cf12cc), SkBits2Float(0xc26e99a0)); 9955 path.cubicTo(SkBits2Float(0x408a4d18), SkBits2Float(0xc26f885f), SkBits2Float(0x400a5a13), SkBits2Float(0xc2700000), SkBits2Float(0x36a6ff52), SkBits2Float(0xc2700000)); 9956 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 9957 path.close(); 9958 9959 SkPath path1(path); 9960 path.reset(); 9961 path.setFillType((SkPath::FillType) 0); 9962 path.moveTo(SkBits2Float(0x410f39cd), SkBits2Float(0xc2a50820)); 9963 path.cubicTo(SkBits2Float(0x4113fb3b), SkBits2Float(0xc2a4f79d), SkBits2Float(0x4118bbf1), SkBits2Float(0xc2a4e648), SkBits2Float(0x411d7be1), SkBits2Float(0xc2a4d421)); 9964 path.lineTo(SkBits2Float(0x40e3b008), SkBits2Float(0xc26e4e75)); 9965 path.cubicTo(SkBits2Float(0x40dcd206), SkBits2Float(0xc26e68b4), SkBits2Float(0x40d5f2eb), SkBits2Float(0xc26e81c3), SkBits2Float(0x40cf12c6), SkBits2Float(0xc26e99a1)); 9966 path.lineTo(SkBits2Float(0x410f39cd), SkBits2Float(0xc2a50820)); 9967 path.close(); 9968 9969 SkPath path2(path); 9970 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9971 } 9972 9973 static void battleOp352(skiatest::Reporter* reporter, const char* filename) { 9974 SkPath path; 9975 path.setFillType((SkPath::FillType) 1); 9976 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9977 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 9978 path.cubicTo(SkBits2Float(0x3e0b17a8), SkBits2Float(0xc2a60000), SkBits2Float(0x3e8b179e), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a337), SkBits2Float(0xc2a5ff7c)); 9979 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d)); 9980 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60)); 9981 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b)); 9982 path.cubicTo(SkBits2Float(0x3ea0e0bb), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd9a1), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d286), SkBits2Float(0xc26fff43)); 9983 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42)); 9984 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 9985 path.close(); 9986 9987 SkPath path1(path); 9988 path.reset(); 9989 path.setFillType((SkPath::FillType) 0); 9990 path.moveTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61)); 9991 path.cubicTo(SkBits2Float(0x3f2b1987), SkBits2Float(0xc2a5fec4), SkBits2Float(0x3f637253), SkBits2Float(0xc2a5fdb6), SkBits2Float(0x3f8de535), SkBits2Float(0xc2a5fc35)); 9992 path.lineTo(SkBits2Float(0x3f4d269a), SkBits2Float(0xc26ffa85)); 9993 path.cubicTo(SkBits2Float(0x3f246b51), SkBits2Float(0xc26ffcb3), SkBits2Float(0x3ef75f30), SkBits2Float(0xc26ffe3a), SkBits2Float(0x3ea5e737), SkBits2Float(0xc26fff1c)); 9994 path.lineTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61)); 9995 path.close(); 9996 9997 SkPath path2(path); 9998 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 9999 } 10000 10001 static void battleOp1390(skiatest::Reporter* reporter, const char* filename) { 10002 SkPath path; 10003 path.setFillType((SkPath::FillType) 1); 10004 path.moveTo(SkBits2Float(0xb7240057), SkBits2Float(0xc2700000)); 10005 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10006 path.cubicTo(SkBits2Float(0x420377ff), SkBits2Float(0xc2a5ffff), SkBits2Float(0x427a8dc0), SkBits2Float(0xc27e6c2f), SkBits2Float(0x4297d760), SkBits2Float(0xc2062ad2)); 10007 path.cubicTo(SkBits2Float(0x42b267e1), SkBits2Float(0xc05e974f), SkBits2Float(0x42a6fcda), SkBits2Float(0x41fcbb92), SkBits2Float(0x42757289), SkBits2Float(0x425f8fa5)); 10008 path.cubicTo(SkBits2Float(0x426437a0), SkBits2Float(0x42727a5f), SkBits2Float(0x4250dbaa), SkBits2Float(0x4281ab79), SkBits2Float(0x423bc155), SkBits2Float(0x4288e7b2)); 10009 path.lineTo(SkBits2Float(0x4207ba06), SkBits2Float(0x4245ef5e)); 10010 path.cubicTo(SkBits2Float(0x4216fb52), SkBits2Float(0x423b7973), SkBits2Float(0x4224f9f2), SkBits2Float(0x422f490a), SkBits2Float(0x42316e8e), SkBits2Float(0x42219c46)); 10011 path.cubicTo(SkBits2Float(0x42716d91), SkBits2Float(0x41b6b2c9), SkBits2Float(0x4280f7d1), SkBits2Float(0xc020e8c8), SkBits2Float(0x425b8794), SkBits2Float(0xc1c1fa0e)); 10012 path.cubicTo(SkBits2Float(0x42351f87), SkBits2Float(0xc237eb83), SkBits2Float(0x41be1342), SkBits2Float(0xc2700002), SkBits2Float(0xb7240057), SkBits2Float(0xc2700000)); 10013 path.close(); 10014 10015 SkPath path1(path); 10016 path.reset(); 10017 path.setFillType((SkPath::FillType) 0); 10018 path.moveTo(SkBits2Float(0x423bc156), SkBits2Float(0x4288e7b2)); 10019 path.cubicTo(SkBits2Float(0x418c1984), SkBits2Float(0x42b142da), SkBits2Float(0xc1ac2314), SkBits2Float(0x42af7d21), SkBits2Float(0xc247fd43), SkBits2Float(0x428480ce)); 10020 path.cubicTo(SkBits2Float(0xc29cf47f), SkBits2Float(0x423308f3), SkBits2Float(0xc2b411dd), SkBits2Float(0x40ef0242), SkBits2Float(0xc29d6757), SkBits2Float(0xc1d2e807)); 10021 path.cubicTo(SkBits2Float(0xc286bcd2), SkBits2Float(0xc270c84c), SkBits2Float(0xc20eb9e2), SkBits2Float(0xc2a5ffaa), SkBits2Float(0xbac6f0ca), SkBits2Float(0xc2a5ffff)); 10022 path.lineTo(SkBits2Float(0xba901698), SkBits2Float(0xc2700000)); 10023 path.cubicTo(SkBits2Float(0xc1ce59d7), SkBits2Float(0xc26fff83), SkBits2Float(0xc242cd21), SkBits2Float(0xc22e0f3f), SkBits2Float(0xc263924f), SkBits2Float(0xc1987661)); 10024 path.cubicTo(SkBits2Float(0xc2822bbf), SkBits2Float(0x40acc6fd), SkBits2Float(0xc262ec43), SkBits2Float(0x42016c3b), SkBits2Float(0xc2109210), SkBits2Float(0x423f921c)); 10025 path.cubicTo(SkBits2Float(0xc178df72), SkBits2Float(0x427db7fc), SkBits2Float(0x414a8dba), SkBits2Float(0x428023fd), SkBits2Float(0x4207ba05), SkBits2Float(0x4245ef60)); 10026 path.lineTo(SkBits2Float(0x423bc156), SkBits2Float(0x4288e7b2)); 10027 path.close(); 10028 10029 SkPath path2(path); 10030 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10031 } 10032 // op end success 1 10033 10034 static void battleOp1391(skiatest::Reporter* reporter, const char* filename) { 10035 SkPath path; 10036 path.setFillType((SkPath::FillType) 0); 10037 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10038 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10039 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10040 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10041 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10042 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 10043 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10044 path.close(); 10045 10046 SkPath path1(path); 10047 path.reset(); 10048 path.setFillType((SkPath::FillType) 0); 10049 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10050 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10051 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10052 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10053 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10054 path.close(); 10055 10056 SkPath path2(path); 10057 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10058 } 10059 // op end success 1 10060 10061 static void battleOp1392(skiatest::Reporter* reporter, const char* filename) { 10062 SkPath path; 10063 path.setFillType((SkPath::FillType) 1); 10064 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10065 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10066 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10067 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10068 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10069 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10070 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10071 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10072 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10073 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10074 path.close(); 10075 10076 SkPath path1(path); 10077 path.reset(); 10078 path.setFillType((SkPath::FillType) 0); 10079 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10080 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 10081 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 10082 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 10083 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 10084 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 10085 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 10086 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10087 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10088 path.close(); 10089 10090 SkPath path2(path); 10091 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10092 } 10093 // op end success 1 10094 10095 static void battleOp1393(skiatest::Reporter* reporter, const char* filename) { 10096 SkPath path; 10097 path.setFillType((SkPath::FillType) 0); 10098 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10099 path.cubicTo(SkBits2Float(0x3c436965), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3cc36072), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d128619), SkBits2Float(0xc2a5fffe)); 10100 path.lineTo(SkBits2Float(0x3cd3db06), SkBits2Float(0xc26fffff)); 10101 path.cubicTo(SkBits2Float(0x3c8d3d03), SkBits2Float(0xc2700000), SkBits2Float(0x3c0d4407), SkBits2Float(0xc2700000), SkBits2Float(0x36606a00), SkBits2Float(0xc2700000)); 10102 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10103 path.close(); 10104 10105 SkPath path1(path); 10106 path.reset(); 10107 path.setFillType((SkPath::FillType) 0); 10108 path.moveTo(SkBits2Float(0x3d12888d), SkBits2Float(0xc2a5ffff)); 10109 path.cubicTo(SkBits2Float(0x3d176d55), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d1c4dcb), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d212e40), SkBits2Float(0xc2a5ffff)); 10110 path.lineTo(SkBits2Float(0x3ce90a84), SkBits2Float(0xc26ffffe)); 10111 path.cubicTo(SkBits2Float(0x3ce1ffb6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3cdaedb6), SkBits2Float(0xc26fffff), SkBits2Float(0x3cd3dbb7), SkBits2Float(0xc26fffff)); 10112 path.lineTo(SkBits2Float(0x3d12888d), SkBits2Float(0xc2a5ffff)); 10113 path.close(); 10114 10115 SkPath path2(path); 10116 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10117 } 10118 // op end success 1 10119 10120 static void battleOp1394(skiatest::Reporter* reporter, const char* filename) { 10121 SkPath path; 10122 path.setFillType((SkPath::FillType) 1); 10123 path.moveTo(SkBits2Float(0x36606a00), SkBits2Float(0xc2700000)); 10124 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10125 path.cubicTo(SkBits2Float(0x3c436965), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3cc36072), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d128619), SkBits2Float(0xc2a5fffe)); 10126 path.lineTo(SkBits2Float(0x3d12888d), SkBits2Float(0xc2a5ffff)); 10127 path.lineTo(SkBits2Float(0x3d212e40), SkBits2Float(0xc2a5ffff)); 10128 path.lineTo(SkBits2Float(0x3ce90a84), SkBits2Float(0xc26ffffe)); 10129 path.cubicTo(SkBits2Float(0x3ce1ffb6), SkBits2Float(0xc26ffffe), SkBits2Float(0x3cdaedb6), SkBits2Float(0xc26fffff), SkBits2Float(0x3cd3db06), SkBits2Float(0xc26fffff)); 10130 path.cubicTo(SkBits2Float(0x3c8d3d03), SkBits2Float(0xc2700000), SkBits2Float(0x3c0d4407), SkBits2Float(0xc2700000), SkBits2Float(0x36606a00), SkBits2Float(0xc2700000)); 10131 path.close(); 10132 10133 SkPath path1(path); 10134 path.reset(); 10135 path.setFillType((SkPath::FillType) 0); 10136 path.moveTo(SkBits2Float(0x3d212fd0), SkBits2Float(0xc2a5ffff)); 10137 path.cubicTo(SkBits2Float(0x3d705530), SkBits2Float(0xc2a5fffe), SkBits2Float(0x3d9fbf82), SkBits2Float(0xc2a5fffc), SkBits2Float(0x3dc7546b), SkBits2Float(0xc2a5fffa)); 10138 path.lineTo(SkBits2Float(0x3d901696), SkBits2Float(0xc26ffff5)); 10139 path.cubicTo(SkBits2Float(0x3d66f230), SkBits2Float(0xc26ffff9), SkBits2Float(0x3d2dbab1), SkBits2Float(0xc26ffffc), SkBits2Float(0x3ce90664), SkBits2Float(0xc26ffffe)); 10140 path.lineTo(SkBits2Float(0x3d212fd0), SkBits2Float(0xc2a5ffff)); 10141 path.close(); 10142 10143 SkPath path2(path); 10144 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10145 } 10146 // op end success 1 10147 10148 static void battleOp1395(skiatest::Reporter* reporter, const char* filename) { 10149 SkPath path; 10150 path.setFillType((SkPath::FillType) 0); 10151 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10152 path.cubicTo(SkBits2Float(0x3e06023f), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e860192), SkBits2Float(0xc2a5ffd6), SkBits2Float(0x3ec901db), SkBits2Float(0xc2a5ff85)); 10153 path.lineTo(SkBits2Float(0x3e914e16), SkBits2Float(0xc26fff50)); 10154 path.cubicTo(SkBits2Float(0x3e41bddf), SkBits2Float(0xc26fffc5), SkBits2Float(0x3dc1be4c), SkBits2Float(0xc26fffff), SkBits2Float(0x35c55da0), SkBits2Float(0xc26fffff)); 10155 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10156 path.close(); 10157 10158 SkPath path1(path); 10159 path.reset(); 10160 path.setFillType((SkPath::FillType) 0); 10161 path.moveTo(SkBits2Float(0x3ec9015b), SkBits2Float(0xc2a5ff86)); 10162 path.cubicTo(SkBits2Float(0x3ecfb4f0), SkBits2Float(0xc2a5ff7d), SkBits2Float(0x3ed66842), SkBits2Float(0xc2a5ff75), SkBits2Float(0x3edd1b92), SkBits2Float(0xc2a5ff6c)); 10163 path.lineTo(SkBits2Float(0x3e9fd5de), SkBits2Float(0xc26fff2b)); 10164 path.cubicTo(SkBits2Float(0x3e9afe3a), SkBits2Float(0xc26fff39), SkBits2Float(0x3e96263d), SkBits2Float(0xc26fff45), SkBits2Float(0x3e914e41), SkBits2Float(0xc26fff51)); 10165 path.lineTo(SkBits2Float(0x3ec9015b), SkBits2Float(0xc2a5ff86)); 10166 path.close(); 10167 10168 SkPath path2(path); 10169 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10170 } 10171 // op end success 1 10172 10173 static void battleOp1396(skiatest::Reporter* reporter, const char* filename) { 10174 SkPath path; 10175 path.setFillType((SkPath::FillType) 1); 10176 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 10177 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10178 path.cubicTo(SkBits2Float(0x3e0601e9), SkBits2Float(0xc2a60000), SkBits2Float(0x3e86013c), SkBits2Float(0xc2a5ffd6), SkBits2Float(0x3ec9015a), SkBits2Float(0xc2a5ff85)); 10179 path.lineTo(SkBits2Float(0x3ec9015b), SkBits2Float(0xc2a5ff86)); 10180 path.cubicTo(SkBits2Float(0x3ecfb4f0), SkBits2Float(0xc2a5ff7d), SkBits2Float(0x3ed66842), SkBits2Float(0xc2a5ff75), SkBits2Float(0x3edd1b92), SkBits2Float(0xc2a5ff6c)); 10181 path.lineTo(SkBits2Float(0x3e9fd5de), SkBits2Float(0xc26fff2b)); 10182 path.cubicTo(SkBits2Float(0x3e9afe3a), SkBits2Float(0xc26fff39), SkBits2Float(0x3e96263d), SkBits2Float(0xc26fff45), SkBits2Float(0x3e914e16), SkBits2Float(0xc26fff50)); 10183 path.cubicTo(SkBits2Float(0x3e41bddf), SkBits2Float(0xc26fffc5), SkBits2Float(0x3dc1be4c), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 10184 path.close(); 10185 10186 SkPath path1(path); 10187 path.reset(); 10188 path.setFillType((SkPath::FillType) 0); 10189 path.moveTo(SkBits2Float(0x3edd1b0d), SkBits2Float(0xc2a5ff6d)); 10190 path.cubicTo(SkBits2Float(0x3f24d70e), SkBits2Float(0xc2a5fedc), SkBits2Float(0x3f5b204e), SkBits2Float(0xc2a5fde1), SkBits2Float(0x3f88b475), SkBits2Float(0xc2a5fc7b)); 10191 path.lineTo(SkBits2Float(0x3f45a57e), SkBits2Float(0xc26ffaea)); 10192 path.cubicTo(SkBits2Float(0x3f1e67a6), SkBits2Float(0xc26ffcf1), SkBits2Float(0x3eee52e7), SkBits2Float(0xc26ffe5c), SkBits2Float(0x3e9fd606), SkBits2Float(0xc26fff2d)); 10193 path.lineTo(SkBits2Float(0x3edd1b0d), SkBits2Float(0xc2a5ff6d)); 10194 path.close(); 10195 10196 SkPath path2(path); 10197 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10198 } 10199 10200 static void battleOp2193(skiatest::Reporter* reporter, const char* filename) { 10201 SkPath path; 10202 path.setFillType((SkPath::FillType) 0); 10203 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10204 path.cubicTo(SkBits2Float(0x3e3881bc), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88238), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19)); 10205 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2)); 10206 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000)); 10207 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10208 path.close(); 10209 10210 SkPath path1(path); 10211 path.reset(); 10212 path.setFillType((SkPath::FillType) 0); 10213 path.moveTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19)); 10214 path.cubicTo(SkBits2Float(0x3f0efe46), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b44), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9)); 10215 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c)); 10216 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2)); 10217 path.lineTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19)); 10218 path.close(); 10219 10220 SkPath path2(path); 10221 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10222 } 10223 // op end success 1 10224 10225 static void battleOp2194(skiatest::Reporter* reporter, const char* filename) { 10226 SkPath path; 10227 path.setFillType((SkPath::FillType) 1); 10228 path.moveTo(SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000)); 10229 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10230 path.cubicTo(SkBits2Float(0x3e3881ab), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88227), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19)); 10231 path.lineTo(SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19)); 10232 path.cubicTo(SkBits2Float(0x3f0efe4f), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b48), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9)); 10233 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c)); 10234 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2)); 10235 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2)); 10236 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000)); 10237 path.close(); 10238 10239 SkPath path1(path); 10240 path.reset(); 10241 path.setFillType((SkPath::FillType) 0); 10242 path.moveTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9)); 10243 path.cubicTo(SkBits2Float(0x3f62f7a2), SkBits2Float(0xc2a5fdd7), SkBits2Float(0x3f96db12), SkBits2Float(0xc2a5fbfa), SkBits2Float(0x3fbc3981), SkBits2Float(0xc2a5f954)); 10244 path.lineTo(SkBits2Float(0x3f8810cc), SkBits2Float(0xc26ff65b)); 10245 path.cubicTo(SkBits2Float(0x3f5a1a86), SkBits2Float(0xc26ffa2f), SkBits2Float(0x3f241256), SkBits2Float(0xc26ffcdf), SkBits2Float(0x3edc1312), SkBits2Float(0xc26ffe6c)); 10246 path.lineTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9)); 10247 path.close(); 10248 10249 SkPath path2(path); 10250 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10251 } 10252 10253 static void battleOp3368(skiatest::Reporter* reporter, const char* filename) { 10254 SkPath path; 10255 path.setFillType((SkPath::FillType) 1); 10256 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10257 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10258 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10259 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10260 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10261 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10262 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10263 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10264 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10265 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10266 path.close(); 10267 10268 SkPath path1(path); 10269 path.reset(); 10270 path.setFillType((SkPath::FillType) 0); 10271 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10272 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 10273 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 10274 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 10275 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 10276 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 10277 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 10278 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10279 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10280 path.close(); 10281 10282 SkPath path2(path); 10283 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10284 } 10285 // op end success 1 10286 10287 static void battleOp3369(skiatest::Reporter* reporter, const char* filename) { 10288 SkPath path; 10289 path.setFillType((SkPath::FillType) 0); 10290 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10291 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10292 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10293 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10294 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10295 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 10296 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10297 path.close(); 10298 10299 SkPath path1(path); 10300 path.reset(); 10301 path.setFillType((SkPath::FillType) 0); 10302 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10303 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10304 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10305 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10306 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10307 path.close(); 10308 10309 SkPath path2(path); 10310 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10311 } 10312 // op end success 1 10313 10314 static void battleOp3370(skiatest::Reporter* reporter, const char* filename) { 10315 SkPath path; 10316 path.setFillType((SkPath::FillType) 1); 10317 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10318 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10319 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10320 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10321 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10322 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10323 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10324 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10325 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10326 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10327 path.close(); 10328 10329 SkPath path1(path); 10330 path.reset(); 10331 path.setFillType((SkPath::FillType) 0); 10332 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10333 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 10334 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 10335 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 10336 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 10337 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 10338 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 10339 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10340 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10341 path.close(); 10342 10343 SkPath path2(path); 10344 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10345 } 10346 // op end success 1 10347 10348 static void battleOp3371(skiatest::Reporter* reporter, const char* filename) { 10349 SkPath path; 10350 path.setFillType((SkPath::FillType) 0); 10351 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10352 path.cubicTo(SkBits2Float(0x3c85f8a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d05fda5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d48fefa), SkBits2Float(0xc2a5fffd)); 10353 path.lineTo(SkBits2Float(0x3d114e3a), SkBits2Float(0xc26ffffd)); 10354 path.cubicTo(SkBits2Float(0x3cc1c2c0), SkBits2Float(0xc26fffff), SkBits2Float(0x3c41c57e), SkBits2Float(0xc26fffff), SkBits2Float(0x35afaa00), SkBits2Float(0xc26fffff)); 10355 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10356 path.close(); 10357 10358 SkPath path1(path); 10359 path.reset(); 10360 path.setFillType((SkPath::FillType) 0); 10361 path.moveTo(SkBits2Float(0x3d49018c), SkBits2Float(0xc2a5fffe)); 10362 path.cubicTo(SkBits2Float(0x3d4fb7df), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5667bf), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5d179f), SkBits2Float(0xc2a5fffd)); 10363 path.lineTo(SkBits2Float(0x3d1fd60d), SkBits2Float(0xc26ffffd)); 10364 path.cubicTo(SkBits2Float(0x3d1afde4), SkBits2Float(0xc26fffff), SkBits2Float(0x3d162864), SkBits2Float(0xc26fffff), SkBits2Float(0x3d1152e4), SkBits2Float(0xc26fffff)); 10365 path.lineTo(SkBits2Float(0x3d49018c), SkBits2Float(0xc2a5fffe)); 10366 path.close(); 10367 10368 SkPath path2(path); 10369 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10370 } 10371 // op end success 1 10372 10373 static void battleOp3372(skiatest::Reporter* reporter, const char* filename) { 10374 SkPath path; 10375 path.setFillType((SkPath::FillType) 1); 10376 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 10377 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10378 path.cubicTo(SkBits2Float(0x3c85f8a2), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d05fda5), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d48fefa), SkBits2Float(0xc2a5fffd)); 10379 path.lineTo(SkBits2Float(0x3d49018c), SkBits2Float(0xc2a5fffe)); 10380 path.cubicTo(SkBits2Float(0x3d4fb7df), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5667bf), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d5d179f), SkBits2Float(0xc2a5fffd)); 10381 path.lineTo(SkBits2Float(0x3d1fd60d), SkBits2Float(0xc26ffffd)); 10382 path.cubicTo(SkBits2Float(0x3d1afde4), SkBits2Float(0xc26fffff), SkBits2Float(0x3d162864), SkBits2Float(0xc26fffff), SkBits2Float(0x3d1152e4), SkBits2Float(0xc26fffff)); 10383 path.lineTo(SkBits2Float(0x3d114e3a), SkBits2Float(0xc26ffffd)); 10384 path.cubicTo(SkBits2Float(0x3cc1c2c0), SkBits2Float(0xc26fffff), SkBits2Float(0x3c41c57e), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 10385 path.close(); 10386 10387 SkPath path1(path); 10388 path.reset(); 10389 path.setFillType((SkPath::FillType) 0); 10390 path.moveTo(SkBits2Float(0x3d5d1b4e), SkBits2Float(0xc2a5fffe)); 10391 path.cubicTo(SkBits2Float(0x3da4d661), SkBits2Float(0xc2a5fffc), SkBits2Float(0x3ddb1fb1), SkBits2Float(0xc2a5fff8), SkBits2Float(0x3e08b47e), SkBits2Float(0xc2a5fff2)); 10392 path.lineTo(SkBits2Float(0x3dc5a6e0), SkBits2Float(0xc26fffec)); 10393 path.cubicTo(SkBits2Float(0x3d9e671d), SkBits2Float(0xc26ffff6), SkBits2Float(0x3d6e51bc), SkBits2Float(0xc26ffffb), SkBits2Float(0x3d1fd53d), SkBits2Float(0xc26ffffe)); 10394 path.lineTo(SkBits2Float(0x3d5d1b4e), SkBits2Float(0xc2a5fffe)); 10395 path.close(); 10396 10397 SkPath path2(path); 10398 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10399 } 10400 10401 static void battleOp4290(skiatest::Reporter* reporter, const char* filename) { 10402 SkPath path; 10403 path.setFillType((SkPath::FillType) 1); 10404 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10405 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10406 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10407 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10408 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10409 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10410 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10411 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10412 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10413 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10414 path.close(); 10415 10416 SkPath path1(path); 10417 path.reset(); 10418 path.setFillType((SkPath::FillType) 0); 10419 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10420 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 10421 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 10422 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 10423 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 10424 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 10425 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 10426 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10427 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10428 path.close(); 10429 10430 SkPath path2(path); 10431 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10432 } 10433 // op end success 1 10434 10435 static void battleOp4291(skiatest::Reporter* reporter, const char* filename) { 10436 SkPath path; 10437 path.setFillType((SkPath::FillType) 0); 10438 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10439 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10440 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10441 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10442 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10443 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 10444 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10445 path.close(); 10446 10447 SkPath path1(path); 10448 path.reset(); 10449 path.setFillType((SkPath::FillType) 0); 10450 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10451 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10452 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10453 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10454 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10455 path.close(); 10456 10457 SkPath path2(path); 10458 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10459 } 10460 // op end success 1 10461 10462 static void battleOp4292(skiatest::Reporter* reporter, const char* filename) { 10463 SkPath path; 10464 path.setFillType((SkPath::FillType) 1); 10465 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10466 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10467 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10468 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10469 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10470 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10471 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10472 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10473 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10474 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10475 path.close(); 10476 10477 SkPath path1(path); 10478 path.reset(); 10479 path.setFillType((SkPath::FillType) 0); 10480 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10481 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 10482 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 10483 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 10484 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 10485 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 10486 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 10487 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10488 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10489 path.close(); 10490 10491 SkPath path2(path); 10492 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10493 } 10494 // op end success 1 10495 10496 static void battleOp4293(skiatest::Reporter* reporter, const char* filename) { 10497 SkPath path; 10498 path.setFillType((SkPath::FillType) 0); 10499 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10500 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10501 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10502 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10503 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10504 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x357ffa94), SkBits2Float(0xc2700000)); 10505 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10506 path.close(); 10507 10508 SkPath path1(path); 10509 path.reset(); 10510 path.setFillType((SkPath::FillType) 0); 10511 path.moveTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10512 path.cubicTo(SkBits2Float(0x42643732), SkBits2Float(0x42727ac8), SkBits2Float(0x4250db30), SkBits2Float(0x4281abaa), SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10513 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10514 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10515 path.lineTo(SkBits2Float(0x42757226), SkBits2Float(0x425f9012)); 10516 path.close(); 10517 10518 SkPath path2(path); 10519 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10520 } 10521 // op end success 1 10522 10523 static void battleOp4294(skiatest::Reporter* reporter, const char* filename) { 10524 SkPath path; 10525 path.setFillType((SkPath::FillType) 1); 10526 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10527 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10528 path.cubicTo(SkBits2Float(0x42037818), SkBits2Float(0xc2a60000), SkBits2Float(0x427a8dee), SkBits2Float(0xc27e6c10), SkBits2Float(0x4297d76f), SkBits2Float(0xc2062a8f)); 10529 path.cubicTo(SkBits2Float(0x42b267e8), SkBits2Float(0xc05e90e8), SkBits2Float(0x42a6fcc7), SkBits2Float(0x41fcbc94), SkBits2Float(0x42757227), SkBits2Float(0x425f9011)); 10530 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10531 path.lineTo(SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10532 path.cubicTo(SkBits2Float(0x4216fafb), SkBits2Float(0x423b79ba), SkBits2Float(0x4224f9a4), SkBits2Float(0x422f4956), SkBits2Float(0x42316e48), SkBits2Float(0x42219c94)); 10533 path.lineTo(SkBits2Float(0x42316e47), SkBits2Float(0x42219c94)); 10534 path.cubicTo(SkBits2Float(0x42716d77), SkBits2Float(0x41b6b381), SkBits2Float(0x4280f7d6), SkBits2Float(0xc020e418), SkBits2Float(0x425b87ab), SkBits2Float(0xc1c1f9ac)); 10535 path.cubicTo(SkBits2Float(0x42351faa), SkBits2Float(0xc237eb6b), SkBits2Float(0x41be136b), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10536 path.close(); 10537 10538 SkPath path1(path); 10539 path.reset(); 10540 path.setFillType((SkPath::FillType) 0); 10541 path.moveTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10542 path.cubicTo(SkBits2Float(0x418c17fd), SkBits2Float(0x42b142f1), SkBits2Float(0xc1ac24e4), SkBits2Float(0x42af7d09), SkBits2Float(0xc247fe03), SkBits2Float(0x42848083)); 10543 path.cubicTo(SkBits2Float(0xc29cf4c9), SkBits2Float(0x423307fa), SkBits2Float(0xc2b411ee), SkBits2Float(0x40eef84a), SkBits2Float(0xc29d6723), SkBits2Float(0xc1d2ea61)); 10544 path.cubicTo(SkBits2Float(0xc286bc59), SkBits2Float(0xc270c968), SkBits2Float(0xc20eb871), SkBits2Float(0xc2a5ffff), SkBits2Float(0xb5c727ee), SkBits2Float(0xc2a5ffff)); 10545 path.lineTo(SkBits2Float(0x293e5cb4), SkBits2Float(0xc2700000)); 10546 path.cubicTo(SkBits2Float(0xc1ce57c4), SkBits2Float(0xc2700000), SkBits2Float(0xc242cc76), SkBits2Float(0xc22e100c), SkBits2Float(0xc2639208), SkBits2Float(0xc1987810)); 10547 path.cubicTo(SkBits2Float(0xc2822bcd), SkBits2Float(0x40acbfe2), SkBits2Float(0xc262ecb3), SkBits2Float(0x42016b8c), SkBits2Float(0xc210929c), SkBits2Float(0x423f91b4)); 10548 path.cubicTo(SkBits2Float(0xc178e211), SkBits2Float(0x427db7dc), SkBits2Float(0x414a8b85), SkBits2Float(0x4280240f), SkBits2Float(0x4207b9a6), SkBits2Float(0x4245efa0)); 10549 path.lineTo(SkBits2Float(0x423bc0d1), SkBits2Float(0x4288e7e0)); 10550 path.close(); 10551 10552 SkPath path2(path); 10553 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10554 } 10555 // op end success 1 10556 10557 static void battleOp4295(skiatest::Reporter* reporter, const char* filename) { 10558 SkPath path; 10559 path.setFillType((SkPath::FillType) 0); 10560 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10561 path.cubicTo(SkBits2Float(0x3e3881bc), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88238), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19)); 10562 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2)); 10563 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000)); 10564 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10565 path.close(); 10566 10567 SkPath path1(path); 10568 path.reset(); 10569 path.setFillType((SkPath::FillType) 0); 10570 path.moveTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19)); 10571 path.cubicTo(SkBits2Float(0x3f0efe46), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b44), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9)); 10572 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c)); 10573 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2)); 10574 path.lineTo(SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19)); 10575 path.close(); 10576 10577 SkPath path2(path); 10578 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10579 } 10580 // op end success 1 10581 10582 static void battleOp4296(skiatest::Reporter* reporter, const char* filename) { 10583 SkPath path; 10584 path.setFillType((SkPath::FillType) 1); 10585 path.moveTo(SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000)); 10586 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10587 path.cubicTo(SkBits2Float(0x3e3881ab), SkBits2Float(0xc2a60000), SkBits2Float(0x3eb88227), SkBits2Float(0xc2a5ffb3), SkBits2Float(0x3f0a6183), SkBits2Float(0xc2a5ff19)); 10588 path.lineTo(SkBits2Float(0x3f0a6190), SkBits2Float(0xc2a5ff19)); 10589 path.cubicTo(SkBits2Float(0x3f0efe4f), SkBits2Float(0xc2a5ff0a), SkBits2Float(0x3f139b48), SkBits2Float(0xc2a5fef9), SkBits2Float(0x3f183842), SkBits2Float(0xc2a5fee9)); 10590 path.lineTo(SkBits2Float(0x3edc1349), SkBits2Float(0xc26ffe6c)); 10591 path.cubicTo(SkBits2Float(0x3ed567f5), SkBits2Float(0xc26ffe84), SkBits2Float(0x3ecebccf), SkBits2Float(0xc26ffe9c), SkBits2Float(0x3ec811a8), SkBits2Float(0xc26ffeb2)); 10592 path.lineTo(SkBits2Float(0x3ec8119b), SkBits2Float(0xc26ffeb2)); 10593 path.cubicTo(SkBits2Float(0x3e856151), SkBits2Float(0xc26fff91), SkBits2Float(0x3e0561b2), SkBits2Float(0xc2700000), SkBits2Float(0x3629eed0), SkBits2Float(0xc2700000)); 10594 path.close(); 10595 10596 SkPath path1(path); 10597 path.reset(); 10598 path.setFillType((SkPath::FillType) 0); 10599 path.moveTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9)); 10600 path.cubicTo(SkBits2Float(0x3f62f7a2), SkBits2Float(0xc2a5fdd7), SkBits2Float(0x3f96db12), SkBits2Float(0xc2a5fbfa), SkBits2Float(0x3fbc3981), SkBits2Float(0xc2a5f954)); 10601 path.lineTo(SkBits2Float(0x3f8810cc), SkBits2Float(0xc26ff65b)); 10602 path.cubicTo(SkBits2Float(0x3f5a1a86), SkBits2Float(0xc26ffa2f), SkBits2Float(0x3f241256), SkBits2Float(0xc26ffcdf), SkBits2Float(0x3edc1312), SkBits2Float(0xc26ffe6c)); 10603 path.lineTo(SkBits2Float(0x3f183800), SkBits2Float(0xc2a5fee9)); 10604 path.close(); 10605 10606 SkPath path2(path); 10607 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10608 } 10609 10610 static void battleOp5193(skiatest::Reporter* reporter, const char* filename) { 10611 SkPath path; 10612 path.setFillType((SkPath::FillType) 0); 10613 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10614 path.cubicTo(SkBits2Float(0x3e0b17ea), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3e8b17df), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a399), SkBits2Float(0xc2a5ff7c)); 10615 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42)); 10616 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x340ae940), SkBits2Float(0xc2700000)); 10617 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10618 path.close(); 10619 10620 SkPath path1(path); 10621 path.reset(); 10622 path.setFillType((SkPath::FillType) 0); 10623 path.moveTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d)); 10624 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60)); 10625 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b)); 10626 path.cubicTo(SkBits2Float(0x3ea0e0aa), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd97e), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d252), SkBits2Float(0xc26fff43)); 10627 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d)); 10628 path.close(); 10629 10630 SkPath path2(path); 10631 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10632 } 10633 // op end success 1 10634 10635 static void battleOp5194(skiatest::Reporter* reporter, const char* filename) { 10636 SkPath path; 10637 path.setFillType((SkPath::FillType) 1); 10638 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10639 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10640 path.cubicTo(SkBits2Float(0x3e0b17a8), SkBits2Float(0xc2a60000), SkBits2Float(0x3e8b179e), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a337), SkBits2Float(0xc2a5ff7c)); 10641 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d)); 10642 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60)); 10643 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b)); 10644 path.cubicTo(SkBits2Float(0x3ea0e0bb), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd9a1), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d286), SkBits2Float(0xc26fff43)); 10645 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42)); 10646 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10647 path.close(); 10648 10649 SkPath path1(path); 10650 path.reset(); 10651 path.setFillType((SkPath::FillType) 0); 10652 path.moveTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61)); 10653 path.cubicTo(SkBits2Float(0x3f2b1987), SkBits2Float(0xc2a5fec4), SkBits2Float(0x3f637253), SkBits2Float(0xc2a5fdb6), SkBits2Float(0x3f8de535), SkBits2Float(0xc2a5fc35)); 10654 path.lineTo(SkBits2Float(0x3f4d269a), SkBits2Float(0xc26ffa85)); 10655 path.cubicTo(SkBits2Float(0x3f246b51), SkBits2Float(0xc26ffcb3), SkBits2Float(0x3ef75f30), SkBits2Float(0xc26ffe3a), SkBits2Float(0x3ea5e737), SkBits2Float(0xc26fff1c)); 10656 path.lineTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61)); 10657 path.close(); 10658 10659 SkPath path2(path); 10660 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10661 } 10662 10663 static void battleOp402(skiatest::Reporter* reporter, const char* filename) { 10664 SkPath path; 10665 path.setFillType((SkPath::FillType) 1); 10666 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10667 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10668 path.cubicTo(SkBits2Float(0x3e0b17a8), SkBits2Float(0xc2a60000), SkBits2Float(0x3e8b179e), SkBits2Float(0xc2a5ffd4), SkBits2Float(0x3ed0a337), SkBits2Float(0xc2a5ff7c)); 10669 path.lineTo(SkBits2Float(0x3ed0a338), SkBits2Float(0xc2a5ff7d)); 10670 path.cubicTo(SkBits2Float(0x3ed797a0), SkBits2Float(0xc2a5ff73), SkBits2Float(0x3ede8c36), SkBits2Float(0xc2a5ff6a), SkBits2Float(0x3ee580cb), SkBits2Float(0xc2a5ff60)); 10671 path.lineTo(SkBits2Float(0x3ea5e78a), SkBits2Float(0xc26fff1b)); 10672 path.cubicTo(SkBits2Float(0x3ea0e0bb), SkBits2Float(0xc26fff29), SkBits2Float(0x3e9bd9a1), SkBits2Float(0xc26fff36), SkBits2Float(0x3e96d286), SkBits2Float(0xc26fff43)); 10673 path.lineTo(SkBits2Float(0x3e96d285), SkBits2Float(0xc26fff42)); 10674 path.cubicTo(SkBits2Float(0x3e491945), SkBits2Float(0xc26fffc2), SkBits2Float(0x3dc91958), SkBits2Float(0xc2700000), SkBits2Float(0x00000000), SkBits2Float(0xc2700000)); 10675 path.close(); 10676 10677 SkPath path1(path); 10678 path.reset(); 10679 path.setFillType((SkPath::FillType) 0); 10680 path.moveTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61)); 10681 path.cubicTo(SkBits2Float(0x3f2b1987), SkBits2Float(0xc2a5fec4), SkBits2Float(0x3f637253), SkBits2Float(0xc2a5fdb6), SkBits2Float(0x3f8de535), SkBits2Float(0xc2a5fc35)); 10682 path.lineTo(SkBits2Float(0x3f4d269a), SkBits2Float(0xc26ffa85)); 10683 path.cubicTo(SkBits2Float(0x3f246b51), SkBits2Float(0xc26ffcb3), SkBits2Float(0x3ef75f30), SkBits2Float(0xc26ffe3a), SkBits2Float(0x3ea5e737), SkBits2Float(0xc26fff1c)); 10684 path.lineTo(SkBits2Float(0x3ee58048), SkBits2Float(0xc2a5ff61)); 10685 path.close(); 10686 10687 SkPath path2(path); 10688 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10689 } 10690 10691 static void battleOp6000(skiatest::Reporter* reporter, const char* filename) { 10692 SkPath path; 10693 path.setFillType((SkPath::FillType) 0); 10694 path.moveTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10695 path.cubicTo(SkBits2Float(0x3c9b2383), SkBits2Float(0xc2a60000), SkBits2Float(0x3d1b200b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d68ae54), SkBits2Float(0xc2a5fffd)); 10696 path.lineTo(SkBits2Float(0x3d283599), SkBits2Float(0xc26ffffc)); 10697 path.cubicTo(SkBits2Float(0x3ce049ca), SkBits2Float(0xc26ffffe), SkBits2Float(0x3c604794), SkBits2Float(0xc26fffff), SkBits2Float(0xb58d9000), SkBits2Float(0xc26fffff)); 10698 path.lineTo(SkBits2Float(0x27b71bcd), SkBits2Float(0xc2a60000)); 10699 path.close(); 10700 10701 SkPath path1(path); 10702 path.reset(); 10703 path.setFillType((SkPath::FillType) 0); 10704 path.moveTo(SkBits2Float(0x3d68b08b), SkBits2Float(0xc2a5fffd)); 10705 path.cubicTo(SkBits2Float(0x3d707589), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d783329), SkBits2Float(0xc2a5fffd), SkBits2Float(0x3d7ff0c9), SkBits2Float(0xc2a5fffd)); 10706 path.lineTo(SkBits2Float(0x3d3907c2), SkBits2Float(0xc26ffffc)); 10707 path.cubicTo(SkBits2Float(0x3d336bee), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d2dd36e), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d283aee), SkBits2Float(0xc26ffffd)); 10708 path.lineTo(SkBits2Float(0x3d68b08b), SkBits2Float(0xc2a5fffd)); 10709 path.close(); 10710 10711 SkPath path2(path); 10712 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10713 } 10714 10715 static void battleOp6001(skiatest::Reporter* reporter, const char* filename) { 10716 SkPath path; 10717 path.setFillType((SkPath::FillType) 1); 10718 path.moveTo(SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 10719 path.lineTo(SkBits2Float(0x00000000), SkBits2Float(0xc2a60000)); 10720 path.cubicTo(SkBits2Float(0x3c9b2383), SkBits2Float(0xc2a60000), SkBits2Float(0x3d1b200b), SkBits2Float(0xc2a5ffff), SkBits2Float(0x3d68ae54), SkBits2Float(0xc2a5fffd)); 10721 path.lineTo(SkBits2Float(0x3d7ff0c9), SkBits2Float(0xc2a5fffd)); 10722 path.lineTo(SkBits2Float(0x3d3907c2), SkBits2Float(0xc26ffffc)); 10723 path.cubicTo(SkBits2Float(0x3d336bee), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d2dd36e), SkBits2Float(0xc26ffffd), SkBits2Float(0x3d283aee), SkBits2Float(0xc26ffffd)); 10724 path.lineTo(SkBits2Float(0x3d283599), SkBits2Float(0xc26ffffc)); 10725 path.cubicTo(SkBits2Float(0x3ce049ca), SkBits2Float(0xc26ffffe), SkBits2Float(0x3c604794), SkBits2Float(0xc26fffff), SkBits2Float(0x00000000), SkBits2Float(0xc26fffff)); 10726 path.close(); 10727 10728 SkPath path1(path); 10729 path.reset(); 10730 path.setFillType((SkPath::FillType) 0); 10731 path.moveTo(SkBits2Float(0x3d7ff566), SkBits2Float(0xc2a5fffd)); 10732 path.cubicTo(SkBits2Float(0x3dbed1a5), SkBits2Float(0xc2a5fffa), SkBits2Float(0x3dfda9cc), SkBits2Float(0xc2a5fff4), SkBits2Float(0x3e1e40f8), SkBits2Float(0xc2a5ffed)); 10733 path.lineTo(SkBits2Float(0x3de4ce81), SkBits2Float(0xc26fffe5)); 10734 path.cubicTo(SkBits2Float(0x3db75eff), SkBits2Float(0xc26ffff0), SkBits2Float(0x3d89f101), SkBits2Float(0xc26ffff8), SkBits2Float(0x3d390604), SkBits2Float(0xc26ffffc)); 10735 path.lineTo(SkBits2Float(0x3d7ff566), SkBits2Float(0xc2a5fffd)); 10736 path.close(); 10737 10738 SkPath path2(path); 10739 testPathOp(reporter, path1, path2, (SkPathOp) 2, filename); 10740 } 10741 10742 static void (*firstTest)(skiatest::Reporter* , const char* filename) = battleOp6001; 10743 static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0; 10744 10745 static struct TestDesc tests[] = { 10746 TEST(battleOp1), 10747 TEST(battleOp2), 10748 TEST(battleOp3), 10749 TEST(battleOp4), 10750 TEST(battleOp5), 10751 TEST(battleOp6), 10752 TEST(battleOp7), 10753 TEST(battleOp8), 10754 TEST(battleOp9), 10755 TEST(battleOp10), 10756 10757 TEST(battleOp11), 10758 TEST(battleOp12), 10759 TEST(battleOp13), 10760 TEST(battleOp14), 10761 TEST(battleOp15), 10762 TEST(battleOp16), 10763 TEST(battleOp17), 10764 TEST(battleOp18), 10765 TEST(battleOp19), 10766 TEST(battleOp20), 10767 10768 TEST(battleOp21), 10769 TEST(battleOp22), 10770 TEST(battleOp23), 10771 TEST(battleOp24), 10772 TEST(battleOp25), 10773 TEST(battleOp26), 10774 TEST(battleOp27), 10775 TEST(battleOp28), 10776 TEST(battleOp29), 10777 TEST(battleOp30), 10778 10779 TEST(battleOp31), 10780 TEST(battleOp32), 10781 TEST(battleOp33), 10782 TEST(battleOp34), 10783 TEST(battleOp35), 10784 TEST(battleOp36), 10785 TEST(battleOp37), 10786 TEST(battleOp38), 10787 TEST(battleOp39), 10788 TEST(battleOp40), 10789 10790 TEST(battleOp41), 10791 TEST(battleOp42), 10792 TEST(battleOp43), 10793 TEST(battleOp44), 10794 TEST(battleOp45), 10795 TEST(battleOp46), // draws wrong : dropped an outer cubic incorrectly 10796 // if assembly rewrite was done, the error would be hidden 10797 TEST(battleOp47), 10798 TEST(battleOp48), 10799 TEST(battleOp49), 10800 TEST(battleOp50), 10801 10802 TEST(battleOp51), 10803 TEST(battleOp52), 10804 TEST(battleOp53), 10805 TEST(battleOp54), // draws wrong 10806 TEST(battleOp55), 10807 TEST(battleOp56), 10808 TEST(battleOp57), 10809 TEST(battleOp58), 10810 TEST(battleOp59), // draws wrong 10811 TEST(battleOp60), 10812 10813 TEST(battleOp61), 10814 TEST(battleOp62), 10815 TEST(battleOp63), // draws wrong 10816 TEST(battleOp64), 10817 TEST(battleOp65), 10818 TEST(battleOp66), 10819 TEST(battleOp67), 10820 TEST(battleOp68), 10821 TEST(battleOp69), 10822 TEST(battleOp70), 10823 10824 TEST(battleOp71), 10825 TEST(battleOp72), 10826 TEST(battleOp73), 10827 TEST(battleOp74), 10828 TEST(battleOp75), 10829 TEST(battleOp76), 10830 TEST(battleOp77), 10831 TEST(battleOp78), 10832 TEST(battleOp79), 10833 TEST(battleOp80), 10834 10835 TEST(battleOp81), 10836 TEST(battleOp82), 10837 TEST(battleOp83), 10838 TEST(battleOp84), 10839 TEST(battleOp85), // draws wrong 10840 TEST(battleOp86), 10841 TEST(battleOp87), 10842 TEST(battleOp88), 10843 TEST(battleOp89), 10844 TEST(battleOp90), 10845 10846 TEST(battleOp91), 10847 TEST(battleOp92), 10848 TEST(battleOp93), 10849 TEST(battleOp94), 10850 TEST(battleOp95), 10851 TEST(battleOp96), 10852 TEST(battleOp97), 10853 TEST(battleOp98), 10854 TEST(battleOp99), 10855 TEST(battleOp100), 10856 10857 TEST(battleOp101), 10858 TEST(battleOp102), 10859 TEST(battleOp103), 10860 TEST(battleOp104), 10861 TEST(battleOp105), 10862 TEST(battleOp106), 10863 TEST(battleOp107), 10864 TEST(battleOp108), 10865 TEST(battleOp109), 10866 TEST(battleOp110), 10867 10868 TEST(battleOp111), 10869 TEST(battleOp112), 10870 TEST(battleOp113), 10871 TEST(battleOp114), 10872 TEST(battleOp115), 10873 TEST(battleOp116), 10874 TEST(battleOp117), 10875 TEST(battleOp118), 10876 TEST(battleOp119), 10877 TEST(battleOp120), 10878 10879 TEST(battleOp121), 10880 TEST(battleOp122), 10881 TEST(battleOp123), 10882 TEST(battleOp124), 10883 TEST(battleOp125), 10884 TEST(battleOp126), 10885 TEST(battleOp127), 10886 TEST(battleOp128), 10887 TEST(battleOp129), 10888 TEST(battleOp130), 10889 10890 TEST(battleOp131), 10891 TEST(battleOp132), 10892 TEST(battleOp133), 10893 TEST(battleOp134), 10894 TEST(battleOp135), 10895 TEST(battleOp136), 10896 TEST(battleOp137), 10897 TEST(battleOp138), 10898 TEST(battleOp139), 10899 TEST(battleOp140), 10900 10901 TEST(battleOp141), 10902 TEST(battleOp142), 10903 TEST(battleOp143), 10904 TEST(battleOp144), 10905 TEST(battleOp145), 10906 TEST(battleOp146), 10907 TEST(battleOp147), 10908 TEST(battleOp148), // draws wrong 10909 TEST(battleOp149), 10910 TEST(battleOp150), 10911 10912 TEST(battleOp151), 10913 TEST(battleOp152), 10914 TEST(battleOp153), 10915 TEST(battleOp154), 10916 TEST(battleOp155), 10917 TEST(battleOp156), 10918 TEST(battleOp157), 10919 TEST(battleOp158), 10920 TEST(battleOp159), 10921 TEST(battleOp160), 10922 10923 TEST(battleOp161), 10924 TEST(battleOp162), 10925 TEST(battleOp163), 10926 TEST(battleOp164), 10927 TEST(battleOp165), 10928 TEST(battleOp166), 10929 TEST(battleOp167), 10930 TEST(battleOp168), 10931 TEST(battleOp169), 10932 TEST(battleOp170), 10933 10934 TEST(battleOp171), 10935 TEST(battleOp172), 10936 TEST(battleOp173), 10937 TEST(battleOp174), 10938 TEST(battleOp175), 10939 TEST(battleOp176), 10940 TEST(battleOp177), 10941 TEST(battleOp178), 10942 TEST(battleOp179), 10943 TEST(battleOp180), 10944 10945 TEST(battleOp181), 10946 TEST(battleOp182), 10947 TEST(battleOp183), 10948 TEST(battleOp184), 10949 TEST(battleOp185), 10950 TEST(battleOp186), 10951 TEST(battleOp187), 10952 TEST(battleOp188), 10953 TEST(battleOp189), 10954 TEST(battleOp190), 10955 10956 TEST(battleOp191), 10957 TEST(battleOp192), 10958 TEST(battleOp193), 10959 TEST(battleOp194), 10960 TEST(battleOp195), 10961 TEST(battleOp196), 10962 TEST(battleOp197), 10963 TEST(battleOp198), 10964 TEST(battleOp199), 10965 TEST(battleOp200), 10966 10967 TEST(battleOp201), 10968 TEST(battleOp202), 10969 TEST(battleOp203), 10970 TEST(battleOp204), 10971 TEST(battleOp205), 10972 TEST(battleOp206), 10973 TEST(battleOp207), 10974 TEST(battleOp208), 10975 TEST(battleOp209), 10976 TEST(battleOp210), 10977 10978 TEST(battleOp211), 10979 TEST(battleOp212), 10980 TEST(battleOp213), 10981 TEST(battleOp214), 10982 TEST(battleOp215), 10983 TEST(battleOp216), 10984 TEST(battleOp217), 10985 TEST(battleOp218), 10986 TEST(battleOp219), 10987 TEST(battleOp220), 10988 10989 TEST(battleOp221), 10990 TEST(battleOp222), 10991 TEST(battleOp223), 10992 TEST(battleOp224), 10993 TEST(battleOp225), 10994 TEST(battleOp226), 10995 TEST(battleOp227), 10996 TEST(battleOp228), 10997 TEST(battleOp229), 10998 TEST(battleOp230), 10999 11000 TEST(battleOp231), 11001 TEST(battleOp232), 11002 TEST(battleOp233), 11003 TEST(battleOp234), 11004 TEST(battleOp235), 11005 TEST(battleOp236), 11006 TEST(battleOp237), 11007 TEST(battleOp238), 11008 TEST(battleOp239), 11009 TEST(battleOp240), 11010 11011 TEST(battleOp241), 11012 TEST(battleOp242), 11013 TEST(battleOp243), 11014 TEST(battleOp244), 11015 TEST(battleOp245), 11016 TEST(battleOp246), 11017 TEST(battleOp247), 11018 TEST(battleOp248), 11019 TEST(battleOp249), 11020 TEST(battleOp250), 11021 11022 TEST(battleOp251), 11023 TEST(battleOp252), 11024 TEST(battleOp253), 11025 TEST(battleOp254), 11026 TEST(battleOp255), 11027 TEST(battleOp256), 11028 TEST(battleOp257), 11029 TEST(battleOp258), 11030 TEST(battleOp259), 11031 TEST(battleOp260), 11032 11033 TEST(battleOp261), 11034 TEST(battleOp262), 11035 TEST(battleOp263), 11036 TEST(battleOp264), 11037 TEST(battleOp265), 11038 TEST(battleOp266), 11039 TEST(battleOp267), 11040 TEST(battleOp268), 11041 TEST(battleOp269), 11042 TEST(battleOp270), 11043 11044 TEST(battleOp271), 11045 TEST(battleOp272), 11046 TEST(battleOp273), 11047 TEST(battleOp274), 11048 TEST(battleOp275), 11049 TEST(battleOp276), 11050 TEST(battleOp277), 11051 TEST(battleOp278), 11052 TEST(battleOp279), 11053 TEST(battleOp280), 11054 11055 TEST(battleOp281), 11056 TEST(battleOp282), 11057 TEST(battleOp283), 11058 TEST(battleOp284), 11059 TEST(battleOp285), 11060 TEST(battleOp286), 11061 TEST(battleOp287), 11062 TEST(battleOp288), 11063 TEST(battleOp289), 11064 TEST(battleOp290), 11065 11066 TEST(battleOp291), 11067 TEST(battleOp292), 11068 TEST(battleOp293), 11069 TEST(battleOp294), 11070 TEST(battleOp295), 11071 TEST(battleOp296), 11072 TEST(battleOp297), 11073 TEST(battleOp298), 11074 TEST(battleOp299), 11075 TEST(battleOp300), 11076 11077 TEST(battleOp301), 11078 TEST(battleOp302), 11079 TEST(battleOp303), 11080 TEST(battleOp304), 11081 TEST(battleOp305), 11082 TEST(battleOp306), 11083 TEST(battleOp307), 11084 TEST(battleOp308), 11085 TEST(battleOp309), 11086 TEST(battleOp310), 11087 11088 TEST(battleOp311), 11089 TEST(battleOp312), 11090 TEST(battleOp313), 11091 TEST(battleOp314), 11092 TEST(battleOp315), 11093 TEST(battleOp316), 11094 TEST(battleOp317), 11095 TEST(battleOp318), 11096 TEST(battleOp319), 11097 TEST(battleOp320), 11098 11099 TEST(battleOp321), 11100 TEST(battleOp322), 11101 TEST(battleOp323), 11102 TEST(battleOp324), 11103 TEST(battleOp325), 11104 TEST(battleOp326), 11105 TEST(battleOp327), 11106 TEST(battleOp328), 11107 TEST(battleOp329), 11108 TEST(battleOp330), 11109 11110 TEST(battleOp331), 11111 TEST(battleOp332), 11112 TEST(battleOp333), 11113 TEST(battleOp334), 11114 TEST(battleOp335), 11115 TEST(battleOp336), 11116 TEST(battleOp337), 11117 TEST(battleOp338), 11118 TEST(battleOp339), 11119 TEST(battleOp340), 11120 11121 TEST(battleOp341), 11122 TEST(battleOp342), 11123 TEST(battleOp343), 11124 TEST(battleOp344), 11125 TEST(battleOp345), 11126 TEST(battleOp346), 11127 TEST(battleOp347), 11128 TEST(battleOp348), 11129 TEST(battleOp349), 11130 TEST(battleOp350), 11131 11132 TEST(battleOp351), 11133 TEST(battleOp352), 11134 11135 TEST(battleOp402), 11136 11137 TEST(battleOp1390), 11138 TEST(battleOp1391), 11139 TEST(battleOp1392), 11140 TEST(battleOp1393), 11141 TEST(battleOp1394), 11142 TEST(battleOp1395), 11143 TEST(battleOp1396), 11144 11145 TEST(battleOp2193), 11146 TEST(battleOp2194), 11147 11148 TEST(battleOp3368), 11149 TEST(battleOp3369), 11150 TEST(battleOp3370), 11151 TEST(battleOp3371), 11152 TEST(battleOp3372), 11153 11154 TEST(battleOp4290), 11155 TEST(battleOp4291), 11156 TEST(battleOp4292), 11157 TEST(battleOp4293), 11158 TEST(battleOp4294), 11159 TEST(battleOp4295), 11160 TEST(battleOp4296), 11161 11162 TEST(battleOp5193), 11163 TEST(battleOp5194), 11164 11165 TEST(battleOp6000), 11166 TEST(battleOp6001), 11167 11168 TEST(issue414409c), 11169 TEST(issue414409b), 11170 TEST(issue414409), 11171 }; 11172 11173 11174 static const size_t testCount = SK_ARRAY_COUNT(tests); 11175 11176 static bool runReverse = false; 11177 11178 DEF_TEST(PathOpsBattle, reporter) { 11179 #if DEBUG_SHOW_TEST_NAME 11180 strncpy(DEBUG_FILENAME_STRING, "", DEBUG_FILENAME_STRING_LENGTH); 11181 #endif 11182 RunTestSet(reporter, tests, testCount, firstTest, stopTest, runReverse); 11183 } 11184