Skip to content

Commit

Permalink
[rtl] generate attributes to files
Browse files Browse the repository at this point in the history
  • Loading branch information
Lucas-Wye committed May 20, 2024
1 parent afc06be commit 7a0abb7
Show file tree
Hide file tree
Showing 59 changed files with 3,753 additions and 63 deletions.
352 changes: 289 additions & 63 deletions t1/src/decoder/Decoder.scala

Large diffs are not rendered by default.

19 changes: 19 additions & 0 deletions t1/src/decoder/attrs/FCompare.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@

def FCompare = Seq(
"vfmax.vf",
"vfmax.vv",
"vfmin.vf",
"vfmin.vv",
"vfredmax.vs",
"vfredmin.vs",
"vmfeq.vf",
"vmfeq.vv",
"vmfge.vf",
"vmfgt.vf",
"vmfle.vf",
"vmfle.vv",
"vmflt.vf",
"vmflt.vv",
"vmfne.vf",
"vmfne.vv",
)
4 changes: 4 additions & 0 deletions t1/src/decoder/attrs/FDiv.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

def FDiv = Seq(

)
28 changes: 28 additions & 0 deletions t1/src/decoder/attrs/FMA.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@

def FMA = Seq(
"vfadd.vf",
"vfadd.vv",
"vfmacc.vf",
"vfmacc.vv",
"vfmadd.vf",
"vfmadd.vv",
"vfmsac.vf",
"vfmsac.vv",
"vfmsub.vf",
"vfmsub.vv",
"vfmul.vf",
"vfmul.vv",
"vfnmacc.vf",
"vfnmacc.vv",
"vfnmadd.vf",
"vfnmadd.vv",
"vfnmsac.vf",
"vfnmsac.vv",
"vfnmsub.vf",
"vfnmsub.vv",
"vfredosum.vs",
"vfredusum.vs",
"vfrsub.vf",
"vfsub.vf",
"vfsub.vv",
)
18 changes: 18 additions & 0 deletions t1/src/decoder/attrs/FOther.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@

def FOther = Seq(
"vfclass.v",
"vfcvt.f.x.v",
"vfcvt.f.xu.v",
"vfcvt.rtz.x.f.v",
"vfcvt.rtz.xu.f.v",
"vfcvt.x.f.v",
"vfcvt.xu.f.v",
"vfrec7.v",
"vfrsqrt7.v",
"vfsgnj.vf",
"vfsgnj.vv",
"vfsgnjn.vf",
"vfsgnjn.vv",
"vfsgnjx.vf",
"vfsgnjx.vv",
)
94 changes: 94 additions & 0 deletions t1/src/decoder/attrs/adder.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@

def adder = Seq(
"vaadd.vv",
"vaadd.vx",
"vaaddu.vv",
"vaaddu.vx",
"vadc.vim",
"vadc.vvm",
"vadc.vxm",
"vadd.vi",
"vadd.vv",
"vadd.vx",
"vasub.vv",
"vasub.vx",
"vasubu.vv",
"vasubu.vx",
"vmadc.vi",
"vmadc.vim",
"vmadc.vv",
"vmadc.vvm",
"vmadc.vx",
"vmadc.vxm",
"vmax.vv",
"vmax.vx",
"vmaxu.vv",
"vmaxu.vx",
"vmin.vv",
"vmin.vx",
"vminu.vv",
"vminu.vx",
"vmsbc.vv",
"vmsbc.vvm",
"vmsbc.vx",
"vmsbc.vxm",
"vmseq.vi",
"vmseq.vv",
"vmseq.vx",
"vmsgt.vi",
"vmsgt.vx",
"vmsgtu.vi",
"vmsgtu.vx",
"vmsle.vi",
"vmsle.vv",
"vmsle.vx",
"vmsleu.vi",
"vmsleu.vv",
"vmsleu.vx",
"vmslt.vv",
"vmslt.vx",
"vmsltu.vv",
"vmsltu.vx",
"vmsne.vi",
"vmsne.vv",
"vmsne.vx",
"vredmax.vs",
"vredmaxu.vs",
"vredmin.vs",
"vredminu.vs",
"vredsum.vs",
"vrsub.vi",
"vrsub.vx",
"vsadd.vi",
"vsadd.vv",
"vsadd.vx",
"vsaddu.vi",
"vsaddu.vv",
"vsaddu.vx",
"vsbc.vvm",
"vsbc.vxm",
"vssub.vv",
"vssub.vx",
"vssubu.vv",
"vssubu.vx",
"vsub.vv",
"vsub.vx",
"vwadd.vv",
"vwadd.vx",
"vwadd.wv",
"vwadd.wx",
"vwaddu.vv",
"vwaddu.vx",
"vwaddu.wv",
"vwaddu.wx",
"vwredsum.vs",
"vwredsumu.vs",
"vwsub.vv",
"vwsub.vx",
"vwsub.wv",
"vwsub.wx",
"vwsubu.vv",
"vwsubu.vx",
"vwsubu.wv",
"vwsubu.wx",
)
11 changes: 11 additions & 0 deletions t1/src/decoder/attrs/average.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

def average = Seq(
"vaadd.vv",
"vaadd.vx",
"vaaddu.vv",
"vaaddu.vx",
"vasub.vv",
"vasub.vx",
"vasubu.vv",
"vasubu.vx",
)
11 changes: 11 additions & 0 deletions t1/src/decoder/attrs/compress.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

