[PATCH] D115180: [X86] Enable v16i8/v32i8/v64i8 rotation on AVX512 targets

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 9 10:39:02 PST 2021


RKSimon added inline comments.


================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:29896
+      // See if we can perform this by widening to vXi16.
+      R = DAG.getNode(ISD::ZERO_EXTEND, DL, WideVT, R);
+      R = DAG.getNode(
----------------
LuoYuanke wrote:
> I notice in line 29981, it is aext(x). Is it SIGN_EXTEND?
I did have separate ZERO/ANY_EXTEND nodes at one point but (for pure tidyness) to reuse the ZERO_EXTEND since for the rotation expansion its what the ANY_EXTEND will end up as. I can split it though if you prefer - we'll need to do this if/when this code gets reused for funnel shifts.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D115180



More information about the llvm-commits mailing list