summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorSanjoy Das <sanjoy@playingwithpointers.com>2016-11-13 23:40:40 +0000
committerSanjoy Das <sanjoy@playingwithpointers.com>2016-11-13 23:40:40 +0000
commitdbc58d001537e85621ec355059be785cea6a6080 (patch)
tree4cafe1bb1443a54646b17cba257ae63e3c94cea3 /llvm
parentefd48ca5688fbb2bfea35b53c03ae3bdf15070bf (diff)
downloadbcm5719-llvm-dbc58d001537e85621ec355059be785cea6a6080.tar.gz
bcm5719-llvm-dbc58d001537e85621ec355059be785cea6a6080.zip
[LangRef] Drop misleading anecdote
`shl nsw i8 1, i8 8` is poison, but `mul i8 1, i8 128` is not. This was discussed previously here: http://lists.llvm.org/pipermail/llvm-dev/2015-April/084195.html. From the discussion, it was not clear which semantics we want for `shl`, but for now at least make the language reference more accurate. llvm-svn: 286785
Diffstat (limited to 'llvm')
-rw-r--r--llvm/docs/LangRef.rst4
1 files changed, 1 insertions, 3 deletions
diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst
index f20f4385c2f..c5f927d92ef 100644
--- a/llvm/docs/LangRef.rst
+++ b/llvm/docs/LangRef.rst
@@ -6430,9 +6430,7 @@ If the ``nuw`` keyword is present, then the shift produces a :ref:`poison
value <poisonvalues>` if it shifts out any non-zero bits. If the
``nsw`` keyword is present, then the shift produces a :ref:`poison
value <poisonvalues>` if it shifts out any bits that disagree with the
-resultant sign bit. As such, NUW/NSW have the same semantics as they
-would if the shift were expressed as a mul instruction with the same
-nsw/nuw bits in (mul %op1, (shl 1, %op2)).
+resultant sign bit.
Example:
""""""""
OpenPOWER on IntegriCloud