Changeset 3866 in CLRX


Ignore:
Timestamp:
Mar 3, 2018, 7:16:13 AM (17 months ago)
Author:
matszpk
Message:

CLRadeonExtender: AsmRegAlloc?: Use ssaIdBefore to get previous ssaId instead of using prevSSAIds (and remove prevSSAIds).

File:
1 edited

Legend:

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

    r3865 r3866  
    611611    size_t nextIndex;
    612612    bool isCall;
    613     std::unordered_map<AsmSingleVReg, size_t> prevSSAIds;
    614613    RetSSAIdMap prevRetSSAIdSets;
    615614};
     
    15331532                        ssaId++;
    15341533                        totalSSACount++;
    1535                         entry.prevSSAIds.insert({ ssaEntry.first, ssaId });
    15361534                    }
    1537                     else if (ssaId != totalSSACount) // save old ssaId
    1538                         entry.prevSSAIds.insert({ ssaEntry.first, ssaId });
    15391535                   
    15401536                    sinfo.ssaId = totalSSACount;
     
    16701666                    continue;
    16711667               
    1672                 auto it = entry.prevSSAIds.find(ssaEntry.first);
    16731668                size_t& curSSAId = curSSAIdMap[ssaEntry.first];
    16741669                const size_t nextSSAId = curSSAId;
    1675                 if (it == entry.prevSSAIds.end())
    1676                     curSSAId -= ssaEntry.second.ssaIdChange;
    1677                 else // if found
    1678                     curSSAId = it->second;
     1670                curSSAId = ssaEntry.second.ssaIdBefore+1;
    16791671               
    16801672                std::cout << "popcurnext: " << ssaEntry.first.regVar <<
Note: See TracChangeset for help on using the changeset viewer.