[llvm] faba1d0 - [LangRef] add explanatory text for select poison semantics (PR20895)

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 18 14:17:35 PDT 2020


Author: Sanjay Patel
Date: 2020-03-18T17:17:20-04:00
New Revision: faba1d034a046305a3a7902e1753bf5dfc4f686e

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

LOG: [LangRef] add explanatory text for select poison semantics (PR20895)

This is copied from the suggested text by @regehr in:
https://bugs.llvm.org/show_bug.cgi?id=20895

The way forward was not clear for several years, but now that we
have 'freeze' and Alive2, the behavior should be documented.
Also see comments in D76332.

Added: 
    

Modified: 
    llvm/docs/LangRef.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst
index 3d1f9d388319..19f3c3b1d7a3 100644
--- a/llvm/docs/LangRef.rst
+++ b/llvm/docs/LangRef.rst
@@ -3478,9 +3478,12 @@ the ``nsw`` flag.
 
 Poison value behavior is defined in terms of value *dependence*:
 
--  Values other than :ref:`phi <i_phi>` nodes depend on their operands.
+-  Values other than :ref:`phi <i_phi>` nodes and :ref:`select <i_select>'
+   instructions depend on their operands.
 -  :ref:`Phi <i_phi>` nodes depend on the operand corresponding to
    their dynamic predecessor basic block.
+-  Select instructions depend on their condition operand and their
+   select operand.
 -  Function arguments depend on the corresponding actual argument values
    in the dynamic callers of their functions.
 -  :ref:`Call <i_call>` instructions depend on the :ref:`ret <i_ret>`


        


More information about the llvm-commits mailing list