[PATCH] D149548: [IR] Update to use new shufflevector semantics

Manuel Brito via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon May 1 07:23:05 PDT 2023


ManuelJBrito updated this revision to Diff 518434.
ManuelJBrito added a comment.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

This change is visible in clang in particular in codegen for the vec_promote builtin.
It now produces poison instead of undef for the undefined elements.
I think this is OK according to IBM's documentation[https://www.ibm.com/docs/en/epfz/5.3?topic=book-semantics]:

> When a result or behavior is undefined, it is something you “must not” do.
> Use of an undefined feature is likely to produce different results on different > implementations or releases of a PL/I product.
> The application program is considered to be in error.




Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D149548

Files:
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector-constrained.c
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector.c
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-constrained.c
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector2.c
  llvm/lib/IR/ConstantFold.cpp
  llvm/lib/IR/Instructions.cpp
  llvm/test/Transforms/InstCombine/shufflevec-constant.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D149548.518434.patch
Type: text/x-patch
Size: 6198 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230501/54305ae1/attachment.bin>


More information about the cfe-commits mailing list