[llvm] 8c598b7 - [ISD] Add disclaimer comments to AssertSext/Zext/Align opcodes about poison values

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 19 09:16:29 PDT 2021


Author: Simon Pilgrim
Date: 2021-07-19T17:15:28+01:00
New Revision: 8c598b77a038c87c1a0e60ce1b3c5e0961c30eda

URL: https://github.com/llvm/llvm-project/commit/8c598b77a038c87c1a0e60ce1b3c5e0961c30eda
DIFF: https://github.com/llvm/llvm-project/commit/8c598b77a038c87c1a0e60ce1b3c5e0961c30eda.diff

LOG: [ISD] Add disclaimer comments to AssertSext/Zext/Align opcodes about poison values

As encountered on 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).

Differential Revision: https://reviews.llvm.org/D106257

Added: 
    

Modified: 
    llvm/include/llvm/CodeGen/ISDOpcodes.h

Removed: 
    


################################################################################
diff  --git a/llvm/include/llvm/CodeGen/ISDOpcodes.h b/llvm/include/llvm/CodeGen/ISDOpcodes.h
index 8ff83043e705..de311228975c 100644
--- a/llvm/include/llvm/CodeGen/ISDOpcodes.h
+++ b/llvm/include/llvm/CodeGen/ISDOpcodes.h
@@ -55,9 +55,16 @@ enum NodeType {
   /// 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.


        


More information about the llvm-commits mailing list