diff options
-rw-r--r-- | lib/Target/X86/X86AsmPrinter.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/X86/X86AsmPrinter.cpp b/lib/Target/X86/X86AsmPrinter.cpp index 0a4106c953..38dbe57aed 100644 --- a/lib/Target/X86/X86AsmPrinter.cpp +++ b/lib/Target/X86/X86AsmPrinter.cpp @@ -205,9 +205,9 @@ bool X86SharedAsmPrinter::doFinalization(Module &M) { O << "\t.globl " << name << "\n"; // FALL THROUGH case GlobalValue::InternalLinkage: { - if (TAI->getCStringSection()) { + if (I->isConstant()) { const ConstantArray *CVA = dyn_cast<ConstantArray>(C); - if (CVA && CVA->isCString()) { + if (TAI->getCStringSection() && CVA && CVA->isCString()) { SwitchToDataSection(TAI->getCStringSection(), I); break; } |