[PATCH] D88191: [AArch64][GlobalISel] Use custom legalization for G_TRUNC for v8i8 vectors
    Amara Emerson via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Thu Sep 24 07:54:23 PDT 2020
    
    
  
aemerson added inline comments.
================
Comment at: llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp:722-727
+  // Similar to how operand splitting is done in SelectiondDAG, we can handle
+  // %res(v8s8) = G_TRUNC %in(v8s32) by generating:
+  //   %inlo(<4x s32>), %inhi(<4 x s32>) = G_UNMERGE %in(<8 x s32>)
+  //   %lo16(<4 x s16>) = G_TRUNC %inlo
+  //   %hi16(<4 x s16>) = G_TRUNC %inhi
+  //   %in16(<8 x s16>) = G_CONCAT_VECTORS %lo16, %hi16
----------------
arsenm wrote:
> I don't think there's anything really custom here
Do you have a suggestion of where this could live? narrowScalar?
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88191/new/
https://reviews.llvm.org/D88191
    
    
More information about the llvm-commits
mailing list