From 5eb972c21f2a4cc5fb6030503103e10600f4f0bd Mon Sep 17 00:00:00 2001 From: Christopher Berner Date: Tue, 9 Apr 2019 21:30:25 -0700 Subject: [PATCH] Extract constant from loop --- src/pi_solver.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pi_solver.rs b/src/pi_solver.rs index 7581a0c..ea5c30e 100644 --- a/src/pi_solver.rs +++ b/src/pi_solver.rs @@ -541,11 +541,12 @@ impl IntermediateSymbolDecoder { self.first_phase_swap_columns_substep(r); // Zero out leading value in following rows let temp = self.i; + let temp_value = self.A.get(temp, temp); for row in self.A.get_col_index_iter(temp, self.i + 1, self.A.height()) { let leading_value = self.A.get(row, temp); if leading_value != Octet::zero() { // Addition is equivalent to subtraction - let beta = &leading_value / &self.A.get(temp, temp); + let beta = &leading_value / &temp_value; self.fma_rows(temp, row, beta); if r == 1 { // Hot path for r == 1, since it's very common due to maximum connected