1// pathfinder/simd/src/x86/swizzle_f32x4.rs
2//
3// Copyright © 2019 The Pathfinder Project Developers.
4//
5// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8// option. This file may not be copied, modified, or distributed
9// except according to those terms.
10
11use crate::x86::F32x4;
12
13#[cfg(target_pointer_width = "32")]
14use std::arch::x86;
15#[cfg(target_pointer_width = "64")]
16use std::arch::x86_64 as x86;
17
18impl F32x4 {
19 #[inline]
20 pub fn xxxx(self) -> F32x4 {
21 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 0)) }
22 }
23
24 #[inline]
25 pub fn yxxx(self) -> F32x4 {
26 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 1)) }
27 }
28
29 #[inline]
30 pub fn zxxx(self) -> F32x4 {
31 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 2)) }
32 }
33
34 #[inline]
35 pub fn wxxx(self) -> F32x4 {
36 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 3)) }
37 }
38
39 #[inline]
40 pub fn xyxx(self) -> F32x4 {
41 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 4)) }
42 }
43
44 #[inline]
45 pub fn yyxx(self) -> F32x4 {
46 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 5)) }
47 }
48
49 #[inline]
50 pub fn zyxx(self) -> F32x4 {
51 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 6)) }
52 }
53
54 #[inline]
55 pub fn wyxx(self) -> F32x4 {
56 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 7)) }
57 }
58
59 #[inline]
60 pub fn xzxx(self) -> F32x4 {
61 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 8)) }
62 }
63
64 #[inline]
65 pub fn yzxx(self) -> F32x4 {
66 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 9)) }
67 }
68
69 #[inline]
70 pub fn zzxx(self) -> F32x4 {
71 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 10)) }
72 }
73
74 #[inline]
75 pub fn wzxx(self) -> F32x4 {
76 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 11)) }
77 }
78
79 #[inline]
80 pub fn xwxx(self) -> F32x4 {
81 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 12)) }
82 }
83
84 #[inline]
85 pub fn ywxx(self) -> F32x4 {
86 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 13)) }
87 }
88
89 #[inline]
90 pub fn zwxx(self) -> F32x4 {
91 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 14)) }
92 }
93
94 #[inline]
95 pub fn wwxx(self) -> F32x4 {
96 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 15)) }
97 }
98
99 #[inline]
100 pub fn xxyx(self) -> F32x4 {
101 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 16)) }
102 }
103
104 #[inline]
105 pub fn yxyx(self) -> F32x4 {
106 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 17)) }
107 }
108
109 #[inline]
110 pub fn zxyx(self) -> F32x4 {
111 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 18)) }
112 }
113
114 #[inline]
115 pub fn wxyx(self) -> F32x4 {
116 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 19)) }
117 }
118
119 #[inline]
120 pub fn xyyx(self) -> F32x4 {
121 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 20)) }
122 }
123
124 #[inline]
125 pub fn yyyx(self) -> F32x4 {
126 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 21)) }
127 }
128
129 #[inline]
130 pub fn zyyx(self) -> F32x4 {
131 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 22)) }
132 }
133
134 #[inline]
135 pub fn wyyx(self) -> F32x4 {
136 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 23)) }
137 }
138
139 #[inline]
140 pub fn xzyx(self) -> F32x4 {
141 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 24)) }
142 }
143
144 #[inline]
145 pub fn yzyx(self) -> F32x4 {
146 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 25)) }
147 }
148
149 #[inline]
150 pub fn zzyx(self) -> F32x4 {
151 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 26)) }
152 }
153
154 #[inline]
155 pub fn wzyx(self) -> F32x4 {
156 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 27)) }
157 }
158
159 #[inline]
160 pub fn xwyx(self) -> F32x4 {
161 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 28)) }
162 }
163
164 #[inline]
165 pub fn ywyx(self) -> F32x4 {
166 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 29)) }
167 }
168
169 #[inline]
170 pub fn zwyx(self) -> F32x4 {
171 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 30)) }
172 }
173
174 #[inline]
175 pub fn wwyx(self) -> F32x4 {
176 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 31)) }
177 }
178
179 #[inline]
180 pub fn xxzx(self) -> F32x4 {
181 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 32)) }
182 }
183
184 #[inline]
185 pub fn yxzx(self) -> F32x4 {
186 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 33)) }
187 }
188
189 #[inline]
190 pub fn zxzx(self) -> F32x4 {
191 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 34)) }
192 }
193
194 #[inline]
195 pub fn wxzx(self) -> F32x4 {
196 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 35)) }
197 }
198
199 #[inline]
200 pub fn xyzx(self) -> F32x4 {
201 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 36)) }
202 }
203
204 #[inline]
205 pub fn yyzx(self) -> F32x4 {
206 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 37)) }
207 }
208
209 #[inline]
210 pub fn zyzx(self) -> F32x4 {
211 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 38)) }
212 }
213
214 #[inline]
215 pub fn wyzx(self) -> F32x4 {
216 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 39)) }
217 }
218
219 #[inline]
220 pub fn xzzx(self) -> F32x4 {
221 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 40)) }
222 }
223
224 #[inline]
225 pub fn yzzx(self) -> F32x4 {
226 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 41)) }
227 }
228
229 #[inline]
230 pub fn zzzx(self) -> F32x4 {
231 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 42)) }
232 }
233
234 #[inline]
235 pub fn wzzx(self) -> F32x4 {
236 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 43)) }
237 }
238
239 #[inline]
240 pub fn xwzx(self) -> F32x4 {
241 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 44)) }
242 }
243
244 #[inline]
245 pub fn ywzx(self) -> F32x4 {
246 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 45)) }
247 }
248
249 #[inline]
250 pub fn zwzx(self) -> F32x4 {
251 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 46)) }
252 }
253
254 #[inline]
255 pub fn wwzx(self) -> F32x4 {
256 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 47)) }
257 }
258
259 #[inline]
260 pub fn xxwx(self) -> F32x4 {
261 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 48)) }
262 }
263
264 #[inline]
265 pub fn yxwx(self) -> F32x4 {
266 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 49)) }
267 }
268
269 #[inline]
270 pub fn zxwx(self) -> F32x4 {
271 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 50)) }
272 }
273
274 #[inline]
275 pub fn wxwx(self) -> F32x4 {
276 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 51)) }
277 }
278
279 #[inline]
280 pub fn xywx(self) -> F32x4 {
281 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 52)) }
282 }
283
284 #[inline]
285 pub fn yywx(self) -> F32x4 {
286 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 53)) }
287 }
288
289 #[inline]
290 pub fn zywx(self) -> F32x4 {
291 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 54)) }
292 }
293
294 #[inline]
295 pub fn wywx(self) -> F32x4 {
296 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 55)) }
297 }
298
299 #[inline]
300 pub fn xzwx(self) -> F32x4 {
301 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 56)) }
302 }
303
304 #[inline]
305 pub fn yzwx(self) -> F32x4 {
306 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 57)) }
307 }
308
309 #[inline]
310 pub fn zzwx(self) -> F32x4 {
311 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 58)) }
312 }
313
314 #[inline]
315 pub fn wzwx(self) -> F32x4 {
316 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 59)) }
317 }
318
319 #[inline]
320 pub fn xwwx(self) -> F32x4 {
321 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 60)) }
322 }
323
324 #[inline]
325 pub fn ywwx(self) -> F32x4 {
326 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 61)) }
327 }
328
329 #[inline]
330 pub fn zwwx(self) -> F32x4 {
331 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 62)) }
332 }
333
334 #[inline]
335 pub fn wwwx(self) -> F32x4 {
336 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 63)) }
337 }
338
339 #[inline]
340 pub fn xxxy(self) -> F32x4 {
341 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 64)) }
342 }
343
344 #[inline]
345 pub fn yxxy(self) -> F32x4 {
346 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 65)) }
347 }
348
349 #[inline]
350 pub fn zxxy(self) -> F32x4 {
351 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 66)) }
352 }
353
354 #[inline]
355 pub fn wxxy(self) -> F32x4 {
356 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 67)) }
357 }
358
359 #[inline]
360 pub fn xyxy(self) -> F32x4 {
361 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 68)) }
362 }
363
364 #[inline]
365 pub fn yyxy(self) -> F32x4 {
366 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 69)) }
367 }
368
369 #[inline]
370 pub fn zyxy(self) -> F32x4 {
371 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 70)) }
372 }
373
374 #[inline]
375 pub fn wyxy(self) -> F32x4 {
376 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 71)) }
377 }
378
379 #[inline]
380 pub fn xzxy(self) -> F32x4 {
381 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 72)) }
382 }
383
384 #[inline]
385 pub fn yzxy(self) -> F32x4 {
386 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 73)) }
387 }
388
389 #[inline]
390 pub fn zzxy(self) -> F32x4 {
391 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 74)) }
392 }
393
394 #[inline]
395 pub fn wzxy(self) -> F32x4 {
396 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 75)) }
397 }
398
399 #[inline]
400 pub fn xwxy(self) -> F32x4 {
401 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 76)) }
402 }
403
404 #[inline]
405 pub fn ywxy(self) -> F32x4 {
406 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 77)) }
407 }
408
409 #[inline]
410 pub fn zwxy(self) -> F32x4 {
411 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 78)) }
412 }
413
414 #[inline]
415 pub fn wwxy(self) -> F32x4 {
416 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 79)) }
417 }
418
419 #[inline]
420 pub fn xxyy(self) -> F32x4 {
421 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 80)) }
422 }
423
424 #[inline]
425 pub fn yxyy(self) -> F32x4 {
426 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 81)) }
427 }
428
429 #[inline]
430 pub fn zxyy(self) -> F32x4 {
431 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 82)) }
432 }
433
434 #[inline]
435 pub fn wxyy(self) -> F32x4 {
436 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 83)) }
437 }
438
439 #[inline]
440 pub fn xyyy(self) -> F32x4 {
441 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 84)) }
442 }
443
444 #[inline]
445 pub fn yyyy(self) -> F32x4 {
446 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 85)) }
447 }
448
449 #[inline]
450 pub fn zyyy(self) -> F32x4 {
451 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 86)) }
452 }
453
454 #[inline]
455 pub fn wyyy(self) -> F32x4 {
456 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 87)) }
457 }
458
459 #[inline]
460 pub fn xzyy(self) -> F32x4 {
461 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 88)) }
462 }
463
464 #[inline]
465 pub fn yzyy(self) -> F32x4 {
466 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 89)) }
467 }
468
469 #[inline]
470 pub fn zzyy(self) -> F32x4 {
471 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 90)) }
472 }
473
474 #[inline]
475 pub fn wzyy(self) -> F32x4 {
476 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 91)) }
477 }
478
479 #[inline]
480 pub fn xwyy(self) -> F32x4 {
481 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 92)) }
482 }
483
484 #[inline]
485 pub fn ywyy(self) -> F32x4 {
486 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 93)) }
487 }
488
489 #[inline]
490 pub fn zwyy(self) -> F32x4 {
491 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 94)) }
492 }
493
494 #[inline]
495 pub fn wwyy(self) -> F32x4 {
496 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 95)) }
497 }
498
499 #[inline]
500 pub fn xxzy(self) -> F32x4 {
501 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 96)) }
502 }
503
504 #[inline]
505 pub fn yxzy(self) -> F32x4 {
506 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 97)) }
507 }
508
509 #[inline]
510 pub fn zxzy(self) -> F32x4 {
511 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 98)) }
512 }
513
514 #[inline]
515 pub fn wxzy(self) -> F32x4 {
516 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 99)) }
517 }
518
519 #[inline]
520 pub fn xyzy(self) -> F32x4 {
521 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 100)) }
522 }
523
524 #[inline]
525 pub fn yyzy(self) -> F32x4 {
526 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 101)) }
527 }
528
529 #[inline]
530 pub fn zyzy(self) -> F32x4 {
531 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 102)) }
532 }
533
534 #[inline]
535 pub fn wyzy(self) -> F32x4 {
536 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 103)) }
537 }
538
539 #[inline]
540 pub fn xzzy(self) -> F32x4 {
541 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 104)) }
542 }
543
544 #[inline]
545 pub fn yzzy(self) -> F32x4 {
546 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 105)) }
547 }
548
549 #[inline]
550 pub fn zzzy(self) -> F32x4 {
551 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 106)) }
552 }
553
554 #[inline]
555 pub fn wzzy(self) -> F32x4 {
556 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 107)) }
557 }
558
559 #[inline]
560 pub fn xwzy(self) -> F32x4 {
561 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 108)) }
562 }
563
564 #[inline]
565 pub fn ywzy(self) -> F32x4 {
566 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 109)) }
567 }
568
569 #[inline]
570 pub fn zwzy(self) -> F32x4 {
571 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 110)) }
572 }
573
574 #[inline]
575 pub fn wwzy(self) -> F32x4 {
576 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 111)) }
577 }
578
579 #[inline]
580 pub fn xxwy(self) -> F32x4 {
581 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 112)) }
582 }
583
584 #[inline]
585 pub fn yxwy(self) -> F32x4 {
586 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 113)) }
587 }
588
589 #[inline]
590 pub fn zxwy(self) -> F32x4 {
591 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 114)) }
592 }
593
594 #[inline]
595 pub fn wxwy(self) -> F32x4 {
596 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 115)) }
597 }
598
599 #[inline]
600 pub fn xywy(self) -> F32x4 {
601 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 116)) }
602 }
603
604 #[inline]
605 pub fn yywy(self) -> F32x4 {
606 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 117)) }
607 }
608
609 #[inline]
610 pub fn zywy(self) -> F32x4 {
611 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 118)) }
612 }
613
614 #[inline]
615 pub fn wywy(self) -> F32x4 {
616 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 119)) }
617 }
618
619 #[inline]
620 pub fn xzwy(self) -> F32x4 {
621 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 120)) }
622 }
623
624 #[inline]
625 pub fn yzwy(self) -> F32x4 {
626 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 121)) }
627 }
628
629 #[inline]
630 pub fn zzwy(self) -> F32x4 {
631 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 122)) }
632 }
633
634 #[inline]
635 pub fn wzwy(self) -> F32x4 {
636 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 123)) }
637 }
638
639 #[inline]
640 pub fn xwwy(self) -> F32x4 {
641 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 124)) }
642 }
643
644 #[inline]
645 pub fn ywwy(self) -> F32x4 {
646 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 125)) }
647 }
648
649 #[inline]
650 pub fn zwwy(self) -> F32x4 {
651 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 126)) }
652 }
653
654 #[inline]
655 pub fn wwwy(self) -> F32x4 {
656 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 127)) }
657 }
658
659 #[inline]
660 pub fn xxxz(self) -> F32x4 {
661 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 128)) }
662 }
663
664 #[inline]
665 pub fn yxxz(self) -> F32x4 {
666 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 129)) }
667 }
668
669 #[inline]
670 pub fn zxxz(self) -> F32x4 {
671 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 130)) }
672 }
673
674 #[inline]
675 pub fn wxxz(self) -> F32x4 {
676 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 131)) }
677 }
678
679 #[inline]
680 pub fn xyxz(self) -> F32x4 {
681 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 132)) }
682 }
683
684 #[inline]
685 pub fn yyxz(self) -> F32x4 {
686 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 133)) }
687 }
688
689 #[inline]
690 pub fn zyxz(self) -> F32x4 {
691 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 134)) }
692 }
693
694 #[inline]
695 pub fn wyxz(self) -> F32x4 {
696 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 135)) }
697 }
698
699 #[inline]
700 pub fn xzxz(self) -> F32x4 {
701 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 136)) }
702 }
703
704 #[inline]
705 pub fn yzxz(self) -> F32x4 {
706 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 137)) }
707 }
708
709 #[inline]
710 pub fn zzxz(self) -> F32x4 {
711 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 138)) }
712 }
713
714 #[inline]
715 pub fn wzxz(self) -> F32x4 {
716 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 139)) }
717 }
718
719 #[inline]
720 pub fn xwxz(self) -> F32x4 {
721 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 140)) }
722 }
723
724 #[inline]
725 pub fn ywxz(self) -> F32x4 {
726 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 141)) }
727 }
728
729 #[inline]
730 pub fn zwxz(self) -> F32x4 {
731 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 142)) }
732 }
733
734 #[inline]
735 pub fn wwxz(self) -> F32x4 {
736 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 143)) }
737 }
738
739 #[inline]
740 pub fn xxyz(self) -> F32x4 {
741 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 144)) }
742 }
743
744 #[inline]
745 pub fn yxyz(self) -> F32x4 {
746 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 145)) }
747 }
748
749 #[inline]
750 pub fn zxyz(self) -> F32x4 {
751 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 146)) }
752 }
753
754 #[inline]
755 pub fn wxyz(self) -> F32x4 {
756 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 147)) }
757 }
758
759 #[inline]
760 pub fn xyyz(self) -> F32x4 {
761 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 148)) }
762 }
763
764 #[inline]
765 pub fn yyyz(self) -> F32x4 {
766 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 149)) }
767 }
768
769 #[inline]
770 pub fn zyyz(self) -> F32x4 {
771 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 150)) }
772 }
773
774 #[inline]
775 pub fn wyyz(self) -> F32x4 {
776 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 151)) }
777 }
778
779 #[inline]
780 pub fn xzyz(self) -> F32x4 {
781 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 152)) }
782 }
783
784 #[inline]
785 pub fn yzyz(self) -> F32x4 {
786 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 153)) }
787 }
788
789 #[inline]
790 pub fn zzyz(self) -> F32x4 {
791 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 154)) }
792 }
793
794 #[inline]
795 pub fn wzyz(self) -> F32x4 {
796 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 155)) }
797 }
798
799 #[inline]
800 pub fn xwyz(self) -> F32x4 {
801 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 156)) }
802 }
803
804 #[inline]
805 pub fn ywyz(self) -> F32x4 {
806 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 157)) }
807 }
808
809 #[inline]
810 pub fn zwyz(self) -> F32x4 {
811 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 158)) }
812 }
813
814 #[inline]
815 pub fn wwyz(self) -> F32x4 {
816 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 159)) }
817 }
818
819 #[inline]
820 pub fn xxzz(self) -> F32x4 {
821 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 160)) }
822 }
823
824 #[inline]
825 pub fn yxzz(self) -> F32x4 {
826 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 161)) }
827 }
828
829 #[inline]
830 pub fn zxzz(self) -> F32x4 {
831 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 162)) }
832 }
833
834 #[inline]
835 pub fn wxzz(self) -> F32x4 {
836 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 163)) }
837 }
838
839 #[inline]
840 pub fn xyzz(self) -> F32x4 {
841 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 164)) }
842 }
843
844 #[inline]
845 pub fn yyzz(self) -> F32x4 {
846 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 165)) }
847 }
848
849 #[inline]
850 pub fn zyzz(self) -> F32x4 {
851 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 166)) }
852 }
853
854 #[inline]
855 pub fn wyzz(self) -> F32x4 {
856 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 167)) }
857 }
858
859 #[inline]
860 pub fn xzzz(self) -> F32x4 {
861 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 168)) }
862 }
863
864 #[inline]
865 pub fn yzzz(self) -> F32x4 {
866 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 169)) }
867 }
868
869 #[inline]
870 pub fn zzzz(self) -> F32x4 {
871 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 170)) }
872 }
873
874 #[inline]
875 pub fn wzzz(self) -> F32x4 {
876 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 171)) }
877 }
878
879 #[inline]
880 pub fn xwzz(self) -> F32x4 {
881 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 172)) }
882 }
883
884 #[inline]
885 pub fn ywzz(self) -> F32x4 {
886 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 173)) }
887 }
888
889 #[inline]
890 pub fn zwzz(self) -> F32x4 {
891 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 174)) }
892 }
893
894 #[inline]
895 pub fn wwzz(self) -> F32x4 {
896 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 175)) }
897 }
898
899 #[inline]
900 pub fn xxwz(self) -> F32x4 {
901 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 176)) }
902 }
903
904 #[inline]
905 pub fn yxwz(self) -> F32x4 {
906 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 177)) }
907 }
908
909 #[inline]
910 pub fn zxwz(self) -> F32x4 {
911 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 178)) }
912 }
913
914 #[inline]
915 pub fn wxwz(self) -> F32x4 {
916 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 179)) }
917 }
918
919 #[inline]
920 pub fn xywz(self) -> F32x4 {
921 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 180)) }
922 }
923
924 #[inline]
925 pub fn yywz(self) -> F32x4 {
926 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 181)) }
927 }
928
929 #[inline]
930 pub fn zywz(self) -> F32x4 {
931 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 182)) }
932 }
933
934 #[inline]
935 pub fn wywz(self) -> F32x4 {
936 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 183)) }
937 }
938
939 #[inline]
940 pub fn xzwz(self) -> F32x4 {
941 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 184)) }
942 }
943
944 #[inline]
945 pub fn yzwz(self) -> F32x4 {
946 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 185)) }
947 }
948
949 #[inline]
950 pub fn zzwz(self) -> F32x4 {
951 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 186)) }
952 }
953
954 #[inline]
955 pub fn wzwz(self) -> F32x4 {
956 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 187)) }
957 }
958
959 #[inline]
960 pub fn xwwz(self) -> F32x4 {
961 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 188)) }
962 }
963
964 #[inline]
965 pub fn ywwz(self) -> F32x4 {
966 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 189)) }
967 }
968
969 #[inline]
970 pub fn zwwz(self) -> F32x4 {
971 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 190)) }
972 }
973
974 #[inline]
975 pub fn wwwz(self) -> F32x4 {
976 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 191)) }
977 }
978
979 #[inline]
980 pub fn xxxw(self) -> F32x4 {
981 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 192)) }
982 }
983
984 #[inline]
985 pub fn yxxw(self) -> F32x4 {
986 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 193)) }
987 }
988
989 #[inline]
990 pub fn zxxw(self) -> F32x4 {
991 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 194)) }
992 }
993
994 #[inline]
995 pub fn wxxw(self) -> F32x4 {
996 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 195)) }
997 }
998
999 #[inline]
1000 pub fn xyxw(self) -> F32x4 {
1001 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 196)) }
1002 }
1003
1004 #[inline]
1005 pub fn yyxw(self) -> F32x4 {
1006 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 197)) }
1007 }
1008
1009 #[inline]
1010 pub fn zyxw(self) -> F32x4 {
1011 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 198)) }
1012 }
1013
1014 #[inline]
1015 pub fn wyxw(self) -> F32x4 {
1016 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 199)) }
1017 }
1018
1019 #[inline]
1020 pub fn xzxw(self) -> F32x4 {
1021 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 200)) }
1022 }
1023
1024 #[inline]
1025 pub fn yzxw(self) -> F32x4 {
1026 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 201)) }
1027 }
1028
1029 #[inline]
1030 pub fn zzxw(self) -> F32x4 {
1031 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 202)) }
1032 }
1033
1034 #[inline]
1035 pub fn wzxw(self) -> F32x4 {
1036 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 203)) }
1037 }
1038
1039 #[inline]
1040 pub fn xwxw(self) -> F32x4 {
1041 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 204)) }
1042 }
1043
1044 #[inline]
1045 pub fn ywxw(self) -> F32x4 {
1046 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 205)) }
1047 }
1048
1049 #[inline]
1050 pub fn zwxw(self) -> F32x4 {
1051 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 206)) }
1052 }
1053
1054 #[inline]
1055 pub fn wwxw(self) -> F32x4 {
1056 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 207)) }
1057 }
1058
1059 #[inline]
1060 pub fn xxyw(self) -> F32x4 {
1061 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 208)) }
1062 }
1063
1064 #[inline]
1065 pub fn yxyw(self) -> F32x4 {
1066 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 209)) }
1067 }
1068
1069 #[inline]
1070 pub fn zxyw(self) -> F32x4 {
1071 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 210)) }
1072 }
1073
1074 #[inline]
1075 pub fn wxyw(self) -> F32x4 {
1076 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 211)) }
1077 }
1078
1079 #[inline]
1080 pub fn xyyw(self) -> F32x4 {
1081 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 212)) }
1082 }
1083
1084 #[inline]
1085 pub fn yyyw(self) -> F32x4 {
1086 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 213)) }
1087 }
1088
1089 #[inline]
1090 pub fn zyyw(self) -> F32x4 {
1091 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 214)) }
1092 }
1093
1094 #[inline]
1095 pub fn wyyw(self) -> F32x4 {
1096 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 215)) }
1097 }
1098
1099 #[inline]
1100 pub fn xzyw(self) -> F32x4 {
1101 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 216)) }
1102 }
1103
1104 #[inline]
1105 pub fn yzyw(self) -> F32x4 {
1106 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 217)) }
1107 }
1108
1109 #[inline]
1110 pub fn zzyw(self) -> F32x4 {
1111 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 218)) }
1112 }
1113
1114 #[inline]
1115 pub fn wzyw(self) -> F32x4 {
1116 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 219)) }
1117 }
1118
1119 #[inline]
1120 pub fn xwyw(self) -> F32x4 {
1121 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 220)) }
1122 }
1123
1124 #[inline]
1125 pub fn ywyw(self) -> F32x4 {
1126 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 221)) }
1127 }
1128
1129 #[inline]
1130 pub fn zwyw(self) -> F32x4 {
1131 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 222)) }
1132 }
1133
1134 #[inline]
1135 pub fn wwyw(self) -> F32x4 {
1136 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 223)) }
1137 }
1138
1139 #[inline]
1140 pub fn xxzw(self) -> F32x4 {
1141 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 224)) }
1142 }
1143
1144 #[inline]
1145 pub fn yxzw(self) -> F32x4 {
1146 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 225)) }
1147 }
1148
1149 #[inline]
1150 pub fn zxzw(self) -> F32x4 {
1151 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 226)) }
1152 }
1153
1154 #[inline]
1155 pub fn wxzw(self) -> F32x4 {
1156 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 227)) }
1157 }
1158
1159 #[inline]
1160 pub fn xyzw(self) -> F32x4 {
1161 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 228)) }
1162 }
1163
1164 #[inline]
1165 pub fn yyzw(self) -> F32x4 {
1166 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 229)) }
1167 }
1168
1169 #[inline]
1170 pub fn zyzw(self) -> F32x4 {
1171 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 230)) }
1172 }
1173
1174 #[inline]
1175 pub fn wyzw(self) -> F32x4 {
1176 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 231)) }
1177 }
1178
1179 #[inline]
1180 pub fn xzzw(self) -> F32x4 {
1181 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 232)) }
1182 }
1183
1184 #[inline]
1185 pub fn yzzw(self) -> F32x4 {
1186 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 233)) }
1187 }
1188
1189 #[inline]
1190 pub fn zzzw(self) -> F32x4 {
1191 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 234)) }
1192 }
1193
1194 #[inline]
1195 pub fn wzzw(self) -> F32x4 {
1196 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 235)) }
1197 }
1198
1199 #[inline]
1200 pub fn xwzw(self) -> F32x4 {
1201 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 236)) }
1202 }
1203
1204 #[inline]
1205 pub fn ywzw(self) -> F32x4 {
1206 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 237)) }
1207 }
1208
1209 #[inline]
1210 pub fn zwzw(self) -> F32x4 {
1211 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 238)) }
1212 }
1213
1214 #[inline]
1215 pub fn wwzw(self) -> F32x4 {
1216 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 239)) }
1217 }
1218
1219 #[inline]
1220 pub fn xxww(self) -> F32x4 {
1221 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 240)) }
1222 }
1223
1224 #[inline]
1225 pub fn yxww(self) -> F32x4 {
1226 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 241)) }
1227 }
1228
1229 #[inline]
1230 pub fn zxww(self) -> F32x4 {
1231 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 242)) }
1232 }
1233
1234 #[inline]
1235 pub fn wxww(self) -> F32x4 {
1236 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 243)) }
1237 }
1238
1239 #[inline]
1240 pub fn xyww(self) -> F32x4 {
1241 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 244)) }
1242 }
1243
1244 #[inline]
1245 pub fn yyww(self) -> F32x4 {
1246 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 245)) }
1247 }
1248
1249 #[inline]
1250 pub fn zyww(self) -> F32x4 {
1251 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 246)) }
1252 }
1253
1254 #[inline]
1255 pub fn wyww(self) -> F32x4 {
1256 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 247)) }
1257 }
1258
1259 #[inline]
1260 pub fn xzww(self) -> F32x4 {
1261 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 248)) }
1262 }
1263
1264 #[inline]
1265 pub fn yzww(self) -> F32x4 {
1266 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 249)) }
1267 }
1268
1269 #[inline]
1270 pub fn zzww(self) -> F32x4 {
1271 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 250)) }
1272 }
1273
1274 #[inline]
1275 pub fn wzww(self) -> F32x4 {
1276 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 251)) }
1277 }
1278
1279 #[inline]
1280 pub fn xwww(self) -> F32x4 {
1281 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 252)) }
1282 }
1283
1284 #[inline]
1285 pub fn ywww(self) -> F32x4 {
1286 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 253)) }
1287 }
1288
1289 #[inline]
1290 pub fn zwww(self) -> F32x4 {
1291 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 254)) }
1292 }
1293
1294 #[inline]
1295 pub fn wwww(self) -> F32x4 {
1296 unsafe { F32x4(x86::_mm_shuffle_ps(self.0, self.0, 255)) }
1297 }
1298}
1299