No subject
Fri Jan 23 11:48:37 CET 2009
disassembling the executable code to make sure of what the assembler
did.
The answer depends on what mode the assembler is in. For MIPS
assembler there is a 'reorder mode' where the assembler will fill in
the branch delay slot for you or place a nop if necessary, and the
next instruction in the source is really the one after the delay slot,
or there is noreorder mode where the next instruction after the branch
is what is put in the delay slot.
Normally the assembler runs in reorder mode, and you use a '.set
reorder' and '.set noreorder' to switch between them. Noreorder mode
is commonly used in code that requires precise control of where
instructions get executed (cache & tlb handling)
More information about the U-Boot
mailing list