arm_compute v18.01

Change-Id: I9bfa178c2e38bfd5fc812e62aab6760d87748e05
diff --git a/documentation/helpers__asymm_8h.xhtml b/documentation/helpers__asymm_8h.xhtml
index 801595f..b09e3a9 100644
--- a/documentation/helpers__asymm_8h.xhtml
+++ b/documentation/helpers__asymm_8h.xhtml
@@ -40,7 +40,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">Compute Library
-   &#160;<span id="projectnumber">17.12</span>
+   &#160;<span id="projectnumber">18.01</span>
    </div>
   </td>
  </tr>
@@ -243,7 +243,7 @@
       </table>
 </div><div class="memdoc">
 <b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a>(<span class="keywordtype">int</span>, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>) <a class="code" href="asymm__helper_8h.xhtml#ab98c50e16a18dd439b2b7ecdd1ecd81c">asymm_mult</a><span class="preprocessor">##size(VEC_DATA_TYPE(int, size) a, VEC_DATA_TYPE(int, size) b) \</span></div><div class="line"><span class="preprocessor">    {                                                                                                        \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(int, size)                                                                             \</span></div><div class="line"><span class="preprocessor">        overflow = a == b &amp;&amp; a == INT_MIN;                                                                   \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        a_64 = convert_long##size(a);                                                                        \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        b_64 = convert_long##size(b);                                                                        \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        ab_64 = a_64 * b_64;                                                                                 \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        mask1 = 1 &lt;&lt; 30;                                                                                     \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        mask2 = 1 - (1 &lt;&lt; 30);                                                                               \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        nudge = select(mask2, mask1, ab_64 &gt;= 0);                                                            \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(long, size)                                                                            \</span></div><div class="line"><span class="preprocessor">        mask = 1ll &lt;&lt; 31;                                                                                    \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(int, size)                                                                             \</span></div><div class="line"><span class="preprocessor">        ab_x2_high32 = convert_int##size((ab_64 + nudge) / mask);                                            \</span></div><div class="line"><span class="preprocessor">        return select(ab_x2_high32, INT_MAX, overflow);                                                      \</span></div><div class="line"><span class="preprocessor">    }</span></div><div class="ttc" id="asymm__helper_8h_xhtml_ab98c50e16a18dd439b2b7ecdd1ecd81c"><div class="ttname"><a href="asymm__helper_8h.xhtml#ab98c50e16a18dd439b2b7ecdd1ecd81c">asymm_mult</a></div><div class="ttdeci">int16 asymm_mult(int16 a, int16 b)</div><div class="ttdoc">Fixed-point multiplication. </div><div class="ttdef"><b>Definition:</b> <a href="asymm__helper_8h_source.xhtml#l00167">asymm_helper.h:167</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#l00276">hwc.hpp:276</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_a36f754c05b6fddf6df0d8d0a74f8159f"><div class="ttname"><a href="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a></div><div class="ttdeci">#define VEC_DATA_TYPE(type, size)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00093">fixed_point.h:93</a></div></div>
 </div><!-- fragment -->
 <p>Product of two numbers, interpreting them as fixed-point values in the interval [-1, 1), rounding to the nearest value, and saturating -1 * -1 to the maximum value. </p>
@@ -306,7 +306,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="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a>(<span class="keywordtype">int</span>, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>) asymm_rounding_divide_by_POW2_<span class="preprocessor">##size(VEC_DATA_TYPE(int, size) x, int exponent) \</span></div><div class="line"><span class="preprocessor">    {                                                                                                              \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(int, size)                                                                                   \</span></div><div class="line"><span class="preprocessor">        mask = (1 &lt;&lt; exponent) - 1;                                                                                \</span></div><div class="line"><span class="preprocessor">        const VEC_DATA_TYPE(int, size) zero = 0;                                                                   \</span></div><div class="line"><span class="preprocessor">        const VEC_DATA_TYPE(int, size) one  = 1;                                                                   \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(int, size)                                                                                   \</span></div><div class="line"><span class="preprocessor">        threshold = (mask &gt;&gt; 1) + select(zero, one, x &lt; 0);                                                        \</span></div><div class="line"><span class="preprocessor">        return (x &gt;&gt; exponent) + select(zero, one, (x &amp; mask) &gt; threshold);                                        \</span></div><div class="line"><span class="preprocessor">    }</span></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#l00276">hwc.hpp:276</a></div></div>
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">inline</span> <a class="code" href="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a>(<span class="keywordtype">int</span>, <a class="code" href="hwc_8hpp.xhtml#ab2c6b258f02add8fdf4cfc7c371dd772">size</a>) asymm_rounding_divide_by_POW2_<span class="preprocessor">##size(VEC_DATA_TYPE(int, size) x, int exponent) \</span></div><div class="line"><span class="preprocessor">    {                                                                                                              \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(int, size)                                                                                   \</span></div><div class="line"><span class="preprocessor">        mask = (1 &lt;&lt; exponent) - 1;                                                                                \</span></div><div class="line"><span class="preprocessor">        const VEC_DATA_TYPE(int, size) zero = 0;                                                                   \</span></div><div class="line"><span class="preprocessor">        const VEC_DATA_TYPE(int, size) one  = 1;                                                                   \</span></div><div class="line"><span class="preprocessor">        VEC_DATA_TYPE(int, size)                                                                                   \</span></div><div class="line"><span class="preprocessor">        threshold = (mask &gt;&gt; 1) + select(zero, one, x &lt; 0);                                                        \</span></div><div class="line"><span class="preprocessor">        return (x &gt;&gt; exponent) + select(zero, one, (x &amp; mask) &gt; threshold);                                        \</span></div><div class="line"><span class="preprocessor">    }</span></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_a36f754c05b6fddf6df0d8d0a74f8159f"><div class="ttname"><a href="fixed__point_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a></div><div class="ttdeci">#define VEC_DATA_TYPE(type, size)</div><div class="ttdef"><b>Definition:</b> <a href="fixed__point_8h_source.xhtml#l00093">fixed_point.h:93</a></div></div>
 </div><!-- fragment -->
 <p>Correctly-rounded-to-nearest division by a power-of-two. </p>
@@ -545,7 +545,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="helpers__asymm_8h.xhtml">helpers_asymm.h</a></li>
-    <li class="footer">Generated on Thu Dec 14 2017 23:48:34 for Compute Library by
+    <li class="footer">Generated on Wed Jan 24 2018 14:30:43 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>