Skip to content

Commit e96eefe

Browse files
committed
Re-baseline and introduce new fast NTT and inverse NTT
code, following source re-organization in PR#674. See comments on older PR#610. All tests, proofs, and lint OK. Signed-off-by: Rod Chapman <[email protected]> Correct list of called functions for this proof. Signed-off-by: Rod Chapman <[email protected]>
1 parent 8b8e1f8 commit e96eefe

36 files changed

+1217
-210
lines changed

examples/monolithic_build/mlkem_native_monobuild.c

+91-6
Original file line numberDiff line numberDiff line change
@@ -1233,6 +1233,41 @@
12331233
#undef KeccakF1600x4_StateXORBytes
12341234
#endif
12351235

1236+
/* mlkem/poly.c */
1237+
#if defined(MONT_F)
1238+
#undef MONT_F
1239+
#endif
1240+
1241+
/* mlkem/poly.c */
1242+
#if defined(NTT_BOUND1)
1243+
#undef NTT_BOUND1
1244+
#endif
1245+
1246+
/* mlkem/poly.c */
1247+
#if defined(NTT_BOUND2)
1248+
#undef NTT_BOUND2
1249+
#endif
1250+
1251+
/* mlkem/poly.c */
1252+
#if defined(NTT_BOUND4)
1253+
#undef NTT_BOUND4
1254+
#endif
1255+
1256+
/* mlkem/poly.c */
1257+
#if defined(NTT_BOUND6)
1258+
#undef NTT_BOUND6
1259+
#endif
1260+
1261+
/* mlkem/poly.c */
1262+
#if defined(NTT_BOUND7)
1263+
#undef NTT_BOUND7
1264+
#endif
1265+
1266+
/* mlkem/poly.c */
1267+
#if defined(NTT_BOUND8)
1268+
#undef NTT_BOUND8
1269+
#endif
1270+
12361271
/* mlkem/poly.c */
12371272
#if defined(barrett_reduce)
12381273
#undef barrett_reduce
@@ -1248,6 +1283,11 @@
12481283
#undef cast_uint16_to_int16
12491284
#endif
12501285

1286+
/* mlkem/poly.c */
1287+
#if defined(ct_butterfly)
1288+
#undef ct_butterfly
1289+
#endif
1290+
12511291
/* mlkem/poly.c */
12521292
#if defined(empty_cu_poly)
12531293
#undef empty_cu_poly
@@ -1259,8 +1299,38 @@
12591299
#endif
12601300

12611301
/* mlkem/poly.c */
1262-
#if defined(invntt_layer)
1263-
#undef invntt_layer
1302+
#if defined(gs_butterfly_defer)
1303+
#undef gs_butterfly_defer
1304+
#endif
1305+
1306+
/* mlkem/poly.c */
1307+
#if defined(gs_butterfly_reduce)
1308+
#undef gs_butterfly_reduce
1309+
#endif
1310+
1311+
/* mlkem/poly.c */
1312+
#if defined(invntt_layer321)
1313+
#undef invntt_layer321
1314+
#endif
1315+
1316+
/* mlkem/poly.c */
1317+
#if defined(invntt_layer54)
1318+
#undef invntt_layer54
1319+
#endif
1320+
1321+
/* mlkem/poly.c */
1322+
#if defined(invntt_layer54_butterfly)
1323+
#undef invntt_layer54_butterfly
1324+
#endif
1325+
1326+
/* mlkem/poly.c */
1327+
#if defined(invntt_layer6)
1328+
#undef invntt_layer6
1329+
#endif
1330+
1331+
/* mlkem/poly.c */
1332+
#if defined(invntt_layer7_invert)
1333+
#undef invntt_layer7_invert
12641334
#endif
12651335

12661336
/* mlkem/poly.c */
@@ -1274,13 +1344,28 @@
12741344
#endif
12751345

12761346
/* mlkem/poly.c */
1277-
#if defined(ntt_butterfly_block)
1278-
#undef ntt_butterfly_block
1347+
#if defined(ntt_layer123)
1348+
#undef ntt_layer123
1349+
#endif
1350+
1351+
/* mlkem/poly.c */
1352+
#if defined(ntt_layer45)
1353+
#undef ntt_layer45
1354+
#endif
1355+
1356+
/* mlkem/poly.c */
1357+
#if defined(ntt_layer45_butterfly)
1358+
#undef ntt_layer45_butterfly
1359+
#endif
1360+
1361+
/* mlkem/poly.c */
1362+
#if defined(ntt_layer6)
1363+
#undef ntt_layer6
12791364
#endif
12801365

12811366
/* mlkem/poly.c */
1282-
#if defined(ntt_layer)
1283-
#undef ntt_layer
1367+
#if defined(ntt_layer7)
1368+
#undef ntt_layer7
12841369
#endif
12851370

12861371
/* mlkem/poly.c */

0 commit comments

Comments
 (0)