r250418 - [CodeGen] Remove dead code. NFC.

Chandler Carruth via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 20 00:07:40 PDT 2015


Is it possible to add a unittest that exercises this extension point
in-tree? For example the way I did for AA extension hooks?

On Mon, Oct 19, 2015 at 9:00 PM Michael Gottesman via cfe-commits <
cfe-commits at lists.llvm.org> wrote:

> On Oct 19, 2015, at 4:40 PM, Michael Gottesman via cfe-commits <
> cfe-commits at lists.llvm.org> wrote:
>
>
> On Oct 15, 2015, at 8:29 AM, Benjamin Kramer via cfe-commits <
> cfe-commits at lists.llvm.org> wrote:
>
> Author: d0k
> Date: Thu Oct 15 10:29:40 2015
> New Revision: 250418
>
> URL: http://llvm.org/viewvc/llvm-project?rev=250418&view=rev
> Log:
> [CodeGen] Remove dead code. NFC.
>
> Modified:
>   cfe/trunk/lib/CodeGen/CGBuiltin.cpp
>   cfe/trunk/lib/CodeGen/CGCall.cpp
>   cfe/trunk/lib/CodeGen/CGCleanup.cpp
>   cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
>   cfe/trunk/lib/CodeGen/CGDebugInfo.h
>   cfe/trunk/lib/CodeGen/CGObjC.cpp
>   cfe/trunk/lib/CodeGen/CGObjCMac.cpp
>   cfe/trunk/lib/CodeGen/CGVTables.h
>   cfe/trunk/lib/CodeGen/CodeGenABITypes.cpp
>   cfe/trunk/lib/CodeGen/CodeGenFunction.h
>   cfe/trunk/lib/CodeGen/CodeGenModule.cpp
>   cfe/trunk/lib/CodeGen/CodeGenModule.h
>   cfe/trunk/lib/CodeGen/CodeGenPGO.h
>   cfe/trunk/lib/CodeGen/EHScopeStack.h
>   cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp
>
> Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBuiltin.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Thu Oct 15 10:29:40 2015
> @@ -4106,15 +4106,6 @@ Value *CodeGenFunction::vectorWrapScalar
>  return Op;
> }
>
> -Value *CodeGenFunction::vectorWrapScalar8(Value *Op) {
> -  llvm::Type *VTy = llvm::VectorType::get(Int8Ty, 8);
> -  Op = Builder.CreateBitCast(Op, Int8Ty);
> -  Value *V = UndefValue::get(VTy);
> -  llvm::Constant *CI = ConstantInt::get(SizeTy, 0);
> -  Op = Builder.CreateInsertElement(V, Op, CI);
> -  return Op;
> -}
> -
> Value *CodeGenFunction::EmitAArch64BuiltinExpr(unsigned BuiltinID,
>                                               const CallExpr *E) {
>  unsigned HintID = static_cast<unsigned>(-1);
>
> Modified: cfe/trunk/lib/CodeGen/CGCall.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGCall.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGCall.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGCall.cpp Thu Oct 15 10:29:40 2015
> @@ -3038,12 +3038,6 @@ CodeGenFunction::EmitRuntimeCallOrInvoke
>  return callSite;
> }
>
> -llvm::CallSite
> -CodeGenFunction::EmitCallOrInvoke(llvm::Value *Callee,
> -                                  const Twine &Name) {
> -  return EmitCallOrInvoke(Callee, None, Name);
> -}
> -
> /// Emits a call or invoke instruction to the given function, depending
> /// on the current state of the EH stack.
> llvm::CallSite
>
> Modified: cfe/trunk/lib/CodeGen/CGCleanup.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGCleanup.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGCleanup.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGCleanup.cpp Thu Oct 15 10:29:40 2015
> @@ -167,23 +167,6 @@ EHScopeStack::getInnermostActiveNormalCl
>  return stable_end();
> }
>
> -EHScopeStack::stable_iterator EHScopeStack::getInnermostActiveEHScope()
> const {
> -  for (stable_iterator si = getInnermostEHScope(), se = stable_end();
> -         si != se; ) {
> -    // Skip over inactive cleanups.
> -    EHCleanupScope *cleanup = dyn_cast<EHCleanupScope>(&*find(si));
> -    if (cleanup && !cleanup->isActive()) {
> -      si = cleanup->getEnclosingEHScope();
> -      continue;
> -    }
> -
> -    // All other scopes are always active.
> -    return si;
> -  }
> -
> -  return stable_end();
> -}
> -
>
> void *EHScopeStack::pushCleanup(CleanupKind Kind, size_t Size) {
>  char *Buffer = allocate(EHCleanupScope::getSizeForCleanupSize(Size));
>
> Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDebugInfo.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGDebugInfo.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGDebugInfo.cpp Thu Oct 15 10:29:40 2015
> @@ -2159,30 +2159,6 @@ llvm::DIType *CGDebugInfo::getOrCreateTy
>  return Res;
> }
>
> -unsigned CGDebugInfo::Checksum(const ObjCInterfaceDecl *ID) {
> -  // The assumption is that the number of ivars can only increase
> -  // monotonically, so it is safe to just use their current number as
> -  // a checksum.
> -  unsigned Sum = 0;
> -  for (const ObjCIvarDecl *Ivar = ID->all_declared_ivar_begin();
> -       Ivar != nullptr; Ivar = Ivar->getNextIvar())
> -    ++Sum;
> -
> -  return Sum;
> -}
> -
> -ObjCInterfaceDecl *CGDebugInfo::getObjCInterfaceDecl(QualType Ty) {
> -  switch (Ty->getTypeClass()) {
> -  case Type::ObjCObjectPointer:
> -    return getObjCInterfaceDecl(
> -        cast<ObjCObjectPointerType>(Ty)->getPointeeType());
> -  case Type::ObjCInterface:
> -    return cast<ObjCInterfaceType>(Ty)->getDecl();
> -  default:
> -    return nullptr;
> -  }
> -}
> -
> llvm::DIModule *CGDebugInfo::getParentModuleOrNull(const Decl *D) {
>  // A forward declaration inside a module header does not belong to the
> module.
>  if (isa<RecordDecl>(D) && !cast<RecordDecl>(D)->getDefinition())
>
> Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDebugInfo.h?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGDebugInfo.h (original)
> +++ cfe/trunk/lib/CodeGen/CGDebugInfo.h Thu Oct 15 10:29:40 2015
> @@ -135,12 +135,6 @@ class CGDebugInfo {
>      NamespaceAliasCache;
>  llvm::DenseMap<const Decl *,
> llvm::TypedTrackingMDRef<llvm::DIDerivedType>>
>      StaticDataMemberCache;
> -
> -  /// Helper functions for getOrCreateType.
> -  /// @{
> -  /// Currently the checksum of an interface includes the number of
> -  /// ivars and property accessors.
> -  unsigned Checksum(const ObjCInterfaceDecl *InterfaceDecl);
>  llvm::DIType *CreateType(const BuiltinType *Ty);
>  llvm::DIType *CreateType(const ComplexType *Ty);
>  llvm::DIType *CreateQualifiedType(QualType Ty, llvm::DIFile *Fg);
> @@ -199,11 +193,8 @@ class CGDebugInfo {
>  llvm::DIType *getOrCreateVTablePtrType(llvm::DIFile *F);
>  /// \return namespace descriptor for the given namespace decl.
>  llvm::DINamespace *getOrCreateNameSpace(const NamespaceDecl *N);
> -  llvm::DIType *getOrCreateTypeDeclaration(QualType PointeeTy,
> llvm::DIFile *F);
>  llvm::DIType *CreatePointerLikeType(llvm::dwarf::Tag Tag, const Type *Ty,
>                                      QualType PointeeTy, llvm::DIFile *F);
> -
> -  llvm::Value *getCachedInterfaceTypeOrNull(const QualType Ty);
>  llvm::DIType *getOrCreateStructPtrType(StringRef Name, llvm::DIType
> *&Cache);
>
>  /// A helper function to create a subprogram for a single member
> @@ -435,10 +426,6 @@ private:
>  /// Create type metadata for a source language type.
>  llvm::DIType *CreateTypeNode(QualType Ty, llvm::DIFile *Fg);
>
> -  /// Return the underlying ObjCInterfaceDecl if \arg Ty is an
> -  /// ObjCInterface or a pointer to one.
> -  ObjCInterfaceDecl *getObjCInterfaceDecl(QualType Ty);
> -
>  /// Create new member and increase Offset by FType's size.
>  llvm::DIType *CreateMemberType(llvm::DIFile *Unit, QualType FType,
>                                 StringRef Name, uint64_t *Offset);
> @@ -587,12 +574,6 @@ public:
>    return ApplyDebugLocation(CGF, true, SourceLocation());
>  }
>
> -  /// \brief Apply TemporaryLocation if it is valid. Otherwise set the
> IRBuilder
> -  /// to not attach debug locations.
> -  static ApplyDebugLocation
> -  CreateDefaultEmpty(CodeGenFunction &CGF, SourceLocation
> TemporaryLocation) {
> -    return ApplyDebugLocation(CGF, true, TemporaryLocation);
> -  }
> };
>
> } // namespace CodeGen
>
> Modified: cfe/trunk/lib/CodeGen/CGObjC.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGObjC.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGObjC.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGObjC.cpp Thu Oct 15 10:29:40 2015
> @@ -1410,22 +1410,6 @@ void CodeGenFunction::GenerateObjCCtorDt
>  FinishFunction();
> }
>
> -bool CodeGenFunction::IndirectObjCSetterArg(const CGFunctionInfo &FI) {
> -  CGFunctionInfo::const_arg_iterator it = FI.arg_begin();
> -  it++; it++;
> -  const ABIArgInfo &AI = it->info;
> -  // FIXME. Is this sufficient check?
> -  return (AI.getKind() == ABIArgInfo::Indirect);
> -}
> -
> -bool CodeGenFunction::IvarTypeWithAggrGCObjects(QualType Ty) {
> -  if (CGM.getLangOpts().getGC() == LangOptions::NonGC)
> -    return false;
> -  if (const RecordType *FDTTy = Ty.getTypePtr()->getAs<RecordType>())
> -    return FDTTy->getDecl()->hasObjectMember();
> -  return false;
> -}
> -
> llvm::Value *CodeGenFunction::LoadObjCSelf() {
>  VarDecl *Self = cast<ObjCMethodDecl>(CurFuncDecl)->getSelfDecl();
>  DeclRefExpr DRE(Self, /*is enclosing local*/ (CurFuncDecl != CurCodeDecl),
> @@ -1745,13 +1729,6 @@ void CodeGenFunction::EmitObjCAtSynchron
>  CGM.getObjCRuntime().EmitSynchronizedStmt(*this, S);
> }
>
> -/// Produce the code for a CK_ARCProduceObject.  Just does a
> -/// primitive retain.
> -llvm::Value *CodeGenFunction::EmitObjCProduceObject(QualType type,
> -                                                    llvm::Value *value) {
> -  return EmitARCRetain(type, value);
> -}
> -
> namespace {
>  struct CallObjCRelease final : EHScopeStack::Cleanup {
>    CallObjCRelease(llvm::Value *object) : object(object) {}
> @@ -2187,14 +2164,6 @@ CodeGenFunction::EmitARCRetainAutoreleas
>                               "objc_retainAutorelease");
> }
>
> -/// i8* \@objc_loadWeak(i8** %addr)
> -/// Essentially objc_autorelease(objc_loadWeakRetained(addr)).
> -llvm::Value *CodeGenFunction::EmitARCLoadWeak(Address addr) {
> -  return emitARCLoadOperation(*this, addr,
> -                              CGM.getARCEntrypoints().objc_loadWeak,
> -                              "objc_loadWeak");
> -}
> -
> /// i8* \@objc_loadWeakRetained(i8** %addr)
> llvm::Value *CodeGenFunction::EmitARCLoadWeakRetained(Address addr) {
>  return emitARCLoadOperation(*this, addr,
>
> Modified: cfe/trunk/lib/CodeGen/CGObjCMac.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGObjCMac.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGObjCMac.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CGObjCMac.cpp Thu Oct 15 10:29:40 2015
> @@ -659,9 +659,6 @@ public:
>  // MessageRefCPtrTy - clang type for struct _message_ref_t*
>  QualType MessageRefCPtrTy;
>
> -  // MessengerTy - Type of the messenger (shown as IMP above)
> -  llvm::FunctionType *MessengerTy;
> -
>  // SuperMessageRefTy - LLVM for:
>  // struct _super_message_ref_t {
>  //   SUPER_IMP messenger;
>
> Modified: cfe/trunk/lib/CodeGen/CGVTables.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGVTables.h?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CGVTables.h (original)
> +++ cfe/trunk/lib/CodeGen/CGVTables.h Thu Oct 15 10:29:40 2015
> @@ -85,10 +85,6 @@ public:
>  uint64_t getSecondaryVirtualPointerIndex(const CXXRecordDecl *RD,
>                                           BaseSubobject Base);
>
> -  /// getAddressPoint - Get the address point of the given subobject in
> the
> -  /// class decl.
> -  uint64_t getAddressPoint(BaseSubobject Base, const CXXRecordDecl *RD);
> -
>  /// GenerateConstructionVTable - Generate a construction vtable for the
> given
>  /// base subobject.
>  llvm::GlobalVariable *
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenABITypes.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenABITypes.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenABITypes.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenABITypes.cpp Thu Oct 15 10:29:40 2015
> @@ -36,35 +36,3 @@ CodeGenABITypes::CodeGenABITypes(ASTCont
> // Explicitly out-of-line because ~CodeGenModule() is private but
> // CodeGenABITypes.h is part of clang's API.
> CodeGenABITypes::~CodeGenABITypes() = default;
> -
> -const CGFunctionInfo &
> -CodeGenABITypes::arrangeObjCMessageSendSignature(const ObjCMethodDecl *MD,
> -                                                 QualType receiverType) {
> -  return CGM->getTypes().arrangeObjCMessageSendSignature(MD,
> receiverType);
> -}
> -
> -const CGFunctionInfo &
> -CodeGenABITypes::arrangeFreeFunctionType(CanQual<FunctionProtoType> Ty) {
> -  return CGM->getTypes().arrangeFreeFunctionType(Ty);
> -}
> -
> -const CGFunctionInfo &
> -CodeGenABITypes::arrangeFreeFunctionType(CanQual<FunctionNoProtoType> Ty)
> {
> -  return CGM->getTypes().arrangeFreeFunctionType(Ty);
> -}
> -
> -const CGFunctionInfo &
> -CodeGenABITypes::arrangeCXXMethodType(const CXXRecordDecl *RD,
> -                                      const FunctionProtoType *FTP) {
> -  return CGM->getTypes().arrangeCXXMethodType(RD, FTP);
> -}
> -
> -const CGFunctionInfo &
> -CodeGenABITypes::arrangeFreeFunctionCall(CanQualType returnType,
> -                                         ArrayRef<CanQualType> argTypes,
> -                                         FunctionType::ExtInfo info,
> -                                         RequiredArgs args) {
> -  return CGM->getTypes().arrangeLLVMFunctionInfo(
> -      returnType, /*IsInstanceMethod=*/false, /*IsChainCall=*/false,
> argTypes,
> -      info, args);
> -}
>
>
> This code in CodeGenABITypes.cpp is not dead. It is intended to be used by
> external clients (so it appears to be dead = /) and is the only
> implementation of these methods for CodeGenABITypes. So if external clients
> try to use these methods, a linker error will result (defeating the purpose
> of providing this API).
>
> Can you revert just the changes in CodeGenABITypes.cpp?
>
> How did you determine that this was dead (maybe I can slap some sort of
> warning removal on it so it won't come up again or at least a large
> comment).
>
>
> (I am happy to make the change as well. Forgot to add that).
>
> Michael
>
>
> Thanks!
> Michael
>
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenFunction.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenFunction.h?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenFunction.h (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenFunction.h Thu Oct 15 10:29:40 2015
> @@ -250,10 +250,6 @@ public:
>    ~CGCapturedStmtRAII() { CGF.CapturedStmtInfo = PrevCapturedStmtInfo; }
>  };
>
> -  /// BoundsChecking - Emit run-time bounds checks. Higher values mean
> -  /// potentially higher performance penalties.
> -  unsigned char BoundsChecking;
> -
>  /// \brief Sanitizers enabled for this function.
>  SanitizerSet SanOpts;
>
> @@ -1237,8 +1233,6 @@ public:
>  void generateObjCSetterBody(const ObjCImplementationDecl *classImpl,
>                              const ObjCPropertyImplDecl *propImpl,
>                              llvm::Constant *AtomicHelperFn);
> -  bool IndirectObjCSetterArg(const CGFunctionInfo &FI);
> -  bool IvarTypeWithAggrGCObjects(QualType Ty);
>
>
>  //===--------------------------------------------------------------------===//
>  //                                  Block Bits
> @@ -1247,10 +1241,6 @@ public:
>  llvm::Value *EmitBlockLiteral(const BlockExpr *);
>  llvm::Value *EmitBlockLiteral(const CGBlockInfo &Info);
>  static void destroyBlockInfos(CGBlockInfo *info);
> -  llvm::Constant *BuildDescriptorBlockDecl(const BlockExpr *,
> -                                           const CGBlockInfo &Info,
> -                                           llvm::StructType *,
> -                                           llvm::Constant
> *BlockVarLayout);
>
>  llvm::Function *GenerateBlockFunction(GlobalDecl GD,
>                                        const CGBlockInfo &Info,
> @@ -1276,9 +1266,6 @@ public:
>                                llvm::Value *ptr);
>
>  Address LoadBlockStruct();
> -
> -  void AllocateBlockCXXThisPointer(const CXXThisExpr *E);
> -  void AllocateBlockDecl(const DeclRefExpr *E);
>  Address GetAddrOfBlockDecl(const VarDecl *var, bool ByRef);
>
>  /// BuildBlockByrefAddress - Computes the location of the
> @@ -1627,10 +1614,6 @@ public:
>                                 AggValueSlot::IsNotAliased);
>  }
>
> -  /// CreateInAllocaTmp - Create a temporary memory object for the given
> -  /// aggregate type.
> -  AggValueSlot CreateInAllocaTmp(QualType T, const Twine &Name =
> "inalloca");
> -
>  /// Emit a cast to void* in the appropriate address space.
>  llvm::Value *EmitCastToVoidPtr(llvm::Value *value);
>
> @@ -1711,10 +1694,6 @@ public:
>                         QualType EltTy, bool isVolatile=false,
>                         bool isAssignment = false);
>
> -  /// StartBlock - Start new block named N. If insert block is a dummy
> block
> -  /// then reuse it.
> -  void StartBlock(const char *N);
> -
>  /// GetAddrOfLocalVar - Return the address of a local variable.
>  Address GetAddrOfLocalVar(const VarDecl *VD) {
>    auto it = LocalDeclMap.find(VD);
> @@ -1811,14 +1790,6 @@ public:
>    return CXXStructorImplicitParamValue;
>  }
>
> -  /// LoadCXXStructorImplicitParam - Load the implicit parameter
> -  /// for a constructor/destructor.
> -  llvm::Value *LoadCXXStructorImplicitParam() {
> -    assert(CXXStructorImplicitParamValue &&
> -           "no implicit argument value for this function");
> -    return CXXStructorImplicitParamValue;
> -  }
> -
>  /// GetAddressOfBaseOfCompleteClass - Convert the given pointer to a
>  /// complete class to the given direct base.
>  Address
> @@ -2549,7 +2520,6 @@ public:
>  // Note: only available for agg return types
>  LValue EmitVAArgExprLValue(const VAArgExpr *E);
>  LValue EmitDeclRefLValue(const DeclRefExpr *E);
> -  LValue EmitReadRegister(const VarDecl *VD);
>  LValue EmitStringLiteralLValue(const StringLiteral *E);
>  LValue EmitObjCEncodeExprLValue(const ObjCEncodeExpr *E);
>  LValue EmitPredefinedLValue(const PredefinedExpr *E);
> @@ -2677,8 +2647,6 @@ public:
>  llvm::CallSite EmitCallOrInvoke(llvm::Value *Callee,
>                                  ArrayRef<llvm::Value *> Args,
>                                  const Twine &Name = "");
> -  llvm::CallSite EmitCallOrInvoke(llvm::Value *Callee,
> -                                  const Twine &Name = "");
>  llvm::CallSite EmitRuntimeCallOrInvoke(llvm::Value *callee,
>                                         ArrayRef<llvm::Value*> args,
>                                         const Twine &name = "");
> @@ -2765,8 +2733,6 @@ public:
>                                   bool negateForRightShift);
>  llvm::Value *EmitNeonRShiftImm(llvm::Value *Vec, llvm::Value *Amt,
>                                 llvm::Type *Ty, bool usgn, const char
> *name);
> -  // Helper functions for EmitAArch64BuiltinExpr.
> -  llvm::Value *vectorWrapScalar8(llvm::Value *Op);
>  llvm::Value *vectorWrapScalar16(llvm::Value *Op);
>  llvm::Value *EmitAArch64BuiltinExpr(unsigned BuiltinID, const CallExpr
> *E);
>
> @@ -2800,7 +2766,6 @@ public:
>  // ARC primitives.
>  void EmitARCInitWeak(Address addr, llvm::Value *value);
>  void EmitARCDestroyWeak(Address addr);
> -  llvm::Value *EmitARCLoadWeak(Address addr);
>  llvm::Value *EmitARCLoadWeakRetained(Address addr);
>  llvm::Value *EmitARCStoreWeak(Address addr, llvm::Value *value, bool
> ignored);
>  void EmitARCCopyWeak(Address dst, Address src);
> @@ -2827,8 +2792,6 @@ public:
>  EmitARCStoreStrong(const BinaryOperator *e, bool ignored);
>
>  llvm::Value *EmitObjCThrowOperand(const Expr *expr);
> -
> -  llvm::Value *EmitObjCProduceObject(QualType T, llvm::Value *Ptr);
>  llvm::Value *EmitObjCConsumeObject(QualType T, llvm::Value *Ptr);
>  llvm::Value *EmitObjCExtendObjectLifetime(QualType T, llvm::Value *Ptr);
>
> @@ -2881,11 +2844,6 @@ public:
>  /// aggregate type into a temporary LValue.
>  LValue EmitAggExprToLValue(const Expr *E);
>
> -  /// EmitGCMemmoveCollectable - Emit special API for structs with object
> -  /// pointers.
> -  void EmitGCMemmoveCollectable(llvm::Value *DestPtr, llvm::Value *SrcPtr,
> -                                QualType Ty);
> -
>  /// EmitExtendGCLifetime - Given a pointer to an Objective-C object,
>  /// make sure it survives garbage collection until this point.
>  void EmitExtendGCLifetime(llvm::Value *object);
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenModule.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenModule.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenModule.cpp (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenModule.cpp Thu Oct 15 10:29:40 2015
> @@ -489,12 +489,6 @@ llvm::MDNode *CodeGenModule::getTBAAStru
>  return TBAA->getTBAAStructInfo(QTy);
> }
>
> -llvm::MDNode *CodeGenModule::getTBAAStructTypeInfo(QualType QTy) {
> -  if (!TBAA)
> -    return nullptr;
> -  return TBAA->getTBAAStructTypeInfo(QTy);
> -}
> -
> llvm::MDNode *CodeGenModule::getTBAAStructTagInfo(QualType BaseTy,
>                                                  llvm::MDNode *AccessN,
>                                                  uint64_t O) {
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenModule.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenModule.h?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenModule.h (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenModule.h Thu Oct 15 10:29:40 2015
> @@ -643,8 +643,6 @@ public:
>  llvm::MDNode *getTBAAInfo(QualType QTy);
>  llvm::MDNode *getTBAAInfoForVTablePtr();
>  llvm::MDNode *getTBAAStructInfo(QualType QTy);
> -  /// Return the MDNode in the type DAG for the given struct type.
> -  llvm::MDNode *getTBAAStructTypeInfo(QualType QTy);
>  /// Return the path-aware tag for given base type, access node and offset.
>  llvm::MDNode *getTBAAStructTagInfo(QualType BaseTy, llvm::MDNode *AccessN,
>                                     uint64_t O);
> @@ -991,9 +989,6 @@ public:
>
>  void EmitVTable(CXXRecordDecl *Class);
>
> -  /// Emit the RTTI descriptors for the builtin types.
> -  void EmitFundamentalRTTIDescriptors();
> -
>  /// \brief Appends Opts to the "Linker Options" metadata value.
>  void AppendLinkerOptions(StringRef Opts);
>
> @@ -1073,13 +1068,6 @@ public:
>  /// are emitted lazily.
>  void EmitGlobal(GlobalDecl D);
>
> -  bool
> -  HasTrivialDestructorBody(ASTContext &Context,
> -                           const CXXRecordDecl *BaseClassDecl,
> -                           const CXXRecordDecl *MostDerivedClassDecl);
> -  bool
> -  FieldHasTrivialDestructorBody(ASTContext &Context, const FieldDecl
> *Field);
> -
>  bool TryEmitDefinitionAsAlias(GlobalDecl Alias, GlobalDecl Target,
>                                bool InEveryTU);
>  bool TryEmitBaseDestructorAsAlias(const CXXDestructorDecl *D);
> @@ -1192,9 +1180,6 @@ private:
>  /// as a LLVM constructor or destructor array.
>  void EmitCtorList(const CtorList &Fns, const char *GlobalName);
>
> -  /// Emit the RTTI descriptors for the given type.
> -  void EmitFundamentalRTTIDescriptor(QualType Type);
> -
>  /// Emit any needed decls for which code generation was deferred.
>  void EmitDeferred();
>
>
> Modified: cfe/trunk/lib/CodeGen/CodeGenPGO.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenPGO.h?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/CodeGenPGO.h (original)
> +++ cfe/trunk/lib/CodeGen/CodeGenPGO.h Thu Oct 15 10:29:40 2015
> @@ -99,7 +99,6 @@ private:
>                               llvm::Function *Fn);
>  void loadRegionCounts(llvm::IndexedInstrProfReader *PGOReader,
>                        bool IsInMainFile);
> -  void emitCounterVariables();
>  void emitCounterRegionMapping(const Decl *D);
>
> public:
>
> Modified: cfe/trunk/lib/CodeGen/EHScopeStack.h
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/EHScopeStack.h?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/EHScopeStack.h (original)
> +++ cfe/trunk/lib/CodeGen/EHScopeStack.h Thu Oct 15 10:29:40 2015
> @@ -365,7 +365,6 @@ public:
>    return InnermostEHScope;
>  }
>
> -  stable_iterator getInnermostActiveEHScope() const;
>
>  /// An unstable reference to a scope-stack depth.  Invalidated by
>  /// pushes but not pops.
> @@ -396,9 +395,6 @@ public:
>  /// to the EH stack.
>  iterator find(stable_iterator save) const;
>
> -  /// Removes the cleanup pointed to by the given stable_iterator.
> -  void removeCleanup(stable_iterator save);
> -
>  /// Add a branch fixup to the current cleanup scope.
>  BranchFixup &addBranchFixup() {
>    assert(hasNormalCleanups() && "adding fixup in scope without cleanups");
>
> Modified: cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp?rev=250418&r1=250417&r2=250418&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp (original)
> +++ cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp Thu Oct 15 10:29:40 2015
> @@ -46,7 +46,7 @@ public:
>      : CGCXXABI(CGM), BaseClassDescriptorType(nullptr),
>        ClassHierarchyDescriptorType(nullptr),
>        CompleteObjectLocatorType(nullptr), CatchableTypeType(nullptr),
> -        ThrowInfoType(nullptr), CatchHandlerTypeType(nullptr) {}
> +        ThrowInfoType(nullptr) {}
>
>  bool HasThisReturn(GlobalDecl GD) const override;
>  bool hasMostDerivedReturn(GlobalDecl GD) const override;
> @@ -534,14 +534,6 @@ private:
>    return  llvm::Constant::getAllOnesValue(CGM.IntTy);
>  }
>
> -  llvm::Constant *getConstantOrZeroInt(llvm::Constant *C) {
> -    return C ? C : getZeroInt();
> -  }
> -
> -  llvm::Value *getValueOrZeroInt(llvm::Value *C) {
> -    return C ? C : getZeroInt();
> -  }
> -
>  CharUnits getVirtualFunctionPrologueThisAdjustment(GlobalDecl GD);
>
>  void
> @@ -659,18 +651,6 @@ public:
>
>  void emitCXXStructor(const CXXMethodDecl *MD, StructorType Type) override;
>
> -  llvm::StructType *getCatchHandlerTypeType() {
> -    if (!CatchHandlerTypeType) {
> -      llvm::Type *FieldTypes[] = {
> -          CGM.IntTy,     // Flags
> -          CGM.Int8PtrTy, // TypeDescriptor
> -      };
> -      CatchHandlerTypeType = llvm::StructType::create(
> -          CGM.getLLVMContext(), FieldTypes, "eh.CatchHandlerType");
> -    }
> -    return CatchHandlerTypeType;
> -  }
> -
>  llvm::StructType *getCatchableTypeType() {
>    if (CatchableTypeType)
>      return CatchableTypeType;
> @@ -786,7 +766,6 @@ private:
>  llvm::StructType *CatchableTypeType;
>  llvm::DenseMap<uint32_t, llvm::StructType *> CatchableTypeArrayTypeMap;
>  llvm::StructType *ThrowInfoType;
> -  llvm::StructType *CatchHandlerTypeType;
> };
>
> }
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
> _______________________________________________
> 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/20151020/37e6d971/attachment-0001.html>


More information about the cfe-commits mailing list