class GlobalIFunc

Declaration

class GlobalIFunc : public GlobalIndirectSymbol { /* full declaration omitted */ };

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:32

Inherits from: GlobalIndirectSymbol

Member Variables

Inherited from GlobalValue:

protected ValueType
protected Linkage
protected Visibility
protected UnnamedAddrVal
protected DllStorageClass
protected ThreadLocal
protected HasLLVMReservedName
protected IsDSOLocal
protected HasPartition
protected IntID
protected Parent
protected static GlobalValueSubClassDataBits = 16

Inherited from Value:

protected SubclassOptionalData
protected NumUserOperands
protected IsUsedByMD
protected HasName
protected HasHungOffUses
protected HasDescriptor
public static MaxAlignmentExponent = 29
public static MaximumAlignment = 1U << MaxAlignmentExponent

Method Overview

  • public GlobalIFunc(const llvm::GlobalIFunc &)
  • public static bool classof(const llvm::Value * V)
  • public static llvm::GlobalIFunc * create(llvm::Type * Ty, unsigned int AddressSpace, llvm::GlobalValue::LinkageTypes Linkage, const llvm::Twine & Name, llvm::Constant * Resolver, llvm::Module * Parent)
  • public void eraseFromParent()
  • public const llvm::Constant * getResolver() const
  • public llvm::Constant * getResolver()
  • public void removeFromParent()
  • public void setResolver(llvm::Constant * Resolver)

Inherited from GlobalIndirectSymbol:

Inherited from GlobalValue:

Inherited from Constant:

Inherited from User:

Inherited from Value:

Methods

GlobalIFunc(const llvm::GlobalIFunc&)

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:40

Parameters

const llvm::GlobalIFunc&

static bool classof(const llvm::Value* V)

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:68

Parameters

const llvm::Value* V

static llvm::GlobalIFunc* create(
    llvm::Type* Ty,
    unsigned int AddressSpace,
    llvm::GlobalValue::LinkageTypes Linkage,
    const llvm::Twine& Name,
    llvm::Constant* Resolver,
    llvm::Module* Parent)

Description

If a parent module is specified, the ifunc is automatically inserted into the end of the specified module's ifunc list.

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:45

Parameters

llvm::Type* Ty
unsigned int AddressSpace
llvm::GlobalValue::LinkageTypes Linkage
const llvm::Twine& Name
llvm::Constant* Resolver
llvm::Module* Parent

void eraseFromParent()

Description

This method unlinks 'this' from the containing module and deletes it.

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:54

const llvm::Constant* getResolver() const

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:60

llvm::Constant* getResolver()

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:63

void removeFromParent()

Description

This method unlinks 'this' from the containing module, but does not delete it.

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:51

void setResolver(llvm::Constant* Resolver)

Description

These methods retrieve and set ifunc resolver function.

Declared at: llvm/include/llvm/IR/GlobalIFunc.h:57

Parameters

llvm::Constant* Resolver