/illumos-gate/usr/src/lib/libc/sparc/sys/ |
H A D | vforkx.s | 100 ld [%g7 + UL_VFORK], %g1 101 brnz,a,pt %g1, 3f /* don't let it go negative */ 102 sub %g1, 1, %g1 /* curthread->ul_vfork--; */ 106 add %g1, 1, %g1 /* curthread->ul_vfork++; */ 108 st %g1, [%g7 + UL_VFORK]
|
H A D | door.s | 90 ld [%sp + DOOR_SERVERS], %g1 /* (delay) load nservers */ 100 tst %g1 /* test nservers */ 115 ldn [%sp + DOOR_PC], %g1 116 jmpl %g1, %o7 140 PIC_SETUP(g1) 144 ldn [%g1 + %g5], %g1 146 ldn [%g1 + door_create_pid], %g1 148 ld [%g1], [all...] |
/illumos-gate/usr/src/uts/sun4v/ml/ |
H A D | mach_xc.s | 73 rdpr %tnpc, %g1 74 wrpr %g1, %tpc ! PC <- TNPC[TL] 75 add %g1, 4, %g1 76 wrpr %g1, %tnpc ! nPC <- TNPC[TL] + 4 101 mov %o1, %g1 120 rdpr %pstate, %g1 121 andn %g1, PSTATE_IE | PSTATE_AM, %g2 138 stxa %g1, [%g3 + TRAP_ENT_TSTATE]%asi /* tstate = pstate */ 188 wrpr %g0, %g1, [all...] |
H A D | trap_table.s | 82 * %g1 kernel trap handler 126 set trap, %g1 ;\ 136 mov PTL1_BAD_TRAP, %g1 ;\ 162 set trap, %g1 ;\ 182 set (which), %g1 ;\ 228 rdpr %tstate, %g1 ;\ 229 btst TSTATE_PRIV, %g1 ;\ 232 set trap, %g1 ;\ 243 set dtrace_pid_probe, %g1 ;\ 250 set dtrace_return_probe, %g1 ;\ [all...] |
H A D | mach_interrupt.s | 67 ! %g1 arg 1 81 CPU_ADDR(%g1,%g2) 82 add %g1, CPU_MCPU, %g2 95 ! %g1 arg 1 100 ldxa [%g3 + %g6]ASI_MEM, %g1 ! read data word 1 122 stna %g1, [%g4 + TRAP_ENT_F1]%asi ! arg1 180 mov PTL1_BAD_HCALL, %g1 221 ! %g1 arg 1 235 CPU_ADDR(%g1,%g2) 236 add %g1, CPU_MCP [all...] |
/illumos-gate/usr/src/lib/libc/sparcv9/gen/ |
H A D | strlcpy.s | 86 and %l0, 3, %g1 ! dst<1:0> to examine offset 88 cmp %g1, 1 ! dst offset of 1 or 5 93 cmp %g1, 3 ! dst offset of 3 or 7 95 cmp %g1, 2 ! dst halfword aligned ? 106 andn %i5, %l1, %g1 ! ~dword & 0x8080808080808080 108 andcc %l0, %g1, %g0 ! ((dword - 0x0101010101010101) & ~dword & 0x8080808080808080) 119 srlx %l1, 56, %g1 ! first byte 120 andcc %g1, 0xff, %g0 ! end of string ? 122 stb %g1, [%i2] ! store it 124 srlx %l1, 48, %g1 ! secon [all...] |
H A D | strcpy.s | 72 sub %g0, %o1, %g1 ! %g1<2:0> = # of unaligned bytes 80 andcc %g1, 2, %g0 ! need to copy half-word ? 94 andcc %g1, 4, %g0 ! need to copy word ? 135 andn %o5, %o1, %g1 ! ~dword & 0x8080808080808080 137 andcc %g4, %g1, %g0 ! ((dword - 0x0101010101010101) & ~dword & 0x8080808080808080) 187 andn %o5, %o1, %g1 ! ~x & 0x8080808080808080 189 andcc %g4, %g1, %g0 ! ((x - 0x0101010101010101) & ~x & 0x8080808080808080) 191 srlx %o1, 56, %g1 ! %g1< [all...] |
H A D | strcmp.s | 74 ldub [%o1], %g1 ! s2[] 75 subcc %o0, %g1, %o0 ! s1[] != s2[] ? 77 addcc %o0, %g1, %g0 ! s1[] == 0 ? 89 orn %g0, %g0, %g1 ! all ones 91 srlx %g1, %g5, %g1 ! mask for fixing up bytes 93 orn %o0, %g1, %o0 ! force start bytes to non-zero 95 sllx %o0, %g5, %g1 ! partial unaligned word from s2 108 or %g1, %o3, %g1 ! merg [all...] |
/illumos-gate/usr/src/lib/libc/sparc/gen/ |
H A D | strlcpy.s | 84 andcc %l0, 3, %g1 ! word aligned? 92 andn %i5, %l1, %g1 ! ~word & 0x80808080 94 andcc %l0, %g1, %g0 ! doit 100 srl %l1, 24, %g1 ! 1st byte 101 andcc %g1, 0xff, %g0 ! test for end 103 stb %g1, [%i2] ! store byte 105 srl %l1, 16, %g1 ! 2nd byte 106 andcc %g1, 0xff, %g0 ! zero byte ? 108 stb %g1, [%i2] ! store byte 110 srl %l1, 8, %g1 ! [all...] |
H A D | strcpy.s | 102 andn %o5, %o1, %g1 ! ~word & 0x80808080 104 andcc %o1, %g1, %g0 ! ((word - 0x01010101) & ~word & 0x80808080) 139 sub %o1, %o4, %g1 ! x - 0x01010101 140 andn %g1, %o1, %g1 ! (x - 0x01010101) & ~x 141 andcc %g1, %o5, %g0 ! ((x - 0x01010101) & ~x & 0x80808080) 143 srl %o1, 24, %g1 ! %g1<7:0> = first byte 144 stb %g1, [%o2 - 4] ! store first byte; half-word aligned now 145 srl %o1, 8, %g1 ! [all...] |
/illumos-gate/usr/src/uts/common/io/nxge/ |
H A D | nxge_hcall.s | 281 mov %o2, %g1 285 stx %o1, [%g1] 306 mov %o2, %g1 310 stx %o1, [%g1] 320 mov %o2, %g1 324 stw %o1, [%g1] 342 mov %o1, %g1 346 stx %o1, [%g1] 355 mov %o1, %g1 359 stx %o1, [%g1] [all...] |
/illumos-gate/usr/src/uts/sun4u/io/pci/ |
H A D | pci_asm.s | 75 movz %xcc, ASI_IOL, %g1 ! Big/little endian physical space 76 movnz %xcc, ASI_IO, %g1 77 mov %g1, %asi 82 ldxa [%o1]%asi, %g1 84 stx %g1, [%o2] 89 lduwa [%o1]%asi, %g1 91 stuw %g1, [%o2] 96 lduha [%o1]%asi, %g1 98 stuh %g1, [%o2] 101 lduba [%o1]%asi, %g1 ! [all...] |
/illumos-gate/usr/src/uts/sun4v/io/ |
H A D | vnet_dds_hcall.s | 80 mov %o1, %g1 84 stx %o1, [%g1] 93 mov %o1, %g1 97 stx %o1, [%g1] 104 mov %o1, %g1 108 stx %o1, [%g1]
|
/illumos-gate/usr/src/uts/sfmmu/ml/ |
H A D | sfmmu_asm.s | 572 PANIC_IF_INTR_DISABLED_PSTR(%o0, sfmmu_di_l0, %g1) 610 sethi %hi(ksfmmup), %g1 611 ldx [%g1 + %lo(ksfmmup)], %g1 612 cmp %g1, %o0 616 sethi %hi(panicstr), %g1 ! if kernel as, panic 617 ldx [%g1 + %lo(panicstr)], %g1 618 tst %g1 631 PANIC_IF_INTR_ENABLED_PSTR(sfmmu_ei_l1, %g1) [all...] |
H A D | sfmmu_kdi.s | 64 * Parameters: %g1: VA, %g2: sfmmup, %g4: hmeshift 70 srlx %g1, %g4, %g4; /* va >> hmeshift */ \ 110 * Parameters: %g1: VA, %g3: rehash 123 srlx %g1, %g5, %g6; \ 204 * Parameters: %g1: VA, %g4: hmeblk PA 205 * Scratch: %g1, %g2, %g3, %g4, %g5, %g6 available 216 clr %g1; \ 217 srlx %g1, MMU_PAGESHIFT, %g1; \ 218 and %g1, NHMENT [all...] |
/illumos-gate/usr/src/uts/sun4u/ml/ |
H A D | mach_interrupt.s | 90 mov MMU_PCONTEXT, %g1 91 ldxa [%g1]ASI_DMMU, %g1 92 srlx %g1, CTXREG_NEXT_SHIFT, %g3 96 btst %g4, %g1 99 xor %g3, %g1, %g3 ! user: clr N_pgsz0/1 bits 101 set DEMAP_ALL_TYPE, %g1 102 stxa %g0, [%g1]ASI_DTLB_DEMAP 103 stxa %g0, [%g1]ASI_ITLB_DEMAP 104 mov MMU_PCONTEXT, %g1 [all...] |
H A D | trap_table.s | 81 * %g1 kernel trap handler 125 set trap, %g1 ;\ 157 set trap, %g1 ;\ 177 set (which), %g1 ;\ 199 set trap, %g1 ;\ 235 rdpr %tstate, %g1 ;\ 236 btst TSTATE_PRIV, %g1 ;\ 239 set trap, %g1 ;\ 250 set dtrace_pid_probe, %g1 ;\ 257 set dtrace_return_probe, %g1 ;\ [all...] |
/illumos-gate/usr/src/uts/sun4/brand/common/ |
H A D | brand_solaris.s | 87 * %g1: return point 99 jmp %g1; /* 64 bit process, bail out */ 105 * %g1: return point 117 jmp %g1; /* 32 bit process, bail out */ 125 * %g1: return point 150 mov %g1, %l2; /* save %g1 in %l2 */ 164 cmp %g1, 1024; /* is this a native syscall? */ 166 mov %g1, %l1; /* delay slot - grab syscall number */ 172 sub %g1, 102 [all...] |
/illumos-gate/usr/src/common/atomic/sparc/ |
H A D | atomic.s | 92 xor %o4, 0x3, %g1 ! %g1 = byte offset, right-to-left 93 sll %g1, 3, %g1 ! %g1 = bit offset, right-to-left 95 sll %o3, %g1, %o3 ! %o3 = shifted to bit offset 96 sll %o1, %g1, %o1 ! %o1 = shifted to bit offset 112 srl %o5, %g1, %o0 ! %o0 = new value 164 xor %o4, 0x2, %g1 ! %g1 [all...] |
/illumos-gate/usr/src/uts/sun4u/io/ |
H A D | panther_asm.s | 146 andn %o2, PSTATE_IE, %g1 147 wrpr %g0, %g1, %pstate ! disable interrupts 152 ldxa [%g0]ASI_DCU, %g1 ! save DCU in %g1 153 andn %g1, %o3, %g4 156 PARK_SIBLING_CORE(%g1, %o3, %o4) ! %g1 has DCU value 175 UNPARK_SIBLING_CORE(%g1, %o3, %o4) ! 7 instructions 179 stxa %g1, [%g0]ASI_DCU 218 andn %o2, PSTATE_IE, %g1 [all...] |
/illumos-gate/usr/src/common/atomic/sparcv9/ |
H A D | atomic.s | 213 xor %o4, 0x3, %g1 ! %g1 = byte offset, right-to-left 214 sll %g1, 3, %g1 ! %g1 = bit offset, right-to-left 216 sll %o3, %g1, %o3 ! %o3 = shifted to bit offset 217 sll %o1, %g1, %o1 ! %o1 = shifted to bit offset 233 srl %o5, %g1, %o0 ! %o0 = new value 285 xor %o4, 0x2, %g1 ! %g1 [all...] |
/illumos-gate/usr/src/cmd/mdb/sparc/v9/kmdb/ |
H A D | kaif_handlers.s | 189 * Returns tte in %g1 if successful, otherwise 0 in %g1 202 GET_MMU_D_ADDR_CTX(%g1, %g2) 204 KAIF_CALL_KDI_VATOTTE(%g1, %g2, kaif_hdlr_dmiss_patch, %g3, %g7) 205 0: brz %g1, 1f 219 KAIF_DTLB_STUFF(%g1, 1f, %g2, %g3, %g4, %g5) 239 stx %g1, [%g7 + .ecode-0b] 242 sethi %hi(kaif_dtrap), %g1 243 jmp %g1 + %lo(kaif_dtrap) 251 .ecode: .xword 0 /* sun4v: g1 contain [all...] |
/illumos-gate/usr/src/uts/sparc/dtrace/ |
H A D | dtrace_asm.s | 134 rdpr %otherwin, %g1 135 brz %g1, 3f 139 rdpr %otherwin, %g1 140 brnz %g1, 1b 208 rdpr %cwp, %g1 209 sub %g1, %o0, %g3 222 wrpr %g1, %cwp 285 rdpr %cwp, %g1 286 sub %g1, %o0, %g3 301 wrpr %g1, [all...] |
/illumos-gate/usr/src/uts/sun4v/cpu/ |
H A D | common_asm.s | 120 mov 1, %g1 121 sllx %g1, TICKINT_DIS_SHFT, %o0 177 RD_TICKCMPR(%g1,%o0,%o1,__LINE__) 179 srlx %g1, TICKINT_DIS_SHFT, %o0 330 GET_HRTIME(%g1,%o0,%o1,%o2,%o3,%o4,%o5,%g2,__LINE__) 331 ! %g1 = hrtime 333 mov %g1, %o0 337 GET_NATIVE_TIME(%g1,%o2,%o3,__LINE__) ! %g1 = native time 339 mov %g1, [all...] |
/illumos-gate/usr/src/uts/sparc/v9/ml/ |
H A D | syscall_trap.s | 73 ldn [THREAD_REG + T_CPU], %g1 ! get cpu pointer 85 ldx [%g1 + CPU_STATS_SYS_SYSCALL], %g2 87 stx %g2, [%g1 + CPU_STATS_SYS_SYSCALL] 112 GET_TRACE_TICK(%g1, %g2) 113 stxa %g1, [%g3 + TRAP_ENT_TICK]%asi 114 ldx [%l1 + G1_OFF], %g1 ! get syscall code 115 TRACE_SAVE_TL_VAL(%g3, %g1) 127 TRACE_NEXT(%g3, %g2, %g1) ! set new trace pointer 164 ldx [%l1 + G1_OFF], %g1 ! get code 166 cmp %g1, NSYSCAL [all...] |