Index: src/IceInstARM32.cpp |
diff --git a/src/IceInstARM32.cpp b/src/IceInstARM32.cpp |
index 7312d842c4cfb1ab0a999791bd8804d94ea27007..cf1ff178aacdb18a8d0f97e6d7e352af13e7e421 100644 |
--- a/src/IceInstARM32.cpp |
+++ b/src/IceInstARM32.cpp |
@@ -1088,6 +1088,7 @@ void InstARM32Pop::emit(const Cfg *Func) const { |
} |
} |
Ostream &Str = Func->getContext()->getStrEmit(); |
+ bool NeedNewline = false; |
if (IntegerCount != 0) { |
Str << "\t" |
<< "pop" |
@@ -1101,19 +1102,26 @@ void InstARM32Pop::emit(const Cfg *Func) const { |
PrintComma = true; |
} |
} |
- Str << "}\n"; |
+ Str << "}"; |
+ NeedNewline = true; |
} |
for (const Operand *Op : Dests) { |
if (isScalarIntegerType(Op->getType())) |
continue; |
startNextInst(Func); |
+ if (NeedNewline) { |
+ Str << "\n"; |
+ NeedNewline = false; |
+ } |
Str << "\t" |
<< "vpop" |
<< "\t{"; |
Op->emit(Func); |
- Str << "}\n"; |
+ Str << "}"; |
+ NeedNewline = true; |
} |
+ assert(NeedNewline); // caller will add the newline |
} |
void InstARM32Pop::dump(const Cfg *Func) const { |