Lines Matching +full:0 +full:x3fffc000

28  * If BR_NO_ARITH_SHIFT is undefined, or defined to 0, then we _assume_
58 acc = 0; in be8_to_le30()
59 acc_len = 0; in be8_to_le30()
60 while (len -- > 0) { in be8_to_le30()
68 *dst ++ = (acc | (b << acc_len)) & 0x3FFFFFFF; in be8_to_le30()
87 acc = 0; in le30_to_be8()
88 acc_len = 0; in le30_to_be8()
89 while (len -- > 0) { in le30_to_be8()
128 t[ 0] = MUL31(a[0], b[0]); in mul9()
129 t[ 1] = MUL31(a[0], b[1]) in mul9()
130 + MUL31(a[1], b[0]); in mul9()
131 t[ 2] = MUL31(a[0], b[2]) in mul9()
133 + MUL31(a[2], b[0]); in mul9()
134 t[ 3] = MUL31(a[0], b[3]) in mul9()
137 + MUL31(a[3], b[0]); in mul9()
138 t[ 4] = MUL31(a[0], b[4]) in mul9()
142 + MUL31(a[4], b[0]); in mul9()
143 t[ 5] = MUL31(a[0], b[5]) in mul9()
148 + MUL31(a[5], b[0]); in mul9()
149 t[ 6] = MUL31(a[0], b[6]) in mul9()
155 + MUL31(a[6], b[0]); in mul9()
156 t[ 7] = MUL31(a[0], b[7]) in mul9()
163 + MUL31(a[7], b[0]); in mul9()
164 t[ 8] = MUL31(a[0], b[8]) in mul9()
172 + MUL31(a[8], b[0]); in mul9()
213 cc = 0; in mul9()
214 for (i = 0; i < 17; i ++) { in mul9()
218 d[i] = (uint32_t)w & 0x3FFFFFFF; in mul9()
235 t[ 0] = MUL31(a[0], a[0]); in square9()
236 t[ 1] = ((MUL31(a[0], a[1])) << 1); in square9()
238 + ((MUL31(a[0], a[2])) << 1); in square9()
239 t[ 3] = ((MUL31(a[0], a[3]) in square9()
242 + ((MUL31(a[0], a[4]) in square9()
244 t[ 5] = ((MUL31(a[0], a[5]) in square9()
248 + ((MUL31(a[0], a[6]) in square9()
251 t[ 7] = ((MUL31(a[0], a[7]) in square9()
256 + ((MUL31(a[0], a[8]) in square9()
284 cc = 0; in square9()
285 for (i = 0; i < 17; i ++) { in square9()
289 d[i] = (uint32_t)w & 0x3FFFFFFF; in square9()
300 0x3FFFFFFF, 0x3FFFFFFF, 0x3FFFFFFF, 0x0000003F, 0x00000000,
301 0x00000000, 0x00001000, 0x3FFFC000, 0x0000FFFF
309 0x27D2604B, 0x2F38F0F8, 0x053B0F63, 0x0741AC33, 0x1886BC65,
310 0x2EF555DA, 0x293E7B3E, 0x0D762A8E, 0x00005AC6
323 cc = 0; in add_f256()
324 for (i = 0; i < 9; i ++) { in add_f256()
326 d[i] = w & 0x3FFFFFFF; in add_f256()
330 d[8] &= 0xFFFF; in add_f256()
335 for (i = 0; i < 9; i ++) { in add_f256()
337 d[i] = w & 0x3FFFFFFF; in add_f256()
356 w = a[0] - b[0] - 0x00002; in sub_f256()
357 d[0] = w & 0x3FFFFFFF; in sub_f256()
359 d[1] = w & 0x3FFFFFFF; in sub_f256()
361 d[2] = w & 0x3FFFFFFF; in sub_f256()
362 w = a[3] - b[3] + ARSH(w, 30) + 0x00080; in sub_f256()
363 d[3] = w & 0x3FFFFFFF; in sub_f256()
365 d[4] = w & 0x3FFFFFFF; in sub_f256()
367 d[5] = w & 0x3FFFFFFF; in sub_f256()
368 w = a[6] - b[6] + ARSH(w, 30) + 0x02000; in sub_f256()
369 d[6] = w & 0x3FFFFFFF; in sub_f256()
370 w = a[7] - b[7] + ARSH(w, 30) - 0x08000; in sub_f256()
371 d[7] = w & 0x3FFFFFFF; in sub_f256()
372 w = a[8] - b[8] + ARSH(w, 30) + 0x20000; in sub_f256()
373 d[8] = w & 0xFFFF; in sub_f256()
375 d[8] &= 0xFFFF; in sub_f256()
380 for (i = 0; i < 9; i ++) { in sub_f256()
382 d[i] = w & 0x3FFFFFFF; in sub_f256()
421 for (i = 0; i < 18; i ++) { in mul_f256()
430 s[i - 2] += (y << 28) & 0x3FFFFFFF; in mul_f256()
432 s[i - 3] -= (y << 26) & 0x3FFFFFFF; in mul_f256()
434 s[i - 6] -= (y << 20) & 0x3FFFFFFF; in mul_f256()
436 s[i - 9] += (y << 14) & 0x3FFFFFFF; in mul_f256()
448 cc = 0; in mul_f256()
449 for (i = 0; i < 9; i ++) { in mul_f256()
451 d[i] = (uint32_t)x & 0x3FFFFFFF; in mul_f256()
465 d[8] &= 0xFFFF; in mul_f256()
480 d[6] -= (z << 12) & 0x3FFFFFFF; in mul_f256()
482 d[7] += (z << 14) & 0x3FFFFFFF; in mul_f256()
485 d[0] -= c; in mul_f256()
490 for (i = 0; i < 9; i ++) { in mul_f256()
494 d[i] = w & 0x3FFFFFFF; in mul_f256()
533 for (i = 0; i < 18; i ++) { in square_f256()
542 s[i - 2] += (y << 28) & 0x3FFFFFFF; in square_f256()
544 s[i - 3] -= (y << 26) & 0x3FFFFFFF; in square_f256()
546 s[i - 6] -= (y << 20) & 0x3FFFFFFF; in square_f256()
548 s[i - 9] += (y << 14) & 0x3FFFFFFF; in square_f256()
560 cc = 0; in square_f256()
561 for (i = 0; i < 9; i ++) { in square_f256()
563 d[i] = (uint32_t)x & 0x3FFFFFFF; in square_f256()
577 d[8] &= 0xFFFF; in square_f256()
592 d[6] -= (z << 12) & 0x3FFFFFFF; in square_f256()
594 d[7] += (z << 14) & 0x3FFFFFFF; in square_f256()
597 d[0] -= c; in square_f256()
602 for (i = 0; i < 9; i ++) { in square_f256()
606 d[i] = w & 0x3FFFFFFF; in square_f256()
616 * returns 0.
625 cc = 0; in reduce_final_f256()
626 for (i = 0; i < 9; i ++) { in reduce_final_f256()
631 t[i] = w & 0x3FFFFFFF; in reduce_final_f256()
643 * For the point at infinity, z = 0.
659 * are set to 0.
675 * - 31 bits of value 0 in p256_to_affine()
677 * - 96 bits of value 0 in p256_to_affine()
679 * - 1 bit of value 0 in p256_to_affine()
683 * If z = 0 (point at infinity) then the modular exponentiation in p256_to_affine()
684 * will yield 0, which leads to the expected result (all three in p256_to_affine()
685 * coordinates set to 0). in p256_to_affine()
694 for (i = 0; i < 30; i ++) { in p256_to_affine()
733 * Multiply z by 1/z. If z = 0, then this will yield 0, otherwise in p256_to_affine()
758 * - If y = 0 then z' = 0. But there is no such point in P-256 in p256_double()
760 * - If z = 0 then z' = 0. in p256_double()
819 * - If P1 == 0 but P2 != 0
820 * - If P1 != 0 but P2 == 0
825 * Returned value is 0 if one of the following occurs:
828 * - P1 == 0 and P2 == 0
829 * - The Y coordinate of one of the points is 0 and the other point is
833 * with Y == 0 is a point of order 2, and there is no point of order 2 on
836 * Therefore, assuming that P1 != 0 and P2 != 0 on input, then the caller
841 * P1+P2 == 0, so the result is indeed the point at infinity.
889 ret = 0; in p256_add()
890 for (i = 0; i < 9; i ++) { in p256_add()
933 * - If P1 == 0
938 * Returned value is 0 if one of the following occurs:
941 * - The Y coordinate of P2 is 0 and P1 is the point at infinity.
944 * with Y == 0 is a point of order 2, and there is no point of order 2 on
947 * Therefore, assuming that P1 != 0 on input, then the caller
952 * P1+P2 == 0, so the result is indeed the point at infinity.
998 ret = 0; in p256_add_mixed()
999 for (i = 0; i < 9; i ++) { in p256_add_mixed()
1037 * infinity. Returned value is 0 if the point is invalid, 1 otherwise.
1048 return 0; in p256_decode()
1053 * First byte must be 0x04 (uncompressed format). We could support in p256_decode()
1054 * "hybrid format" (first byte is 0x06 or 0x07, and encodes the in p256_decode()
1058 bad = NEQ(buf[0], 0x04); in p256_decode()
1081 for (i = 0; i < 9; i ++) { in p256_decode()
1090 memset(P->z, 0, sizeof P->z); in p256_decode()
1091 P->z[0] = 1; in p256_decode()
1092 return EQ(bad, 0); in p256_decode()
1105 buf[0] = 0x04; in p256_encode()
1137 * We start with Q = 0. We process multiplier bits 2 by 2. in p256_mul()
1139 memset(&Q, 0, sizeof Q); in p256_mul()
1141 while (xlen -- > 0) { in p256_mul()
1144 for (k = 6; k >= 0; k -= 2) { in p256_mul()
1153 bnz = NEQ(bits, 0); in p256_mul()
1174 { 0x1898C296, 0x1284E517, 0x1EB33A0F, 0x00DF604B,
1175 0x2440F277, 0x339B958E, 0x04247F8B, 0x347CB84B,
1176 0x00006B17, 0x37BF51F5, 0x2ED901A0, 0x3315ECEC,
1177 0x338CD5DA, 0x0F9E162B, 0x1FAD29F0, 0x27F9B8EE,
1178 0x10B8BF86, 0x00004FE3 },
1180 { 0x07669978, 0x182D23F1, 0x3F21B35A, 0x225A789D,
1181 0x351AC3C0, 0x08E00C12, 0x34F7E8A5, 0x1EC62340,
1182 0x00007CF2, 0x227873D1, 0x3812DE74, 0x0E982299,
1183 0x1F6B798F, 0x3430DBBA, 0x366B1A7D, 0x2D040293,
1184 0x154436E3, 0x00000777 },
1186 { 0x06E7FD6C, 0x2D05986F, 0x3ADA985F, 0x31ADC87B,
1187 0x0BF165E6, 0x1FBE5475, 0x30A44C8F, 0x3934698C,
1188 0x00005ECB, 0x227D5032, 0x29E6C49E, 0x04FB83D9,
1189 0x0AAC0D8E, 0x24A2ECD8, 0x2C1B3869, 0x0FF7E374,
1190 0x19031266, 0x00008734 },
1192 { 0x2B030852, 0x024C0911, 0x05596EF5, 0x07F8B6DE,
1193 0x262BD003, 0x3779967B, 0x08FBBA02, 0x128D4CB4,
1194 0x0000E253, 0x184ED8C6, 0x310B08FC, 0x30EE0055,
1195 0x3F25B0FC, 0x062D764E, 0x3FB97F6A, 0x33CC719D,
1196 0x15D69318, 0x0000E0F1 },
1198 { 0x03D033ED, 0x05552837, 0x35BE5242, 0x2320BF47,
1199 0x268FDFEF, 0x13215821, 0x140D2D78, 0x02DE9454,
1200 0x00005159, 0x3DA16DA4, 0x0742ED13, 0x0D80888D,
1201 0x004BC035, 0x0A79260D, 0x06FCDAFE, 0x2727D8AE,
1202 0x1F6A2412, 0x0000E0C1 },
1204 { 0x3C2291A9, 0x1AC2ABA4, 0x3B215B4C, 0x131D037A,
1205 0x17DDE302, 0x0C90B2E2, 0x0602C92D, 0x05CA9DA9,
1206 0x0000B01A, 0x0FC77FE2, 0x35F1214E, 0x07E16BDF,
1207 0x003DDC07, 0x2703791C, 0x3038B7EE, 0x3DAD56FE,
1208 0x041D0C8D, 0x0000E85C },
1210 { 0x3187B2A3, 0x0018A1C0, 0x00FEF5B3, 0x3E7E2E2A,
1211 0x01FB607E, 0x2CC199F0, 0x37B4625B, 0x0EDBE82F,
1212 0x00008E53, 0x01F400B4, 0x15786A1B, 0x3041B21C,
1213 0x31CD8CF2, 0x35900053, 0x1A7E0E9B, 0x318366D0,
1214 0x076F780C, 0x000073EB },
1216 { 0x1B6FB393, 0x13767707, 0x3CE97DBB, 0x348E2603,
1217 0x354CADC1, 0x09D0B4EA, 0x1B053404, 0x1DE76FBA,
1218 0x000062D9, 0x0F09957E, 0x295029A8, 0x3E76A78D,
1219 0x3B547DAE, 0x27CEE0A2, 0x0575DC45, 0x1D8244FF,
1220 0x332F647A, 0x0000AD5A },
1222 { 0x10949EE0, 0x1E7A292E, 0x06DF8B3D, 0x02B2E30B,
1223 0x31F8729E, 0x24E35475, 0x30B71878, 0x35EDBFB7,
1224 0x0000EA68, 0x0DD048FA, 0x21688929, 0x0DE823FE,
1225 0x1C53FAA9, 0x0EA0C84D, 0x052A592A, 0x1FCE7870,
1226 0x11325CB2, 0x00002A27 },
1228 { 0x04C5723F, 0x30D81A50, 0x048306E4, 0x329B11C7,
1229 0x223FB545, 0x085347A8, 0x2993E591, 0x1B5ACA8E,
1230 0x0000CEF6, 0x04AF0773, 0x28D2EEA9, 0x2751EEEC,
1231 0x037B4A7F, 0x3B4C1059, 0x08F37674, 0x2AE906E1,
1232 0x18A88A6A, 0x00008786 },
1234 { 0x34BC21D1, 0x0CCE474D, 0x15048BF4, 0x1D0BB409,
1235 0x021CDA16, 0x20DE76C3, 0x34C59063, 0x04EDE20E,
1236 0x00003ED1, 0x282A3740, 0x0BE3BBF3, 0x29889DAE,
1237 0x03413697, 0x34C68A09, 0x210EBE93, 0x0C8A224C,
1238 0x0826B331, 0x00009099 },
1240 { 0x0624E3C4, 0x140317BA, 0x2F82C99D, 0x260C0A2C,
1241 0x25D55179, 0x194DCC83, 0x3D95E462, 0x356F6A05,
1242 0x0000741D, 0x0D4481D3, 0x2657FC8B, 0x1BA5CA71,
1243 0x3AE44B0D, 0x07B1548E, 0x0E0D5522, 0x05FDC567,
1244 0x2D1AA70E, 0x00000770 },
1246 { 0x06072C01, 0x23857675, 0x1EAD58A9, 0x0B8A12D9,
1247 0x1EE2FC79, 0x0177CB61, 0x0495A618, 0x20DEB82B,
1248 0x0000177C, 0x2FC7BFD8, 0x310EEF8B, 0x1FB4DF39,
1249 0x3B8530E8, 0x0F4E7226, 0x0246B6D0, 0x2A558A24,
1250 0x163353AF, 0x000063BB },
1252 { 0x24D2920B, 0x1C249DCC, 0x2069C5E5, 0x09AB2F9E,
1253 0x36DF3CF1, 0x1991FD0C, 0x062B97A7, 0x1E80070E,
1254 0x000054E7, 0x20D0B375, 0x2E9F20BD, 0x35090081,
1255 0x1C7A9DDC, 0x22E7C371, 0x087E3016, 0x03175421,
1256 0x3C6ECA7D, 0x0000F599 },
1258 { 0x259B9D5F, 0x0D9A318F, 0x23A0EF16, 0x00EBE4B7,
1259 0x088265AE, 0x2CDE2666, 0x2BAE7ADF, 0x1371A5C6,
1260 0x0000F045, 0x0D034F36, 0x1F967378, 0x1B5FA3F4,
1261 0x0EC8739D, 0x1643E62A, 0x1653947E, 0x22D1F4E6,
1262 0x0FB8D64B, 0x0000B5B9 }
1275 memset(xy, 0, sizeof xy); in lookup_Gwin()
1276 for (k = 0; k < 15; k ++) { in lookup_Gwin()
1280 for (u = 0; u < 18; u ++) { in lookup_Gwin()
1284 memcpy(T->x, &xy[0], sizeof T->x); in lookup_Gwin()
1286 memset(T->z, 0, sizeof T->z); in lookup_Gwin()
1287 T->z[0] = 1; in lookup_Gwin()
1308 memset(&Q, 0, sizeof Q); in p256_mulgen()
1310 while (xlen -- > 0) { in p256_mulgen()
1315 for (k = 0; k < 2; k ++) { in p256_mulgen()
1324 bits = (bx >> 4) & 0x0F; in p256_mulgen()
1325 bnz = NEQ(bits, 0); in p256_mulgen()
1339 0x04, 0x6B, 0x17, 0xD1, 0xF2, 0xE1, 0x2C, 0x42, 0x47, 0xF8,
1340 0xBC, 0xE6, 0xE5, 0x63, 0xA4, 0x40, 0xF2, 0x77, 0x03, 0x7D,
1341 0x81, 0x2D, 0xEB, 0x33, 0xA0, 0xF4, 0xA1, 0x39, 0x45, 0xD8,
1342 0x98, 0xC2, 0x96, 0x4F, 0xE3, 0x42, 0xE2, 0xFE, 0x1A, 0x7F,
1343 0x9B, 0x8E, 0xE7, 0xEB, 0x4A, 0x7C, 0x0F, 0x9E, 0x16, 0x2B,
1344 0xCE, 0x33, 0x57, 0x6B, 0x31, 0x5E, 0xCE, 0xCB, 0xB6, 0x40,
1345 0x68, 0x37, 0xBF, 0x51, 0xF5
1349 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,
1350 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBC, 0xE6, 0xFA, 0xAD,
1351 0xA7, 0x17, 0x9E, 0x84, 0xF3, 0xB9, 0xCA, 0xC2, 0xFC, 0x63,
1352 0x25, 0x51
1388 return 0; in api_mul()
1421 return 0; in api_muladd()
1437 z = 0; in api_muladd()
1438 for (i = 0; i < 9; i ++) { in api_muladd()
1441 z = EQ(z, 0); in api_muladd()
1445 * If z is 1 then either P+Q = 0 (t = 1) or P = Q (t = 0). So we in api_muladd()
1448 * z = 0, t = 0 return P (normal addition) in api_muladd()
1449 * z = 0, t = 1 return P (normal addition) in api_muladd()
1450 * z = 1, t = 0 return Q (a 'double' case) in api_muladd()
1451 * z = 1, t = 1 report an error (P+Q = 0) in api_muladd()
1462 (uint32_t)0x00800000,