Lines Matching refs:dst
415 ebitset_equal_p (bitset dst, bitset src)
421 if (src == dst)
424 ebitset_weed (dst);
427 if (EBITSET_SIZE (src) != EBITSET_SIZE (dst))
431 delts = EBITSET_ELTS (dst);
452 /* Copy bits from bitset SRC to bitset DST. */
454 ebitset_copy_ (bitset dst, bitset src)
460 if (src == dst)
463 ebitset_zero (dst);
465 if (BITSET_NBITS_ (dst) != BITSET_NBITS_ (src))
466 ebitset_resize (dst, BITSET_NBITS_ (src));
469 delts = EBITSET_ELTS (dst);
484 EBITSET_NONZERO_SET (dst);
488 /* Copy bits from bitset SRC to bitset DST. Return true if
491 ebitset_copy_cmp (bitset dst, bitset src)
493 if (src == dst)
496 if (EBITSET_ZERO_P (dst))
498 ebitset_copy_ (dst, src);
502 if (ebitset_equal_p (dst, src))
505 ebitset_copy_ (dst, src);
510 /* Set bit BITNO in bitset DST. */
512 ebitset_set (bitset dst, bitset_bindex bitno)
516 ebitset_elt_find (dst, bitno, EBITSET_CREATE);
518 dst->b.cdata[windex - dst->b.cindex] |=
523 /* Reset bit BITNO in bitset DST. */
525 ebitset_reset (bitset dst, bitset_bindex bitno)
529 if (!ebitset_elt_find (dst, bitno, EBITSET_FIND))
532 dst->b.cdata[windex - dst->b.cindex] &=
836 ebitset_unused_clear (bitset dst)
841 n_bits = BITSET_NBITS_ (dst);
850 elts = EBITSET_ELTS (dst);
874 ebitset_ones (bitset dst)
879 for (j = 0; j < EBITSET_SIZE (dst); j++)
884 ebitset_elt_find (dst, j * EBITSET_ELT_BITS, EBITSET_CREATE);
887 EBITSET_NONZERO_SET (dst);
888 ebitset_unused_clear (dst);
893 ebitset_empty_p (bitset dst)
898 if (EBITSET_ZERO_P (dst))
901 elts = EBITSET_ELTS (dst);
902 for (j = 0; j < EBITSET_SIZE (dst); j++)
911 ebitset_elt_remove (dst, j);
916 For now just mark DST as known to be zero. */
917 EBITSET_ZERO_SET (dst);
923 ebitset_not (bitset dst, bitset src)
930 ebitset_resize (dst, BITSET_NBITS_ (src));
934 /* Create new elements for dst if they cannot be found
937 ebitset_elt_find (dst, j * EBITSET_ELT_BITS, EBITSET_SUBST);
939 ebitset_elt_find (dst, j * EBITSET_ELT_BITS, EBITSET_CREATE);
944 EBITSET_NONZERO_SET (dst);
945 ebitset_unused_clear (dst);
949 /* Is DST == DST | SRC? */
951 ebitset_subset_p (bitset dst, bitset src)
960 delts = EBITSET_ELTS (dst);
963 dsize = EBITSET_SIZE (dst);
991 /* Is DST & SRC == 0? */
993 ebitset_disjoint_p (bitset dst, bitset src)
1002 delts = EBITSET_ELTS (dst);
1005 dsize = EBITSET_SIZE (dst);
1029 ebitset_op3_cmp (bitset dst, bitset src1, bitset src2, enum bitset_ops op)
1045 ebitset_resize (dst, max (BITSET_NBITS_ (src1), BITSET_NBITS_ (src2)));
1049 dsize = EBITSET_SIZE (dst);
1056 delts = EBITSET_ELTS (dst);
1073 ebitset_elt_remove (dst, j);
1150 ebitset_elt_add (dst, delt, j);
1158 /* If we have elements of DST left over, free them all. */
1168 ebitset_elt_remove (dst, j);
1171 EBITSET_NONZERO_SET (dst);
1177 ebitset_and_cmp (bitset dst, bitset src1, bitset src2)
1183 ebitset_weed (dst);
1184 changed = EBITSET_ZERO_P (dst);
1185 ebitset_zero (dst);
1190 ebitset_weed (dst);
1191 changed = EBITSET_ZERO_P (dst);
1192 ebitset_zero (dst);
1195 return ebitset_op3_cmp (dst, src1, src2, BITSET_OP_AND);
1200 ebitset_and (bitset dst, bitset src1, bitset src2)
1202 ebitset_and_cmp (dst, src1, src2);
1207 ebitset_andn_cmp (bitset dst, bitset src1, bitset src2)
1213 return ebitset_copy_cmp (dst, src1);
1217 ebitset_weed (dst);
1218 changed = EBITSET_ZERO_P (dst);
1219 ebitset_zero (dst);
1222 return ebitset_op3_cmp (dst, src1, src2, BITSET_OP_ANDN);
1227 ebitset_andn (bitset dst, bitset src1, bitset src2)
1229 ebitset_andn_cmp (dst, src1, src2);
1234 ebitset_or_cmp (bitset dst, bitset src1, bitset src2)
1238 return ebitset_copy_cmp (dst, src1);
1242 return ebitset_copy_cmp (dst, src2);
1244 return ebitset_op3_cmp (dst, src1, src2, BITSET_OP_OR);
1249 ebitset_or (bitset dst, bitset src1, bitset src2)
1251 ebitset_or_cmp (dst, src1, src2);
1256 ebitset_xor_cmp (bitset dst, bitset src1, bitset src2)
1260 return ebitset_copy_cmp (dst, src1);
1264 return ebitset_copy_cmp (dst, src2);
1266 return ebitset_op3_cmp (dst, src1, src2, BITSET_OP_XOR);
1271 ebitset_xor (bitset dst, bitset src1, bitset src2)
1273 ebitset_xor_cmp (dst, src1, src2);
1278 ebitset_copy (bitset dst, bitset src)
1280 if (BITSET_COMPATIBLE_ (dst, src))
1281 ebitset_copy_ (dst, src);
1283 bitset_copy_ (dst, src);