endloopX
jumps always jump to loopX
start. Not to the value in the SA
register.
#44
Labels
wontfix
This will not be worked on
endloop
instructions jump to the value in theSA0
/SA1
register (ifLC0
/LC1
are greater than 0).The values in
SA0
/SA1
can change during loop execution. Regardless of that, the jump targets ofendloop
instructions are always set to the original loop start. They will not change if theSA
register is set again. This is technically incorrect.We can't fix this because we can not emulate the code yet and it can't be detected during static analysis anyways.
So this will not be fixed but should be noted by anyone using this plugin.
This pattern often happens if multiple
endloopX
instructions belong to a singleloopX
instruction.If you haven't done already you can check out the chapter about hardware loops in the programmers reference manual for a more in depth explanation of loop behavior.
The text was updated successfully, but these errors were encountered: