[PATCH] D157005: [mlir][ArmSME] Add move vector to tile slice op and lowerings

Cullen Rhodes via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 29 09:09:12 PDT 2023


c-rhodes added inline comments.


================
Comment at: mlir/test/Dialect/ArmSME/arith-ops-to-sme.mlir:107
+  %two = arith.constant dense<2> : vector<[16]x[16]xi8>
+  "prevent.dce"(%two) : (vector<[16]x[16]xi8>) -> ()
+  return
----------------
nicolasvasilache wrote:
> side note, can you just return the value instead of using this fake op or is there something more fundamental that does not let us return a scalable vector here ?
> side note, can you just return the value instead of using this fake op or is there something more fundamental that does not let us return a scalable vector here ?

For the purposes of this test the scalable vector could be returned, but generally we can't support passing or returning 2-d scalable vectors to/from functions since these types can't be lowered to LLVM and even if they could it's not defined by the ABI. For this reason I opted for the fake use op so as to not set a precedent that this is something that can be done. I believe there are some earlier ArmSME tests where 2-d scalable vector are returned however, we should probably update them for consistency.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D157005/new/

https://reviews.llvm.org/D157005



More information about the llvm-commits mailing list