Lines Matching refs:Cst

233 static LLVMValueRef clone_constant_impl(LLVMValueRef Cst, LLVMModuleRef M);
235 static LLVMValueRef clone_constant(LLVMValueRef Cst, LLVMModuleRef M) { in clone_constant() argument
236 LLVMValueRef Ret = clone_constant_impl(Cst, M); in clone_constant()
237 check_value_kind(Ret, LLVMGetValueKind(Cst)); in clone_constant()
241 static LLVMValueRef clone_constant_impl(LLVMValueRef Cst, LLVMModuleRef M) { in clone_constant_impl() argument
242 if (!LLVMIsAConstant(Cst)) in clone_constant_impl()
246 if (LLVMIsAGlobalValue(Cst)) { in clone_constant_impl()
248 const char *Name = LLVMGetValueName2(Cst, &NameLen); in clone_constant_impl()
251 if (LLVMIsAFunction(Cst)) { in clone_constant_impl()
252 check_value_kind(Cst, LLVMFunctionValueKind); in clone_constant_impl()
256 unsigned ID = LLVMGetIntrinsicID(Cst); in clone_constant_impl()
270 if (LLVMIsAGlobalVariable(Cst)) { in clone_constant_impl()
271 check_value_kind(Cst, LLVMGlobalVariableValueKind); in clone_constant_impl()
279 if (LLVMIsAGlobalAlias(Cst)) { in clone_constant_impl()
280 check_value_kind(Cst, LLVMGlobalAliasValueKind); in clone_constant_impl()
292 if (LLVMIsAConstantInt(Cst)) { in clone_constant_impl()
293 check_value_kind(Cst, LLVMConstantIntValueKind); in clone_constant_impl()
294 return LLVMConstInt(TypeCloner(M).Clone(Cst), in clone_constant_impl()
295 LLVMConstIntGetZExtValue(Cst), false); in clone_constant_impl()
299 if (LLVMIsAConstantAggregateZero(Cst)) { in clone_constant_impl()
300 check_value_kind(Cst, LLVMConstantAggregateZeroValueKind); in clone_constant_impl()
301 return LLVMConstNull(TypeCloner(M).Clone(Cst)); in clone_constant_impl()
305 if (LLVMIsAConstantArray(Cst) || LLVMIsAConstantDataArray(Cst)) { in clone_constant_impl()
306 check_value_kind(Cst, LLVMIsAConstantArray(Cst) in clone_constant_impl()
309 LLVMTypeRef Ty = TypeCloner(M).Clone(Cst); in clone_constant_impl()
313 Elts.push_back(clone_constant(LLVMGetAggregateElement(Cst, i), M)); in clone_constant_impl()
318 if (LLVMIsAConstantStruct(Cst)) { in clone_constant_impl()
319 check_value_kind(Cst, LLVMConstantStructValueKind); in clone_constant_impl()
320 LLVMTypeRef Ty = TypeCloner(M).Clone(Cst); in clone_constant_impl()
324 Elts.push_back(clone_constant(LLVMGetOperand(Cst, i), M)); in clone_constant_impl()
332 if (LLVMIsAConstantPointerNull(Cst)) { in clone_constant_impl()
333 check_value_kind(Cst, LLVMConstantPointerNullValueKind); in clone_constant_impl()
334 LLVMTypeRef Ty = TypeCloner(M).Clone(Cst); in clone_constant_impl()
339 if (LLVMIsUndef(Cst)) { in clone_constant_impl()
340 check_value_kind(Cst, LLVMUndefValueValueKind); in clone_constant_impl()
341 return LLVMGetUndef(TypeCloner(M).Clone(Cst)); in clone_constant_impl()
345 if (LLVMIsPoison(Cst)) { in clone_constant_impl()
346 check_value_kind(Cst, LLVMPoisonValueValueKind); in clone_constant_impl()
347 return LLVMGetPoison(TypeCloner(M).Clone(Cst)); in clone_constant_impl()
351 if (LLVMIsNull(Cst)) { in clone_constant_impl()
352 check_value_kind(Cst, LLVMConstantTokenNoneValueKind); in clone_constant_impl()
353 LLVMTypeRef Ty = TypeCloner(M).Clone(Cst); in clone_constant_impl()
358 if (LLVMIsAConstantFP(Cst)) { in clone_constant_impl()
359 check_value_kind(Cst, LLVMConstantFPValueKind); in clone_constant_impl()
364 if (LLVMIsAConstantVector(Cst) || LLVMIsAConstantDataVector(Cst)) { in clone_constant_impl()
365 check_value_kind(Cst, LLVMIsAConstantVector(Cst) in clone_constant_impl()
368 LLVMTypeRef Ty = TypeCloner(M).Clone(Cst); in clone_constant_impl()
372 Elts.push_back(clone_constant(LLVMGetAggregateElement(Cst, i), M)); in clone_constant_impl()
378 if (!LLVMIsAConstantExpr(Cst)) in clone_constant_impl()
382 check_value_kind(Cst, LLVMConstantExprValueKind); in clone_constant_impl()
384 LLVMOpcode Op = LLVMGetConstOpcode(Cst); in clone_constant_impl()
387 return LLVMConstBitCast(clone_constant(LLVMGetOperand(Cst, 0), M), in clone_constant_impl()
388 TypeCloner(M).Clone(Cst)); in clone_constant_impl()
391 TypeCloner(M).Clone(LLVMGetGEPSourceElementType(Cst)); in clone_constant_impl()
392 LLVMValueRef Ptr = clone_constant(LLVMGetOperand(Cst, 0), M); in clone_constant_impl()
393 int NumIdx = LLVMGetNumIndices(Cst); in clone_constant_impl()
396 Idx.push_back(clone_constant(LLVMGetOperand(Cst, i), M)); in clone_constant_impl()
397 if (LLVMIsInBounds(Cst)) in clone_constant_impl()