def compress = Seq(
"vcompress.vm",
"vcompress.vm",
"vcompress.vm",
"vcompress.vm",
"vcompress.vm",
"vcompress.vm",
"vcompress.vm",
"vcompress.vm",
)
42 changes: 42 additions & 0 deletions t1/src/decoder/attrs/crossRead.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@

def crossRead = Seq(
"vfncvt.f.f.w",
"vfncvt.f.x.w",
"vfncvt.f.xu.w",
"vfncvt.rod.f.f.w",
"vfncvt.rtz.x.f.w",
"vfncvt.rtz.xu.f.w",
"vfncvt.x.f.w",
"vfncvt.xu.f.w",
"vfwadd.wf",
"vfwadd.wv",
"vfwsub.wf",
"vfwsub.wv",
"vnclip.wi",
"vnclip.wv",
"vnclip.wx",
"vnclipu.wi",
"vnclipu.wv",
"vnclipu.wx",
"vnsra.wi",
"vnsra.wv",
"vnsra.wx",
"vnsrl.wi",
"vnsrl.wv",
"vnsrl.wx",
"vwadd.wv",
"vwadd.wx",
"vwaddu.wv",
"vwaddu.wx",
"vwmacc.vv",
"vwmacc.vx",
"vwmaccsu.vv",
"vwmaccsu.vx",
"vwmaccu.vv",
"vwmaccu.vx",
"vwmaccus.vx",
"vwsub.wv",
"vwsub.wx",
"vwsubu.wv",
"vwsubu.wx",
)
32 changes: 32 additions & 0 deletions t1/src/decoder/attrs/crossWrite.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

def crossWrite = Seq(
"vwadd.vv",
"vwadd.vx",
"vwadd.wv",
"vwadd.wx",
"vwaddu.vv",
"vwaddu.vx",
"vwaddu.wv",
"vwaddu.wx",
"vwmacc.vv",
"vwmacc.vx",
"vwmaccsu.vv",
"vwmaccsu.vx",
"vwmaccu.vv",
"vwmaccu.vx",
"vwmaccus.vx",
"vwmul.vv",
"vwmul.vx",
"vwmulsu.vv",
"vwmulsu.vx",
"vwmulu.vv",
"vwmulu.vx",
"vwsub.vv",
"vwsub.vx",
"vwsub.wv",
"vwsub.wx",
"vwsubu.vv",
"vwsubu.vx",
"vwsubu.wv",
"vwsubu.wx",
)
15 changes: 15 additions & 0 deletions t1/src/decoder/attrs/divider.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@

def divider = Seq(
"vdiv.vv",
"vdiv.vx",
"vdivu.vv",
"vdivu.vx",
"vfdiv.vf",
"vfdiv.vv",
"vfrdiv.vf",
"vfsqrt.v",
"vrem.vv",
"vrem.vx",
"vremu.vv",
"vremu.vx",
)
18 changes: 18 additions & 0 deletions t1/src/decoder/attrs/dontNeedExecuteInLane.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@

def dontNeedExecuteInLane = Seq(
"lsu",
"vcompress.vm",
"viota.m",
"vmv1r.v",
"vmv2r.v",
"vmv4r.v",
"vmv8r.v",
"vrgather.vv",
"vrgatherei16.vv",
"vsext.vf2",
"vsext.vf4",
"vsext.vf8",
"vzext.vf2",
"vzext.vf4",
"vzext.vf8",
)
9 changes: 9 additions & 0 deletions t1/src/decoder/attrs/extend.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@

def extend = Seq(
"vsext.vf2",
"vsext.vf4",
"vsext.vf8",
"vzext.vf2",
"vzext.vf4",
"vzext.vf8",
)
7 changes: 7 additions & 0 deletions t1/src/decoder/attrs/ffo.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

def ffo = Seq(
"vfirst.m",
"vmsbf.m",
"vmsif.m",
"vmsof.m",
)
38 changes: 38 additions & 0 deletions t1/src/decoder/attrs/firstWiden.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@

def firstWiden = Seq(
"vfncvt.f.f.w",
"vfncvt.f.x.w",
"vfncvt.f.xu.w",
"vfncvt.rod.f.f.w",
"vfncvt.rtz.x.f.w",
"vfncvt.rtz.xu.f.w",
"vfncvt.x.f.w",
"vfncvt.xu.f.w",
"vfwadd.wf",
"vfwadd.wv",
"vfwsub.wf",
"vfwsub.wv",
"vnclip.wv",
"vnclip.wx",
"vnclipu.wv",
"vnclipu.wx",
"vnsra.wv",
"vnsra.wx",
"vnsrl.wv",
"vnsrl.wx",
"vwadd.wv",
"vwadd.wx",
"vwaddu.wv",
"vwaddu.wx",
"vwmacc.vv",
"vwmacc.vx",
"vwmaccsu.vv",
"vwmaccsu.vx",
"vwmaccu.vv",
"vwmaccu.vx",
"vwmaccus.vx",
"vwsub.wv",
"vwsub.wx",
"vwsubu.wv",
"vwsubu.wx",
)
Loading

0 comments on commit 7a0abb7

Please sign in to comment.