Changes between Version 14 and Version 15 of GcnInstrsVop2
- Timestamp:
- 12/03/15 00:00:16 (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GcnInstrsVop2
v14 v15 191 191 </ul> 192 192 <p>NOTE: OMOD modifier doesn't work if output denormals are allowed 193 (5 bit of MODE register for single precision or 7 bit for double precision).</p> 193 (5 bit of MODE register for single precision or 7 bit for double precision).<br /> 194 NOTE: OMOD and CLAMP modifier affects only for instruction that output is 195 floating point value.</p> 194 196 <p>Negation and absolute value can be combined: <code>-ABS(V0)</code>. Modifiers CLAMP and 195 197 OMOD (MUL:2, MUL:4 and DIV:2) can be given in random order.</p> … … 569 571 Opcode: VOP3A: 283 (0x11b) for GCN 1.0/1.1; 275 (0x113) for GCN 1.2<br /> 570 572 Syntax: V_AND_B32 VDST, SRC0, SRC1<br /> 571 Description: Do bitwise AND on SRC0 and SRC1, store result to VDST. 572 CLAMP and OMOD modifier doesn't affect on result.<br /> 573 Description: Do bitwise AND on SRC0 and SRC1, store result to VDST.<br /> 573 574 Operation:<br /> 574 575 <code>VDST = SRC0 & SRC1</code></p> … … 608 609 Syntax VOP3A: V_CNDMASK_B32 VDST, SRC0, SRC1, SSRC2(2)<br /> 609 610 Description: If bit for current lane of VCC or SDST is set then store SRC1 to VDST, 610 otherwise store SRC0 to VDST. CLAMP and OMOD modifier doesn't affect on result.<br />611 otherwise store SRC0 to VDST.<br /> 611 612 Operation:<br /> 612 613 <code>VDST = SSRC2&(1ULL<<LANEID) ? SRC1 : SRC0</code></p> … … 881 882 Description: Multiply 24-bit unsigned integer value from SRC0 by 24-bit unsigned value 882 883 from SRC1 and store higher 16-bit of the result to VDST. 883 Any modifier doesn't affect toresult.<br />884 Any modifier doesn't affect on result.<br /> 884 885 Operation:<br /> 885 886 <code>VDST = ((UINT64)(SRC0&0xffffff) * (UINT32)(SRC1&0xffffff)) >> 32</code></p> … … 889 890 Syntax: V_MUL_I32_I24 VDST, SRC0, SRC1<br /> 890 891 Description: Multiply 24-bit signed integer value from SRC0 by 24-bit signed value from SRC1 891 and store result to VDST. Any modifier doesn't affect toresult.<br />892 and store result to VDST. Any modifier doesn't affect on result.<br /> 892 893 Operation:<br /> 893 894 <code>INT32 V0 = (INT32)((SRC0&0x7fffff) | (SSRC0&0x800000 ? 0xff800000 : 0)) … … 899 900 Syntax: V_MUL_U32_U24 VDST, SRC0, SRC1<br /> 900 901 Description: Multiply 24-bit unsigned integer value from SRC0 by 24-bit unsigned value 901 from SRC1 and store result to VDST. Any modifier doesn't affect toresult.<br />902 from SRC1 and store result to VDST. Any modifier doesn't affect on result.<br /> 902 903 Operation:<br /> 903 904 <code>VDST = (UINT32)(SRC0&0xffffff) * (UINT32)(SRC1&0xffffff)</code></p>