Home | History | Annotate | Download | only in callgrind

Lines Matching refs:jCC

559 /* Write out the calls from jcc (at pos)
561 static void fprint_jcc(VgFile *fp, jCC* jcc, AddrPos* curr, AddrPos* last,
569 CLG_DEBUG(2, " fprint_jcc (jkind %d)\n", jcc->jmpkind);
570 CLG_(print_jcc)(-10, jcc);
573 CLG_ASSERT(jcc->to !=0);
574 CLG_ASSERT(jcc->from !=0);
576 if (!get_debug_pos(jcc->to, bb_addr(jcc->to->bb), &target)) {
581 if ((jcc->jmpkind == jk_CondJump) || (jcc->jmpkind == jk_Jump)) {
583 /* this is a JCC for a followed conditional or boring jump. */
584 CLG_ASSERT(CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost));
590 CLG_ASSERT(jcc->from->bb->obj == jcc->to->bb->obj);
594 jcc->call_counter = 0;
605 if (jcc->from->cxt != jcc->to->cxt) {
608 jcc->to->cxt, jcc->to->rec_index);
610 print_fn(fp, "jfn", jcc->to->cxt->fn[0]);
613 if (jcc->jmpkind == jk_CondJump) {
616 jcc->call_counter, ecounter);
621 jcc
629 jcc->call_counter = 0;
633 file = jcc->to->cxt->fn[0]->file;
634 obj = jcc->to->bb->obj;
637 if (jcc->from->cxt->fn[0]->file->obj != obj) {
647 print_mangled_fn(fp, "cfn", jcc->to->cxt, jcc->to->rec_index);
649 print_fn(fp, "cfn", jcc->to->cxt->fn[0]);
651 if (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost)) {
653 jcc->call_counter);
658 fprint_cost(fp, CLG_(dumpmap), jcc->cost);
660 CLG_(init_cost)( CLG_(sets).full, jcc->cost );
662 jcc->call_counter = 0;
685 jCC* jcc;
734 /* print jcc's if there are: only jumps */
737 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from)
738 if (((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
739 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
751 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from) {
752 if (((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
753 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
754 fprint_jcc(fp, jcc, &(currCost->p), last, ecounter);
769 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from) {
770 /* yes, if JCC only counts jmp arcs or cost >0 */
771 if ( ((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
772 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
802 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from) {
803 CLG_ASSERT(jcc->jmp == jmp);
804 if ( ((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
805 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
807 fprint_jcc(fp, jcc, &(currCost->p), last, ecounter);
1046 if (e->jcc == 0) continue;
1048 CLG_(add_diff_cost_lz)( CLG_(sets).full, &(e->jcc->cost),
1050 bbcc = e->jcc->from;
1074 if (e->jcc == 0) continue;
1076 bbcc = e->jcc->from;
1458 /* All BBCC/JCC costs is stored for thread 1 */