From: Niels Möller Date: Tue, 21 Jun 2011 18:27:31 +0000 (+0200) Subject: Avoid copy for y2. X-Git-Tag: nettle_2.2_release_20110711~38 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d912689e1c177ef0026cbbf4b28ffa1eb444ab2a;p=thirdparty%2Fnettle.git Avoid copy for y2. Rev: nettle/misc/serpent-sbox6i.dot:1.2 --- diff --git a/misc/serpent-sbox6i.dot b/misc/serpent-sbox6i.dot index 43ccb662..a2fdbd37 100644 --- a/misc/serpent-sbox6i.dot +++ b/misc/serpent-sbox6i.dot @@ -1,54 +1,40 @@ strict digraph sbox6i { - x0 [shape=box, label="\N"]; - x1 [shape=box, label="\N"]; - x2 [shape=box, label="\N"]; - x3 [shape=box, label="\N"]; + x0 [shape=box]; + x1 [shape=box]; + x2 [shape=box]; + x3 [shape=box]; - y0 [shape=box, label="\N"]; - y1 [shape=box, label="\N"]; - y2 [shape=box, label="\N"]; - y3 [shape=box, label="\N"]; - - // To get to y1, we need to save t02 - // To get to y3, we need to save y1, t02, t05, t07, t01 - // To get to y0, we need to save t02, t07, t05, t01 + y0 [shape=box]; + y1 [shape=box]; + y2 [shape=box]; + y3 [shape=box]; // Get to y1 - t02 [label="\N\ny3\n1"]; - t06 [label="\N\ny0\n2"]; - t08 [label="\N\ny1\n3"]; - y1 [label="\N\n4"]; + t01 [label="\N\ny2\n1"]; + t02 [label="\N\nx2\n2"]; + t06 [label="\N\ny0\n3"]; + t08 [label="\N\ny1\n4"]; + y1 [label="\N\n5"]; // Get to t05 - t01 [label="\N\nx2\n4"]; - t03 [label="\N\ny2\n5"]; - t05 [label="\N\ny2\n6"]; + t03 [label="\N\ny3\n6"]; + t05 [label="\N\ny3\n7"]; // Get to t07 - t16 [label="\N\nx3\n7"]; - t04 [label="\N\ny3\n8"]; - t07 [label="\N\ny3\n9"]; + t16 [label="\N\nx3\n8"]; + t04 [label="\N\nx2\n9"]; + t07 [label="\N\nx2\n10"]; // Get to y0 - t09 [label="\N\ny0\n10"]; - y0 [label="\N\n11"]; + t09 [label="\N\ny0\n11"]; + y0 [label="\N\n12"]; // Get to y3 - t13 [label="\N\ny2\n12"]; - t15 [label="\N\ny3\n13"]; - t17 [label="\N\nx0\n14"]; - y3 [label="\N\n15"]; + t13 [label="\N\ny3\n13"]; + t15 [label="\N\ny3\n14"]; + t17 [label="\N\nx0\n15"]; + y3 [label="\N\n16"]; // Get to y2 - t12 [label="\N\nx1\n16"]; - t14 [label="\N\ny2\n17"]; - y2 [label="\N\n18"]; - - // t02 [label="\N\nx2\n1"]; - // t08 [label="\N\ny1\n2"]; - // t06 [label="\N\ny2\n3"]; - // y1 [label="\N\n4", shape=box]; - // t04 [label="\N\ny0\n6"]; - // t07 [label="\N\ny0\n7"]; - // t16 [label="\N\nx2\n9"]; - // t03 [label="\N\ny2\n10"]; - // t05 [label="\N\nx3\n11"]; - + t12 [label="\N\nx1\n17"]; + t14 [label="\N\ny2\n18"]; + y2 [label="\N\n19"]; + x0 -> t01; x2 -> t01; // t01 = x0 ^ x2; x2 -> t02; // t02 = ~ x2; x1 -> t03; t01-> t03; // t03 = x1 & t01;