diff options
author | Dan Gohman <gohman@apple.com> | 2011-12-17 00:04:22 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2011-12-17 00:04:22 +0000 |
commit | ce16339930a2b03e53b4e6399ef59c092a7f2cfa (patch) | |
tree | 8265888014a73aa5764f99d7b6bb0553066f78bc /docs | |
parent | 2e1b0c0cd9fab8f1841e1039cf39dcceeba70f73 (diff) |
The powers that be have decided that LLVM IR should now support 16-bit
"half precision" floating-point with a first-class type.
This patch adds basic IR support (but not codegen support).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146786 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/LangRef.html | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html index 90308a45d2..58ebbc3f05 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -1709,7 +1709,7 @@ in signal handlers).</p> </tr> <tr> <td><a href="#t_floating">floating point</a></td> - <td><tt>float, double, x86_fp80, fp128, ppc_fp128</tt></td> + <td><tt>half, float, double, x86_fp80, fp128, ppc_fp128</tt></td> </tr> <tr> <td><a name="t_firstclass">first class</a></td> @@ -1809,6 +1809,7 @@ in signal handlers).</p> <table> <tbody> <tr><th>Type</th><th>Description</th></tr> + <tr><td><tt>half</tt></td><td>16-bit floating point value</td></tr> <tr><td><tt>float</tt></td><td>32-bit floating point value</td></tr> <tr><td><tt>double</tt></td><td>64-bit floating point value</td></tr> <tr><td><tt>fp128</tt></td><td>128-bit floating point value (112-bit mantissa)</td></tr> @@ -2268,10 +2269,11 @@ in signal handlers).</p> represented in their IEEE hexadecimal format so that assembly and disassembly do not cause any bits to change in the constants.</p> -<p>When using the hexadecimal form, constants of types float and double are +<p>When using the hexadecimal form, constants of types half, float, and double are represented using the 16-digit form shown above (which matches the IEEE754 - representation for double); float values must, however, be exactly - representable as IEE754 single precision. Hexadecimal format is always used + representation for double); half and float values must, however, be exactly + representable as IEE754 half and single precision, respectively. + Hexadecimal format is always used for long double, and there are three forms of long double. The 80-bit format used by x86 is represented as <tt>0xK</tt> followed by 20 hexadecimal digits. The 128-bit format used by PowerPC (two adjacent doubles) is represented |