runtime: remove unnecessary check for negative sleepTicks duration

This is now fixed for every target in the previous commit.

Also see: https://github.com/tinygo-org/tinygo/pull/4239
This commit is contained in:
Ayke van Laethem
2024-10-30 19:29:12 +01:00
committed by Ayke
parent a6c4287b4d
commit 8ff97bdedd
2 changed files with 10 additions and 16 deletions
+10 -12
View File
@@ -119,19 +119,17 @@ func ticks() timeUnit {
} }
func sleepTicks(duration timeUnit) { func sleepTicks(duration timeUnit) {
if duration >= 0 { curr := ticks()
curr := ticks() last := curr + duration // 64-bit overflow unlikely
last := curr + duration // 64-bit overflow unlikely for curr < last {
for curr < last { cycles := timeUnit((last - curr) / pitCyclesPerMicro)
cycles := timeUnit((last - curr) / pitCyclesPerMicro) if cycles > 0xFFFFFFFF {
if cycles > 0xFFFFFFFF { cycles = 0xFFFFFFFF
cycles = 0xFFFFFFFF
}
if !timerSleep(uint32(cycles)) {
return // return early due to interrupt
}
curr = ticks()
} }
if !timerSleep(uint32(cycles)) {
return // return early due to interrupt
}
curr = ticks()
} }
} }
-4
View File
@@ -31,10 +31,6 @@ func nanosecondsToTicks(ns int64) timeUnit {
} }
func sleepTicks(d timeUnit) { func sleepTicks(d timeUnit) {
if d <= 0 {
return
}
if hasScheduler { if hasScheduler {
// With scheduler, sleepTicks may return early if an interrupt or // With scheduler, sleepTicks may return early if an interrupt or
// event fires - so scheduler can schedule any go routines now // event fires - so scheduler can schedule any go routines now