aboutsummaryrefslogtreecommitdiff
path: root/riscv/insns/mfcr.h
blob: 6209e6f79c1f7717644b9381cda9bbeca8188b0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
reg_t val;

switch(insn.rtype.rs2)
{
  case 0:
    require_fp;
    val = fsr;
    break;

  case 1:
    val = 32; // synci_step
    break;

  default:
    val = -1;
}

RD = gprlen == 64 ? val : sext32(val);