Changes between Version 3 and Version 4 of GcnInstrsVop3


Ignore:
Timestamp:
12/06/15 00:00:17 (8 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GcnInstrsVop3

    v3 v4  
    973973<code>VDST = (UINT32)(SRC0&amp;0xffffff) * (UINT32)(SRC1&amp;0xffffff) + SRC2</code></p>
    974974<h4>V_MIN3_F32</h4>
    975 <p>Opcode: 337 (0x151) for GCN 1.0/1.1; 465 (0x1d0) for GCN 1.2<br />
    976 Syntax: V_MIN3_B32 VDST, SRC0, SRC1, SRC2  </p>
     975<p>Opcode: 337 (0x151) for GCN 1.0/1.1; 465 (0x1d1) for GCN 1.2<br />
     976Syntax: V_MIN3_F32 VDST, SRC0, SRC1, SRC2<br />
     977Description: Choose smallest value from FP values SRC0, SRC1, SRC2, and store it to VDST.<br />
     978Operation:<br />
     979<code>VDST = MIN3(ASFLOAT(SRC0), ASFLOAT(SRC1), ASFLOAT(SRC2))</code></p>
     980<h4>V_MULLIT_F32</h4>
     981<p>Opcode: 336 (0x150) for GCN 1.0/1.1; 464 (0x1d0) for GCN 1.2<br />
     982Syntax: V_MULLIT_F32 VDST, SRC0, SRC1, SRC2<br />
     983Description: Multiply FP value SRC0 and FP value SRC1, and store it to VDST if FP value in
     984SRC2 is greater than zero, otherwise, store -MAX_FLOAT to VDST.
     985If one of value is 0.0 and previous condition is satisfied then always store
     9860.0 to VDST (do not apply IEEE rules for 0.0*x).<br />
     987Operation:<br />
     988<code>VDST = -MAX_FLOAT
     989if (ASFLOAT(SRC2) &gt; 0.0 &amp;&amp; !ISNAN(ASFLOAT(SRC2)))
     990{
     991    VDST = 0.0
     992    if (ASFLOAT(SRC0)!=0.0 &amp;&amp; ASFLOAT(SRC1)!=0.0)
     993        VDST = ASFLOAT(SRC0) * ASFLOAT(SRC1)
     994}</code></p>
    977995}}}