SuccessChanges

Summary

  1. [clang] add a new `swift_attr` attribute (details)
  2. [clang] add a `swift_async_name` attribute (details)
  3. [objc] diagnose protocol conformance in categories with direct members (details)
  4. [RISCV] Define preprocessor definitions for 'V' extension. (details)
  5. [llvm] Update WinMsvc.cmake's fms-compatability to match llvm's prereqs (details)
  6. Make __stack_chk_guard dso_local if Reloc::Static (details)
  7. [lld][WebAssembly] Add suppport for PIC + passive data initialization (details)
  8. [test] Split some tests which test both static and pic relocation models (details)
  9. [NFC][AMDGPU] AMDGPUUsage updates (details)
  10. [RISCV] Use fcvt.h/d/f.w if the input is an assertsexti32 not just when the input is sext_inreg. (details)
Commit 03dcd57ecf99b31021644b868cae422897d520f8 by Alex Lorenz
[clang] add a new `swift_attr` attribute

The swift_attr attribute is a generic annotation attribute that's not used by clang,
but is used by the Swift compiler. The Swift compiler can use these annotations to provide
various syntactic and semantic sugars for the imported Objective-C API declarations.

Differential Revision: https://reviews.llvm.org/D92354
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was addedclang/test/AST/attr-swift_attr.m
The file was addedclang/test/SemaObjC/validate-attr-swift_attr.m
Commit eddd1d192bcaf11e449b34a3a569b85eb390e4f2 by Alex Lorenz
[clang] add a `swift_async_name` attribute

The swift_async_name attribute provides a name for a function/method that can be used
to call the async overload of this method from Swift. This name specified in this attribute
assumes that the last parameter in the function/method its applied to is removed when
Swift invokes it, as the the Swift's await/async transformation implicitly constructs the callback.

Differential Revision: https://reviews.llvm.org/D92355
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was addedclang/test/SemaObjCXX/attr-swift_name-cxx.mm
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/test/SemaObjC/attr-swift_name.m
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
Commit db226cdf4cf91f350267da1a5b95dda42dd23413 by Alex Lorenz
[objc] diagnose protocol conformance in categories with direct members
in their corresponding class interfaces

Categories that add protocol conformances to classes with direct members should prohibit protocol
conformances when the methods/properties that the protocol expects are actually declared as 'direct' in the class.

Differential Revision: https://reviews.llvm.org/D92602
The file was addedclang/test/SemaObjC/category-direct-members-protocol-conformance.m
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
Commit 5e953a274b2ada5bfa54b3d765e391abb03f474f by kai.wang
[RISCV] Define preprocessor definitions for 'V' extension.

Differential Revision: https://reviews.llvm.org/D92650
The file was modifiedclang/test/Preprocessor/riscv-target-features.c
The file was modifiedclang/lib/Basic/Targets/RISCV.cpp
The file was modifiedclang/lib/Basic/Targets/RISCV.h
Commit 54971c3a75594a7055efbad22923e581e6e4e7f7 by nathan
[llvm] Update WinMsvc.cmake's fms-compatability to match llvm's prereqs

llvm's minimum fms-compatability-version was just bumped to 19.14 and
thus the WinMsvc.cmake file needs to be adjusted accordingly.
The file was modifiedllvm/cmake/platforms/WinMsvc.cmake
Commit 2518433f861fcb877d0a7bdd9aec1aec1f77505a by i
Make __stack_chk_guard dso_local if Reloc::Static

This is currently implied by TargetMachine::shouldAssumeDSOLocal
but will be changed in the future.
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
Commit ab58e4cb5185cc2042f3e1c077c85430b83c28b5 by sbc
[lld][WebAssembly] Add suppport for PIC + passive data initialization

This change improves our support for shared memory to include
PIC executables (and shared libraries).

To handle this case the linker-generated `__wasm_init_memory`
function (that only exists in shared memory builds) must be
capable of loading memory segements at non-const offsets based
on the runtime value of `__memory_base`.

Differential Revision: https://reviews.llvm.org/D92620
The file was modifiedlld/test/lit.cfg.py
The file was modifiedlld/test/wasm/data-segments.ll
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/wasm/Writer.cpp
The file was modifiedlld/wasm/SyntheticSections.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/Wasm.h
Commit 6dbd0eac02bf98a7585904ad69d0d9950947c9b4 by i
[test] Split some tests which test both static and pic relocation models

TargetMachine::shouldAssumeDSOLocal currently implies dso_local for
Static. Split some tests so that these `external dso_local global` will
align with the Clang behavior.
The file was modifiedllvm/test/CodeGen/ARM/fast-isel.ll
The file was modifiedllvm/test/CodeGen/AArch64/arm64-storebytesmerge.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/widen-narrow-tbz-tbnz.mir
The file was removedllvm/test/CodeGen/AArch64/arm64-elf-globals.ll
The file was addedllvm/test/CodeGen/AArch64/elf-globals-pic.ll
The file was addedllvm/test/CodeGen/AArch64/elf-globals-static.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/exception.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/address-offsets.ll
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/legalize-global-pic.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-global.mir
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-static.mir
Commit 3242eaef27196c717227331bed6a5af31a92b074 by Tony.Tye
[NFC][AMDGPU] AMDGPUUsage updates

- Document code object V2 gfx800.
- Document amdpal is supported by Linux Pro.

Differential Revision: https://reviews.llvm.org/D92708
The file was modifiedllvm/docs/AMDGPUUsage.rst
Commit 03fc4f2e9a66cc316937fc6326fdd9cd51d397d2 by craig.topper
[RISCV] Use fcvt.h/d/f.w if the input is an assertsexti32 not just when the input is sext_inreg.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoD.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
The file was modifiedllvm/test/CodeGen/RISCV/rv64f-half-convert.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoF.td
The file was modifiedllvm/test/CodeGen/RISCV/rv64f-float-convert.ll
The file was modifiedllvm/test/CodeGen/RISCV/rv64d-double-convert.ll