#include "llvm/IR/LegacyPassManager.h"
#include "llvm/ADT/SetVector.h"
+#include "llvm/ADT/SmallString.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Support/Debug.h"
PM.add(createTargetTransformInfoWrapperPass(Target.getTargetIRAnalysis()));
{
- raw_string_ostream NameROS(ASM);
- formatted_raw_ostream FOS(NameROS);
+ SmallString<100> ASMSmall;
+ raw_svector_ostream NameROSSmall(ASMSmall);
// Ask the target to add backend passes as necessary.
int UseVerifier = true;
- if (Target.addPassesToEmitFile(PM, FOS, TargetMachine::CGFT_AssemblyFile,
- UseVerifier)) {
+ if (Target.addPassesToEmitFile(
+ PM, NameROSSmall, TargetMachine::CGFT_AssemblyFile, UseVerifier)) {
errs() << "The target does not support generation of this file type!\n";
return false;
}
+ ASM = ASMSmall.c_str();
PM.run(*New);
- FOS.flush();
}
return true;