Lines Matching refs:tp
48 fasttrap_tracepoint_install(proc_t *p, fasttrap_tracepoint_t *tp)
52 if (uwrite(p, &instr, 4, tp->ftt_pc) != 0)
59 fasttrap_tracepoint_remove(proc_t *p, fasttrap_tracepoint_t *tp)
67 if (uread(p, &instr, 4, tp->ftt_pc) != 0)
71 if (uwrite(p, &tp->ftt_instr, 4, tp->ftt_pc) != 0)
78 fasttrap_tracepoint_init(proc_t *p, fasttrap_tracepoint_t *tp, uintptr_t pc,
105 tp->ftt_type = FASTTRAP_T_COMMON;
106 tp->ftt_instr = instr;
127 tp->ftt_type = FASTTRAP_T_NOP;
130 tp->ftt_type = FASTTRAP_T_BC;
131 tp->ftt_dest = instr & 0x0000FFFC; /* Extract target address */
133 tp->ftt_dest |= 0xFFFF0000;
136 tp->ftt_dest += pc;
137 tp->ftt_bo = OP_BO(instr);
138 tp->ftt_bi = OP_BI(instr);
141 tp->ftt_type = FASTTRAP_T_B;
142 tp->ftt_dest = instr & 0x03FFFFFC; /* Extract target address */
144 tp->ftt_dest |= 0xFC000000;
147 tp->ftt_dest += pc;
152 tp->ftt_type = FASTTRAP_T_BCTR;
153 tp->ftt_bo = OP_BO(instr);
154 tp->ftt_bi = OP_BI(instr);
157 tp->ftt_type = FASTTRAP_T_BCTR;
158 tp->ftt_bo = OP_BO(instr);
159 tp->ftt_bi = OP_BI(instr);
166 tp->ftt_type = FASTTRAP_T_NOP;
181 if (tp->ftt_type != FASTTRAP_T_RESTORE &&
184 tp->ftt_flags |= FASTTRAP_F_RETMAYBE;
267 fasttrap_tracepoint_t *tp;
274 for (tp = bucket->ftb_data; tp != NULL; tp = tp->ftt_next) {
275 if (pid == tp->ftt_pid && pc == tp->ftt_pc &&
276 tp->ftt_proc->ftpc_acount != 0)
285 if (tp == NULL) {
290 for (id = tp->ftt_retids; id != NULL; id = id->fti_next) {
339 fasttrap_tracepoint_t *tp, tp_local;
376 for (tp = bucket->ftb_data; tp != NULL; tp = tp->ftt_next) {
377 if (pid == tp->ftt_pid && pc == tp->ftt_pc &&
378 tp->ftt_proc->ftpc_acount != 0)
387 if (tp == NULL) {
392 if (tp->ftt_ids != NULL) {
395 for (id = tp->ftt_ids; id != NULL; id = id->fti_next) {
441 tp_local = *tp;
443 tp = &tp_local;
463 switch (tp->ftt_type) {
468 if (!fasttrap_branch_taken(tp->ftt_bo, tp->ftt_bi, rp))
472 if (tp->ftt_instr & 0x01)
474 new_pc = tp->ftt_dest;
478 if (!fasttrap_branch_taken(tp->ftt_bo, tp->ftt_bi, rp))
481 if (tp->ftt_type == FASTTRAP_T_BCTR)
485 if (tp->ftt_instr & 0x01)
498 if (tp->ftt_retids != NULL) {
506 if (tp->ftt_type != FASTTRAP_T_COMMON) {