[PATCH] D106257: [ISD] Add disclaimer comments to AssertSext/Zext/Align opcodes about poison values
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 19 03:00:27 PDT 2021
RKSimon created this revision.
RKSimon added reviewers: eli.friedman, aqjune, spatel, craig.topper, xiangzhangllvm, LuoYuanke.
RKSimon requested review of this revision.
Herald added a project: LLVM.
As encountered on D106053 <https://reviews.llvm.org/D106053>, we need to be very explicit that the Assertion nodes don't hold true for a poison value (or for specific poisoned vector elements).
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D106257
Files:
llvm/include/llvm/CodeGen/ISDOpcodes.h
Index: llvm/include/llvm/CodeGen/ISDOpcodes.h
===================================================================
--- llvm/include/llvm/CodeGen/ISDOpcodes.h
+++ llvm/include/llvm/CodeGen/ISDOpcodes.h
@@ -55,9 +55,16 @@
/// value that has already been zero or sign extended from a narrower type.
/// These nodes take two operands. The first is the node that has already
/// been extended, and the second is a value type node indicating the width
- /// of the extension
+ /// of the extension.
+ /// NOTE: In case of the source value (or any vector element value) is
+ /// poisoned the assertion will not be true for that value.
AssertSext,
AssertZext,
+
+ /// AssertAlign - These nodes record if a register contains a value that
+ /// has a known alignment and the trailing bits are known to be zero.
+ /// NOTE: In case of the source value (or any vector element value) is
+ /// poisoned the assertion will not be true for that value.
AssertAlign,
/// Various leaf nodes.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106257.359712.patch
Type: text/x-patch
Size: 1004 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210719/60111158/attachment.bin>
More information about the llvm-commits
mailing list