LLVM 19.0.0git
Functions
ConstantRange.cpp File Reference
#include "llvm/ADT/APInt.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/IR/ConstantRange.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Operator.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/KnownBits.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <optional>

Go to the source code of this file.

Functions

static ConstantRange makeExactMulNUWRegion (const APInt &V)
 Exact mul nuw region for single element RHS.
 
static ConstantRange makeExactMulNSWRegion (const APInt &V)
 Exact mul nsw region for single element RHS.
 
static ConstantRange getPreferredRange (const ConstantRange &CR1, const ConstantRange &CR2, ConstantRange::PreferredRangeType Type)
 
static ConstantRange getUnsignedCountTrailingZerosRange (const APInt &Lower, const APInt &Upper)
 
static ConstantRange getUnsignedPopCountRange (const APInt &Lower, const APInt &Upper)
 

Function Documentation

◆ getPreferredRange()

static ConstantRange getPreferredRange ( const ConstantRange CR1,
const ConstantRange CR2,
ConstantRange::PreferredRangeType  Type 
)
static

◆ getUnsignedCountTrailingZerosRange()

static ConstantRange getUnsignedCountTrailingZerosRange ( const APInt Lower,
const APInt Upper 
)
static

◆ getUnsignedPopCountRange()

static ConstantRange getUnsignedPopCountRange ( const APInt Lower,
const APInt Upper 
)
static

◆ makeExactMulNSWRegion()

static ConstantRange makeExactMulNSWRegion ( const APInt V)
static

◆ makeExactMulNUWRegion()

static ConstantRange makeExactMulNUWRegion ( const APInt V)
static