diff options
Diffstat (limited to 'lib/ultralib/include/sys/asm.h')
| -rw-r--r-- | lib/ultralib/include/sys/asm.h | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/lib/ultralib/include/sys/asm.h b/lib/ultralib/include/sys/asm.h index 97f8fb2..60e6ccd 100644 --- a/lib/ultralib/include/sys/asm.h +++ b/lib/ultralib/include/sys/asm.h @@ -83,32 +83,37 @@ extern "C" { #endif +#define NOP \ + .set noreorder ;\ + nop ;\ + .set reorder -#define STAY1(stmnt) \ +#define CACHE(op, reg) \ .set noreorder ;\ - stmnt ;\ + cache op, reg ;\ .set reorder -#define STAY2(stmnt, arg1) \ - .set noreorder ;\ - stmnt, arg1 ;\ +#define MFC0(reg, op) \ + .set noreorder ;\ + mfc0 reg, op ;\ .set reorder -#define STAY3(stmnt, arg1, arg2) \ - .set noreorder ;\ - stmnt, arg1, arg2 ;\ +#define MTC0(reg, op) \ + .set noreorder ;\ + mtc0 reg, op ;\ .set reorder -#define NOP \ - .set noreorder ;\ - nop ;\ +#define CFC1(reg, op) \ + .set noreorder ;\ + cfc1 reg, op ;\ .set reorder -#define CACHE(op, reg) \ +#define CTC1(reg, op) \ .set noreorder ;\ - cache op, reg ;\ + ctc1 reg, op ;\ .set reorder + #ifdef __cplusplus } #endif |
