|
|
|
@ -518,6 +518,12 @@ static void cpu_execute(rv32_cpu_t* cpu, instruction_t* instruction) |
|
|
|
|
cpu->sim_ticks_left = 1; |
|
|
|
|
cpu->pc -= 4; |
|
|
|
|
break; |
|
|
|
|
case IMM_SRET: |
|
|
|
|
fprintf(stderr, "SRET: We don't support that.\n"); |
|
|
|
|
break; |
|
|
|
|
case IMM_MRET: |
|
|
|
|
fprintf(stderr, "MRET: We don't support that.\n"); |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
switch(instruction->func7) |
|
|
|
|
{ |
|
|
|
@ -1070,6 +1076,12 @@ static void cpu_print_instruction(instruction_t* instruction) |
|
|
|
|
case IMM_EBREAK: |
|
|
|
|
printf("ebreak\n"); |
|
|
|
|
break; |
|
|
|
|
case IMM_SRET: |
|
|
|
|
printf("sret\n"); |
|
|
|
|
break; |
|
|
|
|
case IMM_MRET: |
|
|
|
|
printf("mret\n"); |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
switch(instruction->func7) |
|
|
|
|
{ |
|
|
|
|