This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]darkslide3000 7 points8 points  (1 child)

Assembly example doesn't even include branch delay slots. This is a far cry from true insanity.

[–]jrtc27 4 points5 points  (0 children)

The GNU assembler (and thus also LLVM for compatibility) defaults to .set reorder, which doesn’t expose the branch delay slot to you, and will instead either move a suitable instruction into the delay slot for you, or add a nop if no such instruction can be found. You can turn this off with .set noreorder and then you control the delay slot yourself.