|
LLVM 22.0.0git
|
#include "Transforms/InstCombine/InstCombineInternal.h"
Public Member Functions | |
| bool | isExpensive () const |
| Whether expanding the GEP chains is expensive. | |
Static Public Member Functions | |
| static CommonPointerBase | compute (Value *LHS, Value *RHS) |
Public Attributes | |
| Value * | Ptr = nullptr |
| Common base pointer. | |
| SmallVector< GEPOperator * > | LHSGEPs |
| LHS GEPs until common base. | |
| SmallVector< GEPOperator * > | RHSGEPs |
| RHS GEPs until common base. | |
| GEPNoWrapFlags | LHSNW = GEPNoWrapFlags::all() |
| LHS GEP NoWrapFlags until common base. | |
| GEPNoWrapFlags | RHSNW = GEPNoWrapFlags::all() |
| RHS GEP NoWrapFlags until common base. | |
Definition at line 900 of file InstCombineInternal.h.
|
static |
Definition at line 2112 of file InstCombineAddSub.cpp.
References llvm::sampleprof::Base, llvm::cast(), llvm::SmallPtrSetImpl< PtrType >::contains(), llvm::dyn_cast(), llvm::First, GEP, llvm::SmallPtrSetImpl< PtrType >::insert(), and Ptr.
Referenced by llvm::InstCombinerImpl::foldGEPICmp(), and llvm::InstCombinerImpl::OptimizePointerDifference().
| bool CommonPointerBase::isExpensive | ( | ) | const |
Whether expanding the GEP chains is expensive.
Definition at line 2172 of file InstCombineAddSub.cpp.
| SmallVector<GEPOperator *> llvm::CommonPointerBase::LHSGEPs |
LHS GEPs until common base.
Definition at line 904 of file InstCombineInternal.h.
Referenced by isExpensive().
| GEPNoWrapFlags llvm::CommonPointerBase::LHSNW = GEPNoWrapFlags::all() |
LHS GEP NoWrapFlags until common base.
Definition at line 908 of file InstCombineInternal.h.
| Value* llvm::CommonPointerBase::Ptr = nullptr |
| SmallVector<GEPOperator *> llvm::CommonPointerBase::RHSGEPs |
RHS GEPs until common base.
Definition at line 906 of file InstCombineInternal.h.
Referenced by isExpensive().
| GEPNoWrapFlags llvm::CommonPointerBase::RHSNW = GEPNoWrapFlags::all() |
RHS GEP NoWrapFlags until common base.
Definition at line 910 of file InstCombineInternal.h.