SuccessChanges

Summary

  1. [clang][cli] Streamline MarshallingInfoFlag description (details)
  2. [clang][cli] Let denormalizer decide how to render the option based on the option class (details)
  3. [clang] Use enum for LangOptions::SYCLVersion instead of unsigned (details)
  4. [VP][NFC] ISD::VP_Sub -> ISD::VP_SUB (details)
  5. [VPlan] Use VPDef for VPInterleaveRecipe. (details)
  6. [VE] Support RETURNADDR (details)
  7. [VE] Support STACKSAVE and STACKRESTORE (details)
  8. [flang][driver] Make the names of files created in unit tests unique (nfc) (details)
  9. [TableGen] NFC: Switch to range-based for loops in OptParserEmitter (details)
  10. [TableGen] NFC: Rename variables in OptParserEmitter (details)
Commit 27b7d646886d499c70dec3481dfc3c82dfc43dd7 by jan_svoboda
[clang][cli] Streamline MarshallingInfoFlag description

This replaces the existing `MarshallingInfoFlag<...>, IsNegative` with simpler `MarshallingInfoNegativeFlag`.

Reviewed By: dexonsmith

Original patch by Daniel Grumberg.

Differential Revision: https://reviews.llvm.org/D84675
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedllvm/include/llvm/Option/OptParser.td
Commit 70410a264949101ced3ce3458f37dd4cc2f5af85 by jan_svoboda
[clang][cli] Let denormalizer decide how to render the option based on the option class

Before this patch, you needed to use `AutoNormalizeEnumJoined` whenever you wanted to **de**normalize joined enum.
Besides the naming confusion, this means the fact the option is joined is specified in two places: in the normalization multiclass and in the `Joined<["-"], ...>` multiclass.
This patch makes this work automatically, taking into account the `OptionClass` of options.

Also, the enum denormalizer now just looks up the spelling of the present enum case in a table and forwards it to the string denormalizer.

I also added more tests that exercise this.

Reviewed By: dexonsmith

Original patch by Daniel Grumberg.

Differential Revision: https://reviews.llvm.org/D84189
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/unittests/Frontend/CompilerInvocationTest.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedllvm/include/llvm/Option/OptParser.td
Commit 5a85526728c9e57efe26f322e4718fffd2634d23 by jan_svoboda
[clang] Use enum for LangOptions::SYCLVersion instead of unsigned

`LangOptions::SYCLVersion` can only have two values. This patch introduces an enum that allows us to reduce the member size from 32 bits to 1 bit.

Consequently, this also makes marshalling of this option fit into our model for enums: D84674.

Reviewed By: bader

Differential Revision: https://reviews.llvm.org/D93540
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 93da221eaf7ab6ed8afa57f13e5155e6e2286337 by simon.moll
[VP][NFC] ISD::VP_Sub -> ISD::VP_SUB
The file was modifiedllvm/include/llvm/IR/VPIntrinsics.def
Commit cd608dc8d3e975fa3c57327d2146b5c223bcf83a by flo
[VPlan] Use VPDef for VPInterleaveRecipe.

This patch turns updates VPInterleaveRecipe to manage the values it defines
using VPDef. The VPValue is used  during VPlan construction and
codegeneration instead of the plain IR reference where possible.

Reviewed By: gilr

Differential Revision: https://reviews.llvm.org/D90562
The file was modifiedllvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanTest.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.h
Commit d99e4a4840d833c6e381c2ab76b15451dffb56b2 by marukawa
[VE] Support RETURNADDR

Implement RETURNADDR for VE.  Add a regression test also.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D93545
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
The file was addedllvm/test/CodeGen/VE/Scalar/returnaddr.ll
Commit 5e273b845bc4411c23f5da0ebbf5d4dfd6b91f13 by marukawa
[VE] Support STACKSAVE and STACKRESTORE

Change to use default expanded code.  Add regression tests also.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D93539
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
The file was addedllvm/test/CodeGen/VE/Scalar/stacksave.ll
Commit d6abd7317a269dc7d0204edb8e98f8fcc1a18a2f by andrzej.warzynski
[flang][driver] Make the names of files created in unit tests unique (nfc)

Using files with identical names leads to unexpected failures when tests
are run in parallel. This is tricky to reproduce, but has been happening
on some buildbots since merging https://reviews.llvm.org/D92854. In that
patch I added a unit test with a non-unique test file. This patch fixes
that.
The file was modifiedflang/unittests/Frontend/FrontendActionTest.cpp
Commit 06b83fd6c75b48a6a93dc580fb4409e13608a045 by jan_svoboda
[TableGen] NFC: Switch to range-based for loops in OptParserEmitter

This simplifies the code a bit. No functionality change.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D93526
The file was modifiedllvm/utils/TableGen/OptParserEmitter.cpp
Commit 164bcbd40e6d10cd8a01477e2e9029b955fea93b by jan_svoboda
[TableGen] NFC: Rename variables in OptParserEmitter

Switch to the LLVM naming convention.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D93527
The file was modifiedllvm/utils/TableGen/OptParserEmitter.cpp