15 #ifndef LLVM_TRANSFORMS_UTILS_VALUEMAPPER_H
16 #define LLVM_TRANSFORMS_UTILS_VALUEMAPPER_H
28 virtual void anchor();
40 virtual void anchor();
66 return RemapFlags(
unsigned(LHS)|
unsigned(RHS));
71 ValueMapTypeRemapper *TypeMapper = 0,
72 ValueMaterializer *Materializer = 0);
76 ValueMapTypeRemapper *TypeMapper = 0,
77 ValueMaterializer *Materializer = 0);
virtual ~ValueMaterializer()
MDNode - a tuple of other values.
virtual ~ValueMapTypeRemapper()
void RemapInstruction(Instruction *I, ValueToValueMapTy &VM, RemapFlags Flags=RF_None, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
Value * MapValue(const Value *V, ValueToValueMapTy &VM, RemapFlags Flags=RF_None, ValueMapTypeRemapper *TypeMapper=0, ValueMaterializer *Materializer=0)
SmallBitVector operator|(const SmallBitVector &LHS, const SmallBitVector &RHS)
LLVM Constant Representation.
ValueMap< const Value *, WeakVH > ValueToValueMapTy
virtual Value * materializeValueFor(Value *V)=0
RemapFlags
RemapFlags - These are flags that the value mapping APIs allow.
LLVM Value Representation.
virtual Type * remapType(Type *SrcTy)=0