git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109947
91177308-0d34-0410-b5e6-
96231b3b80d8
/// Takes ownership of \arg TAB and \arg CE.
MCStreamer *createWinCOFFStreamer(MCContext &Ctx,
TargetAsmBackend &TAB,
/// Takes ownership of \arg TAB and \arg CE.
MCStreamer *createWinCOFFStreamer(MCContext &Ctx,
TargetAsmBackend &TAB,
- MCCodeEmitter &CE, raw_ostream &OS);
+ MCCodeEmitter &CE, raw_ostream &OS,
+ bool RelaxAll = false);
/// createLoggingStreamer - Create a machine code streamer which just logs the
/// API calls and then dispatches to another streamer.
/// createLoggingStreamer - Create a machine code streamer which just logs the
/// API calls and then dispatches to another streamer.
MCStreamer *createWinCOFFStreamer(MCContext &Context,
TargetAsmBackend &TAB,
MCCodeEmitter &CE,
MCStreamer *createWinCOFFStreamer(MCContext &Context,
TargetAsmBackend &TAB,
MCCodeEmitter &CE,
- raw_ostream &OS) {
- return new WinCOFFStreamer(Context, TAB, CE, OS);
+ raw_ostream &OS,
+ bool RelaxAll) {
+ WinCOFFStreamer *S = new WinCOFFStreamer(Context, TAB, CE, OS);
+ S->getAssembler().setRelaxAll(RelaxAll);
+ return S;
Triple TheTriple(TT);
switch (TheTriple.getOS()) {
case Triple::Win32:
Triple TheTriple(TT);
switch (TheTriple.getOS()) {
case Triple::Win32:
- return createWinCOFFStreamer(Ctx, TAB, *_Emitter, _OS);
+ return createWinCOFFStreamer(Ctx, TAB, *_Emitter, _OS, RelaxAll);
default:
return createMachOStreamer(Ctx, TAB, _OS, _Emitter, RelaxAll);
}
default:
return createMachOStreamer(Ctx, TAB, _OS, _Emitter, RelaxAll);
}