SuccessChanges

Summary

  1. [lldb] Run check-lldb even if check-debuginfo failed (details)
  2. [lldb][monorepo] Run check-lldb even if check-debuginfo failed (details)
  3. Add Python binary path to CMake arguments for the clang-ppc64le-linux builder (details)
  4. [zorg] Add Clang ppc64le cross-targeting buildbot on AIX (details)
Commit 6f34d18cbb983888644b5a33cdeaec14086b5649 by Raphael Isemann
[lldb] Run check-lldb even if check-debuginfo failed
The file was modifiedzorg/jenkins/build.py (diff)
Commit 3918a1a65c54f849b5a7b5b946b5fdc4d47a5cb4 by Raphael Isemann
[lldb][monorepo] Run check-lldb even if check-debuginfo failed
The file was modifiedzorg/jenkins/monorepo_build.py (diff)
Commit 45c4f238dc6fd9855b8578aa3ca3b8db336efb7e by baptiste.saleil
Add Python binary path to CMake arguments for the clang-ppc64le-linux builder

LLVM now requires Python 3.6 which is not available in the official Ubuntu 16.04
repositories. This patch adds the path to a manually built Python 3.6 to the
CMake arguments of the clang-ppc64le-linux builder.
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit d561eb810542da57bea9ee1d26cb88b9c4e7ae0b by Xiangling.Liao
[zorg] Add Clang ppc64le cross-targeting buildbot on AIX

Differential Revision: https://reviews.llvm.org/D95528
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)

Summary

  1. Renovate CMake files in the `llvm-exegesis` tool. (details)
  2. Renovate CMake file for the `llvm-cfi-verify` tool (details)
  3. [flang][fir] Add OpaqueAttr. (details)
  4. [CUDA][HIP] Pass -fgpu-rdc to host clang -cc1 (details)
  5. Make sure a module file with errors produced via '-fallow-pcm-with-compiler-errors' can be loaded when using implicit modules (details)
  6. Revert "Renovate CMake files in the `llvm-exegesis` tool." (details)
  7. [SPARC] Recognize and handle the %lm(sym) operator (details)
  8. Fix failure in cuda-external-tools.cu (details)
  9. [MLIR][NFC] Fix std.copysign op documentation (details)
  10. [TableGen] Use return value from EmitVBRValue instead of calling GetVBRSize on the same value. Consistently use unsigned for child sizes. NFCI (details)
  11. [MC][WebAssembly] Fix provisional values for data alias relocations (details)
  12. [lld-macho] Add ARM64 target arch (details)
  13. [gn build] Port 87104faac433 (details)
  14. [llvm-objcopy][test] Stablize build-id-link-dir.test (details)
  15. PR48587: is_constant_evaluated() should not evaluate to true during a (details)
  16. PR48606: The lifetime of a constexpr heap allocation always started (details)
  17. Revert "[CostModel] Remove VF from IntrinsicCostAttributes" (details)
  18. [lldb] Fix crash in FormatEntity for mangled-name (details)
  19. [CUDA][HIP] Add -fuse-cuid (details)
  20. [lld][WebAssembly] Fix typo in function name (details)
  21. [MLIR] Add C API for navigating up the IR tree (details)
  22. Return "[Test] Add failing test for PR49087" (details)
  23. [Transforms/Utils] Drop unnecessary const from a return type (NFC) (details)
  24. [TableGen] Use ListSeparator (NFC) (details)
  25. [Transforms] Use range-based for loops (NFC) (details)
  26. Mark 4 tests added in 6d766c8bf9df as requiring an x86 backend as they fail when it is not present. (details)
  27. [test] Add REQUIRES: x86-registered-target to DebugInfo/Symbolize/ELF llvm-mc tests (details)
  28. [test] Drop redundant REQUIRES: x86-registered-target (details)
  29. [MLIR][AVX512] Add integration test for vp2intersect (details)
  30. [Docs] Fix Typo (details)
  31. [RISCV] Use whole register load/store for generic load/store. (details)
  32. [NFC] [Coroutine] Remove Unused Variables (details)
  33. [ELF] Rewriting the path of sample profile file for --reproduce response.txt (details)
  34. [-Wcompletion-handler] Support checks with builtins (details)
  35. [ELF] Drop Android specific workaround -m aarch64_elf64_le_vec (details)
  36. [clang][cli] Generate and round-trip language options (details)
  37. [gn build] Port 40c261c41c4c (details)
  38. Revert "Follow up to e05c10380ce7: add aarch64 to test XFails" (details)
  39. Revert "[DebugInfo] Re-engineer a test to be stricter, add XFails" (details)
  40. [clang][codegen] Remember string used to create llvm::Regex for optimization remarks (details)
  41. [clang][cli] Generate and round-trip CodeGen options (details)
  42. [-Wcompletion-handler][NFC] Remove unexpected warnings on Windows (details)
  43. [clangd] Fix false positive in local rename collision detetction (details)
  44. [NFC,Clang] Add LTO Driver Tsan tests (details)
  45. [NFC,Clang] Add LTO Driver DFsan tests (details)
  46. [NFC,Clang] Add LTO Driver MSan,KMsan tests (details)
  47. [NFC,Clang] Add SanCov Driver tests (details)
  48. [NFC,Clang] Add more Asan Driver tests (details)
  49. Improve STRICT_FSETCC codegen in absence of no NaN (details)
  50. Revert STRICT_FCMP nonan optimisation (details)
  51. [AVR] Fix global references to function symbols (details)
  52. [libomptarget][amdgcn] Tolerate deadstripped env variable (details)
  53. [RISCV] Fix shared libs build (details)
  54. [DAGCombine] Do not remove masking argument to FP16_TO_FP for some targets (details)
  55. [X86] Always assign reassoc flag for intrinsics *reduce_add/mul_ps/pd. (details)
  56. [lld/mac] Implement -u flag (details)
  57. [mlir][linalg] Verify indexing map required attributes (details)
  58. [mlir][linalg] Define a depthwise 2-D convolution op (details)
  59. [clang-tidy] fix modernize-use-nullptr false positive with spaceship operator comparisons (details)
  60. [mlir] Add stacksave, stackrestore to llvm dialect (details)
  61. [X86][SSE] foldShuffleOfHorizOp - add SHUFPS v4f32 handling (details)
  62. [clang][cli] Store InputKind in FrontendOptions (details)
  63. Try to fix compiler-rt tests after 87dbdd2e3bb63b on mac and win (details)
  64. [clang][cli] Look up program action argument in a table (details)
  65. [clang][cli] Store unsigned instead of OptSpecifier in table (details)
  66. [mlir][linalg] Fix one more missing NoSideEffect in linalg tensor op (details)
  67. [mlir][linalg] Fix depthwise conv C++ symbol to be consistent (details)
  68. [OpenCL] Fix types with signed prefix in arginfo metadata. (details)
  69. [clangd] Implement semanticTokens modifiers (details)
  70. [clang][cli] Generate and round-trip Frontend options (details)
  71. [lldb] Inline invariant params to AppleThreadPlanStepThrough (NFC) (details)
  72. Revert "[ObjC][ARC] Use operand bundle 'clang.arc.rv' instead of explicitly" (details)
  73. [libomptarget][amdgcn] Tolerate deadstripped device_state variable (details)
  74. [mlir] add support for verification in integration tests (details)
  75. [flang][fir] Add shape, shape_shift, and slice types. (details)
  76. [clangd] Add semanticTokens modifiers for function/class/file/global scope (details)
  77. [llvm-readobj] Print empty line between note sections in GNU mode (details)
  78. [yaml2obj] Handle NT_* string values in for ELF note types (details)
  79. [llvm-readelf] Print raw ELF note contents if we can't parse it (details)
  80. [llvm-readobj] Add support for decoding FreeBSD ELF notes (details)
  81. [MLIR] Replace dialect registration hooks with dialect handle (details)
  82. [dfsan] Refactor loadShadow (details)
  83. [libc++] Remove C++11 work-arounds in src. (details)
  84. [libc++] Require C++20 to build the benchmarks. (details)
  85. [RISCV] Remove SRO* and SLO* instructions from bitmanip. (details)
  86. [ValueTracking] improve analysis for "C << X" and "C >> X" (details)
  87. [IROutliner] Adding instruction strings to IRSimilarityPrinting diagnostics. (details)
  88. Revert "[mlir] add support for verification in integration tests" (details)
  89. [mlir][Linalg] Add a build method for linalg.pad_tensor (details)
  90. [InstCombine] convert assumes to operand bundles (details)
  91. [RISCV] Make the min and max vector width command line options more consistent and check their relationship to each other. (details)
  92. GlobalISel: Fix using wrong calling convention for callees (details)
  93. AMDGPU: Fix verifier error with argument passed in CSR SGPR (details)
  94. Revert "[libc++] Require C++20 to build the benchmarks." (details)
  95. [CUDA, NVPTX] Allow targeting sm_86 GPUs. (details)
  96. [Attributor][FIX] Do not create UB by introducing a `noundef undef` (details)
  97. [WebAssembly] Use data sections by default (details)
  98. [mlir][spirv] Add support for sampled image type (details)
  99. [clangd] Expose more dependent-name detail via semanticTokens (details)
  100. [libc++] Add `noexcept` to `string::find` and similar members. (details)
  101. [mlir][IR] Remove the concept of `OperationProperties` (details)
  102. [lldb] [Process/FreeBSDRemote] Introduce powerpc support (details)
  103. [libc++] [LWG2993] reference_wrapper<T> conversion from U&& (details)
  104. [lld][WebAssembly] Allow --export of optional start/stop symbols (details)
  105. [MLIR] Add context accessor to identifier (details)
  106. PR48545: Access check the inherited constructor, not the inheriting (details)
  107. [AIX][llvm][support] Implement getHostCPUName (details)
  108. [AArch64][GlobalISel] Allow vector load legalization into 128-bit-wide types (details)
  109. [VPlan] Use VPUser to manage CondBit (details)
  110. [llvm-objdump][test] Fix --prefix tests for system-windows (details)
  111. [mlir] Add initial support for an alias analysis framework in MLIR (details)
  112. [mlir][OpFormatGen] Refactor `type_ref` into a more general `ref` directive (details)
  113. [lld][WebAssembly] Fix segfault in map file support (details)
  114. [flang][fir] Updates to internal name uniquer. (details)
  115. Add NoSideEffect trait to shape.split_at and shape.concat (details)
  116. Add documentation for the extra_args parameter to breakpoint commands. (details)
  117. Remove trailing spaces after \ in comments. (details)
  118. [LLDB] Remove uneeded CopyType from BlockPointerSyntheticFrontEnd (details)
  119. [Polly] Remove use of -O3 in regression test. (details)
  120. Revert "[InstCombine] convert assumes to operand bundles" (details)
  121. Fix side-effect detection in LLVMIRIntrinsicGen. (details)
  122. Add LLVMIR Dialect counterparts of @llvm.maximum and @llvm.minimum. (details)
  123. Use internal_dict everywhere we refer to the python session dict in docs. (details)
  124. Fix xray fdr mode to allow multiple flushes (details)
  125. Fix JSON formatting when converting to trace event format (details)
  126. [clang][cli] Fix gcc "enumeral and non-enumeral type in conditional expression" warning (NFC) (details)
  127. [libcxx] adds concept `std::convertible_to` (details)
  128. [MLIR] Update affine.for unroll utility for iter_args support (details)
  129. [MLIR] NFC Fix vector transforms build warnings (details)
  130. [clang][driver] Only warn once about invalid library values (details)
  131. [Test] Two more tests on usub (details)
  132. Fix deprecated usage of `mallinfo` (details)
  133. [Polly] Port ForwardOpTree to the NewPM. (details)
  134. [Polly] Port DeLICM to the NewPM. (details)
  135. [Polly] Port PruneUnprofitable to the NewPM. (details)
  136. [Polly] Register pass-instrumentation for NewPM's Scop level. (details)
  137. [Polly] Add TargetTransformInfo to ScopPass standard analysis results. (details)
  138. [Polly] Port IslScheduleOptimizer to the NewPM. (details)
  139. [Polly] Improve Simplify pass PM integration. (details)
  140. [Polly] Make NewPM's IslAstAnalysis more similar to the legacy IslAstInfoWrapperPass. (details)
  141. [Polly] Make the NewPM pass pipeline more similar to the legacy's. (details)
  142. [TableGen] Use ListSeparator (NFC) (details)
  143. [TableGen] Drop unnecessary const from return types (NFC) (details)
  144. [SelectionDAG] Use range-based for loops (NFC) (details)
  145. [mlir][shape] Generalize broadcast to a variadic number of shapes (details)
  146. Revert "[analyzer] RetainCountChecker: Add a suppression for OSSymbols." (details)
  147. [AArch64][GlobalISel] Fold selects fed by G_PTR_ADD (details)
  148. [WebAssembly] Enable loop unrolling (details)
  149. [ValueTypes] Add MVT for nxv1bf16. (details)
  150. [LoopVectorize] NFC: Change computeFeasibleMaxVF to operate on ElementCount. (details)
  151. [OpenCL] Add cl_khr_subgroup_non_uniform_arithmetic to TableGen BIFs (details)
  152. [OpenCL] Add cl_khr_subgroup_clustered_reduce to TableGen BIFs (details)
  153. [flang][driver] Add support for -fopenmp and -fopenacc (details)
  154. Revert rGe1172959226689a "[X86][AVX] canonicalizeLaneShuffleWithRepeatedOps - merge VPERMILPD ops with different low/high masks." (details)
  155. [clang][cli] Generate and round-trip PreprocessorOutput options (details)
  156. [clang][cli] Generate and round-trip Target options (details)
  157. Reapply [DebugInfo] Re-engineer a test to be stricter, add XFails (details)
  158. [RISCV] Add support for selecting vid.v from build_vector (details)
  159. [mlir] enable delayed registration of dialect interfaces (details)
  160. [mlir] avoid exposing mutable DialectRegistry from MLIRContext (details)
  161. [clang][cli] Generate and round-trip DependencyOutput options (details)
  162. [clang][cli] Generate and round-trip Diagnostic options (details)
  163. [clang][cli] Extract FileSystem and Migrator options parsing/generation (details)
  164. [clang][cli] Declare local variable for marshalling macros (details)
  165. [flang][driver] Add missing dependency in unit tests (nfc) (details)
  166. [Sparc] Support relocatable expressions in the assembler (details)
  167. [gn build] (manually) port e89fcbfad6a3 (details)
  168. [clang][NFC] Fix undefined-libs tests (details)
  169. [mlir][Linalg] Add a vectorization pattern for linalg::PadTensorOp (details)
  170. [DAGCombiner] Don't fold FCOPYSIGN vector sign operand casts (details)
  171. clang: try to fix Driver/undefined-libs.cpp on non-linux (details)
  172. [AMDGPU] Fix comments in SILoadStoreOptimizer::offsetsCanBeCombined (details)
  173. [AMDGPU] Add another test case for combining DS reads (details)
  174. Avoid conflicts between debug-info and pseudo-probe profiling (details)
  175. Reland [DWARF] Location-less inlined variables should not have DW_TAG_variable (details)
  176. [libc++] Fix copy-paste mistake in __threading_support (details)
  177. Revert "[clang][driver] Only warn once about invalid library values" (details)
  178. Revert "Revert "[clang][driver] Only warn once about invalid library values"" (details)
  179. [mlir][Linalg] Fix pad hoisting. (details)
  180. [GWP-ASan] Add back some headers removed by IWYU. (details)
  181. [Polly] Fix -DPOLLY_ENABLE_GPGPU_CODEGEN=off build after 222d380d2f57cc71bb613b5c01ecf17cd1f61fa2 (details)
  182. [Polly] Fix -Wunused-lambda-capture (details)
  183. [libcxx] adds concept `std::move_constructible` (details)
  184. Add convenience C++ helper to manipulate ranked strided memref (details)
  185. [llvm-cfi-verify] Set UseSymbolTable to false (details)
  186. DebugInfo/Symbolize: Retrieve filename from the preceding STT_FILE for .symtab symbolization (details)
  187. [libcxx] adds concept `std::copy_constructible` (details)
  188. [RISCV] Add support for selecting vrgather.vx/vi for fixed vector splat shuffles. (details)
  189. Revert "Add convenience C++ helper to manipulate ranked strided memref" (details)
  190. [CMake] Remove some dead code in llvm_install_library_symlink() (details)
  191. [RISCV] Add support for matching .vf forms of fadd/fsub/fmul/fdiv/fma for fixed vectors. (details)
  192. [clang] Add support for attribute 'swift_async_error' (details)
  193. [libc++] Remove c++98 Lit features in the test suite (details)
  194. Specify that some flags are legacy PM-specific (details)
  195. Add convenience C++ helper to manipulate ranked strided memref (details)
  196. [Thumb2] support `movs pc, lr` alias for `subs pc, lr, #0`/`eret` (details)
  197. [libcxx] adds [concepts.arithmetic] (details)
  198. [RISCV] Remove superfluous semicolon. NFC (details)
  199. [opt][NewPM] Add a --print-passes flag to print all available passes (details)
  200. Renovate CMake files in the `llvm-exegesis` tool. (details)
  201. [Polly] Do not use -O3 pipeline for single pass test. (details)
  202. [Polly] Added dedicated test for working -O3 pipeline. (details)
  203. [libcxx] adds concept std::derived_from (details)
  204. [libcxx] adds concepts `std::invocable` and `std::regular_invocable` (details)
  205. [mlir][sparse] sparse tensor storage implementation (details)
  206. Change type constraint of the "index" in "shape.split_at" to Shape_SizeOrIndexType (details)
  207. [OpenMP] Add lower and upper bound in num_teams clause (details)
  208. [lldb/test] Move and improve TestPlatformProcessConnect.py (details)
  209. Fix StridedMemRefType operator[] SFINAE to allow correctly selecting the `int64_t` overload for non-container operands (details)
  210. [InstCombine] add tests for lshr with mul; NFC (details)
  211. [InstCombine] fold lshr(mul X, SplatC), C2 (details)
  212. [SCEV] Add a missing AssumptionCache parameter (details)
  213. Add missing nullptr check. (details)
  214. [libc++] Use builtins in more math.h functions. (details)
  215. [CSSPGO] Unblock optimizations with pseudo probe instrumentation. (details)
  216. Make gCrashRecoveryEnabled thread local (details)
  217. [clangd] Remove support for pre-standard semanticHighlighting notification (details)
  218. [clangd] Remove redundant -fno-delayed-template-parsing in tests. NFCI (details)
  219. [AArch64][GlobalISel] Fold G_ADD into the cset for G_ICMP (details)
  220. [SampleFDO][NFC] Refactor SampleProfileLoader to reuse in CodeGen (details)
  221. [lldb] Minor cleanups to ThreadPlan.h (NFC) (details)
  222. Revert "Make gCrashRecoveryEnabled thread local" (details)
  223. [NFC] Simplify test (details)
  224. [Clang, NewPM] Add KMSan support (details)
  225. [opt] Add helpful alternatives for -analyze under new PM (details)
  226. [asan][test] Fix Linux/odr-violation.cpp after symbolizer change D95927 (details)
  227. [SampleFDO] Silence -Wnon-virtual-dtor warning (details)
  228. [CSSPGO] Restrict pseudo probe tests to x86_64 only. (details)
  229. [AArch64][GlobalISel] Perform load/store extended reg folding with optsize (details)
  230. [mlir][Linalg] Fix crash when tileSizeComputationFunction is left unspecified (details)
  231. [mlir] NFC - Extend inferResultType API for SubViewOp and SubTensorOp (details)
  232. [lldb] Use internal_dict name over dict in python examples (details)
  233. [mlir] Introduce more intuitive wording for attributes. (details)
  234. Minor fixes to Type ODS docs. (details)
  235. [docs] Make clearer in WritingAnLLVMPass that the legacy PM isn't the default (details)
  236. [MLIR][TOSA] Tosa elementwise broadcasting (details)
  237. [AArch64][GlobalISel] Don't perform the mul const combine with G_PTR_ADD (details)
  238. [test/ubsan] Allow unused FileCheck prefixes in TypeCheck/vptr.cpp (details)
