Added saving of registers
authorceriel <none@none>
Fri, 9 Jun 1989 09:32:40 +0000 (09:32 +0000)
committerceriel <none@none>
Fri, 9 Jun 1989 09:32:40 +0000 (09:32 +0000)
mach/m68020/libem/trp.s

index 17166d4..50faa71 100644 (file)
@@ -1,3 +1,4 @@
+#
 .define        .trp
 .sect .text
 .sect .rom
@@ -12,7 +13,6 @@ fmt:  .asciz "%s\n"
        move.l  (16, sp), d0    ! error number
        move.l  a0, (16, sp)
        move.l  d0, (12, sp)
-       move.l  d0,-(sp)
        cmp.l   #16, d0
        bcc     1f
        move.l  (.trpim), d1
@@ -20,12 +20,21 @@ fmt:        .asciz "%s\n"
        bne     3f
 1:
        move.l  (.trppc), a0
-       move.l  a0, d0
+       move.l  a0, d1
        beq     9f
        clr.l   (.trppc)
+       movem.l d2-d7/a1-a5,-(sp)
+#if _M68881
+       fmovem.x fp0-fp7,-(sp)
+#endif
+       move.l  d0,-(sp)
        jsr     (a0)
-3:
        add.l   #4, sp
+#if _M68881
+       fmovem.x (sp)+,fp0-fp7,-(sp)
+#endif
+       movem.l (sp)+,d2-d7/a1-a5
+3:
        movem.l (sp)+, d0/d1/a0
        add.l   #4, sp
        rts