Changes between Version 7 and Version 8 of GcnInstrsFlat


Ignore:
Timestamp:
11/25/17 10:00:28 (6 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GcnInstrsFlat

    v7 v8  
    1717<tbody>
    1818<tr>
     19<td>0-12</td>
     20<td>OFFSET</td>
     21<td>Byte offset (GCN 1.4)</td>
     22</tr>
     23<tr>
     24<td>13</td>
     25<td>LDS</td>
     26<td>transfer DATA to LDS and memory (GCN 1.4)</td>
     27</tr>
     28<tr>
     29<td>14-15</td>
     30<td>SEG</td>
     31<td>Memory segment (instrunction type) (GCN 1.4)</td>
     32</tr>
     33<tr>
    1934<td>16</td>
    2035<td>GLC</td>
     
    4762</tr>
    4863<tr>
     64<td>48-54</td>
     65<td>SADDR</td>
     66<td>Scalar SGPR offset (0x7f value disables it) (GCN 1.4)</td>
     67</tr>
     68<tr>
    4969<td>55</td>
    5070<td>TFE</td>
    51 <td>Texture Fail Enable ???</td>
     71<td>Texture Fail Enable ??? (GCN 1.1/1.2)</td>
     72</tr>
     73<tr>
     74<td>55</td>
     75<td>NV</td>
     76<td>Non-Volatile (GCN 1.4)</td>
    5277</tr>
    5378<tr>
     
    5580<td>VDST</td>
    5681<td>Vector destination register</td>
     82</tr>
     83</tbody>
     84</table>
     85<p>Instruction types:</p>
     86<table>
     87<thead>
     88<tr>
     89<th>SEG</th>
     90<th>Prefix</th>
     91<th>Description</th>
     92</tr>
     93</thead>
     94<tbody>
     95<tr>
     96<td>0</td>
     97<td>FLAT</td>
     98<td>FLAT instruction (global, private or scratch memory)</td>
     99</tr>
     100<tr>
     101<td>1</td>
     102<td>SCRATCH</td>
     103<td>SCRATCH instruction (only for scratch memory access)</td>
     104</tr>
     105<tr>
     106<td>2</td>
     107<td>GLOBAL</td>
     108<td>GLOBAL instruction (only for global memory access)</td>
    57109</tr>
    58110</tbody>
     
    60112<p>Instruction syntax: INSTRUCTION VDST, VADDR(2) [MODIFIERS]<br />
    61113Instruction syntax: INSTRUCTION VADDR(2), VDATA [MODIFIERS]</p>
    62 <p>Modifiers can be supplied in any order. Modifiers list: SLC, GLC, TFE.
    63 The TFE flag requires additional the VDATA register.</p>
     114<p>GLOBAL instruction syntax: INSTRUCTION VDST, VADDR(2), SADDR(2)|OFF [MODIFIERS]<br />
     115GLOBAL instruction syntax: INSTRUCTION VADDR(2), VDATA, SADDR(2)|OFF [MODIFIERS]<br />
     116SCRATCH instruction syntax: INSTRUCTION VDST, VADDR(2), SADDR|OFF [MODIFIERS]<br />
     117SCRATCH instruction syntax: INSTRUCTION VADDR(2), VDATA, SADDR|OFF [MODIFIERS]</p>
     118<p>Modifiers can be supplied in any order. Modifiers list: SLC, GLC, TFE,
     119LDS, NV, OFFSET:OFFSET. The TFE flag requires additional the VDATA register.
     120LDS, NV and OFFSET are available only in GCN 1.4 architecture.</p>
    64121<p>FLAT instruction can complete out of order with each other. This can be caused by different
    65122resources from/to that instruction can load/store. FLAT instruction increase VMCNT if access
    66123to main memory, or LKGMCNT if accesses to LDS.</p>
     124<p>OFFSET can be 13-bit signed for GLOBAL_* and SCRATCH_* instructions or
     12512-bit unsigned for FLAT_* instructions.</p>
    67126<h3>Instructions by opcode</h3>
    68127<p>List of the FLAT instructions by opcode (GCN 1.1/1.2):</p>