Commit 549a1e2e59508d4aeaf9a93912b479798954bd5e by vtjnash
Renovate CMake files in the `llvm-exegesis` tool.

This attempts to move all tools over to using `add_llvm_library` for
better consistency. After doing this, I noticed it ended up as nearly a
reimplementation of https://reviews.llvm.org/rL342148, which later got
reverted in r342336 (b09a8c9bd9b819741b38071a7ccd95042ef2643a).

With ccache and ninja on a large core machine (40), I haven't run into
build errors, so I'm hopeful it's better now, though it doesn't seem to
be any different / new.

Reviewed By: stephenneuendorffer

Differential Revision: https://reviews.llvm.org/D90970
The file was modifiedllvm/tools/llvm-exegesis/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
The file was modifiedllvm/utils/TableGen/GlobalISel/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt
Commit 16e7973c5d8fb543ea9e91735be8610a8b1c262a by vtjnash
Renovate CMake file for the `llvm-cfi-verify` tool

Hopefully this is the non-problematic part from https://reviews.llvm.org/rL342148, which later got reverted in r342336 (b09a8c9bd9b819741b38071a7ccd95042ef2643a) due to problems with the llvm-exegesis part of the change. That part would also still be desirable, but currently appears not to be possible (https://reviews.llvm.org/D81922).

I think this should replace https://reviews.llvm.org/D44650, per Keno's comment there.

Reviewed By: hctim

Differential Revision: https://reviews.llvm.org/D90969
The file was modifiedllvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
Commit 2cd0a113df2c12405e7a81f970f2df5a0de46df2 by eschweitz
[flang][fir] Add OpaqueAttr.

Add the opaque attribute class used in flang.

https://github.com/flang-compiler/f18-llvm-project/pull/402

Differential Revision: https://reviews.llvm.org/D96293
The file was modifiedflang/include/flang/Optimizer/Dialect/FIRAttr.h
The file was modifiedflang/test/Fir/fir-ops.fir
The file was modifiedflang/lib/Optimizer/Dialect/FIRAttr.cpp
The file was modifiedflang/lib/Optimizer/Dialect/FIRDialect.cpp
Commit 1dab94f9ede5d506d6ff9c61448a8e20d43e05a7 by Yaxun.Liu
[CUDA][HIP] Pass -fgpu-rdc to host clang -cc1

Currently -fgpu-rdc is not passed to host clang -cc1.
This causes issue because -fgpu-rdc affects shadow
variable linkage in host compilation.

Reviewed by: Artem Belevich

Differential Revision: https://reviews.llvm.org/D96105
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/hip-rdc-device-only.hip
The file was modifiedclang/test/Driver/hip-toolchain-rdc-static-lib.hip
The file was modifiedclang/test/Driver/hip-toolchain-rdc.hip
The file was modifiedclang/test/Driver/hip-toolchain-rdc-separate.hip
Commit a8cb39bab04c317c9886ec3a332f3b70ce27ae4f by kyrtzidis
Make sure a module file with errors produced via '-fallow-pcm-with-compiler-errors' can be loaded when using implicit modules

A module with errors would be marked as out-of-date, then the `compilerModule` action would produce it, but due to the error it would be treated as failure and the resulting PCM would not get used.

rdar://74087062

Differential Revision: https://reviews.llvm.org/D96246
The file was modifiedclang/test/Modules/load-module-with-errors.m
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/Frontend/CompilerInstance.cpp
The file was modifiedclang/include/clang/Serialization/ASTReader.h
Commit 10c1d290d92fe435634051a4ad47f76c0f948796 by vtjnash
Revert "Renovate CMake files in the `llvm-exegesis` tool."

This reverts commit 549a1e2e59508d4aeaf9a93912b479798954bd5e.

I see some buildbot failures, so reverting while I look into them.
The file was modifiedllvm/tools/llvm-exegesis/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
The file was modifiedllvm/utils/TableGen/GlobalISel/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
Commit 45e33e8ba9e081afffd261e78be788a9709651d9 by brad
[SPARC] Recognize and handle the %lm(sym) operator

Reviewed By: joerg

Differential Revision: https://reviews.llvm.org/D77737
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
The file was modifiedllvm/test/MC/Sparc/sparc-relocations.s
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcAsmPrinter.cpp
Commit 52f312c69e1049e1f3034baf7cb9d88875f45c9a by Yaxun.Liu
Fix failure in cuda-external-tools.cu

-fgpu-rdc is output in different order
The file was modifiedclang/test/Driver/cuda-external-tools.cu
Commit 333d2cfc707d3939f44b24f87e799a5b2fc7ca5a by uday
[MLIR][NFC] Fix std.copysign op documentation

Fix std.copysign op documentation. NFC.

Differential Revision: https://reviews.llvm.org/D96217
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
Commit 622611f7e5b2c42ad3c34aec4a77a82adf6d9e36 by craig.topper
[TableGen] Use return value from EmitVBRValue instead of calling GetVBRSize on the same value. Consistently use unsigned for child sizes. NFCI

getSize and setSize both use unsigned. So size_t doesn't
increase range here and might get truncated if passed to
setSize.

Also not sure why EmitVBRValue was returning uint64_t, but used
an unsigned to supply the value.
The file was modifiedllvm/utils/TableGen/DAGISelMatcherEmitter.cpp
Commit 01a48535c31169461d4eedddb48c00b79277f388 by sbc
[MC][WebAssembly] Fix provisional values for data alias relocations

When calculating the symbol offsets to write as provisitonal values
in object files we are only interested in the offset of the symbol
itself.  For aliases this offset already includes the offset of the
base symbol.

The testin question was added back in https://reviews.llvm.org/D87407
but I believe the expectations here were incorrect.   sym_a lives
at offset 4 and sym_b lives 4 bytes into that (should be 8).

The addresses of the 3 symbosl in this object file are:

foo  : 0
sym_a: 4
sym_b: 8

Differential Revision: https://reviews.llvm.org/D96234
The file was modifiedllvm/test/MC/WebAssembly/alias-offset.s
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
Commit 87104faac4336f14cf5da09a36f18f762778c8ca by gkm
[lld-macho] Add ARM64 target arch

This is an initial base commit for ARM64 target arch support. I don't represent that it complete or bug-free, but wish to put it out for review now that some basic things like branch target & load/store address relocs are working.

I can add more tests to this base commit, or add them in follow-up commits.

It is not entirely clear whether I use the "ARM64" (Apple) or "AArch64" (non-Apple) naming convention. Guidance is appreciated.

Differential Revision: https://reviews.llvm.org/D88629
The file was modifiedlld/MachO/Target.h
The file was modifiedlld/test/MachO/Inputs/MacOSX.sdk/usr/lib/libSystem.tbd
The file was modifiedlld/MachO/Arch/X86_64.cpp
The file was modifiedlld/MachO/Target.cpp
The file was modifiedlld/MachO/InputSection.cpp
The file was removedlld/test/MachO/relocations.s
The file was modifiedlld/MachO/InputFiles.cpp
The file was addedlld/test/MachO/x86-64-relocs.s
The file was addedlld/MachO/Arch/ARM64.cpp
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/MachO/CMakeLists.txt
The file was modifiedlld/test/MachO/Inputs/MacOSX.sdk/usr/lib/libc++.tbd
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/test/MachO/Inputs/MacOSX.sdk/usr/lib/libc++abi.tbd
Commit 71a79e7b4b93b27676d968c23e764a6230827908 by llvmgnsyncbot
[gn build] Port 87104faac433
The file was modifiedllvm/utils/gn/secondary/lld/MachO/BUILD.gn
Commit 3e837e17357e2b0a64638e0f7c052b9f4f2f2d3d by i
[llvm-objcopy][test] Stablize build-id-link-dir.test
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/build-id-link-dir.test
Commit c945dc4a5023d6a17d11fcda76509b94b36e34fc by richard
PR48587: is_constant_evaluated() should not evaluate to true during a
variable's destruction if it didn't do so during construction.

The standard doesn't give any guidance as to what to do here, but this
approach seems reasonable and conservative, and has been proposed to the
standard committee.
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/CodeGenCXX/builtin-is-constant-evaluated.cpp
Commit 21e8bb83253e1a2f4b6fad9b53cafe8c530a38e2 by richard
PR48606: The lifetime of a constexpr heap allocation always started
during the same evaluation.

It looks like the only case for which this matters is determining
whether mutable subobjects of a heap allocation can be modified during
constant evaluation.
The file was modifiedclang/test/SemaCXX/cxx2a-constexpr-dynalloc.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
Commit 92028062413907e1c10b16e7c338e0745a11a051 by Jinsong Ji
Revert "[CostModel] Remove VF from IntrinsicCostAttributes"

This reverts commit 502a67dd7f23901834e05071ab253889f671b5d9.

This expose a failure in test-suite build on PowerPC,
revert to unblock buildbot first,
Dave will re-commit in https://reviews.llvm.org/D96287.

Thanks Dave.
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/WebAssembly/no-vectorize-rotate.ll
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
Commit 7dc324aafa2b17a4f9a992b9727a3642505053a6 by davelee.com
[lldb] Fix crash in FormatEntity for mangled-name

Check a `Block` pointer before dereferencing.

Using `function.mangled-name` led to a crash for a frame where the symbol
context had no block info. In my case, the frame's function was a system frame.

Differential Revision: https://reviews.llvm.org/D96307
The file was modifiedlldb/source/Core/FormatEntity.cpp
Commit 98c21289f1d239f39fa549ae01b17efffce6a7c0 by Yaxun.Liu
[CUDA][HIP] Add -fuse-cuid

This patch added a distinct CUID for each input file, which is represented by InputAction.
clang initially creates an InputAction for each input file for the host compilation. In CUDA/HIP action
builder, each InputAction is given a CUID and cloned for each GPU arch, and the CUID is also cloned. In this way,
we guarantee the corresponding device and host compilation for the same file shared the
same CUID. On the other hand, different compilation units have different CUID.

-fuse-cuid=random|hash|none is added to control the method to generate CUID. The default
is hash. -cuid=X is also added to specify CUID explicitly, which overrides -fuse-cuid.

Reviewed by: Artem Belevich

Differential Revision: https://reviews.llvm.org/D95007
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Driver/Action.cpp
The file was modifiedclang/include/clang/Driver/Action.h
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was addedclang/test/Driver/hip-cuid.hip
The file was addedclang/test/Driver/hip-cuid-hash.hip
Commit 88e4056b44ade043377a8052d342daf4fdc276fe by sbc
[lld][WebAssembly] Fix typo in function name

addOptionalGlobalSymbols should be addOptionalGlobalSymbol.

Also, remove unnecessary additional argument to make the signature match
the sibling function: addOptionalDataSymbol.

Differential Revision: https://reviews.llvm.org/D96305
The file was modifiedlld/wasm/SymbolTable.h
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/wasm/SymbolTable.cpp
Commit 8f130f108fedfcf6cb80ef594560a87341028a37 by GeorgeLyon
[MLIR] Add C API for navigating up the IR tree

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D96301
The file was modifiedmlir/test/CAPI/ir.c
The file was modifiedmlir/include/mlir-c/IR.h
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
Commit 69653d44de872d60211fc7563583f63527e490e0 by mkazantsev
Return "[Test] Add failing test for PR49087"

Another attempt, this time with tripple fix.
The file was addedllvm/test/CodeGen/X86/pr49087.ll
Commit de6c49ae3182e0833eddbec97a729ad60cad2ee2 by kazu
[Transforms/Utils] Drop unnecessary const from a return type (NFC)

Identified with const-return-type.
The file was modifiedllvm/lib/Transforms/Utils/PredicateInfo.cpp
Commit 94c350847ac5966202ffebe8792f52734753423e by kazu
[TableGen] Use ListSeparator (NFC)
The file was modifiedllvm/utils/TableGen/SearchableTableEmitter.cpp
Commit 302313a264c4e49507789919982cdb20277b2c3c by kazu
[Transforms] Use range-based for loops (NFC)
The file was modifiedllvm/lib/Transforms/IPO/ExtractGV.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/DependencyAnalysis.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
The file was modifiedllvm/lib/Transforms/IPO/StripSymbols.cpp
Commit 4c23e42fe5b4b93a9d440f95c7b463da53504dd4 by douglas.yung
Mark 4 tests added in 6d766c8bf9df as requiring an x86 backend as they fail when it is not present.

This should fix buildbot failures like http://lab.llvm.org:8011/#/builders/107/builds/4469
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ifunc.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ignored.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-file.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-notype.s
Commit b48aea43d00de5091af58b449978a033423ab4c5 by i
[test] Add REQUIRES: x86-registered-target to DebugInfo/Symbolize/ELF llvm-mc tests
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ignored.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ifunc.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-file.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-notype.s
Commit b799289911062c1d5e1ea93b255b1300a9ca45bf by i
[test] Drop redundant REQUIRES: x86-registered-target
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ifunc.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-file.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-notype.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ignored.s
Commit b6910fd31d85b9f60504e0a83c184226ead8c169 by springerm
[MLIR][AVX512] Add integration test for vp2intersect

Differential Revision: https://reviews.llvm.org/D96306
The file was modifiedmlir/CMakeLists.txt
The file was modifiedmlir/integration_test/lit.site.cfg.py.in
The file was addedmlir/integration_test/Dialect/Vector/CPU/AVX512/lit.local.cfg
The file was modifiedmlir/integration_test/CMakeLists.txt
The file was addedmlir/integration_test/Dialect/Vector/CPU/AVX512/test-vp2intersect-i32.mlir
Commit 1473b00cf814fae5dbd3fe4f48f6a75a0b2b9094 by zakk.chen
[Docs] Fix Typo
The file was modifiedllvm/docs/CommandGuide/tblgen.rst
Commit a2d19bad07454ae7936d8f2b8482e24d57954fc4 by kai.wang
[RISCV] Use whole register load/store for generic load/store.

In vector v0.10, there are whole vector register load/store
instructions. I suggest to use the whole register load/store
instructions for generic load/store for scalable vector types. It could
save up vset{i}vl{i} for these load/store.

For fractional LMUL, I keep to use vle{eew}.v/vse{eew}.v instructions to
load/store partial vector registers.

Differential Revision: https://reviews.llvm.org/D95853
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmsub-sdnode.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/load-add-store-32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwaddu.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdiv-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vaadd-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsmul-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsgnj-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssub-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsubu.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsll-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfdiv-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmin-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmulh-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmin-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsub.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsaddu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsgnjx-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwadd.w-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsub-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vasubu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vaadd-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfwadd.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vadd-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmax-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsub-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vor-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfdiv-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vand-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmulhu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdivu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfadd-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vminu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmul-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssubu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmul-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdiv-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vaaddu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vand-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoV.td
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmulhu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsadd-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/load-add-store-64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsra-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssrl-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfwsub.w-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsubu.w-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vxor-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmulhsu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vadd-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vrem-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vrem-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsll-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/scalable-vector-struct.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vremu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwaddu.w-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmulhsu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsadd-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsrl-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsmul-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/add-vsetvli-vlmax.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfwadd.w-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsub-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssubu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmaxu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsgnjn-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfnmadd-sdnode.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsra-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssub-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vminu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssra-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwadd.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsgnjx-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmax-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmul-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmax-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssrl-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vasubu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsaddu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vxor-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmax-rv64.ll
The file was modifiedllvm/test/MC/RISCV/rvv/invalid.s
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsub.w-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsgnjn-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vasub-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmulh-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsrl-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vrgather-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vremu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vasub-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmin-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsgnj-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmaxu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vor-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vrgather-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfnmsub-sdnode.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssra-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfwsub.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/load-add-store-8.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdivu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/load-add-store-16.ll
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfadd-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfmul-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vaaddu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmin-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfsub-rv32.ll
Commit 88d7876e1e4654971358d53c5ee5a0b7b5f3a6ce by yedeng.yd
[NFC] [Coroutine] Remove Unused Variables
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
Commit 5b8db127a30f583c5437579c8a9412d07745f2b1 by hoy
[ELF] Rewriting the path of sample profile file for --reproduce response.txt

Rewritting the path of the sample profile file in response.txt to be relative to the repro tar.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D96193
The file was modifiedlld/test/ELF/reproduce-lto.s
The file was modifiedlld/ELF/DriverUtils.cpp
Commit d1522d349f4d4b960ff7a37303103e95aa535af3 by vsavchenko
[-Wcompletion-handler] Support checks with builtins

It is very common to check callbacks and completion handlers for null.
This patch supports such checks using built-in functions:
  * __builtin_expect
  * __builtin_expect_with_probablity
  * __builtin_unpredictable

rdar://73455388

Differential Revision: https://reviews.llvm.org/D96268
The file was modifiedclang/test/SemaObjC/warn-called-once.m
The file was modifiedclang/lib/Analysis/CalledOnceCheck.cpp
Commit d82679d8050130522ebcf90c6061211a25b1c83d by i
[ELF] Drop Android specific workaround -m aarch64_elf64_le_vec

`extern const bfd_target aarch64_elf64_le_vec;` is a variable in BFD.
It was somehow misused as an emulation by Android.

```
% aarch64-linux-gnu-ld -m aarch64_elf64_le_vec a.o
aarch64-linux-gnu-ld: unrecognised emulation mode: aarch64_elf64_le_vec
Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi
```

Acked by Stephen Hines, who removed the flag from Android a while back.
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/test/ELF/emulation-aarch64.s
Commit 40c261c41c4ceb0dff802d6a83f7ae65af936af8 by Jan Svoboda
[clang][cli] Generate and round-trip language options

This patch implements generation of remaining language options and tests it by performing parse-generate-parse round trip (on by default for assert builds, off otherwise).

This patch also correctly reports failures in `parseSanitizerKinds`, which is necessary for emitting diagnostics when an invalid sanitizer is passed to `-fsanitize=` during round-trip.

This patch also removes TableGen marshalling classes from two options:
* `fsanitize_blacklist` When parsing: it's first initialized via the generated code, but then also changed by manually written code, which is confusing.
* `fopenmp` When parsing: it's first initialized via generated code, but then conditionally changed by manually written code. This is also confusing. Moreover, we need to do some extra checks when generating it, which would be really cumbersome in TableGen. (Specifically, not emitting it when `-fopenmp-simd` was present.)

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D95793
The file was addedclang/unittests/Basic/SanitizersTest.cpp
The file was modifiedclang/unittests/Basic/CMakeLists.txt
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Basic/Sanitizers.h
The file was modifiedclang/lib/Basic/Sanitizers.cpp
Commit 76748b67d107284f3d7eaf284c2a56b921d4b35a by llvmgnsyncbot
[gn build] Port 40c261c41c4c
The file was modifiedllvm/utils/gn/secondary/clang/unittests/Basic/BUILD.gn
Commit 2ae580ab5da2bd1812e22af142150390b0d57f1b by jeremy.morse
Revert "Follow up to e05c10380ce7: add aarch64 to test XFails"

This reverts commit 4fd29e4fd3c5490b658f4b467d94aeed6b3d1ac3.

