Changeset 3924 in CLRX


Ignore:
Timestamp:
Mar 22, 2018, 8:10:10 PM (9 months ago)
Author:
matszpk
Message:

CLRadeonExtender: AsmRegAlloc?: Fixing testcase. Join curSSAIdMap from cachedRdata to current rdata curSSAIdMap.

Location:
CLRadeonExtender/trunk
Files:
2 edited

Legend:

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

    r3923 r3924  
    11911191                    const LastSSAIdMap& laterRdataLastSSAIdMap, bool loop)
    11921192{
    1193     //bool haveReturns = !dest.empty();
    1194     bool haveReturns = true;
    11951193    for (const auto& entry: src)
    11961194    {
     
    12251223        std::cout << std::endl;
    12261224    }
    1227     if (haveReturns)
    1228         // add not in src but in laterRdataCurSSAIdMap
    1229         for (const auto& entry: laterRdataCurSSAIdMap)
    1230         {
    1231             if (src.find(entry.first) != src.end())
    1232                 continue; // if processed from src
    1233            
    1234             auto res = dest.insert(entry); // find
    1235             if (res.second)
    1236                 continue; // added new
    1237             VectorSet<size_t>& destEntry = res.first->second;
    1238             // add new ways
    1239             for (size_t ssaId: entry.second)
    1240                 destEntry.insertValue(ssaId);
    1241             std::cout << "  entry (lrc): " << entry.first.regVar << ":" <<
    1242                     cxuint(entry.first.index) << ":";
    1243             for (size_t v: destEntry)
    1244                 std::cout << " " << v;
    1245             std::cout << std::endl;
    1246         }
    12471225    if (!loop) // do not if loop
    12481226        joinLastSSAIdMap(dest, laterRdataLastSSAIdMap);
     
    17191697                std::cout << "procret2: " << entry.blockIndex << std::endl;
    17201698                joinLastSSAIdMap(rdata.lastSSAIdMap, rdata.curSSAIdMap, *cachedRdata);
     1699                // join to curSSAIdMap to rdata curSSAIdMap
     1700                rdata.curSSAIdMap.insert(cachedRdata->curSSAIdMap.begin(),
     1701                            cachedRdata->curSSAIdMap.end());
    17211702               
    17221703                // join loopEnds
  • CLRadeonExtender/trunk/tests/amdasm/AsmRegAllocCase3.cpp

    r3923 r3924  
    593593                {
    594594                    { { "sa", 0 }, SSAInfo(0, SIZE_MAX, 1, SIZE_MAX, 0, true) },
    595                     { { "sa", 2 }, SSAInfo(2, 4, 4, 4, 1, true) },
     595                    { { "sa", 2 }, SSAInfo(3, 4, 4, 4, 1, true) },
    596596                    { { "sa", 3 }, SSAInfo(2, 4, 4, 4, 1, true) },
    597597                    { { "sa", 4 }, SSAInfo(1, 3, 3, 3, 1, true) },
Note: See TracChangeset for help on using the changeset viewer.