Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 6e7a2755bd78c9deedab199b86e675f3 > files > 3486

gnuradio-doc-3.2.2-9.fc14.x86_64.rpm

<!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"/>
<title>GNU Radio 3.2.2 C++ API: gc_spu_macs.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">GNU Radio 3.2.2 C++ API</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('gc__spu__macs_8h.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<h1>gc_spu_macs.h</h1>  </div>
</div>
<div class="contents">
<a href="gc__spu__macs_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* -*- asm -*- */</span>
<a name="l00002"></a>00002 <span class="comment">/*</span>
<a name="l00003"></a>00003 <span class="comment"> * Copyright 2008 Free Software Foundation, Inc.</span>
<a name="l00004"></a>00004 <span class="comment"> * </span>
<a name="l00005"></a>00005 <span class="comment"> * This file is part of GNU Radio</span>
<a name="l00006"></a>00006 <span class="comment"> * </span>
<a name="l00007"></a>00007 <span class="comment"> * GNU Radio is free software; you can redistribute it and/or modify</span>
<a name="l00008"></a>00008 <span class="comment"> * it under the terms of the GNU General Public License as published by</span>
<a name="l00009"></a>00009 <span class="comment"> * the Free Software Foundation; either version 3, or (at your option)</span>
<a name="l00010"></a>00010 <span class="comment"> * any later version.</span>
<a name="l00011"></a>00011 <span class="comment"> * </span>
<a name="l00012"></a>00012 <span class="comment"> * GNU Radio is distributed in the hope that it will be useful,</span>
<a name="l00013"></a>00013 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00014"></a>00014 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span>
<a name="l00015"></a>00015 <span class="comment"> * GNU General Public License for more details.</span>
<a name="l00016"></a>00016 <span class="comment"> * </span>
<a name="l00017"></a>00017 <span class="comment"> * You should have received a copy of the GNU General Public License along</span>
<a name="l00018"></a>00018 <span class="comment"> * with this program; if not, write to the Free Software Foundation, Inc.,</span>
<a name="l00019"></a>00019 <span class="comment"> * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.</span>
<a name="l00020"></a>00020 <span class="comment"> */</span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 <span class="preprocessor">#ifndef INCLUDED_GC_SPU_MACS_H</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#define INCLUDED_GC_SPU_MACS_H</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span>
<a name="l00025"></a>00025 <span class="comment">/*</span>
<a name="l00026"></a>00026 <span class="comment"> * This file contains a set of macros that are generally useful when</span>
<a name="l00027"></a>00027 <span class="comment"> * coding in SPU assembler</span>
<a name="l00028"></a>00028 <span class="comment"> *</span>
<a name="l00029"></a>00029 <span class="comment"> * Note that the multi-instruction macros in here may overwrite</span>
<a name="l00030"></a>00030 <span class="comment"> * registers 77, 78, and 79 without warning.</span>
<a name="l00031"></a>00031 <span class="comment"> */</span>
<a name="l00032"></a>00032 
<a name="l00033"></a>00033 <span class="comment">/*</span>
<a name="l00034"></a>00034 <span class="comment"> * defines for all registers</span>
<a name="l00035"></a>00035 <span class="comment"> */</span>
<a name="l00036"></a><a class="code" href="gc__spu__macs_8h.html#af8ef4632fb5325a43f9c31778135d450">00036</a> <span class="preprocessor">#define r0      $0</span>
<a name="l00037"></a><a class="code" href="gc__spu__macs_8h.html#a7eaf5903abe583c64f4324081140b84e">00037</a> <span class="preprocessor"></span><span class="preprocessor">#define r1      $1</span>
<a name="l00038"></a><a class="code" href="gc__spu__macs_8h.html#a0700026d33d910874577324a49997947">00038</a> <span class="preprocessor"></span><span class="preprocessor">#define r2      $2</span>
<a name="l00039"></a><a class="code" href="gc__spu__macs_8h.html#af0a5572b5ba560a4e4548a2722d3c593">00039</a> <span class="preprocessor"></span><span class="preprocessor">#define r3      $3</span>
<a name="l00040"></a><a class="code" href="gc__spu__macs_8h.html#ac2da134ec3ab777999b1d3cb16f35f49">00040</a> <span class="preprocessor"></span><span class="preprocessor">#define r4      $4</span>
<a name="l00041"></a><a class="code" href="gc__spu__macs_8h.html#af4cf2acff0caa8dcc94f9e94d16d5b0a">00041</a> <span class="preprocessor"></span><span class="preprocessor">#define r5      $5</span>
<a name="l00042"></a><a class="code" href="gc__spu__macs_8h.html#a76535c34ee377a9e0089c24ca39541e1">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define r6      $6</span>
<a name="l00043"></a><a class="code" href="gc__spu__macs_8h.html#aa0ec33834abbd7797aeba23d238eb1f1">00043</a> <span class="preprocessor"></span><span class="preprocessor">#define r7      $7</span>
<a name="l00044"></a><a class="code" href="gc__spu__macs_8h.html#a6f1417813d47c867539dfc6bfbf45925">00044</a> <span class="preprocessor"></span><span class="preprocessor">#define r8      $8</span>
<a name="l00045"></a><a class="code" href="gc__spu__macs_8h.html#a39fd20c745a542aa90c2be9f75152ac8">00045</a> <span class="preprocessor"></span><span class="preprocessor">#define r9      $9</span>
<a name="l00046"></a><a class="code" href="gc__spu__macs_8h.html#addd1a6d09b9980455df04553a102940d">00046</a> <span class="preprocessor"></span><span class="preprocessor">#define r10     $10</span>
<a name="l00047"></a><a class="code" href="gc__spu__macs_8h.html#aa3192e154c88f6cbdb22073187763c17">00047</a> <span class="preprocessor"></span><span class="preprocessor">#define r11     $11</span>
<a name="l00048"></a><a class="code" href="gc__spu__macs_8h.html#a2dcb739ee7e88f954fcdff1eff3dba8a">00048</a> <span class="preprocessor"></span><span class="preprocessor">#define r12     $12</span>
<a name="l00049"></a><a class="code" href="gc__spu__macs_8h.html#ac37a14f223d6b2f038b86a6316bf0999">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define r13     $13</span>
<a name="l00050"></a><a class="code" href="gc__spu__macs_8h.html#ab0c60c4dc04a840c3cd4826a1cf057d8">00050</a> <span class="preprocessor"></span><span class="preprocessor">#define r14     $14</span>
<a name="l00051"></a><a class="code" href="gc__spu__macs_8h.html#a72e4f5e8aeb3c09325276c6eb023926a">00051</a> <span class="preprocessor"></span><span class="preprocessor">#define r15     $15</span>
<a name="l00052"></a><a class="code" href="gc__spu__macs_8h.html#a7d354e54a9284f8a7cb13ff7a7a4c510">00052</a> <span class="preprocessor"></span><span class="preprocessor">#define r16     $16</span>
<a name="l00053"></a><a class="code" href="gc__spu__macs_8h.html#ac412799a561a66bb9039689f901049dd">00053</a> <span class="preprocessor"></span><span class="preprocessor">#define r17     $17</span>
<a name="l00054"></a><a class="code" href="gc__spu__macs_8h.html#a43018bc8d63607a7670769a26b92d769">00054</a> <span class="preprocessor"></span><span class="preprocessor">#define r18     $18</span>
<a name="l00055"></a><a class="code" href="gc__spu__macs_8h.html#ac45edf66343c8976aad09bf63cebee32">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define r19     $19</span>
<a name="l00056"></a><a class="code" href="gc__spu__macs_8h.html#a831308d6cf0fe84a489f3b12aa6f84ca">00056</a> <span class="preprocessor"></span><span class="preprocessor">#define r20     $20</span>
<a name="l00057"></a><a class="code" href="gc__spu__macs_8h.html#a5b9491dc2d26aa83bec4bbbf957d5779">00057</a> <span class="preprocessor"></span><span class="preprocessor">#define r21     $21</span>
<a name="l00058"></a><a class="code" href="gc__spu__macs_8h.html#a9faa48ab2a35ee5a726ee84c9c3b7c39">00058</a> <span class="preprocessor"></span><span class="preprocessor">#define r22     $22</span>
<a name="l00059"></a><a class="code" href="gc__spu__macs_8h.html#ad20d91e42b5b9bd91bafae792f721fe0">00059</a> <span class="preprocessor"></span><span class="preprocessor">#define r23     $23</span>
<a name="l00060"></a><a class="code" href="gc__spu__macs_8h.html#a501c8a2bdf4e0df96e6d7298f108a825">00060</a> <span class="preprocessor"></span><span class="preprocessor">#define r24     $24</span>
<a name="l00061"></a><a class="code" href="gc__spu__macs_8h.html#a43cc541afc0f2e6a10f4a96f9d8e5210">00061</a> <span class="preprocessor"></span><span class="preprocessor">#define r25     $25</span>
<a name="l00062"></a><a class="code" href="gc__spu__macs_8h.html#aa2b613ffe3d61df514568ba409d43f35">00062</a> <span class="preprocessor"></span><span class="preprocessor">#define r26     $26</span>
<a name="l00063"></a><a class="code" href="gc__spu__macs_8h.html#a311a4c2110ad750c2b1348016bcbfef7">00063</a> <span class="preprocessor"></span><span class="preprocessor">#define r27     $27</span>
<a name="l00064"></a><a class="code" href="gc__spu__macs_8h.html#a0f645eded19564ad420ee1f9fc376308">00064</a> <span class="preprocessor"></span><span class="preprocessor">#define r28     $28</span>
<a name="l00065"></a><a class="code" href="gc__spu__macs_8h.html#af54bc224f6bfd4d50955e85b3f7edb9e">00065</a> <span class="preprocessor"></span><span class="preprocessor">#define r29     $29</span>
<a name="l00066"></a><a class="code" href="gc__spu__macs_8h.html#ab896ba78d799971de9b1d724f3ed2b02">00066</a> <span class="preprocessor"></span><span class="preprocessor">#define r30     $30</span>
<a name="l00067"></a><a class="code" href="gc__spu__macs_8h.html#afc3dd658b733702d244acb9f65e51ed6">00067</a> <span class="preprocessor"></span><span class="preprocessor">#define r31     $31</span>
<a name="l00068"></a><a class="code" href="gc__spu__macs_8h.html#adaaf975869d5dc987d87091d518c9b8b">00068</a> <span class="preprocessor"></span><span class="preprocessor">#define r32     $32</span>
<a name="l00069"></a><a class="code" href="gc__spu__macs_8h.html#a3428780a216ef02902977c4d755f367a">00069</a> <span class="preprocessor"></span><span class="preprocessor">#define r33     $33</span>
<a name="l00070"></a><a class="code" href="gc__spu__macs_8h.html#acaea63c8a88fe8249ce517a7dabdb1ca">00070</a> <span class="preprocessor"></span><span class="preprocessor">#define r34     $34</span>
<a name="l00071"></a><a class="code" href="gc__spu__macs_8h.html#a5b521d87367fe61ae487f6b9b8870a02">00071</a> <span class="preprocessor"></span><span class="preprocessor">#define r35     $35</span>
<a name="l00072"></a><a class="code" href="gc__spu__macs_8h.html#ab5e1716ed509b6074034a40f51df6fd6">00072</a> <span class="preprocessor"></span><span class="preprocessor">#define r36     $36</span>
<a name="l00073"></a><a class="code" href="gc__spu__macs_8h.html#a368f2ae87bbfc8ee39fa859041e5baed">00073</a> <span class="preprocessor"></span><span class="preprocessor">#define r37     $37</span>
<a name="l00074"></a><a class="code" href="gc__spu__macs_8h.html#a958decd80935cdf820acbf279548af35">00074</a> <span class="preprocessor"></span><span class="preprocessor">#define r38     $38</span>
<a name="l00075"></a><a class="code" href="gc__spu__macs_8h.html#a8375e8c3cec776389daf3a1096964a26">00075</a> <span class="preprocessor"></span><span class="preprocessor">#define r39     $39</span>
<a name="l00076"></a><a class="code" href="gc__spu__macs_8h.html#acdf045a492b9b7891a20562b9a8efc67">00076</a> <span class="preprocessor"></span><span class="preprocessor">#define r40     $40</span>
<a name="l00077"></a><a class="code" href="gc__spu__macs_8h.html#a34818eb1963edb888db6dfcd375505f9">00077</a> <span class="preprocessor"></span><span class="preprocessor">#define r41     $41</span>
<a name="l00078"></a><a class="code" href="gc__spu__macs_8h.html#a1fc3b9e3d4e735a995165603d3eb048a">00078</a> <span class="preprocessor"></span><span class="preprocessor">#define r42     $42</span>
<a name="l00079"></a><a class="code" href="gc__spu__macs_8h.html#ab98e8a79218c9e5e03ff3a68f55477d1">00079</a> <span class="preprocessor"></span><span class="preprocessor">#define r43     $43</span>
<a name="l00080"></a><a class="code" href="gc__spu__macs_8h.html#a51ec34f6118049c2fbc038c1a2628af8">00080</a> <span class="preprocessor"></span><span class="preprocessor">#define r44     $44</span>
<a name="l00081"></a><a class="code" href="gc__spu__macs_8h.html#ab49c703bcef37e0113f3fd0615d074a1">00081</a> <span class="preprocessor"></span><span class="preprocessor">#define r45     $45</span>
<a name="l00082"></a><a class="code" href="gc__spu__macs_8h.html#a821f19f345d514b445a8a701720ce5d0">00082</a> <span class="preprocessor"></span><span class="preprocessor">#define r46     $46</span>
<a name="l00083"></a><a class="code" href="gc__spu__macs_8h.html#a631bfb7dd1ab50faf92bc82eac852302">00083</a> <span class="preprocessor"></span><span class="preprocessor">#define r47     $47</span>
<a name="l00084"></a><a class="code" href="gc__spu__macs_8h.html#a98ae063ec09bf5871679a6cbe2510a3e">00084</a> <span class="preprocessor"></span><span class="preprocessor">#define r48     $48</span>
<a name="l00085"></a><a class="code" href="gc__spu__macs_8h.html#ae74ab67cf02a21783bfadef8af8920ed">00085</a> <span class="preprocessor"></span><span class="preprocessor">#define r49     $49</span>
<a name="l00086"></a><a class="code" href="gc__spu__macs_8h.html#a9d30e66d8245a13a376e5e076676cd70">00086</a> <span class="preprocessor"></span><span class="preprocessor">#define r50     $50</span>
<a name="l00087"></a><a class="code" href="gc__spu__macs_8h.html#a023c03f0e6fdd830e67f19810784b29b">00087</a> <span class="preprocessor"></span><span class="preprocessor">#define r51     $51</span>
<a name="l00088"></a><a class="code" href="gc__spu__macs_8h.html#ae70afd3318b4768a7861f43d4a62d4cd">00088</a> <span class="preprocessor"></span><span class="preprocessor">#define r52     $52</span>
<a name="l00089"></a><a class="code" href="gc__spu__macs_8h.html#ad9f9da9e588722bc2e8a33519dea8f5a">00089</a> <span class="preprocessor"></span><span class="preprocessor">#define r53     $53</span>
<a name="l00090"></a><a class="code" href="gc__spu__macs_8h.html#a7ba3a30e57b55d3efbea46b19a87b662">00090</a> <span class="preprocessor"></span><span class="preprocessor">#define r54     $54</span>
<a name="l00091"></a><a class="code" href="gc__spu__macs_8h.html#a00af33595967ead006297c303e3014cc">00091</a> <span class="preprocessor"></span><span class="preprocessor">#define r55     $55</span>
<a name="l00092"></a><a class="code" href="gc__spu__macs_8h.html#a8d49d99e73806da724883bb726e1d2a8">00092</a> <span class="preprocessor"></span><span class="preprocessor">#define r56     $56</span>
<a name="l00093"></a><a class="code" href="gc__spu__macs_8h.html#a06f9ead123343f833886ea2aec826603">00093</a> <span class="preprocessor"></span><span class="preprocessor">#define r57     $57</span>
<a name="l00094"></a><a class="code" href="gc__spu__macs_8h.html#a0287c5f55292b7fc8bf6a2748f342f2c">00094</a> <span class="preprocessor"></span><span class="preprocessor">#define r58     $58</span>
<a name="l00095"></a><a class="code" href="gc__spu__macs_8h.html#ad5e3698aa2ee608a9956a9395b311cb8">00095</a> <span class="preprocessor"></span><span class="preprocessor">#define r59     $59</span>
<a name="l00096"></a><a class="code" href="gc__spu__macs_8h.html#a310b5449cb5b4c2783ef882187a51f40">00096</a> <span class="preprocessor"></span><span class="preprocessor">#define r60     $60</span>
<a name="l00097"></a><a class="code" href="gc__spu__macs_8h.html#a68b431fd0707acb192ee3a94114a35e9">00097</a> <span class="preprocessor"></span><span class="preprocessor">#define r61     $61</span>
<a name="l00098"></a><a class="code" href="gc__spu__macs_8h.html#a0d6c5f9f59530e8f333cb27e3a2fb349">00098</a> <span class="preprocessor"></span><span class="preprocessor">#define r62     $62</span>
<a name="l00099"></a><a class="code" href="gc__spu__macs_8h.html#a292f18410d4f1824dd58d93e5a05928f">00099</a> <span class="preprocessor"></span><span class="preprocessor">#define r63     $63</span>
<a name="l00100"></a><a class="code" href="gc__spu__macs_8h.html#af4b7d00445c018ccfaf06362579e3342">00100</a> <span class="preprocessor"></span><span class="preprocessor">#define r64     $64</span>
<a name="l00101"></a><a class="code" href="gc__spu__macs_8h.html#a661e4ebf0bd455b00287c172e9b7a89b">00101</a> <span class="preprocessor"></span><span class="preprocessor">#define r65     $65</span>
<a name="l00102"></a><a class="code" href="gc__spu__macs_8h.html#ac79bf85662a3ef58370d4f7fbd1390d1">00102</a> <span class="preprocessor"></span><span class="preprocessor">#define r66     $66</span>
<a name="l00103"></a><a class="code" href="gc__spu__macs_8h.html#a3ac148427a397bf658229b6586e17578">00103</a> <span class="preprocessor"></span><span class="preprocessor">#define r67     $67</span>
<a name="l00104"></a><a class="code" href="gc__spu__macs_8h.html#a7c509aefb35ab8475cbd6aaa21c0c092">00104</a> <span class="preprocessor"></span><span class="preprocessor">#define r68     $68</span>
<a name="l00105"></a><a class="code" href="gc__spu__macs_8h.html#a80c36ce2787745146bbd5e6f58708947">00105</a> <span class="preprocessor"></span><span class="preprocessor">#define r69     $69</span>
<a name="l00106"></a><a class="code" href="gc__spu__macs_8h.html#a6475abd44625b22d463b57b474c65ca7">00106</a> <span class="preprocessor"></span><span class="preprocessor">#define r70     $70</span>
<a name="l00107"></a><a class="code" href="gc__spu__macs_8h.html#ae0c8fbb22d3edcf8c34ee4f2d5208c05">00107</a> <span class="preprocessor"></span><span class="preprocessor">#define r71     $71</span>
<a name="l00108"></a><a class="code" href="gc__spu__macs_8h.html#a6becb1db4cfec71dd8bbc010df5916a4">00108</a> <span class="preprocessor"></span><span class="preprocessor">#define r72     $72</span>
<a name="l00109"></a><a class="code" href="gc__spu__macs_8h.html#a758ce4675482731e3061100b82e25449">00109</a> <span class="preprocessor"></span><span class="preprocessor">#define r73     $73</span>
<a name="l00110"></a><a class="code" href="gc__spu__macs_8h.html#a702cf700055abd7d39c70d3baf10e993">00110</a> <span class="preprocessor"></span><span class="preprocessor">#define r74     $74</span>
<a name="l00111"></a><a class="code" href="gc__spu__macs_8h.html#ab0e090617aeb56d3c74e5bc6e5feca11">00111</a> <span class="preprocessor"></span><span class="preprocessor">#define r75     $75</span>
<a name="l00112"></a><a class="code" href="gc__spu__macs_8h.html#a7ae0409204cb9c30262dd10a51446c49">00112</a> <span class="preprocessor"></span><span class="preprocessor">#define r76     $76</span>
<a name="l00113"></a><a class="code" href="gc__spu__macs_8h.html#a792e01cd73c32988989e683fd0fa349a">00113</a> <span class="preprocessor"></span><span class="preprocessor">#define r77     $77</span>
<a name="l00114"></a><a class="code" href="gc__spu__macs_8h.html#ad102ab20e4a1689b652e49e107c4511f">00114</a> <span class="preprocessor"></span><span class="preprocessor">#define r78     $78</span>
<a name="l00115"></a><a class="code" href="gc__spu__macs_8h.html#a0a0f1de104d528899501da8d71497465">00115</a> <span class="preprocessor"></span><span class="preprocessor">#define r79     $79</span>
<a name="l00116"></a><a class="code" href="gc__spu__macs_8h.html#a8bb658e0fa6d37fbb8c43e5e1e456025">00116</a> <span class="preprocessor"></span><span class="preprocessor">#define r80     $80</span>
<a name="l00117"></a><a class="code" href="gc__spu__macs_8h.html#a77779b029999dacb12df8cae96bff73b">00117</a> <span class="preprocessor"></span><span class="preprocessor">#define r81     $81</span>
<a name="l00118"></a><a class="code" href="gc__spu__macs_8h.html#a51686d6e2eabfc10aed17e74f6f85479">00118</a> <span class="preprocessor"></span><span class="preprocessor">#define r82     $82</span>
<a name="l00119"></a><a class="code" href="gc__spu__macs_8h.html#a49b3b92044a70fc7ba5997b5d664d302">00119</a> <span class="preprocessor"></span><span class="preprocessor">#define r83     $83</span>
<a name="l00120"></a><a class="code" href="gc__spu__macs_8h.html#a70f66d9595daf470f36375a55a6c6574">00120</a> <span class="preprocessor"></span><span class="preprocessor">#define r84     $84</span>
<a name="l00121"></a><a class="code" href="gc__spu__macs_8h.html#a6ea38380181f8311b2d5f5df2c258aca">00121</a> <span class="preprocessor"></span><span class="preprocessor">#define r85     $85</span>
<a name="l00122"></a><a class="code" href="gc__spu__macs_8h.html#ae091d308f08a949cc3d801424ec5d00c">00122</a> <span class="preprocessor"></span><span class="preprocessor">#define r86     $86</span>
<a name="l00123"></a><a class="code" href="gc__spu__macs_8h.html#a2159232358fe08ebecd834f75848bbb9">00123</a> <span class="preprocessor"></span><span class="preprocessor">#define r87     $87</span>
<a name="l00124"></a><a class="code" href="gc__spu__macs_8h.html#a270c785ab8d9cce93b0fef19b6c6155e">00124</a> <span class="preprocessor"></span><span class="preprocessor">#define r88     $88</span>
<a name="l00125"></a><a class="code" href="gc__spu__macs_8h.html#a2b8cacde374d7d0a4e7e5529105fc9eb">00125</a> <span class="preprocessor"></span><span class="preprocessor">#define r89     $89</span>
<a name="l00126"></a><a class="code" href="gc__spu__macs_8h.html#a9b1a671fa1b7c2654a051a976e95afab">00126</a> <span class="preprocessor"></span><span class="preprocessor">#define r90     $90</span>
<a name="l00127"></a><a class="code" href="gc__spu__macs_8h.html#ad538a9be2ce6086801ff1b6ffc428b21">00127</a> <span class="preprocessor"></span><span class="preprocessor">#define r91     $91</span>
<a name="l00128"></a><a class="code" href="gc__spu__macs_8h.html#a43aad5829b352e48aecb380981d9db37">00128</a> <span class="preprocessor"></span><span class="preprocessor">#define r92     $92</span>
<a name="l00129"></a><a class="code" href="gc__spu__macs_8h.html#abe83809b9efcd5b1e9ede958b3fc0c2c">00129</a> <span class="preprocessor"></span><span class="preprocessor">#define r93     $93</span>
<a name="l00130"></a><a class="code" href="gc__spu__macs_8h.html#a05130405c765316d2228e94c289f44d8">00130</a> <span class="preprocessor"></span><span class="preprocessor">#define r94     $94</span>
<a name="l00131"></a><a class="code" href="gc__spu__macs_8h.html#a685d4d21f90a7b95cdb7606aeba3a80d">00131</a> <span class="preprocessor"></span><span class="preprocessor">#define r95     $95</span>
<a name="l00132"></a><a class="code" href="gc__spu__macs_8h.html#a7707fc2f332483495280505cc0182e0e">00132</a> <span class="preprocessor"></span><span class="preprocessor">#define r96     $96</span>
<a name="l00133"></a><a class="code" href="gc__spu__macs_8h.html#ab095016977b8029de02e07175223ea22">00133</a> <span class="preprocessor"></span><span class="preprocessor">#define r97     $97</span>
<a name="l00134"></a><a class="code" href="gc__spu__macs_8h.html#afe951a3a7f7231850c58d499d957c541">00134</a> <span class="preprocessor"></span><span class="preprocessor">#define r98     $98</span>
<a name="l00135"></a><a class="code" href="gc__spu__macs_8h.html#a52f113d748142f2fc6d691b2e637b372">00135</a> <span class="preprocessor"></span><span class="preprocessor">#define r99     $99</span>
<a name="l00136"></a><a class="code" href="gc__spu__macs_8h.html#a9ee0ac1e84e9e9ad56e3b3543fcdf9e9">00136</a> <span class="preprocessor"></span><span class="preprocessor">#define r100    $100</span>
<a name="l00137"></a><a class="code" href="gc__spu__macs_8h.html#a7af0c3ac372f53b7bc7438deea2afbf1">00137</a> <span class="preprocessor"></span><span class="preprocessor">#define r101    $101</span>
<a name="l00138"></a><a class="code" href="gc__spu__macs_8h.html#aafa2db456289229cce771e201d5cf074">00138</a> <span class="preprocessor"></span><span class="preprocessor">#define r102    $102</span>
<a name="l00139"></a><a class="code" href="gc__spu__macs_8h.html#adc7b58308a6e72f917542c32da51a918">00139</a> <span class="preprocessor"></span><span class="preprocessor">#define r103    $103</span>
<a name="l00140"></a><a class="code" href="gc__spu__macs_8h.html#a132bb90eda9ad7c3438ef53d2607a7a9">00140</a> <span class="preprocessor"></span><span class="preprocessor">#define r104    $104</span>
<a name="l00141"></a><a class="code" href="gc__spu__macs_8h.html#a722d04d1abd59e9e2f312bde22e37a52">00141</a> <span class="preprocessor"></span><span class="preprocessor">#define r105    $105</span>
<a name="l00142"></a><a class="code" href="gc__spu__macs_8h.html#a59c49443ebff68644b40f958ef00c80b">00142</a> <span class="preprocessor"></span><span class="preprocessor">#define r106    $106</span>
<a name="l00143"></a><a class="code" href="gc__spu__macs_8h.html#abc4e747c49a52b0fce64942d28c28290">00143</a> <span class="preprocessor"></span><span class="preprocessor">#define r107    $107</span>
<a name="l00144"></a><a class="code" href="gc__spu__macs_8h.html#a81d5c2f6a1ca9c28a537d384a0ff2e7c">00144</a> <span class="preprocessor"></span><span class="preprocessor">#define r108    $108</span>
<a name="l00145"></a><a class="code" href="gc__spu__macs_8h.html#af6841f9924d917e9b4d257687dda5a94">00145</a> <span class="preprocessor"></span><span class="preprocessor">#define r109    $109</span>
<a name="l00146"></a><a class="code" href="gc__spu__macs_8h.html#a597c4112a4d85b83fc3a183e423369d8">00146</a> <span class="preprocessor"></span><span class="preprocessor">#define r110    $110</span>
<a name="l00147"></a><a class="code" href="gc__spu__macs_8h.html#ac969cbc6b54f394c118b899194f9a3d9">00147</a> <span class="preprocessor"></span><span class="preprocessor">#define r111    $111</span>
<a name="l00148"></a><a class="code" href="gc__spu__macs_8h.html#a58e5f5d007fdf5f647a6d505b5f52c34">00148</a> <span class="preprocessor"></span><span class="preprocessor">#define r112    $112</span>
<a name="l00149"></a><a class="code" href="gc__spu__macs_8h.html#a8de4c8c38ab2b98298c3c7280f8b6f7d">00149</a> <span class="preprocessor"></span><span class="preprocessor">#define r113    $113</span>
<a name="l00150"></a><a class="code" href="gc__spu__macs_8h.html#aaa45cf94492dfe0db0a467384165c76a">00150</a> <span class="preprocessor"></span><span class="preprocessor">#define r114    $114</span>
<a name="l00151"></a><a class="code" href="gc__spu__macs_8h.html#abef42fa8a292616ab6c1d7ea22ca0ef2">00151</a> <span class="preprocessor"></span><span class="preprocessor">#define r115    $115</span>
<a name="l00152"></a><a class="code" href="gc__spu__macs_8h.html#aa20af671898f36f50c51cbb22960808f">00152</a> <span class="preprocessor"></span><span class="preprocessor">#define r116    $116</span>
<a name="l00153"></a><a class="code" href="gc__spu__macs_8h.html#a4b504886255242bb2d9c6131c6abca14">00153</a> <span class="preprocessor"></span><span class="preprocessor">#define r117    $117</span>
<a name="l00154"></a><a class="code" href="gc__spu__macs_8h.html#a4091f3001fc799de332b12198834855f">00154</a> <span class="preprocessor"></span><span class="preprocessor">#define r118    $118</span>
<a name="l00155"></a><a class="code" href="gc__spu__macs_8h.html#a500ad6a2b191f1ac98b71550da389778">00155</a> <span class="preprocessor"></span><span class="preprocessor">#define r119    $119</span>
<a name="l00156"></a><a class="code" href="gc__spu__macs_8h.html#a6c01e791f8b83b569436251a8d676402">00156</a> <span class="preprocessor"></span><span class="preprocessor">#define r120    $120</span>
<a name="l00157"></a><a class="code" href="gc__spu__macs_8h.html#a37e314d4bec7ddfe03f57985fee0b3bc">00157</a> <span class="preprocessor"></span><span class="preprocessor">#define r121    $121</span>
<a name="l00158"></a><a class="code" href="gc__spu__macs_8h.html#a5591851136f8845c91b8cc649f752331">00158</a> <span class="preprocessor"></span><span class="preprocessor">#define r122    $122</span>
<a name="l00159"></a><a class="code" href="gc__spu__macs_8h.html#a91217a8a9cea8bcc40a6f20d1c4ae7be">00159</a> <span class="preprocessor"></span><span class="preprocessor">#define r123    $123</span>
<a name="l00160"></a><a class="code" href="gc__spu__macs_8h.html#ac0143716bae4d949f7e21cd9797a38f0">00160</a> <span class="preprocessor"></span><span class="preprocessor">#define r124    $124</span>
<a name="l00161"></a><a class="code" href="gc__spu__macs_8h.html#a5efa066299d7ca481c0adb5fdd91ceb6">00161</a> <span class="preprocessor"></span><span class="preprocessor">#define r125    $125</span>
<a name="l00162"></a><a class="code" href="gc__spu__macs_8h.html#a6ccbf1e64cab9d36791376a43b989b3f">00162</a> <span class="preprocessor"></span><span class="preprocessor">#define r126    $126</span>
<a name="l00163"></a><a class="code" href="gc__spu__macs_8h.html#a5ca3f8dc097132763bf96dbd2cac2e88">00163</a> <span class="preprocessor"></span><span class="preprocessor">#define r127    $127</span>
<a name="l00164"></a>00164 <span class="preprocessor"></span>
<a name="l00165"></a>00165 
<a name="l00166"></a><a class="code" href="gc__spu__macs_8h.html#ab7c4b924a9a37e04d2c49a0383720e05">00166</a> <span class="preprocessor">#define lr      r0      // link register</span>
<a name="l00167"></a><a class="code" href="gc__spu__macs_8h.html#a8d40798874dab99986478ef00ff3e297">00167</a> <span class="preprocessor"></span><span class="preprocessor">#define sp      r1      // stack pointer</span>
<a name="l00168"></a>00168 <span class="preprocessor"></span>                        <span class="comment">// r2 is environment pointer for langs that need it (ALGOL)</span>
<a name="l00169"></a>00169 
<a name="l00170"></a><a class="code" href="gc__spu__macs_8h.html#a696b31d3fc8a0a0f24948f98d0e4a4d1">00170</a> <span class="preprocessor">#define retval  r3      // return values are passed in regs starting at r3</span>
<a name="l00171"></a>00171 <span class="preprocessor"></span>
<a name="l00172"></a><a class="code" href="gc__spu__macs_8h.html#a489500f7b5cfd21fa6730e3a56f1c1f7">00172</a> <span class="preprocessor">#define arg1    r3      // args are passed in regs starting at r3</span>
<a name="l00173"></a><a class="code" href="gc__spu__macs_8h.html#a3ad2018792b545e1b82249aeb6a16d43">00173</a> <span class="preprocessor"></span><span class="preprocessor">#define arg2    r4</span>
<a name="l00174"></a><a class="code" href="gc__spu__macs_8h.html#aef6bcb582f07be1d1cd5cded3e96e6ac">00174</a> <span class="preprocessor"></span><span class="preprocessor">#define arg3    r5</span>
<a name="l00175"></a><a class="code" href="gc__spu__macs_8h.html#a1e925e623247312d0965da7524c72f6f">00175</a> <span class="preprocessor"></span><span class="preprocessor">#define arg4    r6</span>
<a name="l00176"></a><a class="code" href="gc__spu__macs_8h.html#a22b03cd75d43aafed6ba1617901f894f">00176</a> <span class="preprocessor"></span><span class="preprocessor">#define arg5    r7</span>
<a name="l00177"></a><a class="code" href="gc__spu__macs_8h.html#a56605356e728b2b64c1cb50c96bdf08f">00177</a> <span class="preprocessor"></span><span class="preprocessor">#define arg6    r8</span>
<a name="l00178"></a><a class="code" href="gc__spu__macs_8h.html#a3da834826ea47aa0bebd583b14ba9a3c">00178</a> <span class="preprocessor"></span><span class="preprocessor">#define arg7    r9</span>
<a name="l00179"></a><a class="code" href="gc__spu__macs_8h.html#a516fc2ae5b58fe9170bbce9b09743323">00179</a> <span class="preprocessor"></span><span class="preprocessor">#define arg8    r10</span>
<a name="l00180"></a><a class="code" href="gc__spu__macs_8h.html#a91ccf1d98a4fc6f98a59059d927eb012">00180</a> <span class="preprocessor"></span><span class="preprocessor">#define arg9    r11</span>
<a name="l00181"></a><a class="code" href="gc__spu__macs_8h.html#a644805a53197ae48879dd7fee8b1c2c7">00181</a> <span class="preprocessor"></span><span class="preprocessor">#define arg10   r12</span>
<a name="l00182"></a>00182 <span class="preprocessor"></span>
<a name="l00183"></a>00183 <span class="comment">//  r3 -  r74 are volatile (caller saves)</span>
<a name="l00184"></a>00184 <span class="comment">// r74 -  r79 are volatile (scratch regs possibly destroyed by fct prolog/epilog)</span>
<a name="l00185"></a>00185 <span class="comment">// r80 - r127 are non-volatile (callee-saves)</span>
<a name="l00186"></a>00186 
<a name="l00187"></a>00187 <span class="comment">// scratch registers reserved for use by the macros in this file.</span>
<a name="l00188"></a>00188 
<a name="l00189"></a><a class="code" href="gc__spu__macs_8h.html#a9804f02b9ec3136dce714e375dbb6023">00189</a> <span class="preprocessor">#define _gc_t0  r79</span>
<a name="l00190"></a><a class="code" href="gc__spu__macs_8h.html#a0e97406f425673393367c7ac0eb5ba1c">00190</a> <span class="preprocessor"></span><span class="preprocessor">#define _gc_t1  r78</span>
<a name="l00191"></a><a class="code" href="gc__spu__macs_8h.html#a1f6516f74641ba951b7312b93b634114">00191</a> <span class="preprocessor"></span><span class="preprocessor">#define _gc_t2  r77</span>
<a name="l00192"></a>00192 <span class="preprocessor"></span>
<a name="l00193"></a>00193 <span class="comment">/*</span>
<a name="l00194"></a>00194 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00195"></a>00195 <span class="comment"> *                          pseudo ops</span>
<a name="l00196"></a>00196 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00197"></a>00197 <span class="comment"> */</span>
<a name="l00198"></a><a class="code" href="gc__spu__macs_8h.html#a7882db5636c85954872e6fae51396a14">00198</a> <span class="preprocessor">#define PROC_ENTRY(name)                \</span>
<a name="l00199"></a>00199 <span class="preprocessor">        .text;                          \</span>
<a name="l00200"></a>00200 <span class="preprocessor">        .p2align 4;                     \</span>
<a name="l00201"></a>00201 <span class="preprocessor">        .global name;                   \</span>
<a name="l00202"></a>00202 <span class="preprocessor">        .type   name, @function;        \</span>
<a name="l00203"></a>00203 <span class="preprocessor">name:</span>
<a name="l00204"></a>00204 <span class="preprocessor"></span>
<a name="l00205"></a>00205 <span class="comment">/*</span>
<a name="l00206"></a>00206 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00207"></a>00207 <span class="comment"> *                  aliases for common operations</span>
<a name="l00208"></a>00208 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00209"></a>00209 <span class="comment"> */</span>
<a name="l00210"></a>00210 
<a name="l00211"></a>00211 <span class="comment">// Move register (even pipe, 2 cycles)</span>
<a name="l00212"></a><a class="code" href="gc__spu__macs_8h.html#a54d5832709b14598363e8025c0034736">00212</a> <span class="preprocessor">#define MR(rt, ra)                      or      rt, ra, ra;</span>
<a name="l00213"></a>00213 <span class="preprocessor"></span>
<a name="l00214"></a>00214 <span class="comment">// Move register (odd pipe, 4 cycles)</span>
<a name="l00215"></a><a class="code" href="gc__spu__macs_8h.html#a24d8a481bd134b3ceaaf4b96adbfb083">00215</a> <span class="preprocessor">#define LMR(rt, ra)                     rotqbyi rt, ra, 0;</span>
<a name="l00216"></a>00216 <span class="preprocessor"></span>
<a name="l00217"></a>00217 <span class="comment">// return</span>
<a name="l00218"></a><a class="code" href="gc__spu__macs_8h.html#a419f83b5dd1e61914653319c543ef682">00218</a> <span class="preprocessor">#define RETURN()                        bi      lr;</span>
<a name="l00219"></a>00219 <span class="preprocessor"></span>
<a name="l00220"></a>00220 <span class="comment">// hint for a return</span>
<a name="l00221"></a><a class="code" href="gc__spu__macs_8h.html#a3ac4cbddc5436038405dcbbfe3c96a9e">00221</a> <span class="preprocessor">#define HINT_RETURN(ret_label)          hbr     ret_label, lr;</span>
<a name="l00222"></a>00222 <span class="preprocessor"></span>
<a name="l00223"></a>00223 <span class="comment">// return if zero</span>
<a name="l00224"></a><a class="code" href="gc__spu__macs_8h.html#afb8dfec7a8068d81ee877c13e653716a">00224</a> <span class="preprocessor">#define BRZ_RETURN(rt)                  biz     rt, lr;</span>
<a name="l00225"></a>00225 <span class="preprocessor"></span>
<a name="l00226"></a>00226 <span class="comment">// return if not zero</span>
<a name="l00227"></a><a class="code" href="gc__spu__macs_8h.html#af1b57c049617b3696a5e4a4de7f1d43c">00227</a> <span class="preprocessor">#define BRNZ_RETURN(rt)                 binz    rt, lr;</span>
<a name="l00228"></a>00228 <span class="preprocessor"></span>
<a name="l00229"></a>00229 <span class="comment">// return if halfword zero</span>
<a name="l00230"></a><a class="code" href="gc__spu__macs_8h.html#a793e73a6d0709a0299f0c2c3af410398">00230</a> <span class="preprocessor">#define BRHZ_RETURN(rt)                 bihz    rt, lr;</span>
<a name="l00231"></a>00231 <span class="preprocessor"></span>
<a name="l00232"></a>00232 <span class="comment">// return if halfword not zero</span>
<a name="l00233"></a><a class="code" href="gc__spu__macs_8h.html#ab5e110d39a6fe62435a77dec925827a4">00233</a> <span class="preprocessor">#define BRHNZ_RETURN(rt)                bihnz   rt, lr;</span>
<a name="l00234"></a>00234 <span class="preprocessor"></span>
<a name="l00235"></a>00235 
<a name="l00236"></a>00236 <span class="comment">/*</span>
<a name="l00237"></a>00237 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00238"></a>00238 <span class="comment"> * modulo like things for constant moduli that are powers of 2</span>
<a name="l00239"></a>00239 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00240"></a>00240 <span class="comment"> */</span>
<a name="l00241"></a>00241 
<a name="l00242"></a>00242 <span class="comment">// rt = ra &amp; (pow2 - 1)</span>
<a name="l00243"></a><a class="code" href="gc__spu__macs_8h.html#ab6e74add9d5e9221c73a973c93be8198">00243</a> <span class="preprocessor">#define MODULO(rt, ra, pow2) \</span>
<a name="l00244"></a>00244 <span class="preprocessor">        andi    rt, ra, (pow2)-1;</span>
<a name="l00245"></a>00245 <span class="preprocessor"></span>
<a name="l00246"></a>00246 <span class="comment">// rt = pow2 - (ra &amp; (pow2 - 1))</span>
<a name="l00247"></a><a class="code" href="gc__spu__macs_8h.html#a302efba640e84aa393a6a9a028087d9f">00247</a> <span class="preprocessor">#define MODULO_NEG(rt, ra, pow2) \</span>
<a name="l00248"></a>00248 <span class="preprocessor">        andi    rt, ra, (pow2)-1;               \</span>
<a name="l00249"></a>00249 <span class="preprocessor">        sfi     rt, rt, (pow2);</span>
<a name="l00250"></a>00250 <span class="preprocessor"></span>
<a name="l00251"></a>00251 <span class="comment">// rt = ra &amp; -(pow2)</span>
<a name="l00252"></a><a class="code" href="gc__spu__macs_8h.html#a23f8509fd1442ad31ed46242cb592116">00252</a> <span class="preprocessor">#define ROUND_DOWN(rt, ra, pow2) \</span>
<a name="l00253"></a>00253 <span class="preprocessor">        andi    rt, ra, -(pow2);</span>
<a name="l00254"></a>00254 <span class="preprocessor"></span>
<a name="l00255"></a>00255 <span class="comment">// rt = (ra + (pow2 - 1)) &amp; -(pow2)</span>
<a name="l00256"></a><a class="code" href="gc__spu__macs_8h.html#a7b95efc86000d35543da94f1a8b07199">00256</a> <span class="preprocessor">#define ROUND_UP(rt, ra, pow2) \</span>
<a name="l00257"></a>00257 <span class="preprocessor">        ai      rt, ra, (pow2)-1;               \</span>
<a name="l00258"></a>00258 <span class="preprocessor">        andi    rt, rt, -(pow2);</span>
<a name="l00259"></a>00259 <span class="preprocessor"></span>
<a name="l00260"></a>00260 <span class="comment">/*</span>
<a name="l00261"></a>00261 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00262"></a>00262 <span class="comment"> * Splat - replicate a particular slot into all slots</span>
<a name="l00263"></a>00263 <span class="comment"> * Altivec analogs...</span>
<a name="l00264"></a>00264 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00265"></a>00265 <span class="comment"> */</span>
<a name="l00266"></a>00266 
<a name="l00267"></a>00267 <span class="comment">// replicate byte from slot s [0,15]</span>
<a name="l00268"></a><a class="code" href="gc__spu__macs_8h.html#a86a5bdfaecd0f1179af1d861e2618616">00268</a> <span class="preprocessor">#define VSPLTB(rt, ra, s) \</span>
<a name="l00269"></a>00269 <span class="preprocessor">        ilh     _gc_t0, (s)*0x0101;             \</span>
<a name="l00270"></a>00270 <span class="preprocessor">        shufb   rt, ra, ra, _gc_t0;</span>
<a name="l00271"></a>00271 <span class="preprocessor"></span>
<a name="l00272"></a>00272 <span class="comment">// replicate halfword from slot s [0,7]</span>
<a name="l00273"></a><a class="code" href="gc__spu__macs_8h.html#a733f79603702c70a2d0592b3b9e88ab5">00273</a> <span class="preprocessor">#define VSPLTH(rt, ra, s) \</span>
<a name="l00274"></a>00274 <span class="preprocessor">        ilh     _gc_t0, 2*(s)*0x0101 + 0x0001;  \</span>
<a name="l00275"></a>00275 <span class="preprocessor">        shufb   rt, ra, ra, _gc_t0;</span>
<a name="l00276"></a>00276 <span class="preprocessor"></span>
<a name="l00277"></a>00277 <span class="comment">// replicate word from slot s [0,3]</span>
<a name="l00278"></a><a class="code" href="gc__spu__macs_8h.html#a6eefb1b82fd514412cebd1190b3b12ae">00278</a> <span class="preprocessor">#define VSPLTW(rt, ra, s) \</span>
<a name="l00279"></a>00279 <span class="preprocessor">        iluh    _gc_t0, 4*(s)*0x0101 + 0x0001;  \</span>
<a name="l00280"></a>00280 <span class="preprocessor">        iohl    _gc_t0, 4*(s)*0x0101 + 0x0203;  \</span>
<a name="l00281"></a>00281 <span class="preprocessor">        shufb   rt, ra, ra, _gc_t0;</span>
<a name="l00282"></a>00282 <span class="preprocessor"></span>        
<a name="l00283"></a>00283 <span class="comment">// replicate double from slot s [0,1]</span>
<a name="l00284"></a><a class="code" href="gc__spu__macs_8h.html#a4503fff34746144188cc49e18ca37964">00284</a> <span class="preprocessor">#define VSPLTD(rt, ra, s) \</span>
<a name="l00285"></a>00285 <span class="preprocessor">        </span><span class="comment">/* sp is always 16-byte aligned */</span> \
<a name="l00286"></a>00286         cdd     _gc_t0, 8(sp);          <span class="comment">/* 0x10111213 14151617 00010203 04050607 */</span> \
<a name="l00287"></a>00287         rotqbyi rt, ra, ra, (s) &lt;&lt; 3;   <span class="comment">/* rotate double into preferred slot     */</span> \
<a name="l00288"></a>00288         shufb   rt, rt, rt, _gc_t0;
<a name="l00289"></a>00289 
<a name="l00290"></a>00290 <span class="comment">/*</span>
<a name="l00291"></a>00291 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00292"></a>00292 <span class="comment"> * lots of min/max variations...</span>
<a name="l00293"></a>00293 <span class="comment"> *</span>
<a name="l00294"></a>00294 <span class="comment"> * On a slot by slot basis, compute the min or max</span>
<a name="l00295"></a>00295 <span class="comment"> *</span>
<a name="l00296"></a>00296 <span class="comment"> * U - unsigned, else signed</span>
<a name="l00297"></a>00297 <span class="comment"> * B,H,{} - byte, halfword, word</span>
<a name="l00298"></a>00298 <span class="comment"> * F float</span>
<a name="l00299"></a>00299 <span class="comment"> * ----------------------------------------------------------------</span>
<a name="l00300"></a>00300 <span class="comment"> */</span>
<a name="l00301"></a>00301 
<a name="l00302"></a><a class="code" href="gc__spu__macs_8h.html#aeec770d283bbc898adf0b9cc13a07507">00302</a> <span class="preprocessor">#define MIN_SELB(rt, ra, rb, rc)        selb    rt, ra, rb, rc;</span>
<a name="l00303"></a><a class="code" href="gc__spu__macs_8h.html#a04be39b6c32397ec20ada1755ee6a6bf">00303</a> <span class="preprocessor"></span><span class="preprocessor">#define MAX_SELB(rt, ra, rb, rc)        selb    rt, rb, ra, rc;</span>
<a name="l00304"></a>00304 <span class="preprocessor"></span>        
<a name="l00305"></a>00305         <span class="comment">// words</span>
<a name="l00306"></a>00306 
<a name="l00307"></a><a class="code" href="gc__spu__macs_8h.html#a1a2d69dfede1bc3b178e33396e2a353a">00307</a> <span class="preprocessor">#define MIN(rt, ra, rb) \</span>
<a name="l00308"></a>00308 <span class="preprocessor">        cgt     _gc_t0, ra, rb; \</span>
<a name="l00309"></a>00309 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00310"></a>00310 <span class="preprocessor"></span>        
<a name="l00311"></a><a class="code" href="gc__spu__macs_8h.html#a61420b67e33273ce5db89b22f6f36e69">00311</a> <span class="preprocessor">#define MAX(rt, ra, rb) \</span>
<a name="l00312"></a>00312 <span class="preprocessor">        cgt     _gc_t0, ra, rb; \</span>
<a name="l00313"></a>00313 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00314"></a>00314 <span class="preprocessor"></span>
<a name="l00315"></a><a class="code" href="gc__spu__macs_8h.html#a0956da47402edd3f727764f120de2b35">00315</a> <span class="preprocessor">#define UMIN(rt, ra, rb) \</span>
<a name="l00316"></a>00316 <span class="preprocessor">        clgt    _gc_t0, ra, rb; \</span>
<a name="l00317"></a>00317 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00318"></a>00318 <span class="preprocessor"></span>        
<a name="l00319"></a><a class="code" href="gc__spu__macs_8h.html#a1abd0fa2baa9e3d87f43d76d82852abb">00319</a> <span class="preprocessor">#define UMAX(rt, ra, rb) \</span>
<a name="l00320"></a>00320 <span class="preprocessor">        clgt    _gc_t0, ra, rb; \</span>
<a name="l00321"></a>00321 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00322"></a>00322 <span class="preprocessor"></span>
<a name="l00323"></a>00323         <span class="comment">// bytes</span>
<a name="l00324"></a>00324         
<a name="l00325"></a><a class="code" href="gc__spu__macs_8h.html#a4706cfc99f6486119693400851ca16de">00325</a> <span class="preprocessor">#define MINB(rt, ra, rb) \</span>
<a name="l00326"></a>00326 <span class="preprocessor">        cgtb    _gc_t0, ra, rb; \</span>
<a name="l00327"></a>00327 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00328"></a>00328 <span class="preprocessor"></span>        
<a name="l00329"></a><a class="code" href="gc__spu__macs_8h.html#a573b692776e90f85f0ad48279794e004">00329</a> <span class="preprocessor">#define MAXB(rt, ra, rb) \</span>
<a name="l00330"></a>00330 <span class="preprocessor">        cgtb    _gc_t0, ra, rb; \</span>
<a name="l00331"></a>00331 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00332"></a>00332 <span class="preprocessor"></span>
<a name="l00333"></a><a class="code" href="gc__spu__macs_8h.html#a02d06b581c2ff3bcf83fcc1d605e5f72">00333</a> <span class="preprocessor">#define UMINB(rt, ra, rb) \</span>
<a name="l00334"></a>00334 <span class="preprocessor">        clgtb   _gc_t0, ra, rb; \</span>
<a name="l00335"></a>00335 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00336"></a>00336 <span class="preprocessor"></span>        
<a name="l00337"></a><a class="code" href="gc__spu__macs_8h.html#ac0048e3c49063db5412070caa03c2d66">00337</a> <span class="preprocessor">#define UMAXB(rt, ra, rb) \</span>
<a name="l00338"></a>00338 <span class="preprocessor">        clgtb   _gc_t0, ra, rb; \</span>
<a name="l00339"></a>00339 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00340"></a>00340 <span class="preprocessor"></span>
<a name="l00341"></a>00341         <span class="comment">// halfwords</span>
<a name="l00342"></a>00342         
<a name="l00343"></a><a class="code" href="gc__spu__macs_8h.html#ab12cf1c6de96ac907b6cd1b0a7681d5c">00343</a> <span class="preprocessor">#define MINH(rt, ra, rb) \</span>
<a name="l00344"></a>00344 <span class="preprocessor">        cgth    _gc_t0, ra, rb; \</span>
<a name="l00345"></a>00345 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00346"></a>00346 <span class="preprocessor"></span>        
<a name="l00347"></a><a class="code" href="gc__spu__macs_8h.html#a6a50798a9d6d43f31ccd0b6f69ce94bb">00347</a> <span class="preprocessor">#define MAXH(rt, ra, rb) \</span>
<a name="l00348"></a>00348 <span class="preprocessor">        cgth    _gc_t0, ra, rb; \</span>
<a name="l00349"></a>00349 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00350"></a>00350 <span class="preprocessor"></span>
<a name="l00351"></a><a class="code" href="gc__spu__macs_8h.html#a011b8a265124421b442902d3128f3077">00351</a> <span class="preprocessor">#define UMINH(rt, ra, rb) \</span>
<a name="l00352"></a>00352 <span class="preprocessor">        clgth   _gc_t0, ra, rb; \</span>
<a name="l00353"></a>00353 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00354"></a>00354 <span class="preprocessor"></span>        
<a name="l00355"></a><a class="code" href="gc__spu__macs_8h.html#a2284e99fa492c3fc911763b3f7dfd6bb">00355</a> <span class="preprocessor">#define UMAXH(rt, ra, rb) \</span>
<a name="l00356"></a>00356 <span class="preprocessor">        clgth   _gc_t0, ra, rb; \</span>
<a name="l00357"></a>00357 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00358"></a>00358 <span class="preprocessor"></span>
<a name="l00359"></a>00359         <span class="comment">// floats</span>
<a name="l00360"></a>00360         
<a name="l00361"></a><a class="code" href="gc__spu__macs_8h.html#a5a049b6dcf58fe44b34ce605f3eaca2b">00361</a> <span class="preprocessor">#define FMIN(rt, ra, rb) \</span>
<a name="l00362"></a>00362 <span class="preprocessor">        fcgt    _gc_t0, ra, rb; \</span>
<a name="l00363"></a>00363 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00364"></a>00364 <span class="preprocessor"></span>        
<a name="l00365"></a><a class="code" href="gc__spu__macs_8h.html#a7b421d0f1795f8ad600e46e88acc622c">00365</a> <span class="preprocessor">#define FMAX(rt, ra, rb) \</span>
<a name="l00366"></a>00366 <span class="preprocessor">        fcgt    _gc_t0, ra, rb; \</span>
<a name="l00367"></a>00367 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00368"></a>00368 <span class="preprocessor"></span>
<a name="l00369"></a>00369 <span class="comment">// Ignoring the sign, select the values with the minimum magnitude</span>
<a name="l00370"></a><a class="code" href="gc__spu__macs_8h.html#a7dd81f687f21a0ea73febf9858047643">00370</a> <span class="preprocessor">#define FMINMAG(rt, ra, rb) \</span>
<a name="l00371"></a>00371 <span class="preprocessor">        fcmgt   _gc_t0, ra, rb; \</span>
<a name="l00372"></a>00372 <span class="preprocessor">        MIN_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00373"></a>00373 <span class="preprocessor"></span>        
<a name="l00374"></a>00374 <span class="comment">// Ignoring the sign, select the values with the maximum magnitude</span>
<a name="l00375"></a><a class="code" href="gc__spu__macs_8h.html#a402f7cff81b427995f82f2d353cb966c">00375</a> <span class="preprocessor">#define FMAXMAG(rt, ra, rb) \</span>
<a name="l00376"></a>00376 <span class="preprocessor">        fcmgt   _gc_t0, ra, rb; \</span>
<a name="l00377"></a>00377 <span class="preprocessor">        MAX_SELB(rt, ra, rb, _gc_t0)</span>
<a name="l00378"></a>00378 <span class="preprocessor"></span>
<a name="l00379"></a>00379 
<a name="l00380"></a>00380 <span class="preprocessor">#endif </span><span class="comment">/* INCLUDED_GC_SPU_MACS_H */</span>
</pre></div></div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="gc__spu__macs_8h.html">gc_spu_macs.h</a>      </li>
      <li class="footer">Generated on Thu Feb 17 2011 for GNU Radio 3.2.2 C++ API by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
    </ul>
  </div>

</body>
</html>