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

TOMOYO Linux Cross Reference
Linux/arch/riscv/lib/tishift.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/riscv/lib/tishift.S (Version linux-6.12-rc7) and /arch/ppc/lib/tishift.S (Version linux-4.12.14)


  1 /* SPDX-License-Identifier: GPL-2.0-only */       
  2 /*                                                
  3  * Copyright (C) 2018 Free Software Foundation    
  4  */                                               
  5                                                   
  6 #include <linux/linkage.h>                        
  7 #include <linux/export.h>                         
  8                                                   
  9 SYM_FUNC_START(__lshrti3)                         
 10         beqz    a2, .L1                           
 11         li      a5,64                             
 12         sub     a5,a5,a2                          
 13         sext.w  a4,a5                             
 14         blez    a5, .L2                           
 15         sext.w  a2,a2                             
 16         srl     a0,a0,a2                          
 17         sll     a4,a1,a4                          
 18         srl     a2,a1,a2                          
 19         or      a0,a0,a4                          
 20         mv      a1,a2                             
 21 .L1:                                              
 22         ret                                       
 23 .L2:                                              
 24         negw    a0,a4                             
 25         li      a2,0                              
 26         srl     a0,a1,a0                          
 27         mv      a1,a2                             
 28         ret                                       
 29 SYM_FUNC_END(__lshrti3)                           
 30 EXPORT_SYMBOL(__lshrti3)                          
 31                                                   
 32 SYM_FUNC_START(__ashrti3)                         
 33         beqz    a2, .L3                           
 34         li      a5,64                             
 35         sub     a5,a5,a2                          
 36         sext.w  a4,a5                             
 37         blez    a5, .L4                           
 38         sext.w  a2,a2                             
 39         srl     a0,a0,a2                          
 40         sll     a4,a1,a4                          
 41         sra     a2,a1,a2                          
 42         or      a0,a0,a4                          
 43         mv      a1,a2                             
 44 .L3:                                              
 45         ret                                       
 46 .L4:                                              
 47         negw    a0,a4                             
 48         srai    a2,a1,0x3f                        
 49         sra     a0,a1,a0                          
 50         mv      a1,a2                             
 51         ret                                       
 52 SYM_FUNC_END(__ashrti3)                           
 53 EXPORT_SYMBOL(__ashrti3)                          
 54                                                   
 55 SYM_FUNC_START(__ashlti3)                         
 56         beqz    a2, .L5                           
 57         li      a5,64                             
 58         sub     a5,a5,a2                          
 59         sext.w  a4,a5                             
 60         blez    a5, .L6                           
 61         sext.w  a2,a2                             
 62         sll     a1,a1,a2                          
 63         srl     a4,a0,a4                          
 64         sll     a2,a0,a2                          
 65         or      a1,a1,a4                          
 66         mv      a0,a2                             
 67 .L5:                                              
 68         ret                                       
 69 .L6:                                              
 70         negw    a1,a4                             
 71         li      a2,0                              
 72         sll     a1,a0,a1                          
 73         mv      a0,a2                             
 74         ret                                       
 75 SYM_FUNC_END(__ashlti3)                           
 76 EXPORT_SYMBOL(__ashlti3)                          
                                                      

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