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 46 to Rev 47
    Reverse comparison

Rev 46 → Rev 47

/trunk/or1ksim/cpu/common/abstract.c
54,12 → 54,19
for(i = from; i < to && i < (MEMORY_START + MEMORY_LEN); i++) {
if (mem[i].insn) {
printf("\n%.8x: ", i);
printf("\n%4x:", i);
 
tmp = mem[i].label;
for(; tmp; tmp = tmp->next)
printf("%s%s\n", tmp->name, LABELEND_CHAR);
printf("\t%s%s\n", tmp->name, LABELEND_CHAR);
if (tmp)
printf("\n%4x:", i);
printf("\t%.2x%.2x", mem[i].data, mem[i+1].data);
printf("%.2x%.2x: ", mem[i+2].data, mem[i+3].data);
if (mem[i].insn)
printf("\t\t%s\t%s", mem[i].insn->insn, mem[i].insn->op1);
printf("\t%s\t%s", mem[i].insn->insn, mem[i].insn->op1);
if (strlen(mem[i].insn->op2))
printf("%s%s", OPERAND_DELIM, mem[i].insn->op2);
if (strlen(mem[i].insn->op3))
141,6 → 148,9
 
unsigned long simulate_dc_mmu_load(unsigned long virtaddr)
{
if (config.dc.tagtype == NONE)
return virtaddr;
else
if (config.dc.tagtype == VIRTUAL) {
dc_simulate_read(virtaddr);
return dmmu_translate(virtaddr);
164,6 → 174,9
 
unsigned long simulate_dc_mmu_store(unsigned long virtaddr)
{
if (config.dc.tagtype == NONE)
return virtaddr;
else
if (config.dc.tagtype == VIRTUAL) {
dc_simulate_write(virtaddr);
return dmmu_translate(virtaddr);
333,6 → 346,6
void report_interrupt()
{
printf("Interrupt reported.\n");
if (mfspr(SPR_SR) & SPR_SR_EIR)
if ((mfspr(SPR_SR) & (SPR_SR_EIR | SPR_SR_EXR)) == (SPR_SR_EIR | SPR_SR_EXR))
except_handle(EXCEPT_EXTINT, 0);
}

powered by: WebSVN 2.1.0

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