Lines Matching refs:ConstantExpr

46 class CastConstantExpr final : public ConstantExpr {
49 : ConstantExpr(Ty, Opcode, &Op<0>(), 1) { in CastConstantExpr()
59 static bool classof(const ConstantExpr *CE) { in classof()
63 return isa<ConstantExpr>(V) && classof(cast<ConstantExpr>(V)); in classof()
69 class BinaryConstantExpr final : public ConstantExpr {
73 : ConstantExpr(C1->getType(), Opcode, &Op<0>(), 2) { in BinaryConstantExpr()
86 static bool classof(const ConstantExpr *CE) { in classof()
90 return isa<ConstantExpr>(V) && classof(cast<ConstantExpr>(V)); in classof()
97 class ExtractElementConstantExpr final : public ConstantExpr {
100 : ConstantExpr(cast<VectorType>(C1->getType())->getElementType(), in ExtractElementConstantExpr()
113 static bool classof(const ConstantExpr *CE) { in classof()
117 return isa<ConstantExpr>(V) && classof(cast<ConstantExpr>(V)); in classof()
124 class InsertElementConstantExpr final : public ConstantExpr {
127 : ConstantExpr(C1->getType(), Instruction::InsertElement, in InsertElementConstantExpr()
141 static bool classof(const ConstantExpr *CE) { in classof()
145 return isa<ConstantExpr>(V) && classof(cast<ConstantExpr>(V)); in classof()
152 class ShuffleVectorConstantExpr final : public ConstantExpr {
155 : ConstantExpr(VectorType::get( in ShuffleVectorConstantExpr()
177 static bool classof(const ConstantExpr *CE) { in classof()
181 return isa<ConstantExpr>(V) && classof(cast<ConstantExpr>(V)); in classof()
187 class GetElementPtrConstantExpr : public ConstantExpr {
214 static bool classof(const ConstantExpr *CE) { in classof()
218 return isa<ConstantExpr>(V) && classof(cast<ConstantExpr>(V)); in classof()
259 template <> struct ConstantInfo<ConstantExpr> {
385 static ArrayRef<int> getShuffleMaskIfValid(const ConstantExpr *CE) {
391 static Type *getSourceElementTypeIfValid(const ConstantExpr *CE) {
398 getInRangeIfValid(const ConstantExpr *CE) {
414 ConstantExprKeyType(ArrayRef<Constant *> Operands, const ConstantExpr *CE)
421 ConstantExprKeyType(const ConstantExpr *CE,
448 bool operator==(const ConstantExpr *CE) const {
474 using TypeClass = ConstantInfo<ConstantExpr>::TypeClass;
476 ConstantExpr *create(TypeClass *Ty) const {