Lines Matching refs:StoredVal
17 bool canCoerceMustAliasedValueToLoad(Value *StoredVal, Type *LoadTy, in canCoerceMustAliasedValueToLoad() argument
19 Type *StoredTy = StoredVal->getType(); in canCoerceMustAliasedValueToLoad()
47 if (auto *CI = dyn_cast<Constant>(StoredVal)) in canCoerceMustAliasedValueToLoad()
67 static T *coerceAvailableValueToLoadTypeHelper(T *StoredVal, Type *LoadedTy, in coerceAvailableValueToLoadTypeHelper() argument
70 assert(canCoerceMustAliasedValueToLoad(StoredVal, LoadedTy, DL) && in coerceAvailableValueToLoadTypeHelper()
72 if (auto *C = dyn_cast<Constant>(StoredVal)) in coerceAvailableValueToLoadTypeHelper()
73 StoredVal = ConstantFoldConstant(C, DL); in coerceAvailableValueToLoadTypeHelper()
76 Type *StoredValTy = StoredVal->getType(); in coerceAvailableValueToLoadTypeHelper()
85 StoredVal = Helper.CreateBitCast(StoredVal, LoadedTy); in coerceAvailableValueToLoadTypeHelper()
90 StoredVal = Helper.CreatePtrToInt(StoredVal, StoredValTy); in coerceAvailableValueToLoadTypeHelper()
98 StoredVal = Helper.CreateBitCast(StoredVal, TypeToCastTo); in coerceAvailableValueToLoadTypeHelper()
102 StoredVal = Helper.CreateIntToPtr(StoredVal, LoadedTy); in coerceAvailableValueToLoadTypeHelper()
105 if (auto *C = dyn_cast<ConstantExpr>(StoredVal)) in coerceAvailableValueToLoadTypeHelper()
106 StoredVal = ConstantFoldConstant(C, DL); in coerceAvailableValueToLoadTypeHelper()
108 return StoredVal; in coerceAvailableValueToLoadTypeHelper()
119 StoredVal = Helper.CreatePtrToInt(StoredVal, StoredValTy); in coerceAvailableValueToLoadTypeHelper()
125 StoredVal = Helper.CreateBitCast(StoredVal, StoredValTy); in coerceAvailableValueToLoadTypeHelper()
133 StoredVal = Helper.CreateLShr( in coerceAvailableValueToLoadTypeHelper()
134 StoredVal, ConstantInt::get(StoredVal->getType(), ShiftAmt)); in coerceAvailableValueToLoadTypeHelper()
139 StoredVal = Helper.CreateTruncOrBitCast(StoredVal, NewIntTy); in coerceAvailableValueToLoadTypeHelper()
144 StoredVal = Helper.CreateIntToPtr(StoredVal, LoadedTy); in coerceAvailableValueToLoadTypeHelper()
147 StoredVal = Helper.CreateBitCast(StoredVal, LoadedTy); in coerceAvailableValueToLoadTypeHelper()
150 if (auto *C = dyn_cast<Constant>(StoredVal)) in coerceAvailableValueToLoadTypeHelper()
151 StoredVal = ConstantFoldConstant(C, DL); in coerceAvailableValueToLoadTypeHelper()
153 return StoredVal; in coerceAvailableValueToLoadTypeHelper()
162 Value *coerceAvailableValueToLoadType(Value *StoredVal, Type *LoadedTy, in coerceAvailableValueToLoadType() argument
165 return coerceAvailableValueToLoadTypeHelper(StoredVal, LoadedTy, IRB, DL); in coerceAvailableValueToLoadType()
233 auto *StoredVal = DepSI->getValueOperand(); in analyzeLoadFromClobberingStore() local
236 if (isFirstClassAggregateOrScalableType(StoredVal->getType())) in analyzeLoadFromClobberingStore()
239 if (!canCoerceMustAliasedValueToLoad(StoredVal, LoadTy, DL)) in analyzeLoadFromClobberingStore()