mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-30 16:17:05 +00:00 
			
		
		
		
	Revert 100158 in case it is causing some of the buildbot problems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100164 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
		| @@ -471,27 +471,22 @@ void SSAUpdater::RecordMatchingPHI(PHINode *PHI) { | |||||||
|   SmallVector<PHINode*, 20> WorkList; |   SmallVector<PHINode*, 20> WorkList; | ||||||
|   WorkList.push_back(PHI); |   WorkList.push_back(PHI); | ||||||
|  |  | ||||||
|   // Record this PHI. |  | ||||||
|   BasicBlock *BB = PHI->getParent(); |  | ||||||
|   AvailableVals[BB] = PHI; |  | ||||||
|   (*BBMap)[BB]->AvailableVal = PHI; |  | ||||||
|  |  | ||||||
|   while (!WorkList.empty()) { |   while (!WorkList.empty()) { | ||||||
|     PHI = WorkList.pop_back_val(); |     PHI = WorkList.pop_back_val(); | ||||||
|  |     BasicBlock *BB = PHI->getParent(); | ||||||
|  |     BBInfo *Info = (*BBMap)[BB]; | ||||||
|  |     if (!Info || Info->AvailableVal) | ||||||
|  |       return; | ||||||
|  |  | ||||||
|  |     // Record the PHI. | ||||||
|  |     AvailableVals[BB] = PHI; | ||||||
|  |     Info->AvailableVal = PHI; | ||||||
|  |  | ||||||
|     // Iterate through the PHI's incoming values. |     // Iterate through the PHI's incoming values. | ||||||
|     for (unsigned i = 0, e = PHI->getNumIncomingValues(); i != e; ++i) { |     for (unsigned i = 0, e = PHI->getNumIncomingValues(); i != e; ++i) { | ||||||
|       PHINode *IncomingPHIVal = dyn_cast<PHINode>(PHI->getIncomingValue(i)); |       PHINode *IncomingVal = dyn_cast<PHINode>(PHI->getIncomingValue(i)); | ||||||
|       if (!IncomingPHIVal) continue; |       if (!IncomingVal) continue; | ||||||
|       BB = IncomingPHIVal->getParent(); |       WorkList.push_back(IncomingVal); | ||||||
|       BBInfo *Info = (*BBMap)[BB]; |  | ||||||
|       if (!Info || Info->AvailableVal) |  | ||||||
|         continue; |  | ||||||
|  |  | ||||||
|       // Record the PHI and add it to the worklist. |  | ||||||
|       AvailableVals[BB] = IncomingPHIVal; |  | ||||||
|       Info->AvailableVal = IncomingPHIVal; |  | ||||||
|       WorkList.push_back(IncomingPHIVal); |  | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
| @@ -504,24 +499,21 @@ void SSAUpdater::ClearPHITags(PHINode *PHI) { | |||||||
|   SmallVector<PHINode*, 20> WorkList; |   SmallVector<PHINode*, 20> WorkList; | ||||||
|   WorkList.push_back(PHI); |   WorkList.push_back(PHI); | ||||||
|  |  | ||||||
|   // Clear the tag for this PHI. |  | ||||||
|   (*BBMap)[PHI->getParent()]->PHITag = 0; |  | ||||||
|  |  | ||||||
|   while (!WorkList.empty()) { |   while (!WorkList.empty()) { | ||||||
|     PHI = WorkList.pop_back_val(); |     PHI = WorkList.pop_back_val(); | ||||||
|  |     BasicBlock *BB = PHI->getParent(); | ||||||
|     // Iterate through the PHI's incoming values. |  | ||||||
|     for (unsigned i = 0, e = PHI->getNumIncomingValues(); i != e; ++i) { |  | ||||||
|       PHINode *IncomingPHIVal = dyn_cast<PHINode>(PHI->getIncomingValue(i)); |  | ||||||
|       if (!IncomingPHIVal) continue; |  | ||||||
|       BasicBlock *BB = IncomingPHIVal->getParent(); |  | ||||||
|     BBInfo *Info = (*BBMap)[BB]; |     BBInfo *Info = (*BBMap)[BB]; | ||||||
|     if (!Info || Info->AvailableVal || !Info->PHITag) |     if (!Info || Info->AvailableVal || !Info->PHITag) | ||||||
|       continue; |       continue; | ||||||
|  |  | ||||||
|       // Clear the tag and add the PHI to the worklist. |     // Clear the tag. | ||||||
|     Info->PHITag = 0; |     Info->PHITag = 0; | ||||||
|       WorkList.push_back(IncomingPHIVal); |  | ||||||
|  |     // Iterate through the PHI's incoming values. | ||||||
|  |     for (unsigned i = 0, e = PHI->getNumIncomingValues(); i != e; ++i) { | ||||||
|  |       PHINode *IncomingVal = dyn_cast<PHINode>(PHI->getIncomingValue(i)); | ||||||
|  |       if (!IncomingVal) continue; | ||||||
|  |       WorkList.push_back(IncomingVal); | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user