arm_compute v18.05
diff --git a/documentation/fixed__point_8h.xhtml b/documentation/fixed__point_8h.xhtml
index 3611542..45c46f9 100644
--- a/documentation/fixed__point_8h.xhtml
+++ b/documentation/fixed__point_8h.xhtml
@@ -40,7 +40,7 @@
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">Compute Library
-  <span id="projectnumber">18.03</span>
+  <span id="projectnumber">18.05</span>
</div>
</td>
</tr>
@@ -198,9 +198,9 @@
<tr class="separator:a46e1f404fdd6e80eec6e0f50e5f0383c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a36ef9fc1f840658270248d8e53fd8140"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a36ef9fc1f840658270248d8e53fd8140">qs16_SHIFT</a>   0</td></tr>
<tr class="separator:a36ef9fc1f840658270248d8e53fd8140"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae802822defb0fa3a7f74f98e324696cb"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a></td></tr>
+<tr class="memitem:ae802822defb0fa3a7f74f98e324696cb"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, size)   type##x##size</td></tr>
<tr class="separator:ae802822defb0fa3a7f74f98e324696cb"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a36f754c05b6fddf6df0d8d0a74f8159f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a>(type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   <a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:a36f754c05b6fddf6df0d8d0a74f8159f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a>(type, size)   <a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, size)</td></tr>
<tr class="separator:a36f754c05b6fddf6df0d8d0a74f8159f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a37089d60b5f5a76176fdb94835a98ff4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a37089d60b5f5a76176fdb94835a98ff4">CONVERT_STR3</a>(x, type, rtype)   (convert_##rtype((x)))</td></tr>
<tr class="separator:a37089d60b5f5a76176fdb94835a98ff4"><td class="memSeparator" colspan="2"> </td></tr>
@@ -221,56 +221,56 @@
<tr class="memitem:a1acc7badafd7def20af187c5b5bfdec2"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a1acc7badafd7def20af187c5b5bfdec2">ABSQ_SAT_IMPL</a>(type)</td></tr>
<tr class="memdesc:a1acc7badafd7def20af187c5b5bfdec2"><td class="mdescLeft"> </td><td class="mdescRight">Computes saturating absolute value of fixed point vector. <a href="#a1acc7badafd7def20af187c5b5bfdec2">More...</a><br /></td></tr>
<tr class="separator:a1acc7badafd7def20af187c5b5bfdec2"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a096a0b33d9bf00fd65287a1ceafa227c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a096a0b33d9bf00fd65287a1ceafa227c">ABS_SAT_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   abs_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>##_sat((a))</td></tr>
+<tr class="memitem:a096a0b33d9bf00fd65287a1ceafa227c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a096a0b33d9bf00fd65287a1ceafa227c">ABS_SAT_OP_EXPAND_STR</a>(a, type, size)   abs_##type##x##size##_sat((a))</td></tr>
<tr class="separator:a096a0b33d9bf00fd65287a1ceafa227c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a66d987917da70dfc88bee76cda323e0a"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a66d987917da70dfc88bee76cda323e0a">ABS_SAT_OP_EXPAND</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   <a class="el" href="fixed__point_8h.xhtml#a096a0b33d9bf00fd65287a1ceafa227c">ABS_SAT_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:a66d987917da70dfc88bee76cda323e0a"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a66d987917da70dfc88bee76cda323e0a">ABS_SAT_OP_EXPAND</a>(a, type, size)   <a class="el" href="fixed__point_8h.xhtml#a096a0b33d9bf00fd65287a1ceafa227c">ABS_SAT_OP_EXPAND_STR</a>(a, type, size)</td></tr>
<tr class="separator:a66d987917da70dfc88bee76cda323e0a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a21e1c22d1a3f0110ceb0ef48c6dddb86"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a21e1c22d1a3f0110ceb0ef48c6dddb86">MAXQ_IMPL</a>(type)</td></tr>
<tr class="memdesc:a21e1c22d1a3f0110ceb0ef48c6dddb86"><td class="mdescLeft"> </td><td class="mdescRight">Computes max of fixed point types. <a href="#a21e1c22d1a3f0110ceb0ef48c6dddb86">More...</a><br /></td></tr>
<tr class="separator:a21e1c22d1a3f0110ceb0ef48c6dddb86"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a60a130cf40adc457ce483d5912e1459c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a60a130cf40adc457ce483d5912e1459c">MAX_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   max_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b))</td></tr>
+<tr class="memitem:a60a130cf40adc457ce483d5912e1459c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a60a130cf40adc457ce483d5912e1459c">MAX_OP_EXPAND_STR</a>(a, b, type, size)   max_##type##x##size((a), (b))</td></tr>
<tr class="separator:a60a130cf40adc457ce483d5912e1459c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:afeab3b374d78c30712736e16cbb5aa15"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#afeab3b374d78c30712736e16cbb5aa15">MAX_OP_EXPAND</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   <a class="el" href="fixed__point_8h.xhtml#a60a130cf40adc457ce483d5912e1459c">MAX_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:afeab3b374d78c30712736e16cbb5aa15"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#afeab3b374d78c30712736e16cbb5aa15">MAX_OP_EXPAND</a>(a, b, type, size)   <a class="el" href="fixed__point_8h.xhtml#a60a130cf40adc457ce483d5912e1459c">MAX_OP_EXPAND_STR</a>(a, b, type, size)</td></tr>
<tr class="separator:afeab3b374d78c30712736e16cbb5aa15"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ad2ad548e04bfbba48bf75e29c9699182"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ad2ad548e04bfbba48bf75e29c9699182">ADDQ_SAT_IMPL</a>(type)</td></tr>
<tr class="memdesc:ad2ad548e04bfbba48bf75e29c9699182"><td class="mdescLeft"> </td><td class="mdescRight">Computes saturated addition of fixed point types. <a href="#ad2ad548e04bfbba48bf75e29c9699182">More...</a><br /></td></tr>
<tr class="separator:ad2ad548e04bfbba48bf75e29c9699182"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8fe4e6aa79b6e2faec019e53e1f39113"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8fe4e6aa79b6e2faec019e53e1f39113">ADD_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   add_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b))</td></tr>
+<tr class="memitem:a8fe4e6aa79b6e2faec019e53e1f39113"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8fe4e6aa79b6e2faec019e53e1f39113">ADD_SAT_OP_EXPAND_STR</a>(a, b, type, size)   add_sat_##type##x##size((a), (b))</td></tr>
<tr class="separator:a8fe4e6aa79b6e2faec019e53e1f39113"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6b1acbaff6cb3bad4edda9a93dac1f9e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a6b1acbaff6cb3bad4edda9a93dac1f9e">ADD_SAT_OP_EXPAND</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   <a class="el" href="fixed__point_8h.xhtml#a8fe4e6aa79b6e2faec019e53e1f39113">ADD_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:a6b1acbaff6cb3bad4edda9a93dac1f9e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a6b1acbaff6cb3bad4edda9a93dac1f9e">ADD_SAT_OP_EXPAND</a>(a, b, type, size)   <a class="el" href="fixed__point_8h.xhtml#a8fe4e6aa79b6e2faec019e53e1f39113">ADD_SAT_OP_EXPAND_STR</a>(a, b, type, size)</td></tr>
<tr class="separator:a6b1acbaff6cb3bad4edda9a93dac1f9e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab555884d2db3be32fc693f670d8a99c7"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ab555884d2db3be32fc693f670d8a99c7">SUBQ_SAT_IMPL</a>(type)</td></tr>
<tr class="memdesc:ab555884d2db3be32fc693f670d8a99c7"><td class="mdescLeft"> </td><td class="mdescRight">Computes saturated subtraction of fixed point types. <a href="#ab555884d2db3be32fc693f670d8a99c7">More...</a><br /></td></tr>
<tr class="separator:ab555884d2db3be32fc693f670d8a99c7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7076a8fac3c484611ce522dc7103fff4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a7076a8fac3c484611ce522dc7103fff4">SUB_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   sub_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b))</td></tr>
+<tr class="memitem:a7076a8fac3c484611ce522dc7103fff4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a7076a8fac3c484611ce522dc7103fff4">SUB_SAT_OP_EXPAND_STR</a>(a, b, type, size)   sub_sat_##type##x##size((a), (b))</td></tr>
<tr class="separator:a7076a8fac3c484611ce522dc7103fff4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac081784e1547f3f2e9065e3ed54f2fba"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ac081784e1547f3f2e9065e3ed54f2fba">SUB_SAT_OP_EXPAND</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)   <a class="el" href="fixed__point_8h.xhtml#a7076a8fac3c484611ce522dc7103fff4">SUB_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:ac081784e1547f3f2e9065e3ed54f2fba"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ac081784e1547f3f2e9065e3ed54f2fba">SUB_SAT_OP_EXPAND</a>(a, b, type, size)   <a class="el" href="fixed__point_8h.xhtml#a7076a8fac3c484611ce522dc7103fff4">SUB_SAT_OP_EXPAND_STR</a>(a, b, type, size)</td></tr>
<tr class="separator:ac081784e1547f3f2e9065e3ed54f2fba"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a8900371ff8da316eea9c61c993043ca5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8900371ff8da316eea9c61c993043ca5">MULQ_IMPL</a>(type, itype)</td></tr>
<tr class="separator:a8900371ff8da316eea9c61c993043ca5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:afadf927c77d81f7dcd9af28b65c9c79d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#afadf927c77d81f7dcd9af28b65c9c79d">MUL_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   mul_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (position))</td></tr>
+<tr class="memitem:afadf927c77d81f7dcd9af28b65c9c79d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#afadf927c77d81f7dcd9af28b65c9c79d">MUL_OP_EXPAND_STR</a>(a, b, type, size, position)   mul_##type##x##size((a), (b), (position))</td></tr>
<tr class="separator:afadf927c77d81f7dcd9af28b65c9c79d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a1b9871e1733f3827061df926120f9f46"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a1b9871e1733f3827061df926120f9f46">MUL_OP_EXPAND</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#afadf927c77d81f7dcd9af28b65c9c79d">MUL_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a1b9871e1733f3827061df926120f9f46"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a1b9871e1733f3827061df926120f9f46">MUL_OP_EXPAND</a>(a, b, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#afadf927c77d81f7dcd9af28b65c9c79d">MUL_OP_EXPAND_STR</a>(a, b, type, size, position)</td></tr>
<tr class="separator:a1b9871e1733f3827061df926120f9f46"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a329eb419d445e448ec885a2f69a1fb0f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a329eb419d445e448ec885a2f69a1fb0f">MULQ_SAT_IMPL</a>(type, itype)</td></tr>
<tr class="separator:a329eb419d445e448ec885a2f69a1fb0f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4e160e8fcff1c5ec8fba57505cb0ad91"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a4e160e8fcff1c5ec8fba57505cb0ad91">MUL_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   mul_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (position))</td></tr>
+<tr class="memitem:a4e160e8fcff1c5ec8fba57505cb0ad91"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a4e160e8fcff1c5ec8fba57505cb0ad91">MUL_SAT_OP_EXPAND_STR</a>(a, b, type, size, position)   mul_sat_##type##x##size((a), (b), (position))</td></tr>
<tr class="separator:a4e160e8fcff1c5ec8fba57505cb0ad91"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6b559f5128a43015ffc6c855cf84c243"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a4e160e8fcff1c5ec8fba57505cb0ad91">MUL_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a6b559f5128a43015ffc6c855cf84c243"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(a, b, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a4e160e8fcff1c5ec8fba57505cb0ad91">MUL_SAT_OP_EXPAND_STR</a>(a, b, type, size, position)</td></tr>
<tr class="separator:a6b559f5128a43015ffc6c855cf84c243"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a31a4619a484c58adcd6e7a9a8354cf23"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a31a4619a484c58adcd6e7a9a8354cf23">MLAQ_SAT_IMPL</a>(type, itype)</td></tr>
<tr class="memdesc:a31a4619a484c58adcd6e7a9a8354cf23"><td class="mdescLeft"> </td><td class="mdescRight">Saturate multiply-accumulate. <a href="#a31a4619a484c58adcd6e7a9a8354cf23">More...</a><br /></td></tr>
<tr class="separator:a31a4619a484c58adcd6e7a9a8354cf23"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8cde8777703946ea2e06b20d6831d489"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8cde8777703946ea2e06b20d6831d489">MLA_SAT_OP_EXPAND_STR</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   mla_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (c), (position))</td></tr>
+<tr class="memitem:a8cde8777703946ea2e06b20d6831d489"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8cde8777703946ea2e06b20d6831d489">MLA_SAT_OP_EXPAND_STR</a>(a, b, c, type, size, position)   mla_sat_##type##x##size((a), (b), (c), (position))</td></tr>
<tr class="separator:a8cde8777703946ea2e06b20d6831d489"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8a25ee378391e23386ca195249610562"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8a25ee378391e23386ca195249610562">MLA_SAT_OP_EXPAND</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a8cde8777703946ea2e06b20d6831d489">MLA_SAT_OP_EXPAND_STR</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a8a25ee378391e23386ca195249610562"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a8a25ee378391e23386ca195249610562">MLA_SAT_OP_EXPAND</a>(a, b, c, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a8cde8777703946ea2e06b20d6831d489">MLA_SAT_OP_EXPAND_STR</a>(a, b, c, type, size, position)</td></tr>
<tr class="separator:a8a25ee378391e23386ca195249610562"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2258d987499bd7c92db2c90977fd2409"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a2258d987499bd7c92db2c90977fd2409">MLALQ_SAT_IMPL</a>(type, itype)</td></tr>
<tr class="memdesc:a2258d987499bd7c92db2c90977fd2409"><td class="mdescLeft"> </td><td class="mdescRight">Saturate multiply-accumulate long. <a href="#a2258d987499bd7c92db2c90977fd2409">More...</a><br /></td></tr>
<tr class="separator:a2258d987499bd7c92db2c90977fd2409"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a80b890755bdc8392bcc853d24b34682d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a80b890755bdc8392bcc853d24b34682d">MLAL_SAT_OP_EXPAND_STR</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   mlal_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (c), (position))</td></tr>
+<tr class="memitem:a80b890755bdc8392bcc853d24b34682d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a80b890755bdc8392bcc853d24b34682d">MLAL_SAT_OP_EXPAND_STR</a>(a, b, c, type, size, position)   mlal_sat_##type##x##size((a), (b), (c), (position))</td></tr>
<tr class="separator:a80b890755bdc8392bcc853d24b34682d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac52a40b99b01208c76483ee00b96ba9e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ac52a40b99b01208c76483ee00b96ba9e">MLAL_SAT_OP_EXPAND</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a80b890755bdc8392bcc853d24b34682d">MLAL_SAT_OP_EXPAND_STR</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:ac52a40b99b01208c76483ee00b96ba9e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ac52a40b99b01208c76483ee00b96ba9e">MLAL_SAT_OP_EXPAND</a>(a, b, c, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a80b890755bdc8392bcc853d24b34682d">MLAL_SAT_OP_EXPAND_STR</a>(a, b, c, type, size, position)</td></tr>
<tr class="separator:ac52a40b99b01208c76483ee00b96ba9e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aac0b47414a86d32e5c891ab6a75b313b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#aac0b47414a86d32e5c891ab6a75b313b">DIVQ_SAT_IMPL</a>(stype, type, itype)</td></tr>
<tr class="memdesc:aac0b47414a86d32e5c891ab6a75b313b"><td class="mdescLeft"> </td><td class="mdescRight">Saturate division of two fixed point vectors. <a href="#aac0b47414a86d32e5c891ab6a75b313b">More...</a><br /></td></tr>
@@ -279,37 +279,37 @@
<tr class="separator:ac2995f9506cbc5c918ecf47f447bcfce"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa13fe0d2ecef3e5b22315baf39715e46"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#aa13fe0d2ecef3e5b22315baf39715e46">DIV_SAT_OP_EXPAND</a>(a, b, type, position)   <a class="el" href="fixed__point_8h.xhtml#ac2995f9506cbc5c918ecf47f447bcfce">DIV_SAT_OP_EXPAND_STR</a>(a, b, type, position)</td></tr>
<tr class="separator:aa13fe0d2ecef3e5b22315baf39715e46"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6ad4d9db82a42c5266cba5e0f317998c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a6ad4d9db82a42c5266cba5e0f317998c">DIV_SAT_OP_VEC_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   div_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (position))</td></tr>
+<tr class="memitem:a6ad4d9db82a42c5266cba5e0f317998c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a6ad4d9db82a42c5266cba5e0f317998c">DIV_SAT_OP_VEC_EXPAND_STR</a>(a, b, type, size, position)   div_sat_##type##x##size((a), (b), (position))</td></tr>
<tr class="separator:a6ad4d9db82a42c5266cba5e0f317998c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a774126960511e4d827f0d2d3d68abe97"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a6ad4d9db82a42c5266cba5e0f317998c">DIV_SAT_OP_VEC_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a774126960511e4d827f0d2d3d68abe97"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a>(a, b, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a6ad4d9db82a42c5266cba5e0f317998c">DIV_SAT_OP_VEC_EXPAND_STR</a>(a, b, type, size, position)</td></tr>
<tr class="separator:a774126960511e4d827f0d2d3d68abe97"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae64808afdc06c77889f1bb0565905949"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ae64808afdc06c77889f1bb0565905949">EXPQ_IMPL</a>(stype, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:ae64808afdc06c77889f1bb0565905949"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ae64808afdc06c77889f1bb0565905949">EXPQ_IMPL</a>(stype, type, size)</td></tr>
<tr class="memdesc:ae64808afdc06c77889f1bb0565905949"><td class="mdescLeft"> </td><td class="mdescRight">Saturate exponential of a fixed point vector. <a href="#ae64808afdc06c77889f1bb0565905949">More...</a><br /></td></tr>
<tr class="separator:ae64808afdc06c77889f1bb0565905949"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a368a98fe336caf8c24840c67735cd04e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a368a98fe336caf8c24840c67735cd04e">EXP_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   exp_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td></tr>
+<tr class="memitem:a368a98fe336caf8c24840c67735cd04e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a368a98fe336caf8c24840c67735cd04e">EXP_OP_EXPAND_STR</a>(a, type, size, position)   exp_sat_##type##x##size((a), (position))</td></tr>
<tr class="separator:a368a98fe336caf8c24840c67735cd04e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a80482c3ae2b0e68658f84f081a6fbdde"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a80482c3ae2b0e68658f84f081a6fbdde">EXP_OP_EXPAND</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a368a98fe336caf8c24840c67735cd04e">EXP_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a80482c3ae2b0e68658f84f081a6fbdde"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a80482c3ae2b0e68658f84f081a6fbdde">EXP_OP_EXPAND</a>(a, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a368a98fe336caf8c24840c67735cd04e">EXP_OP_EXPAND_STR</a>(a, type, size, position)</td></tr>
<tr class="separator:a80482c3ae2b0e68658f84f081a6fbdde"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a902ecdf01fd8a0760e4ef66ce5814a20"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a902ecdf01fd8a0760e4ef66ce5814a20">LOGQ_IMPL</a>(stype, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:a902ecdf01fd8a0760e4ef66ce5814a20"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a902ecdf01fd8a0760e4ef66ce5814a20">LOGQ_IMPL</a>(stype, type, size)</td></tr>
<tr class="memdesc:a902ecdf01fd8a0760e4ef66ce5814a20"><td class="mdescLeft"> </td><td class="mdescRight">Saturate logarithm of a fixed point vector. <a href="#a902ecdf01fd8a0760e4ef66ce5814a20">More...</a><br /></td></tr>
<tr class="separator:a902ecdf01fd8a0760e4ef66ce5814a20"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3ec6148739690f17d7f3811c360802ee"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a3ec6148739690f17d7f3811c360802ee">LOG_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   log_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td></tr>
+<tr class="memitem:a3ec6148739690f17d7f3811c360802ee"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a3ec6148739690f17d7f3811c360802ee">LOG_OP_EXPAND_STR</a>(a, type, size, position)   log_sat_##type##x##size((a), (position))</td></tr>
<tr class="separator:a3ec6148739690f17d7f3811c360802ee"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3f3a83902f2dd8bd456d9f8ebc57c3db"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a3f3a83902f2dd8bd456d9f8ebc57c3db">LOG_OP_EXPAND</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a3ec6148739690f17d7f3811c360802ee">LOG_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a3f3a83902f2dd8bd456d9f8ebc57c3db"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a3f3a83902f2dd8bd456d9f8ebc57c3db">LOG_OP_EXPAND</a>(a, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a3ec6148739690f17d7f3811c360802ee">LOG_OP_EXPAND_STR</a>(a, type, size, position)</td></tr>
<tr class="separator:a3f3a83902f2dd8bd456d9f8ebc57c3db"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a39fff507525792a262467c3e145bb181"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a39fff507525792a262467c3e145bb181">INVSQRTQ_IMPL</a>(stype, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:a39fff507525792a262467c3e145bb181"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a39fff507525792a262467c3e145bb181">INVSQRTQ_IMPL</a>(stype, type, size)</td></tr>
<tr class="memdesc:a39fff507525792a262467c3e145bb181"><td class="mdescLeft"> </td><td class="mdescRight">Saturate inverse square root of a fixed point vector. <a href="#a39fff507525792a262467c3e145bb181">More...</a><br /></td></tr>
<tr class="separator:a39fff507525792a262467c3e145bb181"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac001b306b7ead2e6dcc84a93260600b1"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ac001b306b7ead2e6dcc84a93260600b1">INVSQRT_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   invsqrt_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td></tr>
+<tr class="memitem:ac001b306b7ead2e6dcc84a93260600b1"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ac001b306b7ead2e6dcc84a93260600b1">INVSQRT_OP_EXPAND_STR</a>(a, type, size, position)   invsqrt_sat_##type##x##size((a), (position))</td></tr>
<tr class="separator:ac001b306b7ead2e6dcc84a93260600b1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a26cc71c52d0d09b4b422c474b52b9b01"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a26cc71c52d0d09b4b422c474b52b9b01">INVSQRT_OP_EXPAND</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#ac001b306b7ead2e6dcc84a93260600b1">INVSQRT_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a26cc71c52d0d09b4b422c474b52b9b01"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a26cc71c52d0d09b4b422c474b52b9b01">INVSQRT_OP_EXPAND</a>(a, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#ac001b306b7ead2e6dcc84a93260600b1">INVSQRT_OP_EXPAND_STR</a>(a, type, size, position)</td></tr>
<tr class="separator:a26cc71c52d0d09b4b422c474b52b9b01"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a341448197978a201091ddc00ea22f9e9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a341448197978a201091ddc00ea22f9e9">TANHQ_IMPL</a>(stype, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td></tr>
+<tr class="memitem:a341448197978a201091ddc00ea22f9e9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a341448197978a201091ddc00ea22f9e9">TANHQ_IMPL</a>(stype, type, size)</td></tr>
<tr class="memdesc:a341448197978a201091ddc00ea22f9e9"><td class="mdescLeft"> </td><td class="mdescRight">Saturate hyperbolic tangent of a fixed point vector. <a href="#a341448197978a201091ddc00ea22f9e9">More...</a><br /></td></tr>
<tr class="separator:a341448197978a201091ddc00ea22f9e9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a452864cb983782cff458f61397fb00eb"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a452864cb983782cff458f61397fb00eb">TANH_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   tanh_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td></tr>
+<tr class="memitem:a452864cb983782cff458f61397fb00eb"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a452864cb983782cff458f61397fb00eb">TANH_OP_EXPAND_STR</a>(a, type, size, position)   tanh_sat_##type##x##size((a), (position))</td></tr>
<tr class="separator:a452864cb983782cff458f61397fb00eb"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7033bfe12670e700df8aa3a89f1c592b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a7033bfe12670e700df8aa3a89f1c592b">TANH_OP_EXPAND</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)   <a class="el" href="fixed__point_8h.xhtml#a452864cb983782cff458f61397fb00eb">TANH_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td></tr>
+<tr class="memitem:a7033bfe12670e700df8aa3a89f1c592b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#a7033bfe12670e700df8aa3a89f1c592b">TANH_OP_EXPAND</a>(a, type, size, position)   <a class="el" href="fixed__point_8h.xhtml#a452864cb983782cff458f61397fb00eb">TANH_OP_EXPAND_STR</a>(a, type, size, position)</td></tr>
<tr class="separator:a7033bfe12670e700df8aa3a89f1c592b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab2ab4046b57f5ca70105fc90c25a7d2d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__point_8h.xhtml#ab2ab4046b57f5ca70105fc90c25a7d2d">floatx16</a>   float16</td></tr>
<tr class="separator:ab2ab4046b57f5ca70105fc90c25a7d2d"><td class="memSeparator" colspan="2"> </td></tr>
@@ -573,12 +573,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a096a0b33d9bf00fd65287a1ceafa227c">ABS_SAT_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a096a0b33d9bf00fd65287a1ceafa227c">ABS_SAT_OP_EXPAND_STR</a>(a, type, size)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -607,12 +607,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   abs_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>##_sat((a))</td>
+ <td></td><td>   abs_##type##x##size##_sat((a))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -634,9 +634,8 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> abs_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##_sat(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA) \</div><div class="line"> { \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ae115fc750a92fb6a5e094998b56fcc56">abs</a>(VopA), <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>); \</div><div class="line"> }</div><div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-<div class="ttc" id="fixed__point_8h_xhtml_a23fb01b6f3453cc0e48a026fd44f6acd"><div class="ttname"><a href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a></div><div class="ttdeci">#define CONVERT_SAT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00103">fixed_point.h:103</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_ae115fc750a92fb6a5e094998b56fcc56"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ae115fc750a92fb6a5e094998b56fcc56">arm_compute::test::fixed_point_arithmetic::detail::abs</a></div><div class="ttdeci">fixed_point< T > abs(fixed_point< T > x)</div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00914">FixedPoint.h:914</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type abs_##type##_sat(type VopA) \</div><div class="line"> { \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ae115fc750a92fb6a5e094998b56fcc56">abs</a>(VopA), type); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_a23fb01b6f3453cc0e48a026fd44f6acd"><div class="ttname"><a href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a></div><div class="ttdeci">#define CONVERT_SAT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00103">fixed_point.h:103</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_ae115fc750a92fb6a5e094998b56fcc56"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ae115fc750a92fb6a5e094998b56fcc56">arm_compute::test::fixed_point_arithmetic::detail::abs</a></div><div class="ttdeci">fixed_point< T > abs(fixed_point< T > x)</div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00927">FixedPoint.h:927</a></div></div>
</div><!-- fragment -->
<p>Computes saturating absolute value of fixed point vector. </p>
<dl class="params"><dt>Parameters</dt><dd>
@@ -677,12 +676,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a8fe4e6aa79b6e2faec019e53e1f39113">ADD_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a8fe4e6aa79b6e2faec019e53e1f39113">ADD_SAT_OP_EXPAND_STR</a>(a, b, type, size)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -717,12 +716,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   add_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b))</td>
+ <td></td><td>   add_sat_##type##x##size((a), (b))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -744,8 +743,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> add_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB) \</div><div class="line"> { \</div><div class="line"> return add_sat(VopA, VopB); \</div><div class="line"> }</div><div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-</div><!-- fragment -->
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type add_sat_##type(type VopA, type VopB) \</div><div class="line"> { \</div><div class="line"> return add_sat(VopA, VopB); \</div><div class="line"> }</div></div><!-- fragment -->
<p>Computes saturated addition of fixed point types. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
@@ -785,7 +783,7 @@
<p>Definition at line <a class="el" href="fixed__point_8h_source.xhtml#l00098">98</a> of file <a class="el" href="fixed__point_8h_source.xhtml">fixed_point.h</a>.</p>
-<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="activation__layer__qa8_8cl_source.xhtml#l00076">activation_layer_qa8()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00069">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00120">arithmetic_sub()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00043">convolution1x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00050">convolution1x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00052">convolution1x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00054">convolution1x9()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="depthwise__convolution_8cl_source.xhtml#l00360">depthwise_convolution_3x3_stridex2_stridey2_bifrost()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00083">pixelwise_mul_int()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00328">softmax_layer_max_shift_exp_sum_parallel()</a>, and <a class="el" href="softmax__layer_8cl_source.xhtml#l00178">softmax_layer_max_shift_exp_sum_serial()</a>.</p>
+<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00069">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00120">arithmetic_sub()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00043">convolution1x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00050">convolution1x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00052">convolution1x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00054">convolution1x9()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00083">pixelwise_mul_int()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00328">softmax_layer_max_shift_exp_sum_parallel()</a>, and <a class="el" href="softmax__layer_8cl_source.xhtml#l00178">softmax_layer_max_shift_exp_sum_serial()</a>.</p>
</div>
</div>
@@ -1205,7 +1203,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1216,7 +1214,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a6ad4d9db82a42c5266cba5e0f317998c">DIV_SAT_OP_VEC_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a6ad4d9db82a42c5266cba5e0f317998c">DIV_SAT_OP_VEC_EXPAND_STR</a>(a, b, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1251,7 +1249,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1262,7 +1260,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   div_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (position))</td>
+ <td></td><td>   div_sat_##type##x##size((a), (b), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1300,8 +1298,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> div_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype conv_a = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopA), itype); \</div><div class="line"> itype denominator = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopB), itype); \</div><div class="line"> itype numerator = conv_a << (itype)(fixed_point_position); \</div><div class="line"> itype res = select((itype)(numerator / denominator), select((itype)stype##_MAX, (itype)stype##_MIN, (itype)(conv_a < (itype)0)), (itype)(denominator == (itype)0)); \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>((res), <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type div_sat_##type(type VopA, type VopB, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype conv_a = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopA), itype); \</div><div class="line"> itype denominator = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopB), itype); \</div><div class="line"> itype numerator = conv_a << (itype)(fixed_point_position); \</div><div class="line"> itype res = select((itype)(numerator / denominator), select((itype)stype##_MAX, (itype)stype##_MIN, (itype)(conv_a < (itype)0)), (itype)(denominator == (itype)0)); \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>((res), type); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a23fb01b6f3453cc0e48a026fd44f6acd"><div class="ttname"><a href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a></div><div class="ttdeci">#define CONVERT_SAT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00103">fixed_point.h:103</a></div></div>
</div><!-- fragment -->
<p>Saturate division of two fixed point vectors. </p>
@@ -1339,7 +1336,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1350,7 +1347,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a368a98fe336caf8c24840c67735cd04e">EXP_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a368a98fe336caf8c24840c67735cd04e">EXP_OP_EXPAND_STR</a>(a, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1379,7 +1376,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1390,7 +1387,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   exp_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td>
+ <td></td><td>   exp_sat_##type##x##size((a), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1419,7 +1416,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
@@ -1428,13 +1425,11 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> exp_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> const_one = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(1 << (fixed_point_position)); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> ln2 = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)((((0x58B9 >> (14 - fixed_point_position))) + 1) >> 1); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> inv_ln2 = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)((((0x38AA >> (14 - fixed_point_position)) + 1) >> 1)) | const_one; <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a> = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(((0x7FBA >> (14 - fixed_point_position)) + 1) >> 1); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a> = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(((0x3FE9 >> (14 - fixed_point_position)) + 1) >> 1); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> C = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(((0x1693 >> (14 - fixed_point_position)) + 1) >> 1); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> D = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(((0x0592 >> (14 - fixed_point_position)) + 1) >> 1); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> m = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(VopA, inv_ln2, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> dec_m = m >> (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)fixed_point_position; <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(dec_m << (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)fixed_point_position, ln2, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position); <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">\</a></div><div class="line"><a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175"> alpha</a> = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(abs_diff(VopA, alpha), <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, D, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), C); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, sum, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), B); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, sum, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), A); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, sum, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), const_one); \</div><div class="line"> return select((<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)stype##_MAX, select(sum << dec_m, sum >> -dec_m, dec_m < (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)0), <a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(sum) > dec_m); <span class="comment">/* Saturate result if needed */</span> \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type exp_sat_##type(type VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> type const_one = (type)(1 << (fixed_point_position)); \</div><div class="line"> type ln2 = (type)((((0x58B9 >> (14 - fixed_point_position))) + 1) >> 1); \</div><div class="line"> type inv_ln2 = (type)((((0x38AA >> (14 - fixed_point_position)) + 1) >> 1)) | const_one; \</div><div class="line"> type <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a> = (type)(((0x7FBA >> (14 - fixed_point_position)) + 1) >> 1); \</div><div class="line"> type <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a> = (type)(((0x3FE9 >> (14 - fixed_point_position)) + 1) >> 1); \</div><div class="line"> type C = (type)(((0x1693 >> (14 - fixed_point_position)) + 1) >> 1); \</div><div class="line"> type D = (type)(((0x0592 >> (14 - fixed_point_position)) + 1) >> 1); \</div><div class="line"> type m = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(VopA, inv_ln2, stype, size, fixed_point_position); \</div><div class="line"> type dec_m = m >> (type)fixed_point_position; \</div><div class="line"> type <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">alpha</a> = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(dec_m << (type)fixed_point_position, ln2, stype, size, fixed_point_position); <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">\</a></div><div class="line"><a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175"> alpha</a> = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(abs_diff(VopA, alpha), type); \</div><div class="line"> type <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, D, stype, size, fixed_point_position), C); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, sum, stype, size, fixed_point_position), B); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, sum, stype, size, fixed_point_position), A); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(alpha, sum, stype, size, fixed_point_position), const_one); \</div><div class="line"> return select((type)stype##_MAX, select(sum << dec_m, sum >> -dec_m, dec_m < (type)0), <a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(sum) > dec_m); <span class="comment">/* Saturate result if needed */</span> \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
<div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a></div><div class="ttdoc">Blue channel. </div></div>
<div class="ttc" id="reduction__operation_8cl_xhtml_ab0df00f5333da51860deb93deb44a782"><div class="ttname"><a href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a></div><div class="ttdeci">DATA_TYPE sum(__global const DATA_TYPE *input)</div><div class="ttdoc">Calculate sum of a vector. </div><div class="ttdef"><b>Definition:</b> <a href="reduction__operation_8cl_source.xhtml#l00052">reduction_operation.cl:52</a></div></div>
-<div class="ttc" id="hwc_8hpp_xhtml_ab2c6b258f02add8fdf4cfc7c371dd772"><div class="ttname"><a href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a></div><div class="ttdeci">uint32_t size</div><div class="ttdef"><b>Definition:</b> <a href="hwc_8hpp_source.xhtml#l00286">hwc.hpp:286</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_aa43c67a536c661ec28398d06bc8ba5af"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">arm_compute::test::fixed_point_arithmetic::detail::clz</a></div><div class="ttdeci">constexpr int clz(T value)</div><div class="ttdoc">Count the number of leading zero bits in the given value. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00276">FixedPoint.h:276</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_aa43c67a536c661ec28398d06bc8ba5af"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">arm_compute::test::fixed_point_arithmetic::detail::clz</a></div><div class="ttdeci">constexpr int clz(T value)</div><div class="ttdoc">Count the number of leading zero bits in the given value. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00287">FixedPoint.h:287</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a6b559f5128a43015ffc6c855cf84c243"><div class="ttname"><a href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a></div><div class="ttdeci">#define MUL_SAT_OP_EXPAND(a, b, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00258">fixed_point.h:258</a></div></div>
<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a62197192f0fbf4e0675eb37be1c4c175"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a62197192f0fbf4e0675eb37be1c4c175">arm_compute::test::validation::alpha</a></div><div class="ttdeci">alpha</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00115">GEMM.cpp:115</a></div></div>
</div><!-- fragment -->
@@ -1502,7 +1497,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1513,7 +1508,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#ac001b306b7ead2e6dcc84a93260600b1">INVSQRT_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#ac001b306b7ead2e6dcc84a93260600b1">INVSQRT_OP_EXPAND_STR</a>(a, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1542,7 +1537,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1553,7 +1548,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   invsqrt_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td>
+ <td></td><td>   invsqrt_sat_##type##x##size((a), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1582,7 +1577,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
@@ -1591,9 +1586,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> invsqrt_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> const_three = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(3 << (fixed_point_position)); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> shift_value = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(16 - stype##_SHIFT) - (<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(VopA) + (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)fixed_point_position); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> temp = select((<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(VopA >> shift_value), select((<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)stype##_MAX, (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(VopA << (-shift_value)), (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(VopA) > (-shift_value))), (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(shift_value < (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)0)); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> x = temp; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), temp, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position)), stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position) >> 1; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), temp, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position)), stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position) >> 1; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), temp, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position)), stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position) >> 1; \</div><div class="line"> if(<span class="keyword">sizeof</span>((stype)(1)) > 1) <span class="comment">/* Perform more iterations if datatype is QS16 */</span> \</div><div class="line"> { \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), temp, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position)), stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position) >> 1; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), temp, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position)), stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position) >> 1; \</div><div class="line"> } <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> shift_value2 = select(shift_value >> 1, (-shift_value) >> 1, shift_value < (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)0); \</div><div class="line"> return select((<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(x >> shift_value2), select((<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)stype##_MAX, (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(x << shift_value2), (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(x) > shift_value2)), (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(shift_value < (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)0)); <span class="comment">/* Saturate result if needed */</span> \</div><div class="line"> }</div><div class="ttc" id="hwc_8hpp_xhtml_ab2c6b258f02add8fdf4cfc7c371dd772"><div class="ttname"><a href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a></div><div class="ttdeci">uint32_t size</div><div class="ttdef"><b>Definition:</b> <a href="hwc_8hpp_source.xhtml#l00286">hwc.hpp:286</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_aa43c67a536c661ec28398d06bc8ba5af"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">arm_compute::test::fixed_point_arithmetic::detail::clz</a></div><div class="ttdeci">constexpr int clz(T value)</div><div class="ttdoc">Count the number of leading zero bits in the given value. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00276">FixedPoint.h:276</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type invsqrt_sat_##type(type VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> type const_three = (type)(3 << (fixed_point_position)); \</div><div class="line"> type shift_value = (type)(16 - stype##_SHIFT) - (<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(VopA) + (type)fixed_point_position); \</div><div class="line"> type temp = select((type)(VopA >> shift_value), select((type)stype##_MAX, (type)(VopA << (-shift_value)), (type)(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(VopA) > (-shift_value))), (type)(shift_value < (type)0)); \</div><div class="line"> type x = temp; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, size, fixed_point_position), temp, stype, size, fixed_point_position)), stype, size, fixed_point_position) >> 1; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, size, fixed_point_position), temp, stype, size, fixed_point_position)), stype, size, fixed_point_position) >> 1; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, size, fixed_point_position), temp, stype, size, fixed_point_position)), stype, size, fixed_point_position) >> 1; \</div><div class="line"> if(<span class="keyword">sizeof</span>((stype)(1)) > 1) <span class="comment">/* Perform more iterations if datatype is QS16 */</span> \</div><div class="line"> { \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, size, fixed_point_position), temp, stype, size, fixed_point_position)), stype, size, fixed_point_position) >> 1; \</div><div class="line"> x = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, sub_sat(const_three, <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(x, x, stype, size, fixed_point_position), temp, stype, size, fixed_point_position)), stype, size, fixed_point_position) >> 1; \</div><div class="line"> } \</div><div class="line"> type shift_value2 = select(shift_value >> 1, (-shift_value) >> 1, shift_value < (type)0); \</div><div class="line"> return select((type)(x >> shift_value2), select((type)stype##_MAX, (type)(x << shift_value2), (type)(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(x) > shift_value2)), (type)(shift_value < (type)0)); <span class="comment">/* Saturate result if needed */</span> \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_aa43c67a536c661ec28398d06bc8ba5af"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">arm_compute::test::fixed_point_arithmetic::detail::clz</a></div><div class="ttdeci">constexpr int clz(T value)</div><div class="ttdoc">Count the number of leading zero bits in the given value. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00287">FixedPoint.h:287</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a6b559f5128a43015ffc6c855cf84c243"><div class="ttname"><a href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a></div><div class="ttdeci">#define MUL_SAT_OP_EXPAND(a, b, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00258">fixed_point.h:258</a></div></div>
</div><!-- fragment -->
<p>Saturate inverse square root of a fixed point vector. </p>
@@ -1632,7 +1625,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1643,7 +1636,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a3ec6148739690f17d7f3811c360802ee">LOG_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a3ec6148739690f17d7f3811c360802ee">LOG_OP_EXPAND_STR</a>(a, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1672,7 +1665,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1683,7 +1676,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   log_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td>
+ <td></td><td>   log_sat_##type##x##size((a), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1712,7 +1705,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
@@ -1721,13 +1714,11 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> log_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> const_one = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(1 << (fixed_point_position)); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> ln2 = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(0x58B9 >> (15 - fixed_point_position)); <span class="comment">/* 1.4384189 */</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a> = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(0x5C0F >> (14 - fixed_point_position)); <span class="comment">/* 1.4384189 */</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a> = -(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(0x56AE >> (15 - fixed_point_position)); <span class="comment">/* -0.6771900 */</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> C = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(0x2933 >> (15 - fixed_point_position)); <span class="comment">/* 0.3218538 */</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> D = -(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(0x0AA7 >> (15 - fixed_point_position)); <span class="comment">/* -0.0832229 */</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> inter_a = select(VopA, <a class="code" href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a>(const_one, VopA, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), VopA < const_one); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> shift_val = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(15 - stype##_SHIFT) - <a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(inter_a >> (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)fixed_point_position); \</div><div class="line"> inter_a = inter_a >> shift_val; \</div><div class="line"> inter_a = sub_sat(inter_a, const_one); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, D, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), C); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, sum, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), B); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, sum, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), A); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, sum, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(add_sat(sum, shift_val << (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)fixed_point_position), ln2, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position); \</div><div class="line"> return select(select(sum, -sum, VopA < const_one), (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)0, VopA < (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)0); <span class="comment">/* Saturate result if needed */</span> \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type log_sat_##type(type VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> type const_one = (type)(1 << (fixed_point_position)); \</div><div class="line"> type ln2 = (type)(0x58B9 >> (15 - fixed_point_position)); <span class="comment">/* 1.4384189 */</span> \</div><div class="line"> type <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a> = (type)(0x5C0F >> (14 - fixed_point_position)); <span class="comment">/* 1.4384189 */</span> \</div><div class="line"> type <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a> = -(type)(0x56AE >> (15 - fixed_point_position)); <span class="comment">/* -0.6771900 */</span> \</div><div class="line"> type C = (type)(0x2933 >> (15 - fixed_point_position)); <span class="comment">/* 0.3218538 */</span> \</div><div class="line"> type D = -(type)(0x0AA7 >> (15 - fixed_point_position)); <span class="comment">/* -0.0832229 */</span> \</div><div class="line"> type inter_a = select(VopA, <a class="code" href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a>(const_one, VopA, stype, size, fixed_point_position), VopA < const_one); \</div><div class="line"> type shift_val = (type)(15 - stype##_SHIFT) - <a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">clz</a>(inter_a >> (type)fixed_point_position); \</div><div class="line"> inter_a = inter_a >> shift_val; \</div><div class="line"> inter_a = sub_sat(inter_a, const_one); \</div><div class="line"> type <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, D, stype, size, fixed_point_position), C); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, sum, stype, size, fixed_point_position), B); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = add_sat(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, sum, stype, size, fixed_point_position), A); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(inter_a, sum, stype, size, fixed_point_position); <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">\</a></div><div class="line"><a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782"> sum</a> = <a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(add_sat(sum, shift_val << (type)fixed_point_position), ln2, stype, size, fixed_point_position); \</div><div class="line"> return select(select(sum, -sum, VopA < const_one), (type)0, VopA < (type)0); <span class="comment">/* Saturate result if needed */</span> \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel. </div></div>
<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a></div><div class="ttdoc">Blue channel. </div></div>
<div class="ttc" id="reduction__operation_8cl_xhtml_ab0df00f5333da51860deb93deb44a782"><div class="ttname"><a href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a></div><div class="ttdeci">DATA_TYPE sum(__global const DATA_TYPE *input)</div><div class="ttdoc">Calculate sum of a vector. </div><div class="ttdef"><b>Definition:</b> <a href="reduction__operation_8cl_source.xhtml#l00052">reduction_operation.cl:52</a></div></div>
-<div class="ttc" id="hwc_8hpp_xhtml_ab2c6b258f02add8fdf4cfc7c371dd772"><div class="ttname"><a href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a></div><div class="ttdeci">uint32_t size</div><div class="ttdef"><b>Definition:</b> <a href="hwc_8hpp_source.xhtml#l00286">hwc.hpp:286</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a774126960511e4d827f0d2d3d68abe97"><div class="ttname"><a href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a></div><div class="ttdeci">#define DIV_SAT_OP_VEC_EXPAND(a, b, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00329">fixed_point.h:329</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_aa43c67a536c661ec28398d06bc8ba5af"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">arm_compute::test::fixed_point_arithmetic::detail::clz</a></div><div class="ttdeci">constexpr int clz(T value)</div><div class="ttdoc">Count the number of leading zero bits in the given value. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00276">FixedPoint.h:276</a></div></div>
+<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_aa43c67a536c661ec28398d06bc8ba5af"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#aa43c67a536c661ec28398d06bc8ba5af">arm_compute::test::fixed_point_arithmetic::detail::clz</a></div><div class="ttdeci">constexpr int clz(T value)</div><div class="ttdoc">Count the number of leading zero bits in the given value. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00287">FixedPoint.h:287</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a6b559f5128a43015ffc6c855cf84c243"><div class="ttname"><a href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a></div><div class="ttdeci">#define MUL_SAT_OP_EXPAND(a, b, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00258">fixed_point.h:258</a></div></div>
</div><!-- fragment -->
<p>Saturate logarithm of a fixed point vector. </p>
@@ -1772,12 +1763,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a60a130cf40adc457ce483d5912e1459c">MAX_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a60a130cf40adc457ce483d5912e1459c">MAX_OP_EXPAND_STR</a>(a, b, type, size)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1812,12 +1803,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   max_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b))</td>
+ <td></td><td>   max_##type##x##size((a), (b))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1839,8 +1830,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> max_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB) \</div><div class="line"> { \</div><div class="line"> return <a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">max</a>(VopA, VopB); \</div><div class="line"> }</div><div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-<div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_ad91bb73431b4de1f4946ed949d444849"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">arm_compute::test::fixed_point_arithmetic::detail::max</a></div><div class="ttdeci">fixed_point< T > max(fixed_point< T > x, fixed_point< T > y)</div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00889">FixedPoint.h:889</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type max_##type(type VopA, type VopB) \</div><div class="line"> { \</div><div class="line"> return <a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">max</a>(VopA, VopB); \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_ad91bb73431b4de1f4946ed949d444849"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">arm_compute::test::fixed_point_arithmetic::detail::max</a></div><div class="ttdeci">fixed_point< T > max(fixed_point< T > x, fixed_point< T > y)</div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00902">FixedPoint.h:902</a></div></div>
</div><!-- fragment -->
<p>Computes max of fixed point types. </p>
<dl class="params"><dt>Parameters</dt><dd>
@@ -1887,7 +1877,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1898,7 +1888,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a8cde8777703946ea2e06b20d6831d489">MLA_SAT_OP_EXPAND_STR</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a8cde8777703946ea2e06b20d6831d489">MLA_SAT_OP_EXPAND_STR</a>(a, b, c, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1939,7 +1929,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -1950,7 +1940,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   mla_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (c), (position))</td>
+ <td></td><td>   mla_sat_##type##x##size((a), (b), (c), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -1991,7 +1981,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -2002,7 +1992,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a80b890755bdc8392bcc853d24b34682d">MLAL_SAT_OP_EXPAND_STR</a>(a, b, c, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a80b890755bdc8392bcc853d24b34682d">MLAL_SAT_OP_EXPAND_STR</a>(a, b, c, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -2043,7 +2033,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -2054,7 +2044,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   mlal_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (c), (position))</td>
+ <td></td><td>   mlal_sat_##type##x##size((a), (b), (c), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -2086,8 +2076,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line">itype mlal_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(itype VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopC, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype res = mad_sat(<a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopB, itype), <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopC, itype), (itype)(1 << (fixed_point_position - 1))); \</div><div class="line"> return add_sat(VopA, res >> (itype)fixed_point_position); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line">itype mlal_sat_##type(itype VopA, type VopB, type VopC, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype res = mad_sat(<a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopB, itype), <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopC, itype), (itype)(1 << (fixed_point_position - 1))); \</div><div class="line"> return add_sat(VopA, res >> (itype)fixed_point_position); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
</div><!-- fragment -->
<p>Saturate multiply-accumulate long. </p>
<dl class="params"><dt>Parameters</dt><dd>
@@ -2126,8 +2115,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> mla_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopC, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype res = mad_sat(<a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopB, itype), <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopC, itype), (itype)(1 << (fixed_point_position - 1))); \</div><div class="line"> return add_sat(VopA, <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>(res >> (itype)fixed_point_position, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line">type mla_sat_##type(type VopA, type VopB, type VopC, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype res = mad_sat(<a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopB, itype), <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(VopC, itype), (itype)(1 << (fixed_point_position - 1))); \</div><div class="line"> return add_sat(VopA, <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>(res >> (itype)fixed_point_position, type)); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a23fb01b6f3453cc0e48a026fd44f6acd"><div class="ttname"><a href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a></div><div class="ttdeci">#define CONVERT_SAT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00103">fixed_point.h:103</a></div></div>
</div><!-- fragment -->
<p>Saturate multiply-accumulate. </p>
@@ -2170,7 +2158,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -2181,7 +2169,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#afadf927c77d81f7dcd9af28b65c9c79d">MUL_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#afadf927c77d81f7dcd9af28b65c9c79d">MUL_OP_EXPAND_STR</a>(a, b, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -2216,7 +2204,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -2227,7 +2215,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   mul_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (position))</td>
+ <td></td><td>   mul_##type##x##size((a), (b), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -2262,7 +2250,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -2273,7 +2261,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a4e160e8fcff1c5ec8fba57505cb0ad91">MUL_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a4e160e8fcff1c5ec8fba57505cb0ad91">MUL_SAT_OP_EXPAND_STR</a>(a, b, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -2308,7 +2296,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -2319,7 +2307,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   mul_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b), (position))</td>
+ <td></td><td>   mul_sat_##type##x##size((a), (b), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -2351,8 +2339,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> mul_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype round_val = (itype)(1 << (fixed_point_position - 1)); \</div><div class="line"> itype res = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopA), itype) * <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopB), itype) + round_val; \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((res >> (itype)fixed_point_position), <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type mul_##type(type VopA, type VopB, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype round_val = (itype)(1 << (fixed_point_position - 1)); \</div><div class="line"> itype res = <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopA), itype) * <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopB), itype) + round_val; \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((res >> (itype)fixed_point_position), type); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="fixed__point_8h_source.xhtml#l00213">213</a> of file <a class="el" href="fixed__point_8h_source.xhtml">fixed_point.h</a>.</p>
@@ -2381,8 +2368,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> mul_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype round_val = (itype)(1 << (fixed_point_position - 1)); \</div><div class="line"> itype res = mad_sat(<a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopA), itype), <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopB), itype), round_val); \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>((res >> (itype)fixed_point_position), <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type mul_sat_##type(type VopA, type VopB, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> itype round_val = (itype)(1 << (fixed_point_position - 1)); \</div><div class="line"> itype res = mad_sat(<a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopA), itype), <a class="code" href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>((VopB), itype), round_val); \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>((res >> (itype)fixed_point_position), type); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_aa8d95ba04fc73845abc6045952cae5be"><div class="ttname"><a href="fixed__point_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a></div><div class="ttdeci">#define CONVERT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00098">fixed_point.h:98</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a23fb01b6f3453cc0e48a026fd44f6acd"><div class="ttname"><a href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a></div><div class="ttdeci">#define CONVERT_SAT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00103">fixed_point.h:103</a></div></div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="fixed__point_8h_source.xhtml#l00236">236</a> of file <a class="el" href="fixed__point_8h_source.xhtml">fixed_point.h</a>.</p>
@@ -2892,8 +2878,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> sqcvt_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##_sat(<span class="keywordtype">float</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>((<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a> * (1 << fixed_point_position) + ((<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a> < 0) ? -0.5f : 0.5f)), <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>); \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_aac40b7097f2bda9274ae07fa33d15a79"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">arm_compute::test::validation::a</a></div><div class="ttdeci">CLTensor a</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00121">GEMM.cpp:121</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type sqcvt_##type##_sat(<span class="keywordtype">float</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a>, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>((<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a> * (1 << fixed_point_position) + ((<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">a</a> < 0) ? -0.5f : 0.5f)), type); \</div><div class="line"> }</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_aac40b7097f2bda9274ae07fa33d15a79"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#aac40b7097f2bda9274ae07fa33d15a79">arm_compute::test::validation::a</a></div><div class="ttdeci">CLTensor a</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_g_e_m_m_8cpp_source.xhtml#l00121">GEMM.cpp:121</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a23fb01b6f3453cc0e48a026fd44f6acd"><div class="ttname"><a href="fixed__point_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a></div><div class="ttdeci">#define CONVERT_SAT(x, type)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00103">fixed_point.h:103</a></div></div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="fixed__point_8h_source.xhtml#l00506">506</a> of file <a class="el" href="fixed__point_8h_source.xhtml">fixed_point.h</a>.</p>
@@ -2994,12 +2979,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a7076a8fac3c484611ce522dc7103fff4">SUB_SAT_OP_EXPAND_STR</a>(a, b, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a7076a8fac3c484611ce522dc7103fff4">SUB_SAT_OP_EXPAND_STR</a>(a, b, type, size)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -3034,12 +3019,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   sub_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (b))</td>
+ <td></td><td>   sub_sat_##type##x##size((a), (b))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -3061,8 +3046,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> sub_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopB) \</div><div class="line"> { \</div><div class="line"> return sub_sat(VopA, VopB); \</div><div class="line"> }</div><div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-</div><!-- fragment -->
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type sub_sat_##type(type VopA, type VopB) \</div><div class="line"> { \</div><div class="line"> return sub_sat(VopA, VopB); \</div><div class="line"> }</div></div><!-- fragment -->
<p>Computes saturated subtraction of fixed point types. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
@@ -3096,7 +3080,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -3107,7 +3091,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a452864cb983782cff458f61397fb00eb">TANH_OP_EXPAND_STR</a>(a, type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, position)</td>
+ <td></td><td>   <a class="el" href="fixed__point_8h.xhtml#a452864cb983782cff458f61397fb00eb">TANH_OP_EXPAND_STR</a>(a, type, size, position)</td>
</tr>
</table>
</div><div class="memdoc">
@@ -3136,7 +3120,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, </td>
+ <td class="paramname">size, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -3147,7 +3131,7 @@
<tr>
<td></td>
<td>)</td>
- <td></td><td>   tanh_sat_##type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>((a), (position))</td>
+ <td></td><td>   tanh_sat_##type##x##size((a), (position))</td>
</tr>
</table>
</div><div class="memdoc">
@@ -3176,7 +3160,7 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
@@ -3185,11 +3169,9 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> tanh_sat_##<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>(<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> const_one = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(1 << (fixed_point_position)); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> const_two = (<a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>)(2 << (fixed_point_position)); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> exp2x = <a class="code" href="fixed__point_8h.xhtml#a80482c3ae2b0e68658f84f081a6fbdde">EXP_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(const_two, VopA, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position), stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> num = <a class="code" href="fixed__point_8h.xhtml#ac081784e1547f3f2e9065e3ed54f2fba">SUB_SAT_OP_EXPAND</a>(exp2x, const_one, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>); <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">\</a></div><div class="line"><a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d"> type</a> den = <a class="code" href="fixed__point_8h.xhtml#a6b1acbaff6cb3bad4edda9a93dac1f9e">ADD_SAT_OP_EXPAND</a>(exp2x, const_one, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>); \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a>(num, den, stype, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>, fixed_point_position); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_a80482c3ae2b0e68658f84f081a6fbdde"><div class="ttname"><a href="fixed__point_8h.xhtml#a80482c3ae2b0e68658f84f081a6fbdde">EXP_OP_EXPAND</a></div><div class="ttdeci">#define EXP_OP_EXPAND(a, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00372">fixed_point.h:372</a></div></div>
-<div class="ttc" id="hwc_8hpp_xhtml_ab2c6b258f02add8fdf4cfc7c371dd772"><div class="ttname"><a href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a></div><div class="ttdeci">uint32_t size</div><div class="ttdef"><b>Definition:</b> <a href="hwc_8hpp_source.xhtml#l00286">hwc.hpp:286</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> type tanh_sat_##type(type VopA, <span class="keywordtype">int</span> fixed_point_position) \</div><div class="line"> { \</div><div class="line"> type const_one = (type)(1 << (fixed_point_position)); \</div><div class="line"> type const_two = (type)(2 << (fixed_point_position)); \</div><div class="line"> type exp2x = <a class="code" href="fixed__point_8h.xhtml#a80482c3ae2b0e68658f84f081a6fbdde">EXP_OP_EXPAND</a>(<a class="code" href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a>(const_two, VopA, stype, size, fixed_point_position), stype, size, fixed_point_position); \</div><div class="line"> type num = <a class="code" href="fixed__point_8h.xhtml#ac081784e1547f3f2e9065e3ed54f2fba">SUB_SAT_OP_EXPAND</a>(exp2x, const_one, stype, size); \</div><div class="line"> type den = <a class="code" href="fixed__point_8h.xhtml#a6b1acbaff6cb3bad4edda9a93dac1f9e">ADD_SAT_OP_EXPAND</a>(exp2x, const_one, stype, size); \</div><div class="line"> return <a class="code" href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a>(num, den, stype, size, fixed_point_position); \</div><div class="line"> }</div><div class="ttc" id="fixed__point_8h_xhtml_a80482c3ae2b0e68658f84f081a6fbdde"><div class="ttname"><a href="fixed__point_8h.xhtml#a80482c3ae2b0e68658f84f081a6fbdde">EXP_OP_EXPAND</a></div><div class="ttdeci">#define EXP_OP_EXPAND(a, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00372">fixed_point.h:372</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_ac081784e1547f3f2e9065e3ed54f2fba"><div class="ttname"><a href="fixed__point_8h.xhtml#ac081784e1547f3f2e9065e3ed54f2fba">SUB_SAT_OP_EXPAND</a></div><div class="ttdeci">#define SUB_SAT_OP_EXPAND(a, b, type, size)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00204">fixed_point.h:204</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a774126960511e4d827f0d2d3d68abe97"><div class="ttname"><a href="fixed__point_8h.xhtml#a774126960511e4d827f0d2d3d68abe97">DIV_SAT_OP_VEC_EXPAND</a></div><div class="ttdeci">#define DIV_SAT_OP_VEC_EXPAND(a, b, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00329">fixed_point.h:329</a></div></div>
-<div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a6b559f5128a43015ffc6c855cf84c243"><div class="ttname"><a href="fixed__point_8h.xhtml#a6b559f5128a43015ffc6c855cf84c243">MUL_SAT_OP_EXPAND</a></div><div class="ttdeci">#define MUL_SAT_OP_EXPAND(a, b, type, size, position)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00258">fixed_point.h:258</a></div></div>
<div class="ttc" id="fixed__point_8h_xhtml_a6b1acbaff6cb3bad4edda9a93dac1f9e"><div class="ttname"><a href="fixed__point_8h.xhtml#a6b1acbaff6cb3bad4edda9a93dac1f9e">ADD_SAT_OP_EXPAND</a></div><div class="ttdeci">#define ADD_SAT_OP_EXPAND(a, b, type, size)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00178">fixed_point.h:178</a></div></div>
</div><!-- fragment -->
@@ -3232,8 +3214,7 @@
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">typedef</span> <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> alias; \</div><div class="line"> typedef <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a> alias##x##1; \</div><div class="line"> typedef <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##2 alias##x##2; \</div><div class="line"> typedef <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##3 alias##x##3; \</div><div class="line"> typedef <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##4 alias##x##4; \</div><div class="line"> typedef <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##8 alias##x##8; \</div><div class="line"> typedef <a class="code" href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">type</a>##16 alias##x##16;</div><div class="ttc" id="namespacecaffe__data__extractor_xhtml_a7aead736a07eaf25623ad7bfa1f0ee2d"><div class="ttname"><a href="namespacecaffe__data__extractor.xhtml#a7aead736a07eaf25623ad7bfa1f0ee2d">caffe_data_extractor.type</a></div><div class="ttdeci">type</div><div class="ttdef"><b>Definition:</b> <a href="caffe__data__extractor_8py_source.xhtml#l00019">caffe_data_extractor.py:19</a></div></div>
-</div><!-- fragment -->
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">typedef</span> type alias; \</div><div class="line"> typedef type alias##x##1; \</div><div class="line"> typedef type##2 alias##x##2; \</div><div class="line"> typedef type##3 alias##x##3; \</div><div class="line"> typedef type##4 alias##x##4; \</div><div class="line"> typedef type##8 alias##x##8; \</div><div class="line"> typedef type##16 alias##x##16;</div></div><!-- fragment -->
<p>Definition at line <a class="el" href="fixed__point_8h_source.xhtml#l00027">27</a> of file <a class="el" href="fixed__point_8h_source.xhtml">fixed_point.h</a>.</p>
</div>
@@ -3252,19 +3233,19 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   <a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, <a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>)</td>
+ <td></td><td>   <a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, size)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="fixed__point_8h_source.xhtml#l00093">93</a> of file <a class="el" href="fixed__point_8h_source.xhtml">fixed_point.h</a>.</p>
-<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="activation__layer__qa8_8cl_source.xhtml#l00076">activation_layer_qa8()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00069">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00120">arithmetic_sub()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="canny_8cl_source.xhtml#l00057">combine_gradients_L1()</a>, <a class="el" href="canny_8cl_source.xhtml#l00121">combine_gradients_L2()</a>, <a class="el" href="concatenate_8cl_source.xhtml#l00046">concatenate_depth()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00074">convert_depth_down()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00115">convert_depth_up()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00043">convolution1x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00050">convolution1x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00052">convolution1x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00054">convolution1x9()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00082">convolution3x3()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00123">convolution3x3_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00159">convolution5x5()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00274">convolution5x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00202">convolution7x7()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00323">convolution7x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00256">convolution9x9()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00386">convolution9x9_static()</a>, <a class="el" href="convolution__rectangle_8cl_source.xhtml#l00064">convolution_rectangle()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00205">convolution_separable1x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00254">convolution_separable1x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00317">convolution_separable1x9_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00238">convolution_separable5x1_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00287">convolution_separable7x1_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00350">convolution_separable9x1_static()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00138">harris_score_1x5()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00253">harris_score_1x7()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00053">harris_score_3x3()</a>, <a class="el" href="canny_8cl_source.xhtml#l00306">hysteresis()</a>, <a class="el" href="l2__normalize_8cl_source.xhtml#l00045">l2_normalize()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00033">magnitude_l1()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00045">magnitude_l2()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00130">magnitude_phase()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="nonmax_8cl_source.xhtml#l00041">non_max_suppression()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00079">normalization_layer_cross_map()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00139">normalization_layer_in_map()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00083">pixelwise_mul_int()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00226">pooling_layer_2()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00290">pooling_layer_3()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00058">read_texels4()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00061">roi_pool_1x1()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00328">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00178">softmax_layer_max_shift_exp_sum_serial()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00120">softmax_layer_norm()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00032">square_sum()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00052">sum()</a>, <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00036">vec4_max()</a>, and <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00043">vec8_max()</a>.</p>
+<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00069">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00120">arithmetic_sub()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="canny_8cl_source.xhtml#l00057">combine_gradients_L1()</a>, <a class="el" href="canny_8cl_source.xhtml#l00121">combine_gradients_L2()</a>, <a class="el" href="concatenate_8cl_source.xhtml#l00081">concatenate_depth()</a>, <a class="el" href="concatenate_8cl_source.xhtml#l00046">concatenate_width()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00074">convert_depth_down()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00115">convert_depth_up()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00043">convolution1x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00050">convolution1x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00052">convolution1x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00054">convolution1x9()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00082">convolution3x3()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00123">convolution3x3_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00159">convolution5x5()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00274">convolution5x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00202">convolution7x7()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00323">convolution7x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00256">convolution9x9()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00386">convolution9x9_static()</a>, <a class="el" href="convolution__rectangle_8cl_source.xhtml#l00064">convolution_rectangle()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00205">convolution_separable1x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00254">convolution_separable1x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00317">convolution_separable1x9_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00238">convolution_separable5x1_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00287">convolution_separable7x1_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00350">convolution_separable9x1_static()</a>, <a class="el" href="copy__tensor_8cl_source.xhtml#l00037">copy_tensor()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00138">harris_score_1x5()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00253">harris_score_1x7()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00053">harris_score_3x3()</a>, <a class="el" href="canny_8cl_source.xhtml#l00306">hysteresis()</a>, <a class="el" href="l2__normalize_8cl_source.xhtml#l00045">l2_normalize()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00033">magnitude_l1()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00045">magnitude_l2()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00130">magnitude_phase()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="nonmax_8cl_source.xhtml#l00041">non_max_suppression()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00079">normalization_layer_cross_map()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00139">normalization_layer_in_map()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00083">pixelwise_mul_int()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00228">pooling_layer_2()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00292">pooling_layer_3()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00565">pooling_layer_MxN_nhwc()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00058">read_texels4()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00061">roi_pool_1x1()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00328">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00178">softmax_layer_max_shift_exp_sum_serial()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00120">softmax_layer_norm()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00032">square_sum()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00052">sum()</a>, <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00036">vec4_max()</a>, and <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00043">vec8_max()</a>.</p>
</div>
</div>
@@ -3282,12 +3263,12 @@
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
- <td class="paramname"><a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a> </td>
+ <td class="paramname">size </td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td>   type##x##<a class="el" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a></td>
+ <td></td><td>   type##x##size</td>
</tr>
</table>
</div><div class="memdoc">
@@ -6892,7 +6873,7 @@
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.xhtml">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.xhtml">core</a></li><li class="navelem"><a class="el" href="dir_8c278f79c760e5c5fbd911f9870614c1.xhtml">CL</a></li><li class="navelem"><a class="el" href="dir_25885286e9dad4fa105b7b25a8031bbf.xhtml">cl_kernels</a></li><li class="navelem"><a class="el" href="fixed__point_8h.xhtml">fixed_point.h</a></li>
- <li class="footer">Generated on Fri Mar 2 2018 12:37:55 for Compute Library by
+ <li class="footer">Generated on Wed May 23 2018 11:36:39 for Compute Library by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
</ul>