Skip to content

Commit 4825f07

Browse files
committed
Use branchless programming in fast_walsh_hadamard_values
1 parent 0f717a7 commit 4825f07

File tree

1 file changed

+1
-5
lines changed

1 file changed

+1
-5
lines changed

src/lib.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -154,11 +154,7 @@ pub trait BooleanFunctionImpl: Debug {
154154
fn fast_walsh_hadamard_values(&self) -> Vec<i32> {
155155
let mut values = vec![0; (self.get_max_input_value() + 1) as usize];
156156
for i in 0..=self.get_max_input_value() {
157-
values[i as usize] = if self.compute_cellular_automata_rule(i) {
158-
-1
159-
} else {
160-
1
161-
};
157+
values[i as usize] = 1 | -((self.compute_cellular_automata_rule(i)) as i32);
162158
}
163159
let mut h = 1usize;
164160
while h <= self.get_max_input_value() as usize {

0 commit comments

Comments
 (0)