[PATCH] D106053: [CodeGen] Remove pending AssertZext AssertSext in promoting FP_TO_INT

Xiang Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 16 17:38:06 PDT 2021


xiangzhangllvm added a comment.

In D106053#2884844 <https://reviews.llvm.org/D106053#2884844>, @efriedma wrote:

> Marking request changes pending a response to the question of whether the usage of AssertZext here is actually incorrect.

I thought that is clear.

  fptoui <8 x float> %1 to <8 x i8>   !=  fptosi <8 x float> %1 to <8 x i16>  +  AssertZext

In right side, when overflow, the high N bits is undef, but we mark them Zero with AssertZext. 
The following optimizations (e.g. shuffle combine) tried to reset the high N bits to Zero, but it find AssertZext (which means the high N bits already Zero), so it stop reset them, this makes the error.

The small reproduce test case is just show in this way.


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

https://reviews.llvm.org/D106053



More information about the llvm-commits mailing list