Home | History | Annotate | Download | only in callgrind

Lines Matching refs:jCC

651 /* Write out the calls from jcc (at pos)
653 static void fprint_jcc(Int fd, jCC* jcc, AddrPos* curr, AddrPos* last, ULong ecounter)
660 CLG_DEBUG(2, " fprint_jcc (jkind %d)\n", jcc->jmpkind);
661 CLG_(print_jcc)(-10, jcc);
664 CLG_ASSERT(jcc->to !=0);
665 CLG_ASSERT(jcc->from !=0);
667 if (!get_debug_pos(jcc->to, bb_addr(jcc->to->bb), &target)) {
672 if ((jcc->jmpkind == jk_CondJump) || (jcc->jmpkind == jk_Jump)) {
674 /* this is a JCC for a followed conditional or boring jump. */
675 CLG_ASSERT(CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost));
681 CLG_ASSERT(jcc->from->bb->obj == jcc->to->bb->obj);
685 jcc->call_counter = 0;
698 if (jcc->from->cxt != jcc->to->cxt) {
701 jcc->to->cxt, jcc->to->rec_index);
703 print_fn(fd, outbuf, "jfn", jcc->to->cxt->fn[0]);
706 if (jcc->jmpkind == jk_CondJump) {
709 jcc->call_counter, ecounter);
714 jcc->call_counter);
723 jcc->call_counter = 0;
727 file = jcc->to->cxt->fn[0]->file;
728 obj = jcc->to->bb->obj;
731 if (jcc->from->cxt->fn[0]->file->obj != obj) {
745 print_mangled_fn(fd, outbuf, "cfn", jcc->to->cxt, jcc->to->rec_index);
747 print_fn(fd, outbuf, "cfn", jcc->to->cxt->fn[0]);
749 if (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost)) {
751 jcc->call_counter);
757 fprint_cost(fd, CLG_(dumpmap), jcc->cost);
759 CLG_(init_cost)( CLG_(sets).full, jcc->cost );
761 jcc->call_counter = 0;
784 jCC* jcc;
833 /* print jcc's if there are: only jumps */
836 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from)
837 if (((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
838 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
850 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from) {
851 if (((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
852 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
853 fprint_jcc(fd, jcc, &(currCost->p), last, ecounter);
868 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from) {
869 /* yes, if JCC only counts jmp arcs or cost >0 */
870 if ( ((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
871 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
902 for(jcc=bbcc->jmp[jmp].jcc_list; jcc; jcc=jcc->next_from) {
903 CLG_ASSERT(jcc->jmp == jmp);
904 if ( ((jcc->jmpkind != jk_Call) && (jcc->call_counter >0)) ||
905 (!CLG_(is_zero_cost)( CLG_(sets).full, jcc->cost )))
907 fprint_jcc(fd, jcc, &(currCost->p), last, ecounter);
1156 if (e->jcc == 0) continue;
1158 CLG_(add_diff_cost_lz)( CLG_(sets).full, &(e->jcc->cost),
1160 bbcc = e->jcc->from;
1184 if (e->jcc == 0) continue;
1186 bbcc = e->jcc->from;
1602 /* All BBCC/JCC costs is stored for thread 1 */