SuccessChanges

Summary

  1. [libcxx] [test] Fix filesystem permission tests for windows (details)
  2. [mlir][ODS]: Add per-op cppNamespace. (details)
  3. [ArgumentPromotion] Fix byval alignment handling. (details)
  4. [RISCV] Prefer to lower MC_GlobalAddress operands to .Lfoo$local (details)
Commit 68de58cd649cb3a3e94a1c9552ebf2a18bb9d040 by martin
[libcxx] [test] Fix filesystem permission tests for windows

On Windows, the permission bits are mapped down to essentially only
two possible states; readonly or readwrite. Normalize the checked
permission bitmask to match what the implementation will return.

Differential Revision: https://reviews.llvm.org/D101728
The file was modifiedlibcxx/test/support/filesystem_test_helper.h (diff)
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp (diff)
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.permissions/permissions.pass.cpp (diff)
Commit 49755871ad0c24ed970c0a4f2c51f90488b0ddd2 by silvasean
[mlir][ODS]: Add per-op cppNamespace.

This is useful for dialects that have logical subparts.

Differential Revision: https://reviews.llvm.org/D102200
The file was modifiedmlir/lib/TableGen/Operator.cpp (diff)
The file was modifiedmlir/tools/mlir-tblgen/OpDefinitionsGen.cpp (diff)
The file was modifiedmlir/include/mlir/IR/OpBase.td (diff)
The file was modifiedmlir/include/mlir/TableGen/CodeGenHelpers.h (diff)
The file was modifiedmlir/include/mlir/TableGen/Operator.h (diff)
The file was modifiedmlir/test/mlir-tblgen/dialect.td (diff)
Commit 61cbbba7a645a1d87db9a80867c84a788ab2ea9c by efriedma
[ArgumentPromotion] Fix byval alignment handling.

Make sure the alignment of the generated operations matches the
alignment of the byval argument.  Previously, we were just ignoring
alignment and getting lucky.

While I'm here, also delete the unnecessary "tail" handling.
Passing a pointer to a byval argument to a "tail" call is UB, so
rewriting to an alloca doesn't require any special handling.

Differential Revision: https://reviews.llvm.org/D89819
The file was modifiedllvm/test/Transforms/ArgumentPromotion/dbg.ll (diff)
The file was modifiedllvm/test/Transforms/ArgumentPromotion/byval.ll (diff)
The file was modifiedllvm/test/Transforms/ArgumentPromotion/attrs.ll (diff)
The file was modifiedllvm/test/Transforms/ArgumentPromotion/byval-2.ll (diff)
The file was removedllvm/test/Transforms/ArgumentPromotion/tail.ll
The file was modifiedllvm/lib/Transforms/IPO/ArgumentPromotion.cpp (diff)
Commit ec27c5f170441ab54295830aa9f7d376406c6a0f by i
[RISCV] Prefer to lower MC_GlobalAddress operands to .Lfoo$local

Similar to X86 D73230 and AArch64 D101872

With this change, we can set dso_local in clang's -fpic -fno-semantic-interposition mode,
for default visibility external linkage non-ifunc-non-COMDAT definitions.

For such dso_local definitions, variable access/taking the address of a
function/calling a function will go through a local alias to avoid GOT/PLT.

Reviewed By: jrtc27, luismarques

Differential Revision: https://reviews.llvm.org/D101875
The file was addedllvm/test/CodeGen/RISCV/elf-preemption.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVMCInstLower.cpp (diff)