__longjmp.S 311 B

123456789101112131415161718192021222324
  1. #ifdef __H8300S__
  2. .h8300s
  3. #else
  4. .h8300h
  5. #endif
  6. .text
  7. .global __longjmp
  8. __longjmp:
  9. mov.l er1,er1
  10. bne 1f
  11. sub.l er1,er1
  12. inc.l #1,er1
  13. 1:
  14. mov.l @er0+,er4
  15. mov.l @er0+,er5
  16. mov.l @er0+,er6
  17. mov.l @er0+,sp
  18. mov.l @er0+,er3 ; return PC
  19. adds #4,sp ; adjust return stack
  20. jmp @er3
  21. libc_hidden_def(__longjmp)