diff --git a/docs/LangRef.html b/docs/LangRef.html index 9d2d226ddc6..b1bc1687c47 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -6619,16 +6619,16 @@ LLVM.
Half precision floating point is storage-only format. This means that it is - an encoding (typically for density in memory) but typically does not support - computation in the format.
+Half precision floating point is a storage-only format. This means that it is + a dense encoding (in memory) but does not support computation in the + format.
-This means that you code must first load the half-precision floating point +
This means that code must first load the half-precision floating point value as an i16, then convert it to float with llvm.convert.from.fp16. Computation can then be performed on the float value (including extending to - double etc). When the value is ready to be stored back to memory, this is - done by converting to float if needed, then converting to i16 with + double etc). To store the value back to memory, it is first converted to + float if needed, then converted to i16 with llvm.convert.to.fp16, then storing as an i16 value.
The 'llvm.convert.to.fp16' intrinsic function performs a conversion from single precision floating point format to half precision - floating point format. The return value is just an i16 which + floating point format. The return value is an i16 which contains the converted number.
The 'llvm.convert.from.fp16' intrinsic function performs a - conversion from half single precision floating point format to signgle + conversion from half single precision floating point format to single precision floating point format. The input half-float value is represented by an i16 value.