URL
https://opencores.org/ocsvn/or1k/or1k/trunk
[/] [or1k/] [trunk/] [or1ksim/] [cuc/] [load.c] - Diff between revs 1043 and 1060
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 1043 |
Rev 1060 |
Line 267... |
Line 267... |
reloc[i] = d;
|
reloc[i] = d;
|
switch (insn[d].index) {
|
switch (insn[d].index) {
|
case II_SW:
|
case II_SW:
|
case II_SH:
|
case II_SH:
|
case II_SB:
|
case II_SB:
|
|
insn[d + 1].op[1] = d; insn[d + 1].opt[1] = OPT_REF; /* sw rx,(t($-1)) */
|
|
insn[d + 1].op[0] = insn[i].op[2]; insn[d + 1].opt[0] = insn[d + 1].opt[2];
|
|
insn[d + 1].opt[2] = OPT_NONE;
|
|
insn[d + 1].type &= ~IT_BBSTART;
|
insn[d].op[0] = -1; insn[d].opt[0] = OPT_REGISTER | OPT_DEST; /* add rd, ra, rb */
|
insn[d].op[0] = -1; insn[d].opt[0] = OPT_REGISTER | OPT_DEST; /* add rd, ra, rb */
|
insn[d].op[2] = insn[i].op[0]; insn[d].opt[2] = insn[i].opt[0];
|
insn[d].op[2] = insn[i].op[0]; insn[d].opt[2] = insn[i].opt[0];
|
insn[d].opt[3] = OPT_NONE;
|
insn[d].opt[3] = OPT_NONE;
|
insn[d].type &= IT_INDELAY | IT_BBSTART;
|
insn[d].type &= IT_INDELAY | IT_BBSTART;
|
insn[d].type |= IT_MEMADD;
|
insn[d].type |= IT_MEMADD;
|
change_insn_type (&insn[d], II_ADD);
|
change_insn_type (&insn[d], II_ADD);
|
insn[d + 1].op[1] = d; insn[d + 1].opt[1] = OPT_REF; /* sw (t($-1)),rx */
|
|
insn[d + 1].op[0] = insn[i].op[2]; insn[d + 1].opt[0] = insn[i].opt[2];
|
|
insn[d + 1].opt[2] = OPT_NONE;
|
|
insn[d + 1].type &= ~IT_BBSTART;
|
|
break;
|
break;
|
case II_LW:
|
case II_LW:
|
case II_LH:
|
case II_LH:
|
case II_LB:
|
case II_LB:
|
insn[d].op[0] = -1; insn[d].opt[0] = OPT_REGISTER | OPT_DEST; /* add rd, ra, rb */
|
insn[d].op[0] = -1; insn[d].opt[0] = OPT_REGISTER | OPT_DEST; /* add rd, ra, rb */
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.