summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1998-12-14 23:15:38 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1998-12-14 23:15:38 +0000
commit01629105c2817a59a4f1f05039593f211cf5ddaa (patch)
tree76f6bb8f9ca6ddbd015e3b81964a8dacffaf5cf9 /c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s
parentPatch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to rename all (diff)
downloadrtems-01629105c2817a59a4f1f05039593f211cf5ddaa.tar.bz2
Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to rename all
.s files to .S in conformance with GNU conventions. This is a minor step along the way to supporting automake.
Diffstat (limited to 'c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s')
-rw-r--r--c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s100
1 files changed, 0 insertions, 100 deletions
diff --git a/c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s b/c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s
deleted file mode 100644
index a5b6543914..0000000000
--- a/c/src/lib/libcpu/m68k/m68040/fpsp/sto_res.s
+++ /dev/null
@@ -1,100 +0,0 @@
-//
-// $Id$
-//
-// sto_res.sa 3.1 12/10/90
-//
-// Takes the result and puts it in where the user expects it.
-// Library functions return result in fp0. If fp0 is not the
-// users destination register then fp0 is moved to the the
-// correct floating-point destination register. fp0 and fp1
-// are then restored to the original contents.
-//
-// Input: result in fp0,fp1
-//
-// d2 & a0 should be kept unmodified
-//
-// Output: moves the result to the true destination reg or mem
-//
-// Modifies: destination floating point register
-//
-
-// Copyright (C) Motorola, Inc. 1990
-// All Rights Reserved
-//
-// THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF MOTOROLA
-// The copyright notice above does not evidence any
-// actual or intended publication of such source code.
-
-STO_RES: //idnt 2,1 | Motorola 040 Floating Point Software Package
-
-
- |section 8
-
-#include "fpsp.defs"
-
- .global sto_cos
-sto_cos:
- bfextu CMDREG1B(%a6){#13:#3},%d0 //extract cos destination
- cmpib #3,%d0 //check for fp0/fp1 cases
- bles c_fp0123
- fmovemx %fp1-%fp1,-(%a7)
- moveql #7,%d1
- subl %d0,%d1 //d1 = 7- (dest. reg. no.)
- clrl %d0
- bsetl %d1,%d0 //d0 is dynamic register mask
- fmovemx (%a7)+,%d0
- rts
-c_fp0123:
- cmpib #0,%d0
- beqs c_is_fp0
- cmpib #1,%d0
- beqs c_is_fp1
- cmpib #2,%d0
- beqs c_is_fp2
-c_is_fp3:
- fmovemx %fp1-%fp1,USER_FP3(%a6)
- rts
-c_is_fp2:
- fmovemx %fp1-%fp1,USER_FP2(%a6)
- rts
-c_is_fp1:
- fmovemx %fp1-%fp1,USER_FP1(%a6)
- rts
-c_is_fp0:
- fmovemx %fp1-%fp1,USER_FP0(%a6)
- rts
-
-
- .global sto_res
-sto_res:
- bfextu CMDREG1B(%a6){#6:#3},%d0 //extract destination register
- cmpib #3,%d0 //check for fp0/fp1 cases
- bles fp0123
- fmovemx %fp0-%fp0,-(%a7)
- moveql #7,%d1
- subl %d0,%d1 //d1 = 7- (dest. reg. no.)
- clrl %d0
- bsetl %d1,%d0 //d0 is dynamic register mask
- fmovemx (%a7)+,%d0
- rts
-fp0123:
- cmpib #0,%d0
- beqs is_fp0
- cmpib #1,%d0
- beqs is_fp1
- cmpib #2,%d0
- beqs is_fp2
-is_fp3:
- fmovemx %fp0-%fp0,USER_FP3(%a6)
- rts
-is_fp2:
- fmovemx %fp0-%fp0,USER_FP2(%a6)
- rts
-is_fp1:
- fmovemx %fp0-%fp0,USER_FP1(%a6)
- rts
-is_fp0:
- fmovemx %fp0-%fp0,USER_FP0(%a6)
- rts
-
- |end