Changeset 3870 in CLRX


Ignore:
Timestamp:
Mar 4, 2018, 8:31:29 AM (14 months ago)
Author:
matszpk
Message:

CLRadeonExtender: AsmRegAlloc?: Use createRoutineData to initialize routineDatas instead use stuff inside main traverse loop.

File:
1 edited

Legend:

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

    r3869 r3870  
    14261426        {
    14271427            // process current block
    1428             RoutineData* cachedRdata = subroutinesCache.use(entry.blockIndex);
    1429             if (cachedRdata != nullptr && flowStack.size() > 1)
     1428            //RoutineData* cachedRdata = subroutinesCache.use(entry.blockIndex);
     1429            if (/*cachedRdata != nullptr &&*/
     1430                visited[entry.blockIndex] && flowStack.size() > 1)
    14301431            {
    14311432                // TODO: correctly join this path with routine data
     
    16621663                    ssaId = totalSSACount;
    16631664                   
    1664                     if (!callStack.empty())
     1665                    /*if (!callStack.empty())
    16651666                        // put data to routine data
    16661667                        updateRoutineData(routineMap.find(
    1667                             callStack.back().routineBlock)->second, ssaEntry);
     1668                            callStack.back().routineBlock)->second, ssaEntry);*/
    16681669                       
    16691670                    // count read before writes (for cache weight)
     
    16781679                // TODO: correctly join this path with routine data
    16791680                // currently does not include further substitutions in visited path
    1680                 RoutineData* rdata = nullptr;
     1681                /*RoutineData* rdata = nullptr;
    16811682                if (!callStack.empty())
    16821683                    rdata = &(routineMap.find(callStack.back().routineBlock)->second);
     
    16871688                    joinLastSSAIdMap(rdata->lastSSAIdMap, rdata->curSSAIdMap);
    16881689                    std::cout << "procretend2" << std::endl;
    1689                 }
     1690                }*/
    16901691               
    16911692                // handle caching for res second point
     
    17171718        {
    17181719            std::cout << " ret: " << entry.blockIndex << std::endl;
    1719             const RoutineData& prevRdata =
     1720            RoutineData& prevRdata =
    17201721                    routineMap.find(callStack.back().routineBlock)->second;
    17211722            if (!isRoutineGen[callStack.back().routineBlock])
    17221723            {
    1723                 RoutineData myRoutineData;
     1724                //RoutineData myRoutineData;
    17241725                createRoutineData(codeBlocks, curSSAIdMap, cblocksToCache, subroutinesCache,
    1725                             routineMap, myRoutineData, callStack.back().routineBlock);
    1726                 prevRdata.compare(myRoutineData);
     1726                            routineMap, prevRdata, callStack.back().routineBlock);
     1727                //prevRdata.compare(myRoutineData);
    17271728                isRoutineGen[callStack.back().routineBlock] = true;
    17281729            }
     
    17741775                rdata = &(routineMap.find(callStack.back().routineBlock)->second);
    17751776           
    1776             if (cblock.haveReturn && rdata != nullptr)
     1777            /*if (cblock.haveReturn && rdata != nullptr)
    17771778            {
    17781779                std::cout << "procret: " << entry.blockIndex << std::endl;
    17791780                joinLastSSAIdMap(rdata->lastSSAIdMap, rdata->curSSAIdMap);
    17801781                std::cout << "procretend" << std::endl;
    1781             }
     1782            }*/
    17821783           
    17831784            // revert retSSAIdMap
     
    17981799                            nextSSAId << ", " << curSSAId << std::endl;
    17991800               
    1800                 if (rdata!=nullptr)
     1801                /*if (rdata!=nullptr)
    18011802                    updateRoutineCurSSAIdMap(rdata, ssaEntry, entry, curSSAId, nextSSAId);
     1803                */
    18021804            }
    18031805           
Note: See TracChangeset for help on using the changeset viewer.