LLVM
8.0.1
|
#include "llvm/Analysis/DemandedBits.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Analysis/AssumptionCache.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/PassManager.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Use.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/KnownBits.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cstdint>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "demanded-bits" |
Functions | |
INITIALIZE_PASS_BEGIN (DemandedBitsWrapperPass, "demanded-bits", "Demanded bits analysis", false, false) INITIALIZE_PASS_END(DemandedBitsWrapperPass | |
static bool | isAlwaysLive (Instruction *I) |
Variables | |
demanded | bits |
demanded Demanded bits | analysis |
demanded Demanded bits | false |
#define DEBUG_TYPE "demanded-bits" |
Definition at line 55 of file DemandedBits.cpp.
INITIALIZE_PASS_BEGIN | ( | DemandedBitsWrapperPass | , |
"demanded-bits" | , | ||
"Demanded bits analysis" | , | ||
false | , | ||
false | |||
) |
|
static |
Definition at line 81 of file DemandedBits.cpp.
References llvm::MCID::Add, llvm::Intrinsic::bitreverse, llvm::Intrinsic::bswap, llvm::APInt::byteSwap(), llvm::MCID::Call, llvm::computeKnownBits(), llvm::KnownBits::countMaxLeadingZeros(), llvm::KnownBits::countMaxTrailingZeros(), llvm::Intrinsic::ctlz, llvm::Intrinsic::cttz, llvm::Intrinsic::fshl, llvm::Intrinsic::fshr, llvm::APInt::getActiveBits(), llvm::APInt::getBitWidth(), llvm::Module::getDataLayout(), llvm::APInt::getHighBitsSet(), llvm::APInt::getLimitedValue(), llvm::APInt::getLowBitsSet(), llvm::Instruction::getModule(), llvm::Instruction::getOpcode(), llvm::User::getOperand(), llvm::OverflowingBinaryOperator::hasNoSignedWrap(), llvm::OverflowingBinaryOperator::hasNoUnsignedWrap(), I, llvm::Instruction::isEHPad(), llvm::isPowerOf2_32(), llvm::Instruction::isTerminator(), llvm::APInt::lshr(), llvm::PatternMatch::m_APInt(), llvm::PatternMatch::match(), llvm::Instruction::mayHaveSideEffects(), llvm::KnownBits::One, llvm::APInt::reverseBits(), llvm::MCID::Select, llvm::APInt::setSignBit(), llvm::APInt::shl(), llvm::APInt::trunc(), llvm::APInt::urem(), llvm::NVPTX::PTXLdStInstCode::V2, llvm::KnownBits::Zero, and llvm::APInt::zext().
Referenced by llvm::DemandedBits::isInstructionDead(), isUnconditionalBranch(), llvm::DemandedBits::isUseDead(), and llvm::DemandedBitsWrapperPass::releaseMemory().
demanded Demanded bits analysis |
Definition at line 63 of file DemandedBits.cpp.
demanded bits |
Definition at line 63 of file DemandedBits.cpp.
Referenced by llvm::detail::IEEEFloat::compareAbsoluteValue(), llvm::detail::IEEEFloat::convert(), llvm::detail::IEEEFloat::convertToHexString(), llvm::detail::IEEEFloat::convertToInteger(), llvm::HexagonInstrInfo::getMaxValue(), llvm::HexagonInstrInfo::getMinValue(), llvm::APInt::tcDecrement(), llvm::APInt::trunc(), and llvm::detail::IEEEFloat::~IEEEFloat().
demanded Demanded bits false |
Definition at line 63 of file DemandedBits.cpp.