This seems to have caused a libfuzzer test to fail here: http://lab.llvm.org:8011/builders/sanitizer-windows/builds/48261
It's not easy to fix because -O0 is passed to clang-cl on Windows and clang elsewhere, so /Od won't do the trick without a substitution. This was kind of why I added -O0 in the first place. clang-cl more or less accepts all options unless they conflict, so I applied that logic to O0 as well. I think the right thing to do is to make %cpp_compiler not expand to clang-cl if possible. I'll mark UNSUPPORTED for now and try to do that next. On Wed, Jul 10, 2019 at 6:17 PM Nico Weber via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: nico > Date: Wed Jul 10 18:18:05 2019 > New Revision: 365724 > > URL: http://llvm.org/viewvc/llvm-project?rev=365724&view=rev > Log: > clang-cl: Remove -O0 option > > cl.exe doesn't understand it; there's /Od instead. See also the review > thread for r229575. > > Update lots of compiler-rt tests to use -Od instead of -O0. > Ran `rg -l 'clang_cl.*O0' compiler-rt/test/ | xargs sed -i -c 's/-O0/-Od/'` > > Differential Revision: https://reviews.llvm.org/D64506 > > Modified: > cfe/trunk/include/clang/Driver/CLCompatOptions.td > > Modified: cfe/trunk/include/clang/Driver/CLCompatOptions.td > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/CLCompatOptions.td?rev=365724&r1=365723&r2=365724&view=diff > > ============================================================================== > --- cfe/trunk/include/clang/Driver/CLCompatOptions.td (original) > +++ cfe/trunk/include/clang/Driver/CLCompatOptions.td Wed Jul 10 18:18:05 > 2019 > @@ -120,8 +120,6 @@ def _SLASH_J : CLFlag<"J">, HelpText<"Ma > def _SLASH_O : CLJoined<"O">, > HelpText<"Set multiple /O flags at once; e.g. '/O2y-' for '/O2 /Oy-'">, > MetaVarName<"<flags>">; > -// FIXME: Not sure why we have -O0 here; MSVC doesn't support that. > -def : CLFlag<"O0">, Alias<O0>, HelpText<"Disable optimization">; > def : CLFlag<"O1">, Alias<_SLASH_O>, AliasArgs<["1"]>, > HelpText<"Optimize for size (like /Og /Os /Oy /Ob2 /GF /Gy)">; > def : CLFlag<"O2">, Alias<_SLASH_O>, AliasArgs<["2"]>, > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits