diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 91095194123679128c90200bc02b55df484ccb0f..36400db33e41a001380ccfdd068f31a89e25727f 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -4095,28 +4095,6 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, case llvm::Triple::thumbeb: // Use the effective triple, which takes into account the deployment target. AddARMTargetArgs(Triple, Args, CmdArgs, KernelOrKext); - - // disable additional optimizations to make CFRGs work properly - // TODO: This is a hack ;) - // Disable nested loop separation for loops with multiple backedges - // during Natural Loop Canonicalization (-simplifycfg) - // This eases manual annotation of loop bounds as the appearance of - // additional nested loops is prohibited by this flag. - // When we manage to get rid of loop bound annotations by translating - // them to markers and constraints, we can enable this transformation - // again. - // @see patmos::PatmosBaseTool::ConstructOptJob - CmdArgs.push_back("-mllvm"); - CmdArgs.push_back("-disable-separate-nested-loops"); - - // Perform most llvm-opt optimizations at link time (but prepare bitcode with - // baseline optimizations) - if (Arg *A = Args.getLastArg(options::OPT_O_Group)) - if (!A->getOption().matches(options::OPT_O0)) { - CmdArgs.push_back("-disable-llvm-optzns"); - CmdArgs.push_back("-enable-llvm-baseline-optzns"); - } - break; case llvm::Triple::aarch64: