Changeset 3173 in CLRX


Ignore:
Timestamp:
Jun 17, 2017, 11:58:03 AM (2 years ago)
Author:
matszpk
Message:

CLRadeonExtender: CLRXDocs: Add descriptions of new instructions (V_SIN_F16, V_COS_F16) for GCN 1.2.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CLRadeonExtender/trunk/doc/GcnInstrsVop1.md

    r3172 r3173  
    301301Description: Clear wave's exception state in SIMD. 
    302302
     303#### V_COS_F16
     304
     305Opcode VOP1: 74 (0x4a) for GCN 1.2 
     306Opcode VOP3A: 394 (0x18a) for GCN 1.2 
     307Syntax: V_COS_F16 VDST, SRC0 
     308Description: Compute cosine of half FP value from SRC0.
     309Input value must be normalized to range 1.0 - 1.0 (-360 degree : 360 degree).
     310If SRC0 value is out of range then store 1.0 to VDST.
     311If SRC0 value is infinity, store -NAN to VDST. 
     312Operation: 
     313```
     314FLOAT SF = ASHALF(SRC0)
     315VDST = 1.0
     316if (SF >= -1.0 && SF <= 1.0)
     317    VDST = APPROX_COS(SF)
     318else if (ABS(SF)==INF_H)
     319    VDST = -NAN_H
     320else if (ISNAN(SF))
     321    VDST = SRC0
     322```
     323
    303324#### V_COS_F32
    304325
     
    12851306```
    12861307
     1308#### V_SIN_F16
     1309
     1310Opcode VOP1: 73 (0x49) for GCN 1.2 
     1311Opcode VOP3A: 393 (0x189) for GCN 1.2 
     1312Syntax: V_SIN_F16 VDST, SRC0 
     1313Description: Compute sine of half FP value from SRC0. Input value must be
     1314normalized to range 1.0 - 1.0 (-360 degree : 360 degree).
     1315If SRC0 value is out of range then store 0.0 to VDST.
     1316If SRC0 value is infinity, store -NAN to VDST. 
     1317Operation: 
     1318```
     1319HALF SF = ASHALF(SRC0)
     1320VDST = 0.0
     1321if (SF >= -1.0 && SF <= 1.0)
     1322    VDST = APPROX_SIN(SF)
     1323else if (ABS(SF)==INF_H)
     1324    VDST = -NAN_H
     1325else if (ISNAN(SF))
     1326    VDST = SRC0
     1327```
     1328
    12871329#### V_SIN_F32
    12881330
Note: See TracChangeset for help on using the changeset viewer.