Lines Matching +refs:ll +refs:elts

157 #define SIZE_VEC8BIT(len, elts)                                              \  argument
158 (3 * sizeof(UInt) + ((len) + (elts)-1) / (elts))
668 UInt elts; // elements per byte in ConvVec8Bit() local
710 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ConvVec8Bit()
714 nsize = SIZE_VEC8BIT(len, elts); in ConvVec8Bit()
741 byte = settab[(e + elts * convtab[val]) * 256 + byte]; in ConvVec8Bit()
742 if (++e == elts || i == len) { in ConvVec8Bit()
819 UInt elts; // elements per byte in NewVec8Bit() local
875 elts = ELS_BYTE_FIELDINFO_8BIT(info); in NewVec8Bit()
876 nsize = SIZE_VEC8BIT(len, elts); in NewVec8Bit()
895 byte = settab[(e + elts * convtab[val]) * 256 + byte]; in NewVec8Bit()
896 if (++e == elts || i == len) { in NewVec8Bit()
938 UInt elts; in PlainVec8Bit() local
955 elts = ELS_BYTE_FIELDINFO_8BIT(info); in PlainVec8Bit()
971 info, gettab[256 * (1 % elts) + in PlainVec8Bit()
972 CONST_BYTES_VEC8BIT(list)[1 / elts]]); in PlainVec8Bit()
978 info, gettab[256 * ((i - 1) % elts) + in PlainVec8Bit()
979 CONST_BYTES_VEC8BIT(list)[(i - 1) / elts]]); in PlainVec8Bit()
1073 UInt elts; in AddVec8BitVec8BitInner() local
1085 elts = ELS_BYTE_FIELDINFO_8BIT(info); in AddVec8BitVec8BitInner()
1095 ptrL2 = CONST_BLOCKS_VEC8BIT(vl) + start / (sizeof(UInt) * elts); in AddVec8BitVec8BitInner()
1096 ptrR2 = CONST_BLOCKS_VEC8BIT(vr) + start / (sizeof(UInt) * elts); in AddVec8BitVec8BitInner()
1097 ptrS2 = BLOCKS_VEC8BIT(sum) + start / (sizeof(UInt) * elts); in AddVec8BitVec8BitInner()
1098 endS2 = BLOCKS_VEC8BIT(sum) + stop / (sizeof(UInt) * elts) + 1; in AddVec8BitVec8BitInner()
1125 ptrL = CONST_BYTES_VEC8BIT(vl) + start / elts; in AddVec8BitVec8BitInner()
1126 ptrR = CONST_BYTES_VEC8BIT(vr) + start / elts; in AddVec8BitVec8BitInner()
1127 ptrS = BYTES_VEC8BIT(sum) + start / elts; in AddVec8BitVec8BitInner()
1128 endS = BYTES_VEC8BIT(sum) + stop / elts + 1; in AddVec8BitVec8BitInner()
1167 UInt elts; in SumVec8BitVec8Bit() local
1175 elts = ELS_BYTE_FIELDINFO_8BIT(info); in SumVec8BitVec8Bit()
1176 sum = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(len, elts)); in SumVec8BitVec8Bit()
1268 UInt elts; in MultVec8BitFFEInner() local
1277 elts = ELS_BYTE_FIELDINFO_8BIT(info); in MultVec8BitFFEInner()
1290 ptrV = CONST_BYTES_VEC8BIT(vec) + start / elts; in MultVec8BitFFEInner()
1291 ptrS = BYTES_VEC8BIT(prod) + start / elts; in MultVec8BitFFEInner()
1292 endS = BYTES_VEC8BIT(prod) + stop / elts + 1; in MultVec8BitFFEInner()
1311 UInt elts; in MultVec8BitFFE() local
1320 elts = ELS_BYTE_FIELDINFO_8BIT(info); in MultVec8BitFFE()
1321 prod = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(len, elts)); in MultVec8BitFFE()
1512 UInt elts; in AddVec8BitVec8BitMultInner() local
1537 elts = ELS_BYTE_FIELDINFO_8BIT(info); in AddVec8BitVec8BitMultInner()
1550 ptrL = (UInt1 *)(CONST_BYTES_VEC8BIT(vl) + start / elts); in AddVec8BitVec8BitMultInner()
1551 ptrR = (UInt1 *)(CONST_BYTES_VEC8BIT(vr) + start / elts); in AddVec8BitVec8BitMultInner()
1552 ptrS = BYTES_VEC8BIT(sum) + start / elts; in AddVec8BitVec8BitMultInner()
1553 endS = BYTES_VEC8BIT(sum) + stop / elts + 1; in AddVec8BitVec8BitMultInner()
1821 UInt elts; in SumVec8BitVec8BitMult() local
1830 elts = ELS_BYTE_FIELDINFO_8BIT(info); in SumVec8BitVec8BitMult()
1831 sum = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(len, elts)); in SumVec8BitVec8BitMult()
1950 UInt elts; in CmpVec8BitVec8Bit() local
1961 elts = ELS_BYTE_FIELDINFO_8BIT(info); in CmpVec8BitVec8Bit()
1966 endL = ptrL + lenl / elts; in CmpVec8BitVec8Bit()
1967 endR = ptrR + lenr / elts; in CmpVec8BitVec8Bit()
1976 for (e = 0; e < elts; e++) { in CmpVec8BitVec8Bit()
1997 for (e = 0; e < (len % elts); e++) { in CmpVec8BitVec8Bit()
2033 UInt elts; in ScalarProductVec8Bits() local
2043 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ScalarProductVec8Bits()
2047 endL = ptrL + (len + elts - 1) / elts; in ScalarProductVec8Bits()
2095 UInt elts; in DistanceVec8Bits() local
2105 elts = ELS_BYTE_FIELDINFO_8BIT(info); in DistanceVec8Bits()
2109 endL = ptrL + (len + elts - 1) / elts; in DistanceVec8Bits()
2116 for (i = 0; i < elts; i++) in DistanceVec8Bits()
2406 UInt elts; in FuncNUMBER_VEC8BIT() local
2418 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncNUMBER_VEC8BIT()
2430 elt = convtab[gettab[ptrS[i / elts] + 256 * (i % elts)]]; in FuncNUMBER_VEC8BIT()
2471 UInt elts; in CosetLeadersInner8Bits() local
2480 elts = ELS_BYTE_FIELDINFO_8BIT(info); in CosetLeadersInner8Bits()
2489 ptr = BYTES_VEC8BIT(v) + (i - 1) / elts; in CosetLeadersInner8Bits()
2490 *ptr = settab[*ptr + 256 * (elts + ((i - 1) % elts))]; in CosetLeadersInner8Bits()
2495 xxxx = gettab[ptrw[j / elts] + 256 * (j % elts)]; in CosetLeadersInner8Bits()
2509 ptr = BYTES_VEC8BIT(v) + (i - 1) / elts; in CosetLeadersInner8Bits()
2519 xxxx = gettab[ptrw[j / elts] + 256 * (j % elts)]; in CosetLeadersInner8Bits()
2525 ptr = BYTES_VEC8BIT(v) + (i - 1) / elts; in CosetLeadersInner8Bits()
2537 *ptr = settab[*ptr + 256 * ((i - 1) % elts)]; in CosetLeadersInner8Bits()
2552 ptr = BYTES_VEC8BIT(v) + (pos - 1) / elts; in CosetLeadersInner8Bits()
2556 *ptr = settab[*ptr + 256 * (elts * feltffe[VAL_FFE(x)] + in CosetLeadersInner8Bits()
2557 ((pos - 1) % elts))]; in CosetLeadersInner8Bits()
2568 ptr = BYTES_VEC8BIT(v) + (pos - 1) / elts; in CosetLeadersInner8Bits()
2569 *ptr = settab[*ptr + 256 * ((pos - 1) % elts)]; in CosetLeadersInner8Bits()
2678 UInt elts; in FuncELM0_VEC8BIT() local
2686 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncELM0_VEC8BIT()
2688 info)[CONST_BYTES_VEC8BIT(list)[(p - 1) / elts] + in FuncELM0_VEC8BIT()
2689 256 * ((p - 1) % elts)]); in FuncELM0_VEC8BIT()
2706 UInt elts; in FuncELM_VEC8BIT() local
2715 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncELM_VEC8BIT()
2717 info)[CONST_BYTES_VEC8BIT(list)[(p - 1) / elts] + in FuncELM_VEC8BIT()
2718 256 * ((p - 1) % elts)]); in FuncELM_VEC8BIT()
2734 UInt elts; in FuncELMS_VEC8BIT() local
2750 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncELMS_VEC8BIT()
2751 res = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(len, elts)); in FuncELMS_VEC8BIT()
2776 elt = gettab[ptrS[(p - 1) / elts] + 256 * ((p - 1) % elts)]; in FuncELMS_VEC8BIT()
2777 byte = settab[byte + 256 * (e + elts * elt)]; in FuncELMS_VEC8BIT()
2779 if (e == elts) { in FuncELMS_VEC8BIT()
2803 UInt elts; in FuncELMS_VEC8BIT_RANGE() local
2819 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncELMS_VEC8BIT_RANGE()
2834 res = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(len, elts)); in FuncELMS_VEC8BIT_RANGE()
2845 if (p % elts == 0 && inc == 1 && len >= elts) { in FuncELMS_VEC8BIT_RANGE()
2846 while (p < low + len - elts) { in FuncELMS_VEC8BIT_RANGE()
2847 *ptrD++ = ptrS[p / elts]; in FuncELMS_VEC8BIT_RANGE()
2848 p += elts; in FuncELMS_VEC8BIT_RANGE()
2854 elt = gettab[ptrS[p / elts] + 256 * (p % elts)]; in FuncELMS_VEC8BIT_RANGE()
2855 byte = settab[byte + 256 * (e + elts * elt)]; in FuncELMS_VEC8BIT_RANGE()
2864 elt = gettab[ptrS[p / elts] + 256 * (p % elts)]; in FuncELMS_VEC8BIT_RANGE()
2865 byte = settab[byte + 256 * (e + elts * elt)]; in FuncELMS_VEC8BIT_RANGE()
2867 if (e == elts) { in FuncELMS_VEC8BIT_RANGE()
2899 UInt elts; in ASS_VEC8BIT() local
2913 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ASS_VEC8BIT()
2928 ResizeWordSizedBag(list, SIZE_VEC8BIT(p, elts)); in ASS_VEC8BIT()
2947 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ASS_VEC8BIT()
2972 [(p - 1) / elts] = SETELT_FIELDINFO_8BIT( in ASS_VEC8BIT()
2973 info)[256 * (elts * FELT_FFE_FIELDINFO_8BIT(info)[v] + in ASS_VEC8BIT()
2974 (p - 1) % elts) + in ASS_VEC8BIT()
2975 BYTES_VEC8BIT(list)[(p - 1) / elts]]; in ASS_VEC8BIT()
3008 UInt elts; in FuncUNB_VEC8BIT() local
3029 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncUNB_VEC8BIT()
3031 [(p - 1) / elts] = in FuncUNB_VEC8BIT()
3032 SETELT_FIELDINFO_8BIT(info)[((p - 1) % elts) * 256 + in FuncUNB_VEC8BIT()
3033 BYTES_VEC8BIT(list)[(p - 1) / elts]]; in FuncUNB_VEC8BIT()
3034 ResizeWordSizedBag(list, 3 * sizeof(UInt) + (p + elts - 2) / elts); in FuncUNB_VEC8BIT()
3059 UInt elts; in PositionNonZeroVec8Bit() local
3066 elts = ELS_BYTE_FIELDINFO_8BIT(info); in PositionNonZeroVec8Bit()
3068 nb = (len + elts - 1) / elts; in PositionNonZeroVec8Bit()
3070 i = from / elts; in PositionNonZeroVec8Bit()
3071 j = from % elts; in PositionNonZeroVec8Bit()
3075 for (j = from % elts; j < elts && (i * elts + j < len); j++) in PositionNonZeroVec8Bit()
3077 return elts * i + j + 1; in PositionNonZeroVec8Bit()
3093 return elts * i + j + 1; in PositionNonZeroVec8Bit()
3120 UInt elts; in FuncAPPEND_VEC8BIT() local
3139 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncAPPEND_VEC8BIT()
3140 ResizeWordSizedBag(vecl, SIZE_VEC8BIT(lenl + lenr, elts)); in FuncAPPEND_VEC8BIT()
3142 if (lenl % elts == 0) { in FuncAPPEND_VEC8BIT()
3143 ptrl = BYTES_VEC8BIT(vecl) + lenl / elts; in FuncAPPEND_VEC8BIT()
3145 nb = (lenr + elts - 1) / elts; in FuncAPPEND_VEC8BIT()
3150 ptrl = BYTES_VEC8BIT(vecl) + (lenl - 1) / elts; in FuncAPPEND_VEC8BIT()
3159 elt = gettab[byter + 256 * (posr % elts)]; in FuncAPPEND_VEC8BIT()
3160 bytel = settab[bytel + 256 * (posl % elts + elts * elt)]; in FuncAPPEND_VEC8BIT()
3161 if (++posl % elts == 0) { in FuncAPPEND_VEC8BIT()
3165 if (++posr % elts == 0) { in FuncAPPEND_VEC8BIT()
3170 if (posl % elts != 0) in FuncAPPEND_VEC8BIT()
3197 UInt elts; in FuncPROD_VEC8BIT_MATRIX() local
3217 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncPROD_VEC8BIT_MATRIX()
3223 x = ffefelt[gettab[CONST_BYTES_VEC8BIT(vec)[i / elts] + in FuncPROD_VEC8BIT_MATRIX()
3224 256 * (i % elts)]]; in FuncPROD_VEC8BIT_MATRIX()
3343 UInt q, len, len1, lenm, elts; in ProdVec8BitMat8Bit() local
3365 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ProdVec8BitMat8Bit()
3370 for (i = 0; i + elts < len; i += elts, bptr++) { in ProdVec8BitMat8Bit()
3372 for (j = 0; j < elts; j++) { in ProdVec8BitMat8Bit()
3450 UInt elts; in ProdMat8BitVec8Bit() local
3461 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ProdMat8BitVec8Bit()
3468 settab[byte + 256 * (elts * feltffe[VAL_FFE(entry)] + i % elts)]; in ProdMat8BitVec8Bit()
3469 if (i % elts == elts - 1) { in ProdMat8BitVec8Bit()
3474 if (len % elts != 0) in ProdMat8BitVec8Bit()
3600 UInt elts; in InverseMat8Bit() local
3620 elts = ELS_BYTE_FIELDINFO_8BIT(info); in InverseMat8Bit()
3629 row1 = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(1, elts)); in InverseMat8Bit()
3635 BYTES_VEC8BIT(row1)[0] = settab[256 * elts * feltffe[VAL_FFE(xi)]]; in InverseMat8Bit()
3658 ptr = BYTES_VEC8BIT(row) + (i - 1) / elts; in InverseMat8Bit()
3663 *ptr = settab[256 * ((i - 1) % elts + o * elts)]; in InverseMat8Bit()
3674 off = (i - 1) / elts; in InverseMat8Bit()
3675 pos = (i - 1) % elts; in InverseMat8Bit()
3912 UInt ll, lr, wl, wr, ls; in SumMat8BitMat8Bit() local
3917 ll = LEN_MAT8BIT(ml); in SumMat8BitMat8Bit()
3923 if (((ll > lr) && (wr > wl)) || ((lr > ll) && (wl > wr))) in SumMat8BitMat8Bit()
3927 if (ll > lr) { in SumMat8BitMat8Bit()
3928 ls = ll; in SumMat8BitMat8Bit()
3946 if (i > ll) in SumMat8BitMat8Bit()
3995 UInt ll, lr, wl, wr, ld; in DiffMat8BitMat8Bit() local
3997 ll = LEN_MAT8BIT(ml); in DiffMat8BitMat8Bit()
4003 if (((ll > lr) && (wr > wl)) || ((lr > ll) && (wl > wr))) in DiffMat8BitMat8Bit()
4007 if (ll > lr) { in DiffMat8BitMat8Bit()
4008 ld = ll; in DiffMat8BitMat8Bit()
4032 if (i > ll) in DiffMat8BitMat8Bit()
4078 UInt elts; in RightMostNonZeroVec8Bit() local
4088 elts = ELS_BYTE_FIELDINFO_8BIT(info); in RightMostNonZeroVec8Bit()
4090 ptr = ptrS + (len - 1) / elts; in RightMostNonZeroVec8Bit()
4093 if (len % elts != 0) { in RightMostNonZeroVec8Bit()
4095 for (i = len % elts - 1; i >= 0; i--) { in RightMostNonZeroVec8Bit()
4097 return (elts * (len / elts) + i + 1); in RightMostNonZeroVec8Bit()
4111 for (i = elts - 1; i >= 0; i--) { in RightMostNonZeroVec8Bit()
4113 return (elts * (ptr - ptrS) + i + 1); in RightMostNonZeroVec8Bit()
4122 UInt elts; in ResizeVec8Bit() local
4139 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ResizeVec8Bit()
4141 ResizeWordSizedBag(vec, SIZE_VEC8BIT(newlen, elts)); in ResizeVec8Bit()
4144 if (newlen % elts) { in ResizeVec8Bit()
4147 byte = CONST_BYTES_VEC8BIT(vec)[(newlen - 1) / elts]; in ResizeVec8Bit()
4148 for (i = newlen % elts; i < elts; i++) in ResizeVec8Bit()
4150 BYTES_VEC8BIT(vec)[(newlen - 1) / elts] = byte; in ResizeVec8Bit()
4154 for (i = (newlen + elts - 1) / elts; i % sizeof(UInt); i++) in ResizeVec8Bit()
4163 ptr += (len - 1) / elts; in ResizeVec8Bit()
4165 for (i = (len - 1) % elts + 1; i < elts; i++) in ResizeVec8Bit()
4169 ptr2 = BYTES_VEC8BIT(vec) + (newlen + elts - 1) / elts; in ResizeVec8Bit()
4180 UInt elts; in ShiftLeftVec8Bit() local
4200 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ShiftLeftVec8Bit()
4202 ptr2 = BYTES_VEC8BIT(vec) + amount / elts; in ShiftLeftVec8Bit()
4203 end = BYTES_VEC8BIT(vec) + (len + elts - 1) / elts; in ShiftLeftVec8Bit()
4206 if (amount % elts == 0) { in ShiftLeftVec8Bit()
4220 x = gettab[fbyte + 256 * (from % elts)]; in ShiftLeftVec8Bit()
4221 tbyte = settab[tbyte + 256 * (to % elts + elts * x)]; in ShiftLeftVec8Bit()
4222 if (++from % elts == 0) { in ShiftLeftVec8Bit()
4228 if (++to % elts == 0) { in ShiftLeftVec8Bit()
4233 if (to % elts != 0) in ShiftLeftVec8Bit()
4243 UInt elts; in ShiftRightVec8Bit() local
4262 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ShiftRightVec8Bit()
4263 ptr1 = BYTES_VEC8BIT(vec) + (len - 1 + amount) / elts; in ShiftRightVec8Bit()
4264 ptr2 = BYTES_VEC8BIT(vec) + (len - 1) / elts; in ShiftRightVec8Bit()
4267 if (amount % elts == 0) { in ShiftRightVec8Bit()
4284 x = gettab[fbyte + 256 * (from % elts)]; in ShiftRightVec8Bit()
4285 tbyte = settab[tbyte + 256 * (to % elts + elts * x)]; in ShiftRightVec8Bit()
4286 if (from-- % elts == 0) in ShiftRightVec8Bit()
4288 if (to-- % elts == 0) { in ShiftRightVec8Bit()
4293 if (to % elts != elts - 1) in ShiftRightVec8Bit()
4484 static void ProdCoeffsVec8Bit(Obj res, Obj vl, UInt ll, Obj vr, UInt lr) in ProdCoeffsVec8Bit() argument
4488 UInt elts; in ProdCoeffsVec8Bit() local
4503 assert(ll <= LEN_VEC8BIT(vl)); in ProdCoeffsVec8Bit()
4505 assert(ll + lr - 1 <= LEN_VEC8BIT(res)); in ProdCoeffsVec8Bit()
4507 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ProdCoeffsVec8Bit()
4520 for (i = 0; i < ll / elts; i++) { in ProdCoeffsVec8Bit()
4523 for (j = 0; j < lr / elts; j++) { in ProdCoeffsVec8Bit()
4533 if (elts > 1) { in ProdCoeffsVec8Bit()
4551 if (ll % elts != 0) { in ProdCoeffsVec8Bit()
4552 bytel = ptrl[ll / elts]; in ProdCoeffsVec8Bit()
4555 for (i = (ll / elts) * elts; i < ll; i++) { in ProdCoeffsVec8Bit()
4556 byte1 = gettab[bytel + 256 * (i % elts)]; in ProdCoeffsVec8Bit()
4557 partl = settab[partl + 256 * (i % elts + elts * byte1)]; in ProdCoeffsVec8Bit()
4560 for (j = 0; j < lr / elts; j++) { in ProdCoeffsVec8Bit()
4566 ptrp[ll / elts + j] = in ProdCoeffsVec8Bit()
4567 addtab[ptrp[ll / elts + j] + 256 * byte2]; in ProdCoeffsVec8Bit()
4569 ptrp[ll / elts + j] ^= byte2; in ProdCoeffsVec8Bit()
4571 if (elts > 1) { in ProdCoeffsVec8Bit()
4575 ptrp[ll / elts + j + 1] = in ProdCoeffsVec8Bit()
4576 addtab[ptrp[ll / elts + j + 1] + in ProdCoeffsVec8Bit()
4579 ptrp[ll / elts + j + 1] ^= byte2; in ProdCoeffsVec8Bit()
4586 if (lr % elts != 0) { in ProdCoeffsVec8Bit()
4587 byter = ptrr[lr / elts]; in ProdCoeffsVec8Bit()
4590 for (i = (lr / elts) * elts; i < lr; i++) in ProdCoeffsVec8Bit()
4593 256 * (i % elts + in ProdCoeffsVec8Bit()
4594 elts * gettab[byter + 256 * (i % elts)])]; in ProdCoeffsVec8Bit()
4596 for (i = 0; i < ll / elts; i++) { in ProdCoeffsVec8Bit()
4602 ptrp[lr / elts + i] = in ProdCoeffsVec8Bit()
4603 addtab[ptrp[lr / elts + i] + 256 * byte1]; in ProdCoeffsVec8Bit()
4605 ptrp[lr / elts + i] ^= byte1; in ProdCoeffsVec8Bit()
4607 if (elts > 1) { in ProdCoeffsVec8Bit()
4611 ptrp[lr / elts + i + 1] = in ProdCoeffsVec8Bit()
4612 addtab[ptrp[lr / elts + i + 1] + in ProdCoeffsVec8Bit()
4615 ptrp[lr / elts + i + 1] ^= byte1; in ProdCoeffsVec8Bit()
4624 if (ll % elts != 0 && lr % elts != 0 && partl != 0 && partr != 0) { in ProdCoeffsVec8Bit()
4628 ptrp[ll / elts + lr / elts] = in ProdCoeffsVec8Bit()
4629 addtab[ptrp[ll / elts + lr / elts] + 256 * byte1]; in ProdCoeffsVec8Bit()
4631 ptrp[ll / elts + lr / elts] ^= byte1; in ProdCoeffsVec8Bit()
4633 if (elts > 1) { in ProdCoeffsVec8Bit()
4637 ptrp[ll / elts + lr / elts + 1] = in ProdCoeffsVec8Bit()
4638 addtab[ptrp[ll / elts + lr / elts + 1] + 256 * byte2]; in ProdCoeffsVec8Bit()
4640 ptrp[ll / elts + lr / elts + 1] ^= byte2; in ProdCoeffsVec8Bit()
4652 static Obj FuncPROD_COEFFS_VEC8BIT(Obj self, Obj vl, Obj ll, Obj vr, Obj lr) in FuncPROD_COEFFS_VEC8BIT() argument
4689 if (!ARE_INTOBJS(ll, lr)) in FuncPROD_COEFFS_VEC8BIT()
4692 (Int)TNAM_OBJ(ll), (Int)TNAM_OBJ(lr)); in FuncPROD_COEFFS_VEC8BIT()
4693 ll1 = INT_INTOBJ(ll); in FuncPROD_COEFFS_VEC8BIT()
4698 INT_INTOBJ(ll), LEN_VEC8BIT(vl)); in FuncPROD_COEFFS_VEC8BIT()
4726 UInt elts; in MakeShiftedVecs() local
4743 elts = ELS_BYTE_FIELDINFO_8BIT(info); in MakeShiftedVecs()
4761 x = gettab[BYTES_VEC8BIT(vn)[(len - 1) / elts] + in MakeShiftedVecs()
4762 256 * ((len - 1) % elts)]; in MakeShiftedVecs()
4770 shifts = NEW_PLIST_IMM(T_PLIST_TAB, elts + 2); in MakeShiftedVecs()
4771 SET_ELM_PLIST(shifts, elts + 1, INTOBJ_INT(len)); in MakeShiftedVecs()
4772 SET_ELM_PLIST(shifts, elts + 2, xi); in MakeShiftedVecs()
4773 SET_LEN_PLIST(shifts, elts + 2); in MakeShiftedVecs()
4776 SET_ELM_PLIST(shifts, (len - 1) % elts + 1, vn); in MakeShiftedVecs()
4779 if (elts > 1) { in MakeShiftedVecs()
4781 for (i = 1; i < elts; i++) { in MakeShiftedVecs()
4783 SET_ELM_PLIST(shifts, (len + i - 1) % elts + 1, ashift); in MakeShiftedVecs()
4793 for (j = 1; j < elts; j++) in MakeShiftedVecs()
4795 BYTES_VEC8BIT(ELM_PLIST(shifts, (len + j - 1) % elts + 1)); in MakeShiftedVecs()
4797 x = gettab[*ptr + 256 * (i % elts)]; in MakeShiftedVecs()
4799 for (j = 1; j < elts; j++) { in MakeShiftedVecs()
4801 256 * ((i + j) % elts + elts * x)]; in MakeShiftedVecs()
4804 if (i % elts == elts - 1) in MakeShiftedVecs()
4807 ptrs[elts - 1 - (i % elts)]++; in MakeShiftedVecs()
4811 for (i = 1; i <= elts; i++) in MakeShiftedVecs()
4822 UInt elts; in ReduceCoeffsVec8Bit() local
4836 UInt ll = LEN_VEC8BIT(vl); in ReduceCoeffsVec8Bit() local
4842 elts = ELS_BYTE_FIELDINFO_8BIT(info); in ReduceCoeffsVec8Bit()
4853 lr = INT_INTOBJ(ELM_PLIST(vrshifted, elts + 1)); in ReduceCoeffsVec8Bit()
4854 for (i = ll - 1, jj = ll - lr; i + 1 >= lr; i--, jj--) { in ReduceCoeffsVec8Bit()
4855 ptrl1 = ptrl + i / elts; in ReduceCoeffsVec8Bit()
4856 x = gettab[*ptrl1 + 256 * (i % elts)]; in ReduceCoeffsVec8Bit()
4858 qptr[jj / elts] = in ReduceCoeffsVec8Bit()
4859 settab[qptr[jj / elts] + 256 * (jj % elts + elts * x)]; in ReduceCoeffsVec8Bit()
4867 vrs = ELM_PLIST(vrshifted, 1 + i % elts); in ReduceCoeffsVec8Bit()
4869 ptrr = CONST_BYTES_VEC8BIT(vrs) + (lrs - 1) / elts; in ReduceCoeffsVec8Bit()
4870 for (j = (lrs - 1) / elts; j >= 0; j--) { in ReduceCoeffsVec8Bit()
4879 assert(!gettab[ptrl[i / elts] + 256 * (i % elts)]); in ReduceCoeffsVec8Bit()
4883 MultVec8BitFFEInner(quot, quot, ELM_PLIST(vrshifted, elts + 2), 1, in ReduceCoeffsVec8Bit()
4884 ll - lr + 1); in ReduceCoeffsVec8Bit()
4910 static Obj FuncREDUCE_COEFFS_VEC8BIT(Obj self, Obj vl, Obj ll, Obj vrshifted) in FuncREDUCE_COEFFS_VEC8BIT() argument
4917 if (!IS_INTOBJ(ll)) in FuncREDUCE_COEFFS_VEC8BIT()
4920 (Int)TNAM_OBJ(ll), 0L); in FuncREDUCE_COEFFS_VEC8BIT()
4921 if (0 > INT_INTOBJ(ll) || INT_INTOBJ(ll) > LEN_VEC8BIT(vl)) { in FuncREDUCE_COEFFS_VEC8BIT()
4924 INT_INTOBJ(ll), LEN_VEC8BIT(vl)); in FuncREDUCE_COEFFS_VEC8BIT()
4926 ResizeVec8Bit(vl, INT_INTOBJ(ll), 0); in FuncREDUCE_COEFFS_VEC8BIT()
4933 static Obj FuncQUOTREM_COEFFS_VEC8BIT(Obj self, Obj vl, Obj ll, Obj vrshifted) in FuncQUOTREM_COEFFS_VEC8BIT() argument
4937 UInt elts; in FuncQUOTREM_COEFFS_VEC8BIT() local
4944 if (!IS_INTOBJ(ll)) in FuncQUOTREM_COEFFS_VEC8BIT()
4947 (Int)TNAM_OBJ(ll), 0L); in FuncQUOTREM_COEFFS_VEC8BIT()
4948 if (0 > INT_INTOBJ(ll) || INT_INTOBJ(ll) > LEN_VEC8BIT(vl)) { in FuncQUOTREM_COEFFS_VEC8BIT()
4951 INT_INTOBJ(ll), LEN_VEC8BIT(vl)); in FuncQUOTREM_COEFFS_VEC8BIT()
4953 ill = INT_INTOBJ(ll); in FuncQUOTREM_COEFFS_VEC8BIT()
4957 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncQUOTREM_COEFFS_VEC8BIT()
4958 lr = INT_INTOBJ(ELM_PLIST(vrshifted, elts + 1)); in FuncQUOTREM_COEFFS_VEC8BIT()
4959 quot = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(ill - lr + 1, elts)); in FuncQUOTREM_COEFFS_VEC8BIT()
4999 UInt q, elts; in SemiEchelonListVec8Bits() local
5016 elts = ELS_BYTE_FIELDINFO_8BIT(info); in SemiEchelonListVec8Bits()
5040 coeffrow = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(nrows, elts)); in SemiEchelonListVec8Bits()
5050 [(i - 1) / elts] = settab[256 * ((i - 1) % elts + elts * one)]; in SemiEchelonListVec8Bits()
5060 byte = CONST_BYTES_VEC8BIT(row)[(j - 1) / elts]; in SemiEchelonListVec8Bits()
5062 zero != (x = gettab[byte + 256 * ((j - 1) % elts)])) { in SemiEchelonListVec8Bits()
5076 j += elts; in SemiEchelonListVec8Bits()
5080 (zero == (x = gettab[*rowp + 256 * ((j - 1) % elts)]))) in SemiEchelonListVec8Bits()
5149 UInt elts; in TriangulizeListVec8Bits() local
5164 elts = ELS_BYTE_FIELDINFO_8BIT(info); in TriangulizeListVec8Bits()
5176 byte = (workcol - 1) / elts; in TriangulizeListVec8Bits()
5177 getcol = gettab + 256 * ((workcol - 1) % elts); in TriangulizeListVec8Bits()
5488 UInt i, j, k, n, q, elts; in FuncTRANSPOSED_MAT8BIT() local
5516 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncTRANSPOSED_MAT8BIT()
5517 nrb = (w + elts - 1) / elts; in FuncTRANSPOSED_MAT8BIT()
5521 row = NewWordSizedBag(T_DATOBJ, SIZE_VEC8BIT(l, elts)); in FuncTRANSPOSED_MAT8BIT()
5530 if (elts > 1) { in FuncTRANSPOSED_MAT8BIT()
5537 for (i = 1; i <= l; i += elts) { in FuncTRANSPOSED_MAT8BIT()
5538 imod = (i - 1) / elts; in FuncTRANSPOSED_MAT8BIT()
5543 for (j = 0; j < elts; j++) { in FuncTRANSPOSED_MAT8BIT()
5554 nstart = n * elts + 1; in FuncTRANSPOSED_MAT8BIT()
5555 for (j = 0; j < elts; j++) { // bit number = Row in transpose in FuncTRANSPOSED_MAT8BIT()
5559 if (elts > 1) { in FuncTRANSPOSED_MAT8BIT()
5561 for (k = 0; k < elts; k++) { in FuncTRANSPOSED_MAT8BIT()
5563 256 * (k + elts * gettab[vals[k] + in FuncTRANSPOSED_MAT8BIT()
5589 elts; in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT() local
5607 elts = ELS_BYTE_FIELDINFO_8BIT(info); in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5625 for (i = 0; i < elts; i++) { in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5627 NewWordSizedBag(T_DATOBJ, ncolr / elts + 200 + sizeof(Obj)); in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5639 for (i = 0; i < elts; i++) { in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5643 data[(k + i) / elts] = in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5644 setelt[data[(k + i) / elts] + in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5645 256 * ((k + i) % elts + in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5646 getelt[datar[k / elts] + 256 * (k % elts)] * in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5647 elts)]; in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5654 ELM_MAT8BIT(matl, i))[k / elts] + in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5655 256 * (k % elts)]; in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5659 datar = (const UInt1 *)CONST_ADDR_OBJ(shift[ncol % elts]); in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5660 if (ncol % elts) { in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5666 l = elts - ncol % elts; in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5668 for (; l < ncolr; l += elts) in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5672 if (ncol % elts) in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5673 l = elts - ncol % elts; in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()
5674 data += (ncolr + elts - 1 - l) / elts; in FuncKRONECKERPRODUCT_MAT8BIT_MAT8BIT()