[PATCH] D58684: [AArch64][GlobalISel] Add support for 64 bit vector shuffle using TBL1
Amara Emerson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 26 15:12:07 PST 2019
aemerson marked 2 inline comments as done.
aemerson added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp:1979
+ SubregIdx = AArch64::ssub;
+ } else {
+ Opc = AArch64::INSvi64gpr;
----------------
paquette wrote:
> Is it possible that `EltSize` could be something invalid when it's coming into here? Should we have some error-handling?
Yeah I can add llvm_unreachable() to catch the unexpected cases. We shouldn't be seeing anything else here I think.
================
Comment at: llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp:1981
+ Opc = AArch64::INSvi64gpr;
+ SubregIdx = AArch64::dsub;
+ }
----------------
paquette wrote:
> Not important for this patch, but I've noticed that we have a lot of this subregister calculation code floating around.
>
> Might be good to migrate some of this over to using a utility function for calculating the subregister index. `getSubRegForClass` does it, but I don't know if that's the best choice.
Yes I considered using that, but it was expecting a RegClass (and also has a special case for gpr32). I agree we'll want to have some common internal API to get this information in future.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58684/new/
https://reviews.llvm.org/D58684
More information about the llvm-commits
mailing list