From cb0df597e0f7f43b14cbed1f9dd1f39b22fe08be Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Fri, 7 Nov 2008 19:49:17 +0000 Subject: Flush the raw_ostream after emitting the assembly for a function. This is a temporary fix for the -print-emitted-asm option, where errs() is used as the stream, in the case where other code is using stderr without using errs()' buffer. Hopefully soon we'll fix errs() to be non-buffered instead. Patch by Preston Gurd. llvm-svn: 58859 --- llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp | 2 ++ llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp | 2 ++ llvm/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp | 2 ++ llvm/lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp | 2 ++ 4 files changed, 8 insertions(+) (limited to 'llvm/lib/Target') diff --git a/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp b/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp index 3eec5622783..36cd98eb927 100644 --- a/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp +++ b/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp @@ -263,6 +263,8 @@ bool ARMAsmPrinter::runOnMachineFunction(MachineFunction &MF) { // FIXME: Dwarf support. //DW.EndFunction(); + O.flush(); + return false; } diff --git a/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp index d164066a9aa..6c17dbece07 100644 --- a/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp +++ b/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp @@ -619,6 +619,8 @@ bool PPCLinuxAsmPrinter::runOnMachineFunction(MachineFunction &MF) { // Emit post-function debug information. DW.EndFunction(&MF); + O.flush(); + // We didn't modify anything. return false; } diff --git a/llvm/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp b/llvm/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp index 5710add416c..556757aaabf 100644 --- a/llvm/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp +++ b/llvm/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp @@ -265,6 +265,8 @@ bool X86ATTAsmPrinter::runOnMachineFunction(MachineFunction &MF) { // Print out jump tables referenced by the function. EmitJumpTableInfo(MF.getJumpTableInfo(), MF); + O.flush(); + // We didn't modify anything. return false; } diff --git a/llvm/lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp b/llvm/lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp index ae869799a97..4868906a041 100644 --- a/llvm/lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp +++ b/llvm/lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp @@ -179,6 +179,8 @@ bool X86IntelAsmPrinter::runOnMachineFunction(MachineFunction &MF) { O << CurrentFnName << "\tendp\n"; + O.flush(); + // We didn't modify anything. return false; } -- cgit v1.2.3