reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/CodeGen/CGExprScalar.cpp
 2394     value = EmitLoadOfLValue(LV, E->getExprLoc());
 2395     input = value;
 2399     value = CGF.EmitToMemory(value, type);
 2399     value = CGF.EmitToMemory(value, type);
 2402     atomicPHI = Builder.CreatePHI(value->getType(), 2);
 2403     atomicPHI->addIncoming(value, startBB);
 2404     value = atomicPHI;
 2406     value = EmitLoadOfLValue(LV, E->getExprLoc());
 2407     input = value;
 2418     value = Builder.getTrue();
 2425       value = EmitIncDecConsiderOverflowBehavior(E, value, isInc);
 2425       value = EmitIncDecConsiderOverflowBehavior(E, value, isInc);
 2428       value =
 2429           EmitOverflowCheckedBinOp(createBinOpInfoFromIncDec(E, value, isInc));
 2431       llvm::Value *amt = llvm::ConstantInt::get(value->getType(), amount, true);
 2432       value = Builder.CreateAdd(value, amt, isInc ? "inc" : "dec");
 2432       value = Builder.CreateAdd(value, amt, isInc ? "inc" : "dec");
 2445         value = Builder.CreateGEP(value, numElts, "vla.inc");
 2445         value = Builder.CreateGEP(value, numElts, "vla.inc");
 2447         value = CGF.EmitCheckedInBoundsGEP(
 2448             value, numElts, /*SignedIndices=*/false, isSubtraction,
 2455       value = CGF.EmitCastToVoidPtr(value);
 2455       value = CGF.EmitCastToVoidPtr(value);
 2457         value = Builder.CreateGEP(value, amt, "incdec.funcptr");
 2457         value = Builder.CreateGEP(value, amt, "incdec.funcptr");
 2459         value = CGF.EmitCheckedInBoundsGEP(value, amt, /*SignedIndices=*/false,
 2459         value = CGF.EmitCheckedInBoundsGEP(value, amt, /*SignedIndices=*/false,
 2462       value = Builder.CreateBitCast(value, input->getType());
 2462       value = Builder.CreateBitCast(value, input->getType());
 2468         value = Builder.CreateGEP(value, amt, "incdec.ptr");
 2468         value = Builder.CreateGEP(value, amt, "incdec.ptr");
 2470         value = CGF.EmitCheckedInBoundsGEP(value, amt, /*SignedIndices=*/false,
 2470         value = CGF.EmitCheckedInBoundsGEP(value, amt, /*SignedIndices=*/false,
 2478       llvm::Value *amt = llvm::ConstantInt::get(value->getType(), amount);
 2480       value = Builder.CreateAdd(value, amt, isInc ? "inc" : "dec");
 2480       value = Builder.CreateAdd(value, amt, isInc ? "inc" : "dec");
 2482       value = Builder.CreateFAdd(
 2483                   value,
 2484                   llvm::ConstantFP::get(value->getType(), amount),
 2496         value = Builder.CreateCall(
 2501         value = Builder.CreateFPExt(input, CGF.CGM.FloatTy, "incdec.conv");
 2505     if (value->getType()->isFloatTy())
 2508     else if (value->getType()->isDoubleTy())
 2518       if (value->getType()->isFP128Ty())
 2520       else if (value->getType()->isHalfTy())
 2527     value = Builder.CreateFAdd(value, amt, isInc ? "inc" : "dec");
 2527     value = Builder.CreateFAdd(value, amt, isInc ? "inc" : "dec");
 2531         value = Builder.CreateCall(
 2534             value, "incdec.conv");
 2536         value = Builder.CreateFPTrunc(value, input->getType(), "incdec.conv");
 2536         value = Builder.CreateFPTrunc(value, input->getType(), "incdec.conv");
 2543     value = CGF.EmitCastToVoidPtr(value);
 2543     value = CGF.EmitCastToVoidPtr(value);
 2551       value = Builder.CreateGEP(value, sizeValue, "incdec.objptr");
 2551       value = Builder.CreateGEP(value, sizeValue, "incdec.objptr");
 2553       value = CGF.EmitCheckedInBoundsGEP(value, sizeValue,
 2553       value = CGF.EmitCheckedInBoundsGEP(value, sizeValue,
 2556     value = Builder.CreateBitCast(value, input->getType());
 2556     value = Builder.CreateBitCast(value, input->getType());
 2563         LV, RValue::get(atomicPHI), RValue::get(value), E->getExprLoc());
 2569     return isPre ? value : input;
 2574     CGF.EmitStoreThroughBitfieldLValue(RValue::get(value), LV, &value);
 2574     CGF.EmitStoreThroughBitfieldLValue(RValue::get(value), LV, &value);
 2576     CGF.EmitStoreThroughLValue(RValue::get(value), LV);
 2580   return isPre ? value : input;