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

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 18 16:00:52 PDT 2020


On 3/18/20 2:17 PM, Sanjay Patel via llvm-commits wrote:
> 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.
I think you might have meant "selected operand"?  If not, this sentence 
doesn't really parse for me.
>   -  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>`
>
>
>          
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list