|
LLVM 23.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 907 of file InstCombineInternal.h.
|
static |
Definition at line 2115 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 2175 of file InstCombineAddSub.cpp.
| SmallVector<GEPOperator *> llvm::CommonPointerBase::LHSGEPs |
LHS GEPs until common base.
Definition at line 911 of file InstCombineInternal.h.
Referenced by isExpensive().
| GEPNoWrapFlags llvm::CommonPointerBase::LHSNW = GEPNoWrapFlags::all() |
LHS GEP NoWrapFlags until common base.
Definition at line 915 of file InstCombineInternal.h.
| Value* llvm::CommonPointerBase::Ptr = nullptr |
| SmallVector<GEPOperator *> llvm::CommonPointerBase::RHSGEPs |
RHS GEPs until common base.
Definition at line 913 of file InstCombineInternal.h.
Referenced by isExpensive().
| GEPNoWrapFlags llvm::CommonPointerBase::RHSNW = GEPNoWrapFlags::all() |
RHS GEP NoWrapFlags until common base.
Definition at line 917 of file InstCombineInternal.h.