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"); |
} |
} |
} |