<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRResult" id="SR_clip_5fq31_5fto_5fq15">
 <div class="SREntry">
  <a id="Item0" onkeydown="return searchResults.Nav(event,0)" onkeypress="return searchResults.Nav(event,0)" onkeyup="return searchResults.Nav(event,0)" class="SRSymbol" href="../arm__math_8h.html#a4af3ca330e14587289518e6565fd04bd" target="_parent">clip_q31_to_q15</a>
  <span class="SRScope">arm_math.h</span>
 </div>
</div>
<div class="SRResult" id="SR_clip_5fq31_5fto_5fq7">
 <div class="SREntry">
  <a id="Item1" onkeydown="return searchResults.Nav(event,1)" onkeypress="return searchResults.Nav(event,1)" onkeyup="return searchResults.Nav(event,1)" class="SRSymbol" href="../arm__math_8h.html#aa9918ce19228b0d4f072fb84776eabc1" target="_parent">clip_q31_to_q7</a>
  <span class="SRScope">arm_math.h</span>
 </div>
</div>
<div class="SRResult" id="SR_clip_5fq63_5fto_5fq15">
 <div class="SREntry">
  <a id="Item2" onkeydown="return searchResults.Nav(event,2)" onkeypress="return searchResults.Nav(event,2)" onkeyup="return searchResults.Nav(event,2)" class="SRSymbol" href="../arm__math_8h.html#aa6f1e5d0d276f42217e75f071ca84a2e" target="_parent">clip_q63_to_q15</a>
  <span class="SRScope">arm_math.h</span>
 </div>
</div>
<div class="SRResult" id="SR_clip_5fq63_5fto_5fq31">
 <div class="SREntry">
  <a id="Item3" onkeydown="return searchResults.Nav(event,3)" onkeypress="return searchResults.Nav(event,3)" onkeyup="return searchResults.Nav(event,3)" class="SRSymbol" href="../arm__math_8h.html#ad7373e53d3c2e1adfeafc8c2e9720b5c" target="_parent">clip_q63_to_q31</a>
  <span class="SRScope">arm_math.h</span>
 </div>
</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
--></script>
</div>
</body>
</html>
