Lines Matching refs:new

77    vbits_t new = { .num_bits = num_bits };
80 case 1: new.bits.u32 = 0x01; break;
81 case 8: new.bits.u8 = 0xff; break;
82 case 16: new.bits.u16 = 0xffff; break;
83 case 32: new.bits.u32 = ~0; break;
84 case 64: new.bits.u64 = ~0ull; break;
85 case 128: new.bits.u128[0] = ~0ull;
86 new.bits.u128[1] = ~0ull;
88 case 256: new.bits.u256[0] = ~0ull;
89 new.bits.u256[1] = ~0ull;
90 new.bits.u256[2] = ~0ull;
91 new.bits.u256[3] = ~0ull;
96 return new;
104 vbits_t new = { .num_bits = num_bits };
107 case 1: new.bits.u32 = 0x0; break;
108 case 8: new.bits.u8 = 0x0; break;
109 case 16: new.bits.u16 = 0x0; break;
110 case 32: new.bits.u32 = 0x0; break;
111 case 64: new.bits.u64 = 0x0; break;
112 case 128: new.bits.u128[0] = 0x0;
113 new.bits.u128[1] = 0x0;
115 case 256: new.bits.u256[0] = 0x0;
116 new.bits.u256[1] = 0x0;
117 new.bits.u256[2] = 0x0;
118 new.bits.u256[3] = 0x0;
123 return new;
159 vbits_t new = { .num_bits = num_bits };
180 case 1: new.bits.u32 = bits & 0x01; break;
181 case 8: new.bits.u8 = bits & 0xff; break;
182 case 16: new.bits.u16 = bits & 0xffff; break;
183 case 32: new.bits.u32 = bits & ~0u; break;
184 case 64: new.bits.u64 = bits & ~0ll; break;
188 return new;
195 new.bits.u128[0] = v.bits.u256[0];
196 new.bits.u128[1] = v.bits.u256[1];
198 new.bits.u128[0] = v.bits.u256[2];
199 new.bits.u128[1] = v.bits.u256[3];
201 return new;
223 vbits_t new = { .num_bits = num_bits };
229 case 8: new.bits.u8 = bits & 0xff; break;
230 case 16: new.bits.u16 = bits & 0xffff; break;
231 case 32: new.bits.u32 = bits & ~0u; break;
232 case 64: new.bits.u64 = bits & ~0ll; break;
235 new.bits.u128[0] = bits;
237 new.bits.u128[1] = ~0ull;
239 new.bits.u128[1] = 0;
242 new.bits.u128[1] = bits;
244 new.bits.u128[0] = ~0ull;
246 new.bits.u128[0] = 0;
252 new.bits.u256[0] = bits;
254 new.bits.u256[1] = ~0ull;
255 new.bits.u256[2] = ~0ull;
256 new.bits.u256[3] = ~0ull;
258 new.bits.u256[1] = 0;
259 new.bits.u256[2] = 0;
260 new.bits.u256[3] = 0;
263 new.bits.u256[3] = bits;
265 new.bits.u256[0] = ~0ull;
266 new.bits.u256[1] = ~0ull;
267 new.bits.u256[2] = ~0ull;
269 new.bits.u256[0] = 0;
270 new.bits.u256[1] = 0;
271 new.bits.u256[2] = 0;
278 return new;
284 new.bits.u128[0] = v.bits.u128[0];
285 new.bits.u128[1] = left64(v.bits.u128[1]);
287 new.bits.u128[0] = left64(v.bits.u128[0]);
288 if (new.bits.u128[0] & (1ull << 63)) { // MSB is set
289 new.bits.u128[1] = ~0ull;
291 new.bits.u128[1] = 0;
296 new.bits.u128[0] = left64(v.bits.u128[0]);
297 new.bits.u128[1] = v.bits.u128[1];
299 new.bits.u128[1] = left64(v.bits.u128[1]);
300 if (new.bits.u128[1] & (1ull << 63)) { // MSB is set
301 new.bits.u128[0] = ~0ull;
303 new.bits.u128[0] = 0;
307 if (num_bits == 128) return new;
312 uint64_t b1 = new.bits.u128[1];
313 uint64_t b0 = new.bits.u128[0];
315 new.bits.u256[0] = b0;
316 new.bits.u256[1] = b1;
318 if (new.bits.u256[1] & (1ull << 63)) { // MSB is set
319 new.bits.u256[2] = ~0ull;
320 new.bits.u256[3] = ~0ull;
322 new.bits.u256[2] = 0;
323 new.bits.u256[3] = 0;
326 uint64_t b1 = new.bits.u128[0];
327 uint64_t b0 = new.bits.u128[1];
329 new.bits.u256[2] = b0;
330 new.bits.u256[3] = b1;
332 if (new.bits.u256[2] & (1ull << 63)) { // MSB is set
333 new.bits.u256[0] = ~0ull;
334 new.bits.u256[1] = ~0ull;
336 new.bits.u256[0] = 0;
337 new.bits.u256[1] = 0;
340 return new;
352 vbits_t new = { .num_bits = v1.num_bits };
355 case 8: new.bits.u8 = v1.bits.u8 | v2.bits.u8; break;
356 case 16: new.bits.u16 = v1.bits.u16 | v2.bits.u16; break;
357 case 32: new.bits.u32 = v1.bits.u32 | v2.bits.u32; break;
358 case 64: new.bits.u64 = v1.bits.u64 | v2.bits.u64; break;
359 case 128: new.bits.u128[0] = v1.bits.u128[0] | v2.bits.u128[0];
360 new.bits.u128[1] = v1.bits.u128[1] | v2.bits.u128[1];
362 case 256: new.bits.u256[0] = v1.bits.u256[0] | v2.bits.u256[0];
363 new.bits.u256[1] = v1.bits.u256[1] | v2.bits.u256[1];
364 new.bits.u256[2] = v1.bits.u256[2] | v2.bits.u256[2];
365 new.bits.u256[3] = v1.bits.u256[3] | v2.bits.u256[3];
371 return new;
380 vbits_t new = { .num_bits = v1.num_bits };
383 case 8: new.bits.u8 = v1.bits.u8 & v2.bits.u8; break;
384 case 16: new.bits.u16 = v1.bits.u16 & v2.bits.u16; break;
385 case 32: new.bits.u32 = v1.bits.u32 & v2.bits.u32; break;
386 case 64: new.bits.u64 = v1.bits.u64 & v2.bits.u64; break;
387 case 128: new.bits.u128[0] = v1.bits.u128[0] & v2.bits.u128[0];
388 new.bits.u128[1] = v1.bits.u128[1] & v2.bits.u128[1];
390 case 256: new.bits.u256[0] = v1.bits.u256[0] & v2.bits.u256[0];
391 new.bits.u256[1] = v1.bits.u256[1] & v2.bits.u256[1];
392 new.bits.u256[2] = v1.bits.u256[2] & v2.bits.u256[2];
393 new.bits.u256[3] = v1.bits.u256[3] & v2.bits.u256[3];
399 return new;
408 vbits_t new = { .num_bits = v1.num_bits * 2 };
411 case 8: new.bits.u16 = (v1.bits.u8 << 8) | v2.bits.u8; break;
412 case 16: new.bits.u32 = (v1.bits.u16 << 16) | v2.bits.u16; break;
413 case 32: new.bits.u64 = v1.bits.u32;
414 new.bits.u64 = (new.bits.u64 << 32) | v2.bits.u32; break;
417 new.bits.u128[0] = v2.bits.u64;
418 new.bits.u128[1] = v1.bits.u64;
420 new.bits.u128[0] = v1.bits.u64;
421 new.bits.u128[1] = v2.bits.u64;
426 new.bits.u256[0] = v2.bits.u128[0];
427 new.bits.u256[1] = v2.bits.u128[1];
428 new.bits.u256[2] = v1.bits.u128[0];
429 new.bits.u256[3] = v1.bits.u128[1];
431 new.bits.u256[0] = v1.bits.u128[0];
432 new.bits.u256[1] = v1.bits.u128[1];
433 new.bits.u256[2] = v2.bits.u128[0];
434 new.bits.u256[3] = v2.bits.u128[1];
442 return new;
449 vbits_t new = { .num_bits = v.num_bits / 2 };
452 case 16: new.bits.u8 = v.bits.u16 >> 8; break;
453 case 32: new.bits.u16 = v.bits.u32 >> 16; break;
454 case 64: new.bits.u32 = v.bits.u64 >> 32; break;
457 new.bits.u64 = v.bits.u128[1];
459 new.bits.u64 = v.bits.u128[0];
463 new.bits.u128[0] = v.bits.u256[2];
464 new.bits.u128[1] = v.bits.u256[3];
466 new.bits.u128[0] = v.bits.u256[0];
467 new.bits.u128[1] = v.bits.u256[1];
475 return new;
486 vbits_t new = { .num_bits = num_bits };
492 case 8: new.bits.u8 = bits; break;
493 case 16: new.bits.u16 = bits; break;
494 case 32: new.bits.u32 = bits; break;
495 case 64: new.bits.u64 = bits; break;
498 new.bits.u128[0] = bits;
499 new.bits.u128[1] = 0;
501 new.bits.u128[0] = 0;
502 new.bits.u128[1] = bits;
507 new.bits.u256[0] = bits;
508 new.bits.u256[1] = 0;
509 new.bits.u256[2] = 0;
510 new.bits.u256[3] = 0;
512 new.bits.u256[0] = 0;
513 new.bits.u256[1] = 0;
514 new.bits.u256[2] = 0;
515 new.bits.u256[3] = bits;
521 return new;
528 new.bits.u256[0] = v.bits.u128[0];
529 new.bits.u256[1] = v.bits.u128[1];
530 new.bits.u256[2] = 0;
531 new.bits.u256[3] = 0;
533 new.bits.u256[0] = 0;
534 new.bits.u256[1] = 0;
535 new.bits.u256[2] = v.bits.u128[1];
536 new.bits.u256[3] = v.bits.u128[0];
538 return new;
574 vbits_t new = { .num_bits = num_bits };
577 case 1: new.bits.u32 = 1 << bitno; break;
578 case 8: new.bits.u8 = 1 << bitno; break;
579 case 16: new.bits.u16 = 1 << bitno; break;
580 case 32: new.bits.u32 = 1u << bitno; break;
581 case 64: new.bits.u64 = 1ull << bitno; break;
585 new.bits.u128[0] = 1ull << bitno;
586 new.bits.u128[1] = 0;
588 new.bits.u128[0] = 0;
589 new.bits.u128[1] = 1ull << (bitno - 64);
593 new.bits.u128[0] = 0;
594 new.bits.u128[1] = 1ull << bitno;
596 new.bits.u128[0] = 1ull << (bitno - 64);
597 new.bits.u128[1] = 0;
604 new.bits.u256[0] = 1ull << bitno;
605 new.bits.u256[1] = 0;
606 new.bits.u256[2] = 0;
607 new.bits.u256[3] = 0;
609 new.bits.u256[0] = 0;
610 new.bits.u256[1] = 1ull << (bitno - 64);
611 new.bits.u256[2] = 0;
612 new.bits.u256[3] = 0;
614 new.bits.u256[0] = 0;
615 new.bits.u256[1] = 0;
616 new.bits.u256[2] = 1ull << (bitno - 128);
617 new.bits.u256[3] = 0;
619 new.bits.u256[0] = 0;
620 new.bits.u256[1] = 0;
621 new.bits.u256[2] = 0;
622 new.bits.u256[3] = 1ull << (bitno - 192);
626 new.bits.u256[0] = 0;
627 new.bits.u256[1] = 0;
628 new.bits.u256[2] = 0;
629 new.bits.u256[3] = 1ull << bitno;
631 new.bits.u256[0] = 0;
632 new.bits.u256[1] = 0;
633 new.bits.u256[2] = 1ull << (bitno - 64);
634 new.bits.u256[3] = 0;
636 new.bits.u256[0] = 0;
637 new.bits.u256[1] = 1ull << (bitno - 128);
638 new.bits.u256[2] = 0;
639 new.bits.u256[3] = 0;
641 new.bits.u256[0] = 1ull << (bitno - 192);
642 new.bits.u256[1] = 0;
643 new.bits.u256[2] = 0;
644 new.bits.u256[3] = 0;
651 return new;
667 vbits_t new = v;
670 case 8: new.bits.u8 <<= shift_amount; break;
671 case 16: new.bits.u16 <<= shift_amount; break;
672 case 32: new.bits.u32 <<= shift_amount; break;
673 case 64: new.bits.u64 <<= shift_amount; break;
680 return new;
689 vbits_t new = v;
692 case 8: new.bits.u8 >>= shift_amount; break;
693 case 16: new.bits.u16 >>= shift_amount; break;
694 case 32: new.bits.u32 >>= shift_amount; break;
695 case 64: new.bits.u64 >>= shift_amount; break;
702 return new;
711 vbits_t new = v;
716 new.bits.u8 >>= shift_amount;
720 new.bits.u16 >>= shift_amount;
724 new.bits.u32 >>= shift_amount;
728 new.bits.u64 >>= shift_amount;
738 new = left_vbits(new, new.num_bits);
739 return new;
746 vbits_t new = { .num_bits = v1_num_bits };
756 new.bits.u32 = 0xE;
760 new.bits.u64 = 0xE;
767 return new;