1# WARNING: This file is auto-generated. Do NOT modify it manually, but rather 2# modify the generating script file. Otherwise changes will be lost! 3 4group vector_add "Vector swizzle math operations" 5 6 case mediump_vec2_x_x 7 version 300 es 8 values 9 { 10 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 11 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 12 output float out0 = [ 0.2 | 2.0 | -1.0 | -64.0 | -1.5 ]; 13 } 14 15 both "" 16 #version 300 es 17 precision mediump float; 18 19 ${DECLARATIONS} 20 21 void main() 22 { 23 ${SETUP} 24 out0 = in0.x + in1.x; 25 ${OUTPUT} 26 } 27 "" 28 end 29 30 case mediump_vec2_xx_xx 31 version 300 es 32 values 33 { 34 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 35 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 36 output vec2 out0 = [ vec2(0.2, 0.2) | vec2(2.0, 2.0) | vec2(-1.0, -1.0) | vec2(-64.0, -64.0) | vec2(-1.5, -1.5) ]; 37 } 38 39 both "" 40 #version 300 es 41 precision mediump float; 42 43 ${DECLARATIONS} 44 45 void main() 46 { 47 ${SETUP} 48 out0 = in0.xx + in1.xx; 49 ${OUTPUT} 50 } 51 "" 52 end 53 54 case mediump_vec2_xy_yx 55 version 300 es 56 values 57 { 58 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 59 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 60 output vec2 out0 = [ vec2(0.6, 0.6) | vec2(2.25, 2.25) | vec2(-2.75, -2.75) | vec2(32.0, 32.0) | vec2(-0.782258064516, -0.782258064516) ]; 61 } 62 63 both "" 64 #version 300 es 65 precision mediump float; 66 67 ${DECLARATIONS} 68 69 void main() 70 { 71 ${SETUP} 72 out0 = in0.xy + in1.yx; 73 ${OUTPUT} 74 } 75 "" 76 end 77 78 case mediump_vec2_yx_xy 79 version 300 es 80 values 81 { 82 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 83 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 84 output vec2 out0 = [ vec2(0.6, 0.6) | vec2(2.25, 2.25) | vec2(-2.75, -2.75) | vec2(32.0, 32.0) | vec2(-0.782258064516, -0.782258064516) ]; 85 } 86 87 both "" 88 #version 300 es 89 precision mediump float; 90 91 ${DECLARATIONS} 92 93 void main() 94 { 95 ${SETUP} 96 out0 = in0.yx + in1.xy; 97 ${OUTPUT} 98 } 99 "" 100 end 101 102 case mediump_vec2_yxy_xyy 103 version 300 es 104 values 105 { 106 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 107 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 108 output vec3 out0 = [ vec3(0.6, 0.6, 1.0) | vec3(2.25, 2.25, 2.5) | vec3(-2.75, -2.75, -4.5) | vec3(32.0, 32.0, 128.0) | vec3(-0.782258064516, -0.782258064516, -0.0645161290323) ]; 109 } 110 111 both "" 112 #version 300 es 113 precision mediump float; 114 115 ${DECLARATIONS} 116 117 void main() 118 { 119 ${SETUP} 120 out0 = in0.yxy + in1.xyy; 121 ${OUTPUT} 122 } 123 "" 124 end 125 126 case mediump_vec2_xyxx_yxxx 127 version 300 es 128 values 129 { 130 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 131 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 132 output vec4 out0 = [ vec4(0.6, 0.6, 0.2, 0.2) | vec4(2.25, 2.25, 2.0, 2.0) | vec4(-2.75, -2.75, -1.0, -1.0) | vec4(32.0, 32.0, -64.0, -64.0) | vec4(-0.782258064516, -0.782258064516, -1.5, -1.5) ]; 133 } 134 135 both "" 136 #version 300 es 137 precision mediump float; 138 139 ${DECLARATIONS} 140 141 void main() 142 { 143 ${SETUP} 144 out0 = in0.xyxx + in1.yxxx; 145 ${OUTPUT} 146 } 147 "" 148 end 149 150 case mediump_vec2_yxyx_xyxy 151 version 300 es 152 values 153 { 154 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 155 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 156 output vec4 out0 = [ vec4(0.6, 0.6, 0.6, 0.6) | vec4(2.25, 2.25, 2.25, 2.25) | vec4(-2.75, -2.75, -2.75, -2.75) | vec4(32.0, 32.0, 32.0, 32.0) | vec4(-0.782258064516, -0.782258064516, -0.782258064516, -0.782258064516) ]; 157 } 158 159 both "" 160 #version 300 es 161 precision mediump float; 162 163 ${DECLARATIONS} 164 165 void main() 166 { 167 ${SETUP} 168 out0 = in0.yxyx + in1.xyxy; 169 ${OUTPUT} 170 } 171 "" 172 end 173 174 case mediump_vec3_x_x 175 version 300 es 176 values 177 { 178 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 179 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 180 output float out0 = [ 0.2 | 2.0 | -1.0 | -64.0 | -1.5 ]; 181 } 182 183 both "" 184 #version 300 es 185 precision mediump float; 186 187 ${DECLARATIONS} 188 189 void main() 190 { 191 ${SETUP} 192 out0 = in0.x + in1.x; 193 ${OUTPUT} 194 } 195 "" 196 end 197 198 case mediump_vec3_z_z 199 version 300 es 200 values 201 { 202 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 203 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 204 output float out0 = [ 1.5 | 2.25 | -9.75 | -102.0 | 0.105263157895 ]; 205 } 206 207 both "" 208 #version 300 es 209 precision mediump float; 210 211 ${DECLARATIONS} 212 213 void main() 214 { 215 ${SETUP} 216 out0 = in0.z + in1.z; 217 ${OUTPUT} 218 } 219 "" 220 end 221 222 case mediump_vec3_xz_zx 223 version 300 es 224 values 225 { 226 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 227 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 228 output vec2 out0 = [ vec2(0.85, 0.85) | vec2(2.125, 2.125) | vec2(-5.375, -5.375) | vec2(-83.0, -83.0) | vec2(-0.697368421053, -0.697368421053) ]; 229 } 230 231 both "" 232 #version 300 es 233 precision mediump float; 234 235 ${DECLARATIONS} 236 237 void main() 238 { 239 ${SETUP} 240 out0 = in0.xz + in1.zx; 241 ${OUTPUT} 242 } 243 "" 244 end 245 246 case mediump_vec3_zz_zz 247 version 300 es 248 values 249 { 250 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 251 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 252 output vec2 out0 = [ vec2(1.5, 1.5) | vec2(2.25, 2.25) | vec2(-9.75, -9.75) | vec2(-102.0, -102.0) | vec2(0.105263157895, 0.105263157895) ]; 253 } 254 255 both "" 256 #version 300 es 257 precision mediump float; 258 259 ${DECLARATIONS} 260 261 void main() 262 { 263 ${SETUP} 264 out0 = in0.zz + in1.zz; 265 ${OUTPUT} 266 } 267 "" 268 end 269 270 case mediump_vec3_xyz_yzx 271 version 300 es 272 values 273 { 274 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 275 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 276 output vec3 out0 = [ vec3(0.6, 1.25, 0.85) | vec3(2.25, 2.375, 2.125) | vec3(-2.75, -7.125, -5.375) | vec3(32.0, 13.0, -83.0) | vec3(-0.782258064516, 0.0203735144312, -0.697368421053) ]; 277 } 278 279 both "" 280 #version 300 es 281 precision mediump float; 282 283 ${DECLARATIONS} 284 285 void main() 286 { 287 ${SETUP} 288 out0 = in0.xyz + in1.yzx; 289 ${OUTPUT} 290 } 291 "" 292 end 293 294 case mediump_vec3_zyx_yxz 295 version 300 es 296 values 297 { 298 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 299 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 300 output vec3 out0 = [ vec3(1.25, 0.6, 0.85) | vec3(2.375, 2.25, 2.125) | vec3(-7.125, -2.75, -5.375) | vec3(13.0, 32.0, -83.0) | vec3(0.0203735144312, -0.782258064516, -0.697368421053) ]; 301 } 302 303 both "" 304 #version 300 es 305 precision mediump float; 306 307 ${DECLARATIONS} 308 309 void main() 310 { 311 ${SETUP} 312 out0 = in0.zyx + in1.yxz; 313 ${OUTPUT} 314 } 315 "" 316 end 317 318 case mediump_vec3_xxx_xxx 319 version 300 es 320 values 321 { 322 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 323 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 324 output vec3 out0 = [ vec3(0.2, 0.2, 0.2) | vec3(2.0, 2.0, 2.0) | vec3(-1.0, -1.0, -1.0) | vec3(-64.0, -64.0, -64.0) | vec3(-1.5, -1.5, -1.5) ]; 325 } 326 327 both "" 328 #version 300 es 329 precision mediump float; 330 331 ${DECLARATIONS} 332 333 void main() 334 { 335 ${SETUP} 336 out0 = in0.xxx + in1.xxx; 337 ${OUTPUT} 338 } 339 "" 340 end 341 342 case mediump_vec3_zzz_zzz 343 version 300 es 344 values 345 { 346 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 347 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 348 output vec3 out0 = [ vec3(1.5, 1.5, 1.5) | vec3(2.25, 2.25, 2.25) | vec3(-9.75, -9.75, -9.75) | vec3(-102.0, -102.0, -102.0) | vec3(0.105263157895, 0.105263157895, 0.105263157895) ]; 349 } 350 351 both "" 352 #version 300 es 353 precision mediump float; 354 355 ${DECLARATIONS} 356 357 void main() 358 { 359 ${SETUP} 360 out0 = in0.zzz + in1.zzz; 361 ${OUTPUT} 362 } 363 "" 364 end 365 366 case mediump_vec3_zzy_zyz 367 version 300 es 368 values 369 { 370 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 371 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 372 output vec3 out0 = [ vec3(1.5, 1.25, 1.25) | vec3(2.25, 2.375, 2.375) | vec3(-9.75, -7.125, -7.125) | vec3(-102.0, 13.0, 13.0) | vec3(0.105263157895, 0.0203735144312, 0.0203735144312) ]; 373 } 374 375 both "" 376 #version 300 es 377 precision mediump float; 378 379 ${DECLARATIONS} 380 381 void main() 382 { 383 ${SETUP} 384 out0 = in0.zzy + in1.zyz; 385 ${OUTPUT} 386 } 387 "" 388 end 389 390 case mediump_vec3_yxy_xyy 391 version 300 es 392 values 393 { 394 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 395 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 396 output vec3 out0 = [ vec3(0.6, 0.6, 1.0) | vec3(2.25, 2.25, 2.5) | vec3(-2.75, -2.75, -4.5) | vec3(32.0, 32.0, 128.0) | vec3(-0.782258064516, -0.782258064516, -0.0645161290323) ]; 397 } 398 399 both "" 400 #version 300 es 401 precision mediump float; 402 403 ${DECLARATIONS} 404 405 void main() 406 { 407 ${SETUP} 408 out0 = in0.yxy + in1.xyy; 409 ${OUTPUT} 410 } 411 "" 412 end 413 414 case mediump_vec3_xzx_zxx 415 version 300 es 416 values 417 { 418 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 419 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 420 output vec3 out0 = [ vec3(0.85, 0.85, 0.2) | vec3(2.125, 2.125, 2.0) | vec3(-5.375, -5.375, -1.0) | vec3(-83.0, -83.0, -64.0) | vec3(-0.697368421053, -0.697368421053, -1.5) ]; 421 } 422 423 both "" 424 #version 300 es 425 precision mediump float; 426 427 ${DECLARATIONS} 428 429 void main() 430 { 431 ${SETUP} 432 out0 = in0.xzx + in1.zxx; 433 ${OUTPUT} 434 } 435 "" 436 end 437 438 case mediump_vec3_xyyx_yyxx 439 version 300 es 440 values 441 { 442 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 443 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 444 output vec4 out0 = [ vec4(0.6, 1.0, 0.6, 0.2) | vec4(2.25, 2.5, 2.25, 2.0) | vec4(-2.75, -4.5, -2.75, -1.0) | vec4(32.0, 128.0, 32.0, -64.0) | vec4(-0.782258064516, -0.0645161290323, -0.782258064516, -1.5) ]; 445 } 446 447 both "" 448 #version 300 es 449 precision mediump float; 450 451 ${DECLARATIONS} 452 453 void main() 454 { 455 ${SETUP} 456 out0 = in0.xyyx + in1.yyxx; 457 ${OUTPUT} 458 } 459 "" 460 end 461 462 case mediump_vec3_zxyz_xyzz 463 version 300 es 464 values 465 { 466 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 467 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 468 output vec4 out0 = [ vec4(0.85, 0.6, 1.25, 1.5) | vec4(2.125, 2.25, 2.375, 2.25) | vec4(-5.375, -2.75, -7.125, -9.75) | vec4(-83.0, 32.0, 13.0, -102.0) | vec4(-0.697368421053, -0.782258064516, 0.0203735144312, 0.105263157895) ]; 469 } 470 471 both "" 472 #version 300 es 473 precision mediump float; 474 475 ${DECLARATIONS} 476 477 void main() 478 { 479 ${SETUP} 480 out0 = in0.zxyz + in1.xyzz; 481 ${OUTPUT} 482 } 483 "" 484 end 485 486 case mediump_vec4_x_x 487 version 300 es 488 values 489 { 490 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 491 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 492 output float out0 = [ 0.2 | 2.0 | -1.0 | -64.0 | -1.5 ]; 493 } 494 495 both "" 496 #version 300 es 497 precision mediump float; 498 499 ${DECLARATIONS} 500 501 void main() 502 { 503 ${SETUP} 504 out0 = in0.x + in1.x; 505 ${OUTPUT} 506 } 507 "" 508 end 509 510 case mediump_vec4_w_w 511 version 300 es 512 values 513 { 514 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 515 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 516 output float out0 = [ 1.65 | 3.5 | 18.0 | 48.0 | 0.5 ]; 517 } 518 519 both "" 520 #version 300 es 521 precision mediump float; 522 523 ${DECLARATIONS} 524 525 void main() 526 { 527 ${SETUP} 528 out0 = in0.w + in1.w; 529 ${OUTPUT} 530 } 531 "" 532 end 533 534 case mediump_vec4_wx_xw 535 version 300 es 536 values 537 { 538 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 539 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 540 output vec2 out0 = [ vec2(0.925, 0.925) | vec2(2.75, 2.75) | vec2(8.5, 8.5) | vec2(-8.0, -8.0) | vec2(-0.5, -0.5) ]; 541 } 542 543 both "" 544 #version 300 es 545 precision mediump float; 546 547 ${DECLARATIONS} 548 549 void main() 550 { 551 ${SETUP} 552 out0 = in0.wx + in1.xw; 553 ${OUTPUT} 554 } 555 "" 556 end 557 558 case mediump_vec4_wz_zw 559 version 300 es 560 values 561 { 562 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 563 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 564 output vec2 out0 = [ vec2(1.575, 1.575) | vec2(2.875, 2.875) | vec2(4.125, 4.125) | vec2(-27.0, -27.0) | vec2(0.302631578947, 0.302631578947) ]; 565 } 566 567 both "" 568 #version 300 es 569 precision mediump float; 570 571 ${DECLARATIONS} 572 573 void main() 574 { 575 ${SETUP} 576 out0 = in0.wz + in1.zw; 577 ${OUTPUT} 578 } 579 "" 580 end 581 582 case mediump_vec4_www_www 583 version 300 es 584 values 585 { 586 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 587 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 588 output vec3 out0 = [ vec3(1.65, 1.65, 1.65) | vec3(3.5, 3.5, 3.5) | vec3(18.0, 18.0, 18.0) | vec3(48.0, 48.0, 48.0) | vec3(0.5, 0.5, 0.5) ]; 589 } 590 591 both "" 592 #version 300 es 593 precision mediump float; 594 595 ${DECLARATIONS} 596 597 void main() 598 { 599 ${SETUP} 600 out0 = in0.www + in1.www; 601 ${OUTPUT} 602 } 603 "" 604 end 605 606 case mediump_vec4_yyw_ywy 607 version 300 es 608 values 609 { 610 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 611 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 612 output vec3 out0 = [ vec3(1.0, 1.325, 1.325) | vec3(2.5, 3.0, 3.0) | vec3(-4.5, 6.75, 6.75) | vec3(128.0, 88.0, 88.0) | vec3(-0.0645161290323, 0.217741935484, 0.217741935484) ]; 613 } 614 615 both "" 616 #version 300 es 617 precision mediump float; 618 619 ${DECLARATIONS} 620 621 void main() 622 { 623 ${SETUP} 624 out0 = in0.yyw + in1.ywy; 625 ${OUTPUT} 626 } 627 "" 628 end 629 630 case mediump_vec4_wzy_zyw 631 version 300 es 632 values 633 { 634 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 635 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 636 output vec3 out0 = [ vec3(1.575, 1.25, 1.325) | vec3(2.875, 2.375, 3.0) | vec3(4.125, -7.125, 6.75) | vec3(-27.0, 13.0, 88.0) | vec3(0.302631578947, 0.0203735144312, 0.217741935484) ]; 637 } 638 639 both "" 640 #version 300 es 641 precision mediump float; 642 643 ${DECLARATIONS} 644 645 void main() 646 { 647 ${SETUP} 648 out0 = in0.wzy + in1.zyw; 649 ${OUTPUT} 650 } 651 "" 652 end 653 654 case mediump_vec4_xyzw_yzwx 655 version 300 es 656 values 657 { 658 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 659 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 660 output vec4 out0 = [ vec4(0.6, 1.25, 1.575, 0.925) | vec4(2.25, 2.375, 2.875, 2.75) | vec4(-2.75, -7.125, 4.125, 8.5) | vec4(32.0, 13.0, -27.0, -8.0) | vec4(-0.782258064516, 0.0203735144312, 0.302631578947, -0.5) ]; 661 } 662 663 both "" 664 #version 300 es 665 precision mediump float; 666 667 ${DECLARATIONS} 668 669 void main() 670 { 671 ${SETUP} 672 out0 = in0.xyzw + in1.yzwx; 673 ${OUTPUT} 674 } 675 "" 676 end 677 678 case mediump_vec4_wzyx_zyxw 679 version 300 es 680 values 681 { 682 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 683 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 684 output vec4 out0 = [ vec4(1.575, 1.25, 0.6, 0.925) | vec4(2.875, 2.375, 2.25, 2.75) | vec4(4.125, -7.125, -2.75, 8.5) | vec4(-27.0, 13.0, 32.0, -8.0) | vec4(0.302631578947, 0.0203735144312, -0.782258064516, -0.5) ]; 685 } 686 687 both "" 688 #version 300 es 689 precision mediump float; 690 691 ${DECLARATIONS} 692 693 void main() 694 { 695 ${SETUP} 696 out0 = in0.wzyx + in1.zyxw; 697 ${OUTPUT} 698 } 699 "" 700 end 701 702 case mediump_vec4_xyxy_yxyx 703 version 300 es 704 values 705 { 706 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 707 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 708 output vec4 out0 = [ vec4(0.6, 0.6, 0.6, 0.6) | vec4(2.25, 2.25, 2.25, 2.25) | vec4(-2.75, -2.75, -2.75, -2.75) | vec4(32.0, 32.0, 32.0, 32.0) | vec4(-0.782258064516, -0.782258064516, -0.782258064516, -0.782258064516) ]; 709 } 710 711 both "" 712 #version 300 es 713 precision mediump float; 714 715 ${DECLARATIONS} 716 717 void main() 718 { 719 ${SETUP} 720 out0 = in0.xyxy + in1.yxyx; 721 ${OUTPUT} 722 } 723 "" 724 end 725 726 case mediump_vec4_yzzy_zzyy 727 version 300 es 728 values 729 { 730 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 731 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 732 output vec4 out0 = [ vec4(1.25, 1.5, 1.25, 1.0) | vec4(2.375, 2.25, 2.375, 2.5) | vec4(-7.125, -9.75, -7.125, -4.5) | vec4(13.0, -102.0, 13.0, 128.0) | vec4(0.0203735144312, 0.105263157895, 0.0203735144312, -0.0645161290323) ]; 733 } 734 735 both "" 736 #version 300 es 737 precision mediump float; 738 739 ${DECLARATIONS} 740 741 void main() 742 { 743 ${SETUP} 744 out0 = in0.yzzy + in1.zzyy; 745 ${OUTPUT} 746 } 747 "" 748 end 749 750 case mediump_vec4_wxww_xwww 751 version 300 es 752 values 753 { 754 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 755 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 756 output vec4 out0 = [ vec4(0.925, 0.925, 1.65, 1.65) | vec4(2.75, 2.75, 3.5, 3.5) | vec4(8.5, 8.5, 18.0, 18.0) | vec4(-8.0, -8.0, 48.0, 48.0) | vec4(-0.5, -0.5, 0.5, 0.5) ]; 757 } 758 759 both "" 760 #version 300 es 761 precision mediump float; 762 763 ${DECLARATIONS} 764 765 void main() 766 { 767 ${SETUP} 768 out0 = in0.wxww + in1.xwww; 769 ${OUTPUT} 770 } 771 "" 772 end 773 774 case mediump_vec4_xyxx_yxxx 775 version 300 es 776 values 777 { 778 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 779 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 780 output vec4 out0 = [ vec4(0.6, 0.6, 0.2, 0.2) | vec4(2.25, 2.25, 2.0, 2.0) | vec4(-2.75, -2.75, -1.0, -1.0) | vec4(32.0, 32.0, -64.0, -64.0) | vec4(-0.782258064516, -0.782258064516, -1.5, -1.5) ]; 781 } 782 783 both "" 784 #version 300 es 785 precision mediump float; 786 787 ${DECLARATIONS} 788 789 void main() 790 { 791 ${SETUP} 792 out0 = in0.xyxx + in1.yxxx; 793 ${OUTPUT} 794 } 795 "" 796 end 797 798 case mediump_vec4_zzzz_zzzz 799 version 300 es 800 values 801 { 802 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 803 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 804 output vec4 out0 = [ vec4(1.5, 1.5, 1.5, 1.5) | vec4(2.25, 2.25, 2.25, 2.25) | vec4(-9.75, -9.75, -9.75, -9.75) | vec4(-102.0, -102.0, -102.0, -102.0) | vec4(0.105263157895, 0.105263157895, 0.105263157895, 0.105263157895) ]; 805 } 806 807 both "" 808 #version 300 es 809 precision mediump float; 810 811 ${DECLARATIONS} 812 813 void main() 814 { 815 ${SETUP} 816 out0 = in0.zzzz + in1.zzzz; 817 ${OUTPUT} 818 } 819 "" 820 end 821 822 case mediump_ivec2_x_x 823 version 300 es 824 values 825 { 826 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 827 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 828 output int out0 = [ -2 | 2 | -2 ]; 829 } 830 831 both "" 832 #version 300 es 833 precision mediump float; 834 835 ${DECLARATIONS} 836 837 void main() 838 { 839 ${SETUP} 840 out0 = in0.x + in1.x; 841 ${OUTPUT} 842 } 843 "" 844 end 845 846 case mediump_ivec2_xx_xx 847 version 300 es 848 values 849 { 850 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 851 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 852 output ivec2 out0 = [ ivec2(-2, -2) | ivec2(2, 2) | ivec2(-2, -2) ]; 853 } 854 855 both "" 856 #version 300 es 857 precision mediump float; 858 859 ${DECLARATIONS} 860 861 void main() 862 { 863 ${SETUP} 864 out0 = in0.xx + in1.xx; 865 ${OUTPUT} 866 } 867 "" 868 end 869 870 case mediump_ivec2_xy_yx 871 version 300 es 872 values 873 { 874 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 875 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 876 output ivec2 out0 = [ ivec2(0, 0) | ivec2(3, 3) | ivec2(-3, -3) ]; 877 } 878 879 both "" 880 #version 300 es 881 precision mediump float; 882 883 ${DECLARATIONS} 884 885 void main() 886 { 887 ${SETUP} 888 out0 = in0.xy + in1.yx; 889 ${OUTPUT} 890 } 891 "" 892 end 893 894 case mediump_ivec2_yx_xy 895 version 300 es 896 values 897 { 898 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 899 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 900 output ivec2 out0 = [ ivec2(0, 0) | ivec2(3, 3) | ivec2(-3, -3) ]; 901 } 902 903 both "" 904 #version 300 es 905 precision mediump float; 906 907 ${DECLARATIONS} 908 909 void main() 910 { 911 ${SETUP} 912 out0 = in0.yx + in1.xy; 913 ${OUTPUT} 914 } 915 "" 916 end 917 918 case mediump_ivec2_yxy_xyy 919 version 300 es 920 values 921 { 922 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 923 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 924 output ivec3 out0 = [ ivec3(0, 0, 2) | ivec3(3, 3, 4) | ivec3(-3, -3, -4) ]; 925 } 926 927 both "" 928 #version 300 es 929 precision mediump float; 930 931 ${DECLARATIONS} 932 933 void main() 934 { 935 ${SETUP} 936 out0 = in0.yxy + in1.xyy; 937 ${OUTPUT} 938 } 939 "" 940 end 941 942 case mediump_ivec2_xyxx_yxxx 943 version 300 es 944 values 945 { 946 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 947 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 948 output ivec4 out0 = [ ivec4(0, 0, -2, -2) | ivec4(3, 3, 2, 2) | ivec4(-3, -3, -2, -2) ]; 949 } 950 951 both "" 952 #version 300 es 953 precision mediump float; 954 955 ${DECLARATIONS} 956 957 void main() 958 { 959 ${SETUP} 960 out0 = in0.xyxx + in1.yxxx; 961 ${OUTPUT} 962 } 963 "" 964 end 965 966 case mediump_ivec2_yxyx_xyxy 967 version 300 es 968 values 969 { 970 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 971 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 972 output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(3, 3, 3, 3) | ivec4(-3, -3, -3, -3) ]; 973 } 974 975 both "" 976 #version 300 es 977 precision mediump float; 978 979 ${DECLARATIONS} 980 981 void main() 982 { 983 ${SETUP} 984 out0 = in0.yxyx + in1.xyxy; 985 ${OUTPUT} 986 } 987 "" 988 end 989 990 case mediump_ivec3_x_x 991 version 300 es 992 values 993 { 994 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 995 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 996 output int out0 = [ -2 | 2 | -2 ]; 997 } 998 999 both "" 1000 #version 300 es 1001 precision mediump float; 1002 1003 ${DECLARATIONS} 1004 1005 void main() 1006 { 1007 ${SETUP} 1008 out0 = in0.x + in1.x; 1009 ${OUTPUT} 1010 } 1011 "" 1012 end 1013 1014 case mediump_ivec3_z_z 1015 version 300 es 1016 values 1017 { 1018 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1019 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1020 output int out0 = [ -2 | 6 | -8 ]; 1021 } 1022 1023 both "" 1024 #version 300 es 1025 precision mediump float; 1026 1027 ${DECLARATIONS} 1028 1029 void main() 1030 { 1031 ${SETUP} 1032 out0 = in0.z + in1.z; 1033 ${OUTPUT} 1034 } 1035 "" 1036 end 1037 1038 case mediump_ivec3_xz_zx 1039 version 300 es 1040 values 1041 { 1042 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1043 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1044 output ivec2 out0 = [ ivec2(-2, -2) | ivec2(4, 4) | ivec2(-5, -5) ]; 1045 } 1046 1047 both "" 1048 #version 300 es 1049 precision mediump float; 1050 1051 ${DECLARATIONS} 1052 1053 void main() 1054 { 1055 ${SETUP} 1056 out0 = in0.xz + in1.zx; 1057 ${OUTPUT} 1058 } 1059 "" 1060 end 1061 1062 case mediump_ivec3_zz_zz 1063 version 300 es 1064 values 1065 { 1066 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1067 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1068 output ivec2 out0 = [ ivec2(-2, -2) | ivec2(6, 6) | ivec2(-8, -8) ]; 1069 } 1070 1071 both "" 1072 #version 300 es 1073 precision mediump float; 1074 1075 ${DECLARATIONS} 1076 1077 void main() 1078 { 1079 ${SETUP} 1080 out0 = in0.zz + in1.zz; 1081 ${OUTPUT} 1082 } 1083 "" 1084 end 1085 1086 case mediump_ivec3_xyz_yzx 1087 version 300 es 1088 values 1089 { 1090 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1091 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1092 output ivec3 out0 = [ ivec3(0, 0, -2) | ivec3(3, 5, 4) | ivec3(-3, -6, -5) ]; 1093 } 1094 1095 both "" 1096 #version 300 es 1097 precision mediump float; 1098 1099 ${DECLARATIONS} 1100 1101 void main() 1102 { 1103 ${SETUP} 1104 out0 = in0.xyz + in1.yzx; 1105 ${OUTPUT} 1106 } 1107 "" 1108 end 1109 1110 case mediump_ivec3_zyx_yxz 1111 version 300 es 1112 values 1113 { 1114 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1115 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1116 output ivec3 out0 = [ ivec3(0, 0, -2) | ivec3(5, 3, 4) | ivec3(-6, -3, -5) ]; 1117 } 1118 1119 both "" 1120 #version 300 es 1121 precision mediump float; 1122 1123 ${DECLARATIONS} 1124 1125 void main() 1126 { 1127 ${SETUP} 1128 out0 = in0.zyx + in1.yxz; 1129 ${OUTPUT} 1130 } 1131 "" 1132 end 1133 1134 case mediump_ivec3_xxx_xxx 1135 version 300 es 1136 values 1137 { 1138 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1139 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1140 output ivec3 out0 = [ ivec3(-2, -2, -2) | ivec3(2, 2, 2) | ivec3(-2, -2, -2) ]; 1141 } 1142 1143 both "" 1144 #version 300 es 1145 precision mediump float; 1146 1147 ${DECLARATIONS} 1148 1149 void main() 1150 { 1151 ${SETUP} 1152 out0 = in0.xxx + in1.xxx; 1153 ${OUTPUT} 1154 } 1155 "" 1156 end 1157 1158 case mediump_ivec3_zzz_zzz 1159 version 300 es 1160 values 1161 { 1162 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1163 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1164 output ivec3 out0 = [ ivec3(-2, -2, -2) | ivec3(6, 6, 6) | ivec3(-8, -8, -8) ]; 1165 } 1166 1167 both "" 1168 #version 300 es 1169 precision mediump float; 1170 1171 ${DECLARATIONS} 1172 1173 void main() 1174 { 1175 ${SETUP} 1176 out0 = in0.zzz + in1.zzz; 1177 ${OUTPUT} 1178 } 1179 "" 1180 end 1181 1182 case mediump_ivec3_zzy_zyz 1183 version 300 es 1184 values 1185 { 1186 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1187 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1188 output ivec3 out0 = [ ivec3(-2, 0, 0) | ivec3(6, 5, 5) | ivec3(-8, -6, -6) ]; 1189 } 1190 1191 both "" 1192 #version 300 es 1193 precision mediump float; 1194 1195 ${DECLARATIONS} 1196 1197 void main() 1198 { 1199 ${SETUP} 1200 out0 = in0.zzy + in1.zyz; 1201 ${OUTPUT} 1202 } 1203 "" 1204 end 1205 1206 case mediump_ivec3_yxy_xyy 1207 version 300 es 1208 values 1209 { 1210 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1211 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1212 output ivec3 out0 = [ ivec3(0, 0, 2) | ivec3(3, 3, 4) | ivec3(-3, -3, -4) ]; 1213 } 1214 1215 both "" 1216 #version 300 es 1217 precision mediump float; 1218 1219 ${DECLARATIONS} 1220 1221 void main() 1222 { 1223 ${SETUP} 1224 out0 = in0.yxy + in1.xyy; 1225 ${OUTPUT} 1226 } 1227 "" 1228 end 1229 1230 case mediump_ivec3_xzx_zxx 1231 version 300 es 1232 values 1233 { 1234 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1235 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1236 output ivec3 out0 = [ ivec3(-2, -2, -2) | ivec3(4, 4, 2) | ivec3(-5, -5, -2) ]; 1237 } 1238 1239 both "" 1240 #version 300 es 1241 precision mediump float; 1242 1243 ${DECLARATIONS} 1244 1245 void main() 1246 { 1247 ${SETUP} 1248 out0 = in0.xzx + in1.zxx; 1249 ${OUTPUT} 1250 } 1251 "" 1252 end 1253 1254 case mediump_ivec3_xyyx_yyxx 1255 version 300 es 1256 values 1257 { 1258 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1259 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1260 output ivec4 out0 = [ ivec4(0, 2, 0, -2) | ivec4(3, 4, 3, 2) | ivec4(-3, -4, -3, -2) ]; 1261 } 1262 1263 both "" 1264 #version 300 es 1265 precision mediump float; 1266 1267 ${DECLARATIONS} 1268 1269 void main() 1270 { 1271 ${SETUP} 1272 out0 = in0.xyyx + in1.yyxx; 1273 ${OUTPUT} 1274 } 1275 "" 1276 end 1277 1278 case mediump_ivec3_zxyz_xyzz 1279 version 300 es 1280 values 1281 { 1282 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1283 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 1284 output ivec4 out0 = [ ivec4(-2, 0, 0, -2) | ivec4(4, 3, 5, 6) | ivec4(-5, -3, -6, -8) ]; 1285 } 1286 1287 both "" 1288 #version 300 es 1289 precision mediump float; 1290 1291 ${DECLARATIONS} 1292 1293 void main() 1294 { 1295 ${SETUP} 1296 out0 = in0.zxyz + in1.xyzz; 1297 ${OUTPUT} 1298 } 1299 "" 1300 end 1301 1302 case mediump_ivec4_x_x 1303 version 300 es 1304 values 1305 { 1306 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1307 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1308 output int out0 = [ -2 | 2 | -2 ]; 1309 } 1310 1311 both "" 1312 #version 300 es 1313 precision mediump float; 1314 1315 ${DECLARATIONS} 1316 1317 void main() 1318 { 1319 ${SETUP} 1320 out0 = in0.x + in1.x; 1321 ${OUTPUT} 1322 } 1323 "" 1324 end 1325 1326 case mediump_ivec4_w_w 1327 version 300 es 1328 values 1329 { 1330 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1331 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1332 output int out0 = [ 2 | 8 | -18 ]; 1333 } 1334 1335 both "" 1336 #version 300 es 1337 precision mediump float; 1338 1339 ${DECLARATIONS} 1340 1341 void main() 1342 { 1343 ${SETUP} 1344 out0 = in0.w + in1.w; 1345 ${OUTPUT} 1346 } 1347 "" 1348 end 1349 1350 case mediump_ivec4_wx_xw 1351 version 300 es 1352 values 1353 { 1354 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1355 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1356 output ivec2 out0 = [ ivec2(0, 0) | ivec2(5, 5) | ivec2(-10, -10) ]; 1357 } 1358 1359 both "" 1360 #version 300 es 1361 precision mediump float; 1362 1363 ${DECLARATIONS} 1364 1365 void main() 1366 { 1367 ${SETUP} 1368 out0 = in0.wx + in1.xw; 1369 ${OUTPUT} 1370 } 1371 "" 1372 end 1373 1374 case mediump_ivec4_wz_zw 1375 version 300 es 1376 values 1377 { 1378 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1379 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1380 output ivec2 out0 = [ ivec2(0, 0) | ivec2(7, 7) | ivec2(-13, -13) ]; 1381 } 1382 1383 both "" 1384 #version 300 es 1385 precision mediump float; 1386 1387 ${DECLARATIONS} 1388 1389 void main() 1390 { 1391 ${SETUP} 1392 out0 = in0.wz + in1.zw; 1393 ${OUTPUT} 1394 } 1395 "" 1396 end 1397 1398 case mediump_ivec4_www_www 1399 version 300 es 1400 values 1401 { 1402 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1403 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1404 output ivec3 out0 = [ ivec3(2, 2, 2) | ivec3(8, 8, 8) | ivec3(-18, -18, -18) ]; 1405 } 1406 1407 both "" 1408 #version 300 es 1409 precision mediump float; 1410 1411 ${DECLARATIONS} 1412 1413 void main() 1414 { 1415 ${SETUP} 1416 out0 = in0.www + in1.www; 1417 ${OUTPUT} 1418 } 1419 "" 1420 end 1421 1422 case mediump_ivec4_yyw_ywy 1423 version 300 es 1424 values 1425 { 1426 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1427 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1428 output ivec3 out0 = [ ivec3(2, 2, 2) | ivec3(4, 6, 6) | ivec3(-4, -11, -11) ]; 1429 } 1430 1431 both "" 1432 #version 300 es 1433 precision mediump float; 1434 1435 ${DECLARATIONS} 1436 1437 void main() 1438 { 1439 ${SETUP} 1440 out0 = in0.yyw + in1.ywy; 1441 ${OUTPUT} 1442 } 1443 "" 1444 end 1445 1446 case mediump_ivec4_wzy_zyw 1447 version 300 es 1448 values 1449 { 1450 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1451 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1452 output ivec3 out0 = [ ivec3(0, 0, 2) | ivec3(7, 5, 6) | ivec3(-13, -6, -11) ]; 1453 } 1454 1455 both "" 1456 #version 300 es 1457 precision mediump float; 1458 1459 ${DECLARATIONS} 1460 1461 void main() 1462 { 1463 ${SETUP} 1464 out0 = in0.wzy + in1.zyw; 1465 ${OUTPUT} 1466 } 1467 "" 1468 end 1469 1470 case mediump_ivec4_xyzw_yzwx 1471 version 300 es 1472 values 1473 { 1474 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1475 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1476 output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(3, 5, 7, 5) | ivec4(-3, -6, -13, -10) ]; 1477 } 1478 1479 both "" 1480 #version 300 es 1481 precision mediump float; 1482 1483 ${DECLARATIONS} 1484 1485 void main() 1486 { 1487 ${SETUP} 1488 out0 = in0.xyzw + in1.yzwx; 1489 ${OUTPUT} 1490 } 1491 "" 1492 end 1493 1494 case mediump_ivec4_wzyx_zyxw 1495 version 300 es 1496 values 1497 { 1498 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1499 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1500 output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(7, 5, 3, 5) | ivec4(-13, -6, -3, -10) ]; 1501 } 1502 1503 both "" 1504 #version 300 es 1505 precision mediump float; 1506 1507 ${DECLARATIONS} 1508 1509 void main() 1510 { 1511 ${SETUP} 1512 out0 = in0.wzyx + in1.zyxw; 1513 ${OUTPUT} 1514 } 1515 "" 1516 end 1517 1518 case mediump_ivec4_xyxy_yxyx 1519 version 300 es 1520 values 1521 { 1522 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1523 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1524 output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(3, 3, 3, 3) | ivec4(-3, -3, -3, -3) ]; 1525 } 1526 1527 both "" 1528 #version 300 es 1529 precision mediump float; 1530 1531 ${DECLARATIONS} 1532 1533 void main() 1534 { 1535 ${SETUP} 1536 out0 = in0.xyxy + in1.yxyx; 1537 ${OUTPUT} 1538 } 1539 "" 1540 end 1541 1542 case mediump_ivec4_yzzy_zzyy 1543 version 300 es 1544 values 1545 { 1546 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1547 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1548 output ivec4 out0 = [ ivec4(0, -2, 0, 2) | ivec4(5, 6, 5, 4) | ivec4(-6, -8, -6, -4) ]; 1549 } 1550 1551 both "" 1552 #version 300 es 1553 precision mediump float; 1554 1555 ${DECLARATIONS} 1556 1557 void main() 1558 { 1559 ${SETUP} 1560 out0 = in0.yzzy + in1.zzyy; 1561 ${OUTPUT} 1562 } 1563 "" 1564 end 1565 1566 case mediump_ivec4_wxww_xwww 1567 version 300 es 1568 values 1569 { 1570 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1571 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1572 output ivec4 out0 = [ ivec4(0, 0, 2, 2) | ivec4(5, 5, 8, 8) | ivec4(-10, -10, -18, -18) ]; 1573 } 1574 1575 both "" 1576 #version 300 es 1577 precision mediump float; 1578 1579 ${DECLARATIONS} 1580 1581 void main() 1582 { 1583 ${SETUP} 1584 out0 = in0.wxww + in1.xwww; 1585 ${OUTPUT} 1586 } 1587 "" 1588 end 1589 1590 case mediump_ivec4_xyxx_yxxx 1591 version 300 es 1592 values 1593 { 1594 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1595 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1596 output ivec4 out0 = [ ivec4(0, 0, -2, -2) | ivec4(3, 3, 2, 2) | ivec4(-3, -3, -2, -2) ]; 1597 } 1598 1599 both "" 1600 #version 300 es 1601 precision mediump float; 1602 1603 ${DECLARATIONS} 1604 1605 void main() 1606 { 1607 ${SETUP} 1608 out0 = in0.xyxx + in1.yxxx; 1609 ${OUTPUT} 1610 } 1611 "" 1612 end 1613 1614 case mediump_ivec4_zzzz_zzzz 1615 version 300 es 1616 values 1617 { 1618 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1619 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 1620 output ivec4 out0 = [ ivec4(-2, -2, -2, -2) | ivec4(6, 6, 6, 6) | ivec4(-8, -8, -8, -8) ]; 1621 } 1622 1623 both "" 1624 #version 300 es 1625 precision mediump float; 1626 1627 ${DECLARATIONS} 1628 1629 void main() 1630 { 1631 ${SETUP} 1632 out0 = in0.zzzz + in1.zzzz; 1633 ${OUTPUT} 1634 } 1635 "" 1636 end 1637 1638 1639end # vector_add 1640group vector_subtract "Vector swizzle math operations" 1641 1642 case mediump_vec2_x_x 1643 version 300 es 1644 values 1645 { 1646 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1647 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1648 output float out0 = [ 0.0 | 0.0 | 0.0 | 0.0 | 0.0 ]; 1649 } 1650 1651 both "" 1652 #version 300 es 1653 precision mediump float; 1654 1655 ${DECLARATIONS} 1656 1657 void main() 1658 { 1659 ${SETUP} 1660 out0 = in0.x - in1.x; 1661 ${OUTPUT} 1662 } 1663 "" 1664 end 1665 1666 case mediump_vec2_xx_xx 1667 version 300 es 1668 values 1669 { 1670 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1671 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1672 output vec2 out0 = [ vec2(0.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 0.0) ]; 1673 } 1674 1675 both "" 1676 #version 300 es 1677 precision mediump float; 1678 1679 ${DECLARATIONS} 1680 1681 void main() 1682 { 1683 ${SETUP} 1684 out0 = in0.xx - in1.xx; 1685 ${OUTPUT} 1686 } 1687 "" 1688 end 1689 1690 case mediump_vec2_xy_yx 1691 version 300 es 1692 values 1693 { 1694 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1695 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1696 output vec2 out0 = [ vec2(-0.4, 0.4) | vec2(-0.25, 0.25) | vec2(1.75, -1.75) | vec2(-96.0, 96.0) | vec2(-0.717741935484, 0.717741935484) ]; 1697 } 1698 1699 both "" 1700 #version 300 es 1701 precision mediump float; 1702 1703 ${DECLARATIONS} 1704 1705 void main() 1706 { 1707 ${SETUP} 1708 out0 = in0.xy - in1.yx; 1709 ${OUTPUT} 1710 } 1711 "" 1712 end 1713 1714 case mediump_vec2_yx_xy 1715 version 300 es 1716 values 1717 { 1718 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1719 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1720 output vec2 out0 = [ vec2(0.4, -0.4) | vec2(0.25, -0.25) | vec2(-1.75, 1.75) | vec2(96.0, -96.0) | vec2(0.717741935484, -0.717741935484) ]; 1721 } 1722 1723 both "" 1724 #version 300 es 1725 precision mediump float; 1726 1727 ${DECLARATIONS} 1728 1729 void main() 1730 { 1731 ${SETUP} 1732 out0 = in0.yx - in1.xy; 1733 ${OUTPUT} 1734 } 1735 "" 1736 end 1737 1738 case mediump_vec2_yxy_xyy 1739 version 300 es 1740 values 1741 { 1742 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1743 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1744 output vec3 out0 = [ vec3(0.4, -0.4, 0.0) | vec3(0.25, -0.25, 0.0) | vec3(-1.75, 1.75, 0.0) | vec3(96.0, -96.0, 0.0) | vec3(0.717741935484, -0.717741935484, 0.0) ]; 1745 } 1746 1747 both "" 1748 #version 300 es 1749 precision mediump float; 1750 1751 ${DECLARATIONS} 1752 1753 void main() 1754 { 1755 ${SETUP} 1756 out0 = in0.yxy - in1.xyy; 1757 ${OUTPUT} 1758 } 1759 "" 1760 end 1761 1762 case mediump_vec2_xyxx_yxxx 1763 version 300 es 1764 values 1765 { 1766 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1767 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1768 output vec4 out0 = [ vec4(-0.4, 0.4, 0.0, 0.0) | vec4(-0.25, 0.25, 0.0, 0.0) | vec4(1.75, -1.75, 0.0, 0.0) | vec4(-96.0, 96.0, 0.0, 0.0) | vec4(-0.717741935484, 0.717741935484, 0.0, 0.0) ]; 1769 } 1770 1771 both "" 1772 #version 300 es 1773 precision mediump float; 1774 1775 ${DECLARATIONS} 1776 1777 void main() 1778 { 1779 ${SETUP} 1780 out0 = in0.xyxx - in1.yxxx; 1781 ${OUTPUT} 1782 } 1783 "" 1784 end 1785 1786 case mediump_vec2_yxyx_xyxy 1787 version 300 es 1788 values 1789 { 1790 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1791 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 1792 output vec4 out0 = [ vec4(0.4, -0.4, 0.4, -0.4) | vec4(0.25, -0.25, 0.25, -0.25) | vec4(-1.75, 1.75, -1.75, 1.75) | vec4(96.0, -96.0, 96.0, -96.0) | vec4(0.717741935484, -0.717741935484, 0.717741935484, -0.717741935484) ]; 1793 } 1794 1795 both "" 1796 #version 300 es 1797 precision mediump float; 1798 1799 ${DECLARATIONS} 1800 1801 void main() 1802 { 1803 ${SETUP} 1804 out0 = in0.yxyx - in1.xyxy; 1805 ${OUTPUT} 1806 } 1807 "" 1808 end 1809 1810 case mediump_vec3_x_x 1811 version 300 es 1812 values 1813 { 1814 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1815 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1816 output float out0 = [ 0.0 | 0.0 | 0.0 | 0.0 | 0.0 ]; 1817 } 1818 1819 both "" 1820 #version 300 es 1821 precision mediump float; 1822 1823 ${DECLARATIONS} 1824 1825 void main() 1826 { 1827 ${SETUP} 1828 out0 = in0.x - in1.x; 1829 ${OUTPUT} 1830 } 1831 "" 1832 end 1833 1834 case mediump_vec3_z_z 1835 version 300 es 1836 values 1837 { 1838 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1839 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1840 output float out0 = [ 0.0 | 0.0 | 0.0 | 0.0 | 0.0 ]; 1841 } 1842 1843 both "" 1844 #version 300 es 1845 precision mediump float; 1846 1847 ${DECLARATIONS} 1848 1849 void main() 1850 { 1851 ${SETUP} 1852 out0 = in0.z - in1.z; 1853 ${OUTPUT} 1854 } 1855 "" 1856 end 1857 1858 case mediump_vec3_xz_zx 1859 version 300 es 1860 values 1861 { 1862 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1863 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1864 output vec2 out0 = [ vec2(-0.65, 0.65) | vec2(-0.125, 0.125) | vec2(4.375, -4.375) | vec2(19.0, -19.0) | vec2(-0.802631578947, 0.802631578947) ]; 1865 } 1866 1867 both "" 1868 #version 300 es 1869 precision mediump float; 1870 1871 ${DECLARATIONS} 1872 1873 void main() 1874 { 1875 ${SETUP} 1876 out0 = in0.xz - in1.zx; 1877 ${OUTPUT} 1878 } 1879 "" 1880 end 1881 1882 case mediump_vec3_zz_zz 1883 version 300 es 1884 values 1885 { 1886 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1887 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1888 output vec2 out0 = [ vec2(0.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 0.0) ]; 1889 } 1890 1891 both "" 1892 #version 300 es 1893 precision mediump float; 1894 1895 ${DECLARATIONS} 1896 1897 void main() 1898 { 1899 ${SETUP} 1900 out0 = in0.zz - in1.zz; 1901 ${OUTPUT} 1902 } 1903 "" 1904 end 1905 1906 case mediump_vec3_xyz_yzx 1907 version 300 es 1908 values 1909 { 1910 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1911 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1912 output vec3 out0 = [ vec3(-0.4, -0.25, 0.65) | vec3(-0.25, 0.125, 0.125) | vec3(1.75, 2.625, -4.375) | vec3(-96.0, 115.0, -19.0) | vec3(-0.717741935484, -0.0848896434635, 0.802631578947) ]; 1913 } 1914 1915 both "" 1916 #version 300 es 1917 precision mediump float; 1918 1919 ${DECLARATIONS} 1920 1921 void main() 1922 { 1923 ${SETUP} 1924 out0 = in0.xyz - in1.yzx; 1925 ${OUTPUT} 1926 } 1927 "" 1928 end 1929 1930 case mediump_vec3_zyx_yxz 1931 version 300 es 1932 values 1933 { 1934 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1935 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1936 output vec3 out0 = [ vec3(0.25, 0.4, -0.65) | vec3(-0.125, 0.25, -0.125) | vec3(-2.625, -1.75, 4.375) | vec3(-115.0, 96.0, 19.0) | vec3(0.0848896434635, 0.717741935484, -0.802631578947) ]; 1937 } 1938 1939 both "" 1940 #version 300 es 1941 precision mediump float; 1942 1943 ${DECLARATIONS} 1944 1945 void main() 1946 { 1947 ${SETUP} 1948 out0 = in0.zyx - in1.yxz; 1949 ${OUTPUT} 1950 } 1951 "" 1952 end 1953 1954 case mediump_vec3_xxx_xxx 1955 version 300 es 1956 values 1957 { 1958 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1959 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1960 output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) ]; 1961 } 1962 1963 both "" 1964 #version 300 es 1965 precision mediump float; 1966 1967 ${DECLARATIONS} 1968 1969 void main() 1970 { 1971 ${SETUP} 1972 out0 = in0.xxx - in1.xxx; 1973 ${OUTPUT} 1974 } 1975 "" 1976 end 1977 1978 case mediump_vec3_zzz_zzz 1979 version 300 es 1980 values 1981 { 1982 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1983 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 1984 output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) ]; 1985 } 1986 1987 both "" 1988 #version 300 es 1989 precision mediump float; 1990 1991 ${DECLARATIONS} 1992 1993 void main() 1994 { 1995 ${SETUP} 1996 out0 = in0.zzz - in1.zzz; 1997 ${OUTPUT} 1998 } 1999 "" 2000 end 2001 2002 case mediump_vec3_zzy_zyz 2003 version 300 es 2004 values 2005 { 2006 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2007 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2008 output vec3 out0 = [ vec3(0.0, 0.25, -0.25) | vec3(0.0, -0.125, 0.125) | vec3(0.0, -2.625, 2.625) | vec3(0.0, -115.0, 115.0) | vec3(0.0, 0.0848896434635, -0.0848896434635) ]; 2009 } 2010 2011 both "" 2012 #version 300 es 2013 precision mediump float; 2014 2015 ${DECLARATIONS} 2016 2017 void main() 2018 { 2019 ${SETUP} 2020 out0 = in0.zzy - in1.zyz; 2021 ${OUTPUT} 2022 } 2023 "" 2024 end 2025 2026 case mediump_vec3_yxy_xyy 2027 version 300 es 2028 values 2029 { 2030 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2031 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2032 output vec3 out0 = [ vec3(0.4, -0.4, 0.0) | vec3(0.25, -0.25, 0.0) | vec3(-1.75, 1.75, 0.0) | vec3(96.0, -96.0, 0.0) | vec3(0.717741935484, -0.717741935484, 0.0) ]; 2033 } 2034 2035 both "" 2036 #version 300 es 2037 precision mediump float; 2038 2039 ${DECLARATIONS} 2040 2041 void main() 2042 { 2043 ${SETUP} 2044 out0 = in0.yxy - in1.xyy; 2045 ${OUTPUT} 2046 } 2047 "" 2048 end 2049 2050 case mediump_vec3_xzx_zxx 2051 version 300 es 2052 values 2053 { 2054 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2055 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2056 output vec3 out0 = [ vec3(-0.65, 0.65, 0.0) | vec3(-0.125, 0.125, 0.0) | vec3(4.375, -4.375, 0.0) | vec3(19.0, -19.0, 0.0) | vec3(-0.802631578947, 0.802631578947, 0.0) ]; 2057 } 2058 2059 both "" 2060 #version 300 es 2061 precision mediump float; 2062 2063 ${DECLARATIONS} 2064 2065 void main() 2066 { 2067 ${SETUP} 2068 out0 = in0.xzx - in1.zxx; 2069 ${OUTPUT} 2070 } 2071 "" 2072 end 2073 2074 case mediump_vec3_xyyx_yyxx 2075 version 300 es 2076 values 2077 { 2078 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2079 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2080 output vec4 out0 = [ vec4(-0.4, 0.0, 0.4, 0.0) | vec4(-0.25, 0.0, 0.25, 0.0) | vec4(1.75, 0.0, -1.75, 0.0) | vec4(-96.0, 0.0, 96.0, 0.0) | vec4(-0.717741935484, 0.0, 0.717741935484, 0.0) ]; 2081 } 2082 2083 both "" 2084 #version 300 es 2085 precision mediump float; 2086 2087 ${DECLARATIONS} 2088 2089 void main() 2090 { 2091 ${SETUP} 2092 out0 = in0.xyyx - in1.yyxx; 2093 ${OUTPUT} 2094 } 2095 "" 2096 end 2097 2098 case mediump_vec3_zxyz_xyzz 2099 version 300 es 2100 values 2101 { 2102 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2103 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 2104 output vec4 out0 = [ vec4(0.65, -0.4, -0.25, 0.0) | vec4(0.125, -0.25, 0.125, 0.0) | vec4(-4.375, 1.75, 2.625, 0.0) | vec4(-19.0, -96.0, 115.0, 0.0) | vec4(0.802631578947, -0.717741935484, -0.0848896434635, 0.0) ]; 2105 } 2106 2107 both "" 2108 #version 300 es 2109 precision mediump float; 2110 2111 ${DECLARATIONS} 2112 2113 void main() 2114 { 2115 ${SETUP} 2116 out0 = in0.zxyz - in1.xyzz; 2117 ${OUTPUT} 2118 } 2119 "" 2120 end 2121 2122 case mediump_vec4_x_x 2123 version 300 es 2124 values 2125 { 2126 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2127 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2128 output float out0 = [ 0.0 | 0.0 | 0.0 | 0.0 | 0.0 ]; 2129 } 2130 2131 both "" 2132 #version 300 es 2133 precision mediump float; 2134 2135 ${DECLARATIONS} 2136 2137 void main() 2138 { 2139 ${SETUP} 2140 out0 = in0.x - in1.x; 2141 ${OUTPUT} 2142 } 2143 "" 2144 end 2145 2146 case mediump_vec4_w_w 2147 version 300 es 2148 values 2149 { 2150 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2151 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2152 output float out0 = [ 0.0 | 0.0 | 0.0 | 0.0 | 0.0 ]; 2153 } 2154 2155 both "" 2156 #version 300 es 2157 precision mediump float; 2158 2159 ${DECLARATIONS} 2160 2161 void main() 2162 { 2163 ${SETUP} 2164 out0 = in0.w - in1.w; 2165 ${OUTPUT} 2166 } 2167 "" 2168 end 2169 2170 case mediump_vec4_wx_xw 2171 version 300 es 2172 values 2173 { 2174 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2175 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2176 output vec2 out0 = [ vec2(0.725, -0.725) | vec2(0.75, -0.75) | vec2(9.5, -9.5) | vec2(56.0, -56.0) | vec2(1.0, -1.0) ]; 2177 } 2178 2179 both "" 2180 #version 300 es 2181 precision mediump float; 2182 2183 ${DECLARATIONS} 2184 2185 void main() 2186 { 2187 ${SETUP} 2188 out0 = in0.wx - in1.xw; 2189 ${OUTPUT} 2190 } 2191 "" 2192 end 2193 2194 case mediump_vec4_wz_zw 2195 version 300 es 2196 values 2197 { 2198 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2199 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2200 output vec2 out0 = [ vec2(0.075, -0.075) | vec2(0.625, -0.625) | vec2(13.875, -13.875) | vec2(75.0, -75.0) | vec2(0.197368421053, -0.197368421053) ]; 2201 } 2202 2203 both "" 2204 #version 300 es 2205 precision mediump float; 2206 2207 ${DECLARATIONS} 2208 2209 void main() 2210 { 2211 ${SETUP} 2212 out0 = in0.wz - in1.zw; 2213 ${OUTPUT} 2214 } 2215 "" 2216 end 2217 2218 case mediump_vec4_www_www 2219 version 300 es 2220 values 2221 { 2222 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2223 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2224 output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) ]; 2225 } 2226 2227 both "" 2228 #version 300 es 2229 precision mediump float; 2230 2231 ${DECLARATIONS} 2232 2233 void main() 2234 { 2235 ${SETUP} 2236 out0 = in0.www - in1.www; 2237 ${OUTPUT} 2238 } 2239 "" 2240 end 2241 2242 case mediump_vec4_yyw_ywy 2243 version 300 es 2244 values 2245 { 2246 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2247 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2248 output vec3 out0 = [ vec3(0.0, -0.325, 0.325) | vec3(0.0, -0.5, 0.5) | vec3(0.0, -11.25, 11.25) | vec3(0.0, 40.0, -40.0) | vec3(0.0, -0.282258064516, 0.282258064516) ]; 2249 } 2250 2251 both "" 2252 #version 300 es 2253 precision mediump float; 2254 2255 ${DECLARATIONS} 2256 2257 void main() 2258 { 2259 ${SETUP} 2260 out0 = in0.yyw - in1.ywy; 2261 ${OUTPUT} 2262 } 2263 "" 2264 end 2265 2266 case mediump_vec4_wzy_zyw 2267 version 300 es 2268 values 2269 { 2270 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2271 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2272 output vec3 out0 = [ vec3(0.075, 0.25, -0.325) | vec3(0.625, -0.125, -0.5) | vec3(13.875, -2.625, -11.25) | vec3(75.0, -115.0, 40.0) | vec3(0.197368421053, 0.0848896434635, -0.282258064516) ]; 2273 } 2274 2275 both "" 2276 #version 300 es 2277 precision mediump float; 2278 2279 ${DECLARATIONS} 2280 2281 void main() 2282 { 2283 ${SETUP} 2284 out0 = in0.wzy - in1.zyw; 2285 ${OUTPUT} 2286 } 2287 "" 2288 end 2289 2290 case mediump_vec4_xyzw_yzwx 2291 version 300 es 2292 values 2293 { 2294 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2295 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2296 output vec4 out0 = [ vec4(-0.4, -0.25, -0.075, 0.725) | vec4(-0.25, 0.125, -0.625, 0.75) | vec4(1.75, 2.625, -13.875, 9.5) | vec4(-96.0, 115.0, -75.0, 56.0) | vec4(-0.717741935484, -0.0848896434635, -0.197368421053, 1.0) ]; 2297 } 2298 2299 both "" 2300 #version 300 es 2301 precision mediump float; 2302 2303 ${DECLARATIONS} 2304 2305 void main() 2306 { 2307 ${SETUP} 2308 out0 = in0.xyzw - in1.yzwx; 2309 ${OUTPUT} 2310 } 2311 "" 2312 end 2313 2314 case mediump_vec4_wzyx_zyxw 2315 version 300 es 2316 values 2317 { 2318 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2319 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2320 output vec4 out0 = [ vec4(0.075, 0.25, 0.4, -0.725) | vec4(0.625, -0.125, 0.25, -0.75) | vec4(13.875, -2.625, -1.75, -9.5) | vec4(75.0, -115.0, 96.0, -56.0) | vec4(0.197368421053, 0.0848896434635, 0.717741935484, -1.0) ]; 2321 } 2322 2323 both "" 2324 #version 300 es 2325 precision mediump float; 2326 2327 ${DECLARATIONS} 2328 2329 void main() 2330 { 2331 ${SETUP} 2332 out0 = in0.wzyx - in1.zyxw; 2333 ${OUTPUT} 2334 } 2335 "" 2336 end 2337 2338 case mediump_vec4_xyxy_yxyx 2339 version 300 es 2340 values 2341 { 2342 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2343 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2344 output vec4 out0 = [ vec4(-0.4, 0.4, -0.4, 0.4) | vec4(-0.25, 0.25, -0.25, 0.25) | vec4(1.75, -1.75, 1.75, -1.75) | vec4(-96.0, 96.0, -96.0, 96.0) | vec4(-0.717741935484, 0.717741935484, -0.717741935484, 0.717741935484) ]; 2345 } 2346 2347 both "" 2348 #version 300 es 2349 precision mediump float; 2350 2351 ${DECLARATIONS} 2352 2353 void main() 2354 { 2355 ${SETUP} 2356 out0 = in0.xyxy - in1.yxyx; 2357 ${OUTPUT} 2358 } 2359 "" 2360 end 2361 2362 case mediump_vec4_yzzy_zzyy 2363 version 300 es 2364 values 2365 { 2366 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2367 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2368 output vec4 out0 = [ vec4(-0.25, 0.0, 0.25, 0.0) | vec4(0.125, 0.0, -0.125, 0.0) | vec4(2.625, 0.0, -2.625, 0.0) | vec4(115.0, 0.0, -115.0, 0.0) | vec4(-0.0848896434635, 0.0, 0.0848896434635, 0.0) ]; 2369 } 2370 2371 both "" 2372 #version 300 es 2373 precision mediump float; 2374 2375 ${DECLARATIONS} 2376 2377 void main() 2378 { 2379 ${SETUP} 2380 out0 = in0.yzzy - in1.zzyy; 2381 ${OUTPUT} 2382 } 2383 "" 2384 end 2385 2386 case mediump_vec4_wxww_xwww 2387 version 300 es 2388 values 2389 { 2390 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2391 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2392 output vec4 out0 = [ vec4(0.725, -0.725, 0.0, 0.0) | vec4(0.75, -0.75, 0.0, 0.0) | vec4(9.5, -9.5, 0.0, 0.0) | vec4(56.0, -56.0, 0.0, 0.0) | vec4(1.0, -1.0, 0.0, 0.0) ]; 2393 } 2394 2395 both "" 2396 #version 300 es 2397 precision mediump float; 2398 2399 ${DECLARATIONS} 2400 2401 void main() 2402 { 2403 ${SETUP} 2404 out0 = in0.wxww - in1.xwww; 2405 ${OUTPUT} 2406 } 2407 "" 2408 end 2409 2410 case mediump_vec4_xyxx_yxxx 2411 version 300 es 2412 values 2413 { 2414 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2415 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2416 output vec4 out0 = [ vec4(-0.4, 0.4, 0.0, 0.0) | vec4(-0.25, 0.25, 0.0, 0.0) | vec4(1.75, -1.75, 0.0, 0.0) | vec4(-96.0, 96.0, 0.0, 0.0) | vec4(-0.717741935484, 0.717741935484, 0.0, 0.0) ]; 2417 } 2418 2419 both "" 2420 #version 300 es 2421 precision mediump float; 2422 2423 ${DECLARATIONS} 2424 2425 void main() 2426 { 2427 ${SETUP} 2428 out0 = in0.xyxx - in1.yxxx; 2429 ${OUTPUT} 2430 } 2431 "" 2432 end 2433 2434 case mediump_vec4_zzzz_zzzz 2435 version 300 es 2436 values 2437 { 2438 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2439 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 2440 output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(0.0, 0.0, 0.0, 0.0) | vec4(0.0, 0.0, 0.0, 0.0) | vec4(0.0, 0.0, 0.0, 0.0) | vec4(0.0, 0.0, 0.0, 0.0) ]; 2441 } 2442 2443 both "" 2444 #version 300 es 2445 precision mediump float; 2446 2447 ${DECLARATIONS} 2448 2449 void main() 2450 { 2451 ${SETUP} 2452 out0 = in0.zzzz - in1.zzzz; 2453 ${OUTPUT} 2454 } 2455 "" 2456 end 2457 2458 case mediump_ivec2_x_x 2459 version 300 es 2460 values 2461 { 2462 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2463 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2464 output int out0 = [ 0 | 0 | 0 ]; 2465 } 2466 2467 both "" 2468 #version 300 es 2469 precision mediump float; 2470 2471 ${DECLARATIONS} 2472 2473 void main() 2474 { 2475 ${SETUP} 2476 out0 = in0.x - in1.x; 2477 ${OUTPUT} 2478 } 2479 "" 2480 end 2481 2482 case mediump_ivec2_xx_xx 2483 version 300 es 2484 values 2485 { 2486 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2487 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2488 output ivec2 out0 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(0, 0) ]; 2489 } 2490 2491 both "" 2492 #version 300 es 2493 precision mediump float; 2494 2495 ${DECLARATIONS} 2496 2497 void main() 2498 { 2499 ${SETUP} 2500 out0 = in0.xx - in1.xx; 2501 ${OUTPUT} 2502 } 2503 "" 2504 end 2505 2506 case mediump_ivec2_xy_yx 2507 version 300 es 2508 values 2509 { 2510 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2511 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2512 output ivec2 out0 = [ ivec2(-2, 2) | ivec2(-1, 1) | ivec2(1, -1) ]; 2513 } 2514 2515 both "" 2516 #version 300 es 2517 precision mediump float; 2518 2519 ${DECLARATIONS} 2520 2521 void main() 2522 { 2523 ${SETUP} 2524 out0 = in0.xy - in1.yx; 2525 ${OUTPUT} 2526 } 2527 "" 2528 end 2529 2530 case mediump_ivec2_yx_xy 2531 version 300 es 2532 values 2533 { 2534 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2535 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2536 output ivec2 out0 = [ ivec2(2, -2) | ivec2(1, -1) | ivec2(-1, 1) ]; 2537 } 2538 2539 both "" 2540 #version 300 es 2541 precision mediump float; 2542 2543 ${DECLARATIONS} 2544 2545 void main() 2546 { 2547 ${SETUP} 2548 out0 = in0.yx - in1.xy; 2549 ${OUTPUT} 2550 } 2551 "" 2552 end 2553 2554 case mediump_ivec2_yxy_xyy 2555 version 300 es 2556 values 2557 { 2558 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2559 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2560 output ivec3 out0 = [ ivec3(2, -2, 0) | ivec3(1, -1, 0) | ivec3(-1, 1, 0) ]; 2561 } 2562 2563 both "" 2564 #version 300 es 2565 precision mediump float; 2566 2567 ${DECLARATIONS} 2568 2569 void main() 2570 { 2571 ${SETUP} 2572 out0 = in0.yxy - in1.xyy; 2573 ${OUTPUT} 2574 } 2575 "" 2576 end 2577 2578 case mediump_ivec2_xyxx_yxxx 2579 version 300 es 2580 values 2581 { 2582 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2583 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2584 output ivec4 out0 = [ ivec4(-2, 2, 0, 0) | ivec4(-1, 1, 0, 0) | ivec4(1, -1, 0, 0) ]; 2585 } 2586 2587 both "" 2588 #version 300 es 2589 precision mediump float; 2590 2591 ${DECLARATIONS} 2592 2593 void main() 2594 { 2595 ${SETUP} 2596 out0 = in0.xyxx - in1.yxxx; 2597 ${OUTPUT} 2598 } 2599 "" 2600 end 2601 2602 case mediump_ivec2_yxyx_xyxy 2603 version 300 es 2604 values 2605 { 2606 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2607 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 2608 output ivec4 out0 = [ ivec4(2, -2, 2, -2) | ivec4(1, -1, 1, -1) | ivec4(-1, 1, -1, 1) ]; 2609 } 2610 2611 both "" 2612 #version 300 es 2613 precision mediump float; 2614 2615 ${DECLARATIONS} 2616 2617 void main() 2618 { 2619 ${SETUP} 2620 out0 = in0.yxyx - in1.xyxy; 2621 ${OUTPUT} 2622 } 2623 "" 2624 end 2625 2626 case mediump_ivec3_x_x 2627 version 300 es 2628 values 2629 { 2630 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2631 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2632 output int out0 = [ 0 | 0 | 0 ]; 2633 } 2634 2635 both "" 2636 #version 300 es 2637 precision mediump float; 2638 2639 ${DECLARATIONS} 2640 2641 void main() 2642 { 2643 ${SETUP} 2644 out0 = in0.x - in1.x; 2645 ${OUTPUT} 2646 } 2647 "" 2648 end 2649 2650 case mediump_ivec3_z_z 2651 version 300 es 2652 values 2653 { 2654 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2655 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2656 output int out0 = [ 0 | 0 | 0 ]; 2657 } 2658 2659 both "" 2660 #version 300 es 2661 precision mediump float; 2662 2663 ${DECLARATIONS} 2664 2665 void main() 2666 { 2667 ${SETUP} 2668 out0 = in0.z - in1.z; 2669 ${OUTPUT} 2670 } 2671 "" 2672 end 2673 2674 case mediump_ivec3_xz_zx 2675 version 300 es 2676 values 2677 { 2678 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2679 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2680 output ivec2 out0 = [ ivec2(0, 0) | ivec2(-2, 2) | ivec2(3, -3) ]; 2681 } 2682 2683 both "" 2684 #version 300 es 2685 precision mediump float; 2686 2687 ${DECLARATIONS} 2688 2689 void main() 2690 { 2691 ${SETUP} 2692 out0 = in0.xz - in1.zx; 2693 ${OUTPUT} 2694 } 2695 "" 2696 end 2697 2698 case mediump_ivec3_zz_zz 2699 version 300 es 2700 values 2701 { 2702 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2703 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2704 output ivec2 out0 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(0, 0) ]; 2705 } 2706 2707 both "" 2708 #version 300 es 2709 precision mediump float; 2710 2711 ${DECLARATIONS} 2712 2713 void main() 2714 { 2715 ${SETUP} 2716 out0 = in0.zz - in1.zz; 2717 ${OUTPUT} 2718 } 2719 "" 2720 end 2721 2722 case mediump_ivec3_xyz_yzx 2723 version 300 es 2724 values 2725 { 2726 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2727 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2728 output ivec3 out0 = [ ivec3(-2, 2, 0) | ivec3(-1, -1, 2) | ivec3(1, 2, -3) ]; 2729 } 2730 2731 both "" 2732 #version 300 es 2733 precision mediump float; 2734 2735 ${DECLARATIONS} 2736 2737 void main() 2738 { 2739 ${SETUP} 2740 out0 = in0.xyz - in1.yzx; 2741 ${OUTPUT} 2742 } 2743 "" 2744 end 2745 2746 case mediump_ivec3_zyx_yxz 2747 version 300 es 2748 values 2749 { 2750 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2751 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2752 output ivec3 out0 = [ ivec3(-2, 2, 0) | ivec3(1, 1, -2) | ivec3(-2, -1, 3) ]; 2753 } 2754 2755 both "" 2756 #version 300 es 2757 precision mediump float; 2758 2759 ${DECLARATIONS} 2760 2761 void main() 2762 { 2763 ${SETUP} 2764 out0 = in0.zyx - in1.yxz; 2765 ${OUTPUT} 2766 } 2767 "" 2768 end 2769 2770 case mediump_ivec3_xxx_xxx 2771 version 300 es 2772 values 2773 { 2774 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2775 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2776 output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(0, 0, 0) | ivec3(0, 0, 0) ]; 2777 } 2778 2779 both "" 2780 #version 300 es 2781 precision mediump float; 2782 2783 ${DECLARATIONS} 2784 2785 void main() 2786 { 2787 ${SETUP} 2788 out0 = in0.xxx - in1.xxx; 2789 ${OUTPUT} 2790 } 2791 "" 2792 end 2793 2794 case mediump_ivec3_zzz_zzz 2795 version 300 es 2796 values 2797 { 2798 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2799 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2800 output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(0, 0, 0) | ivec3(0, 0, 0) ]; 2801 } 2802 2803 both "" 2804 #version 300 es 2805 precision mediump float; 2806 2807 ${DECLARATIONS} 2808 2809 void main() 2810 { 2811 ${SETUP} 2812 out0 = in0.zzz - in1.zzz; 2813 ${OUTPUT} 2814 } 2815 "" 2816 end 2817 2818 case mediump_ivec3_zzy_zyz 2819 version 300 es 2820 values 2821 { 2822 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2823 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2824 output ivec3 out0 = [ ivec3(0, -2, 2) | ivec3(0, 1, -1) | ivec3(0, -2, 2) ]; 2825 } 2826 2827 both "" 2828 #version 300 es 2829 precision mediump float; 2830 2831 ${DECLARATIONS} 2832 2833 void main() 2834 { 2835 ${SETUP} 2836 out0 = in0.zzy - in1.zyz; 2837 ${OUTPUT} 2838 } 2839 "" 2840 end 2841 2842 case mediump_ivec3_yxy_xyy 2843 version 300 es 2844 values 2845 { 2846 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2847 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2848 output ivec3 out0 = [ ivec3(2, -2, 0) | ivec3(1, -1, 0) | ivec3(-1, 1, 0) ]; 2849 } 2850 2851 both "" 2852 #version 300 es 2853 precision mediump float; 2854 2855 ${DECLARATIONS} 2856 2857 void main() 2858 { 2859 ${SETUP} 2860 out0 = in0.yxy - in1.xyy; 2861 ${OUTPUT} 2862 } 2863 "" 2864 end 2865 2866 case mediump_ivec3_xzx_zxx 2867 version 300 es 2868 values 2869 { 2870 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2871 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2872 output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(-2, 2, 0) | ivec3(3, -3, 0) ]; 2873 } 2874 2875 both "" 2876 #version 300 es 2877 precision mediump float; 2878 2879 ${DECLARATIONS} 2880 2881 void main() 2882 { 2883 ${SETUP} 2884 out0 = in0.xzx - in1.zxx; 2885 ${OUTPUT} 2886 } 2887 "" 2888 end 2889 2890 case mediump_ivec3_xyyx_yyxx 2891 version 300 es 2892 values 2893 { 2894 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2895 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2896 output ivec4 out0 = [ ivec4(-2, 0, 2, 0) | ivec4(-1, 0, 1, 0) | ivec4(1, 0, -1, 0) ]; 2897 } 2898 2899 both "" 2900 #version 300 es 2901 precision mediump float; 2902 2903 ${DECLARATIONS} 2904 2905 void main() 2906 { 2907 ${SETUP} 2908 out0 = in0.xyyx - in1.yyxx; 2909 ${OUTPUT} 2910 } 2911 "" 2912 end 2913 2914 case mediump_ivec3_zxyz_xyzz 2915 version 300 es 2916 values 2917 { 2918 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2919 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 2920 output ivec4 out0 = [ ivec4(0, -2, 2, 0) | ivec4(2, -1, -1, 0) | ivec4(-3, 1, 2, 0) ]; 2921 } 2922 2923 both "" 2924 #version 300 es 2925 precision mediump float; 2926 2927 ${DECLARATIONS} 2928 2929 void main() 2930 { 2931 ${SETUP} 2932 out0 = in0.zxyz - in1.xyzz; 2933 ${OUTPUT} 2934 } 2935 "" 2936 end 2937 2938 case mediump_ivec4_x_x 2939 version 300 es 2940 values 2941 { 2942 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 2943 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 2944 output int out0 = [ 0 | 0 | 0 ]; 2945 } 2946 2947 both "" 2948 #version 300 es 2949 precision mediump float; 2950 2951 ${DECLARATIONS} 2952 2953 void main() 2954 { 2955 ${SETUP} 2956 out0 = in0.x - in1.x; 2957 ${OUTPUT} 2958 } 2959 "" 2960 end 2961 2962 case mediump_ivec4_w_w 2963 version 300 es 2964 values 2965 { 2966 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 2967 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 2968 output int out0 = [ 0 | 0 | 0 ]; 2969 } 2970 2971 both "" 2972 #version 300 es 2973 precision mediump float; 2974 2975 ${DECLARATIONS} 2976 2977 void main() 2978 { 2979 ${SETUP} 2980 out0 = in0.w - in1.w; 2981 ${OUTPUT} 2982 } 2983 "" 2984 end 2985 2986 case mediump_ivec4_wx_xw 2987 version 300 es 2988 values 2989 { 2990 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 2991 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 2992 output ivec2 out0 = [ ivec2(2, -2) | ivec2(3, -3) | ivec2(-8, 8) ]; 2993 } 2994 2995 both "" 2996 #version 300 es 2997 precision mediump float; 2998 2999 ${DECLARATIONS} 3000 3001 void main() 3002 { 3003 ${SETUP} 3004 out0 = in0.wx - in1.xw; 3005 ${OUTPUT} 3006 } 3007 "" 3008 end 3009 3010 case mediump_ivec4_wz_zw 3011 version 300 es 3012 values 3013 { 3014 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3015 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3016 output ivec2 out0 = [ ivec2(2, -2) | ivec2(1, -1) | ivec2(-5, 5) ]; 3017 } 3018 3019 both "" 3020 #version 300 es 3021 precision mediump float; 3022 3023 ${DECLARATIONS} 3024 3025 void main() 3026 { 3027 ${SETUP} 3028 out0 = in0.wz - in1.zw; 3029 ${OUTPUT} 3030 } 3031 "" 3032 end 3033 3034 case mediump_ivec4_www_www 3035 version 300 es 3036 values 3037 { 3038 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3039 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3040 output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(0, 0, 0) | ivec3(0, 0, 0) ]; 3041 } 3042 3043 both "" 3044 #version 300 es 3045 precision mediump float; 3046 3047 ${DECLARATIONS} 3048 3049 void main() 3050 { 3051 ${SETUP} 3052 out0 = in0.www - in1.www; 3053 ${OUTPUT} 3054 } 3055 "" 3056 end 3057 3058 case mediump_ivec4_yyw_ywy 3059 version 300 es 3060 values 3061 { 3062 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3063 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3064 output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(0, -2, 2) | ivec3(0, 7, -7) ]; 3065 } 3066 3067 both "" 3068 #version 300 es 3069 precision mediump float; 3070 3071 ${DECLARATIONS} 3072 3073 void main() 3074 { 3075 ${SETUP} 3076 out0 = in0.yyw - in1.ywy; 3077 ${OUTPUT} 3078 } 3079 "" 3080 end 3081 3082 case mediump_ivec4_wzy_zyw 3083 version 300 es 3084 values 3085 { 3086 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3087 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3088 output ivec3 out0 = [ ivec3(2, -2, 0) | ivec3(1, 1, -2) | ivec3(-5, -2, 7) ]; 3089 } 3090 3091 both "" 3092 #version 300 es 3093 precision mediump float; 3094 3095 ${DECLARATIONS} 3096 3097 void main() 3098 { 3099 ${SETUP} 3100 out0 = in0.wzy - in1.zyw; 3101 ${OUTPUT} 3102 } 3103 "" 3104 end 3105 3106 case mediump_ivec4_xyzw_yzwx 3107 version 300 es 3108 values 3109 { 3110 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3111 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3112 output ivec4 out0 = [ ivec4(-2, 2, -2, 2) | ivec4(-1, -1, -1, 3) | ivec4(1, 2, 5, -8) ]; 3113 } 3114 3115 both "" 3116 #version 300 es 3117 precision mediump float; 3118 3119 ${DECLARATIONS} 3120 3121 void main() 3122 { 3123 ${SETUP} 3124 out0 = in0.xyzw - in1.yzwx; 3125 ${OUTPUT} 3126 } 3127 "" 3128 end 3129 3130 case mediump_ivec4_wzyx_zyxw 3131 version 300 es 3132 values 3133 { 3134 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3135 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3136 output ivec4 out0 = [ ivec4(2, -2, 2, -2) | ivec4(1, 1, 1, -3) | ivec4(-5, -2, -1, 8) ]; 3137 } 3138 3139 both "" 3140 #version 300 es 3141 precision mediump float; 3142 3143 ${DECLARATIONS} 3144 3145 void main() 3146 { 3147 ${SETUP} 3148 out0 = in0.wzyx - in1.zyxw; 3149 ${OUTPUT} 3150 } 3151 "" 3152 end 3153 3154 case mediump_ivec4_xyxy_yxyx 3155 version 300 es 3156 values 3157 { 3158 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3159 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3160 output ivec4 out0 = [ ivec4(-2, 2, -2, 2) | ivec4(-1, 1, -1, 1) | ivec4(1, -1, 1, -1) ]; 3161 } 3162 3163 both "" 3164 #version 300 es 3165 precision mediump float; 3166 3167 ${DECLARATIONS} 3168 3169 void main() 3170 { 3171 ${SETUP} 3172 out0 = in0.xyxy - in1.yxyx; 3173 ${OUTPUT} 3174 } 3175 "" 3176 end 3177 3178 case mediump_ivec4_yzzy_zzyy 3179 version 300 es 3180 values 3181 { 3182 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3183 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3184 output ivec4 out0 = [ ivec4(2, 0, -2, 0) | ivec4(-1, 0, 1, 0) | ivec4(2, 0, -2, 0) ]; 3185 } 3186 3187 both "" 3188 #version 300 es 3189 precision mediump float; 3190 3191 ${DECLARATIONS} 3192 3193 void main() 3194 { 3195 ${SETUP} 3196 out0 = in0.yzzy - in1.zzyy; 3197 ${OUTPUT} 3198 } 3199 "" 3200 end 3201 3202 case mediump_ivec4_wxww_xwww 3203 version 300 es 3204 values 3205 { 3206 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3207 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3208 output ivec4 out0 = [ ivec4(2, -2, 0, 0) | ivec4(3, -3, 0, 0) | ivec4(-8, 8, 0, 0) ]; 3209 } 3210 3211 both "" 3212 #version 300 es 3213 precision mediump float; 3214 3215 ${DECLARATIONS} 3216 3217 void main() 3218 { 3219 ${SETUP} 3220 out0 = in0.wxww - in1.xwww; 3221 ${OUTPUT} 3222 } 3223 "" 3224 end 3225 3226 case mediump_ivec4_xyxx_yxxx 3227 version 300 es 3228 values 3229 { 3230 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3231 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3232 output ivec4 out0 = [ ivec4(-2, 2, 0, 0) | ivec4(-1, 1, 0, 0) | ivec4(1, -1, 0, 0) ]; 3233 } 3234 3235 both "" 3236 #version 300 es 3237 precision mediump float; 3238 3239 ${DECLARATIONS} 3240 3241 void main() 3242 { 3243 ${SETUP} 3244 out0 = in0.xyxx - in1.yxxx; 3245 ${OUTPUT} 3246 } 3247 "" 3248 end 3249 3250 case mediump_ivec4_zzzz_zzzz 3251 version 300 es 3252 values 3253 { 3254 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3255 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 3256 output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(0, 0, 0, 0) | ivec4(0, 0, 0, 0) ]; 3257 } 3258 3259 both "" 3260 #version 300 es 3261 precision mediump float; 3262 3263 ${DECLARATIONS} 3264 3265 void main() 3266 { 3267 ${SETUP} 3268 out0 = in0.zzzz - in1.zzzz; 3269 ${OUTPUT} 3270 } 3271 "" 3272 end 3273 3274 3275end # vector_subtract 3276group vector_multiply "Vector swizzle math operations" 3277 3278 case mediump_vec2_x_x 3279 version 300 es 3280 values 3281 { 3282 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3283 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3284 output float out0 = [ 0.01 | 1.0 | 0.25 | 1024.0 | 0.5625 ]; 3285 } 3286 3287 both "" 3288 #version 300 es 3289 precision mediump float; 3290 3291 ${DECLARATIONS} 3292 3293 void main() 3294 { 3295 ${SETUP} 3296 out0 = in0.x * in1.x; 3297 ${OUTPUT} 3298 } 3299 "" 3300 end 3301 3302 case mediump_vec2_xx_xx 3303 version 300 es 3304 values 3305 { 3306 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3307 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3308 output vec2 out0 = [ vec2(0.01, 0.01) | vec2(1.0, 1.0) | vec2(0.25, 0.25) | vec2(1024.0, 1024.0) | vec2(0.5625, 0.5625) ]; 3309 } 3310 3311 both "" 3312 #version 300 es 3313 precision mediump float; 3314 3315 ${DECLARATIONS} 3316 3317 void main() 3318 { 3319 ${SETUP} 3320 out0 = in0.xx * in1.xx; 3321 ${OUTPUT} 3322 } 3323 "" 3324 end 3325 3326 case mediump_vec2_xy_yx 3327 version 300 es 3328 values 3329 { 3330 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3331 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3332 output vec2 out0 = [ vec2(0.05, 0.05) | vec2(1.25, 1.25) | vec2(1.125, 1.125) | vec2(-2048.0, -2048.0) | vec2(0.0241935483871, 0.0241935483871) ]; 3333 } 3334 3335 both "" 3336 #version 300 es 3337 precision mediump float; 3338 3339 ${DECLARATIONS} 3340 3341 void main() 3342 { 3343 ${SETUP} 3344 out0 = in0.xy * in1.yx; 3345 ${OUTPUT} 3346 } 3347 "" 3348 end 3349 3350 case mediump_vec2_yx_xy 3351 version 300 es 3352 values 3353 { 3354 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3355 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3356 output vec2 out0 = [ vec2(0.05, 0.05) | vec2(1.25, 1.25) | vec2(1.125, 1.125) | vec2(-2048.0, -2048.0) | vec2(0.0241935483871, 0.0241935483871) ]; 3357 } 3358 3359 both "" 3360 #version 300 es 3361 precision mediump float; 3362 3363 ${DECLARATIONS} 3364 3365 void main() 3366 { 3367 ${SETUP} 3368 out0 = in0.yx * in1.xy; 3369 ${OUTPUT} 3370 } 3371 "" 3372 end 3373 3374 case mediump_vec2_yxy_xyy 3375 version 300 es 3376 values 3377 { 3378 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3379 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3380 output vec3 out0 = [ vec3(0.05, 0.05, 0.25) | vec3(1.25, 1.25, 1.5625) | vec3(1.125, 1.125, 5.0625) | vec3(-2048.0, -2048.0, 4096.0) | vec3(0.0241935483871, 0.0241935483871, 0.00104058272633) ]; 3381 } 3382 3383 both "" 3384 #version 300 es 3385 precision mediump float; 3386 3387 ${DECLARATIONS} 3388 3389 void main() 3390 { 3391 ${SETUP} 3392 out0 = in0.yxy * in1.xyy; 3393 ${OUTPUT} 3394 } 3395 "" 3396 end 3397 3398 case mediump_vec2_xyxx_yxxx 3399 version 300 es 3400 values 3401 { 3402 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3403 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3404 output vec4 out0 = [ vec4(0.05, 0.05, 0.01, 0.01) | vec4(1.25, 1.25, 1.0, 1.0) | vec4(1.125, 1.125, 0.25, 0.25) | vec4(-2048.0, -2048.0, 1024.0, 1024.0) | vec4(0.0241935483871, 0.0241935483871, 0.5625, 0.5625) ]; 3405 } 3406 3407 both "" 3408 #version 300 es 3409 precision mediump float; 3410 3411 ${DECLARATIONS} 3412 3413 void main() 3414 { 3415 ${SETUP} 3416 out0 = in0.xyxx * in1.yxxx; 3417 ${OUTPUT} 3418 } 3419 "" 3420 end 3421 3422 case mediump_vec2_yxyx_xyxy 3423 version 300 es 3424 values 3425 { 3426 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3427 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 3428 output vec4 out0 = [ vec4(0.05, 0.05, 0.05, 0.05) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(1.125, 1.125, 1.125, 1.125) | vec4(-2048.0, -2048.0, -2048.0, -2048.0) | vec4(0.0241935483871, 0.0241935483871, 0.0241935483871, 0.0241935483871) ]; 3429 } 3430 3431 both "" 3432 #version 300 es 3433 precision mediump float; 3434 3435 ${DECLARATIONS} 3436 3437 void main() 3438 { 3439 ${SETUP} 3440 out0 = in0.yxyx * in1.xyxy; 3441 ${OUTPUT} 3442 } 3443 "" 3444 end 3445 3446 case mediump_vec3_x_x 3447 version 300 es 3448 values 3449 { 3450 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3451 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3452 output float out0 = [ 0.01 | 1.0 | 0.25 | 1024.0 | 0.5625 ]; 3453 } 3454 3455 both "" 3456 #version 300 es 3457 precision mediump float; 3458 3459 ${DECLARATIONS} 3460 3461 void main() 3462 { 3463 ${SETUP} 3464 out0 = in0.x * in1.x; 3465 ${OUTPUT} 3466 } 3467 "" 3468 end 3469 3470 case mediump_vec3_z_z 3471 version 300 es 3472 values 3473 { 3474 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3475 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3476 output float out0 = [ 0.5625 | 1.265625 | 23.765625 | 2601.0 | 0.00277008310249 ]; 3477 } 3478 3479 both "" 3480 #version 300 es 3481 precision mediump float; 3482 3483 ${DECLARATIONS} 3484 3485 void main() 3486 { 3487 ${SETUP} 3488 out0 = in0.z * in1.z; 3489 ${OUTPUT} 3490 } 3491 "" 3492 end 3493 3494 case mediump_vec3_xz_zx 3495 version 300 es 3496 values 3497 { 3498 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3499 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3500 output vec2 out0 = [ vec2(0.075, 0.075) | vec2(1.125, 1.125) | vec2(2.4375, 2.4375) | vec2(1632.0, 1632.0) | vec2(-0.0394736842105, -0.0394736842105) ]; 3501 } 3502 3503 both "" 3504 #version 300 es 3505 precision mediump float; 3506 3507 ${DECLARATIONS} 3508 3509 void main() 3510 { 3511 ${SETUP} 3512 out0 = in0.xz * in1.zx; 3513 ${OUTPUT} 3514 } 3515 "" 3516 end 3517 3518 case mediump_vec3_zz_zz 3519 version 300 es 3520 values 3521 { 3522 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3523 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3524 output vec2 out0 = [ vec2(0.5625, 0.5625) | vec2(1.265625, 1.265625) | vec2(23.765625, 23.765625) | vec2(2601.0, 2601.0) | vec2(0.00277008310249, 0.00277008310249) ]; 3525 } 3526 3527 both "" 3528 #version 300 es 3529 precision mediump float; 3530 3531 ${DECLARATIONS} 3532 3533 void main() 3534 { 3535 ${SETUP} 3536 out0 = in0.zz * in1.zz; 3537 ${OUTPUT} 3538 } 3539 "" 3540 end 3541 3542 case mediump_vec3_xyz_yzx 3543 version 300 es 3544 values 3545 { 3546 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3547 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3548 output vec3 out0 = [ vec3(0.05, 0.375, 0.075) | vec3(1.25, 1.40625, 1.125) | vec3(1.125, 10.96875, 2.4375) | vec3(-2048.0, -3264.0, 1632.0) | vec3(0.0241935483871, -0.00169779286927, -0.0394736842105) ]; 3549 } 3550 3551 both "" 3552 #version 300 es 3553 precision mediump float; 3554 3555 ${DECLARATIONS} 3556 3557 void main() 3558 { 3559 ${SETUP} 3560 out0 = in0.xyz * in1.yzx; 3561 ${OUTPUT} 3562 } 3563 "" 3564 end 3565 3566 case mediump_vec3_zyx_yxz 3567 version 300 es 3568 values 3569 { 3570 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3571 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3572 output vec3 out0 = [ vec3(0.375, 0.05, 0.075) | vec3(1.40625, 1.25, 1.125) | vec3(10.96875, 1.125, 2.4375) | vec3(-3264.0, -2048.0, 1632.0) | vec3(-0.00169779286927, 0.0241935483871, -0.0394736842105) ]; 3573 } 3574 3575 both "" 3576 #version 300 es 3577 precision mediump float; 3578 3579 ${DECLARATIONS} 3580 3581 void main() 3582 { 3583 ${SETUP} 3584 out0 = in0.zyx * in1.yxz; 3585 ${OUTPUT} 3586 } 3587 "" 3588 end 3589 3590 case mediump_vec3_xxx_xxx 3591 version 300 es 3592 values 3593 { 3594 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3595 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3596 output vec3 out0 = [ vec3(0.01, 0.01, 0.01) | vec3(1.0, 1.0, 1.0) | vec3(0.25, 0.25, 0.25) | vec3(1024.0, 1024.0, 1024.0) | vec3(0.5625, 0.5625, 0.5625) ]; 3597 } 3598 3599 both "" 3600 #version 300 es 3601 precision mediump float; 3602 3603 ${DECLARATIONS} 3604 3605 void main() 3606 { 3607 ${SETUP} 3608 out0 = in0.xxx * in1.xxx; 3609 ${OUTPUT} 3610 } 3611 "" 3612 end 3613 3614 case mediump_vec3_zzz_zzz 3615 version 300 es 3616 values 3617 { 3618 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3619 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3620 output vec3 out0 = [ vec3(0.5625, 0.5625, 0.5625) | vec3(1.265625, 1.265625, 1.265625) | vec3(23.765625, 23.765625, 23.765625) | vec3(2601.0, 2601.0, 2601.0) | vec3(0.00277008310249, 0.00277008310249, 0.00277008310249) ]; 3621 } 3622 3623 both "" 3624 #version 300 es 3625 precision mediump float; 3626 3627 ${DECLARATIONS} 3628 3629 void main() 3630 { 3631 ${SETUP} 3632 out0 = in0.zzz * in1.zzz; 3633 ${OUTPUT} 3634 } 3635 "" 3636 end 3637 3638 case mediump_vec3_zzy_zyz 3639 version 300 es 3640 values 3641 { 3642 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3643 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3644 output vec3 out0 = [ vec3(0.5625, 0.375, 0.375) | vec3(1.265625, 1.40625, 1.40625) | vec3(23.765625, 10.96875, 10.96875) | vec3(2601.0, -3264.0, -3264.0) | vec3(0.00277008310249, -0.00169779286927, -0.00169779286927) ]; 3645 } 3646 3647 both "" 3648 #version 300 es 3649 precision mediump float; 3650 3651 ${DECLARATIONS} 3652 3653 void main() 3654 { 3655 ${SETUP} 3656 out0 = in0.zzy * in1.zyz; 3657 ${OUTPUT} 3658 } 3659 "" 3660 end 3661 3662 case mediump_vec3_yxy_xyy 3663 version 300 es 3664 values 3665 { 3666 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3667 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3668 output vec3 out0 = [ vec3(0.05, 0.05, 0.25) | vec3(1.25, 1.25, 1.5625) | vec3(1.125, 1.125, 5.0625) | vec3(-2048.0, -2048.0, 4096.0) | vec3(0.0241935483871, 0.0241935483871, 0.00104058272633) ]; 3669 } 3670 3671 both "" 3672 #version 300 es 3673 precision mediump float; 3674 3675 ${DECLARATIONS} 3676 3677 void main() 3678 { 3679 ${SETUP} 3680 out0 = in0.yxy * in1.xyy; 3681 ${OUTPUT} 3682 } 3683 "" 3684 end 3685 3686 case mediump_vec3_xzx_zxx 3687 version 300 es 3688 values 3689 { 3690 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3691 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3692 output vec3 out0 = [ vec3(0.075, 0.075, 0.01) | vec3(1.125, 1.125, 1.0) | vec3(2.4375, 2.4375, 0.25) | vec3(1632.0, 1632.0, 1024.0) | vec3(-0.0394736842105, -0.0394736842105, 0.5625) ]; 3693 } 3694 3695 both "" 3696 #version 300 es 3697 precision mediump float; 3698 3699 ${DECLARATIONS} 3700 3701 void main() 3702 { 3703 ${SETUP} 3704 out0 = in0.xzx * in1.zxx; 3705 ${OUTPUT} 3706 } 3707 "" 3708 end 3709 3710 case mediump_vec3_xyyx_yyxx 3711 version 300 es 3712 values 3713 { 3714 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3715 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3716 output vec4 out0 = [ vec4(0.05, 0.25, 0.05, 0.01) | vec4(1.25, 1.5625, 1.25, 1.0) | vec4(1.125, 5.0625, 1.125, 0.25) | vec4(-2048.0, 4096.0, -2048.0, 1024.0) | vec4(0.0241935483871, 0.00104058272633, 0.0241935483871, 0.5625) ]; 3717 } 3718 3719 both "" 3720 #version 300 es 3721 precision mediump float; 3722 3723 ${DECLARATIONS} 3724 3725 void main() 3726 { 3727 ${SETUP} 3728 out0 = in0.xyyx * in1.yyxx; 3729 ${OUTPUT} 3730 } 3731 "" 3732 end 3733 3734 case mediump_vec3_zxyz_xyzz 3735 version 300 es 3736 values 3737 { 3738 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3739 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 3740 output vec4 out0 = [ vec4(0.075, 0.05, 0.375, 0.5625) | vec4(1.125, 1.25, 1.40625, 1.265625) | vec4(2.4375, 1.125, 10.96875, 23.765625) | vec4(1632.0, -2048.0, -3264.0, 2601.0) | vec4(-0.0394736842105, 0.0241935483871, -0.00169779286927, 0.00277008310249) ]; 3741 } 3742 3743 both "" 3744 #version 300 es 3745 precision mediump float; 3746 3747 ${DECLARATIONS} 3748 3749 void main() 3750 { 3751 ${SETUP} 3752 out0 = in0.zxyz * in1.xyzz; 3753 ${OUTPUT} 3754 } 3755 "" 3756 end 3757 3758 case mediump_vec4_x_x 3759 version 300 es 3760 values 3761 { 3762 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3763 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3764 output float out0 = [ 0.01 | 1.0 | 0.25 | 1024.0 | 0.5625 ]; 3765 } 3766 3767 both "" 3768 #version 300 es 3769 precision mediump float; 3770 3771 ${DECLARATIONS} 3772 3773 void main() 3774 { 3775 ${SETUP} 3776 out0 = in0.x * in1.x; 3777 ${OUTPUT} 3778 } 3779 "" 3780 end 3781 3782 case mediump_vec4_w_w 3783 version 300 es 3784 values 3785 { 3786 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3787 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3788 output float out0 = [ 0.680625 | 3.0625 | 81.0 | 576.0 | 0.0625 ]; 3789 } 3790 3791 both "" 3792 #version 300 es 3793 precision mediump float; 3794 3795 ${DECLARATIONS} 3796 3797 void main() 3798 { 3799 ${SETUP} 3800 out0 = in0.w * in1.w; 3801 ${OUTPUT} 3802 } 3803 "" 3804 end 3805 3806 case mediump_vec4_wx_xw 3807 version 300 es 3808 values 3809 { 3810 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3811 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3812 output vec2 out0 = [ vec2(0.0825, 0.0825) | vec2(1.75, 1.75) | vec2(-4.5, -4.5) | vec2(-768.0, -768.0) | vec2(-0.1875, -0.1875) ]; 3813 } 3814 3815 both "" 3816 #version 300 es 3817 precision mediump float; 3818 3819 ${DECLARATIONS} 3820 3821 void main() 3822 { 3823 ${SETUP} 3824 out0 = in0.wx * in1.xw; 3825 ${OUTPUT} 3826 } 3827 "" 3828 end 3829 3830 case mediump_vec4_wz_zw 3831 version 300 es 3832 values 3833 { 3834 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3835 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3836 output vec2 out0 = [ vec2(0.61875, 0.61875) | vec2(1.96875, 1.96875) | vec2(-43.875, -43.875) | vec2(-1224.0, -1224.0) | vec2(0.0131578947368, 0.0131578947368) ]; 3837 } 3838 3839 both "" 3840 #version 300 es 3841 precision mediump float; 3842 3843 ${DECLARATIONS} 3844 3845 void main() 3846 { 3847 ${SETUP} 3848 out0 = in0.wz * in1.zw; 3849 ${OUTPUT} 3850 } 3851 "" 3852 end 3853 3854 case mediump_vec4_www_www 3855 version 300 es 3856 values 3857 { 3858 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3859 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3860 output vec3 out0 = [ vec3(0.680625, 0.680625, 0.680625) | vec3(3.0625, 3.0625, 3.0625) | vec3(81.0, 81.0, 81.0) | vec3(576.0, 576.0, 576.0) | vec3(0.0625, 0.0625, 0.0625) ]; 3861 } 3862 3863 both "" 3864 #version 300 es 3865 precision mediump float; 3866 3867 ${DECLARATIONS} 3868 3869 void main() 3870 { 3871 ${SETUP} 3872 out0 = in0.www * in1.www; 3873 ${OUTPUT} 3874 } 3875 "" 3876 end 3877 3878 case mediump_vec4_yyw_ywy 3879 version 300 es 3880 values 3881 { 3882 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3883 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3884 output vec3 out0 = [ vec3(0.25, 0.4125, 0.4125) | vec3(1.5625, 2.1875, 2.1875) | vec3(5.0625, -20.25, -20.25) | vec3(4096.0, 1536.0, 1536.0) | vec3(0.00104058272633, -0.00806451612903, -0.00806451612903) ]; 3885 } 3886 3887 both "" 3888 #version 300 es 3889 precision mediump float; 3890 3891 ${DECLARATIONS} 3892 3893 void main() 3894 { 3895 ${SETUP} 3896 out0 = in0.yyw * in1.ywy; 3897 ${OUTPUT} 3898 } 3899 "" 3900 end 3901 3902 case mediump_vec4_wzy_zyw 3903 version 300 es 3904 values 3905 { 3906 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3907 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3908 output vec3 out0 = [ vec3(0.61875, 0.375, 0.4125) | vec3(1.96875, 1.40625, 2.1875) | vec3(-43.875, 10.96875, -20.25) | vec3(-1224.0, -3264.0, 1536.0) | vec3(0.0131578947368, -0.00169779286927, -0.00806451612903) ]; 3909 } 3910 3911 both "" 3912 #version 300 es 3913 precision mediump float; 3914 3915 ${DECLARATIONS} 3916 3917 void main() 3918 { 3919 ${SETUP} 3920 out0 = in0.wzy * in1.zyw; 3921 ${OUTPUT} 3922 } 3923 "" 3924 end 3925 3926 case mediump_vec4_xyzw_yzwx 3927 version 300 es 3928 values 3929 { 3930 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3931 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3932 output vec4 out0 = [ vec4(0.05, 0.375, 0.61875, 0.0825) | vec4(1.25, 1.40625, 1.96875, 1.75) | vec4(1.125, 10.96875, -43.875, -4.5) | vec4(-2048.0, -3264.0, -1224.0, -768.0) | vec4(0.0241935483871, -0.00169779286927, 0.0131578947368, -0.1875) ]; 3933 } 3934 3935 both "" 3936 #version 300 es 3937 precision mediump float; 3938 3939 ${DECLARATIONS} 3940 3941 void main() 3942 { 3943 ${SETUP} 3944 out0 = in0.xyzw * in1.yzwx; 3945 ${OUTPUT} 3946 } 3947 "" 3948 end 3949 3950 case mediump_vec4_wzyx_zyxw 3951 version 300 es 3952 values 3953 { 3954 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3955 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3956 output vec4 out0 = [ vec4(0.61875, 0.375, 0.05, 0.0825) | vec4(1.96875, 1.40625, 1.25, 1.75) | vec4(-43.875, 10.96875, 1.125, -4.5) | vec4(-1224.0, -3264.0, -2048.0, -768.0) | vec4(0.0131578947368, -0.00169779286927, 0.0241935483871, -0.1875) ]; 3957 } 3958 3959 both "" 3960 #version 300 es 3961 precision mediump float; 3962 3963 ${DECLARATIONS} 3964 3965 void main() 3966 { 3967 ${SETUP} 3968 out0 = in0.wzyx * in1.zyxw; 3969 ${OUTPUT} 3970 } 3971 "" 3972 end 3973 3974 case mediump_vec4_xyxy_yxyx 3975 version 300 es 3976 values 3977 { 3978 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3979 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 3980 output vec4 out0 = [ vec4(0.05, 0.05, 0.05, 0.05) | vec4(1.25, 1.25, 1.25, 1.25) | vec4(1.125, 1.125, 1.125, 1.125) | vec4(-2048.0, -2048.0, -2048.0, -2048.0) | vec4(0.0241935483871, 0.0241935483871, 0.0241935483871, 0.0241935483871) ]; 3981 } 3982 3983 both "" 3984 #version 300 es 3985 precision mediump float; 3986 3987 ${DECLARATIONS} 3988 3989 void main() 3990 { 3991 ${SETUP} 3992 out0 = in0.xyxy * in1.yxyx; 3993 ${OUTPUT} 3994 } 3995 "" 3996 end 3997 3998 case mediump_vec4_yzzy_zzyy 3999 version 300 es 4000 values 4001 { 4002 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4003 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4004 output vec4 out0 = [ vec4(0.375, 0.5625, 0.375, 0.25) | vec4(1.40625, 1.265625, 1.40625, 1.5625) | vec4(10.96875, 23.765625, 10.96875, 5.0625) | vec4(-3264.0, 2601.0, -3264.0, 4096.0) | vec4(-0.00169779286927, 0.00277008310249, -0.00169779286927, 0.00104058272633) ]; 4005 } 4006 4007 both "" 4008 #version 300 es 4009 precision mediump float; 4010 4011 ${DECLARATIONS} 4012 4013 void main() 4014 { 4015 ${SETUP} 4016 out0 = in0.yzzy * in1.zzyy; 4017 ${OUTPUT} 4018 } 4019 "" 4020 end 4021 4022 case mediump_vec4_wxww_xwww 4023 version 300 es 4024 values 4025 { 4026 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4027 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4028 output vec4 out0 = [ vec4(0.0825, 0.0825, 0.680625, 0.680625) | vec4(1.75, 1.75, 3.0625, 3.0625) | vec4(-4.5, -4.5, 81.0, 81.0) | vec4(-768.0, -768.0, 576.0, 576.0) | vec4(-0.1875, -0.1875, 0.0625, 0.0625) ]; 4029 } 4030 4031 both "" 4032 #version 300 es 4033 precision mediump float; 4034 4035 ${DECLARATIONS} 4036 4037 void main() 4038 { 4039 ${SETUP} 4040 out0 = in0.wxww * in1.xwww; 4041 ${OUTPUT} 4042 } 4043 "" 4044 end 4045 4046 case mediump_vec4_xyxx_yxxx 4047 version 300 es 4048 values 4049 { 4050 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4051 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4052 output vec4 out0 = [ vec4(0.05, 0.05, 0.01, 0.01) | vec4(1.25, 1.25, 1.0, 1.0) | vec4(1.125, 1.125, 0.25, 0.25) | vec4(-2048.0, -2048.0, 1024.0, 1024.0) | vec4(0.0241935483871, 0.0241935483871, 0.5625, 0.5625) ]; 4053 } 4054 4055 both "" 4056 #version 300 es 4057 precision mediump float; 4058 4059 ${DECLARATIONS} 4060 4061 void main() 4062 { 4063 ${SETUP} 4064 out0 = in0.xyxx * in1.yxxx; 4065 ${OUTPUT} 4066 } 4067 "" 4068 end 4069 4070 case mediump_vec4_zzzz_zzzz 4071 version 300 es 4072 values 4073 { 4074 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4075 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 4076 output vec4 out0 = [ vec4(0.5625, 0.5625, 0.5625, 0.5625) | vec4(1.265625, 1.265625, 1.265625, 1.265625) | vec4(23.765625, 23.765625, 23.765625, 23.765625) | vec4(2601.0, 2601.0, 2601.0, 2601.0) | vec4(0.00277008310249, 0.00277008310249, 0.00277008310249, 0.00277008310249) ]; 4077 } 4078 4079 both "" 4080 #version 300 es 4081 precision mediump float; 4082 4083 ${DECLARATIONS} 4084 4085 void main() 4086 { 4087 ${SETUP} 4088 out0 = in0.zzzz * in1.zzzz; 4089 ${OUTPUT} 4090 } 4091 "" 4092 end 4093 4094 case mediump_ivec2_x_x 4095 version 300 es 4096 values 4097 { 4098 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4099 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4100 output int out0 = [ 1 | 1 | 1 ]; 4101 } 4102 4103 both "" 4104 #version 300 es 4105 precision mediump float; 4106 4107 ${DECLARATIONS} 4108 4109 void main() 4110 { 4111 ${SETUP} 4112 out0 = in0.x * in1.x; 4113 ${OUTPUT} 4114 } 4115 "" 4116 end 4117 4118 case mediump_ivec2_xx_xx 4119 version 300 es 4120 values 4121 { 4122 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4123 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4124 output ivec2 out0 = [ ivec2(1, 1) | ivec2(1, 1) | ivec2(1, 1) ]; 4125 } 4126 4127 both "" 4128 #version 300 es 4129 precision mediump float; 4130 4131 ${DECLARATIONS} 4132 4133 void main() 4134 { 4135 ${SETUP} 4136 out0 = in0.xx * in1.xx; 4137 ${OUTPUT} 4138 } 4139 "" 4140 end 4141 4142 case mediump_ivec2_xy_yx 4143 version 300 es 4144 values 4145 { 4146 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4147 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4148 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(2, 2) | ivec2(2, 2) ]; 4149 } 4150 4151 both "" 4152 #version 300 es 4153 precision mediump float; 4154 4155 ${DECLARATIONS} 4156 4157 void main() 4158 { 4159 ${SETUP} 4160 out0 = in0.xy * in1.yx; 4161 ${OUTPUT} 4162 } 4163 "" 4164 end 4165 4166 case mediump_ivec2_yx_xy 4167 version 300 es 4168 values 4169 { 4170 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4171 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4172 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(2, 2) | ivec2(2, 2) ]; 4173 } 4174 4175 both "" 4176 #version 300 es 4177 precision mediump float; 4178 4179 ${DECLARATIONS} 4180 4181 void main() 4182 { 4183 ${SETUP} 4184 out0 = in0.yx * in1.xy; 4185 ${OUTPUT} 4186 } 4187 "" 4188 end 4189 4190 case mediump_ivec2_yxy_xyy 4191 version 300 es 4192 values 4193 { 4194 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4195 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4196 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(2, 2, 4) | ivec3(2, 2, 4) ]; 4197 } 4198 4199 both "" 4200 #version 300 es 4201 precision mediump float; 4202 4203 ${DECLARATIONS} 4204 4205 void main() 4206 { 4207 ${SETUP} 4208 out0 = in0.yxy * in1.xyy; 4209 ${OUTPUT} 4210 } 4211 "" 4212 end 4213 4214 case mediump_ivec2_xyxx_yxxx 4215 version 300 es 4216 values 4217 { 4218 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4219 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4220 output ivec4 out0 = [ ivec4(-1, -1, 1, 1) | ivec4(2, 2, 1, 1) | ivec4(2, 2, 1, 1) ]; 4221 } 4222 4223 both "" 4224 #version 300 es 4225 precision mediump float; 4226 4227 ${DECLARATIONS} 4228 4229 void main() 4230 { 4231 ${SETUP} 4232 out0 = in0.xyxx * in1.yxxx; 4233 ${OUTPUT} 4234 } 4235 "" 4236 end 4237 4238 case mediump_ivec2_yxyx_xyxy 4239 version 300 es 4240 values 4241 { 4242 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4243 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 4244 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(2, 2, 2, 2) | ivec4(2, 2, 2, 2) ]; 4245 } 4246 4247 both "" 4248 #version 300 es 4249 precision mediump float; 4250 4251 ${DECLARATIONS} 4252 4253 void main() 4254 { 4255 ${SETUP} 4256 out0 = in0.yxyx * in1.xyxy; 4257 ${OUTPUT} 4258 } 4259 "" 4260 end 4261 4262 case mediump_ivec3_x_x 4263 version 300 es 4264 values 4265 { 4266 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4267 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4268 output int out0 = [ 1 | 1 | 1 ]; 4269 } 4270 4271 both "" 4272 #version 300 es 4273 precision mediump float; 4274 4275 ${DECLARATIONS} 4276 4277 void main() 4278 { 4279 ${SETUP} 4280 out0 = in0.x * in1.x; 4281 ${OUTPUT} 4282 } 4283 "" 4284 end 4285 4286 case mediump_ivec3_z_z 4287 version 300 es 4288 values 4289 { 4290 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4291 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4292 output int out0 = [ 1 | 9 | 16 ]; 4293 } 4294 4295 both "" 4296 #version 300 es 4297 precision mediump float; 4298 4299 ${DECLARATIONS} 4300 4301 void main() 4302 { 4303 ${SETUP} 4304 out0 = in0.z * in1.z; 4305 ${OUTPUT} 4306 } 4307 "" 4308 end 4309 4310 case mediump_ivec3_xz_zx 4311 version 300 es 4312 values 4313 { 4314 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4315 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4316 output ivec2 out0 = [ ivec2(1, 1) | ivec2(3, 3) | ivec2(4, 4) ]; 4317 } 4318 4319 both "" 4320 #version 300 es 4321 precision mediump float; 4322 4323 ${DECLARATIONS} 4324 4325 void main() 4326 { 4327 ${SETUP} 4328 out0 = in0.xz * in1.zx; 4329 ${OUTPUT} 4330 } 4331 "" 4332 end 4333 4334 case mediump_ivec3_zz_zz 4335 version 300 es 4336 values 4337 { 4338 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4339 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4340 output ivec2 out0 = [ ivec2(1, 1) | ivec2(9, 9) | ivec2(16, 16) ]; 4341 } 4342 4343 both "" 4344 #version 300 es 4345 precision mediump float; 4346 4347 ${DECLARATIONS} 4348 4349 void main() 4350 { 4351 ${SETUP} 4352 out0 = in0.zz * in1.zz; 4353 ${OUTPUT} 4354 } 4355 "" 4356 end 4357 4358 case mediump_ivec3_xyz_yzx 4359 version 300 es 4360 values 4361 { 4362 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4363 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4364 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(2, 6, 3) | ivec3(2, 8, 4) ]; 4365 } 4366 4367 both "" 4368 #version 300 es 4369 precision mediump float; 4370 4371 ${DECLARATIONS} 4372 4373 void main() 4374 { 4375 ${SETUP} 4376 out0 = in0.xyz * in1.yzx; 4377 ${OUTPUT} 4378 } 4379 "" 4380 end 4381 4382 case mediump_ivec3_zyx_yxz 4383 version 300 es 4384 values 4385 { 4386 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4387 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4388 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(6, 2, 3) | ivec3(8, 2, 4) ]; 4389 } 4390 4391 both "" 4392 #version 300 es 4393 precision mediump float; 4394 4395 ${DECLARATIONS} 4396 4397 void main() 4398 { 4399 ${SETUP} 4400 out0 = in0.zyx * in1.yxz; 4401 ${OUTPUT} 4402 } 4403 "" 4404 end 4405 4406 case mediump_ivec3_xxx_xxx 4407 version 300 es 4408 values 4409 { 4410 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4411 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4412 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(1, 1, 1) | ivec3(1, 1, 1) ]; 4413 } 4414 4415 both "" 4416 #version 300 es 4417 precision mediump float; 4418 4419 ${DECLARATIONS} 4420 4421 void main() 4422 { 4423 ${SETUP} 4424 out0 = in0.xxx * in1.xxx; 4425 ${OUTPUT} 4426 } 4427 "" 4428 end 4429 4430 case mediump_ivec3_zzz_zzz 4431 version 300 es 4432 values 4433 { 4434 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4435 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4436 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(9, 9, 9) | ivec3(16, 16, 16) ]; 4437 } 4438 4439 both "" 4440 #version 300 es 4441 precision mediump float; 4442 4443 ${DECLARATIONS} 4444 4445 void main() 4446 { 4447 ${SETUP} 4448 out0 = in0.zzz * in1.zzz; 4449 ${OUTPUT} 4450 } 4451 "" 4452 end 4453 4454 case mediump_ivec3_zzy_zyz 4455 version 300 es 4456 values 4457 { 4458 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4459 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4460 output ivec3 out0 = [ ivec3(1, -1, -1) | ivec3(9, 6, 6) | ivec3(16, 8, 8) ]; 4461 } 4462 4463 both "" 4464 #version 300 es 4465 precision mediump float; 4466 4467 ${DECLARATIONS} 4468 4469 void main() 4470 { 4471 ${SETUP} 4472 out0 = in0.zzy * in1.zyz; 4473 ${OUTPUT} 4474 } 4475 "" 4476 end 4477 4478 case mediump_ivec3_yxy_xyy 4479 version 300 es 4480 values 4481 { 4482 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4483 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4484 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(2, 2, 4) | ivec3(2, 2, 4) ]; 4485 } 4486 4487 both "" 4488 #version 300 es 4489 precision mediump float; 4490 4491 ${DECLARATIONS} 4492 4493 void main() 4494 { 4495 ${SETUP} 4496 out0 = in0.yxy * in1.xyy; 4497 ${OUTPUT} 4498 } 4499 "" 4500 end 4501 4502 case mediump_ivec3_xzx_zxx 4503 version 300 es 4504 values 4505 { 4506 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4507 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4508 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(3, 3, 1) | ivec3(4, 4, 1) ]; 4509 } 4510 4511 both "" 4512 #version 300 es 4513 precision mediump float; 4514 4515 ${DECLARATIONS} 4516 4517 void main() 4518 { 4519 ${SETUP} 4520 out0 = in0.xzx * in1.zxx; 4521 ${OUTPUT} 4522 } 4523 "" 4524 end 4525 4526 case mediump_ivec3_xyyx_yyxx 4527 version 300 es 4528 values 4529 { 4530 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4531 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4532 output ivec4 out0 = [ ivec4(-1, 1, -1, 1) | ivec4(2, 4, 2, 1) | ivec4(2, 4, 2, 1) ]; 4533 } 4534 4535 both "" 4536 #version 300 es 4537 precision mediump float; 4538 4539 ${DECLARATIONS} 4540 4541 void main() 4542 { 4543 ${SETUP} 4544 out0 = in0.xyyx * in1.yyxx; 4545 ${OUTPUT} 4546 } 4547 "" 4548 end 4549 4550 case mediump_ivec3_zxyz_xyzz 4551 version 300 es 4552 values 4553 { 4554 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4555 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 4556 output ivec4 out0 = [ ivec4(1, -1, -1, 1) | ivec4(3, 2, 6, 9) | ivec4(4, 2, 8, 16) ]; 4557 } 4558 4559 both "" 4560 #version 300 es 4561 precision mediump float; 4562 4563 ${DECLARATIONS} 4564 4565 void main() 4566 { 4567 ${SETUP} 4568 out0 = in0.zxyz * in1.xyzz; 4569 ${OUTPUT} 4570 } 4571 "" 4572 end 4573 4574 case mediump_ivec4_x_x 4575 version 300 es 4576 values 4577 { 4578 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4579 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4580 output int out0 = [ 1 | 1 | 1 ]; 4581 } 4582 4583 both "" 4584 #version 300 es 4585 precision mediump float; 4586 4587 ${DECLARATIONS} 4588 4589 void main() 4590 { 4591 ${SETUP} 4592 out0 = in0.x * in1.x; 4593 ${OUTPUT} 4594 } 4595 "" 4596 end 4597 4598 case mediump_ivec4_w_w 4599 version 300 es 4600 values 4601 { 4602 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4603 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4604 output int out0 = [ 1 | 16 | 81 ]; 4605 } 4606 4607 both "" 4608 #version 300 es 4609 precision mediump float; 4610 4611 ${DECLARATIONS} 4612 4613 void main() 4614 { 4615 ${SETUP} 4616 out0 = in0.w * in1.w; 4617 ${OUTPUT} 4618 } 4619 "" 4620 end 4621 4622 case mediump_ivec4_wx_xw 4623 version 300 es 4624 values 4625 { 4626 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4627 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4628 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(4, 4) | ivec2(9, 9) ]; 4629 } 4630 4631 both "" 4632 #version 300 es 4633 precision mediump float; 4634 4635 ${DECLARATIONS} 4636 4637 void main() 4638 { 4639 ${SETUP} 4640 out0 = in0.wx * in1.xw; 4641 ${OUTPUT} 4642 } 4643 "" 4644 end 4645 4646 case mediump_ivec4_wz_zw 4647 version 300 es 4648 values 4649 { 4650 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4651 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4652 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(12, 12) | ivec2(36, 36) ]; 4653 } 4654 4655 both "" 4656 #version 300 es 4657 precision mediump float; 4658 4659 ${DECLARATIONS} 4660 4661 void main() 4662 { 4663 ${SETUP} 4664 out0 = in0.wz * in1.zw; 4665 ${OUTPUT} 4666 } 4667 "" 4668 end 4669 4670 case mediump_ivec4_www_www 4671 version 300 es 4672 values 4673 { 4674 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4675 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4676 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(16, 16, 16) | ivec3(81, 81, 81) ]; 4677 } 4678 4679 both "" 4680 #version 300 es 4681 precision mediump float; 4682 4683 ${DECLARATIONS} 4684 4685 void main() 4686 { 4687 ${SETUP} 4688 out0 = in0.www * in1.www; 4689 ${OUTPUT} 4690 } 4691 "" 4692 end 4693 4694 case mediump_ivec4_yyw_ywy 4695 version 300 es 4696 values 4697 { 4698 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4699 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4700 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(4, 8, 8) | ivec3(4, 18, 18) ]; 4701 } 4702 4703 both "" 4704 #version 300 es 4705 precision mediump float; 4706 4707 ${DECLARATIONS} 4708 4709 void main() 4710 { 4711 ${SETUP} 4712 out0 = in0.yyw * in1.ywy; 4713 ${OUTPUT} 4714 } 4715 "" 4716 end 4717 4718 case mediump_ivec4_wzy_zyw 4719 version 300 es 4720 values 4721 { 4722 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4723 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4724 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(12, 6, 8) | ivec3(36, 8, 18) ]; 4725 } 4726 4727 both "" 4728 #version 300 es 4729 precision mediump float; 4730 4731 ${DECLARATIONS} 4732 4733 void main() 4734 { 4735 ${SETUP} 4736 out0 = in0.wzy * in1.zyw; 4737 ${OUTPUT} 4738 } 4739 "" 4740 end 4741 4742 case mediump_ivec4_xyzw_yzwx 4743 version 300 es 4744 values 4745 { 4746 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4747 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4748 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(2, 6, 12, 4) | ivec4(2, 8, 36, 9) ]; 4749 } 4750 4751 both "" 4752 #version 300 es 4753 precision mediump float; 4754 4755 ${DECLARATIONS} 4756 4757 void main() 4758 { 4759 ${SETUP} 4760 out0 = in0.xyzw * in1.yzwx; 4761 ${OUTPUT} 4762 } 4763 "" 4764 end 4765 4766 case mediump_ivec4_wzyx_zyxw 4767 version 300 es 4768 values 4769 { 4770 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4771 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4772 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(12, 6, 2, 4) | ivec4(36, 8, 2, 9) ]; 4773 } 4774 4775 both "" 4776 #version 300 es 4777 precision mediump float; 4778 4779 ${DECLARATIONS} 4780 4781 void main() 4782 { 4783 ${SETUP} 4784 out0 = in0.wzyx * in1.zyxw; 4785 ${OUTPUT} 4786 } 4787 "" 4788 end 4789 4790 case mediump_ivec4_xyxy_yxyx 4791 version 300 es 4792 values 4793 { 4794 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4795 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4796 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(2, 2, 2, 2) | ivec4(2, 2, 2, 2) ]; 4797 } 4798 4799 both "" 4800 #version 300 es 4801 precision mediump float; 4802 4803 ${DECLARATIONS} 4804 4805 void main() 4806 { 4807 ${SETUP} 4808 out0 = in0.xyxy * in1.yxyx; 4809 ${OUTPUT} 4810 } 4811 "" 4812 end 4813 4814 case mediump_ivec4_yzzy_zzyy 4815 version 300 es 4816 values 4817 { 4818 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4819 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4820 output ivec4 out0 = [ ivec4(-1, 1, -1, 1) | ivec4(6, 9, 6, 4) | ivec4(8, 16, 8, 4) ]; 4821 } 4822 4823 both "" 4824 #version 300 es 4825 precision mediump float; 4826 4827 ${DECLARATIONS} 4828 4829 void main() 4830 { 4831 ${SETUP} 4832 out0 = in0.yzzy * in1.zzyy; 4833 ${OUTPUT} 4834 } 4835 "" 4836 end 4837 4838 case mediump_ivec4_wxww_xwww 4839 version 300 es 4840 values 4841 { 4842 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4843 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4844 output ivec4 out0 = [ ivec4(-1, -1, 1, 1) | ivec4(4, 4, 16, 16) | ivec4(9, 9, 81, 81) ]; 4845 } 4846 4847 both "" 4848 #version 300 es 4849 precision mediump float; 4850 4851 ${DECLARATIONS} 4852 4853 void main() 4854 { 4855 ${SETUP} 4856 out0 = in0.wxww * in1.xwww; 4857 ${OUTPUT} 4858 } 4859 "" 4860 end 4861 4862 case mediump_ivec4_xyxx_yxxx 4863 version 300 es 4864 values 4865 { 4866 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4867 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4868 output ivec4 out0 = [ ivec4(-1, -1, 1, 1) | ivec4(2, 2, 1, 1) | ivec4(2, 2, 1, 1) ]; 4869 } 4870 4871 both "" 4872 #version 300 es 4873 precision mediump float; 4874 4875 ${DECLARATIONS} 4876 4877 void main() 4878 { 4879 ${SETUP} 4880 out0 = in0.xyxx * in1.yxxx; 4881 ${OUTPUT} 4882 } 4883 "" 4884 end 4885 4886 case mediump_ivec4_zzzz_zzzz 4887 version 300 es 4888 values 4889 { 4890 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4891 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 4892 output ivec4 out0 = [ ivec4(1, 1, 1, 1) | ivec4(9, 9, 9, 9) | ivec4(16, 16, 16, 16) ]; 4893 } 4894 4895 both "" 4896 #version 300 es 4897 precision mediump float; 4898 4899 ${DECLARATIONS} 4900 4901 void main() 4902 { 4903 ${SETUP} 4904 out0 = in0.zzzz * in1.zzzz; 4905 ${OUTPUT} 4906 } 4907 "" 4908 end 4909 4910 4911end # vector_multiply 4912group vector_divide "Vector swizzle math operations" 4913 4914 case mediump_vec2_x_x 4915 version 300 es 4916 values 4917 { 4918 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4919 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4920 output float out0 = [ 1.0 | 1.0 | 1.0 | 1.0 | 1.0 ]; 4921 } 4922 4923 both "" 4924 #version 300 es 4925 precision mediump float; 4926 4927 ${DECLARATIONS} 4928 4929 void main() 4930 { 4931 ${SETUP} 4932 out0 = in0.x / in1.x; 4933 ${OUTPUT} 4934 } 4935 "" 4936 end 4937 4938 case mediump_vec2_xx_xx 4939 version 300 es 4940 values 4941 { 4942 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4943 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4944 output vec2 out0 = [ vec2(1.0, 1.0) | vec2(1.0, 1.0) | vec2(1.0, 1.0) | vec2(1.0, 1.0) | vec2(1.0, 1.0) ]; 4945 } 4946 4947 both "" 4948 #version 300 es 4949 precision mediump float; 4950 4951 ${DECLARATIONS} 4952 4953 void main() 4954 { 4955 ${SETUP} 4956 out0 = in0.xx / in1.xx; 4957 ${OUTPUT} 4958 } 4959 "" 4960 end 4961 4962 case mediump_vec2_xy_yx 4963 version 300 es 4964 values 4965 { 4966 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4967 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4968 output vec2 out0 = [ vec2(0.2, 5.0) | vec2(0.8, 1.25) | vec2(0.222222222222, 4.5) | vec2(-0.5, -2.0) | vec2(23.25, 0.0430107526882) ]; 4969 } 4970 4971 both "" 4972 #version 300 es 4973 precision mediump float; 4974 4975 ${DECLARATIONS} 4976 4977 void main() 4978 { 4979 ${SETUP} 4980 out0 = in0.xy / in1.yx; 4981 ${OUTPUT} 4982 } 4983 "" 4984 end 4985 4986 case mediump_vec2_yx_xy 4987 version 300 es 4988 values 4989 { 4990 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4991 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 4992 output vec2 out0 = [ vec2(5.0, 0.2) | vec2(1.25, 0.8) | vec2(4.5, 0.222222222222) | vec2(-2.0, -0.5) | vec2(0.0430107526882, 23.25) ]; 4993 } 4994 4995 both "" 4996 #version 300 es 4997 precision mediump float; 4998 4999 ${DECLARATIONS} 5000 5001 void main() 5002 { 5003 ${SETUP} 5004 out0 = in0.yx / in1.xy; 5005 ${OUTPUT} 5006 } 5007 "" 5008 end 5009 5010 case mediump_vec2_yxy_xyy 5011 version 300 es 5012 values 5013 { 5014 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 5015 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 5016 output vec3 out0 = [ vec3(5.0, 0.2, 1.0) | vec3(1.25, 0.8, 1.0) | vec3(4.5, 0.222222222222, 1.0) | vec3(-2.0, -0.5, 1.0) | vec3(0.0430107526882, 23.25, 1.0) ]; 5017 } 5018 5019 both "" 5020 #version 300 es 5021 precision mediump float; 5022 5023 ${DECLARATIONS} 5024 5025 void main() 5026 { 5027 ${SETUP} 5028 out0 = in0.yxy / in1.xyy; 5029 ${OUTPUT} 5030 } 5031 "" 5032 end 5033 5034 case mediump_vec2_xyxx_yxxx 5035 version 300 es 5036 values 5037 { 5038 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 5039 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 5040 output vec4 out0 = [ vec4(0.2, 5.0, 1.0, 1.0) | vec4(0.8, 1.25, 1.0, 1.0) | vec4(0.222222222222, 4.5, 1.0, 1.0) | vec4(-0.5, -2.0, 1.0, 1.0) | vec4(23.25, 0.0430107526882, 1.0, 1.0) ]; 5041 } 5042 5043 both "" 5044 #version 300 es 5045 precision mediump float; 5046 5047 ${DECLARATIONS} 5048 5049 void main() 5050 { 5051 ${SETUP} 5052 out0 = in0.xyxx / in1.yxxx; 5053 ${OUTPUT} 5054 } 5055 "" 5056 end 5057 5058 case mediump_vec2_yxyx_xyxy 5059 version 300 es 5060 values 5061 { 5062 input vec2 in0 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 5063 input vec2 in1 = [ vec2(0.1, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ]; 5064 output vec4 out0 = [ vec4(5.0, 0.2, 5.0, 0.2) | vec4(1.25, 0.8, 1.25, 0.8) | vec4(4.5, 0.222222222222, 4.5, 0.222222222222) | vec4(-2.0, -0.5, -2.0, -0.5) | vec4(0.0430107526882, 23.25, 0.0430107526882, 23.25) ]; 5065 } 5066 5067 both "" 5068 #version 300 es 5069 precision mediump float; 5070 5071 ${DECLARATIONS} 5072 5073 void main() 5074 { 5075 ${SETUP} 5076 out0 = in0.yxyx / in1.xyxy; 5077 ${OUTPUT} 5078 } 5079 "" 5080 end 5081 5082 case mediump_vec3_x_x 5083 version 300 es 5084 values 5085 { 5086 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5087 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5088 output float out0 = [ 1.0 | 1.0 | 1.0 | 1.0 | 1.0 ]; 5089 } 5090 5091 both "" 5092 #version 300 es 5093 precision mediump float; 5094 5095 ${DECLARATIONS} 5096 5097 void main() 5098 { 5099 ${SETUP} 5100 out0 = in0.x / in1.x; 5101 ${OUTPUT} 5102 } 5103 "" 5104 end 5105 5106 case mediump_vec3_z_z 5107 version 300 es 5108 values 5109 { 5110 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5111 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5112 output float out0 = [ 1.0 | 1.0 | 1.0 | 1.0 | 1.0 ]; 5113 } 5114 5115 both "" 5116 #version 300 es 5117 precision mediump float; 5118 5119 ${DECLARATIONS} 5120 5121 void main() 5122 { 5123 ${SETUP} 5124 out0 = in0.z / in1.z; 5125 ${OUTPUT} 5126 } 5127 "" 5128 end 5129 5130 case mediump_vec3_xz_zx 5131 version 300 es 5132 values 5133 { 5134 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5135 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5136 output vec2 out0 = [ vec2(0.133333333333, 7.5) | vec2(0.888888888889, 1.125) | vec2(0.102564102564, 9.75) | vec2(0.627450980392, 1.59375) | vec2(-14.25, -0.0701754385965) ]; 5137 } 5138 5139 both "" 5140 #version 300 es 5141 precision mediump float; 5142 5143 ${DECLARATIONS} 5144 5145 void main() 5146 { 5147 ${SETUP} 5148 out0 = in0.xz / in1.zx; 5149 ${OUTPUT} 5150 } 5151 "" 5152 end 5153 5154 case mediump_vec3_zz_zz 5155 version 300 es 5156 values 5157 { 5158 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5159 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5160 output vec2 out0 = [ vec2(1.0, 1.0) | vec2(1.0, 1.0) | vec2(1.0, 1.0) | vec2(1.0, 1.0) | vec2(1.0, 1.0) ]; 5161 } 5162 5163 both "" 5164 #version 300 es 5165 precision mediump float; 5166 5167 ${DECLARATIONS} 5168 5169 void main() 5170 { 5171 ${SETUP} 5172 out0 = in0.zz / in1.zz; 5173 ${OUTPUT} 5174 } 5175 "" 5176 end 5177 5178 case mediump_vec3_xyz_yzx 5179 version 300 es 5180 values 5181 { 5182 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5183 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5184 output vec3 out0 = [ vec3(0.2, 0.666666666667, 7.5) | vec3(0.8, 1.11111111111, 1.125) | vec3(0.222222222222, 0.461538461538, 9.75) | vec3(-0.5, -1.25490196078, 1.59375) | vec3(23.25, -0.612903225806, -0.0701754385965) ]; 5185 } 5186 5187 both "" 5188 #version 300 es 5189 precision mediump float; 5190 5191 ${DECLARATIONS} 5192 5193 void main() 5194 { 5195 ${SETUP} 5196 out0 = in0.xyz / in1.yzx; 5197 ${OUTPUT} 5198 } 5199 "" 5200 end 5201 5202 case mediump_vec3_zyx_yxz 5203 version 300 es 5204 values 5205 { 5206 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5207 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5208 output vec3 out0 = [ vec3(1.5, 5.0, 0.133333333333) | vec3(0.9, 1.25, 0.888888888889) | vec3(2.16666666667, 4.5, 0.102564102564) | vec3(-0.796875, -2.0, 0.627450980392) | vec3(-1.63157894737, 0.0430107526882, -14.25) ]; 5209 } 5210 5211 both "" 5212 #version 300 es 5213 precision mediump float; 5214 5215 ${DECLARATIONS} 5216 5217 void main() 5218 { 5219 ${SETUP} 5220 out0 = in0.zyx / in1.yxz; 5221 ${OUTPUT} 5222 } 5223 "" 5224 end 5225 5226 case mediump_vec3_xxx_xxx 5227 version 300 es 5228 values 5229 { 5230 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5231 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5232 output vec3 out0 = [ vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) ]; 5233 } 5234 5235 both "" 5236 #version 300 es 5237 precision mediump float; 5238 5239 ${DECLARATIONS} 5240 5241 void main() 5242 { 5243 ${SETUP} 5244 out0 = in0.xxx / in1.xxx; 5245 ${OUTPUT} 5246 } 5247 "" 5248 end 5249 5250 case mediump_vec3_zzz_zzz 5251 version 300 es 5252 values 5253 { 5254 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5255 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5256 output vec3 out0 = [ vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) ]; 5257 } 5258 5259 both "" 5260 #version 300 es 5261 precision mediump float; 5262 5263 ${DECLARATIONS} 5264 5265 void main() 5266 { 5267 ${SETUP} 5268 out0 = in0.zzz / in1.zzz; 5269 ${OUTPUT} 5270 } 5271 "" 5272 end 5273 5274 case mediump_vec3_zzy_zyz 5275 version 300 es 5276 values 5277 { 5278 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5279 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5280 output vec3 out0 = [ vec3(1.0, 1.5, 0.666666666667) | vec3(1.0, 0.9, 1.11111111111) | vec3(1.0, 2.16666666667, 0.461538461538) | vec3(1.0, -0.796875, -1.25490196078) | vec3(1.0, -1.63157894737, -0.612903225806) ]; 5281 } 5282 5283 both "" 5284 #version 300 es 5285 precision mediump float; 5286 5287 ${DECLARATIONS} 5288 5289 void main() 5290 { 5291 ${SETUP} 5292 out0 = in0.zzy / in1.zyz; 5293 ${OUTPUT} 5294 } 5295 "" 5296 end 5297 5298 case mediump_vec3_yxy_xyy 5299 version 300 es 5300 values 5301 { 5302 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5303 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5304 output vec3 out0 = [ vec3(5.0, 0.2, 1.0) | vec3(1.25, 0.8, 1.0) | vec3(4.5, 0.222222222222, 1.0) | vec3(-2.0, -0.5, 1.0) | vec3(0.0430107526882, 23.25, 1.0) ]; 5305 } 5306 5307 both "" 5308 #version 300 es 5309 precision mediump float; 5310 5311 ${DECLARATIONS} 5312 5313 void main() 5314 { 5315 ${SETUP} 5316 out0 = in0.yxy / in1.xyy; 5317 ${OUTPUT} 5318 } 5319 "" 5320 end 5321 5322 case mediump_vec3_xzx_zxx 5323 version 300 es 5324 values 5325 { 5326 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5327 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5328 output vec3 out0 = [ vec3(0.133333333333, 7.5, 1.0) | vec3(0.888888888889, 1.125, 1.0) | vec3(0.102564102564, 9.75, 1.0) | vec3(0.627450980392, 1.59375, 1.0) | vec3(-14.25, -0.0701754385965, 1.0) ]; 5329 } 5330 5331 both "" 5332 #version 300 es 5333 precision mediump float; 5334 5335 ${DECLARATIONS} 5336 5337 void main() 5338 { 5339 ${SETUP} 5340 out0 = in0.xzx / in1.zxx; 5341 ${OUTPUT} 5342 } 5343 "" 5344 end 5345 5346 case mediump_vec3_xyyx_yyxx 5347 version 300 es 5348 values 5349 { 5350 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5351 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5352 output vec4 out0 = [ vec4(0.2, 1.0, 5.0, 1.0) | vec4(0.8, 1.0, 1.25, 1.0) | vec4(0.222222222222, 1.0, 4.5, 1.0) | vec4(-0.5, 1.0, -2.0, 1.0) | vec4(23.25, 1.0, 0.0430107526882, 1.0) ]; 5353 } 5354 5355 both "" 5356 #version 300 es 5357 precision mediump float; 5358 5359 ${DECLARATIONS} 5360 5361 void main() 5362 { 5363 ${SETUP} 5364 out0 = in0.xyyx / in1.yyxx; 5365 ${OUTPUT} 5366 } 5367 "" 5368 end 5369 5370 case mediump_vec3_zxyz_xyzz 5371 version 300 es 5372 values 5373 { 5374 input vec3 in0 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5375 input vec3 in1 = [ vec3(0.1, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ]; 5376 output vec4 out0 = [ vec4(7.5, 0.2, 0.666666666667, 1.0) | vec4(1.125, 0.8, 1.11111111111, 1.0) | vec4(9.75, 0.222222222222, 0.461538461538, 1.0) | vec4(1.59375, -0.5, -1.25490196078, 1.0) | vec4(-0.0701754385965, 23.25, -0.612903225806, 1.0) ]; 5377 } 5378 5379 both "" 5380 #version 300 es 5381 precision mediump float; 5382 5383 ${DECLARATIONS} 5384 5385 void main() 5386 { 5387 ${SETUP} 5388 out0 = in0.zxyz / in1.xyzz; 5389 ${OUTPUT} 5390 } 5391 "" 5392 end 5393 5394 case mediump_vec4_x_x 5395 version 300 es 5396 values 5397 { 5398 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5399 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5400 output float out0 = [ 1.0 | 1.0 | 1.0 | 1.0 | 1.0 ]; 5401 } 5402 5403 both "" 5404 #version 300 es 5405 precision mediump float; 5406 5407 ${DECLARATIONS} 5408 5409 void main() 5410 { 5411 ${SETUP} 5412 out0 = in0.x / in1.x; 5413 ${OUTPUT} 5414 } 5415 "" 5416 end 5417 5418 case mediump_vec4_w_w 5419 version 300 es 5420 values 5421 { 5422 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5423 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5424 output float out0 = [ 1.0 | 1.0 | 1.0 | 1.0 | 1.0 ]; 5425 } 5426 5427 both "" 5428 #version 300 es 5429 precision mediump float; 5430 5431 ${DECLARATIONS} 5432 5433 void main() 5434 { 5435 ${SETUP} 5436 out0 = in0.w / in1.w; 5437 ${OUTPUT} 5438 } 5439 "" 5440 end 5441 5442 case mediump_vec4_wx_xw 5443 version 300 es 5444 values 5445 { 5446 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5447 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5448 output vec2 out0 = [ vec2(8.25, 0.121212121212) | vec2(1.75, 0.571428571429) | vec2(-18.0, -0.0555555555556) | vec2(-0.75, -1.33333333333) | vec2(-0.333333333333, -3.0) ]; 5449 } 5450 5451 both "" 5452 #version 300 es 5453 precision mediump float; 5454 5455 ${DECLARATIONS} 5456 5457 void main() 5458 { 5459 ${SETUP} 5460 out0 = in0.wx / in1.xw; 5461 ${OUTPUT} 5462 } 5463 "" 5464 end 5465 5466 case mediump_vec4_wz_zw 5467 version 300 es 5468 values 5469 { 5470 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5471 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5472 output vec2 out0 = [ vec2(1.1, 0.909090909091) | vec2(1.55555555556, 0.642857142857) | vec2(-1.84615384615, -0.541666666667) | vec2(-0.470588235294, -2.125) | vec2(4.75, 0.210526315789) ]; 5473 } 5474 5475 both "" 5476 #version 300 es 5477 precision mediump float; 5478 5479 ${DECLARATIONS} 5480 5481 void main() 5482 { 5483 ${SETUP} 5484 out0 = in0.wz / in1.zw; 5485 ${OUTPUT} 5486 } 5487 "" 5488 end 5489 5490 case mediump_vec4_www_www 5491 version 300 es 5492 values 5493 { 5494 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5495 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5496 output vec3 out0 = [ vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) | vec3(1.0, 1.0, 1.0) ]; 5497 } 5498 5499 both "" 5500 #version 300 es 5501 precision mediump float; 5502 5503 ${DECLARATIONS} 5504 5505 void main() 5506 { 5507 ${SETUP} 5508 out0 = in0.www / in1.www; 5509 ${OUTPUT} 5510 } 5511 "" 5512 end 5513 5514 case mediump_vec4_yyw_ywy 5515 version 300 es 5516 values 5517 { 5518 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5519 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5520 output vec3 out0 = [ vec3(1.0, 0.606060606061, 1.65) | vec3(1.0, 0.714285714286, 1.4) | vec3(1.0, -0.25, -4.0) | vec3(1.0, 2.66666666667, 0.375) | vec3(1.0, -0.129032258065, -7.75) ]; 5521 } 5522 5523 both "" 5524 #version 300 es 5525 precision mediump float; 5526 5527 ${DECLARATIONS} 5528 5529 void main() 5530 { 5531 ${SETUP} 5532 out0 = in0.yyw / in1.ywy; 5533 ${OUTPUT} 5534 } 5535 "" 5536 end 5537 5538 case mediump_vec4_wzy_zyw 5539 version 300 es 5540 values 5541 { 5542 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5543 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5544 output vec3 out0 = [ vec3(1.1, 1.5, 0.606060606061) | vec3(1.55555555556, 0.9, 0.714285714286) | vec3(-1.84615384615, 2.16666666667, -0.25) | vec3(-0.470588235294, -0.796875, 2.66666666667) | vec3(4.75, -1.63157894737, -0.129032258065) ]; 5545 } 5546 5547 both "" 5548 #version 300 es 5549 precision mediump float; 5550 5551 ${DECLARATIONS} 5552 5553 void main() 5554 { 5555 ${SETUP} 5556 out0 = in0.wzy / in1.zyw; 5557 ${OUTPUT} 5558 } 5559 "" 5560 end 5561 5562 case mediump_vec4_xyzw_yzwx 5563 version 300 es 5564 values 5565 { 5566 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5567 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5568 output vec4 out0 = [ vec4(0.2, 0.666666666667, 0.909090909091, 8.25) | vec4(0.8, 1.11111111111, 0.642857142857, 1.75) | vec4(0.222222222222, 0.461538461538, -0.541666666667, -18.0) | vec4(-0.5, -1.25490196078, -2.125, -0.75) | vec4(23.25, -0.612903225806, 0.210526315789, -0.333333333333) ]; 5569 } 5570 5571 both "" 5572 #version 300 es 5573 precision mediump float; 5574 5575 ${DECLARATIONS} 5576 5577 void main() 5578 { 5579 ${SETUP} 5580 out0 = in0.xyzw / in1.yzwx; 5581 ${OUTPUT} 5582 } 5583 "" 5584 end 5585 5586 case mediump_vec4_wzyx_zyxw 5587 version 300 es 5588 values 5589 { 5590 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5591 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5592 output vec4 out0 = [ vec4(1.1, 1.5, 5.0, 0.121212121212) | vec4(1.55555555556, 0.9, 1.25, 0.571428571429) | vec4(-1.84615384615, 2.16666666667, 4.5, -0.0555555555556) | vec4(-0.470588235294, -0.796875, -2.0, -1.33333333333) | vec4(4.75, -1.63157894737, 0.0430107526882, -3.0) ]; 5593 } 5594 5595 both "" 5596 #version 300 es 5597 precision mediump float; 5598 5599 ${DECLARATIONS} 5600 5601 void main() 5602 { 5603 ${SETUP} 5604 out0 = in0.wzyx / in1.zyxw; 5605 ${OUTPUT} 5606 } 5607 "" 5608 end 5609 5610 case mediump_vec4_xyxy_yxyx 5611 version 300 es 5612 values 5613 { 5614 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5615 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5616 output vec4 out0 = [ vec4(0.2, 5.0, 0.2, 5.0) | vec4(0.8, 1.25, 0.8, 1.25) | vec4(0.222222222222, 4.5, 0.222222222222, 4.5) | vec4(-0.5, -2.0, -0.5, -2.0) | vec4(23.25, 0.0430107526882, 23.25, 0.0430107526882) ]; 5617 } 5618 5619 both "" 5620 #version 300 es 5621 precision mediump float; 5622 5623 ${DECLARATIONS} 5624 5625 void main() 5626 { 5627 ${SETUP} 5628 out0 = in0.xyxy / in1.yxyx; 5629 ${OUTPUT} 5630 } 5631 "" 5632 end 5633 5634 case mediump_vec4_yzzy_zzyy 5635 version 300 es 5636 values 5637 { 5638 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5639 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5640 output vec4 out0 = [ vec4(0.666666666667, 1.0, 1.5, 1.0) | vec4(1.11111111111, 1.0, 0.9, 1.0) | vec4(0.461538461538, 1.0, 2.16666666667, 1.0) | vec4(-1.25490196078, 1.0, -0.796875, 1.0) | vec4(-0.612903225806, 1.0, -1.63157894737, 1.0) ]; 5641 } 5642 5643 both "" 5644 #version 300 es 5645 precision mediump float; 5646 5647 ${DECLARATIONS} 5648 5649 void main() 5650 { 5651 ${SETUP} 5652 out0 = in0.yzzy / in1.zzyy; 5653 ${OUTPUT} 5654 } 5655 "" 5656 end 5657 5658 case mediump_vec4_wxww_xwww 5659 version 300 es 5660 values 5661 { 5662 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5663 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5664 output vec4 out0 = [ vec4(8.25, 0.121212121212, 1.0, 1.0) | vec4(1.75, 0.571428571429, 1.0, 1.0) | vec4(-18.0, -0.0555555555556, 1.0, 1.0) | vec4(-0.75, -1.33333333333, 1.0, 1.0) | vec4(-0.333333333333, -3.0, 1.0, 1.0) ]; 5665 } 5666 5667 both "" 5668 #version 300 es 5669 precision mediump float; 5670 5671 ${DECLARATIONS} 5672 5673 void main() 5674 { 5675 ${SETUP} 5676 out0 = in0.wxww / in1.xwww; 5677 ${OUTPUT} 5678 } 5679 "" 5680 end 5681 5682 case mediump_vec4_xyxx_yxxx 5683 version 300 es 5684 values 5685 { 5686 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5687 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5688 output vec4 out0 = [ vec4(0.2, 5.0, 1.0, 1.0) | vec4(0.8, 1.25, 1.0, 1.0) | vec4(0.222222222222, 4.5, 1.0, 1.0) | vec4(-0.5, -2.0, 1.0, 1.0) | vec4(23.25, 0.0430107526882, 1.0, 1.0) ]; 5689 } 5690 5691 both "" 5692 #version 300 es 5693 precision mediump float; 5694 5695 ${DECLARATIONS} 5696 5697 void main() 5698 { 5699 ${SETUP} 5700 out0 = in0.xyxx / in1.yxxx; 5701 ${OUTPUT} 5702 } 5703 "" 5704 end 5705 5706 case mediump_vec4_zzzz_zzzz 5707 version 300 es 5708 values 5709 { 5710 input vec4 in0 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5711 input vec4 in1 = [ vec4(0.1, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ]; 5712 output vec4 out0 = [ vec4(1.0, 1.0, 1.0, 1.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(1.0, 1.0, 1.0, 1.0) ]; 5713 } 5714 5715 both "" 5716 #version 300 es 5717 precision mediump float; 5718 5719 ${DECLARATIONS} 5720 5721 void main() 5722 { 5723 ${SETUP} 5724 out0 = in0.zzzz / in1.zzzz; 5725 ${OUTPUT} 5726 } 5727 "" 5728 end 5729 5730 case mediump_ivec2_x_x 5731 version 300 es 5732 values 5733 { 5734 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5735 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5736 output int out0 = [ 1 | 1 | 1 ]; 5737 } 5738 5739 both "" 5740 #version 300 es 5741 precision mediump float; 5742 5743 ${DECLARATIONS} 5744 5745 void main() 5746 { 5747 ${SETUP} 5748 out0 = in0.x / in1.x; 5749 ${OUTPUT} 5750 } 5751 "" 5752 end 5753 5754 case mediump_ivec2_xx_xx 5755 version 300 es 5756 values 5757 { 5758 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5759 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5760 output ivec2 out0 = [ ivec2(1, 1) | ivec2(1, 1) | ivec2(1, 1) ]; 5761 } 5762 5763 both "" 5764 #version 300 es 5765 precision mediump float; 5766 5767 ${DECLARATIONS} 5768 5769 void main() 5770 { 5771 ${SETUP} 5772 out0 = in0.xx / in1.xx; 5773 ${OUTPUT} 5774 } 5775 "" 5776 end 5777 5778 case mediump_ivec2_xy_yx 5779 version 300 es 5780 values 5781 { 5782 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5783 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5784 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(0, 2) | ivec2(0, 2) ]; 5785 } 5786 5787 both "" 5788 #version 300 es 5789 precision mediump float; 5790 5791 ${DECLARATIONS} 5792 5793 void main() 5794 { 5795 ${SETUP} 5796 out0 = in0.xy / in1.yx; 5797 ${OUTPUT} 5798 } 5799 "" 5800 end 5801 5802 case mediump_ivec2_yx_xy 5803 version 300 es 5804 values 5805 { 5806 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5807 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5808 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(2, 0) | ivec2(2, 0) ]; 5809 } 5810 5811 both "" 5812 #version 300 es 5813 precision mediump float; 5814 5815 ${DECLARATIONS} 5816 5817 void main() 5818 { 5819 ${SETUP} 5820 out0 = in0.yx / in1.xy; 5821 ${OUTPUT} 5822 } 5823 "" 5824 end 5825 5826 case mediump_ivec2_yxy_xyy 5827 version 300 es 5828 values 5829 { 5830 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5831 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5832 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(2, 0, 1) | ivec3(2, 0, 1) ]; 5833 } 5834 5835 both "" 5836 #version 300 es 5837 precision mediump float; 5838 5839 ${DECLARATIONS} 5840 5841 void main() 5842 { 5843 ${SETUP} 5844 out0 = in0.yxy / in1.xyy; 5845 ${OUTPUT} 5846 } 5847 "" 5848 end 5849 5850 case mediump_ivec2_xyxx_yxxx 5851 version 300 es 5852 values 5853 { 5854 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5855 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5856 output ivec4 out0 = [ ivec4(-1, -1, 1, 1) | ivec4(0, 2, 1, 1) | ivec4(0, 2, 1, 1) ]; 5857 } 5858 5859 both "" 5860 #version 300 es 5861 precision mediump float; 5862 5863 ${DECLARATIONS} 5864 5865 void main() 5866 { 5867 ${SETUP} 5868 out0 = in0.xyxx / in1.yxxx; 5869 ${OUTPUT} 5870 } 5871 "" 5872 end 5873 5874 case mediump_ivec2_yxyx_xyxy 5875 version 300 es 5876 values 5877 { 5878 input ivec2 in0 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5879 input ivec2 in1 = [ ivec2(-1, 1) | ivec2(1, 2) | ivec2(-1, -2) ]; 5880 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(2, 0, 2, 0) | ivec4(2, 0, 2, 0) ]; 5881 } 5882 5883 both "" 5884 #version 300 es 5885 precision mediump float; 5886 5887 ${DECLARATIONS} 5888 5889 void main() 5890 { 5891 ${SETUP} 5892 out0 = in0.yxyx / in1.xyxy; 5893 ${OUTPUT} 5894 } 5895 "" 5896 end 5897 5898 case mediump_ivec3_x_x 5899 version 300 es 5900 values 5901 { 5902 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5903 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5904 output int out0 = [ 1 | 1 | 1 ]; 5905 } 5906 5907 both "" 5908 #version 300 es 5909 precision mediump float; 5910 5911 ${DECLARATIONS} 5912 5913 void main() 5914 { 5915 ${SETUP} 5916 out0 = in0.x / in1.x; 5917 ${OUTPUT} 5918 } 5919 "" 5920 end 5921 5922 case mediump_ivec3_z_z 5923 version 300 es 5924 values 5925 { 5926 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5927 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5928 output int out0 = [ 1 | 1 | 1 ]; 5929 } 5930 5931 both "" 5932 #version 300 es 5933 precision mediump float; 5934 5935 ${DECLARATIONS} 5936 5937 void main() 5938 { 5939 ${SETUP} 5940 out0 = in0.z / in1.z; 5941 ${OUTPUT} 5942 } 5943 "" 5944 end 5945 5946 case mediump_ivec3_xz_zx 5947 version 300 es 5948 values 5949 { 5950 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5951 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5952 output ivec2 out0 = [ ivec2(1, 1) | ivec2(0, 3) | ivec2(0, 4) ]; 5953 } 5954 5955 both "" 5956 #version 300 es 5957 precision mediump float; 5958 5959 ${DECLARATIONS} 5960 5961 void main() 5962 { 5963 ${SETUP} 5964 out0 = in0.xz / in1.zx; 5965 ${OUTPUT} 5966 } 5967 "" 5968 end 5969 5970 case mediump_ivec3_zz_zz 5971 version 300 es 5972 values 5973 { 5974 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5975 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5976 output ivec2 out0 = [ ivec2(1, 1) | ivec2(1, 1) | ivec2(1, 1) ]; 5977 } 5978 5979 both "" 5980 #version 300 es 5981 precision mediump float; 5982 5983 ${DECLARATIONS} 5984 5985 void main() 5986 { 5987 ${SETUP} 5988 out0 = in0.zz / in1.zz; 5989 ${OUTPUT} 5990 } 5991 "" 5992 end 5993 5994 case mediump_ivec3_xyz_yzx 5995 version 300 es 5996 values 5997 { 5998 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 5999 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6000 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(0, 0, 3) | ivec3(0, 0, 4) ]; 6001 } 6002 6003 both "" 6004 #version 300 es 6005 precision mediump float; 6006 6007 ${DECLARATIONS} 6008 6009 void main() 6010 { 6011 ${SETUP} 6012 out0 = in0.xyz / in1.yzx; 6013 ${OUTPUT} 6014 } 6015 "" 6016 end 6017 6018 case mediump_ivec3_zyx_yxz 6019 version 300 es 6020 values 6021 { 6022 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6023 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6024 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(1, 2, 0) | ivec3(2, 2, 0) ]; 6025 } 6026 6027 both "" 6028 #version 300 es 6029 precision mediump float; 6030 6031 ${DECLARATIONS} 6032 6033 void main() 6034 { 6035 ${SETUP} 6036 out0 = in0.zyx / in1.yxz; 6037 ${OUTPUT} 6038 } 6039 "" 6040 end 6041 6042 case mediump_ivec3_xxx_xxx 6043 version 300 es 6044 values 6045 { 6046 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6047 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6048 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(1, 1, 1) | ivec3(1, 1, 1) ]; 6049 } 6050 6051 both "" 6052 #version 300 es 6053 precision mediump float; 6054 6055 ${DECLARATIONS} 6056 6057 void main() 6058 { 6059 ${SETUP} 6060 out0 = in0.xxx / in1.xxx; 6061 ${OUTPUT} 6062 } 6063 "" 6064 end 6065 6066 case mediump_ivec3_zzz_zzz 6067 version 300 es 6068 values 6069 { 6070 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6071 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6072 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(1, 1, 1) | ivec3(1, 1, 1) ]; 6073 } 6074 6075 both "" 6076 #version 300 es 6077 precision mediump float; 6078 6079 ${DECLARATIONS} 6080 6081 void main() 6082 { 6083 ${SETUP} 6084 out0 = in0.zzz / in1.zzz; 6085 ${OUTPUT} 6086 } 6087 "" 6088 end 6089 6090 case mediump_ivec3_zzy_zyz 6091 version 300 es 6092 values 6093 { 6094 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6095 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6096 output ivec3 out0 = [ ivec3(1, -1, -1) | ivec3(1, 1, 0) | ivec3(1, 2, 0) ]; 6097 } 6098 6099 both "" 6100 #version 300 es 6101 precision mediump float; 6102 6103 ${DECLARATIONS} 6104 6105 void main() 6106 { 6107 ${SETUP} 6108 out0 = in0.zzy / in1.zyz; 6109 ${OUTPUT} 6110 } 6111 "" 6112 end 6113 6114 case mediump_ivec3_yxy_xyy 6115 version 300 es 6116 values 6117 { 6118 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6119 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6120 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(2, 0, 1) | ivec3(2, 0, 1) ]; 6121 } 6122 6123 both "" 6124 #version 300 es 6125 precision mediump float; 6126 6127 ${DECLARATIONS} 6128 6129 void main() 6130 { 6131 ${SETUP} 6132 out0 = in0.yxy / in1.xyy; 6133 ${OUTPUT} 6134 } 6135 "" 6136 end 6137 6138 case mediump_ivec3_xzx_zxx 6139 version 300 es 6140 values 6141 { 6142 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6143 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6144 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(0, 3, 1) | ivec3(0, 4, 1) ]; 6145 } 6146 6147 both "" 6148 #version 300 es 6149 precision mediump float; 6150 6151 ${DECLARATIONS} 6152 6153 void main() 6154 { 6155 ${SETUP} 6156 out0 = in0.xzx / in1.zxx; 6157 ${OUTPUT} 6158 } 6159 "" 6160 end 6161 6162 case mediump_ivec3_xyyx_yyxx 6163 version 300 es 6164 values 6165 { 6166 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6167 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6168 output ivec4 out0 = [ ivec4(-1, 1, -1, 1) | ivec4(0, 1, 2, 1) | ivec4(0, 1, 2, 1) ]; 6169 } 6170 6171 both "" 6172 #version 300 es 6173 precision mediump float; 6174 6175 ${DECLARATIONS} 6176 6177 void main() 6178 { 6179 ${SETUP} 6180 out0 = in0.xyyx / in1.yyxx; 6181 ${OUTPUT} 6182 } 6183 "" 6184 end 6185 6186 case mediump_ivec3_zxyz_xyzz 6187 version 300 es 6188 values 6189 { 6190 input ivec3 in0 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6191 input ivec3 in1 = [ ivec3(-1, 1, -1) | ivec3(1, 2, 3) | ivec3(-1, -2, -4) ]; 6192 output ivec4 out0 = [ ivec4(1, -1, -1, 1) | ivec4(3, 0, 0, 1) | ivec4(4, 0, 0, 1) ]; 6193 } 6194 6195 both "" 6196 #version 300 es 6197 precision mediump float; 6198 6199 ${DECLARATIONS} 6200 6201 void main() 6202 { 6203 ${SETUP} 6204 out0 = in0.zxyz / in1.xyzz; 6205 ${OUTPUT} 6206 } 6207 "" 6208 end 6209 6210 case mediump_ivec4_x_x 6211 version 300 es 6212 values 6213 { 6214 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6215 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6216 output int out0 = [ 1 | 1 | 1 ]; 6217 } 6218 6219 both "" 6220 #version 300 es 6221 precision mediump float; 6222 6223 ${DECLARATIONS} 6224 6225 void main() 6226 { 6227 ${SETUP} 6228 out0 = in0.x / in1.x; 6229 ${OUTPUT} 6230 } 6231 "" 6232 end 6233 6234 case mediump_ivec4_w_w 6235 version 300 es 6236 values 6237 { 6238 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6239 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6240 output int out0 = [ 1 | 1 | 1 ]; 6241 } 6242 6243 both "" 6244 #version 300 es 6245 precision mediump float; 6246 6247 ${DECLARATIONS} 6248 6249 void main() 6250 { 6251 ${SETUP} 6252 out0 = in0.w / in1.w; 6253 ${OUTPUT} 6254 } 6255 "" 6256 end 6257 6258 case mediump_ivec4_wx_xw 6259 version 300 es 6260 values 6261 { 6262 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6263 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6264 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(4, 0) | ivec2(9, 0) ]; 6265 } 6266 6267 both "" 6268 #version 300 es 6269 precision mediump float; 6270 6271 ${DECLARATIONS} 6272 6273 void main() 6274 { 6275 ${SETUP} 6276 out0 = in0.wx / in1.xw; 6277 ${OUTPUT} 6278 } 6279 "" 6280 end 6281 6282 case mediump_ivec4_wz_zw 6283 version 300 es 6284 values 6285 { 6286 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6287 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6288 output ivec2 out0 = [ ivec2(-1, -1) | ivec2(1, 0) | ivec2(2, 0) ]; 6289 } 6290 6291 both "" 6292 #version 300 es 6293 precision mediump float; 6294 6295 ${DECLARATIONS} 6296 6297 void main() 6298 { 6299 ${SETUP} 6300 out0 = in0.wz / in1.zw; 6301 ${OUTPUT} 6302 } 6303 "" 6304 end 6305 6306 case mediump_ivec4_www_www 6307 version 300 es 6308 values 6309 { 6310 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6311 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6312 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(1, 1, 1) | ivec3(1, 1, 1) ]; 6313 } 6314 6315 both "" 6316 #version 300 es 6317 precision mediump float; 6318 6319 ${DECLARATIONS} 6320 6321 void main() 6322 { 6323 ${SETUP} 6324 out0 = in0.www / in1.www; 6325 ${OUTPUT} 6326 } 6327 "" 6328 end 6329 6330 case mediump_ivec4_yyw_ywy 6331 version 300 es 6332 values 6333 { 6334 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6335 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6336 output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(1, 0, 2) | ivec3(1, 0, 4) ]; 6337 } 6338 6339 both "" 6340 #version 300 es 6341 precision mediump float; 6342 6343 ${DECLARATIONS} 6344 6345 void main() 6346 { 6347 ${SETUP} 6348 out0 = in0.yyw / in1.ywy; 6349 ${OUTPUT} 6350 } 6351 "" 6352 end 6353 6354 case mediump_ivec4_wzy_zyw 6355 version 300 es 6356 values 6357 { 6358 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6359 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6360 output ivec3 out0 = [ ivec3(-1, -1, 1) | ivec3(1, 1, 0) | ivec3(2, 2, 0) ]; 6361 } 6362 6363 both "" 6364 #version 300 es 6365 precision mediump float; 6366 6367 ${DECLARATIONS} 6368 6369 void main() 6370 { 6371 ${SETUP} 6372 out0 = in0.wzy / in1.zyw; 6373 ${OUTPUT} 6374 } 6375 "" 6376 end 6377 6378 case mediump_ivec4_xyzw_yzwx 6379 version 300 es 6380 values 6381 { 6382 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6383 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6384 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(0, 0, 0, 4) | ivec4(0, 0, 0, 9) ]; 6385 } 6386 6387 both "" 6388 #version 300 es 6389 precision mediump float; 6390 6391 ${DECLARATIONS} 6392 6393 void main() 6394 { 6395 ${SETUP} 6396 out0 = in0.xyzw / in1.yzwx; 6397 ${OUTPUT} 6398 } 6399 "" 6400 end 6401 6402 case mediump_ivec4_wzyx_zyxw 6403 version 300 es 6404 values 6405 { 6406 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6407 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6408 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(1, 1, 2, 0) | ivec4(2, 2, 2, 0) ]; 6409 } 6410 6411 both "" 6412 #version 300 es 6413 precision mediump float; 6414 6415 ${DECLARATIONS} 6416 6417 void main() 6418 { 6419 ${SETUP} 6420 out0 = in0.wzyx / in1.zyxw; 6421 ${OUTPUT} 6422 } 6423 "" 6424 end 6425 6426 case mediump_ivec4_xyxy_yxyx 6427 version 300 es 6428 values 6429 { 6430 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6431 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6432 output ivec4 out0 = [ ivec4(-1, -1, -1, -1) | ivec4(0, 2, 0, 2) | ivec4(0, 2, 0, 2) ]; 6433 } 6434 6435 both "" 6436 #version 300 es 6437 precision mediump float; 6438 6439 ${DECLARATIONS} 6440 6441 void main() 6442 { 6443 ${SETUP} 6444 out0 = in0.xyxy / in1.yxyx; 6445 ${OUTPUT} 6446 } 6447 "" 6448 end 6449 6450 case mediump_ivec4_yzzy_zzyy 6451 version 300 es 6452 values 6453 { 6454 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6455 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6456 output ivec4 out0 = [ ivec4(-1, 1, -1, 1) | ivec4(0, 1, 1, 1) | ivec4(0, 1, 2, 1) ]; 6457 } 6458 6459 both "" 6460 #version 300 es 6461 precision mediump float; 6462 6463 ${DECLARATIONS} 6464 6465 void main() 6466 { 6467 ${SETUP} 6468 out0 = in0.yzzy / in1.zzyy; 6469 ${OUTPUT} 6470 } 6471 "" 6472 end 6473 6474 case mediump_ivec4_wxww_xwww 6475 version 300 es 6476 values 6477 { 6478 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6479 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6480 output ivec4 out0 = [ ivec4(-1, -1, 1, 1) | ivec4(4, 0, 1, 1) | ivec4(9, 0, 1, 1) ]; 6481 } 6482 6483 both "" 6484 #version 300 es 6485 precision mediump float; 6486 6487 ${DECLARATIONS} 6488 6489 void main() 6490 { 6491 ${SETUP} 6492 out0 = in0.wxww / in1.xwww; 6493 ${OUTPUT} 6494 } 6495 "" 6496 end 6497 6498 case mediump_ivec4_xyxx_yxxx 6499 version 300 es 6500 values 6501 { 6502 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6503 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6504 output ivec4 out0 = [ ivec4(-1, -1, 1, 1) | ivec4(0, 2, 1, 1) | ivec4(0, 2, 1, 1) ]; 6505 } 6506 6507 both "" 6508 #version 300 es 6509 precision mediump float; 6510 6511 ${DECLARATIONS} 6512 6513 void main() 6514 { 6515 ${SETUP} 6516 out0 = in0.xyxx / in1.yxxx; 6517 ${OUTPUT} 6518 } 6519 "" 6520 end 6521 6522 case mediump_ivec4_zzzz_zzzz 6523 version 300 es 6524 values 6525 { 6526 input ivec4 in0 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6527 input ivec4 in1 = [ ivec4(-1, 1, -1, 1) | ivec4(1, 2, 3, 4) | ivec4(-1, -2, -4, -9) ]; 6528 output ivec4 out0 = [ ivec4(1, 1, 1, 1) | ivec4(1, 1, 1, 1) | ivec4(1, 1, 1, 1) ]; 6529 } 6530 6531 both "" 6532 #version 300 es 6533 precision mediump float; 6534 6535 ${DECLARATIONS} 6536 6537 void main() 6538 { 6539 ${SETUP} 6540 out0 = in0.zzzz / in1.zzzz; 6541 ${OUTPUT} 6542 } 6543 "" 6544 end 6545 6546 6547end # vector_divide 6548