class Operator

Declaration

class Operator : public User { /* full declaration omitted */ };

Description

This is a utility class that provides an abstraction for the common functionality between Instructions and ConstantExprs.

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

Inherits from: User

Member Variables

Inherited from Value:

protected SubclassOptionalData
protected NumUserOperands
protected IsUsedByMD
protected HasName
protected HasMetadata
protected HasHungOffUses
protected HasDescriptor
public static MaxAlignmentExponent = 32
public static MaximumAlignment = 1ULL << MaxAlignmentExponent

Method Overview

Inherited from User:

Inherited from Value:

Methods

Operator()

Declared at: llvm/include/llvm/IR/Operator.h:36

static bool classof(const llvm::Instruction*)

Declared at: llvm/include/llvm/IR/Operator.h:58

Parameters

const llvm::Instruction*

static bool classof(const llvm::ConstantExpr*)

Declared at: llvm/include/llvm/IR/Operator.h:59

Parameters

const llvm::ConstantExpr*

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

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

Parameters

const llvm::Value* V

unsigned int getOpcode() const

Description

Return the opcode for this Instruction or ConstantExpr.

Declared at: llvm/include/llvm/IR/Operator.h:42

static unsigned int getOpcode(
    const llvm::Value* V)

Description

If V is an Instruction or ConstantExpr, return its opcode. Otherwise return UserOp1.

Declared at: llvm/include/llvm/IR/Operator.h:50

Parameters

const llvm::Value* V

bool hasPoisonGeneratingFlags() const

Description

Return true if this operator has flags which may cause this operator to evaluate to poison despite having non-poison inputs.

Declared at: llvm/include/llvm/IR/Operator.h:66

~Operator()

Declared at: llvm/include/llvm/IR/Operator.h:37