Add the ability for MCStreamer to emit comments on the same line as directives.
Switch over the asm-verbose comment for double values to use it. We now get:
_x:
.long 343597384 ## double 1.231200e+02
.long 1079953326
For example, note that the comment is on the same line as the .long. Woo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94166 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index d5ae71f..e12a66e 100644
--- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -1126,13 +1126,16 @@
static void EmitGlobalConstantFP(const ConstantFP *CFP, unsigned AddrSpace,
AsmPrinter &AP) {
+ SmallString<128> TmpBuffer;
+
// FP Constants are printed as integer constants to avoid losing
// precision.
if (CFP->getType()->isDoubleTy()) {
if (AP.VerboseAsm) {
+ raw_svector_ostream OS(TmpBuffer);
double Val = CFP->getValueAPF().convertToDouble(); // for comment only
- AP.O.PadToColumn(AP.MAI->getCommentColumn());
- AP.O << AP.MAI->getCommentString() << " double " << Val << '\n';
+ OS << "double " << Val;
+ AP.OutStreamer.addComment(OS.str());
}
uint64_t Val = CFP->getValueAPF().bitcastToAPInt().getZExtValue();