dang created this revision. Herald added subscribers: cfe-commits, dexonsmith. Herald added a project: clang.
Depends on D83071 <https://reviews.llvm.org/D83071> Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D83405 Files: clang/lib/Frontend/CompilerInvocation.cpp Index: clang/lib/Frontend/CompilerInvocation.cpp =================================================================== --- clang/lib/Frontend/CompilerInvocation.cpp +++ clang/lib/Frontend/CompilerInvocation.cpp @@ -3934,9 +3934,10 @@ PREFIX_TYPE, NAME, ID, KIND, GROUP, ALIAS, ALIASARGS, FLAGS, PARAM, \ HELPTEXT, METAVAR, VALUES, SPELLING, ALWAYS_EMIT, KEYPATH, DEFAULT_VALUE, \ TYPE, NORMALIZER, DENORMALIZER, MERGER, EXTRACTOR, TABLE_INDEX) \ - if (((FLAGS)&options::CC1Option) && \ - (ALWAYS_EMIT || EXTRACTOR(this->KEYPATH) != DEFAULT_VALUE)) { \ - DENORMALIZER(Args, SPELLING, SA, TABLE_INDEX, EXTRACTOR(this->KEYPATH)); \ + if ((FLAGS)&options::CC1Option) { \ + const auto &Extracted = EXTRACTOR(this->KEYPATH); \ + if (ALWAYS_EMIT || Extracted != DEFAULT_VALUE) \ + DENORMALIZER(Args, SPELLING, SA, TABLE_INDEX, Extracted); \ } #define OPTION_WITH_MARSHALLING_BOOLEAN( \ @@ -3944,10 +3945,10 @@ HELPTEXT, METAVAR, VALUES, SPELLING, ALWAYS_EMIT, KEYPATH, DEFAULT_VALUE, \ TYPE, NORMALIZER, DENORMALIZER, MERGER, EXTRACTOR, TABLE_INDEX, NEG_ID, \ NEG_SPELLING) \ - if (((FLAGS)&options::CC1Option) && \ - (ALWAYS_EMIT || EXTRACTOR(this->KEYPATH) != DEFAULT_VALUE)) { \ - DENORMALIZER(Args, SPELLING, NEG_SPELLING, SA, TABLE_INDEX, \ - EXTRACTOR(this->KEYPATH)); \ + if ((FLAGS)&options::CC1Option) { \ + const auto &Extracted = EXTRACTOR(this->KEYPATH); \ + if (ALWAYS_EMIT || Extracted != DEFAULT_VALUE) \ + DENORMALIZER(Args, SPELLING, NEG_SPELLING, SA, TABLE_INDEX, Extracted); \ } #include "clang/Driver/Options.inc"
Index: clang/lib/Frontend/CompilerInvocation.cpp =================================================================== --- clang/lib/Frontend/CompilerInvocation.cpp +++ clang/lib/Frontend/CompilerInvocation.cpp @@ -3934,9 +3934,10 @@ PREFIX_TYPE, NAME, ID, KIND, GROUP, ALIAS, ALIASARGS, FLAGS, PARAM, \ HELPTEXT, METAVAR, VALUES, SPELLING, ALWAYS_EMIT, KEYPATH, DEFAULT_VALUE, \ TYPE, NORMALIZER, DENORMALIZER, MERGER, EXTRACTOR, TABLE_INDEX) \ - if (((FLAGS)&options::CC1Option) && \ - (ALWAYS_EMIT || EXTRACTOR(this->KEYPATH) != DEFAULT_VALUE)) { \ - DENORMALIZER(Args, SPELLING, SA, TABLE_INDEX, EXTRACTOR(this->KEYPATH)); \ + if ((FLAGS)&options::CC1Option) { \ + const auto &Extracted = EXTRACTOR(this->KEYPATH); \ + if (ALWAYS_EMIT || Extracted != DEFAULT_VALUE) \ + DENORMALIZER(Args, SPELLING, SA, TABLE_INDEX, Extracted); \ } #define OPTION_WITH_MARSHALLING_BOOLEAN( \ @@ -3944,10 +3945,10 @@ HELPTEXT, METAVAR, VALUES, SPELLING, ALWAYS_EMIT, KEYPATH, DEFAULT_VALUE, \ TYPE, NORMALIZER, DENORMALIZER, MERGER, EXTRACTOR, TABLE_INDEX, NEG_ID, \ NEG_SPELLING) \ - if (((FLAGS)&options::CC1Option) && \ - (ALWAYS_EMIT || EXTRACTOR(this->KEYPATH) != DEFAULT_VALUE)) { \ - DENORMALIZER(Args, SPELLING, NEG_SPELLING, SA, TABLE_INDEX, \ - EXTRACTOR(this->KEYPATH)); \ + if ((FLAGS)&options::CC1Option) { \ + const auto &Extracted = EXTRACTOR(this->KEYPATH); \ + if (ALWAYS_EMIT || Extracted != DEFAULT_VALUE) \ + DENORMALIZER(Args, SPELLING, NEG_SPELLING, SA, TABLE_INDEX, Extracted); \ } #include "clang/Driver/Options.inc"
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits