Lines Matching refs:scr1

233 #define	TRACE_PTR(ptr, scr1)				\  argument
238 rdpr %pstate, scr1; \
239 andcc scr1, PSTATE_IE | PSTATE_AM, scr1; \
243 CPU_INDEX(scr1, ptr); \
244 sll scr1, TRAPTR_SIZE_SHIFT, scr1; \
246 add ptr, scr1, scr1; \
248 stb ptr, [scr1 + TRAPTR_ASIBUF]; \
253 ld [scr1 + TRAPTR_LIMIT], ptr; \
258 ldx [scr1 + TRAPTR_PBASE], ptr; \
259 ld [scr1 + TRAPTR_OFFSET], scr1; \
261 add ptr, scr1, ptr;
270 #define TRACE_NEXT(scr1, scr2, scr3) \ argument
271 CPU_INDEX(scr2, scr1); \
273 set trap_trace_ctl, scr1; \
274 add scr1, scr2, scr2; \
275 ldub [scr2 + TRAPTR_ASIBUF], scr1; \
276 wr %g0, scr1, %asi; \
277 sethi %hi(trap_freeze), scr1; \
278 ld [scr1 + %lo(trap_freeze)], scr1; \
280 brnz scr1, .+36; /* skip update on freeze */ \
281 ld [scr2 + TRAPTR_OFFSET], scr1; \
283 st scr1, [scr2 + TRAPTR_LAST_OFFSET]; \
284 add scr1, TRAP_ENT_SIZE, scr1; \
286 cmp scr1, scr3; \
287 movge %icc, 0, scr1; \
288 st scr1, [scr2 + TRAPTR_OFFSET];
293 #define TRACE_SAVE_TL_GL_REGS(addr, scr1) \ argument
294 rdpr %tl, scr1; \
295 stba scr1, [addr + TRAP_ENT_TL]%asi; \
296 rdpr %gl, scr1; \
297 stba scr1, [addr + TRAP_ENT_GL]%asi
318 #define TRACE_RTT(code, scr1, scr2, scr3, scr4) \ argument
322 TRACE_PTR(scr1, scr2); \
324 stxa scr2, [scr1 + TRAP_ENT_TICK]%asi; \
325 TRACE_SAVE_TL_GL_REGS(scr1, scr2); \
327 stha scr2, [scr1 + TRAP_ENT_TT]%asi; \
329 stna scr2, [scr1 + TRAP_ENT_TPC]%asi; \
331 stxa scr2, [scr1 + TRAP_ENT_TSTATE]%asi; \
332 stna %sp, [scr1 + TRAP_ENT_SP]%asi; \
333 stna %l6, [scr1 + TRAP_ENT_TR]%asi; \
334 stna %l7, [scr1 + TRAP_ENT_F1]%asi; \
337 stna scr2, [scr1 + TRAP_ENT_F2]%asi; \
338 stna %g0, [scr1 + TRAP_ENT_F3]%asi; \
340 stna scr2, [scr1 + TRAP_ENT_F4]%asi; \
341 TRACE_NEXT(scr1, scr2, scr3); \
348 #define TRACE_WIN_INFO(code, scr1, scr2, scr3) \ argument
349 TRACE_PTR(scr1, scr2); \
351 stxa scr2, [scr1 + TRAP_ENT_TICK]%asi; \
352 TRACE_SAVE_TL_GL_REGS(scr1, scr2); \
356 stha scr2, [scr1 + TRAP_ENT_TT]%asi; \
358 stxa scr2, [scr1 + TRAP_ENT_TSTATE]%asi; \
359 stna %sp, [scr1 + TRAP_ENT_SP]%asi; \
361 stna scr2, [scr1 + TRAP_ENT_TPC]%asi; \
363 stna scr2, [scr1 + TRAP_ENT_TR]%asi; \
365 stna scr2, [scr1 + TRAP_ENT_F1]%asi; \
373 stna scr2, [scr1 + TRAP_ENT_F2]%asi; \
381 stna scr2, [scr1 + TRAP_ENT_F3]%asi; \
382 stna %o7, [scr1 + TRAP_ENT_F4]%asi; \
383 TRACE_NEXT(scr1, scr2, scr3)
387 #define FAULT_WINTRACE(scr1, scr2, scr3, type) \ argument
388 TRACE_PTR(scr1, scr2); \
390 stxa scr2, [scr1 + TRAP_ENT_TICK]%asi; \
391 TRACE_SAVE_TL_GL_REGS(scr1, scr2); \
393 stha scr2, [scr1 + TRAP_ENT_TT]%asi; \
395 stna scr2, [scr1 + TRAP_ENT_TPC]%asi; \
397 stxa scr2, [scr1 + TRAP_ENT_TSTATE]%asi; \
398 stna %sp, [scr1 + TRAP_ENT_SP]%asi; \
399 stna %g0, [scr1 + TRAP_ENT_TR]%asi; \
400 stna %g0, [scr1 + TRAP_ENT_F1]%asi; \
401 stna %g4, [scr1 + TRAP_ENT_F2]%asi; \
403 stna scr2, [scr1 + TRAP_ENT_F3]%asi; \
404 stna %g0, [scr1 + TRAP_ENT_F4]%asi; \
405 TRACE_NEXT(scr1, scr2, scr3)
409 #define SYSTRAP_TRACE(scr1, scr2, scr3) \ argument
410 TRACE_PTR(scr1, scr2); \
412 stxa scr2, [scr1 + TRAP_ENT_TICK]%asi; \
413 TRACE_SAVE_TL_GL_REGS(scr1, scr2); \
417 stha scr2, [scr1 + TRAP_ENT_TT]%asi; \
419 stna scr2, [scr1 + TRAP_ENT_TPC]%asi; \
421 stxa scr2, [scr1 + TRAP_ENT_TSTATE]%asi; \
422 stna %g1, [scr1 + TRAP_ENT_SP]%asi; \
423 stna %g2, [scr1 + TRAP_ENT_TR]%asi; \
424 stna %g3, [scr1 + TRAP_ENT_F1]%asi; \
425 stna %g4, [scr1 + TRAP_ENT_F2]%asi; \
427 stna scr2, [scr1 + TRAP_ENT_F3]%asi; \
429 stna scr2, [scr1 + TRAP_ENT_F4]%asi; \
430 TRACE_NEXT(scr1, scr2, scr3)
434 #define FAULT_WINTRACE(scr1, scr2, scr3, type) argument
435 #define SYSTRAP_TRACE(scr1, scr2, scr3) argument