<!-- HTML header for doxygen 1.8.15-->
<!-- Remember to use version doxygen 1.8.15 +-->
<!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.15"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
<title>Compute Library: tests/validation/NEON/Permute.cpp File Reference</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</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" async="async" 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="Compute Library" src="https://raw.githubusercontent.com/ARM-software/ComputeLibrary/gh-pages/ACL_logo.png" style="max-width: 100%;margin-top: 15px;margin-left: 10px"/>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">19.08</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('_n_e_o_n_2_permute_8cpp.xhtml','');});
/* @license-end */
</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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Permute.cpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">arm_compute/core/Types.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_n_e_permute_8h_source.xhtml">arm_compute/runtime/NEON/functions/NEPermute.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="runtime_2_tensor_8h_source.xhtml">arm_compute/runtime/Tensor.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_tensor_allocator_8h_source.xhtml">arm_compute/runtime/TensorAllocator.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_accessor_8h_source.xhtml">tests/NEON/Accessor.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_padding_calculator_8h_source.xhtml">tests/PaddingCalculator.h</a>&quot;</code><br />
<code>#include &quot;tests/datasets/ShapeDatasets.h&quot;</code><br />
<code>#include &quot;<a class="el" href="_asserts_8h_source.xhtml">tests/framework/Asserts.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="tests_2framework_2_macros_8h_source.xhtml">tests/framework/Macros.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_datasets_8h_source.xhtml">tests/framework/datasets/Datasets.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_validation_8h_source.xhtml">tests/validation/Validation.h</a>&quot;</code><br />
<code>#include &quot;tests/validation/fixtures/PermuteFixture.h&quot;</code><br />
</div>
<p><a href="_n_e_o_n_2_permute_8cpp_source.xhtml">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacearm__compute"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml">arm_compute</a></td></tr>
<tr class="memdesc:namespacearm__compute"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copyright (c) 2017-2018 ARM Limited. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml">arm_compute::test</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1validation"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml">arm_compute::test::validation</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a2a5527aa9271a188c66dede8c1faac56"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a2a5527aa9271a188c66dede8c1faac56"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a2a5527aa9271a188c66dede8c1faac56">NEPermuteFixture</a> = PermuteValidationFixture&lt; Tensor, Accessor, NEPermute, T &gt;</td></tr>
<tr class="separator:a2a5527aa9271a188c66dede8c1faac56"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a9830b21da051c2c7724923c6729e5fd9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a9830b21da051c2c7724923c6729e5fd9">DATA_TEST_CASE</a> (Validate, framework::DatasetMode::ALL, zip(zip(zip(framework::dataset::make(&quot;InputInfo&quot;,{ TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(1U, 7U), 1, DataType::U8), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(27U, 13U, 37U, 2U), 1, DataType::F32), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::S16), TensorInfo(TensorShape(27U, 13U, 37U, 2U), 1, DataType::F32), TensorInfo(TensorShape(27U, 13U, 37U, 2U), 1, DataType::F32), TensorInfo(TensorShape(27U, 13U, 37U, 2U), 1, DataType::F32) }), framework::dataset::make(&quot;OutputInfo&quot;, { TensorInfo(TensorShape(5U, 7U, 7U, 3U), 1, DataType::U16), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(7U, 7U, 5U, 3U), 1, DataType::U16), TensorInfo(TensorShape(5U, 7U), 1, DataType::U8), TensorInfo(TensorShape(5U, 7U, 7U, 3U), 1, DataType::U16), TensorInfo(TensorShape(13U, 37U, 27U, 2U), 1, DataType::F32), TensorInfo(TensorShape(5U, 7U, 7U, 3U), 1, DataType::U16), TensorInfo(TensorShape(3U, 5U, 7U, 7U), 1, DataType::S16), TensorInfo(TensorShape(13U, 37U, 27U, 2U), 1, DataType::F32), TensorInfo(TensorShape(37U, 2U, 13U, 27U), 1, DataType::F32), TensorInfo(TensorShape(37U, 2U, 13U, 27U), 1, DataType::F32) })), framework::dataset::make(&quot;PermutationVector&quot;, { PermutationVector(2U, 1U, 0U), PermutationVector(2U, 2U, 1U), PermutationVector(1U, 1U, 1U), PermutationVector(2U, 0U, 1U), PermutationVector(2U, 0U, 1U), PermutationVector(1U, 2U, 0U), PermutationVector(3U, 2U, 0U, 1U), PermutationVector(3U, 2U, 0U, 1U), PermutationVector(2U, 3U, 1U, 0U), PermutationVector(2U, 3U, 1U, 0U), PermutationVector(0U, 0U, 0U, 1000U) })), framework::dataset::make(&quot;Expected&quot;, { true, false, false, false, true, true, false, true, false, true, false })), input_info, output_info, perm_vect, expected)</td></tr>
<tr class="separator:a9830b21da051c2c7724923c6729e5fd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10cbef7a4d5b95ee888e5371244056ae"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a10cbef7a4d5b95ee888e5371244056ae">DATA_TEST_CASE</a> (Configuration, framework::DatasetMode::ALL, combine(datasets::Small4DShapes(), framework::dataset::make(&quot;DataType&quot;, { DataType::S8, DataType::U8, DataType::S16, DataType::U16, DataType::U32, DataType::S32, DataType::F16, DataType::F32 })), shape, data_type)</td></tr>
<tr class="separator:a10cbef7a4d5b95ee888e5371244056ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38e5043d42ed927afc5bb5e31ca1795b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a38e5043d42ed927afc5bb5e31ca1795b">FIXTURE_DATA_TEST_CASE</a> (RunSmall, NEPermuteFixture&lt; uint8_t &gt;, framework::DatasetMode::PRECOMMIT, PermuteParametersSmall *framework::dataset::make(&quot;DataType&quot;, DataType::U8))</td></tr>
<tr class="separator:a38e5043d42ed927afc5bb5e31ca1795b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3b4c759fa670f17f91897fa69500485"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad3b4c759fa670f17f91897fa69500485">FIXTURE_DATA_TEST_CASE</a> (RunLarge, NEPermuteFixture&lt; uint8_t &gt;, framework::DatasetMode::NIGHTLY, PermuteParametersLarge *framework::dataset::make(&quot;DataType&quot;, DataType::U8))</td></tr>
<tr class="separator:ad3b4c759fa670f17f91897fa69500485"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22615ad09912b710db264b02b06897fd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a22615ad09912b710db264b02b06897fd">FIXTURE_DATA_TEST_CASE</a> (RunSmall, NEPermuteFixture&lt; uint16_t &gt;, framework::DatasetMode::PRECOMMIT, PermuteParametersSmall *framework::dataset::make(&quot;DataType&quot;, DataType::U16))</td></tr>
<tr class="separator:a22615ad09912b710db264b02b06897fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab24d236496d1b55caad197ec591c8cd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#aab24d236496d1b55caad197ec591c8cd">FIXTURE_DATA_TEST_CASE</a> (RunLarge, NEPermuteFixture&lt; uint16_t &gt;, framework::DatasetMode::NIGHTLY, PermuteParametersLarge *framework::dataset::make(&quot;DataType&quot;, DataType::U16))</td></tr>
<tr class="separator:aab24d236496d1b55caad197ec591c8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31c94981c6840e6732ef3e0d6d1bc292"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a31c94981c6840e6732ef3e0d6d1bc292">FIXTURE_DATA_TEST_CASE</a> (RunSmall, NEPermuteFixture&lt; uint32_t &gt;, framework::DatasetMode::PRECOMMIT, PermuteParametersSmall *framework::dataset::make(&quot;DataType&quot;, DataType::U32))</td></tr>
<tr class="separator:a31c94981c6840e6732ef3e0d6d1bc292"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dc31a1236231cdfb5c40d990a38ecaa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7dc31a1236231cdfb5c40d990a38ecaa">FIXTURE_DATA_TEST_CASE</a> (RunLarge, NEPermuteFixture&lt; uint32_t &gt;, framework::DatasetMode::NIGHTLY, PermuteParametersLarge *framework::dataset::make(&quot;DataType&quot;, DataType::U32))</td></tr>
<tr class="separator:a7dc31a1236231cdfb5c40d990a38ecaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</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_59425e443f801f1f2fd8bbe4959a3ccf.xhtml">tests</a></li><li class="navelem"><a class="el" href="dir_e7c7b16542faa38cb4655ff1750d3604.xhtml">validation</a></li><li class="navelem"><a class="el" href="dir_0538a82dae0483a21d0f1e9d7e0a45c6.xhtml">NEON</a></li><li class="navelem"><a class="el" href="_n_e_o_n_2_permute_8cpp.xhtml">Permute.cpp</a></li>
    <li class="footer">Generated on Mon Sep 2 2019 11:47:30 for Compute Library by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>
