[PATCH] D69891: [VP,Integer,#1] Vector-predicated integer intrinsics

Hanna Kruppe via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 19 11:27:21 PDT 2020


rkruppe added a comment.

In D69891#1931607 <https://reviews.llvm.org/D69891#1931607>, @reames wrote:

> Reading through the LangRef change post commit I was struck by this wording: "The VP intrinsic has undefined behavior if ``%evl > W``."
>
> This is a very strong interpretation and doesn't match what we do for arithmetic.  One consequence of that difference is that hoisting a vp intrinsic out of a loop will not be legal unless we can prove the EVL is in bounds.  You probably want some variant of a poison semantic propagation instead.  Unless of course, real hardware happens to fault on out of bounds EVL in which case the current semantic is what you want.  :)
>
> Otherwise, nice work.


I brought this up in D57504 <https://reviews.llvm.org/D57504> earlier, and @simoll said that some real hardware indeed faults in this case:

> The VE target strictly requires VL <= MVL or you'll get a hardware exception.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D69891





More information about the llvm-commits mailing list