diff --git a/ghc/compiler/nativeGen/PprMach.lhs b/ghc/compiler/nativeGen/PprMach.lhs index ac051ee738d1da5c98dc03b86666bb5b38845fb2..8c686d473fb416261d34c20165ece1eb5328f19a 100644 --- a/ghc/compiler/nativeGen/PprMach.lhs +++ b/ghc/compiler/nativeGen/PprMach.lhs @@ -1000,7 +1000,10 @@ pprInstr (JMP (OpImm imm)) = (<>) (ptext SLIT("\tjmp ")) (pprImm imm) pprInstr (JMP op) = (<>) (ptext SLIT("\tjmp *")) (pprOperand L op) pprInstr (CALL imm) - = hcat [ ptext SLIT("\tffree %st(0) ; call "), pprImm imm ] + = vcat [ ptext SLIT("\tffree %st(0) ;ffree %st(1) ;ffree %st(2) ;ffree %st(3)"), + ptext SLIT("\tffree %st(4) ;ffree %st(5) ;ffree %st(6) ;ffree %st(7)"), + hcat [ ptext SLIT("\tcall "), pprImm imm ] + ] -- Simulating a flat register set on the x86 FP stack is tricky.