xcc
bnz,pt %xcc, label; \
bnz,pt %xcc, label; \
case xcc:
if ((opf_cc == icc) || (opf_cc == xcc)) {
bne %xcc, 3f
bnz,pt %xcc, 0b
bne,a %xcc, 2f; \
bne,a %xcc, 2f; /* if not running, we are done */ \
bz %xcc, 1b; /* if we are then go round again */ \
bne,a %xcc, 1b; /* ...the core running status reg. */ \
bz,pt %xcc, 1f; /* if nothing to unpark, we are done */ \
bne %xcc, 1f; \
bg,a %xcc, 1b; /* if so, start over with next way */ \
bne %xcc, 4f; \
bg,pt %xcc, 1b; \
bnz,pt %xcc, 1b; \
bg,pt %xcc, 1b; \
bne %xcc, 1f; \
bg,pt %xcc, 2b; \
bne %xcc, 2f; \
bne %xcc, 2f; \
bg,pt %xcc, 1b; \
blu,a,pn %xcc, label##f ;\
movneg %xcc, %g0, nslt; /* ignore neg delta from tick skew */ \
movneg %xcc, %g0, nslt; /* ignore neg delta from tick skew */ \
bne,a,pn %xcc, label; \
bgu,a,pt %xcc, label; \
blu,a,pt %xcc, label; \
bgeu %xcc, 9f; \
bnz,pt %xcc, label##4; /* if ref bit set-skip ahead */ \
bne,a,pn %xcc, label##2; \
bz,pn %xcc, exitlabel; /* exit if wr_perm not set */ \
bnz,pn %xcc, label##4; /* nothing to do */ \
bne,a,pn %xcc, label##2; \
bne,pn %xcc, label##1 /* branch if !match */ ;\
bne,pn %xcc, label##2 /* branch if !match */ ;\
ba,pt %xcc, label##2 ;\
movneg %xcc, %g0, nslt; /* ignore neg delta from tick skew */ \
movneg %xcc, %g0, nslt; /* ignore neg delta from tick skew */ \
bnz,pt %xcc, label##2; /* if ref bit set-skip ahead */ \
bne,a,pn %xcc, label##1; \
bz,pn %xcc, exitlabel; /* exit if wr_perm no set */ \
bnz,pn %xcc, label##2; /* nothing to do */ \
bne,a,pn %xcc, label##1; \
bne,pn %xcc, label##1 /* branch if !match */ ;\
bne,pn %xcc, label##1 /* branch if !match */ ;\
bne,pn %xcc, label##1 ;\
bne,pn %xcc, sfmmu_tsb_miss_tt /* branch if !match */ ;\
bgeu %xcc, 9f; \