Changes between Version 21 and Version 22 of GcnOperands
- Timestamp:
- 12/29/17 08:00:29 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GcnOperands
v21 v22 4 4 <h3>Operand encoding</h3> 5 5 <p>The GCN1.0/1.1 delivers maximum 104 registers (with VCC). Basic list of destination 6 scalar operands have 128 entries. Source operands codes is in range 0-255.</p>6 scalar operands have 128 entries. The source operands codes is in range 0-255.</p> 7 7 <p><strong>Important</strong>: Two SGPR's must be aligned to 2. Four or more SGPR's must be aligned to 4. 8 This rule do not apply to vector instruction where is more complex rule:9 SGPR's can be unaligned only if SGPR register range do not cross line (4 SGPR registers).</p>8 This rule do not apply to the vector instruction where is more complex rule: 9 SGPR's can be unaligned only if SGPR register range do not cross a line (4 SGPR registers).</p> 10 10 <p>Following list describes all operand codes values:</p> 11 11 <table> … … 296 296 </table> 297 297 <h3>Operand syntax</h3> 298 <p>Single operands can be given by their name: <code>s0</code>, <code>v54</code>. CLRX assemblers accepts syntax with 298 <p>THe Single operands can be given by their name: <code>s0</code>, <code>v54</code>. 299 CLRX assembler accepts the syntax with 299 300 brackets: <code>s[0]</code>, <code>s[z]</code>, <code>v[66]</code>. In many instructions operands are 300 301 64-bit, 96-bit or even 128-bit. These operands consists several registers that can be 301 302 expressed by ranges: <code>v[3:4]</code>, <code>s[8:11]</code>, <code>s[16:23]</code>, where second value is 302 303 last register's number.</p> 303 <p> Names of the registers are case-insensitive.</p>304 <p> Constant values are automatically resolved ifexpression have already value.304 <p>The names of the registers are case-insensitive.</p> 305 <p>The constant values are automatically resolved if an expression have already value. 305 306 The 1/(2*PI), 1.0, -2.0 and other floating point constant values will be 306 307 resolved if that accurate floating point value will be given.</p>