Lines Matching refs:constant

1051                                         llvm::Constant *constant);
1057 llvm::Constant *constant) { in constStructWithPadding() argument
1072 if (constant->isZeroValue()) in constStructWithPadding()
1075 CurOp = cast<llvm::Constant>(constant->getAggregateElement(i)); in constStructWithPadding()
1088 return constant; in constStructWithPadding()
1095 llvm::Constant *constant) { in constWithPadding() argument
1096 llvm::Type *OrigTy = constant->getType(); in constWithPadding()
1098 return constStructWithPadding(CGM, isPattern, STy, constant); in constWithPadding()
1103 return constant; in constWithPadding()
1105 bool ZeroInitializer = constant->isNullValue(); in constWithPadding()
1113 OpValue = constant->getAggregateElement(Op); in constWithPadding()
1120 return constant; in constWithPadding()
1127 return constant; in constWithPadding()
1192 llvm::Constant *constant, bool IsAutoInit) { in emitStoresForConstant() argument
1193 auto *Ty = constant->getType(); in emitStoresForConstant()
1201 auto *I = Builder.CreateStore(constant, Loc, isVolatile); in emitStoresForConstant()
1211 if (shouldUseBZeroPlusStoresToInitialize(constant, ConstantSize)) { in emitStoresForConstant()
1218 constant->isNullValue() || isa<llvm::UndefValue>(constant); in emitStoresForConstant()
1221 emitStoresForInitAfterBZero(CGM, constant, Loc, isVolatile, Builder, in emitStoresForConstant()
1229 shouldUseMemSetToInitialize(constant, ConstantSize, CGM.getDataLayout()); in emitStoresForConstant()
1255 for (unsigned i = 0; i != constant->getNumOperands(); i++) { in emitStoresForConstant()
1261 constant->getAggregateElement(i), IsAutoInit); in emitStoresForConstant()
1272 constant->getAggregateElement(i), IsAutoInit); in emitStoresForConstant()
1283 CGM, D, Builder, constant, Loc.getAlignment()), in emitStoresForConstant()
1293 llvm::Constant *constant = in emitStoresForZeroInit() local
1295 emitStoresForConstant(CGM, D, Loc, isVolatile, Builder, constant, in emitStoresForZeroInit()
1303 llvm::Constant *constant = constWithPadding( in emitStoresForPatternInit() local
1305 assert(!isa<llvm::UndefValue>(constant)); in emitStoresForPatternInit()
1306 emitStoresForConstant(CGM, D, Loc, isVolatile, Builder, constant, in emitStoresForPatternInit()
1310 static bool containsUndef(llvm::Constant *constant) { in containsUndef() argument
1311 auto *Ty = constant->getType(); in containsUndef()
1312 if (isa<llvm::UndefValue>(constant)) in containsUndef()
1315 for (llvm::Use &Op : constant->operands()) in containsUndef()
1322 llvm::Constant *constant) { in replaceUndef() argument
1323 auto *Ty = constant->getType(); in replaceUndef()
1324 if (isa<llvm::UndefValue>(constant)) in replaceUndef()
1327 return constant; in replaceUndef()
1328 if (!containsUndef(constant)) in replaceUndef()
1329 return constant; in replaceUndef()
1330 llvm::SmallVector<llvm::Constant *, 8> Values(constant->getNumOperands()); in replaceUndef()
1331 for (unsigned Op = 0, NumOp = constant->getNumOperands(); Op != NumOp; ++Op) { in replaceUndef()
1332 auto *OpValue = cast<llvm::Constant>(constant->getOperand(Op)); in replaceUndef()
1946 llvm::Constant *constant = nullptr; in EmitAutoVarInit() local
1950 constant = ConstantEmitter(*this).tryEmitAbstractForInitializer(D); in EmitAutoVarInit()
1951 if (constant && !constant->isZeroValue() && in EmitAutoVarInit()
1964 constant = constWithPadding(CGM, IsPattern::No, in EmitAutoVarInit()
1965 replaceUndef(CGM, isPattern, constant)); in EmitAutoVarInit()
1969 if (!constant) { in EmitAutoVarInit()
1980 return EmitStoreThroughLValue(RValue::get(constant), lv, true); in EmitAutoVarInit()
1984 type.isVolatileQualified(), Builder, constant, in EmitAutoVarInit()