reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1351 Value *Val = SI.getOperand(0); 1352 Value *Ptr = SI.getOperand(1); 1355 if (combineStoreToValueType(*this, SI)) 1356 return eraseInstFromFunction(SI); 1360 Ptr, DL.getPrefTypeAlignment(Val->getType()), DL, &SI, &AC, &DT)); 1361 const MaybeAlign StoreAlign = MaybeAlign(SI.getAlignment()); 1366 SI.setAlignment(KnownAlign); 1368 SI.setAlignment(EffectiveStoreAlign); 1371 if (unpackStoreToAggregate(*this, SI)) 1372 return eraseInstFromFunction(SI); 1374 if (removeBitcastsFromLoadStoreOnMinMax(*this, SI)) 1375 return eraseInstFromFunction(SI); 1378 if (Instruction *NewGEPI = replaceGEPIdxWithZero(*this, Ptr, SI)) { 1380 return &SI; 1385 if (!SI.isUnordered()) return nullptr; 1391 return eraseInstFromFunction(SI); 1395 return eraseInstFromFunction(SI); 1404 return eraseInstFromFunction(SI); 1409 BasicBlock::iterator BBI(SI); 1410 for (unsigned ScanInsts = 6; BBI != SI.getParent()->begin() && ScanInsts; 1424 SI.getOperand(1))) { 1438 assert(SI.isUnordered() && "can't eliminate ordering operation"); 1439 return eraseInstFromFunction(SI); 1454 if (canSimplifyNullStoreOrGEP(SI)) { 1456 SI.setOperand(0, UndefValue::get(Val->getType())); 1465 return eraseInstFromFunction(SI); 1470 BBI = SI.getIterator(); 1478 mergeStoreIntoSuccessor(SI);