From 591858a403a71fc5b30bc7b071f18bc0cf327cfc Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Sat, 22 Mar 2008 08:17:17 +0000 Subject: [PATCH] Support chained aliases for LLVM IR printing. This fixes PR2145 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48684 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/VMCore/AsmWriter.cpp | 3 +++ test/Feature/aliases.ll | 2 ++ 2 files changed, 5 insertions(+) diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp index aba66c85a76..a2de5d99a05 100644 --- a/lib/VMCore/AsmWriter.cpp +++ b/lib/VMCore/AsmWriter.cpp @@ -1003,6 +1003,9 @@ void AssemblyWriter::printAlias(const GlobalAlias *GA) { Out << getLLVMName(F->getName(), GlobalPrefix); else Out << "@\"\""; + } else if (const GlobalAlias *GA = dyn_cast(Aliasee)) { + printType(GA->getType()); + Out << " " << getLLVMName(GA->getName(), GlobalPrefix); } else { const ConstantExpr *CE = 0; if ((CE = dyn_cast(Aliasee)) && diff --git a/test/Feature/aliases.ll b/test/Feature/aliases.ll index fc5e7685ca6..d44dff4c43c 100644 --- a/test/Feature/aliases.ll +++ b/test/Feature/aliases.ll @@ -5,11 +5,13 @@ @bar = external global i32 @foo1 = alias i32* @bar @foo2 = alias i32* @bar +@foo3 = alias i32* @foo2 %FunTy = type i32() declare i32 @foo_f() @bar_f = alias weak %FunTy* @foo_f +@bar_ff = alias i32()* @bar_f @bar_i = alias internal i32* @bar -- 2.34.1