URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
Compare Revisions
- This comparison shows the changes necessary to convert path
/
- from Rev 902 to Rev 903
- ↔ Reverse comparison
Rev 902 → Rev 903
/trunk/or1ksim/cuc/insn.c
262,7 → 262,7
cuc_insn *ii = &f->INSN(ref); |
int j; |
|
//printf (" %x", ref); |
cucdebug (4, " %x", ref); |
/* mark visited, if already marked, we have a loop, ignore */ |
if (ii->tmp) return 0; |
ii->tmp = 1; |
301,7 → 301,7
} |
|
for (j = 1; j < 3; j++) { |
//printf ("(%x:%i)", ref, j); |
cucdebug (4, "(%x:%i)", ref, j); |
if (ii->opt[j] == OPT_REF) { |
if (cmov_needed (f, ii->op[j])) { |
ii->tmp = 0; |
336,7 → 336,7
cuc_insn *ii = &f->bb[b].insn[i]; |
if (ii->index == II_CMOV && !(ii->type & IT_VOLATILE)) { |
tmp_opt = OPT_NONE; |
printf ("\n"); |
cucdebug (4, "\n"); |
if (!cmov_needed (f, REF(b, i))) { |
assert (tmp_opt != OPT_NONE); |
change_insn_type (ii, II_ADD); |
/trunk/or1ksim/cuc/cuc.c
329,21 → 329,21
static void options_cmd (int func_no, cuc_func *f) |
{ |
int b, i; |
char tmp[20]; |
char tmp[30]; |
char *name = prof_func[func_no].name; |
printf ("--------------------------------------------------------\n"); |
printf ("|%-16s|pre/unrolled|shared| time | gates | old_time = %i \n", |
strstrip (tmp, name, 16), f->orig_time); |
printf ("| BASE |%4i / %4i | %4i |%8i|%8.f|\n", 1, 1, 0, |
f->timings.new_time, f->timings.size); |
printf ("---------------------------------------------------------------------------\n"); |
printf ("|%-26s|pre/unrolled|shared| time | gates |old_time|\n", |
strstrip (tmp, name, 26)); |
printf ("| BASE |%4i / %4i | %4i |%8i|%8.f|%8i|\n", 1, 1, 0, |
f->timings.new_time, f->timings.size, f->orig_time); |
for (b = 0; b < f->num_bb; b++) { |
/* Print out results */ |
for (i = 1; i < f->bb[b].ntim; i++) { /* First one is base option */ |
int time = f->bb[b].tim[i].new_time - f->timings.new_time; |
double size = f->bb[b].tim[i].size - f->timings.size; |
printf ("| "); |
printf ("| "); |
print_option (b, i); |
printf (" |%4i / %4i | %4i |%+8i|%+8.f|\n", |
printf (" |%4i / %4i | %4i |%+8i|%+8.f| |\n", |
f->bb[b].tim[i].preroll, f->bb[b].tim[i].unroll, f->bb[b].tim[i].nshared, |
time, size); |
} |
543,7 → 543,7
for (i = 0; i < prof_nfuncs; i++) |
prof_func[i].cum_cycles = -prof_func[i].cum_cycles; |
printf ("-----------------------------------------------------------------------------\n"); |
printf ("Total %i cycles (was %i), total added gates = %i.\n", ntime, prof_cycles, size); |
printf ("Total %i cycles (was %i), total added gates = %i. Speed factor %.1f\n", ntime, prof_cycles, size, 1. * prof_cycles / ntime); |
} else if (strncmp (tmp1, "d", 1) == 0 || strncmp (tmp1, "debug", 5) == 0) { |
/* debug command */ |
sscanf (tmp1, "%*s %i", &cuc_debug); |
628,7 → 628,7
options_cmd (i, func[i]); |
any = 1; |
} |
if (any) printf ("--------------------------------------------------------\n"); |
if (any) printf ("---------------------------------------------------------------------------\n"); |
else printf ("Sorry. No available options.\n"); |
} else if (strcmp (tmp1, "") == 0) { |
/* Ignore empty string */ |