SuccessChanges

Summary

  1. [flang][msvc] Split class declaration and constexpr variable definition. NFC. (details)
  2. [LLD][COFF] Reset outputSections for successive runs (details)
  3. Revert "[Polly] Ensure consistent Scop::InstStmtMap. NFC." (details)
  4. [DAGCombiner] add early exit for store merging of truncs (details)
Commit 207d4499dfab050b0535c7361527d3c37cf6488a by llvm-project
[flang][msvc] Split class declaration and constexpr variable definition. NFC.

Msvc has trouble defining a struct/class and defining a constexpr symbol in the same declarator. It reports the following error:
```
basic-parsers.h(809): error C2131: expression did not evaluate to a constant
basic-parsers.h(809): note: failure was caused by call of undefined function or one not declared 'constexpr'
basic-parsers.h(809): note: see usage of 'Fortran::parser::OkParser::OkParser'
```

Fix the msvc compilation by splitting the two definitions into two separate declarators.

This patch is part of the series to [[ http://lists.llvm.org/pipermail/flang-dev/2020-July/000448.html | make flang compilable with MS Visual Studio ]].

Reviewed By: DavidTruby, klausler

Differential Revision: https://reviews.llvm.org/D85937
The file was modifiedflang/lib/Parser/basic-parsers.h (diff)
The file was modifiedflang/lib/Parser/token-parsers.h (diff)
The file was modifiedflang/lib/Parser/expr-parsers.cpp (diff)
Commit 54f5a4ea4c859cf7f34f0d4955abc3a2f44bd0dc by martin
[LLD][COFF] Reset outputSections for successive runs

The global variable outputSections in the COFF writer was not
cleared between runs which caused successive calls to lld::coff::link
to generate invalid binaries. These binaries when loaded would result
in "invalid win32 applications" and/or "bad image" errors.

Differential Revision: https://reviews.llvm.org/D86401
The file was modifiedlld/COFF/Writer.cpp (diff)
Commit 8b14db636dec8afa904366a0d5499b80d7dc7034 by llvm-project
Revert "[Polly] Ensure consistent Scop::InstStmtMap. NFC."

This reverts commit 8e06bf6b3a2e8d25e56cd52dca0cf3ff1b37b5d1.

It broke the polly-x86_64-linux-test-suite and
aosp-O3-polly-before-vectorizer-unprofitable buildbots.
The file was modifiedpolly/include/polly/ScopInfo.h (diff)
The file was modifiedpolly/lib/Analysis/ScopInfo.cpp (diff)
Commit 79cb289a95e5fee838c90cd029100393025029d2 by spatel
[DAGCombiner] add early exit for store merging of truncs

This should be NFC in terms of output because the endian
check further down would bail out too, but we are wasting
time by waiting to that point to give up. If we generalize
that function to deal with more than i8 types, we should
not have to deal with the degenerate case.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp (diff)