Overriding doFinalization is pretty lame.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82268
91177308-0d34-0410-b5e6-
96231b3b80d8
/// call this implementation.
bool doInitialization(Module &M);
+ /// EmitEndOfAsmFile - This virtual method can be overridden by targets that
+ /// want to emit something at the end of their file.
+ virtual void EmitEndOfAsmFile(Module &M) {}
+
/// doFinalization - Shut down the asmprinter. If you override this in your
/// pass, you must make sure to call it explicitly.
bool doFinalization(Module &M);
if (MAI->getNonexecutableStackDirective())
O << MAI->getNonexecutableStackDirective() << '\n';
+
+ // Allow the target to emit any magic that it wants at the end of the file,
+ // after everything else has gone out.
+ EmitEndOfAsmFile(M);
+
delete Mang; Mang = 0;
DW = 0; MMI = 0;