r301815 - Adapt to LLVM's rename of WeakVH to WeakTrackingVH; NFC

Yaron Keren via cfe-commits cfe-commits at lists.llvm.org
Wed May 3 02:11:04 PDT 2017


out-of-tree code that uses WeakVH will continue to compile OK but may not
perform OK with WeakVH not tracking anymore.
May be better not to reuse WeakVH yet so such code will fail compilation.


‫בתאריך יום ב׳, 1 במאי 2017 ב-20:21 מאת ‪Sanjoy Das via cfe-commits‬‏ <‪
cfe-commits at lists.llvm.org‬‏>:‬

> Author: sanjoy
> Date: Mon May  1 12:08:00 2017
> New Revision: 301815
>
> URL: http://llvm.org/viewvc/llvm-project?rev=301815&view=rev
> Log:
> Adapt to LLVM's rename of WeakVH to WeakTrackingVH; NFC
>
> Modified:
>     cfe/trunk/lib/CodeGen/CGDeclCXX.cpp
>     cfe/trunk/lib/CodeGen/CGObjCMac.cpp
>     cfe/trunk/lib/CodeGen/CodeGenFunction.h
>     cfe/trunk/lib/CodeGen/CodeGenModule.cpp
>     cfe/trunk/lib/CodeGen/CodeGenModule.h
>
> Modified: cfe/trunk/lib/CodeGen/CGDeclCXX.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDeclCXX.cpp?rev=301815&r1=301814&r2=301815&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGDeclCXX.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGDeclCXX.cpp Mon May  1 12:08:00 2017
> @@ -571,9 +571,10 @@ CodeGenFunction::GenerateCXXGlobalInitFu
>    FinishFunction();
>  }
>
> -void CodeGenFunction::GenerateCXXGlobalDtorsFunc(llvm::Function *Fn,
> -                  const std::vector<std::pair<llvm::WeakVH,
> llvm::Constant*> >
> -                                                &DtorsAndObjects) {
> +void CodeGenFunction::GenerateCXXGlobalDtorsFunc(
> +    llvm::Function *Fn,
> +    const std::vector<std::pair<llvm::WeakTrackingVH, llvm::Constant *>>
> +        &DtorsAndObjects) {
>    {
>      auto NL = ApplyDebugLocation::CreateEmpty(*this);
>      StartFunction(GlobalDecl(), getContext().VoidTy, Fn,
>
> Modified: cfe/trunk/lib/CodeGen/CGObjCMac.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGObjCMac.cpp?rev=301815&r1=301814&r2=301815&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGObjCMac.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGObjCMac.cpp Mon May  1 12:08:00 2017
> @@ -886,7 +886,7 @@ protected:
>
>    /// Cached reference to the class for constant strings. This value has
> type
>    /// int * but is actually an Obj-C class pointer.
> -  llvm::WeakVH ConstantStringClassRef;
> +  llvm::WeakTrackingVH ConstantStringClassRef;
>
>    /// \brief The LLVM type corresponding to NSConstantString.
>    llvm::StructType *NSConstantStringType = nullptr;
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenFunction.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenFunction.h?rev=301815&r1=301814&r2=301815&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenFunction.h (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenFunction.h Mon May  1 12:08:00 2017
> @@ -3471,9 +3471,10 @@ public:
>
>    /// GenerateCXXGlobalDtorsFunc - Generates code for destroying global
>    /// variables.
> -  void GenerateCXXGlobalDtorsFunc(llvm::Function *Fn,
> -                                  const
> std::vector<std::pair<llvm::WeakVH,
> -                                  llvm::Constant*> > &DtorsAndObjects);
> +  void GenerateCXXGlobalDtorsFunc(
> +      llvm::Function *Fn,
> +      const std::vector<std::pair<llvm::WeakTrackingVH, llvm::Constant *>>
> +          &DtorsAndObjects);
>
>    void GenerateCXXGlobalVarDeclInitFunc(llvm::Function *Fn,
>                                          const VarDecl *D,
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenModule.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenModule.cpp?rev=301815&r1=301814&r2=301815&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenModule.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenModule.cpp Mon May  1 12:08:00 2017
> @@ -1154,7 +1154,7 @@ void CodeGenModule::addCompilerUsedGloba
>  }
>
>  static void emitUsed(CodeGenModule &CGM, StringRef Name,
> -                     std::vector<llvm::WeakVH> &List) {
> +                     std::vector<llvm::WeakTrackingVH> &List) {
>    // Don't create llvm.used if there is no need.
>    if (List.empty())
>      return;
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenModule.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenModule.h?rev=301815&r1=301814&r2=301815&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenModule.h (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenModule.h Mon May  1 12:08:00 2017
> @@ -344,8 +344,8 @@ private:
>    /// List of global values which are required to be present in the
> object file;
>    /// bitcast to i8*. This is used for forcing visibility of symbols
> which may
>    /// otherwise be optimized out.
> -  std::vector<llvm::WeakVH> LLVMUsed;
> -  std::vector<llvm::WeakVH> LLVMCompilerUsed;
> +  std::vector<llvm::WeakTrackingVH> LLVMUsed;
> +  std::vector<llvm::WeakTrackingVH> LLVMCompilerUsed;
>
>    /// Store the list of global constructors and their respective
> priorities to
>    /// be emitted when the translation unit is complete.
> @@ -416,7 +416,7 @@ private:
>    SmallVector<GlobalInitData, 8> PrioritizedCXXGlobalInits;
>
>    /// Global destructor functions and arguments that need to run on
> termination.
> -  std::vector<std::pair<llvm::WeakVH,llvm::Constant*> > CXXGlobalDtors;
> +  std::vector<std::pair<llvm::WeakTrackingVH, llvm::Constant *>>
> CXXGlobalDtors;
>
>    /// \brief The complete set of modules that has been imported.
>    llvm::SetVector<clang::Module *> ImportedModules;
> @@ -433,7 +433,7 @@ private:
>
>    /// Cached reference to the class for constant strings. This value has
> type
>    /// int * but is actually an Obj-C class pointer.
> -  llvm::WeakVH CFConstantStringClassRef;
> +  llvm::WeakTrackingVH CFConstantStringClassRef;
>
>    /// \brief The type used to describe the state of a fast enumeration in
>    /// Objective-C's for..in loop.
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170503/984d26d8/attachment.html>


More information about the cfe-commits mailing list