Skip to content

Commit 800102a

Browse files
inst/B: use the new instruction schema (#860)
In (#686), a new instruction schema was created for types/subtypes. This commit changes B/clmul, B/clmulh, B/orn, B/rol, B/rolw, B/ror, B/rorw, B/xnor instructions to use the new schema. They all are of the same subtypes. It is also part of effort in (#655). --------- Signed-off-by: Usman Akinyemi <usmanakinyemi202@gmail.com> Co-authored-by: Paul Clarke <ThinkOpenly@gmail.com>
1 parent 7f6ad45 commit 800102a

File tree

8 files changed

+88
-72
lines changed

8 files changed

+88
-72
lines changed

spec/std/isa/inst/B/clmul.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ description: |
1212
definedBy:
1313
anyOf: [Zbc, Zbkc]
1414
assembly: xd, xs1, xs2
15-
encoding:
16-
match: 0000101----------001-----0110011
17-
variables:
18-
- name: xs2
19-
location: 24-20
20-
- name: xs1
21-
location: 19-15
22-
- name: xd
23-
location: 11-7
15+
format:
16+
$inherits:
17+
- inst_subtype/R/R-x.yaml#/data
18+
opcodes:
19+
funct7:
20+
display_name: CLMUL
21+
value: 0b0000101
22+
funct3:
23+
display_name: CLMUL
24+
value: 0b001
25+
opcode: { $inherits: inst_opcode/OP.yaml#/data }
2426
access:
2527
s: always
2628
u: always

spec/std/isa/inst/B/clmulh.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ description: |
1212
definedBy:
1313
anyOf: [Zbc, Zbkc]
1414
assembly: xd, xs1, xs2
15-
encoding:
16-
match: 0000101----------011-----0110011
17-
variables:
18-
- name: xs2
19-
location: 24-20
20-
- name: xs1
21-
location: 19-15
22-
- name: xd
23-
location: 11-7
15+
format:
16+
$inherits:
17+
- inst_subtype/R/R-x.yaml#/data
18+
opcodes:
19+
funct7:
20+
display_name: CLMUL
21+
value: 0b0000101
22+
funct3:
23+
display_name: CLMULH
24+
value: 0b011
25+
opcode: { $inherits: inst_opcode/OP.yaml#/data }
2426
access:
2527
s: always
2628
u: always

spec/std/isa/inst/B/orn.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ description: |
1212
definedBy:
1313
anyOf: [Zbb, Zbkb]
1414
assembly: xd, xs1, xs2
15-
encoding:
16-
match: 0100000----------110-----0110011
17-
variables:
18-
- name: xs2
19-
location: 24-20
20-
- name: xs1
21-
location: 19-15
22-
- name: xd
23-
location: 11-7
15+
format:
16+
$inherits:
17+
- inst_subtype/R/R-x.yaml#/data
18+
opcodes:
19+
funct7:
20+
display_name: ORN
21+
value: 0b0100000
22+
funct3:
23+
display_name: ORN
24+
value: 0b110
25+
opcode: { $inherits: inst_opcode/OP.yaml#/data }
2426
access:
2527
s: always
2628
u: always

spec/std/isa/inst/B/rol.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ description: |
1212
definedBy:
1313
anyOf: [Zbb, Zbkb]
1414
assembly: xd, xs1, xs2
15-
encoding:
16-
match: 0110000----------001-----0110011
17-
variables:
18-
- name: xs2
19-
location: 24-20
20-
- name: xs1
21-
location: 19-15
22-
- name: xd
23-
location: 11-7
15+
format:
16+
$inherits:
17+
- inst_subtype/R/R-x.yaml#/data
18+
opcodes:
19+
funct7:
20+
display_name: ROL
21+
value: 0b0110000
22+
funct3:
23+
display_name: ROL
24+
value: 0b001
25+
opcode: { $inherits: inst_opcode/OP.yaml#/data }
2426
access:
2527
s: always
2628
u: always

spec/std/isa/inst/B/rolw.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,17 @@ definedBy:
1414
anyOf: [Zbb, Zbkb]
1515
assembly: xd, xs1, xs2
1616
base: 64
17-
encoding:
18-
match: 0110000----------001-----0111011
19-
variables:
20-
- name: xs2
21-
location: 24-20
22-
- name: xs1
23-
location: 19-15
24-
- name: xd
25-
location: 11-7
17+
format:
18+
$inherits:
19+
- inst_subtype/R/R-x.yaml#/data
20+
opcodes:
21+
funct7:
22+
display_name: ROLW
23+
value: 0b0110000
24+
funct3:
25+
display_name: ROLW
26+
value: 0b001
27+
opcode: { $inherits: inst_opcode/OP-32.yaml#/data }
2628
access:
2729
s: always
2830
u: always

spec/std/isa/inst/B/ror.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ description: |
1212
definedBy:
1313
anyOf: [Zbb, Zbkb]
1414
assembly: xd, xs1, xs2
15-
encoding:
16-
match: 0110000----------101-----0110011
17-
variables:
18-
- name: xs2
19-
location: 24-20
20-
- name: xs1
21-
location: 19-15
22-
- name: xd
23-
location: 11-7
15+
format:
16+
$inherits:
17+
- inst_subtype/R/R-x.yaml#/data
18+
opcodes:
19+
funct7:
20+
display_name: ROR
21+
value: 0b0110000
22+
funct3:
23+
display_name: ROR
24+
value: 0b101
25+
opcode: { $inherits: inst_opcode/OP.yaml#/data }
2426
access:
2527
s: always
2628
u: always

spec/std/isa/inst/B/rorw.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,17 @@ definedBy:
1515
anyOf: [Zbb, Zbkb]
1616
assembly: xd, xs1, xs2
1717
base: 64
18-
encoding:
19-
match: 0110000----------101-----0111011
20-
variables:
21-
- name: xs2
22-
location: 24-20
23-
- name: xs1
24-
location: 19-15
25-
- name: xd
26-
location: 11-7
18+
format:
19+
$inherits:
20+
- inst_subtype/R/R-x.yaml#/data
21+
opcodes:
22+
funct7:
23+
display_name: RORW
24+
value: 0b0110000
25+
funct3:
26+
display_name: RORW
27+
value: 0b101
28+
opcode: { $inherits: inst_opcode/OP-32.yaml#/data }
2729
access:
2830
s: always
2931
u: always

spec/std/isa/inst/B/xnor.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ description: |
1212
definedBy:
1313
anyOf: [Zbb, Zbkb]
1414
assembly: xd, xs1, xs2
15-
encoding:
16-
match: 0100000----------100-----0110011
17-
variables:
18-
- name: xs2
19-
location: 24-20
20-
- name: xs1
21-
location: 19-15
22-
- name: xd
23-
location: 11-7
15+
format:
16+
$inherits:
17+
- inst_subtype/R/R-x.yaml#/data
18+
opcodes:
19+
funct7:
20+
display_name: XNOR
21+
value: 0b0100000
22+
funct3:
23+
display_name: XNOR
24+
value: 0b100
25+
opcode: { $inherits: inst_opcode/OP.yaml#/data }
2426
access:
2527
s: always
2628
u: always

0 commit comments

Comments
 (0)