[PATCH] D62670: [ARM] Add MVE horizontal accumulation instructions.
Oliver Stannard (Linaro) via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 4 09:39:02 PDT 2019
ostannard added inline comments.
================
Comment at: llvm/lib/Target/ARM/ARMInstrMVE.td:367
+
+class t2VMINNM<string iname, string suffix, bit sz, bit bit_17,
+ list<dag> pattern=[]>
----------------
There seems to be a lot of repetition here, could some of these classes be combined? For example most bits of t2VMINNM, t2VMINV, t2VMAXNMV and t2VMAX are the same. Could we also use multiclasses to avoid repeating the list of types for each of the MIN and MAX versions of these instructions?
Also, is the a pattern to whether these names end in "V" which I've missed, or could they be made more consistent?
================
Comment at: llvm/lib/Target/ARM/ARMInstrMVE.td:382
+ let Inst{8-6} = 0b110;
+ let Inst{5} = 0b0; // undefined if 1
+ let Inst{3-1} = Qm{2-0};
----------------
What is this comment adding?
================
Comment at: llvm/lib/Target/ARM/ARMInstrMVE.td:487
+
+class t2VMLADAV<string iname, string suffix, bit sz, bit U,
+ bit A, bit X, bit bit_8, list<dag> pattern=[]>
----------------
Again, the t2VMLADAV and t2VMLSDAV classes share most of their bits, and could be merged.
================
Comment at: llvm/test/MC/ARM/mve-reductions.s:14
+
+# CHECK: vpte.i8 eq, q0, q0
+# CHECK-NOFP: vpte.i8 eq, q0, q0
----------------
We could avoid repeating all of these check lines by either adding a new check-prefix shared between the two runs, or moving the FP instructions to a separate file. As noted in previous reviews, we should also be checking the error message when the FP instructions are rejected.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D62670/new/
https://reviews.llvm.org/D62670
More information about the llvm-commits
mailing list