From: Sanjiv Gupta Date: Tue, 28 Apr 2009 16:34:20 +0000 (+0000) Subject: Initialized arrays can be in any address space. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=d3d965714b89c5d5aeb65fb5ce06e081f0b3c049;p=oota-llvm.git Initialized arrays can be in any address space. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70297 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/CodeGen/AsmPrinter.h b/include/llvm/CodeGen/AsmPrinter.h index c1d86a21906..d4e0c432190 100644 --- a/include/llvm/CodeGen/AsmPrinter.h +++ b/include/llvm/CodeGen/AsmPrinter.h @@ -390,7 +390,7 @@ namespace llvm { void EmitXXStructorList(Constant *List); void EmitGlobalConstantStruct(const ConstantStruct* CVS, unsigned AddrSpace); - void EmitGlobalConstantArray(const ConstantArray* CVA); + void EmitGlobalConstantArray(const ConstantArray* CVA, unsigned AddrSpace); void EmitGlobalConstantVector(const ConstantVector* CP); void EmitGlobalConstantFP(const ConstantFP* CFP, unsigned AddrSpace); void EmitGlobalConstantLargeInt(const ConstantInt* CI, unsigned AddrSpace); diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp index f1a45fd7eeb..a815aabe5cf 100644 --- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp +++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp @@ -971,12 +971,13 @@ void AsmPrinter::EmitString(const ConstantArray *CVA) const { O << '\n'; } -void AsmPrinter::EmitGlobalConstantArray(const ConstantArray *CVA) { +void AsmPrinter::EmitGlobalConstantArray(const ConstantArray *CVA, + unsigned AddrSpace) { if (CVA->isString()) { EmitString(CVA); } else { // Not a string. Print the values in successive locations for (unsigned i = 0, e = CVA->getNumOperands(); i != e; ++i) - EmitGlobalConstant(CVA->getOperand(i)); + EmitGlobalConstant(CVA->getOperand(i), AddrSpace); } } @@ -1233,7 +1234,7 @@ void AsmPrinter::EmitGlobalConstant(const Constant *CV, unsigned AddrSpace) { EmitZeros(Size, AddrSpace); return; } else if (const ConstantArray *CVA = dyn_cast(CV)) { - EmitGlobalConstantArray(CVA); + EmitGlobalConstantArray(CVA , AddrSpace); return; } else if (const ConstantStruct *CVS = dyn_cast(CV)) { EmitGlobalConstantStruct(CVS, AddrSpace);