Slight tweak to get the executor routine down to 57-65 cycles on CM0
This commit is contained in:
@@ -37,9 +37,16 @@ impl CommandQueue {
|
||||
// Note that step_late needs to be called as well to advance the segment.
|
||||
pub fn step_early(&mut self) -> bool {
|
||||
|
||||
let cur_segment = &mut self.segments[self.cur_segment as usize];
|
||||
let cur_segment = unsafe { self.segments.get_unchecked_mut(self.cur_segment as usize) };
|
||||
|
||||
self.p.0 = (self.p + cur_segment.delta[0]).0.rem_euclid(self.step_size);
|
||||
|
||||
|
||||
self.p.0 = (self.p + cur_segment.delta[0]).0;
|
||||
if self.p.0 > self.step_size {
|
||||
self.p.0 -= self.step_size;
|
||||
} else if self.p.0 < 0 {
|
||||
self.p.0 += self.step_size;
|
||||
}
|
||||
|
||||
cur_segment.delta[0] += cur_segment.delta[1];
|
||||
cur_segment.delta[1] += cur_segment.delta[2];
|
||||
|
||||
Reference in New Issue
Block a user