diff options
author | David Blaikie <dblaikie@gmail.com> | 2015-04-29 21:22:39 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2015-04-29 21:22:39 +0000 |
commit | f64246be723d3acae52227e7ed612595c6a84d46 (patch) | |
tree | 72875d5a5a0a942f599df1cc831240ce89bcccfa /llvm/lib/AsmParser | |
parent | 6e0ebaea1fe18543bf5a371bba769a86f37d688d (diff) | |
download | bcm5719-llvm-f64246be723d3acae52227e7ed612595c6a84d46.tar.gz bcm5719-llvm-f64246be723d3acae52227e7ed612595c6a84d46.zip |
[opaque pointer type] Pass GlobalAlias the actual pointer type rather than decomposing it into pointee type + address space
Many of the callers already have the pointer type anyway, and for the
couple of callers that don't it's pretty easy to call PointerType::get
on the pointee type and address space.
This avoids LLParser from using PointerType::getElementType when parsing
GlobalAliases from IR.
llvm-svn: 236160
Diffstat (limited to 'llvm/lib/AsmParser')
-rw-r--r-- | llvm/lib/AsmParser/LLParser.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/AsmParser/LLParser.cpp b/llvm/lib/AsmParser/LLParser.cpp index 1a2e1f85e81..e69fa3828ed 100644 --- a/llvm/lib/AsmParser/LLParser.cpp +++ b/llvm/lib/AsmParser/LLParser.cpp @@ -663,13 +663,11 @@ bool LLParser::ParseAlias(const std::string &Name, LocTy NameLoc, unsigned L, auto *PTy = dyn_cast<PointerType>(AliaseeType); if (!PTy) return Error(AliaseeLoc, "An alias must have pointer type"); - Type *Ty = PTy->getElementType(); - unsigned AddrSpace = PTy->getAddressSpace(); // Okay, create the alias but do not insert it into the module yet. std::unique_ptr<GlobalAlias> GA( - GlobalAlias::create(Ty, AddrSpace, (GlobalValue::LinkageTypes)Linkage, - Name, Aliasee, /*Parent*/ nullptr)); + GlobalAlias::create(PTy, (GlobalValue::LinkageTypes)Linkage, Name, + Aliasee, /*Parent*/ nullptr)); GA->setThreadLocalMode(TLM); GA->setVisibility((GlobalValue::VisibilityTypes)Visibility); GA->setDLLStorageClass((GlobalValue::DLLStorageClassTypes)DLLStorageClass); |