class DemandedBits

Declaration

class DemandedBits { /* full declaration omitted */ };

Declared at: llvm/include/llvm/Analysis/DemandedBits.h:40

Method Overview

Methods

DemandedBits(llvm::Function& F,
             llvm::AssumptionCache& AC,
             llvm::DominatorTree& DT)

Declared at: llvm/include/llvm/Analysis/DemandedBits.h:42

Parameters

llvm::Function& F
llvm::AssumptionCache& AC
llvm::DominatorTree& DT

llvm::APInt getDemandedBits(llvm::Instruction* I)

Description

Return the bits demanded from instruction I. For vector instructions individual vector elements are not distinguished: A bit is demanded if it is demanded for any of the vector elements. The size of the return value corresponds to the type size in bits of the scalar type. Instructions that do not have integer or vector of integer type are accepted, but will always produce a mask with all bits set.

Declared at: llvm/include/llvm/Analysis/DemandedBits.h:54

Parameters

llvm::Instruction* I

bool isInstructionDead(llvm::Instruction* I)

Description

Return true if, during analysis, I could not be reached.

Declared at: llvm/include/llvm/Analysis/DemandedBits.h:57

Parameters

llvm::Instruction* I

bool isUseDead(llvm::Use* U)

Description

Return whether this use is dead by means of not having any demanded bits.

Declared at: llvm/include/llvm/Analysis/DemandedBits.h:60

Parameters

llvm::Use* U

void print(llvm::raw_ostream& OS)

Declared at: llvm/include/llvm/Analysis/DemandedBits.h:62

Parameters

llvm::raw_ostream& OS