There's a report in D95617 that this is failing on what (I think?) is an
aarch64 bot, which should be covered by the XFail list... reverting this
follow-up and the base patch until I work out what's wrong here.
The file was modifiedllvm/test/DebugInfo/Generic/missing-abstract-variable.ll
Commit d7d0b17de77ee14efeb920e543f7ed0b783182d2 by jeremy.morse
Revert "[DebugInfo] Re-engineer a test to be stricter, add XFails"

This reverts commit e05c10380ce7c18d1a232dcc5baa7c10d8bd2bf6.

See parent commit, there's a bot which isn't captured in the XFail list,
reverting til I work out what it is.
The file was modifiedllvm/test/DebugInfo/Generic/missing-abstract-variable.ll
Commit ec12f5febed04dd32e7d4b766b2853d50fca9657 by Jan Svoboda
[clang][codegen] Remember string used to create llvm::Regex for optimization remarks

Regular expression patterns passed through the command line are being used to create an instances of `llvm::Regex` and thrown away.

There is no API to serialize `Regex` back to the original pattern. This means we have no way to reconstruct the original pattern from command line. This is necessary for serializing `CompilerInvocation`.

This patch stores the original pattern string in `CodeGenOptions` alongside the `llvm::Regex` instance.

Reviewed By: dexonsmith, thegameg

Differential Revision: https://reviews.llvm.org/D96036
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit e721bc9effefab8a625e913e7391bdd340693ddc by Jan Svoboda
[clang][cli] Generate and round-trip CodeGen options

This patch implements generation of remaining codegen options and tests it by performing parse-generate-parse round trip.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96056
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
The file was modifiedclang/include/clang/Basic/XRayInstr.h
The file was modifiedclang/lib/Basic/XRayInstr.cpp
The file was modifiedllvm/include/llvm/Option/OptParser.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 2f994d4ee920983cf7624ce2208756e0c7d19007 by vsavchenko
[-Wcompletion-handler][NFC] Remove unexpected warnings on Windows
The file was modifiedclang/test/SemaObjC/warn-called-once.m
Commit b60428c7ea685e338df3369807c9b650f994554b by kbobyrev
[clangd] Fix false positive in local rename collision detetction

Fixes https://github.com/clangd/clangd/issues/685

Reviewed By: hokein

Differential Revision: https://reviews.llvm.org/D96247
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit ea891099f2bc5d1749c7ce123391e530ed2ab9ef by Vitaly Buka
[NFC,Clang] Add LTO Driver Tsan tests
The file was modifiedclang/test/Driver/tsan.c
Commit 9ff678f614d37487d0d117709aa3263fbc0d8423 by Vitaly Buka
[NFC,Clang] Add LTO Driver DFsan tests
The file was addedclang/test/Driver/dfsan.c
Commit dde9f0fa9834afe02e32e27cc822cccb8ef6aeff by Vitaly Buka
[NFC,Clang] Add LTO Driver MSan,KMsan tests
The file was modifiedclang/test/Driver/msan.c
Commit 4ddf7562d5cce153b982cf16c2a776095495a2f9 by Vitaly Buka
[NFC,Clang] Add SanCov Driver tests
The file was addedclang/test/Driver/sancov.c
Commit 03c6a6d9ef5052a5eeedddf4d2d256be0e1d3348 by Vitaly Buka
[NFC,Clang] Add more Asan Driver tests
The file was modifiedclang/test/Driver/asan.c
Commit b7b61a7b5bc63df0d84f3722a1dcfa375c35ba30 by thomasp
Improve STRICT_FSETCC codegen in absence of no NaN

As for SETCC, use a less expensive condition code when generating
STRICT_FSETCC if the node is known not to have Nan.

Reviewed By: SjoerdMeijer

Differential Revision: https://reviews.llvm.org/D91972
The file was addedllvm/test/CodeGen/AArch64/arm64-constrained-fcmp-no-nans-opt.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Commit a50ab8672d160178d7e6daef16b63bc7f61a3e94 by thomasp
Revert STRICT_FCMP nonan optimisation

Summary: This reverts commit b7b61a7b5bc63df0d84f3722a1dcfa375c35ba30 which fails on some of the builders: http://lab.llvm.org:8011/#/builders/14/builds/5806

Reviewers:

Subscribers:
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was removedllvm/test/CodeGen/AArch64/arm64-constrained-fcmp-no-nans-opt.ll
Commit 2ccb941740e608a9cf70a7c5840497149654b0f6 by me
[AVR] Fix global references to function symbols

References to functions are in program memory and need a `pm()` fixup. This should fix trait objects for Rust on AVR.

Differential Revision: https://reviews.llvm.org/D87631

Patch by Alex Mikhalev.
The file was addedllvm/test/CodeGen/AVR/rust-trait-object.ll
The file was modifiedllvm/test/MC/AVR/relocations.s
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp
The file was modifiedllvm/include/llvm/MC/MCExpr.h
The file was modifiedllvm/lib/MC/MCExpr.cpp
The file was modifiedllvm/lib/Target/AVR/AVRAsmPrinter.cpp
Commit 4756f76bce7835dd233c82637bf60082469f9320 by jonathanchesterfield
[libomptarget][amdgcn] Tolerate deadstripped env variable

[libomptarget][amdgcn] Tolerate deadstripped env variable

Discovered by Pushpinder. If the device_environment variable is unused
it can be deadstripped, in which case we should not abort due to it
missing. This change is safe in that a missing symbol which is actually
used can be reported by both linker and loader, and a missing unused
symbol is better deadstripped than left in the image.

Reviewed By: pdhaliwal

Differential Revision: https://reviews.llvm.org/D96329
The file was modifiedopenmp/libomptarget/plugins/amdgpu/src/rtl.cpp
Commit f6e4b9fc060a7d8324350ce55bcf1a9a59b06997 by nemanja.i.ibm
[RISCV] Fix shared libs build

Commit a2d19bad07454ae7936d8f2b8482e24d57954fc4 introduced a
dependency in the RISCV disassembler on two additional libraries
(MC, RISCVDesc) which wasn't added to the CMakeLists.txt. This
causes shared library builds to break. This patch just adds them
to fix failures seen on some bots, such as the PPC64LE Multistage.
The file was modifiedllvm/lib/Target/RISCV/Disassembler/CMakeLists.txt
Commit a5222aa0858a42660629c410a5b669dee16a4359 by nemanja.i.ibm
[DAGCombine] Do not remove masking argument to FP16_TO_FP for some targets

As of commit 284f2bffc9bc5, the DAG Combiner gets rid of the masking of the
input to this node if the mask only keeps the bottom 16 bits. This is because
the underlying library function does not use the high order bits. However, on
PowerPC's ELFv2 ABI, it is the caller that is responsible for clearing the bits
from the register. Therefore, the library implementation of __gnu_h2f_ieee will
return an incorrect result if the bits aren't cleared.

This combine is desired for ARM (and possibly other targets) so this patch adds
a query to Target Lowering to check if this zeroing needs to be kept.

Fixes: https://bugs.llvm.org/show_bug.cgi?id=49092

Differential revision: https://reviews.llvm.org/D96283
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was addedllvm/test/CodeGen/PowerPC/pr49092.ll
The file was modifiedllvm/test/CodeGen/PowerPC/pr48519.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/test/CodeGen/PowerPC/handle-f16-storage-type.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
Commit dd2460ed5d77d908327ce29a15630cd3268bd76e by pengfei.wang
[X86] Always assign reassoc flag for intrinsics *reduce_add/mul_ps/pd.

Intrinsics *reduce_add/mul_ps/pd have assumption that the elements in
the vector are reassociable. So we need to always assign the reassoc
flag when we call _mm_reduce_* intrinsics.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D96231
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/test/CodeGen/X86/avx512-reduceIntrin.c
The file was modifiedclang/lib/Headers/avx512fintrin.h
Commit e0b8604e5d3c80a727a833663e765c8057ce7825 by thakis
[lld/mac] Implement -u flag

Since we emit diagnostics for undefineds in Writer::scanRelocations()
and symbols referenced by -u flags aren't referenced by any relocations,
this needs some manual code (similar to the entry point).

Differential Revision: https://reviews.llvm.org/D94371
The file was modifiedlld/MachO/Driver.cpp
The file was addedlld/test/MachO/u.s
The file was modifiedlld/MachO/Options.td
The file was modifiedlld/MachO/Config.h
Commit 4c640e49c9553363bc0e6fcbdbfe8d678683db97 by antiagainst
[mlir][linalg] Verify indexing map required attributes

Indexing maps for named ops can reference attributes so that
we can synthesize the indexing map dynamically. This supports
cases like strides for convolution ops. However, it does cause
an issue: now the indexing_maps() function call is dependent
on those attributes.

Linalg ops inherit LinalgOpInterfaceTraits, which calls
verifyStructuredOpInterface() to verify the interface.
verifyStructuredOpInterface() further calls indexing_maps().
Note that trait verification is done before the op itself,
where ODS generates the verification for those attributes.
So we can have indexing_maps() referencing non-existing or
invalid attribute, before the ODS-generated verification
kick in.

There isn't a dependency handling mechansim for traits.
This commit adds new interface methods to query whether an
op hasDynamicIndexingMaps() and then perform
verifyIndexingMapRequiredAttributes() in
verifyStructuredOpInterface() to handle the dependency issue.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D96297
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
The file was modifiedmlir/test/mlir-linalg-ods-gen/test-linalg-ods-gen.tc
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
Commit 068bf9e80220329f7baeaf8df34fb4818ad8aa58 by antiagainst
[mlir][linalg] Define a depthwise 2-D convolution op

This commit defines linalg.depthwise_conv_2d_nhwc for depthwise
2-D convolution with NHWC input/output data format.

This op right now only support channel multiplier == 1, which is
the most common case.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D94966
The file was addedmlir/test/Dialect/Linalg/named-ops.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOpsSpec.tc
The file was modifiedmlir/test/Dialect/Linalg/generalize-named-ops.mlir
Commit 98146c1f5d0c772aec56149724119d49990f4d0c by n.james93
[clang-tidy] fix modernize-use-nullptr false positive with spaceship operator comparisons

`clang-tidy -std=c++20` with `modernize-use-nullptr` mistakenly inserts `nullptr` in place of the comparison operator if the comparison internally expands in the AST to a rewritten spaceship operator. This can be reproduced by running the new `modernize-use-nullptr-cxx20.cpp` test without applying the supplied patch to `UseNullptrCheck.cpp`; the current clang-tidy will mistakenly replace:
```result = (a1 < a2);```
with
```result = (a1 nullptr a2);```

Reviewed By: njames93

Differential Revision: https://reviews.llvm.org/D95714
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/modernize-use-nullptr-cxx20.cpp
Commit fa581f943887c1d1fd95b01ae5f28140e97331bf by zinenko
[mlir] Add stacksave, stackrestore to llvm dialect

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D96333
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
The file was modifiedmlir/test/Target/llvmir-intrinsics.mlir
Commit 89d9ff82293f13d0dcb0dd173785196e42a3d8a9 by llvm-dev
[X86][SSE] foldShuffleOfHorizOp - add SHUFPS v4f32 handling

Fold shufps(hop(x,y),hop(z,w)) -> permute(hop(x,z)) - this is very similar to the equivalent unpack fold.

I did start trying to convert foldShuffleOfHorizOp to handle generic shuffle masks but we're relying on a lot of special cases at the moment.
The file was modifiedllvm/test/CodeGen/X86/horizontal-sum.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 521e1733f1496f6d554e6ce8b69cd4251499b15e by Jan Svoboda
[clang][cli] Store InputKind in FrontendOptions

This patch stores the `InputKind` (parsed mainly from `-x`) to `FrontendOptions`. This is necessary for command line generation.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96149
The file was modifiedclang/include/clang/Frontend/FrontendOptions.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 23cd8d51ad519261137a40a5bbac6e537ee7ba25 by thakis
Try to fix compiler-rt tests after 87dbdd2e3bb63b on mac and win

These tests use `--check-prefix=CHECK-%os` but then didn't have
a CHECK line for every os.

In most tests, the linux expectations were sufficient (they match
the "wrap_" prefix with .*), so just remove the check-prefix there.
In the places where this didn't easily work, make sure there are
at least CHECK-Windows and CHECK-Darwin lines.
The file was modifiedcompiler-rt/test/asan/TestCases/large_func_test.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/use-after-delete.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/use-after-free-right.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/use-after-free.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/strncpy-overflow.cpp
Commit 7369bfb8abb6f62eebd045b8b243972863bf3190 by Jan Svoboda
[clang][cli] Look up program action argument in a table

This patch extracts the mapping between command line option and frontend::ActionKind into a table. The table can be reused when parsing and also generating command line options.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96269
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 396d6a3220ee131f58ce46ca47f6f98cf7a3fcae by Jan Svoboda
[clang][cli] Store unsigned instead of OptSpecifier in table

This fixes some buildbot failures with ambiguous call to OptSpecifier constructor.
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit bfa508efd589d9bdcae4a2ec8f668af36af39e1f by thomasraoux
[mlir][linalg] Fix one more missing NoSideEffect in linalg tensor op

Differential Revision: https://reviews.llvm.org/D96314
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
The file was modifiedmlir/test/Dialect/Linalg/canonicalize.mlir
Commit 7784ce078d8802802ceeda612479adbedf9afa81 by antiagainst
[mlir][linalg] Fix depthwise conv C++ symbol to be consistent

The assembly mnemonic includes information about input/filter
data format. The C++ symbol should be consistent.
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOpsSpec.tc
Commit 79b222c39f0e4377b49191b6aba080b1607f3fa7 by anastasia.stulova
[OpenCL] Fix types with signed prefix in arginfo metadata.

Signed prefix is removed and the single word spelling is
printed for the scalar types.

Tags: #clang

Differential Revision: https://reviews.llvm.org/D96161
The file was modifiedclang/test/CodeGenOpenCL/kernel-arg-info.cl
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
Commit dd8fb21227cef26b1cdd44792a1ee77910afd86a by sam.mccall
[clangd] Implement semanticTokens modifiers

- Infrastructure to support modifiers (protocol etc)
- standard modifiers:
  - declaration (but no definition, yet)
  - deprecated
  - readonly (based on a fairly fuzzy const checking)
  - static (for class members and locals, but *not* file-scope things!)
  - abstract (for C++ classes, and pure-virtual methods)
- nonstandard modifier:
  - deduced (on "auto" whose Kind is Class etc)
    Happy to drop this if it's controversial at all.
- While here, update sample tweak to use our internal names, in
  anticipation of theia TM scopes going away.

This addresses some of the goals of D77702, but leaves some things undone.
Mostly because I think these will want some discussion.
- no split between dependent type/name.
   (We may want to model this as a modifier, type+dependent vs ???+dependent)
- no split between primitive/typedef.
   (Is introducing a nonstandard kind is worth this distinction?)
- no nonstandard local attribute
   This probably makes sense, I'm wondering if we want others and how
   they fit together.

There's one minor regression in explicit template specialization declarations
due to a latent bug in findExplicitReferences, but fixing it after seems OK.

Differential Revision: https://reviews.llvm.org/D77811
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.h
The file was modifiedclang-tools-extra/clangd/unittests/tweaks/AnnotateHighlightingsTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/tweaks/AnnotateHighlightings.cpp
The file was modifiedclang-tools-extra/clangd/test/semantic-tokens.test
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was modifiedllvm/lib/Testing/Support/Annotations.cpp
The file was modifiedclang-tools-extra/clangd/test/initialize-params.test
Commit 5e8a246ac9966e6ca43e7bd84db6df78b27d2201 by Jan Svoboda
[clang][cli] Generate and round-trip Frontend options

This patch implements generation of remaining frontend options and tests it by performing parse-generate-parse round trip.

Depends on D96269.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96155
The file was modifiedclang/include/clang/Frontend/CommandLineSourceLoc.h
The file was modifiedclang/lib/Frontend/TestModuleFileExtension.cpp
The file was modifiedclang/lib/Frontend/TestModuleFileExtension.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/include/clang/Serialization/ModuleFileExtension.h
Commit 2309392449376295a70354273500730be0f28510 by davelee.com
[lldb] Inline invariant params to AppleThreadPlanStepThrough (NFC)

These two `AppleThreadPlanStepThrough` thread plans have parameterized behavior
that is unutilized. To make their interface and implementation simpler, this
change inlines those outside parameters.

Differential Revision: https://reviews.llvm.org/D96276
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
Commit de1966e5427985163f8e816834b3a0564b5e24cd by thakis
Revert "[ObjC][ARC] Use operand bundle 'clang.arc.rv' instead of explicitly"

This reverts commit 4a64d8fe392449b205e59031aad5424968cf7446.
Makes clang crash when buildling trivial iOS programs, see comment
after https://reviews.llvm.org/D92808#2551401
The file was modifiedllvm/test/Transforms/ObjCARC/contract.ll
The file was modifiedllvm/test/CodeGen/AArch64/call-rv-marker.ll
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was removedllvm/include/llvm/Analysis/ObjCARCUtil.h
The file was modifiedllvm/test/Transforms/ObjCARC/contract-marker-funclet.ll
The file was addedllvm/test/Transforms/TailCallElim/deopt-bundle.ll
The file was removedllvm/test/Transforms/TailCallElim/operand-bundles.ll
The file was removedclang/test/CodeGenObjC/arc-rv-attr.m
The file was modifiedllvm/lib/Transforms/ObjCARC/PtrState.h
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
The file was modifiedllvm/test/Bitcode/operand-bundles-bc-analyzer.ll
The file was removedllvm/test/Transforms/ObjCARC/contract-rv-attr.ll
The file was modifiedllvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h
The file was modifiedllvm/test/Transforms/ObjCARC/rv.ll
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedllvm/include/llvm/IR/InstrTypes.h
The file was modifiedllvm/lib/IR/LLVMContext.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/PtrState.cpp
The file was modifiedllvm/test/Transforms/ObjCARC/intrinsic-use.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedllvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
The file was modifiedclang/test/CodeGenObjC/arc-unsafeclaim.m
The file was removedllvm/test/Transforms/Inline/inline-retainRV-call.ll
The file was modifiedllvm/include/llvm/IR/LLVMContext.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Analysis/ObjCARCInstKind.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARC.cpp
The file was modifiedllvm/test/Transforms/DeadArgElim/deadretval.ll
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARC.h
The file was modifiedllvm/docs/LangRef.rst
Commit 56c446a878b1fa98774dcee1cb09135b8f286e59 by jonathanchesterfield
[libomptarget][amdgcn] Tolerate deadstripped device_state variable

[libomptarget][amdgcn] Tolerate deadstripped device_state variable

The device_state variable may have been deadstripped. Similar to
device_environment, leave detection of missing but used symbol to loader.

Reviewed By: pdhaliwal

Differential Revision: https://reviews.llvm.org/D96330
The file was modifiedopenmp/libomptarget/plugins/amdgpu/src/rtl.cpp
Commit 5fa893cc383bd5737cdba631c5ff2054ed08380a by tobias.gysi
[mlir] add support for verification in integration tests

The patch extends the runner utils by verification methods that compare two memrefs. The methods compare the content of the two memrefs and print success if the data is identical up to a small numerical error. The methods are meant to simplify the development of integration tests that for example compare optimized and unoptimized code paths (cf. the updates to the linalg matmul integration tests).

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D96326
The file was modifiedmlir/include/mlir/ExecutionEngine/RunnerUtils.h
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_i8_i8_i32.mlir
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_column_major_as_row_major.mlir
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_column_major.mlir
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul.mlir
Commit 399c3d5b297208b7dcdfac1710e02e2775281704 by eschweitz
[flang][fir] Add shape, shape_shift, and slice types.

