On Thu, 13 May 2021 11:46:06 -0700 (PDT), in
gmane.comp.hardware.beagleboard.user
"[email protected]"
<[email protected]> wrote:

>Which assembler are you using? It should have warned you that "loop weiter" 
>body must be at least two instructions, whereas you have zero. 
>

        Sliding into the thread...

        From the manual:
"""
Hardware Loop Assist (LOOP) Defines a hardware-assisted loop operation. The
loop is noninterruptible (LOOP). The loop operation works by detecting when
the instruction pointer would normal hit the instruction at the designated
target label, and instead decrementing a loop counter and jumping back to
the instruction immediately following the loop instruction.
"""

        So, yes... the loop encounters the target label... and jumps back to...
the target label as there is no intervening opcode to use as a target for
the jump. Might be optimized out completely unless one puts at least a NOP
instruction inside -- though the next comment probably voids all
consideration.

        Not sure of the "at least two instructions" -- seems one, with label on
the next (outside of loop) instruction, would be viable. PC would hit
label, so jump back to the (one) instruction following LOOP statement.


>Also, you cannot nest HW-assisted loops.
>

        A critical item to consider...


-- 
Dennis L Bieber

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/ef0r9g9oltoh89vm9n4t9c4ku03oibd8d9%404ax.com.

Reply via email to