[acc] RegionBranchOpInterface for acc regions (#171533)
Defining RegionBranchOpInterface for acc regions will help dataflow
analysis to propagate IN/OUT sets without losing information
[InstSimplify] Ignore mask when combinining vp.reverse(vp.reverse). (#171542)
The mask doesn't really affect the reverse. It only poisons the masked
off elements in the results. It should be ok to ignore the mask if we
can eliminate the pair.
I don't have a specific use case for this, but it matches what I had
implemented in our downstream before the current upstream
implementation. Submitting upstream so I can remove the delta
in my downstream.
AArch64: Relax restriction on discriminator when PAuth ifunc used.
When a PAuth ifunc is being used, we can represent any discriminator that
we want in the code and don't need to be restricted to 16 bits. For now we
only need this capability for address discriminated ptrauth expressions,
so keep the restriction in place for other discriminators.
Reviewers: atrosinenko, fmayer
Reviewed By: fmayer
Pull Request: https://github.com/llvm/llvm-project/pull/170945
AArch64: Emit PAuth ifuncs into the same comdat as the containing global.
PAuth ifuncs contain a relocation pointing to the section they are
relocating (the place), so they need to be in the same comdat in order
to avoid relocations pointing to discarded sections.
Reviewers: atrosinenko, kovdan01, fmayer
Reviewed By: fmayer
Pull Request: https://github.com/llvm/llvm-project/pull/170944
Revert "[clangd] Add a (currently hidden) --strong-workspace-mode flag (#155905)"
This reverts commit 2fa492726e774c050d6f21d57990c8bfbd7f1400.
This caused sanitizer bots to fail and sanitizer errors to show up in
our downstream testing:
```
[ RUN ] LSPTest.DiagnosticsHeaderSaved
<<< initialize: {}
<-- initialize(0)
third_party/llvm/llvm-project/clang-tools-extra/clangd/ClangdLSPServer.cpp:557:14: runtime error: load of value 112, which is not a valid value for type 'bool'
```
With ASan at -O1.
[flang][docs] Replace Flang to Classic Flang in old doc (#171558)
This document was written when Flang was known as F18 and Classic Flang
was known as Flang. The term "Flang" in this document refers to Classic
Flang, except in the first paragraph.
Also, a trivial HTML error is fixed.
[MLIR][IRDL] Add C API for IRDL Variadicity attributes. (#171076)
This add the basic APIs to create VariadicityAttr and
VariadicityArrayAttr attributes from the C API. This is necessary for
C API users that want to create IRDL dialect declarations.
[mlir][acc] Fix build error for tiling API return value (#171546)
The build error looks like:
error: could not convert 'newLoops' from 'SmallVector<[...],3>' to
'SmallVector<[...],6>'
310 | return newLoops;
The fix is to remove the explicit size in the local declaration for the
SmallVector being returned.
[mlir][acc] Add loop tiling utilities for OpenACC (#171490)
Add utilities in OpenACCUtilsTiling.h/.cpp to support tiling
transformations on acc.loop operations:
- uncollapseLoops: Expand collapsed loops with multiple IVs into nested
loop structures when tile count exceeds collapse count
- tileACCLoops: Transform loop nests into tile and element loops based
on provided tile sizes, with automatic resolution of unknown tile sizes
(tile(*) represented as -1)
These utilities prepare for the ACCLoopTiling pass which handles the
OpenACC loop tile directive.
---------
Co-authored-by: Vijay Kandiah <vkandiah at nvidia.com>
[lldb] Fix capitalization in ambiguous command error (#171519)
We follow LLVM's style guide for diagnostics, which instructs to start
the first sentence with a lowercase letter, and finish the last sentence
without a period, if it would end in one otherwise.
[BOLT][DWARF] Improve reporting on missing DWOs (#171506)
List all required missing DWO files and report a summary with
recommendations on how to proceed.
[lldb][Wasm] Handle imports when parsing Wasm name sections (#170960)
LLDB can use the wasm name section to populate its symbol table and get
names for functions. However the index space used in the name section is
the "function index space" which includes imported as well as locally
defined functions.
[NFC][SPIRV] Fix breakage introduced by #170798 (#171513)
Adding support for i128 missed a few quirks of legalisation, which were
masked previously by early erroring out on bitwidth > 64. i128 uses
should be legal, we decide whether or not the resulting module is viable
(i.e. if the required extensions are present) in the ModuleAnalysis
pass.
[Matrix] Add a row\col major toggle in the clang driver (#167628)
fixes #167621
- define the new options in `Options.td` limit the naming to row-major
or column-major.
- In `ToolChains/Clang.cpp` limit the opt usage to only when
`-fenable-matrix` is used.
---------
Co-authored-by: Florian Hahn <flo at fhahn.com>
AMDGPU: Drop and upgrade llvm.amdgcn.atomic.csub/cond.sub to atomicrmw (#105553)
These both perform conditional subtraction, returning the minuend and
zero respectively, if the difference is negative.