Add comments to ConstantInt::get and ConstantFP::get to more fully

describe their behavior.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73454 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2009-06-16 01:02:32 +00:00
parent 44118f0e25
commit 079f858f03

View File

@ -102,13 +102,17 @@ public:
return CreateTrueFalseVals(false); return CreateTrueFalseVals(false);
} }
/// Return a ConstantInt with the specified value for the specified type. The /// Return a ConstantInt with the specified integer value for the specified
/// value V will be canonicalized to an unsigned APInt. Accessing it with /// type. If the type is wider than 64 bits, the value will be zero-extended
/// either getSExtValue() or getZExtValue() will yield a correctly sized and /// to fit the type, unless isSigned is true, in which case the value will
/// signed value for the type Ty. /// be interpreted as a 64-bit signed integer and sign-extended to fit
/// the type.
/// @brief Get a ConstantInt for a specific value. /// @brief Get a ConstantInt for a specific value.
static ConstantInt *get(const IntegerType *Ty, static ConstantInt *get(const IntegerType *Ty,
uint64_t V, bool isSigned = false); uint64_t V, bool isSigned = false);
/// If Ty is a vector type, return a Constant with a splat of the given
/// value. Otherwise return a ConstantInt for the given value.
static Constant *get(const Type *Ty, uint64_t V, bool isSigned = false); static Constant *get(const Type *Ty, uint64_t V, bool isSigned = false);
/// Return a ConstantInt with the specified value for the specified type. The /// Return a ConstantInt with the specified value for the specified type. The
@ -257,9 +261,10 @@ public:
/// get() - Static factory methods - Return objects of the specified value /// get() - Static factory methods - Return objects of the specified value
static ConstantFP *get(const APFloat &V); static ConstantFP *get(const APFloat &V);
/// get() - This returns a constant fp for the specified value in the /// get() - This returns a ConstantFP, or a vector containing a splat of a
/// specified type. This should only be used for simple constant values like /// ConstantFP, for the specified value in the specified type. This should
/// 2.0/1.0 etc, that are known-valid both as double and as the target format. /// only be used for simple constant values like 2.0/1.0 etc, that are
/// known-valid both as host double and as the target format.
static Constant *get(const Type *Ty, double V); static Constant *get(const Type *Ty, double V);
/// isValueValidForType - return true if Ty is big enough to represent V. /// isValueValidForType - return true if Ty is big enough to represent V.