forked from OSchip/llvm-project
Move Function::lookupIntrinsicID to a static method. NFC
llvm-svn: 237641
This commit is contained in:
parent
09e9079d5c
commit
2124113569
|
@ -109,10 +109,6 @@ private:
|
|||
Function(const Function&) = delete;
|
||||
void operator=(const Function&) = delete;
|
||||
|
||||
/// Do the actual lookup of an intrinsic ID when the query could not be
|
||||
/// answered from the cache.
|
||||
unsigned lookupIntrinsicID() const LLVM_READONLY;
|
||||
|
||||
/// Function ctor - If the (optional) Module argument is specified, the
|
||||
/// function is automatically inserted into the end of the function list for
|
||||
/// the module.
|
||||
|
|
|
@ -433,6 +433,19 @@ void Function::copyAttributesFrom(const GlobalValue *Src) {
|
|||
setPrologueData(nullptr);
|
||||
}
|
||||
|
||||
/// \brief This does the actual lookup of an intrinsic ID which
|
||||
/// matches the given function name.
|
||||
static Intrinsic::ID lookupIntrinsicID(const ValueName *ValName) {
|
||||
unsigned Len = ValName->getKeyLength();
|
||||
const char *Name = ValName->getKeyData();
|
||||
|
||||
#define GET_FUNCTION_RECOGNIZER
|
||||
#include "llvm/IR/Intrinsics.gen"
|
||||
#undef GET_FUNCTION_RECOGNIZER
|
||||
|
||||
return Intrinsic::not_intrinsic;
|
||||
}
|
||||
|
||||
/// getIntrinsicID - This method returns the ID number of the specified
|
||||
/// function, or Intrinsic::not_intrinsic if the function is not an
|
||||
/// intrinsic, or if the pointer is null. This value is always defined to be
|
||||
|
@ -449,27 +462,13 @@ unsigned Function::getIntrinsicID() const {
|
|||
LLVMContextImpl::IntrinsicIDCacheTy &IntrinsicIDCache =
|
||||
getContext().pImpl->IntrinsicIDCache;
|
||||
if (!IntrinsicIDCache.count(this)) {
|
||||
unsigned Id = lookupIntrinsicID();
|
||||
unsigned Id = lookupIntrinsicID(ValName);
|
||||
IntrinsicIDCache[this]=Id;
|
||||
return Id;
|
||||
}
|
||||
return IntrinsicIDCache[this];
|
||||
}
|
||||
|
||||
/// This private method does the actual lookup of an intrinsic ID when the query
|
||||
/// could not be answered from the cache.
|
||||
unsigned Function::lookupIntrinsicID() const {
|
||||
const ValueName *ValName = this->getValueName();
|
||||
unsigned Len = ValName->getKeyLength();
|
||||
const char *Name = ValName->getKeyData();
|
||||
|
||||
#define GET_FUNCTION_RECOGNIZER
|
||||
#include "llvm/IR/Intrinsics.gen"
|
||||
#undef GET_FUNCTION_RECOGNIZER
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/// Returns a stable mangling for the type specified for use in the name
|
||||
/// mangling scheme used by 'any' types in intrinsic signatures. The mangling
|
||||
/// of named types is simply their name. Manglings for unnamed types consist
|
||||
|
|
Loading…
Reference in New Issue