From 34ed0189281fcca1921d4e3d762e6d9183d5230f Mon Sep 17 00:00:00 2001 From: Daniel Schadt Date: Fri, 11 Apr 2025 10:16:04 +0200 Subject: roll Block::mul back up I've unrolled this earlier to speed up the computation for the commonly used factors, but now we're precomputing the values anyway so there's no reason to keep the code ugly. --- src/block.rs | 51 --------------------------------------------------- 1 file changed, 51 deletions(-) (limited to 'src/block.rs') diff --git a/src/block.rs b/src/block.rs index 8bf8647..c294aab 100644 --- a/src/block.rs +++ b/src/block.rs @@ -156,57 +156,6 @@ impl Mul for Block { } result } - 3 => { - let mut result = self << 1; - if self[0] & 0x80 != 0 { - result[15] ^= 0x87; - } - result ^ self - } - 4 => { - let mut result = self << 2; - if self[0] & 0x80 != 0 { - result[15] ^= 0x0E; - result[14] ^= 0x01; - } - if self[0] & 0x40 != 0 { - result[15] ^= 0x87; - } - result - } - 5 => { - let mut result = self << 2; - if self[0] & 0x80 != 0 { - result[15] ^= 0x0E; - result[14] ^= 0x01; - } - if self[0] & 0x40 != 0 { - result[15] ^= 0x87; - } - result ^ self - } - 6 => { - let mut result = self << 1; - if self[0] & 0x80 != 0 { - result[15] ^= 0x87; - } - result = result ^ self; - let mask = if result[0] & 0x80 != 0 { 0x87 } else { 0 }; - result = result << 1; - result[15] ^= mask; - result - } - 7 => { - let mut result = self << 1; - if self[0] & 0x80 != 0 { - result[15] ^= 0x87; - } - result = result ^ self; - let mask = if result[0] & 0x80 != 0 { 0x87 } else { 0 }; - result = result << 1; - result[15] ^= mask; - result ^ self - } _ if rhs % 2 == 0 => self * 2 * (rhs / 2), _ => self * (rhs - 1) ^ self, } -- cgit v1.2.3