From 36ea2cca6b8143ea6ceee4f0c1fcd11fd011e8f7 Mon Sep 17 00:00:00 2001 From: str4d <str4d@mail.i2p> Date: Fri, 31 Oct 2014 01:58:05 +0000 Subject: [PATCH] Removed 20 unnecessary variable definitions from multiply() Android build tools 21.0.* caused dalvikvm runtime errors before this change. --- .../math/ed25519/Ed25519FieldElement.java | 218 ++++++++---------- 1 file changed, 99 insertions(+), 119 deletions(-) diff --git a/core/java/src/net/i2p/crypto/eddsa/math/ed25519/Ed25519FieldElement.java b/core/java/src/net/i2p/crypto/eddsa/math/ed25519/Ed25519FieldElement.java index 283c0707f7..bfa6fef641 100644 --- a/core/java/src/net/i2p/crypto/eddsa/math/ed25519/Ed25519FieldElement.java +++ b/core/java/src/net/i2p/crypto/eddsa/math/ed25519/Ed25519FieldElement.java @@ -116,139 +116,119 @@ public class Ed25519FieldElement extends FieldElement { */ public FieldElement multiply(FieldElement val) { int[] g = ((Ed25519FieldElement)val).t; - int f0 = t[0]; - int f1 = t[1]; - int f2 = t[2]; - int f3 = t[3]; - int f4 = t[4]; - int f5 = t[5]; - int f6 = t[6]; - int f7 = t[7]; - int f8 = t[8]; - int f9 = t[9]; - int g0 = g[0]; - int g1 = g[1]; - int g2 = g[2]; - int g3 = g[3]; - int g4 = g[4]; - int g5 = g[5]; - int g6 = g[6]; - int g7 = g[7]; - int g8 = g[8]; - int g9 = g[9]; - int g1_19 = 19 * g1; /* 1.959375*2^29 */ - int g2_19 = 19 * g2; /* 1.959375*2^30; still ok */ - int g3_19 = 19 * g3; - int g4_19 = 19 * g4; - int g5_19 = 19 * g5; - int g6_19 = 19 * g6; - int g7_19 = 19 * g7; - int g8_19 = 19 * g8; - int g9_19 = 19 * g9; - int f1_2 = 2 * f1; - int f3_2 = 2 * f3; - int f5_2 = 2 * f5; - int f7_2 = 2 * f7; - int f9_2 = 2 * f9; - long f0g0 = f0 * (long) g0; - long f0g1 = f0 * (long) g1; - long f0g2 = f0 * (long) g2; - long f0g3 = f0 * (long) g3; - long f0g4 = f0 * (long) g4; - long f0g5 = f0 * (long) g5; - long f0g6 = f0 * (long) g6; - long f0g7 = f0 * (long) g7; - long f0g8 = f0 * (long) g8; - long f0g9 = f0 * (long) g9; - long f1g0 = f1 * (long) g0; - long f1g1_2 = f1_2 * (long) g1; - long f1g2 = f1 * (long) g2; - long f1g3_2 = f1_2 * (long) g3; - long f1g4 = f1 * (long) g4; - long f1g5_2 = f1_2 * (long) g5; - long f1g6 = f1 * (long) g6; - long f1g7_2 = f1_2 * (long) g7; - long f1g8 = f1 * (long) g8; + int g1_19 = 19 * g[1]; /* 1.959375*2^29 */ + int g2_19 = 19 * g[2]; /* 1.959375*2^30; still ok */ + int g3_19 = 19 * g[3]; + int g4_19 = 19 * g[4]; + int g5_19 = 19 * g[5]; + int g6_19 = 19 * g[6]; + int g7_19 = 19 * g[7]; + int g8_19 = 19 * g[8]; + int g9_19 = 19 * g[9]; + int f1_2 = 2 * t[1]; + int f3_2 = 2 * t[3]; + int f5_2 = 2 * t[5]; + int f7_2 = 2 * t[7]; + int f9_2 = 2 * t[9]; + long f0g0 = t[0] * (long) g[0]; + long f0g1 = t[0] * (long) g[1]; + long f0g2 = t[0] * (long) g[2]; + long f0g3 = t[0] * (long) g[3]; + long f0g4 = t[0] * (long) g[4]; + long f0g5 = t[0] * (long) g[5]; + long f0g6 = t[0] * (long) g[6]; + long f0g7 = t[0] * (long) g[7]; + long f0g8 = t[0] * (long) g[8]; + long f0g9 = t[0] * (long) g[9]; + long f1g0 = t[1] * (long) g[0]; + long f1g1_2 = f1_2 * (long) g[1]; + long f1g2 = t[1] * (long) g[2]; + long f1g3_2 = f1_2 * (long) g[3]; + long f1g4 = t[1] * (long) g[4]; + long f1g5_2 = f1_2 * (long) g[5]; + long f1g6 = t[1] * (long) g[6]; + long f1g7_2 = f1_2 * (long) g[7]; + long f1g8 = t[1] * (long) g[8]; long f1g9_38 = f1_2 * (long) g9_19; - long f2g0 = f2 * (long) g0; - long f2g1 = f2 * (long) g1; - long f2g2 = f2 * (long) g2; - long f2g3 = f2 * (long) g3; - long f2g4 = f2 * (long) g4; - long f2g5 = f2 * (long) g5; - long f2g6 = f2 * (long) g6; - long f2g7 = f2 * (long) g7; - long f2g8_19 = f2 * (long) g8_19; - long f2g9_19 = f2 * (long) g9_19; - long f3g0 = f3 * (long) g0; - long f3g1_2 = f3_2 * (long) g1; - long f3g2 = f3 * (long) g2; - long f3g3_2 = f3_2 * (long) g3; - long f3g4 = f3 * (long) g4; - long f3g5_2 = f3_2 * (long) g5; - long f3g6 = f3 * (long) g6; + long f2g0 = t[2] * (long) g[0]; + long f2g1 = t[2] * (long) g[1]; + long f2g2 = t[2] * (long) g[2]; + long f2g3 = t[2] * (long) g[3]; + long f2g4 = t[2] * (long) g[4]; + long f2g5 = t[2] * (long) g[5]; + long f2g6 = t[2] * (long) g[6]; + long f2g7 = t[2] * (long) g[7]; + long f2g8_19 = t[2] * (long) g8_19; + long f2g9_19 = t[2] * (long) g9_19; + long f3g0 = t[3] * (long) g[0]; + long f3g1_2 = f3_2 * (long) g[1]; + long f3g2 = t[3] * (long) g[2]; + long f3g3_2 = f3_2 * (long) g[3]; + long f3g4 = t[3] * (long) g[4]; + long f3g5_2 = f3_2 * (long) g[5]; + long f3g6 = t[3] * (long) g[6]; long f3g7_38 = f3_2 * (long) g7_19; - long f3g8_19 = f3 * (long) g8_19; + long f3g8_19 = t[3] * (long) g8_19; long f3g9_38 = f3_2 * (long) g9_19; - long f4g0 = f4 * (long) g0; - long f4g1 = f4 * (long) g1; - long f4g2 = f4 * (long) g2; - long f4g3 = f4 * (long) g3; - long f4g4 = f4 * (long) g4; - long f4g5 = f4 * (long) g5; - long f4g6_19 = f4 * (long) g6_19; - long f4g7_19 = f4 * (long) g7_19; - long f4g8_19 = f4 * (long) g8_19; - long f4g9_19 = f4 * (long) g9_19; - long f5g0 = f5 * (long) g0; - long f5g1_2 = f5_2 * (long) g1; - long f5g2 = f5 * (long) g2; - long f5g3_2 = f5_2 * (long) g3; - long f5g4 = f5 * (long) g4; + long f4g0 = t[4] * (long) g[0]; + long f4g1 = t[4] * (long) g[1]; + long f4g2 = t[4] * (long) g[2]; + long f4g3 = t[4] * (long) g[3]; + long f4g4 = t[4] * (long) g[4]; + long f4g5 = t[4] * (long) g[5]; + long f4g6_19 = t[4] * (long) g6_19; + long f4g7_19 = t[4] * (long) g7_19; + long f4g8_19 = t[4] * (long) g8_19; + long f4g9_19 = t[4] * (long) g9_19; + long f5g0 = t[5] * (long) g[0]; + long f5g1_2 = f5_2 * (long) g[1]; + long f5g2 = t[5] * (long) g[2]; + long f5g3_2 = f5_2 * (long) g[3]; + long f5g4 = t[5] * (long) g[4]; long f5g5_38 = f5_2 * (long) g5_19; - long f5g6_19 = f5 * (long) g6_19; + long f5g6_19 = t[5] * (long) g6_19; long f5g7_38 = f5_2 * (long) g7_19; - long f5g8_19 = f5 * (long) g8_19; + long f5g8_19 = t[5] * (long) g8_19; long f5g9_38 = f5_2 * (long) g9_19; - long f6g0 = f6 * (long) g0; - long f6g1 = f6 * (long) g1; - long f6g2 = f6 * (long) g2; - long f6g3 = f6 * (long) g3; - long f6g4_19 = f6 * (long) g4_19; - long f6g5_19 = f6 * (long) g5_19; - long f6g6_19 = f6 * (long) g6_19; - long f6g7_19 = f6 * (long) g7_19; - long f6g8_19 = f6 * (long) g8_19; - long f6g9_19 = f6 * (long) g9_19; - long f7g0 = f7 * (long) g0; - long f7g1_2 = f7_2 * (long) g1; - long f7g2 = f7 * (long) g2; + long f6g0 = t[6] * (long) g[0]; + long f6g1 = t[6] * (long) g[1]; + long f6g2 = t[6] * (long) g[2]; + long f6g3 = t[6] * (long) g[3]; + long f6g4_19 = t[6] * (long) g4_19; + long f6g5_19 = t[6] * (long) g5_19; + long f6g6_19 = t[6] * (long) g6_19; + long f6g7_19 = t[6] * (long) g7_19; + long f6g8_19 = t[6] * (long) g8_19; + long f6g9_19 = t[6] * (long) g9_19; + long f7g0 = t[7] * (long) g[0]; + long f7g1_2 = f7_2 * (long) g[1]; + long f7g2 = t[7] * (long) g[2]; long f7g3_38 = f7_2 * (long) g3_19; - long f7g4_19 = f7 * (long) g4_19; + long f7g4_19 = t[7] * (long) g4_19; long f7g5_38 = f7_2 * (long) g5_19; - long f7g6_19 = f7 * (long) g6_19; + long f7g6_19 = t[7] * (long) g6_19; long f7g7_38 = f7_2 * (long) g7_19; - long f7g8_19 = f7 * (long) g8_19; + long f7g8_19 = t[7] * (long) g8_19; long f7g9_38 = f7_2 * (long) g9_19; - long f8g0 = f8 * (long) g0; - long f8g1 = f8 * (long) g1; - long f8g2_19 = f8 * (long) g2_19; - long f8g3_19 = f8 * (long) g3_19; - long f8g4_19 = f8 * (long) g4_19; - long f8g5_19 = f8 * (long) g5_19; - long f8g6_19 = f8 * (long) g6_19; - long f8g7_19 = f8 * (long) g7_19; - long f8g8_19 = f8 * (long) g8_19; - long f8g9_19 = f8 * (long) g9_19; - long f9g0 = f9 * (long) g0; + long f8g0 = t[8] * (long) g[0]; + long f8g1 = t[8] * (long) g[1]; + long f8g2_19 = t[8] * (long) g2_19; + long f8g3_19 = t[8] * (long) g3_19; + long f8g4_19 = t[8] * (long) g4_19; + long f8g5_19 = t[8] * (long) g5_19; + long f8g6_19 = t[8] * (long) g6_19; + long f8g7_19 = t[8] * (long) g7_19; + long f8g8_19 = t[8] * (long) g8_19; + long f8g9_19 = t[8] * (long) g9_19; + long f9g0 = t[9] * (long) g[0]; long f9g1_38 = f9_2 * (long) g1_19; - long f9g2_19 = f9 * (long) g2_19; + long f9g2_19 = t[9] * (long) g2_19; long f9g3_38 = f9_2 * (long) g3_19; - long f9g4_19 = f9 * (long) g4_19; + long f9g4_19 = t[9] * (long) g4_19; long f9g5_38 = f9_2 * (long) g5_19; - long f9g6_19 = f9 * (long) g6_19; + long f9g6_19 = t[9] * (long) g6_19; long f9g7_38 = f9_2 * (long) g7_19; - long f9g8_19 = f9 * (long) g8_19; + long f9g8_19 = t[9] * (long) g8_19; long f9g9_38 = f9_2 * (long) g9_19; long h0 = f0g0+f1g9_38+f2g8_19+f3g7_38+f4g6_19+f5g5_38+f6g4_19+f7g3_38+f8g2_19+f9g1_38; long h1 = f0g1+f1g0 +f2g9_19+f3g8_19+f4g7_19+f5g6_19+f6g5_19+f7g4_19+f8g3_19+f9g2_19; -- GitLab