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

TOMOYO Linux Cross Reference
Linux/arch/sparc/kernel/misctrap.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/sparc/kernel/misctrap.S (Architecture i386) and /arch/sparc/kernel/misctrap.S (Architecture sparc)


  1 /* SPDX-License-Identifier: GPL-2.0 */              1 /* SPDX-License-Identifier: GPL-2.0 */
  2 #ifdef CONFIG_KGDB                                  2 #ifdef CONFIG_KGDB
  3         .globl          arch_kgdb_breakpoint        3         .globl          arch_kgdb_breakpoint
  4         .type           arch_kgdb_breakpoint,#      4         .type           arch_kgdb_breakpoint,#function
  5 arch_kgdb_breakpoint:                               5 arch_kgdb_breakpoint:
  6         ta              0x72                        6         ta              0x72
  7         retl                                        7         retl
  8          nop                                        8          nop
  9         .size           arch_kgdb_breakpoint,.      9         .size           arch_kgdb_breakpoint,.-arch_kgdb_breakpoint
 10 #endif                                             10 #endif
 11                                                    11 
 12         .type           __do_privact,#function     12         .type           __do_privact,#function
 13 __do_privact:                                      13 __do_privact:
 14         mov             TLB_SFSR, %g3              14         mov             TLB_SFSR, %g3
 15         stxa            %g0, [%g3] ASI_DMMU        15         stxa            %g0, [%g3] ASI_DMMU     ! Clear FaultValid bit
 16         membar          #Sync                      16         membar          #Sync
 17         sethi           %hi(109f), %g7             17         sethi           %hi(109f), %g7
 18         ba,pt           %xcc, etrap                18         ba,pt           %xcc, etrap
 19 109:    or              %g7, %lo(109b), %g7        19 109:    or              %g7, %lo(109b), %g7
 20         call            do_privact                 20         call            do_privact
 21          add            %sp, PTREGS_OFF, %o0       21          add            %sp, PTREGS_OFF, %o0
 22         ba,a,pt         %xcc, rtrap                22         ba,a,pt         %xcc, rtrap
 23         .size           __do_privact,.-__do_pr     23         .size           __do_privact,.-__do_privact
 24                                                    24 
 25         .type           do_mna,#function           25         .type           do_mna,#function
 26 do_mna:                                            26 do_mna:
 27         rdpr            %tl, %g3                   27         rdpr            %tl, %g3
 28         cmp             %g3, 1                     28         cmp             %g3, 1
 29                                                    29 
 30         /* Setup %g4/%g5 now as they are used      30         /* Setup %g4/%g5 now as they are used in the
 31          * winfixup code.                          31          * winfixup code.
 32          */                                        32          */
 33         mov             TLB_SFSR, %g3              33         mov             TLB_SFSR, %g3
 34         mov             DMMU_SFAR, %g4             34         mov             DMMU_SFAR, %g4
 35         ldxa            [%g4] ASI_DMMU, %g4        35         ldxa            [%g4] ASI_DMMU, %g4
 36         ldxa            [%g3] ASI_DMMU, %g5        36         ldxa            [%g3] ASI_DMMU, %g5
 37         stxa            %g0, [%g3] ASI_DMMU        37         stxa            %g0, [%g3] ASI_DMMU     ! Clear FaultValid bit
 38         membar          #Sync                      38         membar          #Sync
 39         bgu,pn          %icc, winfix_mna           39         bgu,pn          %icc, winfix_mna
 40          rdpr           %tpc, %g3                  40          rdpr           %tpc, %g3
 41                                                    41 
 42 1:      sethi           %hi(109f), %g7             42 1:      sethi           %hi(109f), %g7
 43         ba,pt           %xcc, etrap                43         ba,pt           %xcc, etrap
 44 109:     or             %g7, %lo(109b), %g7        44 109:     or             %g7, %lo(109b), %g7
 45         mov             %l4, %o1                   45         mov             %l4, %o1
 46         mov             %l5, %o2                   46         mov             %l5, %o2
 47         call            mem_address_unaligned      47         call            mem_address_unaligned
 48          add            %sp, PTREGS_OFF, %o0       48          add            %sp, PTREGS_OFF, %o0
 49         ba,a,pt         %xcc, rtrap                49         ba,a,pt         %xcc, rtrap
 50         .size           do_mna,.-do_mna            50         .size           do_mna,.-do_mna
 51                                                    51 
 52         .type           do_lddfmna,#function       52         .type           do_lddfmna,#function
 53 do_lddfmna:                                        53 do_lddfmna:
 54         sethi           %hi(109f), %g7             54         sethi           %hi(109f), %g7
 55         mov             TLB_SFSR, %g4              55         mov             TLB_SFSR, %g4
 56         ldxa            [%g4] ASI_DMMU, %g5        56         ldxa            [%g4] ASI_DMMU, %g5
 57         stxa            %g0, [%g4] ASI_DMMU        57         stxa            %g0, [%g4] ASI_DMMU     ! Clear FaultValid bit
 58         membar          #Sync                      58         membar          #Sync
 59         mov             DMMU_SFAR, %g4             59         mov             DMMU_SFAR, %g4
 60         ldxa            [%g4] ASI_DMMU, %g4        60         ldxa            [%g4] ASI_DMMU, %g4
 61         ba,pt           %xcc, etrap                61         ba,pt           %xcc, etrap
 62 109:     or             %g7, %lo(109b), %g7        62 109:     or             %g7, %lo(109b), %g7
 63         mov             %l4, %o1                   63         mov             %l4, %o1
 64         mov             %l5, %o2                   64         mov             %l5, %o2
 65         call            handle_lddfmna             65         call            handle_lddfmna
 66          add            %sp, PTREGS_OFF, %o0       66          add            %sp, PTREGS_OFF, %o0
 67         ba,a,pt         %xcc, rtrap                67         ba,a,pt         %xcc, rtrap
 68         .size           do_lddfmna,.-do_lddfmn     68         .size           do_lddfmna,.-do_lddfmna
 69                                                    69 
 70         .type           do_stdfmna,#function       70         .type           do_stdfmna,#function
 71 do_stdfmna:                                        71 do_stdfmna:
 72         sethi           %hi(109f), %g7             72         sethi           %hi(109f), %g7
 73         mov             TLB_SFSR, %g4              73         mov             TLB_SFSR, %g4
 74         ldxa            [%g4] ASI_DMMU, %g5        74         ldxa            [%g4] ASI_DMMU, %g5
 75         stxa            %g0, [%g4] ASI_DMMU        75         stxa            %g0, [%g4] ASI_DMMU     ! Clear FaultValid bit
 76         membar          #Sync                      76         membar          #Sync
 77         mov             DMMU_SFAR, %g4             77         mov             DMMU_SFAR, %g4
 78         ldxa            [%g4] ASI_DMMU, %g4        78         ldxa            [%g4] ASI_DMMU, %g4
 79         ba,pt           %xcc, etrap                79         ba,pt           %xcc, etrap
 80 109:     or             %g7, %lo(109b), %g7        80 109:     or             %g7, %lo(109b), %g7
 81         mov             %l4, %o1                   81         mov             %l4, %o1
 82         mov             %l5, %o2                   82         mov             %l5, %o2
 83         call            handle_stdfmna             83         call            handle_stdfmna
 84          add            %sp, PTREGS_OFF, %o0       84          add            %sp, PTREGS_OFF, %o0
 85         ba,a,pt         %xcc, rtrap                85         ba,a,pt         %xcc, rtrap
 86          nop                                       86          nop
 87         .size           do_stdfmna,.-do_stdfmn     87         .size           do_stdfmna,.-do_stdfmna
 88                                                    88 
 89         .type           breakpoint_trap,#funct     89         .type           breakpoint_trap,#function
 90 breakpoint_trap:                                   90 breakpoint_trap:
 91         call            sparc_breakpoint           91         call            sparc_breakpoint
 92          add            %sp, PTREGS_OFF, %o0       92          add            %sp, PTREGS_OFF, %o0
 93         ba,pt           %xcc, rtrap                93         ba,pt           %xcc, rtrap
 94          nop                                       94          nop
 95         .size           breakpoint_trap,.-brea     95         .size           breakpoint_trap,.-breakpoint_trap
                                                      

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