| Index: src/IceInstARM32.cpp
|
| diff --git a/src/IceInstARM32.cpp b/src/IceInstARM32.cpp
|
| index 2ca099b1689dfb93c5748a01c51aa911d77b10e9..b98550929db9a57d0533943a1d8da72c2ecd32b0 100644
|
| --- a/src/IceInstARM32.cpp
|
| +++ b/src/IceInstARM32.cpp
|
| @@ -1214,6 +1214,7 @@ void InstARM32Push::emit(const Cfg *Func) const {
|
| }
|
| }
|
| Ostream &Str = Func->getContext()->getStrEmit();
|
| + bool NeedNewline = false;
|
| for (SizeT i = getSrcSize(); i > 0; --i) {
|
| Operand *Op = getSrc(i - 1);
|
| if (isScalarIntegerType(Op->getType()))
|
| @@ -1222,10 +1223,15 @@ void InstARM32Push::emit(const Cfg *Func) const {
|
| << "vpush"
|
| << "\t{";
|
| Op->emit(Func);
|
| - Str << "}\n";
|
| + Str << "}";
|
| + NeedNewline = true;
|
| }
|
| if (IntegerCount != 0) {
|
| startNextInst(Func);
|
| + if (NeedNewline) {
|
| + Str << "\n";
|
| + NeedNewline = false;
|
| + }
|
| Str << "\t"
|
| << "push"
|
| << "\t{";
|
| @@ -1239,8 +1245,10 @@ void InstARM32Push::emit(const Cfg *Func) const {
|
| PrintComma = true;
|
| }
|
| }
|
| - Str << "}\n";
|
| + Str << "}";
|
| + NeedNewline = true;
|
| }
|
| + assert(NeedNewline); // caller will add the newline
|
| }
|
|
|
| void InstARM32Push::emitIAS(const Cfg *Func) const {
|
|
|