@@ -4352,7 +4352,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4352
4352
Value *SizeVal = EmitScalarExpr (E->getArg (1 ));
4353
4353
EmitNonNullArgCheck (Dest, E->getArg (0 )->getType (),
4354
4354
E->getArg (0 )->getExprLoc (), FD, 0 );
4355
- Builder.CreateMemSet (Dest, Builder.getInt8 (0 ), SizeVal, false );
4355
+ auto *I = Builder.CreateMemSet (Dest, Builder.getInt8 (0 ), SizeVal, false );
4356
+ addInstToNewSourceAtom (I, nullptr );
4356
4357
return RValue::get (nullptr );
4357
4358
}
4358
4359
@@ -4367,7 +4368,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4367
4368
EmitNonNullArgCheck (RValue::get (Dest.emitRawPointer (*this )),
4368
4369
E->getArg (1 )->getType (), E->getArg (1 )->getExprLoc (), FD,
4369
4370
0 );
4370
- Builder.CreateMemMove (Dest, Src, SizeVal, false );
4371
+ auto *I = Builder.CreateMemMove (Dest, Src, SizeVal, false );
4372
+ addInstToNewSourceAtom (I, nullptr );
4371
4373
return RValue::get (nullptr );
4372
4374
}
4373
4375
@@ -4380,7 +4382,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4380
4382
Value *SizeVal = EmitScalarExpr (E->getArg (2 ));
4381
4383
EmitArgCheck (TCK_Store, Dest, E->getArg (0 ), 0 );
4382
4384
EmitArgCheck (TCK_Load, Src, E->getArg (1 ), 1 );
4383
- Builder.CreateMemCpy (Dest, Src, SizeVal, false );
4385
+ auto *I = Builder.CreateMemCpy (Dest, Src, SizeVal, false );
4386
+ addInstToNewSourceAtom (I, nullptr );
4384
4387
if (BuiltinID == Builtin::BImempcpy ||
4385
4388
BuiltinID == Builtin::BI__builtin_mempcpy)
4386
4389
return RValue::get (Builder.CreateInBoundsGEP (
@@ -4396,7 +4399,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4396
4399
E->getArg (2 )->EvaluateKnownConstInt (getContext ()).getZExtValue ();
4397
4400
EmitArgCheck (TCK_Store, Dest, E->getArg (0 ), 0 );
4398
4401
EmitArgCheck (TCK_Load, Src, E->getArg (1 ), 1 );
4399
- Builder.CreateMemCpyInline (Dest, Src, Size);
4402
+ auto *I = Builder.CreateMemCpyInline (Dest, Src, Size);
4403
+ addInstToNewSourceAtom (I, nullptr );
4400
4404
return RValue::get (nullptr );
4401
4405
}
4402
4406
@@ -4417,7 +4421,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4417
4421
Address Dest = EmitPointerWithAlignment (E->getArg (0 ));
4418
4422
Address Src = EmitPointerWithAlignment (E->getArg (1 ));
4419
4423
Value *SizeVal = llvm::ConstantInt::get (Builder.getContext (), Size);
4420
- Builder.CreateMemCpy (Dest, Src, SizeVal, false );
4424
+ auto *I = Builder.CreateMemCpy (Dest, Src, SizeVal, false );
4425
+ addInstToNewSourceAtom (I, nullptr );
4421
4426
return RValue::get (Dest, *this );
4422
4427
}
4423
4428
@@ -4443,7 +4448,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4443
4448
Address Dest = EmitPointerWithAlignment (E->getArg (0 ));
4444
4449
Address Src = EmitPointerWithAlignment (E->getArg (1 ));
4445
4450
Value *SizeVal = llvm::ConstantInt::get (Builder.getContext (), Size);
4446
- Builder.CreateMemMove (Dest, Src, SizeVal, false );
4451
+ auto *I = Builder.CreateMemMove (Dest, Src, SizeVal, false );
4452
+ addInstToNewSourceAtom (I, nullptr );
4447
4453
return RValue::get (Dest, *this );
4448
4454
}
4449
4455
@@ -4455,7 +4461,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4455
4461
Value *SizeVal = EmitScalarExpr (E->getArg (2 ));
4456
4462
EmitArgCheck (TCK_Store, Dest, E->getArg (0 ), 0 );
4457
4463
EmitArgCheck (TCK_Load, Src, E->getArg (1 ), 1 );
4458
- Builder.CreateMemMove (Dest, Src, SizeVal, false );
4464
+ auto *I = Builder.CreateMemMove (Dest, Src, SizeVal, false );
4465
+ addInstToNewSourceAtom (I, nullptr );
4459
4466
return RValue::get (Dest, *this );
4460
4467
}
4461
4468
case Builtin::BImemset:
@@ -4466,7 +4473,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4466
4473
Value *SizeVal = EmitScalarExpr (E->getArg (2 ));
4467
4474
EmitNonNullArgCheck (Dest, E->getArg (0 )->getType (),
4468
4475
E->getArg (0 )->getExprLoc (), FD, 0 );
4469
- Builder.CreateMemSet (Dest, ByteVal, SizeVal, false );
4476
+ auto *I = Builder.CreateMemSet (Dest, ByteVal, SizeVal, false );
4477
+ addInstToNewSourceAtom (I, nullptr );
4470
4478
return RValue::get (Dest, *this );
4471
4479
}
4472
4480
case Builtin::BI__builtin_memset_inline: {
@@ -4478,7 +4486,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4478
4486
EmitNonNullArgCheck (RValue::get (Dest.emitRawPointer (*this )),
4479
4487
E->getArg (0 )->getType (), E->getArg (0 )->getExprLoc (), FD,
4480
4488
0 );
4481
- Builder.CreateMemSetInline (Dest, ByteVal, Size);
4489
+ auto *I = Builder.CreateMemSetInline (Dest, ByteVal, Size);
4490
+ addInstToNewSourceAtom (I, nullptr );
4482
4491
return RValue::get (nullptr );
4483
4492
}
4484
4493
case Builtin::BI__builtin___memset_chk: {
@@ -4495,7 +4504,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
4495
4504
Value *ByteVal = Builder.CreateTrunc (EmitScalarExpr (E->getArg (1 )),
4496
4505
Builder.getInt8Ty ());
4497
4506
Value *SizeVal = llvm::ConstantInt::get (Builder.getContext (), Size);
4498
- Builder.CreateMemSet (Dest, ByteVal, SizeVal, false );
4507
+ auto *I = Builder.CreateMemSet (Dest, ByteVal, SizeVal, false );
4508
+ addInstToNewSourceAtom (I, nullptr );
4499
4509
return RValue::get (Dest, *this );
4500
4510
}
4501
4511
case Builtin::BI__builtin_wmemchr: {
0 commit comments