Index: docs/LangRef.rst =================================================================== --- docs/LangRef.rst +++ docs/LangRef.rst @@ -9689,9 +9689,19 @@ ``ptrval`` to type ``pty2``. It can be a *no-op cast* or a complex value modification, depending on the target and the address space pair. Pointer conversions within the same address space must be -performed with the ``bitcast`` instruction. Note that if the address space -conversion is legal then both result and operand refer to the same memory -location. +performed with the ``bitcast`` instruction. Note that if the address +space conversion produces a dereferencable result then both result and +operand refer to the same memory location. The conversion must have no +side effects, or capture the value of the pointer. + +If the source is :ref:`poison `, the result is +:ref:`poison `. + +If the source is not :ref:`poison `, and both source and +destination address spaces are :ref:`integral pointers +`, and the result pointer is dereferencable, the cast is +assumed to be reversible (i.e. casting the result back to the original +address space should yield the original bit pattern). Example: """"""""