OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 937 to Rev 938
    Reverse comparison

Rev 937 → Rev 938

/trunk/or1ksim/cuc/insn.c
520,7 → 520,7
}
}
 
if (ii->opt[3] == OPT_REF) {
if (ii->opt[3] & OPT_REF) {
cuc_insn *prev = &f->INSN(ii->op[3]);
assert (prev->type & IT_COND);
if (prev->index == II_CMOV) {
/trunk/or1ksim/cuc/adv.c
65,6 → 65,10
unsigned long r;
if (!(f->INSN(ii->op[1]).opt[1] & OPT_REF)) continue;
r = f->INSN(rref).op[0];
 
/* Assignment must be in same basic block */
if (REF_BB(rref) != b) continue;
 
for (j = 0; j < 2; j++) {
change_insn_type (&n[j], II_ADD);
n[j].type = 0;
128,7 → 132,7
/* Now add two BBs at the end and relink */
if (ok) {
int cnt = 0;
printf ("%x rref %x cnt %i\n", b, rref, cnt);
cucdebug (1, "%x rref %x cnt %i\n", b, rref, cnt);
fflush (stdout);
for (j = 0; j < 2; j++) {
int nb = f->num_bb++;
140,7 → 144,7
f->bb[nb].prev[0] = b; f->bb[nb].prev[1] = -1;
sb = f->bb[nb].next[0] = f->bb[b].next[j]; f->bb[nb].next[1] = -1;
assert (cnt >= 0);
printf ("%x %x %x rref %x cnt %i\n", b, sb, nb, rref, cnt);
cucdebug (2, "%x %x %x rref %x cnt %i\n", b, sb, nb, rref, cnt);
fflush (stdout);
assert (sb >= 0);
f->bb[b].next[j] = nb;
174,7 → 178,7
if (f->bb[b1].insn[i1].opt[j1] & OPT_REF && f->bb[b1].insn[i1].op[j1] == rref)
f->bb[b1].insn[i1].op[j1] = REF (f->num_bb - f->bb[b1].tmp, 0);
}
print_cuc_bb (f, "FACT");
if (cuc_debug >= 3) print_cuc_bb (f, "FACT");
}
}
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.