blob: e84920a1e150579b54dd2ddf18c6376fd8a14597 [file] [log] [blame]
Ryan OSheade36e4a2020-03-13 16:26:19 +00001<!-- Copyright (c) 2020 ARM Limited. -->
2<!-- -->
3<!-- SPDX-License-Identifier: MIT -->
4<!-- -->
5<!-- HTML header for doxygen 1.8.13-->
6<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
7<html xmlns="http://www.w3.org/1999/xhtml">
8<head>
9<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
10<meta http-equiv="X-UA-Compatible" content="IE=9"/>
11<meta name="generator" content="Doxygen 1.8.13"/>
12<meta name="robots" content="NOINDEX, NOFOLLOW" />
13<meta name="viewport" content="width=device-width, initial-scale=1"/>
14<title>ArmNN: BFloat16 Class Reference</title>
15<link href="tabs.css" rel="stylesheet" type="text/css"/>
16<script type="text/javascript" src="jquery.js"></script>
17<script type="text/javascript" src="dynsections.js"></script>
18<link href="navtree.css" rel="stylesheet" type="text/css"/>
19<script type="text/javascript" src="resize.js"></script>
20<script type="text/javascript" src="navtreedata.js"></script>
21<script type="text/javascript" src="navtree.js"></script>
22<script type="text/javascript">
23 $(document).ready(initResizable);
24</script>
25<link href="search/search.css" rel="stylesheet" type="text/css"/>
26<script type="text/javascript" src="search/searchdata.js"></script>
27<script type="text/javascript" src="search/search.js"></script>
28<script type="text/x-mathjax-config">
29 MathJax.Hub.Config({
30 extensions: ["tex2jax.js"],
31 jax: ["input/TeX","output/HTML-CSS"],
32});
33</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
34<link href="doxygen.css" rel="stylesheet" type="text/css" />
35<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
36</head>
37<body>
38<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
39<div id="titlearea">
40<table cellspacing="0" cellpadding="0">
41 <tbody>
42 <tr style="height: 56px;">
43 <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
44 <td style="padding-left: 0.5em;">
45 <div id="projectname">
46 &#160;<span id="projectnumber">20.02</span>
47 </div>
48 </td>
49 </tr>
50 </tbody>
51</table>
52</div>
53<!-- end header part -->
54<!-- Generated by Doxygen 1.8.13 -->
55<script type="text/javascript">
56var searchBox = new SearchBox("searchBox", "search",false,'Search');
57</script>
58<script type="text/javascript" src="menudata.js"></script>
59<script type="text/javascript" src="menu.js"></script>
60<script type="text/javascript">
61$(function() {
62 initMenu('',true,false,'search.php','Search');
63 $(document).ready(function() { init_search(); });
64});
65</script>
66<div id="main-nav"></div>
67</div><!-- top -->
68<div id="side-nav" class="ui-resizable side-nav-resizable">
69 <div id="nav-tree">
70 <div id="nav-tree-contents">
71 <div id="nav-sync" class="sync"></div>
72 </div>
73 </div>
74 <div id="splitbar" style="-moz-user-select:none;"
75 class="ui-resizable-handle">
76 </div>
77</div>
78<script type="text/javascript">
79$(document).ready(function(){initNavTree('classarmnn_1_1_b_float16.xhtml','');});
80</script>
81<div id="doc-content">
82<!-- window showing the filter options -->
83<div id="MSearchSelectWindow"
84 onmouseover="return searchBox.OnSearchSelectShow()"
85 onmouseout="return searchBox.OnSearchSelectHide()"
86 onkeydown="return searchBox.OnSearchSelectKey(event)">
87</div>
88
89<!-- iframe showing the search results (closed by default) -->
90<div id="MSearchResultsWindow">
91<iframe src="javascript:void(0)" frameborder="0"
92 name="MSearchResults" id="MSearchResults">
93</iframe>
94</div>
95
96<div class="header">
97 <div class="summary">
98<a href="#pub-methods">Public Member Functions</a> &#124;
99<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
100<a href="classarmnn_1_1_b_float16-members.xhtml">List of all members</a> </div>
101 <div class="headertitle">
102<div class="title">BFloat16 Class Reference</div> </div>
103</div><!--header-->
104<div class="contents">
105
106<p><code>#include &lt;<a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>&gt;</code></p>
107<table class="memberdecls">
108<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
109Public Member Functions</h2></td></tr>
110<tr class="memitem:a8f4fc25560afea5a7a45cdbf20fc30ca"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">BFloat16</a> ()</td></tr>
111<tr class="separator:a8f4fc25560afea5a7a45cdbf20fc30ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
112<tr class="memitem:a58f28952f1e43061905be5f1789cccfe"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#a58f28952f1e43061905be5f1789cccfe">BFloat16</a> (uint16_t v)</td></tr>
113<tr class="separator:a58f28952f1e43061905be5f1789cccfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
114<tr class="memitem:ac5c86c8ca117ed170c80f74e98b55d9b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#ac5c86c8ca117ed170c80f74e98b55d9b">BFloat16</a> (float v)</td></tr>
115<tr class="separator:ac5c86c8ca117ed170c80f74e98b55d9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
116<tr class="memitem:abc4ec9f715112697477f2f425122ce21"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#abc4ec9f715112697477f2f425122ce21">operator float</a> () const</td></tr>
117<tr class="separator:abc4ec9f715112697477f2f425122ce21"><td class="memSeparator" colspan="2">&#160;</td></tr>
118<tr class="memitem:a76bc1a86051c4140e81a9322b6d9a43c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#a76bc1a86051c4140e81a9322b6d9a43c">operator=</a> (const <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> &amp;other)</td></tr>
119<tr class="separator:a76bc1a86051c4140e81a9322b6d9a43c"><td class="memSeparator" colspan="2">&#160;</td></tr>
120<tr class="memitem:a2cb077e0d34d52b8c3a5552533c4600f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#a2cb077e0d34d52b8c3a5552533c4600f">operator=</a> (float v)</td></tr>
121<tr class="separator:a2cb077e0d34d52b8c3a5552533c4600f"><td class="memSeparator" colspan="2">&#160;</td></tr>
122<tr class="memitem:aecfc3fae6930caee98c9fc8b973068a8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#aecfc3fae6930caee98c9fc8b973068a8">operator==</a> (const <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> &amp;r) const</td></tr>
123<tr class="separator:aecfc3fae6930caee98c9fc8b973068a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
124<tr class="memitem:afe0f15d338fde36113a613f6e165b0e9"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#afe0f15d338fde36113a613f6e165b0e9">ToFloat32</a> () const</td></tr>
125<tr class="separator:afe0f15d338fde36113a613f6e165b0e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
126<tr class="memitem:afbd0d2d6540777e3898d125b79f6a5bc"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#afbd0d2d6540777e3898d125b79f6a5bc">Val</a> () const</td></tr>
127<tr class="separator:afbd0d2d6540777e3898d125b79f6a5bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
128</table><table class="memberdecls">
129<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
130Static Public Member Functions</h2></td></tr>
131<tr class="memitem:a3ff08d61c8f7403c9f790e2b96d91a9d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#a3ff08d61c8f7403c9f790e2b96d91a9d">Float32ToBFloat16</a> (const float v)</td></tr>
132<tr class="separator:a3ff08d61c8f7403c9f790e2b96d91a9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
133<tr class="memitem:a62b171b39ea69724817f5fe08169ca7d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#a62b171b39ea69724817f5fe08169ca7d">Max</a> ()</td></tr>
134<tr class="separator:a62b171b39ea69724817f5fe08169ca7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
135<tr class="memitem:ae80b11dd8875fbf6e76cb054764ca6fb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#ae80b11dd8875fbf6e76cb054764ca6fb">Nan</a> ()</td></tr>
136<tr class="separator:ae80b11dd8875fbf6e76cb054764ca6fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
137<tr class="memitem:ae5b250d59f169e00a39ad3ec787db22a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_b_float16.xhtml#ae5b250d59f169e00a39ad3ec787db22a">Inf</a> ()</td></tr>
138<tr class="separator:ae5b250d59f169e00a39ad3ec787db22a"><td class="memSeparator" colspan="2">&#160;</td></tr>
139</table>
140<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
141<div class="textblock">
142<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00014">14</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
143</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
144<a id="a8f4fc25560afea5a7a45cdbf20fc30ca"></a>
145<h2 class="memtitle"><span class="permalink"><a href="#a8f4fc25560afea5a7a45cdbf20fc30ca">&#9670;&nbsp;</a></span>BFloat16() <span class="overload">[1/3]</span></h2>
146
147<div class="memitem">
148<div class="memproto">
149<table class="mlabels">
150 <tr>
151 <td class="mlabels-left">
152 <table class="memname">
153 <tr>
154 <td class="memname"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> </td>
155 <td>(</td>
156 <td class="paramname"></td><td>)</td>
157 <td></td>
158 </tr>
159 </table>
160 </td>
161 <td class="mlabels-right">
162<span class="mlabels"><span class="mlabel">inline</span></span> </td>
163 </tr>
164</table>
165</div><div class="memdoc">
166
167<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00017">17</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
168
169<p class="reference">Referenced by <a class="el" href="_b_float16_8hpp_source.xhtml#l00111">BFloat16::Inf()</a>, <a class="el" href="_b_float16_8hpp_source.xhtml#l00099">BFloat16::Max()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00105">BFloat16::Nan()</a>.</p>
170<div class="fragment"><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; : m_Value(0)</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; {}</div></div><!-- fragment -->
171</div>
172</div>
173<a id="a58f28952f1e43061905be5f1789cccfe"></a>
174<h2 class="memtitle"><span class="permalink"><a href="#a58f28952f1e43061905be5f1789cccfe">&#9670;&nbsp;</a></span>BFloat16() <span class="overload">[2/3]</span></h2>
175
176<div class="memitem">
177<div class="memproto">
178<table class="mlabels">
179 <tr>
180 <td class="mlabels-left">
181 <table class="memname">
182 <tr>
183 <td class="memname"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> </td>
184 <td>(</td>
185 <td class="paramtype">uint16_t&#160;</td>
186 <td class="paramname"><em>v</em></td><td>)</td>
187 <td></td>
188 </tr>
189 </table>
190 </td>
191 <td class="mlabels-right">
192<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
193 </tr>
194</table>
195</div><div class="memdoc">
196
197<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00021">21</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
198<div class="fragment"><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; : m_Value(v)</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; {}</div></div><!-- fragment -->
199</div>
200</div>
201<a id="ac5c86c8ca117ed170c80f74e98b55d9b"></a>
202<h2 class="memtitle"><span class="permalink"><a href="#ac5c86c8ca117ed170c80f74e98b55d9b">&#9670;&nbsp;</a></span>BFloat16() <span class="overload">[3/3]</span></h2>
203
204<div class="memitem">
205<div class="memproto">
206<table class="mlabels">
207 <tr>
208 <td class="mlabels-left">
209 <table class="memname">
210 <tr>
211 <td class="memname"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> </td>
212 <td>(</td>
213 <td class="paramtype">float&#160;</td>
214 <td class="paramname"><em>v</em></td><td>)</td>
215 <td></td>
216 </tr>
217 </table>
218 </td>
219 <td class="mlabels-right">
220<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
221 </tr>
222</table>
223</div><div class="memdoc">
224
225<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00025">25</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
226
227<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00052">BFloat16::Float32ToBFloat16()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00094">BFloat16::Val()</a>.</p>
228<div class="fragment"><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; {</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; m_Value = <a class="code" href="classarmnn_1_1_b_float16.xhtml#a3ff08d61c8f7403c9f790e2b96d91a9d">Float32ToBFloat16</a>(v).<a class="code" href="classarmnn_1_1_b_float16.xhtml#afbd0d2d6540777e3898d125b79f6a5bc">Val</a>();</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; }</div><div class="ttc" id="classarmnn_1_1_b_float16_xhtml_afbd0d2d6540777e3898d125b79f6a5bc"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#afbd0d2d6540777e3898d125b79f6a5bc">armnn::BFloat16::Val</a></div><div class="ttdeci">uint16_t Val() const</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00094">BFloat16.hpp:94</a></div></div>
229<div class="ttc" id="classarmnn_1_1_b_float16_xhtml_a3ff08d61c8f7403c9f790e2b96d91a9d"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#a3ff08d61c8f7403c9f790e2b96d91a9d">armnn::BFloat16::Float32ToBFloat16</a></div><div class="ttdeci">static BFloat16 Float32ToBFloat16(const float v)</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00052">BFloat16.hpp:52</a></div></div>
230</div><!-- fragment -->
231</div>
232</div>
233<h2 class="groupheader">Member Function Documentation</h2>
234<a id="a3ff08d61c8f7403c9f790e2b96d91a9d"></a>
235<h2 class="memtitle"><span class="permalink"><a href="#a3ff08d61c8f7403c9f790e2b96d91a9d">&#9670;&nbsp;</a></span>Float32ToBFloat16()</h2>
236
237<div class="memitem">
238<div class="memproto">
239<table class="mlabels">
240 <tr>
241 <td class="mlabels-left">
242 <table class="memname">
243 <tr>
244 <td class="memname">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> Float32ToBFloat16 </td>
245 <td>(</td>
246 <td class="paramtype">const float&#160;</td>
247 <td class="paramname"><em>v</em></td><td>)</td>
248 <td></td>
249 </tr>
250 </table>
251 </td>
252 <td class="mlabels-right">
253<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
254 </tr>
255</table>
256</div><div class="memdoc">
257
258<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00052">52</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
259
260<p class="reference">References <a class="el" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acb5e100e5a9a3e7f6d1fd97512215282">armnn::error</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00105">BFloat16::Nan()</a>.</p>
261
262<p class="reference">Referenced by <a class="el" href="_b_float16_8hpp_source.xhtml#l00025">BFloat16::BFloat16()</a>, <a class="el" href="_utils_tests_8cpp_source.xhtml#l00124">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00041">BFloat16::operator=()</a>.</p>
263<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">if</span> (std::isnan(v))</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_b_float16.xhtml#ae80b11dd8875fbf6e76cb054764ca6fb">Nan</a>();</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="comment">// Round value to the nearest even</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">// Float32</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">// S EEEEEEEE MMMMMMLRMMMMMMMMMMMMMMM</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">// BFloat16</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">// S EEEEEEEE MMMMMML</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// LSB (L): Least significat bit of BFloat16 (last bit of the Mantissa of BFloat16)</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// R: Rounding bit</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// LSB = 0, R = 0 -&gt; round down</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// LSB = 1, R = 0 -&gt; round down</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// LSB = 0, R = 1, all the rest = 0 -&gt; round down</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// LSB = 1, R = 1 -&gt; round up</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// LSB = 0, R = 1 -&gt; round up</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">const</span> uint32_t* u32 = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint32_t*<span class="keyword">&gt;</span>(&amp;v);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; uint16_t u16 = <span class="keyword">static_cast&lt;</span>uint16_t<span class="keyword">&gt;</span>(*u32 &gt;&gt; 16u);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// Mark the LSB</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">const</span> uint16_t lsb = u16 &amp; 0x0001;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// Mark the error to be truncate (the rest of 16 bits of FP32)</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">const</span> uint16_t <a class="code" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acb5e100e5a9a3e7f6d1fd97512215282">error</a> = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>uint16_t<span class="keyword">&gt;</span>((*u32 &amp; 0x0000FFFF));</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> ((error &gt; 0x8000 || (error == 0x8000 &amp;&amp; lsb == 1)))</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; u16++;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">BFloat16</a> b(u16);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> b;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div><div class="ttc" id="namespacearmnn_xhtml_a4dc0adc6737b5944e7671bee71788407acb5e100e5a9a3e7f6d1fd97512215282"><div class="ttname"><a href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acb5e100e5a9a3e7f6d1fd97512215282">armnn::BoostLogSeverityMapping::error</a></div></div>
264<div class="ttc" id="classarmnn_1_1_b_float16_xhtml_a8f4fc25560afea5a7a45cdbf20fc30ca"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">armnn::BFloat16::BFloat16</a></div><div class="ttdeci">BFloat16()</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00017">BFloat16.hpp:17</a></div></div>
265<div class="ttc" id="classarmnn_1_1_b_float16_xhtml_ae80b11dd8875fbf6e76cb054764ca6fb"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#ae80b11dd8875fbf6e76cb054764ca6fb">armnn::BFloat16::Nan</a></div><div class="ttdeci">static BFloat16 Nan()</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00105">BFloat16.hpp:105</a></div></div>
266</div><!-- fragment -->
267</div>
268</div>
269<a id="ae5b250d59f169e00a39ad3ec787db22a"></a>
270<h2 class="memtitle"><span class="permalink"><a href="#ae5b250d59f169e00a39ad3ec787db22a">&#9670;&nbsp;</a></span>Inf()</h2>
271
272<div class="memitem">
273<div class="memproto">
274<table class="mlabels">
275 <tr>
276 <td class="mlabels-left">
277 <table class="memname">
278 <tr>
279 <td class="memname">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> Inf </td>
280 <td>(</td>
281 <td class="paramname"></td><td>)</td>
282 <td></td>
283 </tr>
284 </table>
285 </td>
286 <td class="mlabels-right">
287<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
288 </tr>
289</table>
290</div><div class="memdoc">
291
292<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00111">111</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
293
294<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00017">BFloat16::BFloat16()</a>.</p>
295
296<p class="reference">Referenced by <a class="el" href="_utils_tests_8cpp_source.xhtml#l00088">BOOST_AUTO_TEST_CASE()</a>.</p>
297<div class="fragment"><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; uint16_t infVal = 0x7F80;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">BFloat16</a>(infVal);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div><div class="ttc" id="classarmnn_1_1_b_float16_xhtml_a8f4fc25560afea5a7a45cdbf20fc30ca"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">armnn::BFloat16::BFloat16</a></div><div class="ttdeci">BFloat16()</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00017">BFloat16.hpp:17</a></div></div>
298</div><!-- fragment -->
299</div>
300</div>
301<a id="a62b171b39ea69724817f5fe08169ca7d"></a>
302<h2 class="memtitle"><span class="permalink"><a href="#a62b171b39ea69724817f5fe08169ca7d">&#9670;&nbsp;</a></span>Max()</h2>
303
304<div class="memitem">
305<div class="memproto">
306<table class="mlabels">
307 <tr>
308 <td class="mlabels-left">
309 <table class="memname">
310 <tr>
311 <td class="memname">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> Max </td>
312 <td>(</td>
313 <td class="paramname"></td><td>)</td>
314 <td></td>
315 </tr>
316 </table>
317 </td>
318 <td class="mlabels-right">
319<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
320 </tr>
321</table>
322</div><div class="memdoc">
323
324<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00099">99</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
325
326<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00017">BFloat16::BFloat16()</a>.</p>
327<div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; uint16_t max = 0x7F7F;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">BFloat16</a>(max);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div><div class="ttc" id="classarmnn_1_1_b_float16_xhtml_a8f4fc25560afea5a7a45cdbf20fc30ca"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">armnn::BFloat16::BFloat16</a></div><div class="ttdeci">BFloat16()</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00017">BFloat16.hpp:17</a></div></div>
328</div><!-- fragment -->
329</div>
330</div>
331<a id="ae80b11dd8875fbf6e76cb054764ca6fb"></a>
332<h2 class="memtitle"><span class="permalink"><a href="#ae80b11dd8875fbf6e76cb054764ca6fb">&#9670;&nbsp;</a></span>Nan()</h2>
333
334<div class="memitem">
335<div class="memproto">
336<table class="mlabels">
337 <tr>
338 <td class="mlabels-left">
339 <table class="memname">
340 <tr>
341 <td class="memname">static <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> Nan </td>
342 <td>(</td>
343 <td class="paramname"></td><td>)</td>
344 <td></td>
345 </tr>
346 </table>
347 </td>
348 <td class="mlabels-right">
349<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
350 </tr>
351</table>
352</div><div class="memdoc">
353
354<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00105">105</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
355
356<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00017">BFloat16::BFloat16()</a>.</p>
357
358<p class="reference">Referenced by <a class="el" href="_utils_tests_8cpp_source.xhtml#l00088">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00052">BFloat16::Float32ToBFloat16()</a>.</p>
359<div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; uint16_t nan = 0x7FC0;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">BFloat16</a>(nan);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div><div class="ttc" id="classarmnn_1_1_b_float16_xhtml_a8f4fc25560afea5a7a45cdbf20fc30ca"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#a8f4fc25560afea5a7a45cdbf20fc30ca">armnn::BFloat16::BFloat16</a></div><div class="ttdeci">BFloat16()</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00017">BFloat16.hpp:17</a></div></div>
360</div><!-- fragment -->
361</div>
362</div>
363<a id="abc4ec9f715112697477f2f425122ce21"></a>
364<h2 class="memtitle"><span class="permalink"><a href="#abc4ec9f715112697477f2f425122ce21">&#9670;&nbsp;</a></span>operator float()</h2>
365
366<div class="memitem">
367<div class="memproto">
368<table class="mlabels">
369 <tr>
370 <td class="mlabels-left">
371 <table class="memname">
372 <tr>
373 <td class="memname">operator float </td>
374 <td>(</td>
375 <td class="paramname"></td><td>)</td>
376 <td> const</td>
377 </tr>
378 </table>
379 </td>
380 <td class="mlabels-right">
381<span class="mlabels"><span class="mlabel">inline</span></span> </td>
382 </tr>
383</table>
384</div><div class="memdoc">
385
386<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00030">30</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
387
388<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00087">BFloat16::ToFloat32()</a>.</p>
389<div class="fragment"><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_b_float16.xhtml#afe0f15d338fde36113a613f6e165b0e9">ToFloat32</a>();</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; }</div><div class="ttc" id="classarmnn_1_1_b_float16_xhtml_afe0f15d338fde36113a613f6e165b0e9"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#afe0f15d338fde36113a613f6e165b0e9">armnn::BFloat16::ToFloat32</a></div><div class="ttdeci">float ToFloat32() const</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00087">BFloat16.hpp:87</a></div></div>
390</div><!-- fragment -->
391</div>
392</div>
393<a id="a76bc1a86051c4140e81a9322b6d9a43c"></a>
394<h2 class="memtitle"><span class="permalink"><a href="#a76bc1a86051c4140e81a9322b6d9a43c">&#9670;&nbsp;</a></span>operator=() <span class="overload">[1/2]</span></h2>
395
396<div class="memitem">
397<div class="memproto">
398<table class="mlabels">
399 <tr>
400 <td class="mlabels-left">
401 <table class="memname">
402 <tr>
403 <td class="memname"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a>&amp; operator= </td>
404 <td>(</td>
405 <td class="paramtype">const <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> &amp;&#160;</td>
406 <td class="paramname"><em>other</em></td><td>)</td>
407 <td></td>
408 </tr>
409 </table>
410 </td>
411 <td class="mlabels-right">
412<span class="mlabels"><span class="mlabel">inline</span></span> </td>
413 </tr>
414</table>
415</div><div class="memdoc">
416
417<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00035">35</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
418
419<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00094">BFloat16::Val()</a>.</p>
420<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; {</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; m_Value = other.Val();</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div></div><!-- fragment -->
421</div>
422</div>
423<a id="a2cb077e0d34d52b8c3a5552533c4600f"></a>
424<h2 class="memtitle"><span class="permalink"><a href="#a2cb077e0d34d52b8c3a5552533c4600f">&#9670;&nbsp;</a></span>operator=() <span class="overload">[2/2]</span></h2>
425
426<div class="memitem">
427<div class="memproto">
428<table class="mlabels">
429 <tr>
430 <td class="mlabels-left">
431 <table class="memname">
432 <tr>
433 <td class="memname"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a>&amp; operator= </td>
434 <td>(</td>
435 <td class="paramtype">float&#160;</td>
436 <td class="paramname"><em>v</em></td><td>)</td>
437 <td></td>
438 </tr>
439 </table>
440 </td>
441 <td class="mlabels-right">
442<span class="mlabels"><span class="mlabel">inline</span></span> </td>
443 </tr>
444</table>
445</div><div class="memdoc">
446
447<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00041">41</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
448
449<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00052">BFloat16::Float32ToBFloat16()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00094">BFloat16::Val()</a>.</p>
450<div class="fragment"><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; m_Value = <a class="code" href="classarmnn_1_1_b_float16.xhtml#a3ff08d61c8f7403c9f790e2b96d91a9d">Float32ToBFloat16</a>(v).<a class="code" href="classarmnn_1_1_b_float16.xhtml#afbd0d2d6540777e3898d125b79f6a5bc">Val</a>();</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; }</div><div class="ttc" id="classarmnn_1_1_b_float16_xhtml_afbd0d2d6540777e3898d125b79f6a5bc"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#afbd0d2d6540777e3898d125b79f6a5bc">armnn::BFloat16::Val</a></div><div class="ttdeci">uint16_t Val() const</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00094">BFloat16.hpp:94</a></div></div>
451<div class="ttc" id="classarmnn_1_1_b_float16_xhtml_a3ff08d61c8f7403c9f790e2b96d91a9d"><div class="ttname"><a href="classarmnn_1_1_b_float16.xhtml#a3ff08d61c8f7403c9f790e2b96d91a9d">armnn::BFloat16::Float32ToBFloat16</a></div><div class="ttdeci">static BFloat16 Float32ToBFloat16(const float v)</div><div class="ttdef"><b>Definition:</b> <a href="_b_float16_8hpp_source.xhtml#l00052">BFloat16.hpp:52</a></div></div>
452</div><!-- fragment -->
453</div>
454</div>
455<a id="aecfc3fae6930caee98c9fc8b973068a8"></a>
456<h2 class="memtitle"><span class="permalink"><a href="#aecfc3fae6930caee98c9fc8b973068a8">&#9670;&nbsp;</a></span>operator==()</h2>
457
458<div class="memitem">
459<div class="memproto">
460<table class="mlabels">
461 <tr>
462 <td class="mlabels-left">
463 <table class="memname">
464 <tr>
465 <td class="memname">bool operator== </td>
466 <td>(</td>
467 <td class="paramtype">const <a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a> &amp;&#160;</td>
468 <td class="paramname"><em>r</em></td><td>)</td>
469 <td> const</td>
470 </tr>
471 </table>
472 </td>
473 <td class="mlabels-right">
474<span class="mlabels"><span class="mlabel">inline</span></span> </td>
475 </tr>
476</table>
477</div><div class="memdoc">
478
479<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00047">47</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
480
481<p class="reference">References <a class="el" href="_b_float16_8hpp_source.xhtml#l00094">BFloat16::Val()</a>.</p>
482<div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">return</span> m_Value == r.Val();</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div></div><!-- fragment -->
483</div>
484</div>
485<a id="afe0f15d338fde36113a613f6e165b0e9"></a>
486<h2 class="memtitle"><span class="permalink"><a href="#afe0f15d338fde36113a613f6e165b0e9">&#9670;&nbsp;</a></span>ToFloat32()</h2>
487
488<div class="memitem">
489<div class="memproto">
490<table class="mlabels">
491 <tr>
492 <td class="mlabels-left">
493 <table class="memname">
494 <tr>
495 <td class="memname">float ToFloat32 </td>
496 <td>(</td>
497 <td class="paramname"></td><td>)</td>
498 <td> const</td>
499 </tr>
500 </table>
501 </td>
502 <td class="mlabels-right">
503<span class="mlabels"><span class="mlabel">inline</span></span> </td>
504 </tr>
505</table>
506</div><div class="memdoc">
507
508<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00087">87</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
509
510<p class="reference">Referenced by <a class="el" href="_utils_tests_8cpp_source.xhtml#l00155">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_floating_point_converter_8cpp_source.xhtml#l00061">FloatingPointConverter::ConvertBFloat16ToFloat32()</a>, <a class="el" href="_b_float16_8hpp_source.xhtml#l00030">BFloat16::operator float()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00121">armnn::operator&lt;&lt;()</a>.</p>
511<div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">const</span> uint32_t u32 = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>uint32_t<span class="keyword">&gt;</span>(m_Value &lt;&lt; 16u);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span>* f32 = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">float</span>*<span class="keyword">&gt;</span>(&amp;u32);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> *f32;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div></div><!-- fragment -->
512</div>
513</div>
514<a id="afbd0d2d6540777e3898d125b79f6a5bc"></a>
515<h2 class="memtitle"><span class="permalink"><a href="#afbd0d2d6540777e3898d125b79f6a5bc">&#9670;&nbsp;</a></span>Val()</h2>
516
517<div class="memitem">
518<div class="memproto">
519<table class="mlabels">
520 <tr>
521 <td class="mlabels-left">
522 <table class="memname">
523 <tr>
524 <td class="memname">uint16_t Val </td>
525 <td>(</td>
526 <td class="paramname"></td><td>)</td>
527 <td> const</td>
528 </tr>
529 </table>
530 </td>
531 <td class="mlabels-right">
532<span class="mlabels"><span class="mlabel">inline</span></span> </td>
533 </tr>
534</table>
535</div><div class="memdoc">
536
537<p class="definition">Definition at line <a class="el" href="_b_float16_8hpp_source.xhtml#l00094">94</a> of file <a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a>.</p>
538
539<p class="reference">Referenced by <a class="el" href="_b_float16_8hpp_source.xhtml#l00025">BFloat16::BFloat16()</a>, <a class="el" href="_floating_point_converter_test_8cpp_source.xhtml#l00056">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_b_float16_8hpp_source.xhtml#l00121">armnn::operator&lt;&lt;()</a>, <a class="el" href="_b_float16_8hpp_source.xhtml#l00035">BFloat16::operator=()</a>, and <a class="el" href="_b_float16_8hpp_source.xhtml#l00047">BFloat16::operator==()</a>.</p>
540<div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> m_Value;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div></div><!-- fragment -->
541</div>
542</div>
543<hr/>The documentation for this class was generated from the following file:<ul>
544<li>src/armnnUtils/<a class="el" href="_b_float16_8hpp_source.xhtml">BFloat16.hpp</a></li>
545</ul>
546</div><!-- contents -->
547</div><!-- doc-content -->
548<!-- start footer part -->
549<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
550 <ul>
551 <li class="navelem"><a class="el" href="namespacearmnn.xhtml">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_b_float16.xhtml">BFloat16</a></li>
552 <li class="footer">Generated on Fri Mar 13 2020 16:09:17 for ArmNN by
553 <a href="http://www.doxygen.org/index.html">
554 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
555 </ul>
556</div>
557</body>
558</html>