bool paramHasAttr(unsigned i, ParameterAttributes attr) const {
return ParamAttrs.paramHasAttr(i, attr);
}
+
+ /// addParamAttr - adds the attribute to the list of attributes.
+ void addParamAttr(unsigned i, ParameterAttributes attr);
/// @brief Extract the alignment for a call or parameter (0=unknown).
unsigned getParamAlignment(unsigned i) const {
/// @brief Determine if the function cannot return.
bool doesNotReturn() const { return paramHasAttr(0, ParamAttr::NoReturn); }
+ void setDoesNotThrow(bool doesNotThrow = true);
/// @brief Determine if the function cannot unwind.
bool doesNotThrow() const {
return paramHasAttr(1, ParamAttr::StructRet);
}
+ /// copyAttributesFrom - copy all additional attributes (those not needed to
+ /// create a Function) from the Function Src to this one.
+ void copyAttributesFrom(const GlobalValue *Src);
+
/// deleteBody - This method deletes the body of the function, and converts
/// the linkage to external.
///