diff --git a/20.08/_ref_permute_workload_8hpp_source.xhtml b/20.08/_ref_permute_workload_8hpp_source.xhtml
new file mode 100644
index 0000000..2321b5c
--- /dev/null
+++ b/20.08/_ref_permute_workload_8hpp_source.xhtml
@@ -0,0 +1,122 @@
+<!-- Copyright (c) 2020 ARM Limited. -->
+<!--                                 -->
+<!-- SPDX-License-Identifier: MIT    -->
+<!--                                 -->
+<!-- HTML header for doxygen 1.8.13-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="robots" content="NOINDEX, NOFOLLOW" />
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>ArmNN: src/backends/reference/workloads/RefPermuteWorkload.hpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+  $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/x-mathjax-config">
+  MathJax.Hub.Config({
+    extensions: ["tex2jax.js"],
+    jax: ["input/TeX","output/HTML-CSS"],
+});
+</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">
+   &#160;<span id="projectnumber">20.08</span>
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_ref_permute_workload_8hpp_source.xhtml','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle">
+<div class="title">RefPermuteWorkload.hpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="_ref_permute_workload_8hpp.xhtml">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Copyright © 2017 Arm Ltd. All rights reserved.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// SPDX-License-Identifier: MIT</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="_workload_8hpp.xhtml">backendsCommon/Workload.hpp</a>&gt;</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="_types_utils_8hpp.xhtml">armnn/TypesUtils.hpp</a>&gt;</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacearmnn.xhtml">armnn</a></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;{</div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="keyword">template</span> &lt;armnn::DataType DataType&gt;</div><div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classarmnn_1_1_ref_permute_workload.xhtml">   16</a></span>&#160;<span class="keyword">class </span><a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload</a> : <span class="keyword">public</span> <a class="code" href="classarmnn_1_1_typed_workload.xhtml">TypedWorkload</a>&lt;PermuteQueueDescriptor, DataType&gt;</div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;{</div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classarmnn_1_1_ref_permute_workload.xhtml#aba53afc20ccec8d0bfe48da712f050cd">   19</a></span>&#160;    <span class="keyword">static</span> <span class="keyword">const</span> std::string&amp; <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml#aba53afc20ccec8d0bfe48da712f050cd">GetName</a>()</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    {</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">static</span> <span class="keyword">const</span> std::string name = std::string(<span class="stringliteral">&quot;RefPermute&quot;</span>) + <a class="code" href="namespacearmnn.xhtml#a81b5ff8545adad19a1c9d4ca076d552c">GetDataTypeName</a>(<a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>) + <span class="stringliteral">&quot;Workload&quot;</span>;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keywordflow">return</span> name;</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    }</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <span class="keyword">using</span> <a class="code" href="classarmnn_1_1_typed_workload.xhtml">TypedWorkload&lt;PermuteQueueDescriptor, DataType&gt;::m_Data</a>;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keyword">using</span> <a class="code" href="classarmnn_1_1_typed_workload.xhtml">TypedWorkload&lt;PermuteQueueDescriptor, DataType&gt;::TypedWorkload</a>;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml#ae071e8822437c78baea75c3aef3a263a">Execute</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;};</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="namespacearmnn.xhtml#aed5e6ff8fdf785380ed4c8ca21702da3">   30</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteBFloat16Workload</a> = <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload&lt;DataType::BFloat16&gt;</a>;</div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="namespacearmnn.xhtml#ad1c0fb6bfa580b04574ab56971b6cbc6">   31</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteFloat16Workload</a>  = <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload&lt;DataType::Float16&gt;</a>;</div><div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="namespacearmnn.xhtml#a54c3f7c7b9909e828a084f68dc78a031">   32</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteFloat32Workload</a>  = <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload&lt;DataType::Float32&gt;</a>;</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="namespacearmnn.xhtml#ac89a05afd86920754ef682af60ef9d0d">   33</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteQAsymmS8Workload</a> = <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload&lt;DataType::QAsymmS8&gt;</a>;</div><div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="namespacearmnn.xhtml#a50ffe5068ecb2fbf7f73b30ef0d753f8">   34</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteQAsymm8Workload</a>  = <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload&lt;DataType::QAsymmU8&gt;</a>;</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="namespacearmnn.xhtml#a6ffed93fad525ce1d534cec2cdaee6bd">   35</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteQSymm16Workload</a>  = <a class="code" href="classarmnn_1_1_ref_permute_workload.xhtml">RefPermuteWorkload&lt;DataType::QSymmS16&gt;</a>;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;} <span class="comment">//namespace armnn</span></div><div class="ttc" id="classarmnn_1_1_ref_permute_workload_xhtml"><div class="ttname"><a href="classarmnn_1_1_ref_permute_workload.xhtml">armnn::RefPermuteWorkload</a></div><div class="ttdef"><b>Definition:</b> <a href="_ref_permute_workload_8hpp_source.xhtml#l00016">RefPermuteWorkload.hpp:16</a></div></div>
+<div class="ttc" id="classarmnn_1_1_ref_permute_workload_xhtml_aba53afc20ccec8d0bfe48da712f050cd"><div class="ttname"><a href="classarmnn_1_1_ref_permute_workload.xhtml#aba53afc20ccec8d0bfe48da712f050cd">armnn::RefPermuteWorkload::GetName</a></div><div class="ttdeci">static const std::string &amp; GetName()</div><div class="ttdef"><b>Definition:</b> <a href="_ref_permute_workload_8hpp_source.xhtml#l00019">RefPermuteWorkload.hpp:19</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml"><div class="ttname"><a href="namespacearmnn.xhtml">armnn</a></div><div class="ttdoc">Copyright (c) 2020 ARM Limited. </div><div class="ttdef"><b>Definition:</b> <a href="00__introduction_8dox_source.xhtml#l00025">00_introduction.dox:25</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a81b5ff8545adad19a1c9d4ca076d552c"><div class="ttname"><a href="namespacearmnn.xhtml#a81b5ff8545adad19a1c9d4ca076d552c">armnn::GetDataTypeName</a></div><div class="ttdeci">constexpr const char * GetDataTypeName(DataType dataType)</div><div class="ttdef"><b>Definition:</b> <a href="_types_utils_8hpp_source.xhtml#l00168">TypesUtils.hpp:168</a></div></div>
+<div class="ttc" id="_types_utils_8hpp_xhtml"><div class="ttname"><a href="_types_utils_8hpp.xhtml">TypesUtils.hpp</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">armnn::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdef"><b>Definition:</b> <a href="_types_8hpp_source.xhtml#l00032">Types.hpp:32</a></div></div>
+<div class="ttc" id="classarmnn_1_1_typed_workload_xhtml"><div class="ttname"><a href="classarmnn_1_1_typed_workload.xhtml">armnn::TypedWorkload</a></div><div class="ttdef"><b>Definition:</b> <a href="_workload_8hpp_source.xhtml#l00052">Workload.hpp:52</a></div></div>
+<div class="ttc" id="classarmnn_1_1_ref_permute_workload_xhtml_ae071e8822437c78baea75c3aef3a263a"><div class="ttname"><a href="classarmnn_1_1_ref_permute_workload.xhtml#ae071e8822437c78baea75c3aef3a263a">armnn::RefPermuteWorkload::Execute</a></div><div class="ttdeci">void Execute() const override</div><div class="ttdef"><b>Definition:</b> <a href="_ref_permute_workload_8cpp_source.xhtml#l00017">RefPermuteWorkload.cpp:17</a></div></div>
+<div class="ttc" id="_workload_8hpp_xhtml"><div class="ttname"><a href="_workload_8hpp.xhtml">Workload.hpp</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<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_0f3cdec46afbc61a1ded8e1687c9c9a0.xhtml">backends</a></li><li class="navelem"><a class="el" href="dir_efae4012d0e357ebeaba7d02491d70e5.xhtml">reference</a></li><li class="navelem"><a class="el" href="dir_d2f3b8e2e64df3181ebe92efcc0a3012.xhtml">workloads</a></li><li class="navelem"><a class="el" href="_ref_permute_workload_8hpp.xhtml">RefPermuteWorkload.hpp</a></li>
+    <li class="footer">Generated on Tue Aug 25 2020 12:29:44 for ArmNN by
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+  </ul>
+</div>
+</body>
+</html>
