linux/arch/m68k/fpsp040/x_bsun.S
<<
>>
Prefs
   1|
   2|       x_bsun.sa 3.3 7/1/91
   3|
   4|       fpsp_bsun --- FPSP handler for branch/set on unordered exception
   5|
   6|       Copy the PC to FPIAR to maintain 881/882 compatibility
   7|
   8|       The real_bsun handler will need to perform further corrective
   9|       measures as outlined in the 040 User's Manual on pages
  10|       9-41f, section 9.8.3.
  11|
  12
  13|               Copyright (C) Motorola, Inc. 1990
  14|                       All Rights Reserved
  15|
  16|       For details on the license for this file, please see the
  17|       file, README, in this same directory.
  18
  19X_BSUN: |idnt    2,1 | Motorola 040 Floating Point Software Package
  20
  21        |section        8
  22
  23#include "fpsp.h"
  24
  25        |xref   real_bsun
  26
  27        .global fpsp_bsun
  28fpsp_bsun:
  29|
  30        link            %a6,#-LOCAL_SIZE
  31        fsave           -(%a7)
  32        moveml          %d0-%d1/%a0-%a1,USER_DA(%a6)
  33        fmovemx %fp0-%fp3,USER_FP0(%a6)
  34        fmoveml %fpcr/%fpsr/%fpiar,USER_FPCR(%a6)
  35
  36|
  37        movel           EXC_PC(%a6),USER_FPIAR(%a6)
  38|
  39        moveml          USER_DA(%a6),%d0-%d1/%a0-%a1
  40        fmovemx USER_FP0(%a6),%fp0-%fp3
  41        fmoveml USER_FPCR(%a6),%fpcr/%fpsr/%fpiar
  42        frestore        (%a7)+
  43        unlk            %a6
  44        bral            real_bsun
  45|
  46        |end
  47