Lines Matching +full:128 +full:b

14  * than 128. We then compute p(x) = h^8m_0 + ... + h^1m_7 where multiplication
18 * modulus g(x) = x^128 + x^127 + x^126 + x^121 + 1.
72 * Computes the product of two 128-bit polynomials in X and Y and XORs the
96 ext v25.16b, X.16b, X.16b, #8
97 ext v26.16b, Y.16b, Y.16b, #8
98 eor v25.16b, v25.16b, X.16b
99 eor v26.16b, v26.16b, Y.16b
103 eor HI.16b, HI.16b, v28.16b
104 eor LO.16b, LO.16b, v29.16b
105 eor MI.16b, MI.16b, v27.16b
117 ext v25.16b, X.16b, X.16b, #8
118 ext v26.16b, Y.16b, Y.16b, #8
119 eor v25.16b, v25.16b, X.16b
120 eor v26.16b, v26.16b, Y.16b
136 eor v4.16b, HI.16b, MI.16b
138 eor v4.16b, v4.16b, LO.16b
140 ext v5.16b, LO.16b, HI.16b, #8
142 eor v4.16b, v4.16b, v5.16b
144 ext HI.16b, HI.16b, HI.16b, #8
146 ext LO.16b, LO.16b, LO.16b, #8
148 ext PH.16b, v4.16b, HI.16b, #8
150 ext PL.16b, LO.16b, v4.16b, #8
154 * Computes the 128-bit reduction of PH : PL. Stores the result in dest.
157 * x^128 + x^127 + x^126 + x^121 + 1.
160 * product of two 128-bit polynomials in Montgomery form. We need to reduce it
162 * of x^128, this product has two extra factors of x^128. To get it back into
163 * Montgomery form, we need to remove one of these factors by dividing by x^128.
166 * the low 128 bits P_1 : P_0, leaving just the high 128 bits. Since the low
167 * bits are zero, the polynomial division by x^128 can be done by right
172 * only do 64x64 bit multiplications, so split P_0 * g(x) into x^128 * P_0 +
178 * 128-255, giving the answer in bits 128-255. This time, we need to cancel P_1
186 * p(x) / x^{128} mod g(x) = P_3 + P_1 + T_0 + V_1 : P_2 + P_0 + T_1 + V_0
197 ext TMP_V.16b, TMP_V.16b, TMP_V.16b, #8
199 eor TMP_V.16b, PL.16b, TMP_V.16b
201 eor PH.16b, PH.16b, TMP_V.16b
204 eor DEST.16b, PH.16b, TMP_V.16b
219 eor LO.16b, LO.16b, LO.16b
220 eor MI.16b, MI.16b, MI.16b
221 eor HI.16b, HI.16b, HI.16b
223 ld1 {M0.16b, M1.16b, M2.16b, M3.16b}, [MSG], #64
224 ld1 {M4.16b, M5.16b, M6.16b, M7.16b}, [MSG], #64
233 ext TMP_V.16b, TMP_V.16b, TMP_V.16b, #8
238 eor TMP_V.16b, PL.16b, TMP_V.16b
243 eor PH.16b, PH.16b, TMP_V.16b
253 eor SUM.16b, PH.16b, TMP_V.16b
257 eor M0.16b, M0.16b, SUM.16b
269 ld1 {KEY1.16b}, [KEY_POWERS], #16
271 ld1 {TMP_V.16b}, [MSG], #16
272 eor SUM.16b, SUM.16b, TMP_V.16b
278 ld1 {M0.16b, M1.16b, M2.16b, M3.16b}, [MSG], #64
279 ld1 {KEY8.16b, KEY7.16b, KEY6.16b, KEY5.16b}, [KEY_POWERS], #64
287 ld1 {M0.16b, M1.16b}, [MSG], #32
288 ld1 {KEY8.16b, KEY7.16b}, [KEY_POWERS], #32
294 ld1 {M0.16b}, [MSG], #16
295 ld1 {KEY8.16b}, [KEY_POWERS], #16
303 * Perform montgomery multiplication in GF(2^128) and store result in op1.
305 * Computes op1*op2*x^{-128} mod x^128 + x^127 + x^126 + x^121 + 1
314 ld1 {v0.16b}, [x0]
315 ld1 {v1.16b}, [x1]
319 st1 {SUM.16b}, [x0]
340 ld1 {SUM.16b}, [ACCUMULATOR]
343 ld1 {KEY8.16b, KEY7.16b, KEY6.16b, KEY5.16b}, [KEY_POWERS], #64
344 ld1 {KEY4.16b, KEY3.16b, KEY2.16b, KEY1.16b}, [KEY_POWERS], #64
359 st1 {SUM.16b}, [ACCUMULATOR]