From e5f43fdeb34f291b7911812a3a6208ce2cac67d3 Mon Sep 17 00:00:00 2001 From: Juneyoung Lee Date: Sun, 29 Nov 2020 20:51:25 +0900 Subject: [PATCH] [LangRef] minor fixes to poison examples and well-defined values section (NFC) --- docs/LangRef.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/docs/LangRef.rst b/docs/LangRef.rst index 2cd3f93cffe..e359fc73051 100644 --- a/docs/LangRef.rst +++ b/docs/LangRef.rst @@ -3743,8 +3743,8 @@ Here are some examples: %narrowaddr = bitcast i32* @g to i16* %wideaddr = bitcast i32* @g to i64* - %poison3 = load i16, i16* %narrowaddr ; Returns a poison value. - %poison4 = load i64, i64* %wideaddr ; Returns a poison value. + %poison4 = load i16, i16* %narrowaddr ; Returns a poison value. + %poison5 = load i64, i64* %wideaddr ; Returns a poison value. %cmp = icmp slt i32 %poison, 0 ; Returns a poison value. br i1 %cmp, label %end, label %end ; undefined behavior @@ -3763,8 +3763,7 @@ The padding of an aggregate isn't considered, since it isn't visible without storing it into memory and loading it with a different type. A constant of a :ref:`single value `, non-vector type is well -defined if it is a non-undef constant. Note that there is no poison constant -in LLVM. +defined if it is neither '``undef``' constant nor '``poison``' constant. The result of :ref:`freeze instruction ` is well defined regardless of its operand.