Fix a subtle semantic issue with poison values that came up in
authorDan Gohman <gohman@apple.com>
Tue, 6 Dec 2011 03:35:58 +0000 (03:35 +0000)
committerDan Gohman <gohman@apple.com>
Tue, 6 Dec 2011 03:35:58 +0000 (03:35 +0000)
commite1a298484773b58123daad60356773a842b2d436
tree8b1246844b7053597cbe9dbdfc915bafba9d28e5
parentff452f53498229668af8e7476efc151c5a227be5
Fix a subtle semantic issue with poison values that came up in
recent discussions. Poison can't make every value that depends on
it act in maximally undefined ways, because the optimizer may still
hoist code following the usual rules for undef. Make Poison invoke
its full undefined behavior only when it reaches an instruction with
externally visible side effects.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145913 91177308-0d34-0410-b5e6-96231b3b80d8
docs/LangRef.html