dsemul.h 650 B

1234567891011121314151617
  1. extern int mips_dsemul(struct pt_regs *regs, mips_instruction ir, unsigned long cpc);
  2. extern int do_dsemulret(struct pt_regs *xcp);
  3. /* Instruction which will always cause an address error */
  4. #define AdELOAD 0x8c000001 /* lw $0,1($0) */
  5. /* Instruction which will plainly cause a CP1 exception when FPU is disabled */
  6. #define CP1UNDEF 0x44400001 /* cfc1 $0,$0 undef */
  7. /* Instruction inserted following the badinst to further tag the sequence */
  8. #define BD_COOKIE 0x0000bd36 /* tne $0,$0 with baggage */
  9. /* Setup which instruction to use for trampoline */
  10. #ifdef STANDALONE_EMULATOR
  11. #define BADINST CP1UNDEF
  12. #else
  13. #define BADINST AdELOAD
  14. #endif