diff options
| author | Tim Northover <tnorthover@apple.com> | 2019-07-11 13:13:02 +0000 |
|---|---|---|
| committer | Tim Northover <tnorthover@apple.com> | 2019-07-11 13:13:02 +0000 |
| commit | 67828edbbd6f7b63149056b37d7ece10691d23ae (patch) | |
| tree | 4909a8924a8709c60aa59d8095fcac4f34e6e049 | |
| parent | f2d6597653e56abfa2971c389dd9f2e469767b46 (diff) | |
| download | bcm5719-llvm-67828edbbd6f7b63149056b37d7ece10691d23ae.tar.gz bcm5719-llvm-67828edbbd6f7b63149056b37d7ece10691d23ae.zip | |
OpaquePtr: switch to GlobalValue::getValueType in a few places. NFC.
llvm-svn: 365770
| -rw-r--r-- | llvm/lib/Analysis/MemoryBuiltins.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 4 | ||||
| -rw-r--r-- | llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp | 7 |
3 files changed, 5 insertions, 8 deletions
diff --git a/llvm/lib/Analysis/MemoryBuiltins.cpp b/llvm/lib/Analysis/MemoryBuiltins.cpp index d73419fad6a..729dad46365 100644 --- a/llvm/lib/Analysis/MemoryBuiltins.cpp +++ b/llvm/lib/Analysis/MemoryBuiltins.cpp @@ -724,7 +724,7 @@ SizeOffsetType ObjectSizeOffsetVisitor::visitGlobalVariable(GlobalVariable &GV){ if (!GV.hasDefinitiveInitializer()) return unknown(); - APInt Size(IntTyBits, DL.getTypeAllocSize(GV.getType()->getElementType())); + APInt Size(IntTyBits, DL.getTypeAllocSize(GV.getValueType())); return std::make_pair(align(Size, GV.getAlignment()), Zero); } diff --git a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp index 9a2e0f58dad..174a9bcfd9b 100644 --- a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp @@ -495,7 +495,7 @@ void AsmPrinter::EmitGlobalVariable(const GlobalVariable *GV) { SectionKind GVKind = TargetLoweringObjectFile::getKindForGlobal(GV, TM); const DataLayout &DL = GV->getParent()->getDataLayout(); - uint64_t Size = DL.getTypeAllocSize(GV->getType()->getElementType()); + uint64_t Size = DL.getTypeAllocSize(GV->getValueType()); // If the alignment is specified, we *must* obey it. Overaligning a global // with a specified alignment is a prompt way to break globals emitted to @@ -1300,7 +1300,7 @@ void AsmPrinter::emitGlobalIndirectSymbol(Module &M, else assert(GIS.hasLocalLinkage() && "Invalid alias or ifunc linkage"); - bool IsFunction = GIS.getType()->getPointerElementType()->isFunctionTy(); + bool IsFunction = GIS.getValueType()->isFunctionTy(); // Treat bitcasts of functions as functions also. This is important at least // on WebAssembly where object and function addresses can't alias each other. diff --git a/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp b/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp index d797ce2f4ee..fdcc41a4ca4 100644 --- a/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp +++ b/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp @@ -238,10 +238,7 @@ bool HexagonTargetObjectFile::isGlobalInSmallSection(const GlobalObject *GO, return false; } - Type *GType = GVar->getType(); - if (PointerType *PT = dyn_cast<PointerType>(GType)) - GType = PT->getElementType(); - + Type *GType = GVar->getValueType(); if (isa<ArrayType>(GType)) { LLVM_DEBUG(dbgs() << "no, is an array\n"); return false; @@ -341,7 +338,7 @@ unsigned HexagonTargetObjectFile::getSmallestAddressableSize(const Type *Ty, MCSection *HexagonTargetObjectFile::selectSmallSectionForGlobal( const GlobalObject *GO, SectionKind Kind, const TargetMachine &TM) const { - const Type *GTy = GO->getType()->getElementType(); + const Type *GTy = GO->getValueType(); unsigned Size = getSmallestAddressableSize(GTy, GO, TM); // If we have -ffunction-section or -fdata-section then we should emit the |

