Index: lib/Driver/SanitizerArgs.cpp =================================================================== --- lib/Driver/SanitizerArgs.cpp +++ lib/Driver/SanitizerArgs.cpp @@ -271,11 +271,15 @@ bool IsLinux = TC.getTriple().getOS() == llvm::Triple::Linux; bool IsX86 = TC.getTriple().getArch() == llvm::Triple::x86; bool IsX86_64 = TC.getTriple().getArch() == llvm::Triple::x86_64; + bool IsMIPS32 = TC.getTriple().getArch() == llvm::Triple::mips || + TC.getTriple().getArch() == llvm::Triple::mipsel; + bool IsMIPS64 = TC.getTriple().getArch() == llvm::Triple::mips64 || + TC.getTriple().getArch() == llvm::Triple::mips64el; unsigned KindsToFilterOut = 0; - if (!(IsLinux && IsX86_64)) { + if (!(IsLinux && (IsX86_64 || IsMIPS32 || IsMIPS64))) { KindsToFilterOut |= Memory | DataFlow; } - if (!((IsLinux || IsFreeBSD) && IsX86_64)) { + if (!((IsLinux || IsFreeBSD) && (IsX86_64 || IsMIPS64))) { KindsToFilterOut |= Thread; } if (!(IsLinux && (IsX86 || IsX86_64))) {