[PATCH] D140090: [Clang][CodeGen] Use poison instead of undef in CodeGen for ARM Builtins [NFC]

Manuel Brito via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Dec 15 02:01:53 PST 2022


ManuelJBrito created this revision.
ManuelJBrito added reviewers: peterwaller-arm, paulwalker-arm, david-arm.
Herald added subscribers: ctetreau, arphaman, kristof.beyls.
Herald added a project: All.
ManuelJBrito requested review of this revision.
Herald added subscribers: cfe-commits, alextsao1999.
Herald added a project: clang.

In light of the efforts to remove undef, this patch changes the following instances of undef to poison in the CodeGen for ARM Builtins:

- `EmitCommonNeonSISDBuiltinExpr` : uses overloaded intrinsics to implement SISD expressions, ops go in first entry, the rest of the vector is irrelevant.

- `EmitAArch64SVEBuiltinExpr` : cast from fixed vector to scalable vector with the same size therefore undef/poison is hidden.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D140090

Files:
  clang/lib/CodeGen/CGBuiltin.cpp
  clang/test/CodeGen/aarch64-neon-intrinsics.c
  clang/test/CodeGen/aarch64-neon-scalar-x-indexed-elem.c
  clang/test/CodeGen/aarch64-neon-vsqadd-float-conversion.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dupq-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dupq.c
  clang/test/CodeGen/aarch64-v8.1a-neon-intrinsics.c
  clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_dup_neonq.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D140090.483094.patch
Type: text/x-patch
Size: 83851 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20221215/25606fc9/attachment-0001.bin>


More information about the cfe-commits mailing list