Index: lib/Parse/ParseStmt.cpp =================================================================== --- lib/Parse/ParseStmt.cpp +++ lib/Parse/ParseStmt.cpp @@ -32,6 +32,7 @@ #include "llvm/MC/MCStreamer.h" #include "llvm/MC/MCSubtargetInfo.h" #include "llvm/MC/MCTargetAsmParser.h" +#include "llvm/MC/MCTargetOptions.h" #include "llvm/Support/SourceMgr.h" #include "llvm/Support/TargetRegistry.h" #include "llvm/Support/TargetSelect.h" @@ -2190,8 +2191,11 @@ std::unique_ptr Str(createNullStreamer(Ctx)); std::unique_ptr Parser( createMCAsmParser(TempSrcMgr, Ctx, *Str.get(), *MAI)); + + // FIXME: init MCOptions from sanitizer flags here. + llvm::MCTargetOptions MCOptions; std::unique_ptr TargetParser( - TheTarget->createMCAsmParser(*STI, *Parser, *MII)); + TheTarget->createMCAsmParser(*STI, *Parser, *MII, MCOptions)); llvm::MCInstPrinter *IP = TheTarget->createMCInstPrinter(1, *MAI, *MII, *MRI, *STI); Index: tools/driver/cc1as_main.cpp =================================================================== --- tools/driver/cc1as_main.cpp +++ tools/driver/cc1as_main.cpp @@ -34,6 +34,7 @@ #include "llvm/MC/MCStreamer.h" #include "llvm/MC/MCSubtargetInfo.h" #include "llvm/MC/MCTargetAsmParser.h" +#include "llvm/MC/MCTargetOptions.h" #include "llvm/Option/Arg.h" #include "llvm/Option/ArgList.h" #include "llvm/Option/OptTable.h" @@ -373,8 +374,11 @@ std::unique_ptr Parser( createMCAsmParser(SrcMgr, Ctx, *Str.get(), *MAI)); + + // FIXME: init MCTargetOptions from sanitizer flags here. + MCTargetOptions Options; std::unique_ptr TAP( - TheTarget->createMCAsmParser(*STI, *Parser, *MCII)); + TheTarget->createMCAsmParser(*STI, *Parser, *MCII, Options)); if (!TAP) { Diags.Report(diag::err_target_unknown_triple) << Opts.Triple; return false;