reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/Analysis/CaptureTracking.h
   19   class Use;
include/llvm/Analysis/PhiValues.h
   32 class Use;
include/llvm/IR/DerivedUser.h
   17 class Use;
include/llvm/IR/IRBuilder.h
   54 class Use;
include/llvm/Transforms/IPO/DeadArgumentElimination.h
   34 class Use;
include/llvm/Transforms/Scalar/SROA.h
   33 class Use;
include/llvm/Transforms/Utils/SSAUpdater.h
   29 class Use;
include/llvm/Transforms/Utils/SSAUpdaterBulk.h
   27 class Use;
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
   88 class Use;

References

include/llvm/ADT/ArrayRef.h
   43     using iterator = const T *;
   44     using const_iterator = const T *;
   50     const T *Data = nullptr;
   66     /*implicit*/ ArrayRef(const T &OneElt)
   70     /*implicit*/ ArrayRef(const T *data, size_t length)
   74     ArrayRef(const T *begin, const T *end)
   74     ArrayRef(const T *begin, const T *end)
   81     /*implicit*/ ArrayRef(const SmallVectorTemplateCommon<T, U> &Vec)
   87     /*implicit*/ ArrayRef(const std::vector<T, A> &Vec)
   92     /*implicit*/ constexpr ArrayRef(const std::array<T, N> &Arr)
   97     /*implicit*/ constexpr ArrayRef(const T (&Arr)[N]) : Data(Arr), Length(N) {}
  100     /*implicit*/ ArrayRef(const std::initializer_list<T> &Vec)
  108         const ArrayRef<U *> &A,
  110            std::is_convertible<U *const *, T const *>::value>::type * = nullptr)
  118       const SmallVectorTemplateCommon<U *, DummyT> &Vec,
  120           std::is_convertible<U *const *, T const *>::value>::type * = nullptr)
  145     const T *data() const { return Data; }
  151     const T &front() const {
  157     const T &back() const {
  163     template <typename Allocator> ArrayRef<T> copy(Allocator &A) {
  178     ArrayRef<T> slice(size_t N, size_t M) const {
  184     ArrayRef<T> slice(size_t N) const { return slice(N, size() - N); }
  187     ArrayRef<T> drop_front(size_t N = 1) const {
  193     ArrayRef<T> drop_back(size_t N = 1) const {
  200     template <class PredicateT> ArrayRef<T> drop_while(PredicateT Pred) const {
  206     template <class PredicateT> ArrayRef<T> drop_until(PredicateT Pred) const {
  211     ArrayRef<T> take_front(size_t N = 1) const {
  218     ArrayRef<T> take_back(size_t N = 1) const {
  226     template <class PredicateT> ArrayRef<T> take_while(PredicateT Pred) const {
  232     template <class PredicateT> ArrayRef<T> take_until(PredicateT Pred) const {
  239     const T &operator[](size_t Index) const {
  249     typename std::enable_if<std::is_same<U, T>::value, ArrayRef<T>>::type &
  257     typename std::enable_if<std::is_same<U, T>::value, ArrayRef<T>>::type &
  263     std::vector<T> vec() const {
  270     operator std::vector<T>() const {
include/llvm/ADT/DenseMapInfo.h
   39   static inline T* getEmptyKey() {
   41     Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
   45   static inline T* getTombstoneKey() {
   47     Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
   51   static unsigned getHashValue(const T *PtrVal) {
   56   static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
   56   static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
include/llvm/ADT/iterator.h
   68     : public std::iterator<IteratorCategoryT, T, DifferenceTypeT, PointerT,
  206     : public iterator_facade_base<DerivedT, IteratorCategoryT, T,
include/llvm/Analysis/CaptureTracking.h
   81     virtual bool shouldExplore(const Use *U);
   86     virtual bool captured(const Use *U) = 0;
include/llvm/Analysis/DemandedBits.h
   60   bool isUseDead(Use *U);
   82   SmallPtrSet<Use *, 16> DeadUses;
include/llvm/Analysis/DivergenceAnalysis.h
   80   bool isDivergentUse(const Use &U) const;
  199   bool isDivergentUse(const Use &U) const;
  206   bool isUniformUse(const Use &U) const { return !isDivergentUse(U); }
include/llvm/Analysis/LegacyDivergenceAnalysis.h
   45   bool isDivergentUse(const Use *U) const;
   52   bool isUniformUse(const Use *U) const { return !isDivergentUse(U); }
   68   DenseSet<const Use *> DivergentUses;
include/llvm/Analysis/LoopInfo.h
 1128       for (Use &U : Inst->uses()) {
 1145       for (Use &U : Inst->operands()) {
include/llvm/Analysis/MemorySSA.h
  429   static Use *op_begin(MemoryUseOrDef *MUD) {
  435   static Use *op_end(MemoryUseOrDef *MUD) {
  547   BasicBlock *getIncomingBlock(const Use &U) const {
  780   bool dominates(const MemoryAccess *A, const Use &B) const;
include/llvm/Analysis/PtrUseVisitor.h
  131     using UseAndIsOffsetKnownPair = PointerIntPair<Use *, 1, bool>;
  141   SmallPtrSet<Use *, 8> VisitedUses;
  150   Use *U;
include/llvm/CodeGen/TargetLowering.h
 2427                                   SmallVectorImpl<Use *> &Ops) const {
include/llvm/IR/CFG.h
   97   Use &getUse() const {
include/llvm/IR/CallSite.h
  155   bool isCallee(const Use *U) const { return getCallee() == U; }
  163   bool isArgOperand(const Use *U) const {
  174   bool isBundleOperand(const Use *U) const {
  189   bool isDataOperand(const Use *U) const {
  212   unsigned getArgumentNo(const Use *U) const {
  236   unsigned getDataOperandNo(const Use *U) const {
  672 class CallSite : public CallSiteBase<Function, BasicBlock, Value, User, Use,
  766   AbstractCallSite(const Use *U);
  800   bool isCallee(const Use *U) const {
  859   const Use &getCalleeUseForCallback() const {
include/llvm/IR/Constant.h
   43   Constant(Type *ty, ValueTy vty, Use *Ops, unsigned NumOps)
include/llvm/IR/Constants.h
  896   ConstantExpr(Type *ty, unsigned Opcode, Use *Ops, unsigned NumOps)
include/llvm/IR/DerivedUser.h
   37   DerivedUser(Type *Ty, unsigned VK, Use *U, unsigned NumOps,
include/llvm/IR/Dominators.h
  165   bool dominates(const Instruction *Def, const Use &U) const;
  173   bool dominates(const BasicBlockEdge &BBE, const Use &U) const;
  180   bool isReachableFromEntry(const Use &U) const;
include/llvm/IR/GlobalObject.h
   46   GlobalObject(Type *Ty, ValueTy VTy, Use *Ops, unsigned NumOps,
include/llvm/IR/GlobalValue.h
   76   GlobalValue(Type *Ty, ValueTy VTy, Use *Ops, unsigned NumOps,
include/llvm/IR/IRBuilder.h
  672                                    ArrayRef<Use> CallArgs,
  673                                    ArrayRef<Use> TransitionArgs,
  674                                    ArrayRef<Use> DeoptArgs,
  682                                    Value *ActualCallee, ArrayRef<Use> CallArgs,
  701       ArrayRef<Use> InvokeArgs, ArrayRef<Use> TransitionArgs,
  701       ArrayRef<Use> InvokeArgs, ArrayRef<Use> TransitionArgs,
  702       ArrayRef<Use> DeoptArgs, ArrayRef<Value *> GCArgs,
  711                            BasicBlock *UnwindDest, ArrayRef<Use> InvokeArgs,
include/llvm/IR/InstrTypes.h
 1001   ArrayRef<Use> Inputs;
 1004   explicit OperandBundleUse(StringMapEntry<uint32_t> *Tag, ArrayRef<Use> Inputs)
 1117   using Instruction::Instruction;
 1188   bool isDataOperand(const Use *U) const {
 1205   unsigned getDataOperandNo(const Use *U) const {
 1257   const Use &getArgOperandUse(unsigned i) const {
 1261   Use &getArgOperandUse(unsigned i) {
 1266   bool isArgOperand(const Use *U) const {
 1287   const Use &getCalledOperandUse() const { return Op<CalledOperandOpEndIdx>(); }
 1288   Use &getCalledOperandUse() { return Op<CalledOperandOpEndIdx>(); }
 1305   bool isCallee(const Use *U) const { return &getCalledOperandUse() == U; }
 1765   bool isBundleOperand(const Use *U) const {
 1981     ArrayRef<Use> Inputs(begin + BOI.Begin, begin + BOI.End);
include/llvm/IR/Instruction.h
  773   Instruction(Type *Ty, unsigned iType, Use *Ops, unsigned NumOps,
  775   Instruction(Type *Ty, unsigned iType, Use *Ops, unsigned NumOps,
include/llvm/IR/Instructions.h
 2607     Use::UserRef *ref =
 2613     const Use::UserRef *ref =
 2671   BasicBlock *getIncomingBlock(const Use &U) const {
include/llvm/IR/IntrinsicInst.h
  387     const Use &getRawDestUse() const { return getArgOperandUse(ARG_DEST); }
  388     Use &getRawDestUse() { return getArgOperandUse(ARG_DEST); }
  393     const Use &getLengthUse() const { return getArgOperandUse(ARG_LENGTH); }
  394     Use &getLengthUse() { return getArgOperandUse(ARG_LENGTH); }
  439     const Use &getRawSourceUse() const {
  442     Use &getRawSourceUse() { return BaseCL::getArgOperandUse(ARG_SOURCE); }
  482     const Use &getValueUse() const {
  485     Use &getValueUse() { return BaseCL::getArgOperandUse(ARG_VALUE); }
include/llvm/IR/OperandTraits.h
   31   static Use *op_begin(SubClass* U) {
   37   static Use *op_end(SubClass* U) {
   69   static Use *op_begin(SubClass* U) {
   75   static Use *op_end(SubClass* U) {
   96   static Use *op_begin(User* U) {
   99   static Use *op_end(User* U) {
include/llvm/IR/Use.h
   57   Use(const Use &U) = delete;
   61   void swap(Use &RHS);
   82     static inline void *getAsVoidPointer(Use **P) { return P; }
   84     static inline Use **getFromVoidPointer(void *P) {
  118   inline const Use &operator=(const Use &RHS);
  118   inline const Use &operator=(const Use &RHS);
  123   Use *getNext() const { return Next; }
  132   static Use *initTags(Use *Start, Use *Stop);
  132   static Use *initTags(Use *Start, Use *Stop);
  132   static Use *initTags(Use *Start, Use *Stop);
  136   static void zap(Use *Start, const Use *Stop, bool del = false);
  136   static void zap(Use *Start, const Use *Stop, bool del = false);
  139   const Use *getImpliedUser() const LLVM_READONLY;
  142   Use *Next = nullptr;
  143   PointerIntPair<Use **, 2, PrevPtrTag, PrevPointerTraits> Prev;
  145   void setPrev(Use **NewPrev) { Prev.setPointer(NewPrev); }
  147   void addToList(Use **List) {
  156     Use **StrippedPrev = Prev.getPointer();
  168   static SimpleType getSimplifiedValue(Use &Val) { return Val.get(); }
  173   static SimpleType getSimplifiedValue(const Use &Val) { return Val.get(); }
include/llvm/IR/User.h
   73   User(Type *ty, unsigned vty, Use *, unsigned NumOps)
  127   template <int Idx, typename U> static Use &OpFrom(const U *that) {
  133   template <int Idx> Use &Op() {
  136   template <int Idx> const Use &Op() const {
  141   const Use *getHungOffOperands() const {
  145   Use *&getHungOffOperands() { return *(reinterpret_cast<Use **>(this) - 1); }
  147   const Use *getIntrusiveOperands() const {
  151   Use *getIntrusiveOperands() {
  155   void setOperandList(Use *NewList) {
  162   const Use *getOperandList() const {
  165   Use *getOperandList() {
  182   const Use &getOperandUse(unsigned i) const {
  186   Use &getOperandUse(unsigned i) {
  224   using op_iterator = Use*;
  225   using const_op_iterator = const Use*;
  249     explicit value_op_iterator(Use *U = nullptr) : iterator_adaptor_base(U) {}
  269     explicit const_value_op_iterator(const Use *U = nullptr) :
  295     for (Use &U : operands())
  312 static_assert(alignof(Use) >= alignof(User),
  314 static_assert(alignof(Use *) >= alignof(User),
include/llvm/IR/Value.h
   78   Use *UseList;
  127       : public std::iterator<std::forward_iterator_tag, UseT *> {
  130     UseT *U;
  132     explicit use_iterator_impl(UseT *u) : U(u) {}
  152     UseT &operator*() const {
  157     UseT *operator->() const { return &operator*(); }
  159     operator use_iterator_impl<const UseT>() const {
  167     use_iterator_impl<Use> UI;
  168     explicit user_iterator_impl(Use *U) : UI(U) {}
  202     Use &getUse() const { return *UI; }
  302                          llvm::function_ref<bool(Use &U)> ShouldReplace) {
  308       Use &U = *UI;
  352   using use_iterator = use_iterator_impl<Use>;
  353   using const_use_iterator = use_iterator_impl<const Use>;
  457   void addUse(Use &U) { U.addToList(&UseList); }
  686   static Use *mergeUseLists(Use *L, Use *R, Compare Cmp) {
  686   static Use *mergeUseLists(Use *L, Use *R, Compare Cmp) {
  686   static Use *mergeUseLists(Use *L, Use *R, Compare Cmp) {
  687     Use *Merged;
  688     Use **Next = &Merged;
  741 const Use &Use::operator=(const Use &RHS) {
  741 const Use &Use::operator=(const Use &RHS) {
  757   Use *Slots[MaxSlots];
  760   Use *Next = UseList->Next;
  767     Use *Current = Next;
  807   for (Use *I = UseList, **Prev = &UseList; I; I = I->Next) {
include/llvm/Support/Casting.h
  141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) {
  142   return isa_impl_wrap<X, const Y,
  143                        typename simplify_type<const Y>::SimpleType>::doit(Val);
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  221                           simplify_type<From>::getSimplifiedValue(Val));
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  247 inline typename std::enable_if<!is_simple_type<Y>::value,
  248                                typename cast_retty<X, const Y>::ret_type>::type
  249 cast(const Y &Val) {
  252       X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
  252       X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  258   return cast_convert_val<X, Y,
  259                           typename simplify_type<Y>::SimpleType>::doit(Val);
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  266                           typename simplify_type<Y*>::SimpleType>::doit(Val);
  284     typename std::enable_if<!is_simple_type<Y>::value,
  285                             typename cast_retty<X, const Y>::ret_type>::type
  286     cast_or_null(const Y &Val) {
  295     typename std::enable_if<!is_simple_type<Y>::value,
  296                             typename cast_retty<X, Y>::ret_type>::type
  297     cast_or_null(Y &Val) {
  330     typename std::enable_if<!is_simple_type<Y>::value,
  331                             typename cast_retty<X, const Y>::ret_type>::type
  332     dyn_cast(const Y &Val) {
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  351     typename std::enable_if<!is_simple_type<Y>::value,
  352                             typename cast_retty<X, const Y>::ret_type>::type
  353     dyn_cast_or_null(const Y &Val) {
include/llvm/Support/PointerLikeTypeTraits.h
   56   static inline void *getAsVoidPointer(T *P) { return P; }
   57   static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
   59   enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
   91   typedef PointerLikeTypeTraits<T *> NonConst;
   93   static inline const void *getAsVoidPointer(const T *P) {
   96   static inline const T *getFromVoidPointer(const void *P) {
include/llvm/Transforms/IPO/DeadArgumentElimination.h
  126   Liveness SurveyUse(const Use *U, UseVector &MaybeLiveUses,
include/llvm/Transforms/Scalar/SROA.h
  130   void clobberUse(Use &U);
include/llvm/Transforms/Utils/SSAUpdater.h
  115   void RewriteUse(Use &U);
  122   void RewriteUseAfterInsertions(Use &U);
include/llvm/Transforms/Utils/SSAUpdaterBulk.h
   43     SmallVector<Use *, 4> Uses;
   72   void AddUse(unsigned Var, Use *U);
lib/Analysis/AliasAnalysisEvaluator.cpp
  121       for (Use &DataOp : Call->data_ops())
lib/Analysis/CaptureTracking.cpp
   34 bool CaptureTracker::shouldExplore(const Use *U) { return true; }
   59     bool captured(const Use *U) override {
  133     bool shouldExplore(const Use *U) override {
  145     bool captured(const Use *U) override {
  230   SmallVector<const Use *, DefaultMaxUsesToExplore> Worklist;
  231   SmallSet<const Use *, DefaultMaxUsesToExplore> Visited;
  235     for (const Use &U : V->uses()) {
  250     const Use *U = Worklist.pop_back_val();
lib/Analysis/ConstantFolding.cpp
 1083   for (const Use &NewU : C->operands()) {
 1157   for (const Use &OpU : I->operands()) {
lib/Analysis/DemandedBits.cpp
  337     for (Use &OI : I.operands()) {
  376     for (Use &OI : UserI->operands()) {
  438 bool DemandedBits::isUseDead(Use *U) {
lib/Analysis/DivergenceAnalysis.cpp
  129   for (const auto &Op : I.operands()) {
  231       for (auto &Op : I.operands()) {
  415 bool DivergenceAnalysis::isDivergentUse(const Use &U) const {
  458 bool GPUDivergenceAnalysis::isDivergentUse(const Use &use) const {
lib/Analysis/GlobalsModRef.cpp
  350   for (Use &U : V->uses()) {
lib/Analysis/IVUsers.cpp
  206   for (Use &U : I->uses()) {
lib/Analysis/InstructionSimplify.cpp
 5225   for (auto &Arg : Call->args()) {
lib/Analysis/LegacyDivergenceAnalysis.cpp
   97                        DenseSet<const Use *> &DU)
  122   DenseSet<const Use *> &DU;   // Stores divergent uses of possibly uniform
  217   for (Use &Use : I.uses()) {
  361 bool LegacyDivergenceAnalysis::isDivergentUse(const Use *U) const {
lib/Analysis/LoopInfo.cpp
  430     for (const Use &U : I.uses()) {
lib/Analysis/MemoryDependenceAnalysis.cpp
  394     for (const Use &Us : Ptr->uses()) {
lib/Analysis/MemorySSA.cpp
 1798   for (const Use &Arg : MP->operands()) {
 2032       for (const Use &U : MP->uses())
 2040       for (const Use &U : MD->uses())
 2153                           const Use &Dominatee) const {
 2203   for (const auto &Op : operands()) {
lib/Analysis/MemorySSAUpdater.cpp
  221   for (auto &Op : Operands) {
 1097           Use &U = *UI;
 1227   for (auto &Arg : MP->operands()) {
 1310       Use &U = *MA->use_begin();
lib/Analysis/ModuleSummaryAnalysis.cpp
  103     for (const auto &OI : U->operands()) {
  147   for (auto &Arg : make_range(Call.CS.arg_begin() + 1, Call.CS.arg_end())) {
lib/Analysis/PtrUseVisitor.cpp
   22   for (Use &U : I.uses()) {
lib/Analysis/ScalarEvolution.cpp
 5250   Use &LeftUse = Merge->getOperandUse(0);
 5251   Use &RightUse = Merge->getOperandUse(1);
lib/Analysis/StackSafetyAnalysis.cpp
  213   ConstantRange getMemIntrinsicAccessRange(const MemIntrinsic *MI, const Use &U,
  263     const MemIntrinsic *MI, const Use &U, const Value *AllocaPtr) {
  289     for (const Use &UI : V->uses()) {
lib/Analysis/TypeMetadataUtils.cpp
   27   for (const Use &U : FPtr->uses()) {
   54   for (const Use &U : VPtr->uses()) {
   82   for (const Use &CIU : CI->uses()) {
  111   for (const Use &U : CI->uses()) {
lib/AsmParser/LLParser.cpp
 7328   SmallDenseMap<const Use *, unsigned, 16> Order;
 7329   for (const Use &U : V->uses()) {
lib/Bitcode/Reader/BitcodeReader.cpp
 2880       SmallDenseMap<const Use *, unsigned, 16> Order;
 2881       for (const Use &U : V->materialized_uses()) {
lib/Bitcode/Writer/ValueEnumerator.cpp
  123     for (const Use &U : F.operands())
  174   using Entry = std::pair<const Use *, unsigned>;
  176   for (const Use &U : V->uses())
  187     const Use *LU = L.first;
  188     const Use *RU = R.first;
  309     for (const Use &U : F.operands())
  365     for (const Use &U : F.operands())
  403         for (const Use &Op : I.operands()) {
  490     for (const Use &U : V->uses()) {
  962       for (const Use &OI : I.operands()) {
  983       for (const Use &OI : I.operands()) {
lib/CodeGen/CodeGenPrepare.cpp
 1081     Use &TheUse = UI.getUse();
 1365     Use &TheUse = UI.getUse();
 1473     Use &TheUse = UI.getUse();
 1534     Use &TruncTheUse = TruncUI.getUse();
 1624     Use &TheUse = UI.getUse();
 1798     for (auto &Arg : CI->arg_operands()) {
 1846     for (auto &Arg : CI->arg_operands()) {
 2532       for (Use &U : Inst->uses()) {
 4435   for (Use &U : I->uses()) {
 5624   for (Use &U : Src->uses()) {
 6171   SmallVector<Use *, 4> OpsToSink;
 6181   SmallVector<Use *, 4> ToReplace;
 6182   for (Use *U : reverse(OpsToSink)) {
 6192   for (Use *U : ToReplace) {
 6482     for (const Use &U : ToBePromoted->operands()) {
 6565   for (Use &U : ToBePromoted->operands()) {
lib/CodeGen/GlobalMerge.cpp
  307     for (auto &U : GV->uses()) {
  310       Use *UI, *UE;
  588       for (const Use &U : Pad->operands()) {
lib/CodeGen/SafeStack.cpp
  197   bool IsMemIntrinsicSafe(const MemIntrinsic *MI, const Use &U,
  259 bool SafeStack::IsMemIntrinsicSafe(const MemIntrinsic *MI, const Use &U,
  290     for (const Use &UI : V->uses()) {
  598       Use &U = *AI->use_begin();
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
 9458       for (const Use &U : I.operands()) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  573     ArrayRef<const Use> GCArgs;
  580     ArrayRef<const Use> GCTransitionArgs;
  590     ArrayRef<const Use> DeoptState;
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  402     for (const auto &Op : I.operands()) {
lib/CodeGen/StackColoring.cpp
  949     for (auto &Use : FromAI->uses()) {
lib/CodeGen/WasmEHPrepare.cpp
  282   for (auto &U : FPI->uses()) {
lib/CodeGen/WinEHPrepare.cpp
   79   void replaceUseWithLoad(Value *V, Use &U, AllocaInst *&SpillSlot,
  894       SmallVector<Use *, 16> UsesToRename;
  902       for (Use &U : OldI->uses()) {
 1094     Use &U = *UI++;
 1161 void WinEHPrepare::replaceUseWithLoad(Value *V, Use &U, AllocaInst *&SpillSlot,
lib/FuzzMutate/RandomIRBuilder.cpp
   70 static bool isCompatibleReplacement(const Instruction *I, const Use &Operand,
   97   auto RS = makeSampler<Use *>(Rand);
  104     for (Use &U : I->operands())
  111   if (Use *Sink = RS.getSelection()) {
lib/IR/AbstractCallSite.cpp
   37 AbstractCallSite::AbstractCallSite(const Use *U) : CS(U->getUser()) {
lib/IR/AsmWriter.cpp
  156     for (const Use &U : F.operands())
  185   using Entry = std::pair<const Use *, unsigned>;
  187   for (const Use &U : V->uses())
  201     const Use *LU = L.first;
  202     const Use *RU = R.first;
  312     for (const Use &U : F.operands())
 2559     for (const auto &Input : BU.Inputs) {
lib/IR/Constants.cpp
 2417   Use *OperandList = getOperandList();
 2869   Use *OperandList = getOperandList();
 2871   for (Use *O = OperandList, *E = OperandList+getNumOperands(); O != E; ++O) {
 2901   Use *OperandList = getOperandList();
 2911   for (Use *O = OperandList, *E = OperandList + getNumOperands(); O != E; ++O) {
lib/IR/Core.cpp
  957   Use *Next = unwrap(U)->getNext();
lib/IR/Dominators.cpp
  230 bool DominatorTree::dominates(const BasicBlockEdge &BBE, const Use &U) const {
  248 bool DominatorTree::dominates(const Instruction *Def, const Use &U) const {
  299 bool DominatorTree::isReachableFromEntry(const Use &U) const {
lib/IR/Function.cpp
 1421   for (const Use &U : uses()) {
lib/IR/IRBuilder.cpp
  581                   Value *ActualCallee, uint32_t Flags, ArrayRef<T0> CallArgs,
  582                   ArrayRef<T1> TransitionArgs, ArrayRef<T2> DeoptArgs,
  582                   ArrayRef<T1> TransitionArgs, ArrayRef<T2> DeoptArgs,
  603     Value *ActualCallee, uint32_t Flags, ArrayRef<T0> CallArgs,
  604     ArrayRef<T1> TransitionArgs, ArrayRef<T2> DeoptArgs, ArrayRef<T3> GCArgs,
  604     ArrayRef<T1> TransitionArgs, ArrayRef<T2> DeoptArgs, ArrayRef<T3> GCArgs,
  635     ArrayRef<Use> CallArgs, ArrayRef<Use> TransitionArgs,
  635     ArrayRef<Use> CallArgs, ArrayRef<Use> TransitionArgs,
  636     ArrayRef<Use> DeoptArgs, ArrayRef<Value *> GCArgs, const Twine &Name) {
  637   return CreateGCStatepointCallCommon<Use, Use, Use, Value *>(
  637   return CreateGCStatepointCallCommon<Use, Use, Use, Value *>(
  637   return CreateGCStatepointCallCommon<Use, Use, Use, Value *>(
  644     ArrayRef<Use> CallArgs, ArrayRef<Value *> DeoptArgs,
  646   return CreateGCStatepointCallCommon<Use, Value *, Value *, Value *>(
  655     uint32_t Flags, ArrayRef<T0> InvokeArgs, ArrayRef<T1> TransitionArgs,
  655     uint32_t Flags, ArrayRef<T0> InvokeArgs, ArrayRef<T1> TransitionArgs,
  656     ArrayRef<T2> DeoptArgs, ArrayRef<T3> GCArgs, const Twine &Name) {
  688     ArrayRef<Use> InvokeArgs, ArrayRef<Use> TransitionArgs,
  688     ArrayRef<Use> InvokeArgs, ArrayRef<Use> TransitionArgs,
  689     ArrayRef<Use> DeoptArgs, ArrayRef<Value *> GCArgs, const Twine &Name) {
  690   return CreateGCStatepointInvokeCommon<Use, Use, Use, Value *>(
  690   return CreateGCStatepointInvokeCommon<Use, Use, Use, Value *>(
  690   return CreateGCStatepointInvokeCommon<Use, Use, Use, Value *>(
  697     BasicBlock *NormalDest, BasicBlock *UnwindDest, ArrayRef<Use> InvokeArgs,
  699   return CreateGCStatepointInvokeCommon<Use, Value *, Value *, Value *>(
lib/IR/Instruction.cpp
   23 Instruction::Instruction(Type *ty, unsigned it, Use *Ops, unsigned NumOps,
   35 Instruction::Instruction(Type *ty, unsigned it, Use *Ops, unsigned NumOps,
  496   for (const Use &U : uses()) {
lib/IR/Instructions.cpp
  210   Use *OL = getOperandList();
  211   const Use *InOL = LP.getOperandList();
 1020   Use *OL = getOperandList();
 1021   const Use *InOL = CSI.getOperandList();
 1062   Use *EndDst = op_end() - 1;
 1063   for (Use *CurDst = HI.getCurrent(); CurDst != EndDst; ++CurDst)
 3832   Use *OL = getOperandList();
 3833   const Use *InOL = SI.getOperandList();
 3864   Use *OL = getOperandList();
 4059   Use *OL = getOperandList();
 4060   const Use *InOL = IBI.getOperandList();
 4084   Use *OL = getOperandList();
lib/IR/SafepointIRVerifier.cpp
   72   SetVector<const Use *> DeadEdges; // Contains all dead edges from live blocks.
   76   static const Use& getEdge(const_pred_iterator &PredIt) {
   77     auto &PU = PredIt.getUse();
  104   bool isDeadEdge(const Use *U) const {
  117       auto &PU = PredIt.getUse();
  118       const Use &U = PU.getUser()->getOperandUse(PU.getOperandNo());
  184   void addDeadEdge(const Use &DeadEdge) {
lib/IR/TypeFinder.cpp
   53     for (const Use &U : FI.operands())
   67         for (const auto &O : I.operands())
  144   for (const auto &I : U->operands())
lib/IR/Use.cpp
   16 void Use::swap(Use &RHS) {
   41   const Use *End = getImpliedUser();
   56 Use *Use::initTags(Use *const Start, Use *Stop) {
   56 Use *Use::initTags(Use *const Start, Use *Stop) {
   56 Use *Use::initTags(Use *const Start, Use *Stop) {
   66     new (Stop) Use(tags[Done++]);
   73       new (Stop) Use(stopTag);
   77       new (Stop) Use(PrevPtrTag(Count & 1));
   86 void Use::zap(Use *Start, const Use *Stop, bool del) {
   86 void Use::zap(Use *Start, const Use *Stop, bool del) {
   93 const Use *Use::getImpliedUser() const {
   94   const Use *Current = this;
lib/IR/User.cpp
   42   static_assert(alignof(Use) >= alignof(Use::UserRef),
   42   static_assert(alignof(Use) >= alignof(Use::UserRef),
   44   static_assert(alignof(Use::UserRef) >= alignof(BasicBlock *),
   49   size_t size = N * sizeof(Use) + sizeof(Use::UserRef);
   49   size_t size = N * sizeof(Use) + sizeof(Use::UserRef);
   52   Use *Begin = static_cast<Use*>(::operator new(size));
   53   Use *End = Begin + N;
   54   (void) new(End) Use::UserRef(const_cast<User*>(this), 1);
   55   setOperandList(Use::initTags(Begin, End));
   67   Use *OldOps = getOperandList();
   69   Use *NewOps = getOperandList();
   77         reinterpret_cast<char *>(OldOps + OldNumUses) + sizeof(Use::UserRef);
   79         reinterpret_cast<char *>(NewOps + NewNumUses) + sizeof(Use::UserRef);
   82   Use::zap(OldOps, OldOps + OldNumUses, true);
  124       ::operator new(Size + sizeof(Use) * Us + DescBytesToAllocate));
  125   Use *Start = reinterpret_cast<Use *>(Storage + DescBytesToAllocate);
  126   Use *End = Start + Us;
  131   Use::initTags(Start, End);
  151   void *Storage = ::operator new(Size + sizeof(Use *));
  152   Use **HungOffOperandList = static_cast<Use **>(Storage);
  172     Use **HungOffOperandList = static_cast<Use **>(Usr) - 1;
  174     Use::zap(*HungOffOperandList, *HungOffOperandList + Obj->NumUserOperands,
  178     Use *UseBegin = static_cast<Use *>(Usr) - Obj->NumUserOperands;
  179     Use::zap(UseBegin, UseBegin + Obj->NumUserOperands, /* Delete */ false);
  185     Use *Storage = static_cast<Use *>(Usr) - Obj->NumUserOperands;
  186     Use::zap(Storage, Storage + Obj->NumUserOperands,
lib/IR/Value.cpp
  369   for (auto &O : Expr->operands()) {
  412     Use &U = *UseList;
  750   Use *Head = UseList;
  751   Use *Current = UseList->Next;
  754     Use *Next = Current->Next;
lib/IR/Verifier.cpp
  201   void WriteTs(const T1 &V1, const Ts &... Vs) {
  224   void CheckFailed(const Twine &Message, const T1 &V1, const Ts &... Vs) {
  743   for (const Use &U : C.operands()) {
 1900     for (const Use &U : C->operands()) {
 4001   const Use &U = I.getOperandUse(i);
 4088   for (Use &U : I.uses()) {
lib/Target/AArch64/AArch64ISelLowering.cpp
 8576   for (const Use &U : Ext->uses()) {
 8683     Instruction *I, SmallVectorImpl<Use *> &Ops) const {
lib/Target/AArch64/AArch64ISelLowering.h
  356                           SmallVectorImpl<Use *> &Ops) const override;
lib/Target/AArch64/AArch64PromoteConstant.cpp
  549     for (Use &U : I.operands()) {
lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp
  125     for (const Use &U : C->operands()) {
  314       for (const Use &U : I.operands()) {
lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
  574   for (auto &U : PrintfFunction->uses()) {
lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
  139   for (Use &U : Arg.uses()) {
lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp
  169     for (auto &Use : ImageArg.uses()) {
  202     for (const auto &Use : SamplerArg.uses()) {
lib/Target/ARM/ARMCodeGenPrepare.cpp
  453   for (Use &U : From->uses()) {
  882   for (auto &Op : I->operands()) {
  965         for (auto &U : I->operands()) {
  975       for (Use &U : V->uses()) {
 1037         for (auto &Op : CI.operands()) {
lib/Target/ARM/ARMISelLowering.cpp
14752                                            SmallVectorImpl<Use *> &Ops) const {
14799   for (Use &U : Shuffle->uses()) {
lib/Target/ARM/ARMISelLowering.h
  356                             SmallVectorImpl<Use *> &Ops) const override;
lib/Target/ARM/ARMParallelDSP.cpp
  759       for (auto &Op : Source->operands())
lib/Target/ARM/MVETailPredication.cpp
  306         for (auto &U : Int->args()) {
  427     for (auto &U : I->operands()) {
lib/Target/Hexagon/HexagonCommonGEP.cpp
   74   using UseSet = SetVector<Use *>;
  137     void separateChainForNode(GepNode *Node, Use *U, NodeToValueMap &Loc);
  774       Use *U = *I;
  952 void HexagonCommonGEP::separateChainForNode(GepNode *Node, Use *U,
  983   for (Use *U : Us) {
  987   for (Use *U : NewUs)
 1022       Use *U = *J;
 1237         Use *U = *I;
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
  657     Use &TheUse = UI.getUse();
 1206   for (auto &I : UseI->operands()) {
 1405     for (auto &J : I->operands()) {
lib/Target/Hexagon/HexagonOptimizeSZextends.cpp
  132           const Use &TheUse = UI.getUse();
lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
  467       Use &U = *UI;
  497         Use &U = *UI;
lib/Target/NVPTX/NVPTXLowerAlloca.cpp
   90           const auto &AllocaUse = *UI++;
lib/Target/PowerPC/PPCBoolRetToInt.cpp
   84         for (auto &Op : CurrUser->operands())
  209           for (auto &U : CI->operands())
  218   bool runOnUse(Use &U, const PHINodeSet &PromotablePHINodes,
lib/Target/PowerPC/PPCTargetTransformInfo.cpp
  242         for (const auto &CO : CV->operands())
lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp
   92     for (Use &U : F.uses()) {
lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp
   68                      SmallVectorImpl<std::pair<Use *, Function *>> &Uses,
   70   for (Use &U : V->uses()) {
  242   SmallVector<std::pair<Use *, Function *>, 0> Uses;
  268         Use *UseMain = &CallMain->getOperandUse(2);
  277     Use *U = UseFunc.first;
lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
  609         Use &U = *UI;
 1083     Use &U = *UI;
 1092     Use &U = *UI;
lib/Transforms/Coroutines/CoroFrame.cpp
 1231     auto &Use = *UI;
lib/Transforms/Coroutines/CoroSplit.cpp
 1304     for (auto &VUse : Suspend->value_operands())
 1462       for (auto &Use : Cast->uses()) {
lib/Transforms/IPO/ArgumentPromotion.cpp
  666   for (Use &U : Arg->uses()) {
  850   for (const Use &U : F.uses()) {
  906   for (Use &U : F->uses()) {
  943       for (Use &U : F->uses()) {
lib/Transforms/IPO/Attributor.cpp
  714     for (const Use &U : IRP.getAssociatedValue().uses())
  729     SetVector<const Use *> NextUses;
  731     for (const Use *U : Uses) {
  738           for (const Use &Us : UserI->uses())
  742     for (const Use *U : NextUses)
  750   SetVector<const Use *> Uses;
  996       for (const Use &U : F->uses())
 1525     const Use *U, const Instruction *I, bool &IsNonNull, bool &TrackUse) {
 1594   bool followUse(Attributor &A, const Use *U, const Instruction *I) {
 2487   bool followUse(Attributor &A, const Use *U, const Instruction *I) {
 2703     for (const Use &U : AnchorVal.uses()) {
 3057   bool captured(const Use *U) override {
 3113   bool shouldExplore(const Use *U) override {
 3636     SmallPtrSet<const Use *, 8> Visited;
 3637     SmallVector<const Use *, 8> Worklist;
 3639     for (Use &U : I.uses())
 3643       const Use *U = Worklist.pop_back_val();
 3695         for (Use &U : UserI->uses())
 3863     for (const Use &U : getAssociatedValue().uses())
 3883   bool followUsersOfUseIn(Attributor &A, const Use *U,
 3887   void analyzeUseIn(Attributor &A, const Use *U, const Instruction *UserI);
 3891   SetVector<const Use *> Uses;
 4107     const Use *U = Uses[i];
 4117       for (const Use &UserIUse : UserI->uses())
 4129 bool AAMemoryBehaviorFloating::followUsersOfUseIn(Attributor &A, const Use *U,
 4154 void AAMemoryBehaviorFloating::analyzeUseIn(Attributor &A, const Use *U,
 4272   for (const Use &U : Fn.uses()) {
 4298     const Use *EffectiveUse =
lib/Transforms/IPO/DeadArgumentElimination.cpp
  305   for (Use &U : Fn.uses()) {
  378 DeadArgumentEliminationPass::SurveyUse(const Use *U, UseVector &MaybeLiveUses,
  418       for (const Use &UU : IV->uses()) {
  471   for (const Use &U : V->uses()) {
  554   for (const Use &U : F.uses()) {
  583     for (const Use &U : TheCall->uses()) {
lib/Transforms/IPO/FunctionAttrs.cpp
  363   bool captured(const Use *U) override {
  447   SmallVector<Use *, 32> Worklist;
  448   SmallPtrSet<Use *, 32> Visited;
  457   for (Use &U : A->uses()) {
  463     Use *U = Worklist.pop_back_val();
  473       for (Use &UU : I->uses())
  487           for (Use &UU : I->uses())
lib/Transforms/IPO/GlobalOpt.cpp
  902       Use &LoadUse = *LI->use_begin();
lib/Transforms/IPO/IPConstantPropagation.cpp
   59   for (Use &U : F.uses()) {
  223   for (Use &U : F.uses()) {
lib/Transforms/IPO/LowerTypeTests.cpp
 1084     for (auto &U : F->uses()) {
 1702 static bool isDirectCall(Use& U) {
 1717     Use &U = *UI;
 1999     for (const Use &U : TypeTestFunc->uses()) {
 2011     for (const Use &U : ICallBranchFunnelFunc->uses()) {
lib/Transforms/IPO/MergeFunctions.cpp
  448     Use *U = &*UI;
lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
  106     for (const Use &U : TypeTestFunc->uses()) {
  114     for (const Use &U : TypeCheckedLoadFunc->uses()) {
lib/Transforms/InstCombine/InstCombineCompares.cpp
 1045   SmallVector<const Use *, 32> Worklist;
 1046   for (const Use &U : Alloca->uses()) {
 1055     const Use *U = Worklist.pop_back_val();
 1088     for (const Use &U : V->uses()) {
lib/Transforms/InstCombine/InstCombineInternal.h
  713       for (Use &Operand : I.operands())
lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
   70     for (auto &U : ValuePair.first->uses()) {
lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
   84   Use &U = I->getOperandUse(OpNo);
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  304   for (const Use &U : V->uses()) {
lib/Transforms/InstCombine/InstructionCombining.cpp
 1779       for (auto &I : PN->operands())
 3292             for (Use &U : I->operands())
 3417       for (Use &U : Inst->operands()) {
lib/Transforms/Instrumentation/AddressSanitizer.cpp
 1786   for (Use &OP : CA->operands()) {
lib/Transforms/ObjCARC/ObjCARCContract.cpp
  624         Use &U = *UI++;
lib/Transforms/ObjCARC/ProvenanceAnalysis.cpp
   91     for (const Use &U : P->uses()) {
lib/Transforms/ObjCARC/ProvenanceAnalysisEvaluator.cpp
   62     for (auto &Op : I->operands())
lib/Transforms/Scalar/ADCE.cpp
  362       for (Use &OI : LiveInst->operands())
lib/Transforms/Scalar/BDCE.cpp
  111     for (Use &U : I.operands()) {
lib/Transforms/Scalar/CallSiteSplitting.cpp
   88   for (auto &I : CS.args()) {
   98   for (auto &I : CS.args()) {
  343       for (auto &CI : CS.args()) {
  427       for (auto &I : CS.args())
lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
  564     for (const Use &ConstU : DeoptBundle->Inputs) {
  565       Use &U = const_cast<Use&>(ConstU);
lib/Transforms/Scalar/EarlyCSE.cpp
  854       for (auto &Op : cast<BinaryOperator>(Curr)->operands())
lib/Transforms/Scalar/GVNHoist.cpp
  819     for (const Use &Op : I->operands())
  830     for (const Use &Op : I->operands())
lib/Transforms/Scalar/GVNSink.cpp
  361     for (auto &U : I->uses())
lib/Transforms/Scalar/IndVarSimplify.cpp
 1466     for (Use &U : NarrowUse->uses()) {
 1472     for (Use &U : NarrowUse->uses()) {
 1517     for (Use &U : NarrowUse->uses()) {
 1528     for (Use &U : NarrowUse->uses()) {
 1908     for (Use &U : NarrowDef->uses()) {
 2609     for (Use &U : I->uses()) {
lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
  144   Use *CheckUse = nullptr;
  152   extractRangeChecksFromCond(Loop *L, ScalarEvolution &SE, Use &ConditionUse,
  180   Use *getCheckUse() const { return CheckUse; }
  336     Loop *L, ScalarEvolution &SE, Use &ConditionUse,
lib/Transforms/Scalar/InferAddressSpaces.cpp
  200     SmallVectorImpl<const Use *> *UndefUsesToFix) const;
  414     const Use &OperandUse, unsigned NewAddrSpace,
  416     SmallVectorImpl<const Use *> *UndefUsesToFix) {
  444     SmallVectorImpl<const Use *> *UndefUsesToFix) {
  461   for (const Use &OperandUse : I->operands()) {
  586   SmallVectorImpl<const Use *> *UndefUsesToFix) const {
  757                                              Use &U, unsigned AddrSpace) {
  880   SmallVector<const Use *, 32> UndefUsesToFix;
  893   for (const Use *UndefUse : UndefUsesToFix) {
  927       Use &U = *I;
lib/Transforms/Scalar/JumpThreading.cpp
 2053   SmallVector<Use*, 16> UsesToRename;
 2059     for (Use &U : I.uses()) {
 2374   SmallVector<Use*, 16> UsesToRename;
 2378     for (Use &U : I.uses()) {
 2584     for (Use &U : PN->uses()) {
lib/Transforms/Scalar/LICM.cpp
 1582     Use &U = UI.getUse();
lib/Transforms/Scalar/LoopFuse.cpp
 1023         for (auto &Op : I.operands())
lib/Transforms/Scalar/LoopInstSimplify.cpp
  109           Use &U = *UI++;
lib/Transforms/Scalar/LoopInterchange.cpp
 1264           Use &U = *UI++;
lib/Transforms/Scalar/LoopRerollPass.cpp
  694       for (Use &U : I->uses()) {
lib/Transforms/Scalar/LoopSink.cpp
  181   for (auto &U : I.uses()) {
lib/Transforms/Scalar/LoopStrengthReduce.cpp
  977     for (Use &O : I->operands())
 1953   SmallPtrSet<Use*, MaxChains> IVIncSet;
 3415       for (const Use &U : V->uses()) {
 5391               for (const auto &val : PN->incoming_values())
 5408                   for (const auto &val : NewPN->incoming_values())
lib/Transforms/Scalar/NewGVN.cpp
 1889   for (const auto &Op : CI->operands()) {
 2765       for (auto &Op : ValueOp->operands()) {
 3507   Use *U = nullptr;
 3606     for (auto &U : Def->uses()) {
 3836     for (auto &Operand : PHI->incoming_values())
 3940           Use *U = VD.U;
lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
  287 static ArrayRef<Use> GetDeoptBundleOperands(const CallBase *Call) {
 1432   ArrayRef<Use> CallArgs(Call->arg_begin(), Call->arg_end());
 1433   ArrayRef<Use> DeoptArgs = GetDeoptBundleOperands(Call);
 1434   ArrayRef<Use> TransitionArgs;
lib/Transforms/Scalar/SROA.cpp
  167   PointerIntPair<Use *, 1, bool> UseAndIsSplittable;
  172   Slice(uint64_t BeginOffset, uint64_t EndOffset, Use *U, bool IsSplittable)
  182   Use *getUse() const { return UseAndIsSplittable.getPointer(); }
  287   ArrayRef<Use *> getDeadOperands() const { return DeadOperands; }
  343   SmallVector<Use *, 8> DeadOperands;
 1137     Use *U = I->getUse();
 1836   Use *U = S.getUse();
 2016   Use *U = S.getUse();
 2308   Use *OldUse = nullptr;
 3218   SmallVector<Use *, 8> Queue;
 3225   Use *U;
 3250     for (Use &U : I.uses())
 4415 void SROA::clobberUse(Use &U) {
 4466     for (Use &DeadOp : DeadUser->operands())
 4476   for (Use *DeadOp : AS.getDeadOperands()) {
 4525     for (Use &Operand : I->operands())
lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
  148     Use *U = &*UI++;
 2224         Use *U = &*UI++;
lib/Transforms/Scalar/Sink.cpp
   42   for (Use &U : Inst->uses()) {
lib/Transforms/Scalar/SpeculateAroundPHIs.cpp
   57   for (Use &U : PN.uses()) {
  253   for (Use &U : PN.uses()) {
  348     for (Use &U : PN->uses()) {
  435     for (Use &U : PN->uses())
  494           for (Use &U : PN->uses())
  516           for (Use &U : PN->uses()) {
  665       for (Use &U : NewI->operands()) {
lib/Transforms/Scalar/StructurizeCFG.cpp
  915         Use &U = *UI++;
lib/Transforms/Scalar/TailRecursionElimination.cpp
  108     SmallVector<Use *, 32> Worklist;
  109     SmallPtrSet<Use *, 32> Visited;
  112       for (auto &U : V->uses()) {
  122       Use *U = Worklist.pop_back_val();
  254         for (auto &Arg : CI->arg_operands()) {
lib/Transforms/Utils/CanonicalizeAliases.cpp
   57   for (Use &U : CE->operands())
lib/Transforms/Utils/CodeExtractor.cpp
  110     for (auto const &U : Curr->operands()) {
  604       for (auto &OI : II.operands()) {
lib/Transforms/Utils/CtorUtils.cpp
   71   for (auto &V : CA->operands()) {
   94   for (auto &V : CA->operands()) {
lib/Transforms/Utils/GlobalStatus.cpp
   67   for (const Use &U : V->uses()) {
lib/Transforms/Utils/LCSSA.cpp
   78   SmallVector<Use *, 16> UsesToRewrite;
  104     for (Use &U : I->uses()) {
  184     for (Use *UseToRewrite : UsesToRewrite) {
lib/Transforms/Utils/Local.cpp
  468     for (Use &OpU : I.operands()) {
  977       for (Use &U : BBI->uses()) {
 1424     for (auto &AIUse : AI->uses()) {
 1594         Use &U = *UI++;
 2468     Use &U = *UI++;
 2486     Use &U = *UI++;
lib/Transforms/Utils/LoopRotationUtils.cpp
  116       Use &U = *UI;
lib/Transforms/Utils/LoopUnroll.cpp
  113       for (Use &U : I.operands()) {
lib/Transforms/Utils/LoopUnrollAndJam.cpp
  108       for (auto &U : I->operands())
lib/Transforms/Utils/LoopUtils.cpp
  615         Use &U = *UI;
lib/Transforms/Utils/ModuleUtils.cpp
   77     for (auto &Op : CA->operands()) {
lib/Transforms/Utils/PredicateInfo.cpp
  104   Use *U = nullptr;
  226   const Instruction *getDefOrUser(const Value *Def, const Use *U) const {
  293   for (auto &U : Op->uses()) {
lib/Transforms/Utils/SSAUpdater.cpp
  189 void SSAUpdater::RewriteUse(Use &U) {
  206 void SSAUpdater::RewriteUseAfterInsertions(Use &U) {
lib/Transforms/Utils/SSAUpdaterBulk.cpp
   29 static BasicBlock *getUserBB(Use *U) {
   61 void SSAUpdaterBulk::AddUse(unsigned Var, Use *U) {
  146     for (Use *U : R.Uses)
  175     SmallPtrSet<Use *, 4> ProcessedUses;
  176     for (Use *U : R.Uses) {
lib/Transforms/Utils/SimplifyCFG.cpp
 4702       for (auto &Use : I.uses()) {
lib/Transforms/Utils/ValueMapper.cpp
  854   for (Use &Op : I->operands()) {
  937   for (Use &Op : F.operands())
lib/Transforms/Vectorize/LoopVectorize.cpp
 3227   for (auto &ArgOp : CI->arg_operands())
 4113         for (auto &U : make_range(GEP->idx_begin(), GEP->idx_end())) {
 5584     for (Use &U : I->operands())
 5626     for (Use &U : I->operands())
 6057     for (auto &Op : I->operands())
 6954   for (auto &Op : I->operands())
lib/Transforms/Vectorize/SLPVectorizer.cpp
 1774           for (Use &U : BundleMember->Inst->operands())
 3376     for (auto &J : PrevInst->operands()) {
 4962       for (Use &U : I->operands())
tools/clang/lib/CodeGen/CGCleanup.cpp
  613     llvm::Use &use = *i;
tools/clang/lib/CodeGen/CGDecl.cpp
 1246     for (llvm::Use &Op : constant->operands())
tools/lldb/source/Expression/IRExecutionUnit.cpp
  984       for (llvm::Use &ctor_use : ctor_array->operands()) {
tools/polly/include/polly/ScopInfo.h
 2414   ScopStmt *getIncomingStmtFor(const Use &U) const;
tools/polly/include/polly/Support/ScopHelper.h
  445 llvm::BasicBlock *getUseBlock(const llvm::Use &U);
tools/polly/include/polly/Support/VirtualInstruction.h
   99   static VirtualUse create(Scop *S, const Use &U, LoopInfo *LI, bool Virtual);
  201   Use *operator->() const { return U; }
tools/polly/lib/Analysis/ScopBuilder.cpp
 1122   for (Use &Op : Inst->operands())
 1823     for (const auto &Arg : CI->arg_operands()) {
 2001     for (Use &Op : Inst->operands()) {
 3528 static void verifyUse(Scop *S, Use &Op, LoopInfo &LI) {
 3564       for (auto &Op : Inst.operands())
 3592       for (auto &Op : Inst.operands())
tools/polly/lib/Analysis/ScopDetection.cpp
  707       for (const auto &Arg : CI.arg_operands()) {
 1194   for (auto &Op : Inst.operands()) {
tools/polly/lib/Analysis/ScopInfo.cpp
 1483   for (auto &Operand : Call->arg_operands()) {
 2428 ScopStmt *Scop::getIncomingStmtFor(const Use &U) const {
 2551   for (Use &Use : Inst->uses()) {
tools/polly/lib/Support/SCEVValidator.cpp
  124   for (auto &Operand : Call->arg_operands())
tools/polly/lib/Support/ScopHelper.cpp
  277     for (auto &Op : Inst->operands()) {
  540   for (const Use &Val : llvm::drop_begin(Gep->operands(), 1)) {
  650 llvm::BasicBlock *polly::getUseBlock(const llvm::Use &U) {
tools/polly/lib/Support/VirtualInstruction.cpp
   19 VirtualUse VirtualUse::create(Scop *S, const Use &U, LoopInfo *LI,
tools/polly/lib/Transform/ZoneAlgo.cpp
  521     for (const Use &Incoming : Cur->incoming_values()) {
tools/verify-uselistorder/verify-uselistorder.cpp
  260   for (const Use &U : V->uses()) {
  401   SmallDenseMap<const Use *, short, 16> Order;
  405     for (const Use &U : V->uses()) {
unittests/Analysis/MemorySSATest.cpp
  508   for (auto &Op : MP->incoming_values())
  572   for (const auto &Op : DefiningAccess->operands()) {
unittests/IR/WaymarkTest.cpp
   34   const Use *U = &A->getOperandUse(0);
   35   const Use *Ue = &A->getOperandUse(22);
   44   Use* many = (Use*)calloc(sizeof(Use), 8212 + 1);
   44   Use* many = (Use*)calloc(sizeof(Use), 8212 + 1);
   46   Use::initTags(many, many + 8212);
   47   for (Use *U = many, *Ue = many + 8212 - 1; U != Ue; ++U)
unittests/Support/Casting.cpp
   91 static_assert(std::is_same<simplify_type<Use>::SimpleType, Value *>::value,
   93 static_assert(std::is_same<simplify_type<Use *>::SimpleType, Value *>::value,
usr/include/c++/7.4.0/bits/alloc_traits.h
  387       using allocator_type = allocator<_Tp>;
  389       using value_type = _Tp;
  392       using pointer = _Tp*;
  395       using const_pointer = const _Tp*;
usr/include/c++/7.4.0/bits/allocator.h
  108     class allocator: public __allocator_base<_Tp>
  113       typedef _Tp*       pointer;
  114       typedef const _Tp* const_pointer;
  115       typedef _Tp&       reference;
  116       typedef const _Tp& const_reference;
  117       typedef _Tp        value_type;
  137 	allocator(const allocator<_Tp1>&) throw() { }
usr/include/c++/7.4.0/bits/move.h
   72     constexpr _Tp&&
   83     constexpr _Tp&&
usr/include/c++/7.4.0/bits/stl_construct.h
   74     _Construct(_T1* __p, _Args&&... __args)
usr/include/c++/7.4.0/bits/stl_iterator_base_types.h
  123       typedef _Tp        value_type;
  181       typedef _Tp                         value_type;
  183       typedef _Tp*                        pointer;
  184       typedef _Tp&                        reference;
  192       typedef _Tp                         value_type;
  194       typedef const _Tp*                  pointer;
  195       typedef const _Tp&                  reference;
usr/include/c++/7.4.0/bits/stl_vector.h
   77 	rebind<_Tp>::other _Tp_alloc_type;
  216     class vector : protected _Vector_base<_Tp, _Alloc>
  227       typedef _Vector_base<_Tp, _Alloc>			_Base;
  232       typedef _Tp					value_type;
  919       _Tp*
  923       const _Tp*
usr/include/c++/7.4.0/ext/alloc_traits.h
  117       { typedef typename _Base_type::template rebind_alloc<_Tp> other; };
usr/include/c++/7.4.0/ext/new_allocator.h
   63       typedef _Tp*       pointer;
   64       typedef const _Tp* const_pointer;
   65       typedef _Tp&       reference;
   66       typedef const _Tp& const_reference;
   67       typedef _Tp        value_type;
usr/include/c++/7.4.0/initializer_list
   50       typedef _E 		value_type;
   51       typedef const _E& 	reference;
   52       typedef const _E& 	const_reference;
   54       typedef const _E* 	iterator;
   55       typedef const _E* 	const_iterator;
usr/include/c++/7.4.0/type_traits
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1983     { typedef _Up     type; };
utils/unittest/googletest/include/gtest/gtest-printers.h
  140   static void PrintValue(const T& value, ::std::ostream* os) {
  205     ::std::basic_ostream<Char, CharTraits>& os, const T& x) {
  206   TypeWithoutFormatter<T,
  207       (internal::IsAProtocolMessage<T>::value ? kProtobuf :
  208        internal::ImplicitlyConvertible<const T&, internal::BiggestInt>::value ?
  223 void DefaultPrintNonContainerTo(const T& value, ::std::ostream* os) {
  276   static ::std::string Format(const ToPrint& value) {
  351     const T1& value, const T2& /* other_operand */) {
  351     const T1& value, const T2& /* other_operand */) {
  352   return FormatForComparison<T1, T2>::Format(value);
  352   return FormatForComparison<T1, T2>::Format(value);
  366 void UniversalPrint(const T& value, ::std::ostream* os);
  373                     const C& container, ::std::ostream* os) {
  407                     T* p, ::std::ostream* os) {
  416     if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {
  439                     const T& value, ::std::ostream* os) {
  455 void PrintTo(const T& value, ::std::ostream* os) {
  478   DefaultPrintTo(IsContainerTest<T>(0), is_pointer<T>(), value, os);
  699   static void Print(const T& value, ::std::ostream* os) {
  784   static void Print(const T& value, ::std::ostream* os) {
  856   typedef T T1;
  983   internal::UniversalTersePrinter<T>::Print(value, &ss);
utils/unittest/googletest/include/gtest/gtest.h
 1377                                    const T1& lhs, const T2& rhs) {
 1390                             const T2& rhs) {
 1420                                  const T2& rhs) {
utils/unittest/googletest/include/gtest/internal/custom/raw-ostream.h
   29   static const T& printable(const T& V) { return V; }
   29   static const T& printable(const T& V) { return V; }
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   37   return StreamSwitch<T>::printable(V);
utils/unittest/googletest/include/gtest/internal/gtest-internal.h
   94 ::std::string PrintToString(const T& value);