Changeset 3597 in CLRX


Ignore:
Timestamp:
Jan 9, 2018, 3:29:16 PM (8 months ago)
Author:
matszpk
Message:

CLRadeonExtender: AsmRegAlloc?: Update createSSAData testcase.

Location:
CLRadeonExtender/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • CLRadeonExtender/trunk/amdasm/AsmRegAlloc.cpp

    r3596 r3597  
    716716                    sinfo.firstPos = rvu.offset;
    717717                if ((rvu.rwFlags & ASMRVU_READ) != 0 && (sinfo.ssaIdChange == 0 ||
     718                    // if first write RVU instead read RVU
    718719                    (sinfo.ssaIdChange == 1 && sinfo.firstPos==rvu.offset)))
    719720                    sinfo.readBeforeWrite = true;
     721                /* change SSA id only for write-only regvars -
     722                 *   read-write place can not have two different variables */
    720723                if (rvu.rwFlags == ASMRVU_WRITE && rvu.regField!=ASMFIELD_NONE)
    721724                    sinfo.ssaIdChange++;
  • CLRadeonExtender/trunk/tests/amdasm/AsmRegAlloc.cpp

    r3596 r3597  
    10961096        s_xor_b32 sa[2], sa[1], sa[3]
    10971097       
    1098         .cf_jump b1, b2, b3
     1098        .cf_jump b1, b2
    10991099        s_setpc_b64 s[4:5]
    11001100       
     
    11111111        .cf_jump b11, b12
    11121112        s_setpc_b64 s[6:7]
    1113 b2:     v_nop
    1114         s_endpgm
    1115 b3:     v_nop
    1116         s_endpgm
    1117        
    1118         # block 4, offset - xx
     1113       
     1114        # block 2, offset - 176
     1115b2:     v_mul_lo_u32 va[1], va[1], va[4]
     1116        v_mul_lo_u32 va[2], sa[1], va[1]
     1117        v_mov_b32 va[3], 2343
     1118.rept 3
     1119        v_mul_lo_u32 va[3], sa[1], va[3]
     1120        v_mul_lo_u32 va[1], sa[0], va[4]
     1121        v_mul_lo_u32 va[2], sa[2], va[1]
     1122.endr
     1123.rept 4
     1124        v_mul_lo_u32 va[1], sa[0], va[4]
     1125.endr
     1126.rept 2
     1127        v_mul_lo_u32 va[2], v1, v4
     1128.endr
     1129        v_and_b32 v3, v3, v2
     1130        s_endpgm
     1131       
     1132        # block 2, offset - xx
    11191133b11:    v_mov_b32 va[0], 122
    11201134        v_mov_b32 va[1], 122
     
    11291143        s_endpgm
    11301144       
    1131         # block 5, offset - xx
     1145        # block 3, offset - xx
    11321146b12:    v_mov_b32 va[4], 122
    11331147        v_xor_b32 va[1], 112, va[1]
     
    11441158        {
    11451159            { 0, 124,
    1146                 { { 1, false }, { 2, false }, { 3, false } },
     1160                { { 1, false }, { 2, false } },
    11471161                {
    11481162                    { { "", 0 }, SSAInfo(0, 0, 0, 0, 0, false) },
     
    11601174                    { { "sa", 3 }, SSAInfo(0, 1, 1, 5, 5, false) }
    11611175                }, false, false, true },
     1176            // block 1
    11621177            { 124, 176,
    1163                 { { 4, false }, { 5, false } },
     1178                { { 3, false }, { 4, false } },
    11641179                {
    11651180                    { { "", 1 }, SSAInfo(0, 0, 0, 0, 0, true) },
     
    11751190                    { { "sa", 6 }, SSAInfo(0, 1, 1, 4, 4, false) }
    11761191                }, false, false, true },
    1177             { 176, 184,
     1192            // block 2
     1193            { 176, 328,
    11781194                { },
    1179                 { }, false, false, true },
    1180             { 184, 192,
    1181                 { },
    1182                 { }, false, false, true },
    1183             // block 4
    1184             { 192, 276,
     1195                {
     1196                    { { "", 256+1 }, SSAInfo(0, 0, 0, 0, 0, true) },
     1197                    { { "", 256+2 }, SSAInfo(0, 0, 0, 0, 0, true) },
     1198                    { { "", 256+3 }, SSAInfo(0, 0, 0, 0, 0, true) },
     1199                    { { "", 256+4 }, SSAInfo(0, 0, 0, 0, 0, true) },
     1200                    { { "sa", 0 }, SSAInfo(5, SIZE_MAX, 9, SIZE_MAX, 0, true) },
     1201                    { { "sa", 1 }, SSAInfo(6, SIZE_MAX, 9, SIZE_MAX, 0, true) },
     1202                    { { "sa", 2 }, SSAInfo(7, SIZE_MAX, 8, SIZE_MAX, 0, true) },
     1203                    { { "va", 1 }, SSAInfo(0, 13, 13, 20, 8, true) },
     1204                    { { "va", 2 }, SSAInfo(0, 6, 6, 11, 6, false) },
     1205                    { { "va", 3 }, SSAInfo(0, 1, 1, 4, 4, false) },
     1206                    { { "va", 4 }, SSAInfo(0, SIZE_MAX, 8, SIZE_MAX, 0, true) },
     1207                }, false, false, true },
     1208            // block 3
     1209            { 328, 412,
    11851210                { },
    11861211                {
     
    11951220                    { { "va", 2 }, SSAInfo(0, 1, 1, 5, 5, false) }
    11961221                }, false, false, true },
    1197             // block 5
    1198             { 276, 368,
     1222            // block 4
     1223            { 412, 504,
    11991224                { },
    12001225                {
     
    12081233                    { { "va", 1 }, SSAInfo(0, 7, 7, 12, 6, true) },
    12091234                    { { "va", 4 }, SSAInfo(0, 1, 1, 7, 7, false) }
    1210                 }, false, false, true },
     1235                }, false, false, true }
    12111236        },
    12121237        { },
Note: See TracChangeset for help on using the changeset viewer.