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.
|
// Note that step_late needs to be called as well to advance the segment.
|
||||||
pub fn step_early(&mut self) -> bool {
|
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[0] += cur_segment.delta[1];
|
||||||
cur_segment.delta[1] += cur_segment.delta[2];
|
cur_segment.delta[1] += cur_segment.delta[2];
|
||||||
|
|||||||
Reference in New Issue
Block a user