bsd-setjmp.S 489 B

1234567891011121314151617181920212223
  1. /* Copyright (C) 2002, David McCullough <davidm@snapgear.com> */
  2. /* This file is released under the LGPL, any version you like */
  3. #define _ASM
  4. #define _SETJMP_H
  5. #include <bits/setjmp.h>
  6. .globl setjmp;
  7. .type setjmp,@function
  8. .align 4;
  9. setjmp:
  10. moveal %sp@(4), %a0
  11. movel %sp@(0), %a0@(JB_PC)
  12. moveml %d2-%d7/%a2-%a7, %a0@(JB_REGS)
  13. #if defined(__HAVE_68881__) || defined(__HAVE_FPU__)
  14. fmovemx %fp2-%fp7, %a0@(JB_FPREGS)
  15. #endif
  16. clrl %d0
  17. lea __sigjmp_save-.-8, %a0
  18. jmp 0(%pc, %a0)