Lines Matching defs:Origin

45 ///                           Origin tracking.
382 // Origin = OriginBase + Offset
1152 Value *Origin;
1156 : Shadow(S), Origin(O), OrigIns(I) {}
1221 Value *originToIntptr(IRBuilder<> &IRB, Value *Origin) {
1225 return Origin;
1227 Origin = IRB.CreateIntCast(Origin, MS.IntptrTy, /* isSigned */ false);
1228 return IRB.CreateOr(Origin, IRB.CreateShl(Origin, kOriginSize * 8));
1232 void paintOrigin(IRBuilder<> &IRB, Value *Origin, Value *OriginPtr,
1253 IRB.CreateAlignedStore(Origin, GEP, kMinOriginAlignment);
1262 Value *IntptrOrigin = originToIntptr(IRB, Origin);
1277 IRB.CreateAlignedStore(Origin, GEP, CurrentAlignment);
1282 void storeOrigin(IRBuilder<> &IRB, Value *Addr, Value *Shadow, Value *Origin,
1291 // Origin is not needed: value is initialized or const shadow is
1297 paintOrigin(IRB, updateOrigin(Origin, IRB), OriginPtr, StoreSize,
1311 CallBase *CB = IRB.CreateCall(Fn, {ConvertedShadow2, Addr, Origin});
1319 paintOrigin(IRBNew, updateOrigin(Origin, IRBNew), OriginPtr, StoreSize,
1363 void insertWarningFn(IRBuilder<> &IRB, Value *Origin) {
1364 if (!Origin)
1365 Origin = (Value *)IRB.getInt32(0);
1366 assert(Origin->getType()->isIntegerTy());
1371 if (Instruction *OI = dyn_cast_or_null<Instruction>(Origin)) {
1374 // Origin update with missing or the same debug location provides no
1381 Origin = updateOrigin(Origin, IRBOrigin);
1387 IRB.CreateCall(MS.WarningFn, Origin)->setCannotMerge();
1396 Value *Origin) {
1409 MS.TrackOrigins && Origin ? Origin : (Value *)IRB.getInt32(0)});
1419 insertWarningFn(IRB, Origin);
1445 insertWarningFn(IRB, ShadowData.Origin);
1455 materializeOneCheck(IRB, ConvertedShadow, ShadowData.Origin);
1725 /// Origin = (OriginBase + Offset) & ~3ULL
1886 /// Set Origin to be the origin value for V.
1887 void setOrigin(Value *V, Value *Origin) {
1891 LLVM_DEBUG(dbgs() << "ORIGIN: " << *V << " ==> " << *Origin << "\n");
1892 OriginMap[V] = Origin;
2074 Value *Origin = OriginMap[V];
2075 assert(Origin && "Missing origin");
2076 return Origin;
2088 void insertShadowCheck(Value *Shadow, Value *Origin, Instruction *OrigIns) {
2106 ShadowOriginAndInsertPoint(Shadow, Origin, OrigIns));
2115 Value *Shadow, *Origin;
2120 Origin = getOrigin(Val);
2125 Origin = dyn_cast_or_null<Instruction>(getOrigin(Val));
2127 insertShadowCheck(Shadow, Origin, OrigIns);
2446 Value *Origin = nullptr;
2468 if (!Origin) {
2469 Origin = OpOrigin;
2475 Origin = IRB.CreateSelect(Cond, OpOrigin, Origin);
2498 assert(Origin);
2499 MSV->setOrigin(I, Origin);
2507 assert(Origin);
2508 MSV->paintOrigin(IRB, Origin, OriginPtr, TS, kMinOriginAlignment);
3544 Value *Origin = MS.TrackOrigins ? IRB.CreateLoad(MS.OriginTy, OriginPtr)
3546 insertShadowCheck(Shadow, Origin, &I);
3734 Value *Origin = IRB.CreateSelect(NotNull, getOrigin(PassThru), PtrOrigin);
3736 setOrigin(&I, Origin);
5157 Value *Origin = MSV.getOrigin(A);
5159 MSV.paintOrigin(IRB, Origin, OriginBase, StoreSize,
5893 Value *Origin = MSV.getOrigin(A);
5895 MSV.paintOrigin(IRB, Origin, OriginBase, StoreSize,