trunc to bool no longer compares against zero
llvm-svn: 35712
This commit is contained in:
		
							parent
							
								
									e8829aa9dd
								
							
						
					
					
						commit
						6a36d636e9
					
				| 
						 | 
					@ -847,16 +847,11 @@ struct VISIBILITY_HIDDEN StrLenOptimization : public LibCallOptimization {
 | 
				
			||||||
static bool IsOnlyUsedInEqualsZeroComparison(Instruction *I) {
 | 
					static bool IsOnlyUsedInEqualsZeroComparison(Instruction *I) {
 | 
				
			||||||
  for (Value::use_iterator UI = I->use_begin(), E = I->use_end();
 | 
					  for (Value::use_iterator UI = I->use_begin(), E = I->use_end();
 | 
				
			||||||
       UI != E; ++UI) {
 | 
					       UI != E; ++UI) {
 | 
				
			||||||
    Instruction *User = cast<Instruction>(*UI);
 | 
					    if (ICmpInst *IC = dyn_cast<ICmpInst>(*UI))
 | 
				
			||||||
    if (ICmpInst *IC = dyn_cast<ICmpInst>(User)) {
 | 
					      if (IC->isEquality())
 | 
				
			||||||
      if ((IC->getPredicate() == ICmpInst::ICMP_NE ||
 | 
					        if (Constant *C = dyn_cast<Constant>(IC->getOperand(1)))
 | 
				
			||||||
           IC->getPredicate() == ICmpInst::ICMP_EQ) &&
 | 
					          if (C->isNullValue())
 | 
				
			||||||
          isa<Constant>(IC->getOperand(1)) &&
 | 
					            continue;
 | 
				
			||||||
          cast<Constant>(IC->getOperand(1))->isNullValue())
 | 
					 | 
				
			||||||
        continue;
 | 
					 | 
				
			||||||
    } else if (CastInst *CI = dyn_cast<CastInst>(User))
 | 
					 | 
				
			||||||
      if (CI->getType() == Type::Int1Ty)
 | 
					 | 
				
			||||||
        continue;
 | 
					 | 
				
			||||||
    // Unknown instruction.
 | 
					    // Unknown instruction.
 | 
				
			||||||
    return false;
 | 
					    return false;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue