~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/m68k/ifpsp060/fplsp.doc

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/m68k/ifpsp060/fplsp.doc (Version linux-6.12-rc7) and /arch/mips/ifpsp060/fplsp.doc (Version linux-5.4.285)


  1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
  2 MOTOROLA MICROPROCESSOR & MEMORY TECHNOLOGY GR    
  3 M68000 Hi-Performance Microprocessor Division     
  4 M68060 Software Package                           
  5 Production Release P1.00 -- October 10, 1994      
  6                                                   
  7 M68060 Software Package Copyright © 1993, 199    
  8                                                   
  9 THE SOFTWARE is provided on an "AS IS" basis a    
 10 To the maximum extent permitted by applicable     
 11 MOTOROLA DISCLAIMS ALL WARRANTIES WHETHER EXPR    
 12 INCLUDING IMPLIED WARRANTIES OF MERCHANTABILIT    
 13 and any warranty against infringement with reg    
 14 (INCLUDING ANY MODIFIED VERSIONS THEREOF) and     
 15                                                   
 16 To the maximum extent permitted by applicable     
 17 IN NO EVENT SHALL MOTOROLA BE LIABLE FOR ANY D    
 18 (INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOS    
 19 BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORM    
 20 ARISING OF THE USE OR INABILITY TO USE THE SOF    
 21 Motorola assumes no responsibility for the mai    
 22                                                   
 23 You are hereby granted a copyright license to     
 24 so long as this entire notice is retained with    
 25 redistributed versions, and that such modified    
 26 No licenses are granted by implication, estopp    
 27 or trademarks of Motorola, Inc.                   
 28 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
 29                                                   
 30 68060 FLOATING-POINT SOFTWARE PACKAGE (Library    
 31 ----------------------------------------------    
 32                                                   
 33 The file fplsp.sa contains the "Library versio    
 34 68060SP Floating-Point Software Package. The r    
 35 included in this module can be used to emulate    
 36 FP instructions not implemented in 68060 hardw    
 37 instructions normally take exception vector #1    
 38 "FP Unimplemented Instruction".                   
 39                                                   
 40 By re-compiling a program that uses these inst    
 41 making subroutine calls in place of the unimpl    
 42 instructions, a program can avoid the overhead    
 43 with taking the exception.                        
 44                                                   
 45 Release file format:                              
 46 --------------------                              
 47 The file fplsp.sa is essentially a hexadecimal    
 48 release package. This is the ONLY format which    
 49 The hex image was created by assembling the so    
 50 then converting the resulting binary output im    
 51 ASCII text file. The hexadecimal numbers are l    
 52 using the Motorola Assembly Syntax assembler d    
 53 (define constant longword). The file can be co    
 54 assembly syntaxes by using any word processor     
 55 search and replace function.                      
 56                                                   
 57 To assist in assembling and linking this modul    
 58 the installer should add a symbolic label to t    
 59 This will allow calling routines to access the    
 60 of this package.                                  
 61                                                   
 62 The source code fplsp.s has also been included    
 63 documentation purposes.                           
 64                                                   
 65 Release file structure:                           
 66 -----------------------                           
 67 The file fplsp.sa contains an "Entry-Point" se    
 68 code section. The FPLSP has no "Call-Out" sect    
 69 is the "Entry-Point" section. In order to acce    
 70 package, a program must "bsr" or "jsr" to the     
 71 below in "68060FPLSP entry points" that corres    
 72 function. A branch instruction located at the     
 73 within the package will then enter the correct    
 74                                                   
 75 The entry point addresses at the beginning of     
 76 fixed so that a program calling the routines w    
 77 re-compiled with every new 68060FPLSP release.    
 78                                                   
 79 There are 3 entry-points for each instruction     
 80 double precision, and extended precision.         
 81                                                   
 82 As an example, the "fsin" library instruction     
 83 extended precision operand if program executes    
 84                                                   
 85 # fsin.x fp0                                      
 86                                                   
 87         fmovm.x &0x01,-(%sp)    # pass operand    
 88         bsr.l   _060FPLSP_TOP+0x1a8 # branch t    
 89         add.l   &0xc,%sp        # clear operan    
 90                                                   
 91 Upon return, fp0 holds the correct result. The    
 92 set correctly. The FPCR is unchanged. The FPIA    
 93                                                   
 94 Another example. This time, a dyadic operation    
 95                                                   
 96 # frem.s %fp1,%fp0                                
 97                                                   
 98         fmov.s  %fp1,-(%sp)     # pass src ope    
 99         fmov.s  %fp0,-(%sp)     # pass dst ope    
100         bsr.l   _060FPLSP_TOP+0x168 # branch t    
101         addq.l  &0x8,%sp        # clear operan    
102                                                   
103 Again, the result is returned in fp0. Note tha    
104 are passed in single precision format.            
105                                                   
106 Exception reporting:                              
107 --------------------                              
108 The package takes exceptions according to the     
109 entry. If an exception should be reported, the    
110 this exception using implemented floating-poin    
111 For example, if the instruction being emulated    
112 floating-point Operand Error exception, then t    
113 executes an FMUL of a zero and an infinity to     
114 exception. Although the FPIAR will be undefine    
115 Operand Error exception handler, the user will    
116 to record that the event occurred.                
117                                                   
118 Miscellaneous:                                    
119 --------------                                    
120 The package does not attempt to correctly emul    
121 with Signalling NAN inputs. Use of SNANs shoul    
122 this package.                                     
123                                                   
124 The fabs/fadd/fdiv/fint/fintrz/fmul/fneg/fsqrt    
125 are provided for the convenience of older comp    
126 subroutine calls for all fp instructions. The     
127 the instruction but rather simply executes it.    
128                                                   
129 68060FPLSP entry points:                          
130 ------------------------                          
131 _060FPLSP_TOP:                                    
132 0x000:  _060LSP__facoss_                          
133 0x008:  _060LSP__facosd_                          
134 0x010:  _060LSP__facosx_                          
135 0x018:  _060LSP__fasins_                          
136 0x020:  _060LSP__fasind_                          
137 0x028:  _060LSP__fasinx_                          
138 0x030:  _060LSP__fatans_                          
139 0x038:  _060LSP__fatand_                          
140 0x040:  _060LSP__fatanx_                          
141 0x048:  _060LSP__fatanhs_                         
142 0x050:  _060LSP__fatanhd_                         
143 0x058:  _060LSP__fatanhx_                         
144 0x060:  _060LSP__fcoss_                           
145 0x068:  _060LSP__fcosd_                           
146 0x070:  _060LSP__fcosx_                           
147 0x078:  _060LSP__fcoshs_                          
148 0x080:  _060LSP__fcoshd_                          
149 0x088:  _060LSP__fcoshx_                          
150 0x090:  _060LSP__fetoxs_                          
151 0x098:  _060LSP__fetoxd_                          
152 0x0a0:  _060LSP__fetoxx_                          
153 0x0a8:  _060LSP__fetoxm1s_                        
154 0x0b0:  _060LSP__fetoxm1d_                        
155 0x0b8:  _060LSP__fetoxm1x_                        
156 0x0c0:  _060LSP__fgetexps_                        
157 0x0c8:  _060LSP__fgetexpd_                        
158 0x0d0:  _060LSP__fgetexpx_                        
159 0x0d8:  _060LSP__fgetmans_                        
160 0x0e0:  _060LSP__fgetmand_                        
161 0x0e8:  _060LSP__fgetmanx_                        
162 0x0f0:  _060LSP__flog10s_                         
163 0x0f8:  _060LSP__flog10d_                         
164 0x100:  _060LSP__flog10x_                         
165 0x108:  _060LSP__flog2s_                          
166 0x110:  _060LSP__flog2d_                          
167 0x118:  _060LSP__flog2x_                          
168 0x120:  _060LSP__flogns_                          
169 0x128:  _060LSP__flognd_                          
170 0x130:  _060LSP__flognx_                          
171 0x138:  _060LSP__flognp1s_                        
172 0x140:  _060LSP__flognp1d_                        
173 0x148:  _060LSP__flognp1x_                        
174 0x150:  _060LSP__fmods_                           
175 0x158:  _060LSP__fmodd_                           
176 0x160:  _060LSP__fmodx_                           
177 0x168:  _060LSP__frems_                           
178 0x170:  _060LSP__fremd_                           
179 0x178:  _060LSP__fremx_                           
180 0x180:  _060LSP__fscales_                         
181 0x188:  _060LSP__fscaled_                         
182 0x190:  _060LSP__fscalex_                         
183 0x198:  _060LSP__fsins_                           
184 0x1a0:  _060LSP__fsind_                           
185 0x1a8:  _060LSP__fsinx_                           
186 0x1b0:  _060LSP__fsincoss_                        
187 0x1b8:  _060LSP__fsincosd_                        
188 0x1c0:  _060LSP__fsincosx_                        
189 0x1c8:  _060LSP__fsinhs_                          
190 0x1d0:  _060LSP__fsinhd_                          
191 0x1d8:  _060LSP__fsinhx_                          
192 0x1e0:  _060LSP__ftans_                           
193 0x1e8:  _060LSP__ftand_                           
194 0x1f0:  _060LSP__ftanx_                           
195 0x1f8:  _060LSP__ftanhs_                          
196 0x200:  _060LSP__ftanhd_                          
197 0x208:  _060LSP__ftanhx_                          
198 0x210:  _060LSP__ftentoxs_                        
199 0x218:  _060LSP__ftentoxd_                        
200 0x220:  _060LSP__ftentoxx_                        
201 0x228:  _060LSP__ftwotoxs_                        
202 0x230:  _060LSP__ftwotoxd_                        
203 0x238:  _060LSP__ftwotoxx_                        
204                                                   
205 0x240:  _060LSP__fabss_                           
206 0x248:  _060LSP__fabsd_                           
207 0x250:  _060LSP__fabsx_                           
208 0x258:  _060LSP__fadds_                           
209 0x260:  _060LSP__faddd_                           
210 0x268:  _060LSP__faddx_                           
211 0x270:  _060LSP__fdivs_                           
212 0x278:  _060LSP__fdivd_                           
213 0x280:  _060LSP__fdivx_                           
214 0x288:  _060LSP__fints_                           
215 0x290:  _060LSP__fintd_                           
216 0x298:  _060LSP__fintx_                           
217 0x2a0:  _060LSP__fintrzs_                         
218 0x2a8:  _060LSP__fintrzd_                         
219 0x2b0:  _060LSP__fintrzx_                         
220 0x2b8:  _060LSP__fmuls_                           
221 0x2c0:  _060LSP__fmuld_                           
222 0x2c8:  _060LSP__fmulx_                           
223 0x2d0:  _060LSP__fnegs_                           
224 0x2d8:  _060LSP__fnegd_                           
225 0x2e0:  _060LSP__fnegx_                           
226 0x2e8:  _060LSP__fsqrts_                          
227 0x2f0:  _060LSP__fsqrtd_                          
228 0x2f8:  _060LSP__fsqrtx_                          
229 0x300:  _060LSP__fsubs_                           
230 0x308:  _060LSP__fsubd_                           
231 0x310:  _060LSP__fsubx_                           
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php