#include ">

LLVM: lib/Analysis/DemandedBits.cpp File Reference (original) (raw)

#include "[llvm/Analysis/DemandedBits.h](DemandedBits%5F8h%5Fsource.html)"
#include "[llvm/ADT/APInt.h](APInt%5F8h%5Fsource.html)"
#include "[llvm/ADT/SetVector.h](SetVector%5F8h%5Fsource.html)"
#include "[llvm/Analysis/AssumptionCache.h](AssumptionCache%5F8h%5Fsource.html)"
#include "[llvm/Analysis/ValueTracking.h](ValueTracking%5F8h%5Fsource.html)"
#include "[llvm/IR/DataLayout.h](DataLayout%5F8h%5Fsource.html)"
#include "[llvm/IR/Dominators.h](Dominators%5F8h%5Fsource.html)"
#include "[llvm/IR/InstIterator.h](InstIterator%5F8h%5Fsource.html)"
#include "[llvm/IR/Instruction.h](IR%5F2Instruction%5F8h%5Fsource.html)"
#include "[llvm/IR/IntrinsicInst.h](IR%5F2IntrinsicInst%5F8h%5Fsource.html)"
#include "[llvm/IR/Operator.h](IR%5F2Operator%5F8h%5Fsource.html)"
#include "[llvm/IR/PassManager.h](IR%5F2PassManager%5F8h%5Fsource.html)"
#include "[llvm/IR/PatternMatch.h](PatternMatch%5F8h%5Fsource.html)"
#include "[llvm/IR/Type.h](IR%5F2Type%5F8h%5Fsource.html)"
#include "[llvm/IR/Use.h](IR%5F2Use%5F8h%5Fsource.html)"
#include "[llvm/Support/Casting.h](Casting%5F8h%5Fsource.html)"
#include "[llvm/Support/Debug.h](Support%5F2Debug%5F8h%5Fsource.html)"
#include "[llvm/Support/KnownBits.h](KnownBits%5F8h%5Fsource.html)"
#include "[llvm/Support/raw_ostream.h](raw%5F%5Fostream%5F8h%5Fsource.html)"
#include <algorithm>
#include <cstdint>

Go to the source code of this file.

Macros
#define DEBUG_TYPE "demanded-bits"
Functions
static bool isAlwaysLive (Instruction *I)
static APInt determineLiveOperandBitsAddCarry (unsigned OperandNo, const APInt &AOut, const KnownBits &LHS, const KnownBits &RHS, bool CarryZero, bool CarryOne)

Macro Definition Documentation

DEBUG_TYPE

#define DEBUG_TYPE "demanded-bits"

Definition at line 46 of file DemandedBits.cpp.

Function Documentation

determineLiveOperandBitsAddCarry()

APInt determineLiveOperandBitsAddCarry ( unsigned OperandNo, const APInt & AOut, const KnownBits & LHS, const KnownBits & RHS, bool CarryZero, bool CarryOne ) static

Definition at line 559 of file DemandedBits.cpp.

References assert(), LHS, llvm::APInt::reverseBits(), and RHS.

Referenced by llvm::DemandedBits::determineLiveOperandBitsAdd(), and llvm::DemandedBits::determineLiveOperandBitsSub().

isAlwaysLive()

bool isAlwaysLive ( Instruction * I) static

Definition at line 48 of file DemandedBits.cpp.

References I.

Referenced by llvm::DemandedBits::isInstructionDead(), and llvm::DemandedBits::isUseDead().