[PATCH] D139068: [AArch64][SVE] Allow to lower WHILEop operations with constant operands to PTRUE

Dinar Temirbulatov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 8 04:05:41 PST 2022


dtemirbulatov marked 2 inline comments as done.
dtemirbulatov added a comment.

In D139068#3976867 <https://reviews.llvm.org/D139068#3976867>, @dtemirbulatov wrote:

> Addressed remarks, avoided to check overflow while adding one to the range for equal or same conditions.





================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:4605
+  if (IsEqual)
+    NumActiveElems += 1;
+
----------------
sdesmalen wrote:
> I guess this can still overflow right? I think you had the right code for that before, it only needed moving the `if (Overflow) return SDValue();` after the increment.
> 
> It would also be good to add a test for the overflow case (both signed and unsigned, and both 'less' and 'less or equal')
With the increment case, I don't think we have to worry about overflow/underflow. it either world be 0 or too large/too small number that are not representable with PTRUE VL instruction.


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

https://reviews.llvm.org/D139068



More information about the llvm-commits mailing list