diff --git a/20161022.html b/20161022.html new file mode 100644 index 0000000..68e7558 --- /dev/null +++ b/20161022.html @@ -0,0 +1,90 @@ +
// RETURN +opcode, ret; // ... register for future return +opcode; // ........ branch delay slot +// ................ actual return + +// COMPUTED JUMP +push reg, ret; // ... push jump address from register and register for future return +opcode; // .......... branch delay slot +// .................. actual jump + +// JUMP +push imm, ret; // ... push jump address and register for future return +opcode; // .......... branch delay slot +// .................. actual jump + +// CAN PUSH ADDRESS EARLIER +push imm; // ...... push jump address to later branch to +opcode; // ........ some code +opcode; // ........ some code +opcode, ret; // ... register for future return +opcode; // ........ branch delay slot +// ................ actual jump + +// SERIES OF JUMPS +push imm; // ........ push addresses for series of branches in reverse order +push imm; // ........ push addresses for series of branches in reverse order +push imm, ret; // ... push first jump address and register for future return +opcode; // .......... branch delay slot +// .................. start first jump, later rets continue to other jumps + +// SERIES OF JUMPS VERSION 2 +push imm; // ........ push 4th jump address +push imm; // ........ push 3rd jump address +push imm, ret; // ... push 1st jump address and register for future return +push imm; // ........ push 2nd jump in branch delay slot +// .................. start first jump, later rets continue to other jumps + +// CALL +push imm, ret; // ... push call address and register for future return +push imm; // ........ push return address in delay slot +// .................. actual call here + +// SERIES OF CALLS +push imm; // ........ push 3nd call address +push imm; // ........ push 2nd call address +push imm, ret; // ... push 1st call address and flag for future return +push imm; // ........ push final call return address in delay slot +// .................. start first call, later rets continue without returning back in between+ +