Adding the FIR types used to describe the Fortran semantics of indexing
FIR arrays.

https://github.com/flang-compiler/f18-llvm-project/pull/267

Differential Revision: https://reviews.llvm.org/D96172
The file was modifiedflang/lib/Optimizer/Dialect/FIRType.cpp
The file was modifiedflang/test/Fir/fir-types.fir
The file was modifiedflang/include/flang/Optimizer/Dialect/FIRType.h
The file was modifiedflang/lib/Optimizer/Dialect/FIRDialect.cpp
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
Commit 46cc7ce35ade2d0b3b49301fbf8135c1eca5b048 by sam.mccall
[clangd] Add semanticTokens modifiers for function/class/file/global scope

These allow (function-) local variables to be distinguished, but also a
bunch more cases.
It's not quite independent with existing information (e.g. the
field/variable distinction is redundant if you have class-scope + static
attributes) but I don't think this is terribly important.

Depends on D77811

Differential Revision: https://reviews.llvm.org/D95701
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
The file was modifiedclang-tools-extra/clangd/unittests/tweaks/AnnotateHighlightingsTests.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.h
The file was modifiedclang-tools-extra/clangd/test/semantic-tokens.test
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was modifiedclang-tools-extra/clangd/test/initialize-params.test
Commit f4670fbfff228554006828bf6a66ebc472340c61 by Alexander.Richardson
[llvm-readobj] Print empty line between note sections in GNU mode

This matches GNU binutils.

Reviewed By: rupprecht, jhenderson, MaskRay

Differential Revision: https://reviews.llvm.org/D96010
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-freebsd.s
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-amdgpu-invalid.s
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-unknown.s
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-core.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-amd.s
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-core-ntfile.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-generic.s
Commit d613d8eb0eb84ad3cc494a5b45ad9f1f37eca88b by Alexander.Richardson
[yaml2obj] Handle NT_* string values in for ELF note types

This is required for D74393.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D95953
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
The file was modifiedllvm/test/tools/yaml2obj/ELF/note-section.yaml
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
Commit 135df21248985579710e0cd3013d369de52dd354 by Alexander.Richardson
[llvm-readelf] Print raw ELF note contents if we can't parse it

Currently, if the note name is known, but the value isn't we don't print
the contents.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D74367
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-notes.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-amdgpu-invalid.s
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-amdgpu.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/note-amd.s
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-note-size.test
Commit 7dc31360339268b25d49680d23268731b33f51aa by Alexander.Richardson
[llvm-readobj] Add support for decoding FreeBSD ELF notes

The current support only printed coredump notes, but most binaries also
contain notes. This change adds names for four FreeBSD-specific notes and
pretty-prints three of them:

NT_FREEBSD_ABI_TAG:
This note holds a 32-bit (decimal) integer containing the value of the
__FreeBSD_version macro, which is defined in crt1.o and will hold a value
such as 1300076 for a binary build on a FreeBSD 13 system.

NT_FREEBSD_ARCH_TAG:
A string containing the value of the build-time MACHINE_ARCH

NT_FREEBSD_FEATURE_CTL: A 32-bit flag that indicates to the kernel that
the binary wants certain bevahiour. Examples include setting
NT_FREEBSD_FCTL_ASLR_DISABLE which tells the kernel to disable ASLR.

After this change llvm-readobj also no longer decodes coredump-only
FreeBSD notes in non-coredump files. I've also converted the
note-freebsd.s test to use yaml2obj instead of llvm-mc.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D74393
The file was addedllvm/test/tools/llvm-readobj/ELF/note-freebsd.test
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
The file was removedllvm/test/tools/llvm-readobj/ELF/note-freebsd.s
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was addedllvm/test/tools/llvm-readobj/ELF/note-freebsd-core.test
Commit 5099a48a3bdc6a25b83c47281251825101727e96 by GeorgeLyon
[MLIR] Replace dialect registration hooks with dialect handle

Replace MlirDialectRegistrationHooks with MlirDialectHandle, which under-the-hood is an opaque pointer to MlirDialectRegistrationHooks. Then we expose the functionality previously directly on MlirDialectRegistrationHooks, as functions which take the opaque MlirDialectHandle struct. This makes the actual structure of the registration hooks an implementation detail, and happens to avoid this issue: https://llvm.discourse.group/t/strange-swift-issues-with-dialect-registration-hooks/2759/3

Reviewed By: stellaraccident

Differential Revision: https://reviews.llvm.org/D96229
The file was modifiedmlir/include/mlir/CAPI/Registration.h
The file was modifiedmlir/include/mlir-c/Registration.h
The file was addedmlir/lib/CAPI/IR/DialectHandle.cpp
The file was modifiedmlir/lib/CAPI/IR/CMakeLists.txt
The file was modifiedmlir/test/CAPI/ir.c
Commit 9887fdebd668d4e1243abf716eab383401dcb2be by jianzhouzh
[dfsan] Refactor loadShadow

To simplify the review of https://reviews.llvm.org/D95835.

Reviewed-by: gbalats, morehouse

Differential Revision: https://reviews.llvm.org/D96180
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
Commit 2544060e718098c2cf736e2667ee007fbc58da50 by koraq
[libc++] Remove C++11 work-arounds in src.

Building libcxx requires at least C++17 so remove the old work-arounds.

Reviewed By: ldionne, #libc

Differential Revision: https://reviews.llvm.org/D96200
The file was modifiedlibcxx/src/experimental/memory_resource.cpp
The file was modifiedlibcxx/src/filesystem/filesystem_common.h
Commit 34acc91642440b8e4bad17acfdbb1314c8f2043e by koraq
[libc++] Require C++20 to build the benchmarks.

Some work-in-progress patches for the format header contain benchmarks.
The format header requires C++20 to build. This is a preparation to make
it easy to add these benchmarks.

Reviewed By: ldionne, #libc

Differential Revision: https://reviews.llvm.org/D96057
The file was modifiedlibcxx/benchmarks/CMakeLists.txt
The file was modifiedlibcxx/docs/ReleaseNotes.rst
Commit fd5adae02cafe388673d3b3f92ef791af3c73cfe by craig.topper
[RISCV] Remove SRO* and SLO* instructions from bitmanip.

As of the current draft these are no longer being considered
for the bitmanip spec. It wasn't clear what sub extension they
belonged in in the 0.93 spec.

So remove them. They can always be added back if something changes.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D96157
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
The file was modifiedllvm/test/CodeGen/RISCV/rv32Zbp.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoB.td
The file was modifiedllvm/test/CodeGen/RISCV/rv64Zbp.ll
The file was modifiedllvm/test/MC/RISCV/rv32zbp-valid.s
The file was modifiedllvm/test/MC/RISCV/rv64zbp-invalid.s
The file was modifiedllvm/test/MC/RISCV/rv32zbp-invalid.s
The file was modifiedllvm/test/MC/RISCV/rv64zbp-valid.s
Commit 0be0a1237cb9d9a0228cf27dacfcd0b95749d7ee by spatel
[ValueTracking] improve analysis for "C << X" and "C >> X"

This is based on the example/comments in:
https://llvm.org/PR48984

I tried just lifting the restriction in computeKnownBitsFromShiftOperator()
as suggested in the bug report, but that doesn't catch all of the cases
shown here. I didn't step through to see exactly why that happened. But it
seems like a reasonable compromise to cheaply check the special-case of
shifting a constant.

There's a slight regression on a cmp transform as noted, but this is likely
the more important/common pattern, so we can fix that icmp pattern later if
needed.

Differential Revision: https://reviews.llvm.org/D95959
The file was modifiedllvm/test/Transforms/InstCombine/zext-or-icmp.ll
The file was modifiedllvm/test/Transforms/InstCombine/and2.ll
The file was modifiedllvm/test/Transforms/InstCombine/shift.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/InstCombine/lshr-and-negC-icmpeq-zero.ll
The file was modifiedllvm/test/Transforms/InstCombine/signbit-shl-and-icmpeq-zero.ll
Commit 56615a2654ce9b0e588fc67c1e0957968acf7fc1 by andrew.litteken
[IROutliner] Adding instruction strings to IRSimilarityPrinting diagnostics.

When doing some recent debugging of the IROutliner, and using the similarity pass for debugging, just having the basic block and function isn't really enough to get all the information. This adds the first and last instruction to the output of the IRSimilarityPrinting pass to give better information to a user.

Reviewer: paquette

Differential Revision: https://reviews.llvm.org/D94304
The file was modifiedllvm/lib/Analysis/IRSimilarityIdentifier.cpp
The file was modifiedllvm/test/Analysis/IRSimilarityIdentifier/basic.ll
The file was modifiedllvm/test/Analysis/IRSimilarityIdentifier/nothing.ll
The file was modifiedllvm/test/Analysis/IRSimilarityIdentifier/different.ll
Commit dd719fda7657caefa81b5b7e3eaa15dfe537b41f by tobias.gysi
Revert "[mlir] add support for verification in integration tests"

This reverts commit 5fa893c.
Windows build bot fails due to missing header
https://reviews.llvm.org/D96326
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_i8_i8_i32.mlir
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_column_major.mlir
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul.mlir
The file was modifiedmlir/include/mlir/ExecutionEngine/RunnerUtils.h
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_column_major_as_row_major.mlir
Commit e8d31754a285c0f2f8d6625f108c1204420cb290 by hanchung
[mlir][Linalg] Add a build method for linalg.pad_tensor

Add a build method that pads the source with a scalar value.

Reviewed By: nicolasvasilache, antiagainst

Differential Revision: https://reviews.llvm.org/D96343
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
Commit 5eb2e994f9b3a5aff0a156d0a1f7e6121342cc11 by tyker
[InstCombine] convert assumes to operand bundles

Instcombine will convert the nonnull and alignment assumption that use the boolean condtion
to an assumption that uses the operand bundles when knowledge retention is enabled.

Differential Revision: https://reviews.llvm.org/D82703
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
The file was modifiedllvm/include/llvm/Analysis/AssumeBundleQueries.h
The file was modifiedllvm/lib/Analysis/Loads.cpp
The file was modifiedllvm/include/llvm/IR/Value.h
The file was modifiedllvm/test/Analysis/BasicAA/featuretest.ll
The file was modifiedllvm/test/Transforms/InstCombine/assume-align.ll
The file was modifiedllvm/test/Analysis/ValueTracking/assume-queries-counter.ll
The file was modifiedllvm/test/Transforms/InstCombine/assume.ll
The file was modifiedllvm/include/llvm/Transforms/Utils/AssumeBundleBuilder.h
The file was modifiedllvm/test/Analysis/ValueTracking/assume.ll
Commit 18ff7e045a22c6e6dc71cc081bf1bc6e55d51565 by craig.topper
[RISCV] Make the min and max vector width command line options more consistent and check their relationship to each other.
The file was modifiedllvm/lib/Target/RISCV/RISCVSubtarget.h
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/RISCV/scalable-vf-hint.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVSubtarget.cpp
Commit b72a23650f573299aec30846fb844c3558921fb8 by Matthew.Arsenault
GlobalISel: Fix using wrong calling convention for callees

This was taking the calling convention from the parent function,
instead of the callee. Avoids regressions in a future patch when the
caller and callee have different type breakdowns.

For some reason AArch64's lowerFormalArguments seems to intentionally
ignore the parent isVarArg.
The file was modifiedllvm/lib/Target/ARM/ARMCallLowering.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/CallLowering.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86CallLowering.cpp
Commit f4ca6d8289ef116314d4d5080080907e8cb7342d by Matthew.Arsenault
AMDGPU: Fix verifier error with argument passed in CSR SGPR

We need to avoid setting the kill flag on the CSR spill if there's an
additional use of the register after the spill.

This does rely on consistency between the entry block liveins and the
MRI's function live ins, which is not something the verifier checks
now.
The file was addedllvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
The file was modifiedllvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
Commit 171956aab32efa2d2f4999335a3acec15a9472d9 by koraq
Revert "[libc++] Require C++20 to build the benchmarks."

There are build bots without C++20 support building the benchmarks.

This reverts commit 34acc91642440b8e4bad17acfdbb1314c8f2043e.
The file was modifiedlibcxx/benchmarks/CMakeLists.txt
The file was modifiedlibcxx/docs/ReleaseNotes.rst
Commit 2aa01ccec30109fbcc65934c5d7c8907793e0660 by tra
[CUDA, NVPTX] Allow targeting sm_86 GPUs.

The patch only plumbs through the option necessary for targeting sm_86 GPUs w/o
adding any new functionality.

Differential Revision: https://reviews.llvm.org/D95974
The file was modifiedclang/include/clang/Basic/Cuda.h
The file was modifiedclang/lib/Basic/Targets/NVPTX.cpp
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
The file was modifiedclang/lib/Basic/Cuda.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTX.td
The file was modifiedclang/include/clang/Basic/BuiltinsNVPTX.def
Commit 81429abd83362f4c3eecbed41ebc917ddf26b13f by johannes
[Attributor][FIX] Do not create UB by introducing a `noundef undef`

This was reported as PR49104. The reproducer uses varargs but the issue
is the same, we know an argument is dead but can't change the signature
for some reason. The PR49104 situation was: We are in an CG-SCC
traversal and we remove all the uses of an argument and proof it thereby
dead. However, if we do not remove the argument, via signature rewrite,
we need to ensure that the `undef` we introduce at the call site doesn't
clash with a `noundef` attribute.
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/musttail.ll
The file was modifiedllvm/test/Transforms/Attributor/noundef.ll
The file was modifiedllvm/test/Transforms/Attributor/align.ll
Commit 7e7cfce0b688b8b006ce4951e118aab6a5814a64 by sbc
[WebAssembly] Use data sections by default

This allows data sections that don't start with `.data` to be
used/created.

Without this, clang's `__attribute__((section("foo")))` would
generate assembly that would not parse.

Differential Revision: https://reviews.llvm.org/D96233
The file was modifiedllvm/lib/MC/MCParser/WasmAsmParser.cpp
The file was addedllvm/test/MC/WebAssembly/data-section-combined.s
Commit 2ef24139fcc1b48da4e2b86704611e017e3a0e7a by antiagainst
[mlir][spirv] Add support for sampled image type

co-authored-by: Alan Liu <alanliu.yf@gmail.com>

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D96169
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
The file was addedmlir/test/Target/SPIRV/sampled-image.mlir
The file was modifiedmlir/lib/Target/SPIRV/Serialization/Serializer.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
The file was modifiedmlir/docs/Dialects/SPIR-V.md
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.h
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
The file was modifiedmlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
The file was modifiedmlir/test/Dialect/SPIRV/IR/types.mlir
The file was modifiedmlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
Commit 59c1139d3ee127a2049de5c711f81d46d8ec4e41 by sam.mccall
[clangd] Expose more dependent-name detail via semanticTokens

This change makes dependentName a modifier, rather than a token type.
It can be combined with:
- type (new, standard) - this combination replaces dependentType like T::typename Foo
- unknown (new, nonstandard) - for general dependent names
- Field, etc - when the name is dependent but we heuristically resolve it

While here, fix cases where template-template-parameter cases were
incorrectly flagged as type-dependent.
And the merging of modifiers when resolving conflicts accidentally
happens to work around a bug that showed up in a test.

