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

TOMOYO Linux Cross Reference
Linux/arch/sh/lib/ashlsi3.S

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/sh/lib/ashlsi3.S (Architecture sparc) and /arch/sparc64/lib/ashlsi3.S (Architecture sparc64)


  1 /* SPDX-License-Identifier: GPL-2.0+ WITH GCC-    
  2                                                   
  3    Copyright (C) 1994, 1995, 1997, 1998, 1999,    
  4    2004, 2005, 2006                               
  5    Free Software Foundation, Inc.                 
  6 */                                                
  7                                                   
  8 !! libgcc routines for the Renesas / SuperH SH    
  9 !! Contributed by Steve Chamberlain.              
 10 !! sac@cygnus.com                                 
 11                                                   
 12 !! ashiftrt_r4_x, ___ashrsi3, ___ashlsi3, ___l    
 13 !! recoded in assembly by Toshiyasu Morita        
 14 !! tm@netcom.com                                  
 15                                                   
 16 /* SH2 optimizations for ___ashrsi3, ___ashlsi    
 17    ELF local label prefixes by J"orn Rennecke     
 18    amylaar@cygnus.com  */                         
 19                                                   
 20 !                                                 
 21 ! __ashlsi3                                       
 22 !                                                 
 23 ! Entry:                                          
 24 !                                                 
 25 ! r4: Value to shift                              
 26 ! r5: Shifts                                      
 27 !                                                 
 28 ! Exit:                                           
 29 !                                                 
 30 ! r0: Result                                      
 31 !                                                 
 32 ! Destroys:                                       
 33 !                                                 
 34 ! (none)                                          
 35 !                                                 
 36 ! __ashlsi3_r0                                    
 37 !                                                 
 38 ! Entry:                                          
 39 !                                                 
 40 ! r4: Value to shift                              
 41 ! r0: Shifts                                      
 42 !                                                 
 43 ! Exit:                                           
 44 !                                                 
 45 ! r0: Result                                      
 46 !                                                 
 47 ! Destroys:                                       
 48 !                                                 
 49 ! (none)                                          
 50                                                   
 51                                                   
 52         .global __ashlsi3                         
 53         .global __ashlsi3_r0                      
 54                                                   
 55         .align  2                                 
 56 __ashlsi3:                                        
 57         mov     r5,r0                             
 58         .align  2                                 
 59 __ashlsi3_r0:                                     
 60         and     #31,r0                            
 61         mov.l   r4,@-r15                          
 62         mov     r0,r4                             
 63         mova    ashlsi3_table,r0                  
 64         mov.b   @(r0,r4),r4                       
 65         add     r4,r0                             
 66         jmp     @r0                               
 67         mov.l   @r15+,r0                          
 68                                                   
 69         .align  2                                 
 70 ashlsi3_table:                                    
 71         .byte           ashlsi3_0-ashlsi3_tabl    
 72         .byte           ashlsi3_1-ashlsi3_tabl    
 73         .byte           ashlsi3_2-ashlsi3_tabl    
 74         .byte           ashlsi3_3-ashlsi3_tabl    
 75         .byte           ashlsi3_4-ashlsi3_tabl    
 76         .byte           ashlsi3_5-ashlsi3_tabl    
 77         .byte           ashlsi3_6-ashlsi3_tabl    
 78         .byte           ashlsi3_7-ashlsi3_tabl    
 79         .byte           ashlsi3_8-ashlsi3_tabl    
 80         .byte           ashlsi3_9-ashlsi3_tabl    
 81         .byte           ashlsi3_10-ashlsi3_tab    
 82         .byte           ashlsi3_11-ashlsi3_tab    
 83         .byte           ashlsi3_12-ashlsi3_tab    
 84         .byte           ashlsi3_13-ashlsi3_tab    
 85         .byte           ashlsi3_14-ashlsi3_tab    
 86         .byte           ashlsi3_15-ashlsi3_tab    
 87         .byte           ashlsi3_16-ashlsi3_tab    
 88         .byte           ashlsi3_17-ashlsi3_tab    
 89         .byte           ashlsi3_18-ashlsi3_tab    
 90         .byte           ashlsi3_19-ashlsi3_tab    
 91         .byte           ashlsi3_20-ashlsi3_tab    
 92         .byte           ashlsi3_21-ashlsi3_tab    
 93         .byte           ashlsi3_22-ashlsi3_tab    
 94         .byte           ashlsi3_23-ashlsi3_tab    
 95         .byte           ashlsi3_24-ashlsi3_tab    
 96         .byte           ashlsi3_25-ashlsi3_tab    
 97         .byte           ashlsi3_26-ashlsi3_tab    
 98         .byte           ashlsi3_27-ashlsi3_tab    
 99         .byte           ashlsi3_28-ashlsi3_tab    
100         .byte           ashlsi3_29-ashlsi3_tab    
101         .byte           ashlsi3_30-ashlsi3_tab    
102         .byte           ashlsi3_31-ashlsi3_tab    
103                                                   
104 ashlsi3_6:                                        
105         shll2   r0                                
106 ashlsi3_4:                                        
107         shll2   r0                                
108 ashlsi3_2:                                        
109         rts                                       
110         shll2   r0                                
111                                                   
112 ashlsi3_7:                                        
113         shll2   r0                                
114 ashlsi3_5:                                        
115         shll2   r0                                
116 ashlsi3_3:                                        
117         shll2   r0                                
118 ashlsi3_1:                                        
119         rts                                       
120         shll    r0                                
121                                                   
122 ashlsi3_14:                                       
123         shll2   r0                                
124 ashlsi3_12:                                       
125         shll2   r0                                
126 ashlsi3_10:                                       
127         shll2   r0                                
128 ashlsi3_8:                                        
129         rts                                       
130         shll8   r0                                
131                                                   
132 ashlsi3_15:                                       
133         shll2   r0                                
134 ashlsi3_13:                                       
135         shll2   r0                                
136 ashlsi3_11:                                       
137         shll2   r0                                
138 ashlsi3_9:                                        
139         shll8   r0                                
140         rts                                       
141         shll    r0                                
142                                                   
143 ashlsi3_22:                                       
144         shll2   r0                                
145 ashlsi3_20:                                       
146         shll2   r0                                
147 ashlsi3_18:                                       
148         shll2   r0                                
149 ashlsi3_16:                                       
150         rts                                       
151         shll16  r0                                
152                                                   
153 ashlsi3_23:                                       
154         shll2   r0                                
155 ashlsi3_21:                                       
156         shll2   r0                                
157 ashlsi3_19:                                       
158         shll2   r0                                
159 ashlsi3_17:                                       
160         shll16  r0                                
161         rts                                       
162         shll    r0                                
163                                                   
164 ashlsi3_30:                                       
165         shll2   r0                                
166 ashlsi3_28:                                       
167         shll2   r0                                
168 ashlsi3_26:                                       
169         shll2   r0                                
170 ashlsi3_24:                                       
171         shll16  r0                                
172         rts                                       
173         shll8   r0                                
174                                                   
175 ashlsi3_31:                                       
176         shll2   r0                                
177 ashlsi3_29:                                       
178         shll2   r0                                
179 ashlsi3_27:                                       
180         shll2   r0                                
181 ashlsi3_25:                                       
182         shll16  r0                                
183         shll8   r0                                
184         rts                                       
185         shll    r0                                
186                                                   
187 ashlsi3_0:                                        
188         rts                                       
189         nop                                       
                                                      

~ [ 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