From 81e5f24363cf8f50099b7fbed0fd3bcfaac9d5ea Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 2 Mar 2020 15:11:25 +0100 Subject: Make Barrett reduction work. --- pyecsca/codegen/render.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'pyecsca/codegen/render.py') diff --git a/pyecsca/codegen/render.py b/pyecsca/codegen/render.py index 0d0bc51..8350146 100644 --- a/pyecsca/codegen/render.py +++ b/pyecsca/codegen/render.py @@ -27,21 +27,21 @@ env = Environment( env.globals["isinstance"] = isinstance -def render_op(op: OpType, result: str, left: str, right: str, mod: str) -> Optional[str]: +def render_op(op: OpType, result: str, left: str, right: str, mod: str, red: str) -> Optional[str]: if op == OpType.Add: - return "bn_mod_add(&{}, &{}, &{}, &{});".format(left, right, mod, result) + return "bn_red_add(&{}, &{}, &{}, &{}, &{});".format(left, right, mod, red, result) elif op == OpType.Sub: - return "bn_mod_sub(&{}, &{}, &{}, &{});".format(left, right, mod, result) + return "bn_red_sub(&{}, &{}, &{}, &{}, &{});".format(left, right, mod, red, result) elif op == OpType.Neg: - return "bn_mod_neg(&{}, &{}, &{});".format(right, mod, result) + return "bn_red_neg(&{}, &{}, &{}, &{});".format(right, mod, red, result) elif op == OpType.Mult: - return "bn_mod_mul(&{}, &{}, &{}, &{});".format(left, right, mod, result) + return "bn_red_mul(&{}, &{}, &{}, &{}, &{});".format(left, right, mod, red, result) elif op == OpType.Div or op == OpType.Inv: - return "bn_mod_div(&{}, &{}, &{}, &{});".format(left, right, mod, result) + return "bn_red_div(&{}, &{}, &{}, &{}, &{});".format(left, right, mod, red, result) elif op == OpType.Sqr: - return "bn_mod_sqr(&{}, &{}, &{});".format(left, mod, result) + return "bn_red_sqr(&{}, &{}, &{}, &{});".format(left, mod, red, result) elif op == OpType.Pow: - return "bn_mod_pow(&{}, &{}, &{}, &{});".format(left, right, mod, result) + return "bn_red_pow(&{}, &{}, &{}, &{}, &{});".format(left, right, mod, red, result) elif op == OpType.Id: return "bn_copy(&{}, &{});".format(left, result) else: -- cgit v1.3.1