The behavior observed through the pre-standard protocol should be mostly
unchanged (it'll see the bugfixes only). This is done in a somehat
fragile way but it's not expected to live long.

Differential Revision: https://reviews.llvm.org/D95706
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.h
The file was modifiedclang-tools-extra/clangd/test/initialize-params.test
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
The file was modifiedclang-tools-extra/clangd/test/semantic-tokens.test
Commit dea74b2820612ecca967528f7f2bbcc6d05801fe by zoecarver
[libc++] Add `noexcept` to `string::find` and similar members.

Adds `noexcept` to `string_view`/`string::find` and similar members
(`rfind`, etc.). See discussion in D95251. Refs D95821.

Reviewed By: curdeius, ldionne

Differential Revision: https://reviews.llvm.org/D95848
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.not.of/pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_not_of_pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_of_string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find/pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_of_pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.not.of/char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find/string_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_of_pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_not_of_char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find/char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_not_of_pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_compare/string.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_rfind/string_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/rfind_string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.not.of/string_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_rfind/char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.of/char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_of_pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/rfind_pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_rfind/pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_of_pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.not.of/pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_not_of_string_view_size.pass.cpp
The file was modifiedlibcxx/include/__string
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.of/string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.of/pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/rfind_char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_rfind/pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.of/string_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.not.of/string_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.of/char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.not.of/pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.not.of/pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_not_of_char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find/pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/rfind_pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.of/string_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.of/pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_compare/string_view.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_rfind/string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.of/pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_not_of_pointer_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.of/string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_not_of_string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.first.not.of/string_view_size.pass.cpp
The file was modifiedlibcxx/include/string_view
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_compare/pointer.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_not_of_pointer_size_size.pass.cpp
The file was modifiedlibcxx/include/string
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find/string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.not.of/char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.not.of/string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.ops/string_find.last.of/pointer_size_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_of_char_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_first_of_string_view_size.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.find/find_last_of_char_size.pass.cpp
Commit fe7c0d90b2940232cc6ab396253091bcf1ca4f2f by riddleriver
[mlir][IR] Remove the concept of `OperationProperties`

These properties were useful for a few things before traits had a better integration story, but don't really carry their weight well these days. Most of these properties are already checked via traits in most of the code. It is better to align the system around traits, and improve the performance/cost of traits in general.

Differential Revision: https://reviews.llvm.org/D96088
The file was modifiedmlir/lib/Pass/Pass.cpp
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/lib/IR/AsmPrinter.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
The file was modifiedmlir/lib/IR/Block.cpp
The file was modifiedmlir/lib/EDSC/Builders.cpp
The file was modifiedmlir/lib/Transforms/Utils/FoldUtils.cpp
The file was modifiedmlir/test/lib/Transforms/TestOpaqueLoc.cpp
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/lib/Transforms/Utils/RegionUtils.cpp
The file was modifiedmlir/lib/Interfaces/SideEffectInterfaces.cpp
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/lib/IR/Verifier.cpp
The file was modifiedmlir/include/mlir/IR/OpDefinition.h
The file was modifiedmlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
The file was modifiedmlir/test/lib/Dialect/Shape/TestShapeFunctions.cpp
The file was modifiedmlir/include/mlir/IR/Operation.h
The file was modifiedmlir/lib/Dialect/Affine/IR/AffineOps.cpp
The file was modifiedmlir/lib/Parser/Parser.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
The file was modifiedmlir/lib/Transforms/SCCP.cpp
The file was modifiedmlir/lib/IR/Operation.cpp
The file was modifiedmlir/lib/Transforms/CSE.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/lib/Dialect/StandardOps/Transforms/FuncBufferize.cpp
The file was modifiedmlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
The file was modifiedmlir/test/lib/Transforms/TestDynamicPipeline.cpp
The file was modifiedmlir/include/mlir/IR/OperationSupport.h
Commit bd03f6df51d161551a0439d8f51e2640a218048f by mgorny
[lldb] [Process/FreeBSDRemote] Introduce powerpc support

Introduce a minimal support for the 32-bit powerpc platform.  This
includes support for GPR and FPR registers.  I also needed to add
software breakpoint opcode for PPC32/PPC64 (big endian), and to fix
offsets in RegisterInfos_powerpc.h (used only by FreeBSD register
context to be globally unique rather than relative to each struct).

Differential Revision: https://reviews.llvm.org/D95947
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/CMakeLists.txt
The file was addedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_powerpc.h
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterInfos_powerpc.h
The file was modifiedlldb/source/Host/common/NativeProcessProtocol.cpp
The file was modifiedlldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
The file was addedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_powerpc.cpp
The file was modifiedlldb/unittests/Process/Utility/RegisterContextFreeBSDTest.cpp
Commit eec04092d67b94f47439a9065b6bd4cd60165be2 by arthur.j.odwyer
[libc++] [LWG2993] reference_wrapper<T> conversion from U&&

Implement the resolution of LWG2993. Replace a deleted constructor
with a constructor that SFINAEs away in appropriate circumstances.
Also, now that the constructor is templated, we must have an
explicit deduction guide to make CTAD work.

Some tests have been merged in from Agustín Bergé's D40259.

Differential Revision: https://reviews.llvm.org/D92725
The file was addedlibcxx/test/std/utilities/function.objects/refwrap/refwrap.const/deduct.pass.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/refwrap/refwrap.const/type_ctor.pass.cpp
The file was modifiedlibcxx/include/__functional_base
The file was addedlibcxx/test/std/utilities/function.objects/refwrap/refwrap.const/type_conv_ctor.pass.cpp
The file was addedlibcxx/test/std/utilities/function.objects/refwrap/refwrap.const/type_conv_ctor2.pass.cpp
The file was modifiedlibcxx/include/functional
The file was modifiedlibcxx/docs/Cxx2aStatusIssuesStatus.csv
The file was modifiedlibcxx/test/std/utilities/function.objects/refwrap/refwrap.assign/copy_assign.pass.cpp
Commit 34d033ca129fdb1507427d45f518fdb523847732 by sbc
[lld][WebAssembly] Allow --export of optional start/stop symbols

This moves the error checking until after all optional
symbols (including the section start/end symbols) have
been created.

Differential Revision: https://reviews.llvm.org/D96318
The file was modifiedlld/wasm/Driver.cpp
The file was addedlld/test/wasm/export-optional.s
The file was modifiedlld/wasm/Writer.cpp
Commit 6962bd68f15d2fc43304166f55996c9dfa31bfd4 by GeorgeLyon
[MLIR] Add context accessor to identifier

I knew I would miss one...

Reviewed By: stellaraccident

Differential Revision: https://reviews.llvm.org/D96321
The file was modifiedmlir/test/CAPI/ir.c
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/include/mlir-c/IR.h
Commit d5d8c529abe65ce55c24b0333842bb31746a8bf8 by richard
PR48545: Access check the inherited constructor, not the inheriting
constructor.

We got this wrong only when forming a CXXTemporaryObjectExpr, which
caused the bug to only appear for certain syntactic forms.
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/test/SemaCXX/cxx11-inheriting-ctors.cpp
Commit 318ed901448203284a103b488a37cd92fbc82447 by daltenty
[AIX][llvm][support] Implement getHostCPUName

We implement getHostCPUName() for AIX via systemcfg interfaces since access to the processor version register is a privileged operation. We return a value based on the  current processor implementation mode.

This fixes the cpu detection used by clang for `-mcpu=native`.

Reviewed By: hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D95966
The file was modifiedllvm/lib/Support/Host.cpp
The file was modifiedllvm/unittests/Support/Host.cpp
Commit 0e85d634865308854cba83897325cfa9c3994e33 by Jessica Paquette
[AArch64][GlobalISel] Allow vector load legalization into 128-bit-wide types

Similar to 3d25fdc5c21f174d38ac78dd01ccaf6eec655bc0

This fixes bad codegen in cases like so:

https://godbolt.org/z/hePhz1

Differential Revision: https://reviews.llvm.org/D96296
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
Commit fd8afa41ebc0e78aff4629e0a3738f608dcbac11 by flo
[VPlan] Use VPUser to manage CondBit

VP blocks keep track of a condition, which is a VPValue. This patch
updates VPBlockBase to manage the value using VPUser, so
replaceAllUsesWith properly updates the condition bit as well.

This is required to enable VP2VP transformations and it helps with
simplifying some of the code required to manage condition bits.

Reviewed By: gilr

Differential Revision: https://reviews.llvm.org/D95382
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanValue.h
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.h
Commit 8b4a7272810178a91f128f32b9f8ccb97bcf11b9 by viniciustinti
[llvm-objdump][test] Fix --prefix tests for system-windows

Merging directories and files may produce different results on different
platforms.

Merging "./Inputs" and "source-interleave-x86_64.c" will use different
separators in POSIX and Windows.

Dedicated tests are needed for dealing with removing trailing separators
for POSIX (consider only '/') and Windows (consider '/' and '\').

Fixes D85024.
Fixes PR46368.

Reviewed By: jhenderson, MaskRay

Differential revision: https://reviews.llvm.org/D95513
The file was modifiedllvm/test/tools/llvm-objdump/X86/source-interleave-prefix.test
The file was modifiedllvm/test/tools/llvm-objdump/X86/source-interleave-prefix-non-windows.test
The file was addedllvm/test/tools/llvm-objdump/X86/source-interleave-prefix-windows.test
Commit b9c876bd7e9aeb5ea629b60fc65805b67e6f89a2 by riddleriver
[mlir] Add initial support for an alias analysis framework in MLIR

This revision adds a new `AliasAnalysis` class that represents the main alias analysis interface in MLIR. The purpose of this class is not to hold the aliasing logic itself, but to provide an interface into various different alias analysis implementations. As it evolves this should allow for users to plug in specialized alias analysis implementations for their own needs, and have them immediately usable by other analyses and transformations.

This revision also adds an initial simple generic alias, LocalAliasAnalysis, that provides support for performing stateless local alias queries between values. This class is similar in scope to LLVM's BasicAA.

Differential Revision: https://reviews.llvm.org/D92343
The file was addedmlir/include/mlir/Analysis/AliasAnalysis.h
The file was addedmlir/lib/Analysis/AliasAnalysis.cpp
The file was addedmlir/test/lib/Analysis/TestAliasAnalysis.cpp
The file was addedmlir/test/Analysis/test-alias-analysis.mlir
The file was modifiedmlir/include/mlir/IR/OpDefinition.h
The file was addedmlir/include/mlir/Analysis/AliasAnalysis/LocalAliasAnalysis.h
The file was modifiedmlir/include/mlir/Interfaces/SideEffectInterfaceBase.td
The file was modifiedmlir/test/lib/CMakeLists.txt
The file was addedmlir/test/lib/Analysis/CMakeLists.txt
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was addedmlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
The file was modifiedmlir/tools/mlir-opt/CMakeLists.txt
The file was modifiedmlir/lib/Analysis/CMakeLists.txt
Commit 6e3292b0b718a4fec524796e3899a4df5e7ccfb7 by riddleriver
[mlir][OpFormatGen] Refactor `type_ref` into a more general `ref` directive

This allows for referencing nearly every component of an operation from within a custom directive.

It also fixes a bug with the current type_ref implementation, PR48478

Differential Revision: https://reviews.llvm.org/D96189
The file was modifiedmlir/test/lib/Dialect/Test/TestDialect.cpp
The file was modifiedmlir/test/mlir-tblgen/op-format.mlir
The file was modifiedmlir/test/mlir-tblgen/op-format-spec.td
The file was modifiedmlir/tools/mlir-tblgen/OpFormatGen.cpp
The file was modifiedmlir/docs/OpDefinitions.md
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
Commit 067f005500af3093ee23d3c044f9b009c5bd94cf by tlively
[lld][WebAssembly] Fix segfault in map file support

The code previously assumed that `getChunk` would return a non-null pointer for
every symbol, but in fact it only returns non-null pointers for DefinedFunction
and DefinedData symbols. This patch fixes the segfault by checking whether
`getChunk` returns a null for each symbol and skipping the mapping output for
any symbols for which it does.

Differential Revision: https://reviews.llvm.org/D88369
The file was modifiedlld/wasm/MapFile.cpp
The file was modifiedlld/wasm/SyntheticSections.h
The file was modifiedlld/test/wasm/map-file.s
Commit e090182fe153c9ceea50b1807f8ca5c13729e402 by eschweitz
[flang][fir] Updates to internal name uniquer.

https://github.com/flang-compiler/f18-llvm-project/pull/474

Differential Revision: https://reviews.llvm.org/D96361
The file was modifiedflang/lib/Optimizer/Support/InternalNames.cpp
The file was modifiedflang/include/flang/Optimizer/Support/InternalNames.h
The file was modifiedflang/unittests/Optimizer/InternalNamesTest.cpp
Commit 4bd68f238cf28413f6ad1d24fd5de1e02ff06d33 by jpienaar
Add NoSideEffect trait to shape.split_at and shape.concat

Reviewed By: jpienaar, silvas

Differential Revision: https://reviews.llvm.org/D96358
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
Commit 365b186c242b0c3516d7dbb174f3a258c1c8361c by jingham
Add documentation for the extra_args parameter to breakpoint commands.

Differential Revision: https://reviews.llvm.org/D96368
The file was modifiedlldb/docs/use/python-reference.rst
The file was modifiedlldb/source/Commands/CommandObjectBreakpointCommand.cpp
Commit ffd7be65d0efbe8448b8fa051ad213be51e8c367 by jingham
Remove trailing spaces after \ in comments.
The file was modifiedlldb/source/Commands/CommandObjectBreakpointCommand.cpp
Commit 4f14c17df70916913d71914343dd4f6c709e218d by Shafik Yaghmour
[LLDB] Remove uneeded CopyType from BlockPointerSyntheticFrontEnd

BlockPointerSyntheticFrontEnd does a CopyType which results in it copying the type
back into its own context. This will result in a call to ASTImporterDelegate::setOrigin
with &decl->getASTContext() == origin.ctx this can result in an infinite recursion
later on in ASTImporter since it will attempt to find the decl in its origin which will be itself.

Differential Revision: https://reviews.llvm.org/D96366
The file was modifiedlldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
The file was modifiedlldb/test/API/lang/c/blocks/TestBlocks.py
The file was modifiedlldb/test/API/lang/c/blocks/main.c
Commit 3dcb535115e48a90886ed6cf275bd3eea14e354f by llvm-project
[Polly] Remove use of -O3 in regression test.

In addition to that regression tests should not test the intire pass
pipeline (unless they are testing the pipeline itself), the Polly-ACC
currently does not support the new pass manager. If enabled by default,
such tests will therefore fail.

Use the -polly-gpu-runtime and -polly-gpu-arch options also as default
values for the PPCGCodeGeneration pass. This requires to move the option
to be moved from the pipeline-building Register passes to the
PPCGCodeGeneration implementation.

Fixes the spir-typesize.ll buildbot fail.
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
The file was modifiedpolly/test/GPGPU/spir-typesize.ll
The file was modifiedpolly/include/polly/CodeGen/PPCGCodeGeneration.h
The file was modifiedpolly/lib/CodeGen/PPCGCodeGeneration.cpp
Commit 5652e192fc22ed2281192d5fe80c7ea76bbbe719 by tyker
Revert "[InstCombine] convert assumes to operand bundles"

This reverts commit 5eb2e994f9b3a5aff0a156d0a1f7e6121342cc11.
The file was modifiedllvm/test/Analysis/ValueTracking/assume-queries-counter.ll
The file was modifiedllvm/lib/Analysis/Loads.cpp
The file was modifiedllvm/test/Analysis/ValueTracking/assume.ll
The file was modifiedllvm/test/Analysis/BasicAA/featuretest.ll
The file was modifiedllvm/include/llvm/Analysis/AssumeBundleQueries.h
The file was modifiedllvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/AssumeBundleBuilder.h
The file was modifiedllvm/include/llvm/IR/Value.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/assume.ll
The file was modifiedllvm/test/Transforms/InstCombine/assume-align.ll
Commit 018645b81b3bc4485bae8e9bc6e904ecd4c4a5ec by joker.eph
Fix side-effect detection in LLVMIRIntrinsicGen.

Previously it reported an op had side-effects iff it declared that it
didn't have any side-effects.  This had the undesirable result that
canonicalization would always delete any intrinsic calls that did memory
stores and returned void.

Reviewed By: ftynse, mehdi_amini

Differential Revision: https://reviews.llvm.org/D96369
The file was modifiedmlir/tools/mlir-tblgen/LLVMIRIntrinsicGen.cpp
The file was modifiedmlir/test/mlir-tblgen/llvm-intrinsics.td
Commit 74c3615997472b44ef77fedd7914d376f5e45ad7 by joker.eph
Add LLVMIR Dialect counterparts of @llvm.maximum and @llvm.minimum.

These are similar to maxnum and minnum, but they're defined to treat -0
as less than +0.  This behavior can't be expressed using float
comparisons and selects, since comparisons are defined to treat
different-signed zeros as equal.  So, the only way to communicate this
behavior into LLVM IR without defining target-specific intrinsics is to
add the corresponding ops.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D96373
The file was modifiedmlir/test/Target/llvmir-intrinsics.mlir
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
Commit 483ec136da7193de781a5284f1c37929cc27c05c by jingham
Use internal_dict everywhere we refer to the python session dict in docs.
The file was modifiedlldb/source/Commands/CommandObjectBreakpointCommand.cpp
The file was modifiedlldb/docs/use/python-reference.rst
Commit 5dd29d9922ad0c1e7c82f118444ccde7f2ae9aef by dberris
Fix xray fdr mode to allow multiple flushes

Reviewed By: dberris

Differential Revision: https://reviews.llvm.org/D96382
The file was modifiedcompiler-rt/test/xray/TestCases/Posix/fdr-reinit.cpp
The file was modifiedcompiler-rt/lib/xray/xray_fdr_logging.cpp
Commit 747c450e6f1f7238243150a6870daa6385476413 by dberris
Fix JSON formatting when converting to trace event format

Reviewed By: dberris

Differential Revision: https://reviews.llvm.org/D96384
The file was addedllvm/test/tools/llvm-xray/X86/convert-fdr-to-traceevent.txt
The file was addedllvm/test/tools/llvm-xray/X86/convert-traceevent-special-events.txt
The file was modifiedllvm/tools/llvm-xray/xray-converter.cpp
Commit 66ac53fe319be932d31ef96bdca34ad2b897cf04 by nullptr.cpp
[clang][cli] Fix gcc "enumeral and non-enumeral type in conditional expression" warning (NFC)
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 8caf835337f7bae9d686afdfc16c4897f2da61d8 by cjdb
[libcxx] adds concept `std::convertible_to`

Implements parts of:
    - P0898R3 Standard Library Concepts
    - P1754 Rename concepts to standard_case for C++20, while we still can

Differential Revision: https://reviews.llvm.org/D77961
The file was addedlibcxx/test/std/concepts/lang/convertible.compile.pass.cpp
The file was modifiedlibcxx/include/concepts
Commit 5400f602cd5a934ff2d0f6c2b12b93cb47bea6b1 by uday
[MLIR] Update affine.for unroll utility for iter_args support

Update affine.for loop unroll utility for iteration arguments support.
Fix promoteIfSingleIteration as well.

Fixes PR49084: https://bugs.llvm.org/show_bug.cgi?id=49084

Differential Revision: https://reviews.llvm.org/D96383
The file was modifiedmlir/test/Dialect/Affine/unroll.mlir
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
Commit fdfd6478372cdee1542495d042b454d54dabf68e by uday
[MLIR] NFC Fix vector transforms build warnings

Fix build warnings from VectorTransforms.cpp.
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
Commit a6439b52088b1d58d8e7aa9891c9011648710593 by tbaeder
[clang][driver] Only warn once about invalid library values

Since ToolChain::GetCXXStdlibType() is a simple getter that might emit
the "invalid library name in argument" warning, it can conceivably be
called several times while initializing the build pipeline.

Before this patch, a simple 'clang++ -stdlib=foo ./test.cpp' would print
the warning twice, -rt=lib=foo would print 6 times.

Change this and always only print the warning once. Keep the rest of the
semantics of the functions.

Differential Revision: https://reviews.llvm.org/D95915
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was addedclang/test/Driver/undefined-libs.cpp
The file was modifiedclang/include/clang/Driver/ToolChain.h
Commit b910fab7054bb27326560c45d325fb48891ac134 by mkazantsev
[Test] Two more tests on usub

They are analogous to the existing tests, but use different starting offset
which can be important for some transforms.
The file was modifiedllvm/test/CodeGen/X86/usub_inc_iv.ll
The file was modifiedllvm/test/CodeGen/X86/2020_12_02_decrementing_loop.ll
Commit e89fcbfad6a3edb203ebdc2b1ead275fe909281a by tu.da.wei
Fix deprecated usage of `mallinfo`

glibc deprecates `mallinfo` in the latest version of 2.33. This patch replaces the usage of `mallinfo` with the new `mallinfo2` when it's available.

Reviewed By: lattner

Differential Revision: https://reviews.llvm.org/D96359
The file was modifiedllvm/cmake/config-ix.cmake
The file was modifiedllvm/include/llvm/Config/config.h.cmake
The file was modifiedllvm/lib/Support/Unix/Process.inc
Commit 4c64d8ee3a871ef4bd7823d23ab009a19e89287f by llvm-project
[Polly] Port ForwardOpTree to the NewPM.
The file was modifiedpolly/include/polly/ForwardOpTree.h
The file was modifiedpolly/lib/Support/PollyPasses.def
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
The file was modifiedpolly/lib/Transform/ForwardOpTree.cpp
The file was modifiedpolly/test/ForwardOpTree/forward_load.ll
The file was modifiedpolly/include/polly/LinkAllPasses.h
Commit 7903d594eae71a52b951316418f862635809f36a by llvm-project
[Polly] Port DeLICM to the NewPM.
The file was modifiedpolly/include/polly/DeLICM.h
The file was modifiedpolly/test/DeLICM/pass_existence.ll
The file was modifiedpolly/test/DeLICM/map_memset_zero.ll
The file was modifiedpolly/lib/Transform/DeLICM.cpp
The file was modifiedpolly/lib/Support/PollyPasses.def
The file was modifiedpolly/include/polly/LinkAllPasses.h
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
Commit b687fc9122c883f0ce7cf056aa56313ec1671445 by llvm-project
[Polly] Port PruneUnprofitable to the NewPM.
The file was modifiedpolly/lib/Analysis/PruneUnprofitable.cpp
The file was modifiedpolly/lib/Support/PollyPasses.def
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
The file was modifiedpolly/include/polly/PruneUnprofitable.h
The file was modifiedpolly/include/polly/LinkAllPasses.h
The file was modifiedpolly/test/PruneUnprofitable/prune_only_scalardeps.ll
Commit e7b9e43c9a7c33c8c10508ce4b40423fbeaa31b3 by llvm-project
[Polly] Register pass-instrumentation for NewPM's Scop level.

The pass-instrumentation pass is implicitly execute by the NewPM
whenever a new analysis runs. Not registering it will cause the crash
whenever a scop pass requests an analysis.

For instance this is the case for the IstAstAnalysis requesting the
DependenceAnalsis result.
The file was modifiedpolly/lib/Support/PollyPasses.def
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
Commit 5ff963fd11b6a88d3213bc83447aa44580d543f3 by llvm-project
[Polly] Add TargetTransformInfo to ScopPass standard analysis results.

TargetTransformInfo is required by IslScheduleOptimizer, as ScopPass.
Unfortunately it is not possible to get arbitrary larger-unit analyses
in for as ScopPass. Loop passes also already use TargetTransformInfo as
LoopStandardAnalysisResults, hence wei might expect it to be available
to Scop passes as well.
The file was modifiedpolly/include/polly/ScopPass.h
Commit e200df952bc5b6958ce808c7f19696e65ec9e9d5 by llvm-project
[Polly] Port IslScheduleOptimizer to the NewPM.
The file was modifiedpolly/include/polly/LinkAllPasses.h
The file was modifiedpolly/lib/Transform/ScheduleOptimizer.cpp
The file was modifiedpolly/test/ScheduleOptimizer/focaltech_test_detail_threshold-7bc17e.ll
The file was modifiedpolly/include/polly/ScheduleOptimizer.h
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
The file was modifiedpolly/test/ScheduleOptimizer/computeout.ll
The file was modifiedpolly/lib/Support/PollyPasses.def
Commit 13f758a805e043a1a83d36804f88b0ca49944fc3 by llvm-project
[Polly] Improve Simplify pass PM integration.

1. LegacyPM: Rename SimplifyLegacyPass to SimplifyWrapperPass.
2. LegacyPM: Complete create/init functions in LinkAllPasses.h
3. NewPM: Only invalidate non-Scop passes if changed.
4. NewPM: Add to default pass pipeline.
5. NewPM: Print -analyze header for each print<polly-simplify>
The file was modifiedpolly/lib/Transform/Simplify.cpp
The file was modifiedpolly/include/polly/Simplify.h
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
The file was modifiedpolly/include/polly/LinkAllPasses.h
Commit 08bab4b0302106803d7cd7c4504dd63c296c40a0 by llvm-project
[Polly] Make NewPM's IslAstAnalysis more similar to the legacy IslAstInfoWrapperPass.

In particular, print the ast with -debug-only=polly-ast, print a
per-scop header with print<polly-ast> and force-add the analysis with
-polly-code-generation=ast.
The file was modifiedpolly/lib/CodeGen/IslAst.cpp
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
Commit 222d380d2f57cc71bb613b5c01ecf17cd1f61fa2 by llvm-project
[Polly] Make the NewPM pass pipeline more similar to the legacy's.

Even though it has some oddities, both pipelines should be as similar as
possible. Also use report_fatal_error instead of assertions to ensure a
proper failure in release builds for unsupported options.

This finalizes the patch serious to make Polly run in the default
configuration when using the NewPM by default.
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
Commit 0f360fffe764e16553549f3883cf4e9e88db17f4 by kazu
[TableGen] Use ListSeparator (NFC)
The file was modifiedllvm/utils/TableGen/InfoByHwMode.cpp
Commit 781d0fea72a532a4a422cbb0f9bd06f6f7aabcf4 by kazu
[TableGen] Drop unnecessary const from return types (NFC)
The file was modifiedllvm/include/llvm/TableGen/DirectiveEmitter.h
Commit 7e75f6fc1d55d96c2abbde10f4aed619bb322956 by kazu
[SelectionDAG] Use range-based for loops (NFC)
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit f30f347da1f8b9da231368f37538a8de49768d49 by tpopp
[mlir][shape] Generalize broadcast to a variadic number of shapes

Previously broadcast was a binary op. Now it can support more inputs.
This has been changed in such a way that for now, this is an NFC for
all broadcast operations that were previously legal.

Differential Revision: https://reviews.llvm.org/D95777
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
The file was modifiedmlir/lib/Dialect/Shape/IR/Shape.cpp
The file was modifiedmlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir
Commit ddb01010b275c68deb7340ec32e0d1beaa9bbf13 by Artem Dergachev
Revert "[analyzer] RetainCountChecker: Add a suppression for OSSymbols."

This reverts commit 3500cc8d891bb3825bb3275affe6db8b12f2f695.

This old commit was made over a completely false premise. OSSymbols
aren't different from other OSObjects and we shouldn't treat them
differently for the purposes of static analysis.
The file was modifiedclang/test/Analysis/osobject-retain-release.cpp
The file was modifiedclang/lib/Analysis/RetainSummaryManager.cpp
Commit 7eee8585859c8fa5826483fb7ff30a077fc1a57f by Jessica Paquette
[AArch64][GlobalISel] Fold selects fed by G_PTR_ADD

Similar to the case for G_ADD.

There was a function in CTMark/pairlocalalign which was missing this case,
causing GlobalISel to emit a add + csel when a csinc is all that is necessary.

https://godbolt.org/z/ax69E9

Minor code size improvements on CTMark at -Os.

Differential Revision: https://reviews.llvm.org/D96390
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-select.mir
Commit 9d81ccc02ffb154cd5ee7ade21740dc4a45f4261 by sam.parker
[WebAssembly] Enable loop unrolling

Enable partial and runtime unrolling with a threshold of 30, which
was derived from a large number of kernels running on node and
wasmtime for amd64 and aarch64.

Unrolling is enabled by default at -O2 and -O3 and is disabled at
-Oz and -Os. Compiling with -Os is recommended if the wasm binary
size is the most important factor.

Differential Revision: https://reviews.llvm.org/D95125
The file was addedllvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
The file was addedllvm/test/Transforms/LoopUnroll/WebAssembly/lit.local.cfg
Commit 750a78cd5d4be099ff4e5a75dfd1a1e89176ddf3 by sander.desmalen
[ValueTypes] Add MVT for nxv1bf16.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D96249
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.td
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
Commit 9db6e97a8605f6a447ed171e59d5fa46fdfdc432 by sander.desmalen
[LoopVectorize] NFC: Change computeFeasibleMaxVF to operate on ElementCount.

This patch is NFC and changes occurrences of `unsigned MaxVectorSize`
to work on type ElementCount.

This patch is a preparatory patch with the ultimate goal of making
`computeMaxVF()` return both a max fixed VF and a max scalable VF,
so that `selectVectorizationFactor()` can pick the most cost-effective
vectorization factor.

Reviewed By: kmclaughlin

Differential Revision: https://reviews.llvm.org/D96018
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit 9ae99a0de8c79799df6fc0ff69ac3f73b7f4600f by sven.vanhaastregt
[OpenCL] Add cl_khr_subgroup_non_uniform_arithmetic to TableGen BIFs

Add the builtin functions brought by the
cl_khr_subgroup_non_uniform_arithmetic extension to
`-fdeclare-opencl-builtins`.

Differential Revision: https://reviews.llvm.org/D95951
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
Commit a7d01772ac370bfc5ef1838c8d18b7be070edfbe by sven.vanhaastregt
[OpenCL] Add cl_khr_subgroup_clustered_reduce to TableGen BIFs

Add the builtin functions brought by the
cl_khr_subgroup_clustered_reduce extension to
`-fdeclare-opencl-builtins`.
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
Commit 6d48a1a53fabae8715091a9aca128cc4a5d9b0a6 by faris.rehman
[flang][driver] Add support for -fopenmp and -fopenacc

Add support for the following options:
* -fopenmp
* -fopenacc

Update OpenMP and OpenACC semantics tests to use the new driver if it is built, otherwise use f18.
OpenMP tests that include `use omp_lib` or run `test_symbols.sh` have not been updated as they require options `-intrinsic-module-directory` and `-funparse-with-symbols` which are currently not implemented in the new driver.
Similarly OpenACC tests that run `test_symbols.sh` have not been updated.

This patch also moves semanticsContext to CompilerInvocation and creates it in CompilerInvocation#setSemanticsOpts so that the semantics context can use Fortran::parser::Options#features.

Summary of changes:
- Move semanticsContext to CompilerInvocation.h
- Update OpenMP and OpenACC semantics tests that do not rely on `-intrinsic-module-directory` and `-funparse-with-symbols` to use %flang

Differential Revision: https://reviews.llvm.org/D96032
The file was modifiedflang/test/Semantics/OpenACC/acc-cache-validity.f90
The file was modifiedflang/test/Semantics/omp-resolve01.f90
The file was modifiedflang/test/Semantics/omp-do-ordered.f90
The file was modifiedflang/test/Semantics/omp-do02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-host-data.f90
The file was modifiedflang/test/Semantics/omp-copyin01.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-branch.f90
The file was modifiedflang/test/Semantics/omp-copyin04.f90
The file was modifiedflang/test/Semantics/omp-resolve03.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-resolve01.f90
The file was modifiedflang/test/Semantics/omp-do03.f90
The file was modifiedflang/test/Semantics/omp-do-schedule02.f90
The file was modifiedflang/test/Semantics/omp-single01.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-atomic-validity.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-canonicalization-validity.f90
The file was modifiedflang/test/Semantics/omp-do08.f90
The file was modifiedflang/test/Semantics/omp-depend03.f90
The file was modifiedflang/test/Semantics/omp-resolve05.f90
The file was modifiedflang/test/Semantics/omp-simd01.f90
The file was modifiedflang/test/Semantics/omp-flush01.f90
The file was modifiedflang/test/Semantics/omp-parallel-private01.f90
The file was modifiedflang/test/Semantics/omp-private03.f90
The file was modifiedflang/test/Semantics/omp-do05.f90
The file was modifiedflang/test/Semantics/omp-taskloop02.f90
The file was modifiedflang/test/Semantics/omp-workshare04.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
The file was modifiedflang/test/Semantics/omp-copyin05.f90
The file was modifiedflang/test/Semantics/omp-do-ordered-positivecases.f90
The file was modifiedflang/include/flang/Frontend/FrontendOptions.h
The file was modifiedflang/test/Semantics/omp-simd02.f90
The file was modifiedflang/test/Semantics/omp-workshare05.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared04.f90
The file was modifiedflang/test/Semantics/omp-loop-association.f90
The file was modifiedflang/test/Semantics/omp-depend02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-init-validity.f90
The file was modifiedflang/test/Semantics/omp-do04.f90
The file was modifiedflang/test/Semantics/omp-workshare02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-kernels-loop.f90
The file was modifiedflang/test/Semantics/omp-do01.f90
The file was modifiedflang/test/Semantics/omp-invalid-branch.f90
The file was modifiedflang/test/Semantics/omp-do-collapse-positivecases.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-wait-validity.f90
The file was modifiedflang/test/Semantics/omp-no-dowhile-in-parallel.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-data.f90
The file was modifiedflang/test/Semantics/omp-parallel02.f90
The file was modifiedflang/lib/Frontend/FrontendActions.cpp
The file was modifiedflang/test/Semantics/omp-parallel-shared03.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared02.f90
The file was modifiedflang/include/flang/Frontend/CompilerInstance.h
The file was modifiedflang/test/Semantics/omp-declarative-directive.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-loop.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-serial-loop.f90
The file was modifiedflang/test/Flang-Driver/driver-help.f90
The file was modifiedflang/test/Semantics/omp-device-constructs.f90
The file was modifiedflang/test/Semantics/omp-taskloop03.f90
The file was modifiedflang/test/Semantics/omp-do-cycle.f90
The file was modifiedflang/test/Semantics/omp-private02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-resolve02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-declare-validity.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-update-validity.f90
The file was modifiedflang/test/Semantics/omp-resolve04.f90
The file was modifiedflang/lib/Frontend/CompilerInstance.cpp
The file was modifiedflang/test/Semantics/omp-task01.f90
The file was modifiedflang/test/Semantics/omp-workshare03.f90
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedflang/test/Semantics/omp-sections01.f90
The file was modifiedflang/test/Semantics/omp-parallel-private02.f90
The file was modifiedflang/test/Semantics/omp-resolve02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-shutdown-validity.f90
The file was modifiedflang/test/Semantics/omp-do07.f90
The file was modifiedflang/test/Semantics/omp-do-schedule01.f90
The file was modifiedflang/test/Semantics/omp-combined-constructs.f90
The file was modifiedflang/test/Semantics/omp-private01.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-parallel.f90
The file was modifiedflang/test/Semantics/omp-default02.f90
The file was modifiedflang/test/Semantics/omp-taskloop01.f90
The file was modifiedflang/test/Semantics/omp-nested01.f90
The file was modifiedflang/test/Semantics/omp-taskloop-simd01.f90
The file was modifiedflang/test/Semantics/omp-loop-simd01.f90
The file was modifiedflang/test/Semantics/omp-parallel01.f90
The file was modifiedflang/test/Semantics/omp-atomic.f90
The file was modifiedflang/test/Semantics/omp-simd03.f90
The file was modifiedflang/test/Semantics/omp-do-collapse.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared01.f90
The file was modifiedflang/test/Semantics/omp-do09.f90
The file was modifiedflang/test/Semantics/omp-single02.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-routine-validity.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-set-validity.f90
The file was modifiedflang/test/Semantics/omp-do06.f90
The file was modifiedclang/lib/Driver/ToolChains/Flang.cpp
The file was modifiedflang/test/Semantics/OpenACC/acc-kernels.f90
The file was modifiedflang/test/Semantics/omp-parallel-private04.f90
The file was modifiedflang/test/Semantics/omp-default.f90
The file was modifiedflang/test/Semantics/OpenACC/acc-serial.f90
The file was modifiedflang/test/Semantics/omp-copyin02.f90
The file was modifiedflang/test/Flang-Driver/driver-help-hidden.f90
The file was modifiedflang/test/Semantics/omp-depend01.f90
The file was modifiedflang/test/Semantics/omp-do10.f90
The file was modifiedflang/include/flang/Frontend/CompilerInvocation.h
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedflang/test/Semantics/omp-copyin03.f90
The file was modifiedflang/test/Semantics/omp-workshare01.f90
The file was modifiedflang/test/Semantics/omp-parallel-private03.f90
Commit eb31c3c5cbedf3fc74b9db73419847b14cbe45e6 by llvm-dev
Revert rGe1172959226689a "[X86][AVX] canonicalizeLaneShuffleWithRepeatedOps - merge VPERMILPD ops with different low/high masks."

Revert this while I investigate a downstream breakage report.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
Commit cb933632bc5fb40387cf9bc69cadc26b743e0f4a by Jan Svoboda
[clang][cli] Generate and round-trip PreprocessorOutput options

This patch implements generation of remaining preprocessor output options and tests it by performing parse-generate-parse round trip.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96156
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit b89af18d9e20a6c51bc2efa7d92030e428b39a3f by Jan Svoboda
[clang][cli] Generate and round-trip Target options

This patch implements generation of remaining target options and tests it by performing parse-generate-parse round trip.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96158
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 013613964fd9b8125c9ea6671ae31d215ad853e2 by jeremy.morse
Reapply [DebugInfo] Re-engineer a test to be stricter, add XFails

Was e05c10380ce, reverted in d7d0b17de77, see D95617 for details. I've
added "arm64" to the XFail list (as well as aarch64), will follow up on
the mailing list about whether there's anything else to be done.
The file was modifiedllvm/test/DebugInfo/Generic/missing-abstract-variable.ll
Commit a3c74d6d53fcaf53ac0969dcc7a9ab6dd5c9a9f5 by fraser
[RISCV] Add support for selecting vid.v from build_vector

This patch optimizes a build_vector "index sequence" and lowers it to
the existing custom RISCVISD::VID node. This pattern is common in
autovectorized code.

The custom node was updated to allow it to be used by both scalable and
fixed-length vectors, thus avoiding pattern duplication.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D96332
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
Commit 3da51522fb4f72b7d4619f2dfd454bb3073ab460 by zinenko
[mlir] enable delayed registration of dialect interfaces

This introduces a mechanism to register interfaces for a dialect without making
the dialect itself depend on the interface. The registration request happens on
DialectRegistry and, if the dialect has not been loaded yet, the actual
registration is delayed until the dialect is loaded. It requires
DialectRegistry to become aware of the context that contains it and the context
to expose methods for querying if a dialect is loaded.

This mechanism will enable a simple extension mechanism for dialects that can
have interfaces defined outside of the dialect code. It is particularly helpful
for, e.g., translation to LLVM IR where we don't want the dialect itself to
depend on LLVM IR libraries.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D96137
The file was modifiedmlir/lib/IR/Dialect.cpp
The file was modifiedmlir/unittests/IR/DialectTest.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/include/mlir/IR/Dialect.h
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
Commit 2996a8d67553b9d469e01215b49bb1af17ad6d1e by zinenko
[mlir] avoid exposing mutable DialectRegistry from MLIRContext

MLIRContext allows its users to access directly to the DialectRegistry it
contains. While sometimes useful for registering additional dialects on an
already existing context, this breaks the encapsulation by essentially giving
raw accesses to a part of the context's internal state. Remove this mutable
access and instead provide a method to append a given DialectRegistry to the
one already contained in the context. Also provide a shortcut mechanism to
construct a context from an already existing registry, which seems to be a
common use case in the wild. Keep read-only access to the registry contained in
the context in case it needs to be copied or used for constructing another
context.

With this change, DialectRegistry is no longer concerned with loading the
dialects and deciding whether to invoke delayed interface registration. Loading
is concentrated in the MLIRContext, and the functionality of the registry
better reflects its name.

Depends On D96137

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D96331
The file was modifiedmlir/include/mlir/CAPI/Registration.h
The file was modifiedmlir/lib/Pass/Pass.cpp
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
The file was modifiedmlir/unittests/IR/DialectTest.cpp
The file was modifiedmlir/include/mlir/InitAllDialects.h
The file was modifiedmlir/lib/CAPI/Registration/Registration.cpp
The file was modifiedmlir/lib/ExecutionEngine/JitRunner.cpp
The file was modifiedflang/tools/tco/tco.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/lib/IR/Dialect.cpp
The file was modifiedmlir/lib/Target/SPIRV/TranslateRegistration.cpp
The file was modifiedmlir/lib/Translation/Translation.cpp
The file was modifiedmlir/include/mlir/IR/Dialect.h
The file was modifiedmlir/include/mlir/IR/MLIRContext.h
The file was modifiedmlir/tools/mlir-reduce/mlir-reduce.cpp
Commit 17e5c99d5128f33158103c260714b6e02dbe35d5 by Jan Svoboda
[clang][cli] Generate and round-trip DependencyOutput options

This patch implements generation of remaining dependency output options and tests it by performing parse-generate-parse round trip.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96273
The file was modifiedclang/lib/Frontend/DependencyFile.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/Frontend/HeaderIncludeGen.cpp
The file was modifiedclang/include/clang/Frontend/DependencyOutputOptions.h
Commit eb581fc3241111688ee814170c92fb49c0c4cf61 by Jan Svoboda
[clang][cli] Generate and round-trip Diagnostic options

This patch implements generation of remaining diagnostic options and tests it by performing parse-generate-parse round trip.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96274
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
Commit fa11496b618e84ce1daa53108ef87c25efaf3813 by Jan Svoboda
[clang][cli] Extract FileSystem and Migrator options parsing/generation

This patch splits out the last two option groups (`Filesystem` and `Migrator`) into their own `Parse`/`Generate` functions.

This effectively removes the need for `parseSimpleArgs` and marshalling block in `CompilerInvocation::generateCC1CommandLine`.

The two new `Parse`/`Generate` functions are not part of the round-trip, because they contain no custom code and the very next patch starts round-tripping the whole `CompilerInvocation`.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D96278
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
Commit a7150415ddd8e520a4fa024f07575527d445a689 by Jan Svoboda
[clang][cli] Declare local variable for marshalling macros

Some Windows build bots report `FileSystemOpts` and `MigratorOpts` as undeclared. This fix renames the parameter and declares a local variable with the original name.
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit cf471632b1bd02d6f6e582c8c0f82043f7d09946 by andrzej.warzynski
[flang][driver] Add missing dependency in unit tests (nfc)

The following patch revealed a missing dependency in the CMake script
for Flang driver unit tests:
  * https://reviews.llvm.org/D96032
The following buildbots are failing ("BUILD_SHARED_LIBS" is set to ON):
  * http://lab.llvm.org:8011/#/builders/134/builds/1840
  * http://lab.llvm.org:8011/#/builders/66/builds/1785
  * http://lab.llvm.org:8011/#/builders/33/builds/2436

This patch adds the missing dependency.

From what I can see, FortranSemantics and FortranParser are only
indirect dependencies of FlangFrontendTests and IIUC shouldn't be
required here. This is something that we should revisit at some point.
In this patch I focus on fixing the build.
The file was modifiedflang/unittests/Frontend/CMakeLists.txt
Commit ad3b023c8898b9399717e8eb45971928b5bfe4c3 by cederman
[Sparc] Support relocatable expressions in the assembler

Allow assembler expressions to start with an identifier. This allows for expressions such as
```
b symbol + 4
```
and
```
mov symEnd - symStart, %g1
```

The patch builds upon https://reviews.llvm.org/D47136.

Reviewed By: joerg

Differential Revision: https://reviews.llvm.org/D47458
The file was modifiedllvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
The file was modifiedllvm/test/MC/Sparc/sparc-assembly-exprs.s
Commit ec4fb5bcd3b92867156a5bd75fa0be4c74084f3c by thakis
[gn build] (manually) port e89fcbfad6a3
The file was modifiedllvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Commit 6f9db455a50489d05e4aff761ee070dc90a1ece6 by tbaeder
[clang][NFC] Fix undefined-libs tests

Not all platforms accept -stdlib or -rtlib. Instead of complaining about
the wrong argument to these options, clang complains about the option
itself being present.

Pass an appropriate -target to the clang invocations.
The file was modifiedclang/test/Driver/undefined-libs.cpp
Commit bb69de3f415653cad5ac25b79c10e016ee74dcfe by nicolas.vasilache
[mlir][Linalg] Add a vectorization pattern for linalg::PadTensorOp

The new pattern is exercised from the TestLinalgTransforms pass.

Differential Revision: https://reviews.llvm.org/D96410
The file was modifiedmlir/test/Dialect/Linalg/vectorization.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgTransforms.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
Commit acac29ca4250281358ccdf6a258597a68999cd2d by luismarques
[DAGCombiner] Don't fold FCOPYSIGN vector sign operand casts

Avoid doing the following combine for vector types:

```
copysign(x, fp_extend(y)) -> copysign(x, y)
copysign(x, fp_round(y)) -> copysign(x, y)
```

That combine seemed to impede the selection of vector instruction and cause
a mess in some circumstances.

Differential Revision: https://reviews.llvm.org/D96037
The file was modifiedllvm/test/CodeGen/AArch64/vector-fcopysign.ll
The file was modifiedllvm/test/CodeGen/X86/combine-fcopysign.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit c6a1b16db7dc7a0af8951b39f29ddbe639a98a3b by thakis
clang: try to fix Driver/undefined-libs.cpp on non-linux
The file was modifiedclang/test/Driver/undefined-libs.cpp
Commit 2114b458b0cda7d2be082181fc6d0fcebdbdd9b9 by jay.foad
[AMDGPU] Fix comments in SILoadStoreOptimizer::offsetsCanBeCombined
The file was modifiedllvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
Commit b5f3383152058e230c1563a60c36e8384ab448c8 by jay.foad
[AMDGPU] Add another test case for combining DS reads
The file was modifiedllvm/test/CodeGen/AMDGPU/ds-combine-large-stride.ll
Commit 5ea2d4fa481160c9843b8651df265ce1fbfd9316 by paul.robinson
Avoid conflicts between debug-info and pseudo-probe profiling

After D93264, using both -fdebug-info-for-profiling and
-fpseudo-probe-for-profiling will cause the compiler to crash.
Diagnose these conflicting options in the driver.

Also, the existing CodeGen test was using the driver when it should be
running cc1.

Differential Revision: https://reviews.llvm.org/D96354
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/CodeGen/pseudo-probe-emit.c
The file was addedclang/test/Driver/pseudo-probe.c
Commit 1d68e0a0756476ceee1e62a778021e339c631940 by jeremy.morse
Reland [DWARF] Location-less inlined variables should not have DW_TAG_variable

Originally landed in ddc2f1e3fb4 and reverted in d32deaab4d because of
a Generic test objecting. That was fixed up in 013613964fd9. Original
landing commit message follows:

[DWARF] Location-less inlined variables should not have DW_TAG_variable

Discussed in this thread:

  https://lists.llvm.org/pipermail/llvm-dev/2021-January/148139.html

DwarfDebug::collectEntityInfo accidentally distinguishes between variable
locations that never have a location specified, and variable locations that
have an empty location specified. The latter leads to the creation of an
empty variable referring to the abstract origin.

Fix this by seeking a non-empty location before producing a concrete
entity, to guarantee a DW_AT_location will be produced. Other loops in
collectEntityInfo and endFunctionImpl take care of examining the
retainedNodes collection and ensuring optimised-out variables are created.

Differential Revision: https://reviews.llvm.org/D95617
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-loc-offset.ll
The file was modifiedllvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll
The file was addedllvm/test/DebugInfo/Generic/no-empty-child-vars.ll
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-addr-class.ll
Commit ebfadd82cb3506c8e3f9b952de0fbe8ad9cac9e4 by Louis Dionne
[libc++] Fix copy-paste mistake in __threading_support

Differential Revision: https://reviews.llvm.org/D96115
The file was modifiedlibcxx/include/__threading_support
Commit a743702a1f4880e4492196b1ce9a9a63e0b4c075 by Tom.Weaver
Revert "[clang][driver] Only warn once about invalid library values"

This reverts commit a6439b52088b1d58d8e7aa9891c9011648710593.

Caused buildbot failure http://lab.llvm.org:8014/#/builders/125/builds/125
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was modifiedclang/include/clang/Driver/ToolChain.h
Commit b86a763afb9a1f55f4b234ce97320917ead6ac7f by Tom.Weaver
Revert "Revert "[clang][driver] Only warn once about invalid library values""

This reverts commit a743702a1f4880e4492196b1ce9a9a63e0b4c075.

Test was fixed in c6a1b16db7dc7a0af8951b39f29ddbe639a98a3b
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was modifiedclang/include/clang/Driver/ToolChain.h
Commit 0ac3d97bf4943f8d0d0fedf3545cdb099dadcb1f by nicolas.vasilache
[mlir][Linalg] Fix pad hoisting.

This revision fixes the indexing logic into the packed tensor that result from hoisting padding. Previously, the index was incorrectly set to the loop induction variable when in fact we need to compute the iteration count (i.e. `(iv - lb).ceilDiv(step)`).

Differential Revision: https://reviews.llvm.org/D96417
The file was modifiedmlir/include/mlir/IR/AffineExpr.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
The file was modifiedmlir/test/Dialect/Linalg/hoist-padding.mlir
Commit b93786907c54df4ca6658c569624a6460f72ce1e by 31459023+hctim
[GWP-ASan] Add back some headers removed by IWYU.

These headers are required for Android.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D96374
The file was modifiedcompiler-rt/lib/gwp_asan/platform_specific/utilities_posix.cpp
Commit 89e257bd629d07211078cc32bbe39d33d5752fdb by i
[Polly] Fix -DPOLLY_ENABLE_GPGPU_CODEGEN=off build after 222d380d2f57cc71bb613b5c01ecf17cd1f61fa2
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
Commit 564788ddcefe83b2fe4769e2b312400ca96ed1fc by i
[Polly] Fix -Wunused-lambda-capture
The file was modifiedpolly/lib/Support/RegisterPasses.cpp
Commit 2b2f36a8b12be43d0d85c67a7f1582390b7cc27b by cjdb
[libcxx] adds concept `std::move_constructible`

Implements parts of:
    - P0898R3 Standard Library Concepts
    - P1754 Rename concepts to standard_case for C++20, while we still can

Depends on D77961

Differential Revision: https://reviews.llvm.org/D96230
The file was addedlibcxx/test/std/concepts/lang/moveconstructible.h
The file was modifiedlibcxx/include/concepts
The file was addedlibcxx/test/std/concepts/lang/moveconstructible.compile.pass.cpp
Commit 11f32a41c2144aeec80d1dce8cc6908fa91794a3 by joker.eph
Add convenience C++ helper to manipulate ranked strided memref

Differential Revision: https://reviews.llvm.org/D96192
The file was modifiedmlir/unittests/ExecutionEngine/Invoke.cpp
The file was modifiedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was addedmlir/include/mlir/ExecutionEngine/MemRefUtils.h
Commit 4f30a3d3d26d55c0701dc56dde711667320fdd30 by i
[llvm-cfi-verify] Set UseSymbolTable to false

parseSectionContents expects to skip regions not described by DWARF.  With my
pending DebugInfo/Symbolize change, the filename can be recovered and there
will be more IndirectInstructions entries.
The file was modifiedllvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
Commit 04a2e12612f49e65a7dc14fa45f11f0632d427f2 by i
DebugInfo/Symbolize: Retrieve filename from the preceding STT_FILE for .symtab symbolization

The ELF spec says:

> STT_FILE: Conventionally, the symbol's name gives the name of the source file associated with the object file. A file symbol has STB_LOCAL binding, its section index is SHN_ABS, and it precedes the other STB_LOCAL symbols for the file, if it is present.

For a local symbol, the preceding STT_FILE symbol is almost always in the same
file[1]. GNU addr2line uses this heuristic to retrieve the filename associated
with a local symbol (e.g. internal linkage functions in C/C++).

GNU addr2line can assign STT_FILE filename to a non-local symbol, too, but the trick
only works if no regular symbol precede STT_FILE. This patch does not implement this corner case
(not useful for most executables which have more than one files).

In case of filename mismatch between .debug_line & .symtab, arbitrarily make .debug_line win.

[1]: LLD does not synthesize STT_FILE symbols
(https://bugs.llvm.org/show_bug.cgi?id=48023 see also
https://sourceware.org/bugzilla/show_bug.cgi?id=26822).  An assembly file
without `.file` directives can cause mis-attribution. This is an edge case.

Differential Revision: https://reviews.llvm.org/D95927
The file was modifiedllvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-notype.s
The file was modifiedllvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.h
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-file.s
The file was modifiedllvm/test/DebugInfo/Symbolize/ELF/symtab-ignored.s
The file was addedllvm/test/DebugInfo/Symbolize/ELF/symtab-file-conflict.s
The file was addedllvm/test/DebugInfo/Symbolize/ELF/symtab-file2.yaml
Commit 2193e8be3efa5eea452c6c5bbc2f6393c8f10e62 by cjdb
[libcxx] adds concept `std::copy_constructible`

Implements parts of:
    - P0898R3 Standard Library Concepts
    - P1754 Rename concepts to standard_case for C++20, while we still can

Depends on D96230

Differential Revision: https://reviews.llvm.org/D96232
The file was modifiedlibcxx/include/concepts
The file was addedlibcxx/test/std/concepts/lang/copyconstructible.compile.pass.cpp
Commit 0c254b4a69db068a8813aa0e19e0ddb2226c3221 by craig.topper
[RISCV] Add support for selecting vrgather.vx/vi for fixed vector splat shuffles.

The test cases extract a fixed element from a vector and splat it
into a vector. This gets DAG combined into a splat shuffle.

I've used some very wide vectors in the test to make sure we have
at least a couple tests where the element doesn't fit into the
uimm5 immediate of vrgather.vi so we fall back to vrgather.vx.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D96186
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-vrgather.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-vrgather.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
Commit e49967fbd90bb75610e97c9bbe5f43c6b004b838 by joker.eph
Revert "Add convenience C++ helper to manipulate ranked strided memref"

This reverts commit 11f32a41c2144aeec80d1dce8cc6908fa91794a3.

The build is broken because this commit conflits with the refactoring of
the DialectRegistry APIs in the context. It'll reland shortly after
fixing the API usage.
The file was modifiedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was removedmlir/include/mlir/ExecutionEngine/MemRefUtils.h
The file was modifiedmlir/unittests/ExecutionEngine/Invoke.cpp
Commit 997f6b6f8e06b75f57041518440a8393e17713c0 by tstellar
[CMake] Remove some dead code in llvm_install_library_symlink()

Reviewed By: smeenai

Differential Revision: https://reviews.llvm.org/D95666
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
Commit cb161b3a8893a2d36c6f30ceaafbb7f78b52d121 by craig.topper
[RISCV] Add support for matching .vf forms of fadd/fsub/fmul/fdiv/fma for fixed vectors.

fma+neg will come in a different patch since I haven't done it for .vv
yet either.

Differential Revision: https://reviews.llvm.org/D96375
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
Commit 1e8afba6f176653abcbda4f0485d9419c8407afb by erik.pilkington
[clang] Add support for attribute 'swift_async_error'

This attribute specifies how an error is represented for a swift async method.
rdar://71941280

Differential revision: https://reviews.llvm.org/D96175
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/include/clang/Basic/Attr.td
The file was addedclang/test/SemaObjC/attr-swift-async-error.m
Commit 183b75f667bb51fd4e4ef5a029dcf41432439920 by Louis Dionne
[libc++] Remove c++98 Lit features in the test suite

We don't populate a Lit feature named c++98 since 31cbe0f240f.
The file was modifiedlibcxx/test/std/concepts/lang/convertible.compile.pass.cpp
The file was modifiedlibcxx/test/std/re/re.const/re.matchflag/match_multiline.pass.cpp
Commit c2c977ce50597b0e5186afc342c5784bd0aa6973 by aeubanks
Specify that some flags are legacy PM-specific

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D96100
The file was modifiedllvm/tools/opt/opt.cpp
The file was modifiedllvm/lib/IR/LegacyPassManager.cpp
Commit 9680ea5c982e26212d7bb401532c8273cdeaa3e0 by joker.eph
Add convenience C++ helper to manipulate ranked strided memref

Reland 11f32a41c21 that was reverted in e49967fbd90 after fixing the build.

Differential Revision: https://reviews.llvm.org/D96192
The file was modifiedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was modifiedmlir/unittests/ExecutionEngine/Invoke.cpp
The file was addedmlir/include/mlir/ExecutionEngine/MemRefUtils.h
Commit 68945a8686708c6e4c74b9aeb231b8c4e1731181 by ndesaulniers
[Thumb2] support `movs pc, lr` alias for `subs pc, lr, #0`/`eret`

This is used by the Linux kernel built with CONFIG_THUMB2_KERNEL.

Because different operands are not permitted to `movs`, the diagnostics now provide multiple suggestions along the lines of using a non-pc destination operand or lr source operand.

Forked from D95586.

Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>

Reviewed By: DavidSpickett

Differential Revision: https://reviews.llvm.org/D96304
The file was modifiedllvm/test/MC/ARM/thumb-mov.s
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/test/MC/ARM/lsl-zero-errors.s
Commit bee7b07f230d53de4945769a93490e3488252a7e by cjdb
[libcxx] adds [concepts.arithmetic]

Implements parts of:
    * P0898R3 Standard Library Concepts
    * P1754 Rename concepts to standard_case for C++20, while we still can

Differential Revision: https://reviews.llvm.org/D88131
The file was addedlibcxx/test/std/concepts/lang/arithmetic.pass.cpp
The file was modifiedlibcxx/include/concepts
The file was modifiedlibcxx/test/std/concepts/lang/copyconstructible.compile.pass.cpp
The file was modifiedlibcxx/test/std/concepts/lang/moveconstructible.compile.pass.cpp
Commit fc4d780eaf52cb2361579dcc8d5073e662a950e5 by craig.topper
[RISCV] Remove superfluous semicolon. NFC
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
Commit 5d960cba34682d0d4e0cd56837131888eb647c62 by aeubanks
[opt][NewPM] Add a --print-passes flag to print all available passes

It seems nicer to list passes given a flag rather than displaying all
passes in opt --help.

This is awkwardly structured because a PassBuilder is required, but
reusing the PassBuilder in runPassPipeline() doesn't work because we
read the input IR before getting to runPassPipeline(). So printing the
list of passes needs to happen before reading the input IR. If we remove
the legacy PM code in main() and move everything from NewPMDriver.cpp
into opt.cpp, we can create the PassBuilder before reading IR and check
if we should print the list of passes and exit. But until then this hack
seems fine.

Compared to the legacy PM, the new PM passes are lacking descriptions.
We'll need to figure out a way to add descriptions if we think this is
important.

Also, this only works for passes specified in PassRegistry.def. If we
want to print other custom registered passes, we'll need a different
mechanism.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D96101
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/include/llvm/Passes/PassBuilder.h
The file was modifiedllvm/tools/opt/opt.cpp
The file was addedllvm/test/Other/print-passes.ll
The file was modifiedllvm/tools/opt/NewPMDriver.h
The file was modifiedllvm/tools/opt/NewPMDriver.cpp
Commit a7db680183825d95fb3315a711c47deabe3ac925 by vtjnash
Renovate CMake files in the `llvm-exegesis` tool.

This attempts to move all tools over to using `add_llvm_library` for
better consistency. After doing this, I noticed it ended up as nearly a
reimplementation of https://reviews.llvm.org/rL342148, which later got
reverted in r342336 (b09a8c9bd9b819741b38071a7ccd95042ef2643a).

With ccache and ninja on a large core machine (40), I haven't run into
build errors, so I'm hopeful it's better now, though it doesn't seem to
be any different / new.

Reviewed By: stephenneuendorffer

Differential Revision: https://reviews.llvm.org/D90970
The file was modifiedllvm/utils/TableGen/GlobalISel/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
The file was modifiedllvm/unittests/tools/llvm-exegesis/X86/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
The file was modifiedllvm/tools/llvm-exegesis/lib/CMakeLists.txt
The file was modifiedllvm/unittests/tools/llvm-exegesis/ARM/CMakeLists.txt
Commit 11511ee3438ad319ae99270d371285a30d8839d6 by llvm-project
[Polly] Do not use -O3 pipeline for single pass test.
The file was modifiedpolly/test/GPGPU/spir-codegen.ll
Commit d50f92a4f0bcd2a28ac0e4ad9942998b144cf48d by llvm-project
[Polly] Added dedicated test for working -O3 pipeline.

Test the NewPM as well as the legacy PM.
The file was addedpolly/test/Support/passmanager-O3.ll
Commit c63de225fdd7c7adf6ed041c0bff318d9ae75c00 by cjdb
[libcxx] adds concept std::derived_from

Implements parts of:
    - P0898R3 Standard Library Concepts
    - P1754 Rename concepts to standard_case for C++20, while we still can

Reviewed By: ldionne, #libc

Differential Revision: https://reviews.llvm.org/D74292
The file was modifiedlibcxx/include/concepts
The file was addedlibcxx/test/std/concepts/lang/derived.compile.pass.cpp
Commit 17db24a7a8f23eb5adb24f36b9d51bb7cc5ae564 by cjdb
[libcxx] adds concepts `std::invocable` and `std::regular_invocable`

Implements parts of:
    - P0898R3 Standard Library Concepts
    - P1754 Rename concepts to standard_case for C++20, while we still can

Differential Revision: https://reviews.llvm.org/D96235
The file was modifiedlibcxx/include/concepts
The file was addedlibcxx/test/std/concepts/callable/regularinvocable.compile.pass.cpp
The file was addedlibcxx/test/std/concepts/callable/invocable.compile.pass.cpp
The file was modifiedlibcxx/test/std/concepts/lang/derived.compile.pass.cpp
The file was addedlibcxx/test/std/concepts/callable/functions.h
Commit 0b1764a3d79a33e155e19c6a698992ed1949ca33 by ajcbik
[mlir][sparse] sparse tensor storage implementation

This revision connects the generated sparse code with an actual
sparse storage scheme, which can be initialized from a test file.
Lacking a first-class citizen SparseTensor type (with buffer),
the storage is hidden behind an opaque pointer with some "glue"
to bring the pointer back to tensor land. Rather than generating
sparse setup code for each different annotated tensor (viz. the
"pack" methods in TACO), a single "one-size-fits-all" implementation
has been added to the runtime support library.  Many details and
abstractions need to be refined in the future, but this revision
allows full end-to-end integration testing and performance
benchmarking (with on one end, an annotated Lingalg
op and, on the other end, a JIT/AOT executable).

Reviewed By: nicolasvasilache, bixia

Differential Revision: https://reviews.llvm.org/D95847
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt
The file was modifiedmlir/test/Dialect/Linalg/sparse_2d.mlir
The file was addedmlir/include/mlir/Dialect/Linalg/IR/LinalgSparseOps.td
The file was addedmlir/lib/Dialect/Linalg/Transforms/SparseLowering.cpp
The file was modifiedmlir/test/lib/Transforms/TestSparsification.cpp
The file was addedmlir/test/Dialect/Linalg/sparse_roundtrip.mlir
The file was modifiedmlir/test/Dialect/Linalg/sparse_3d.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Sparsification.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgTypes.cpp
The file was addedmlir/test/Dialect/Linalg/sparse_lower_calls.mlir
The file was modifiedmlir/lib/ExecutionEngine/SparseUtils.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was addedmlir/integration_test/Sparse/CPU/sparse_sum.mlir
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/test/Dialect/Linalg/sparse_1d.mlir
The file was addedmlir/test/Dialect/Linalg/sparse_lower.mlir
The file was modifiedmlir/test/Dialect/Linalg/sparse_nd.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
Commit 544cebd6197820e35047eba0d0e04b9008bdb860 by jpienaar
Change type constraint of the "index" in "shape.split_at" to Shape_SizeOrIndexType

Make the type contraint consistent with other shape dialect operations.

Reviewed By: jpienaar

Differential Revision: https://reviews.llvm.org/D96377
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
The file was modifiedmlir/test/Dialect/Shape/canonicalize.mlir
Commit 4692bb4a8a6f78ee166ac8d2b1ec9082bd6e2be5 by nawrin.sultana
[OpenMP] Add lower and upper bound in num_teams clause

This patch adds lower-bound and upper-bound to num_teams clause
according to OpenMP 5.1 specification. The initial number of teams
created is implementation defined, but it will be greater than or
equal to lower-bound and less than or equal to upper-bound. If
num_teams clause is not specified, the number of teams created is
implementation defined, but it will be greater or equal to 1.

Differential Revision: https://reviews.llvm.org/D95820
The file was addedopenmp/runtime/test/teams/kmp_num_teams.c
The file was modifiedopenmp/runtime/src/i18n/en_US.txt
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/src/kmp_csupport.cpp
The file was modifiedopenmp/runtime/src/dllexports
The file was modifiedopenmp/runtime/src/kmp.h
Commit d77b04e4edc00da3be2e0d2c8a0c80ae3ce0d829 by pavel
[lldb/test] Move and improve TestPlatformProcessConnect.py

Although it is located under tools/lldb-server, this test is very
different that other lldb-server tests. The most important distinction
is that it does not test lldb-server directly, but rather interacts with
it through the lldb client. It also tests the relevant client
functionality (the platform connect command, which is even admitted in
the test name). The fact that this test is structured as a lldb-server
test means it cannot access most of the goodies available to the
"normal" lldb tests (the runCmd function, which it reimplements; the
run_break_set_by_symbol utility function; etc.).

This patch makes it a full-fledged lldb this, and rewrites the relevant
bits to make use of the standard features. I also move the test into the
"commands" subtree to better reflect its new status.
The file was removedlldb/test/API/tools/lldb-server/platform-process-connect/TestPlatformProcessConnect.py
The file was addedlldb/test/API/commands/platform/connect/main.cpp
The file was removedlldb/test/API/tools/lldb-server/platform-process-connect/Makefile
The file was addedlldb/test/API/commands/platform/connect/TestPlatformConnect.py
The file was removedlldb/test/API/tools/lldb-server/platform-process-connect/main.cpp
The file was addedlldb/test/API/commands/platform/connect/Makefile
Commit 81987396ac2ceff56caaa19f54786834523f16db by joker.eph
Fix StridedMemRefType operator[] SFINAE to allow correctly selecting the `int64_t` overload for non-container operands
The file was modifiedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was modifiedmlir/unittests/ExecutionEngine/Invoke.cpp
Commit 6bcc1fd461eeeb7946184cbfe886eead9291919c by spatel
[InstCombine] add tests for lshr with mul; NFC
The file was modifiedllvm/test/Transforms/InstCombine/lshr.ll
Commit 6e2053983e0d3f69b0d9219923d7ba1eae592e12 by spatel
[InstCombine] fold lshr(mul X, SplatC), C2

This is a special-case multiply that replicates bits of
the source operand. We need this fold to avoid regression
if we make canonicalization to `mul` more aggressive for
shl+or patterns.

I did not see a way to make Alive generalize the bit width
condition for even-number-of-bits only, but an example of
the proof is:
  Name: i32
  Pre: isPowerOf2(C1 - 1) && log2(C1) == C2 && (C2 * 2 == width(C2))
  %m = mul nuw i32 %x, C1
  %t = lshr i32 %m, C2
  =>
  %t = and i32 %x, C1 - 2

  Name: i14
  %m = mul nuw i14 %x, 129
  %t = lshr i14 %m, 7
  =>
  %t = and i14 %x, 127

https://rise4fun.com/Alive/e52
The file was modifiedllvm/test/Transforms/InstCombine/lshr.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
Commit 9bf3cfa77b833b508c118384b57c596fc8f92933 by listmail
[SCEV] Add a missing AssumptionCache parameter

The AssumptionCache mechanism is used to feed assumes into known bits computations.  Most places in SCEV passed it in, but one place appears to have been missed.

Spotted via inspection, don't have a test case which actually exercises this, but it seemed like an obvious fixit.
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 19fc8eede484ce50fa0341addeed55af12440dad by Adrian Prantl
Add missing nullptr check.

salvageDebugInfoImpl() may fail and return a nullptr.
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/test/Transforms/Coroutines/coro-debug.ll
Commit c81d52997ac0d1206ea0fd4935964f4c8661daed by tokarip
[libc++] Use builtins in more math.h functions.

Not using builtins doesn't always imply worse code,
but for e. g. isinf, this is 30%+ faster.

Before:
name        time/op
BM_isinf     2.14ns ± 2%

After:
name        time/op
BM_isinf     1.33ns ± 2%

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D88854
The file was modifiedlibcxx/include/math.h
Commit 1cb47a063e2bbb04375ab52ed7377e8d555ef97d by hoy
[CSSPGO] Unblock optimizations with pseudo probe instrumentation.

The IR/MIR pseudo probe intrinsics don't get materialized into real machine instructions and therefore they don't incur runtime cost directly. However, they come with indirect cost by blocking certain optimizations. Some of the blocking are intentional (such as blocking code merge) for better counts quality while the others are accidental. This change unblocks perf-critical optimizations that do not affect counts quality. They include:

1. IR InstCombine, sinking load operation to shorten lifetimes.
2. MIR LiveRangeShrink, similar to #1
3. MIR TwoAddressInstructionPass, i.e, opeq transform
4. MIR function argument copy elision
5. IR stack protection. (though not perf-critical but nice to have).

Reviewed By: wmi

Differential Revision: https://reviews.llvm.org/D95982
The file was modifiedllvm/lib/Transforms/IPO/FunctionAttrs.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/include/llvm/IR/Instruction.h
The file was modifiedllvm/lib/CodeGen/LiveRangeShrink.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-instcombine.ll
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
The file was modifiedllvm/lib/IR/Instruction.cpp
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-twoaddr.ll
The file was modifiedllvm/include/llvm/CodeGen/MachineInstr.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-instsched.ll
The file was modifiedllvm/lib/CodeGen/StackProtector.cpp
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-peep.ll
Commit 5e77ea04f214c7a18bd5c782c8b8a7b7c828ad7a by jpienaar
Make gCrashRecoveryEnabled thread local

If context is enabled/disabled and queried concurrently then this
results in a data race/TSAN failure with RunSafely (where boolean
variable was not locked).

There doesn't seem to be a reasonable way to enable threads that enable
and disable recovery in parallel (without also keeping
gCrashRecoveryEnabled's lock held during Fn execution which seems
undesirable). This makes enable checking if enabled thread local and
consistent with other thread local usage of crash context here.

Differential Revision: https://reviews.llvm.org/D93907
The file was modifiedllvm/lib/Support/CrashRecoveryContext.cpp
Commit 4dc8365f80823d8042ba4bdc3278de7a42619c24 by sam.mccall
[clangd] Remove support for pre-standard semanticHighlighting notification

This is obsoleted by the standard semanticTokens request family.
As well as the protocol details, this allows us to remove a bunch of plumbing
around pushing highlights to clients.

This should not land until the new protocol has feature parity, see D77702.

Differential Revision: https://reviews.llvm.org/D95576
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.h
The file was modifiedclang-tools-extra/clangd/Protocol.h
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was removedclang-tools-extra/clangd/test/semantic-highlighting.test
The file was modifiedclang-tools-extra/clangd/Protocol.cpp
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.h
The file was modifiedclang-tools-extra/clangd/test/semantic-tokens.test
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.h
Commit bda5e57742237dc38350e59892cf4220ae0de486 by sam.mccall
[clangd] Remove redundant -fno-delayed-template-parsing in tests. NFCI

We now (since a while) turn this off centrally in ParsedAST and CodeComplete.
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/tweaks/ExpandAutoTypeTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SelectionTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/tweaks/DefineInlineTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FindTargetTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
Commit 9283058abbec3d2236e69556206b4e66bf52045b by Jessica Paquette
[AArch64][GlobalISel] Fold G_ADD into the cset for G_ICMP

When we have a G_ADD which is fed by a G_ICMP on one side, we can fold it into
the cset for the G_ICMP.

e.g. Given

```
%cmp = G_ICMP ... %x, %y
%add = G_ADD %cmp, %z
```

We would normally emit a cmp, cset, and add.

However, `%add` is either `%z` or `%z + 1`. So, we can just use `%z` as the
source of the cset rather than wzr, saving an instruction.

This would probably be cleaner in AArch64PostLegalizerLowering, but we'd need
to change the way we represent G_ICMP to do that, I think. For now, it's
easiest to implement in selection.

This is a 0.1% code size improvement on CTMark/pairlocalalign at -Os.

Example: https://godbolt.org/z/7KdrP8

Differential Revision: https://reviews.llvm.org/D96388
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-cmp.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
Commit db0d7d0ba9f9d6c03263234beabb1c0b8435a445 by xur
[SampleFDO][NFC] Refactor SampleProfileLoader to reuse in CodeGen

Break SampleProfileLoader into to a base and a derived class.
Base class (SampleProfileLoaderBaseImpl) includes the common
code for IR and MachineIR (CodeGen) sample loader.
It will be templatelized in the later patch.

Inline and Probe related code will remain in the derived class of
SampleProfileLoader and stays in SampleProfile.cpp.

We need to refactor some functions:
(1) getInstWeight() to enable the code sharing -- put the core into
getInstWeightImpl().
(2) emitAnnotation() and propagateWeights() to carve out the code
specific to SampleProfileLoader.
(3) make getInstWeight() and findFunctionSamples() virtual and override
in SampleProfileLoader as they need to access the fields in the derived
class.

Differential Revision: https://reviews.llvm.org/D95832
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit 606c3be85d9252c0b9964bf4c799a947e3d16a8f by davelee.com
[lldb] Minor cleanups to ThreadPlan.h (NFC)

While learning about ThreadPlan, I did a bit of cleanup:

* Remove unused code
* Move functions to protected where applicable
* Remove virtual for functions that are not overridden

Differential Revision: https://reviews.llvm.org/D96277
The file was modifiedlldb/include/lldb/Target/ThreadPlan.h
The file was modifiedlldb/source/Target/ThreadPlan.cpp
Commit d65036593595551dc7b3cef013c930976851b32a by jpienaar
Revert "Make gCrashRecoveryEnabled thread local"

This reverts commit 5e77ea04f214c7a18bd5c782c8b8a7b7c828ad7a.

Causes a breakage on Windows buildbot.
The file was modifiedllvm/lib/Support/CrashRecoveryContext.cpp
Commit 228f00bd75d953545eb2492156d776fdac211a24 by Vitaly Buka
[NFC] Simplify test

Redundant check-prefixes is needed for folloup patches.
The file was modifiedclang/test/Driver/msan.c
Commit b6051f52acf5e735478dba87da9a7657bdc249f9 by Vitaly Buka
[Clang, NewPM] Add KMSan support

Depends on D96320.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D96328
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedclang/test/Driver/msan.c
Commit cee9869c4e6efe4897c71a17590e990d248131b3 by aeubanks
[opt] Add helpful alternatives for -analyze under new PM

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D96449
The file was modifiedllvm/tools/opt/opt.cpp
Commit 096f547208995cc30947abdb8033cc8d86522496 by i
[asan][test] Fix Linux/odr-violation.cpp after symbolizer change D95927
The file was modifiedcompiler-rt/test/asan/TestCases/Linux/odr-violation.cpp
Commit 8fb4a4f7bba0fd1af7e2ae0be96082de0526d8d0 by benny.kra
[SampleFDO] Silence -Wnon-virtual-dtor warning

There's no polymorphic deletion happening here.
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit 3a5f8a3ea34fdeca98d6a24b314c0c7ef97910be by hoy
[CSSPGO] Restrict pseudo probe tests to x86_64 only.
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-twoaddr.ll
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-peep.ll
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-instsched.ll
Commit 5f7a4d8d05896c2d54a3d67cc3fd1fd81a84b2df by Jessica Paquette
[AArch64][GlobalISel] Perform load/store extended reg folding with optsize

GlobalISel was only doing this with minsize. SDAG does this with optsize.

(See: `SelectionDAG::shouldOptForSize()`)

This is a 0.3% code size improvement for CTMark at -Os.

(Best: 1.1% improvements on lencod + pairlocalalign)

Differential Revision: https://reviews.llvm.org/D96451
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/load-addressing-modes.mir
Commit 4643fd27c8a428906b1ed22cb225240a4f52694b by nicolas.vasilache
[mlir][Linalg] Fix crash when tileSizeComputationFunction is left unspecified
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
Commit 24db78393804cc255baaf474ac405aaad458a84d by nicolas.vasilache
[mlir] NFC - Extend inferResultType API for SubViewOp and SubTensorOp
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
Commit 309d40f05228ef71860afe1c179a3c8dcc4d7e79 by davelee.com
[lldb] Use internal_dict name over dict in python examples

Follow up to https://reviews.llvm.org/rG483ec136da7193de781a5284f1c37929cc27c05c
The file was modifiedlldb/source/Commands/CommandObjectTarget.cpp
The file was modifiedlldb/source/Commands/CommandObjectType.cpp
The file was modifiedlldb/bindings/interface/SBBreakpointLocation.i
The file was modifiedlldb/bindings/interface/SBBreakpoint.i
Commit 6b07a978350ff738b81866c6c9114770f997b2fc by silvasean
[mlir] Introduce more intuitive wording for attributes.

After discussion, it seems like we want to go with
"inherent/discardable". These seem to best capture the relationship with
the op semantics and don't conflict with other terms.

Please let me know your preferences. Some of the other contenders are:

```
"intrinsic" side | "annotation" side
-----------------+------------------
characteristic   | annotation
closed           | open
definitional     | advisory
essential        | discardable
expected         | unexpected
innate           | acquired
internal         | external
intrinsic        | extrinsic
known            | unknown
local            | global
native           | foreign
inherent         | acquired
```

Rationale:

- discardable: good. discourages use for stable data.
- inherent: good
- annotation: redundant and doesn't convey difference
- intrinsic: confusable with "compiler intrinsics".
- definitional: too much of a mounthful
- extrinsic: too exotic of a word and hard to say
- acquired: doesn't convey the relationship to the semantics
- internal/external: not immediately obvious: what is internal to what?

- innate: similar to intrinsic but worse
- acquired: we don't typically think of an op as "acquiring" things
- known/unknown: by who?
- local/global: to what?
- native/foreign: to where?
- advisory: confusing distinction: is the attribute itself advisory or
  is the information it provides advisory?
- essential: an intrinsic attribute need not be present.
- expected: same issue as essential
- unexpected: by who/what?
- closed/open: whether the set is open or closed doesn't seem essential
  to the attribute being intrinsic. Also, in theory an op can have an
  unbounded set of intrinsic attributes (e.g. `arg<N>` for func).
- characteristic: unless you have a math background this probably
  doesn't make as much sense

Differential Revision: https://reviews.llvm.org/D96093
The file was modifiedmlir/docs/LangRef.md
Commit b83361b82bfe58cab6069c40b40641d7e39011a9 by silvasean
Minor fixes to Type ODS docs.

Differential Revision: https://reviews.llvm.org/D96391
The file was modifiedmlir/docs/OpDefinitions.md
Commit 1cd1573f11b835e9b5ce35b01dc9141438f0dd34 by aeubanks
[docs] Make clearer in WritingAnLLVMPass that the legacy PM isn't the default

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D96452
The file was modifiedllvm/docs/WritingAnLLVMPass.rst
Commit c19a4128095da2191da7c04a862fb298bcf1298c by rob.suderman
[MLIR][TOSA] Tosa elementwise broadcasting

Added support for broadcasting size-1 dimensions for TOSA elemtnwise
operations.

Differential Revision: https://reviews.llvm.org/D96190
The file was modifiedmlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
The file was modifiedmlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
Commit 1514f3b2c87267974e76c19a78b5d9e2c61bbd4f by Jessica Paquette
[AArch64][GlobalISel] Don't perform the mul const combine with G_PTR_ADD

A G_MUL + G_PTR_ADD can also be folded into a madd. So, conservatively, we
shouldn't combine when the G_MUL is used by a G_PTR_ADD either.

Differential Revision: https://reviews.llvm.org/D96457
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizercombiner-mulpow2.mir
Commit 897bec937e8156061d0546c4a4bf925fdcdb672c by Vedant Kumar
[test/ubsan] Allow unused FileCheck prefixes in TypeCheck/vptr.cpp

This test started failing after https://reviews.llvm.org/D95849
defaulted --allow-unused-prefixes to false.

Taking a look at the test, I didn't see an obvious need to add
OS-specific check lines for each supported value of %os.

rdar://74207657
The file was modifiedcompiler-rt/test/ubsan/TestCases/TypeCheck/vptr.cpp

Summary

  1. [test-suite] SPEC2017 CPU Fotonik3d floating point tests. (details)
Commit efb2e01b23f098f82bab3701c983d41711a2a3bb by naromero
[test-suite] SPEC2017 CPU Fotonik3d floating point tests.

Add SPEC2017 CPU Fotonik3d floating point rate and speed tests.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D96104
The file was addedExternal/SPEC/CFP2017rate/549.fotonik3d_r/CMakeLists.txt
The file was modifiedExternal/SPEC/CFP2017rate/CMakeLists.txt (diff)
The file was addedExternal/SPEC/CFP2017speed/649.fotonik3d_s/CMakeLists.txt
The file was modifiedExternal/SPEC/CFP2017speed/CMakeLists.txt (diff)