summaryrefslogtreecommitdiff
path: root/risc-v/hgen/parser.hgen
blob: ba7808579d1fd8c1125df565fda038b56e18d219 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| UTYPE reg COMMA NUM
  { `RISCVUTYPE($4, $2, $1.op) }
| JAL reg COMMA NUM
  { `RISCVJAL($4, $2) }
| JALR reg COMMA reg COMMA NUM
  { `RISCVJALR($6, $4, $2) }
| BTYPE reg COMMA reg COMMA NUM
  { `RISCVBType($6, $4, $2, $1.op) }
| ITYPE reg COMMA reg COMMA NUM
  { `RISCVIType($6, $4, $2, $1.op) }
| SHIFTIOP reg COMMA reg COMMA NUM
  { `RISCVShiftIop($6, $4, $2, $1.op) }
| RTYPE reg COMMA reg COMMA reg
  { `RISCVRType ($6, $4, $2, $1.op) }
| LOAD reg COMMA NUM LPAR reg RPAR
  { `RISCVLoad($4, $6, $2, $1.unsigned, $1.width) }
| STORE reg COMMA NUM LPAR reg RPAR
  { `RISCVStore($4, $6, $2, $1.width) }
| ADDIW reg COMMA reg COMMA NUM
  { `RISCVADDIW ($6, $4, $2) }
| SHIFTW reg COMMA reg COMMA NUM
  { `RISCVSHIFTW ($6, $4, $2, $1.op) }
| RTYPEW reg COMMA reg COMMA reg
  { `RISCVRTYPEW ($6, $4, $2, $1.op) }
| FENCE
  { `RISCVFENCE }