Changes

Summary

  1. Add SKIPPED to known result names. (details)
  2. Change COMPILER_RT_TEST_TARGET_TRIPLE to COMPILER_RT_DEFAULT_TARGET_TRIPLE (details)
  3. Fix a capitalisation problem (details)
  4. Add O3 flag to VLS and VLA configs (details)
  5. [Sanitizers] Fix broken LLVM_ENABLE_PROJECTS config. (details)
Commit 0cee063195ed0d74e801629f6a229b1162b45b91 by nigelp
Add SKIPPED to known result names.

A new test result on the buildbot workers, "SKIPPED", was introduced by D102754.

This was not specifically handled in LitTestCommand.py, so some build results
displayed, "Unexpected test result output SKIPPED", without the number of tests
producing that result.

This patch is to handle "SKIPPED" and display the number of tests producing that
result, as "X skipped unit tests".

The patch will not turn a red build into a green one, just display the relevant
number of tests.

I don't have a local copy of the buildbot infrastructure to test this for side
effects, but @gkistanova staged the change 2 months ago (June 2021), and it is
displaying the results as intended.

The first build of interest, showing "Unexpected test result output SKIPPED",
was:
https://lab.llvm.org/staging/#/builders/145/builds/996

A recent build showing the intended "X skipped unit tests" is:
https://lab.llvm.org/staging/#/builders/145/builds/2517

Differential Revision: https://reviews.llvm.org/D104518
The file was modifiedzorg/buildbot/commands/LitTestCommand.py (diff)
Commit 4977a73cd24ee6d614189bec471a539eceefec99 by i
Change COMPILER_RT_TEST_TARGET_TRIPLE to COMPILER_RT_DEFAULT_TARGET_TRIPLE

This allows us to remove a COMPILER_RT_DEFAULT_TARGET_TRIPLE hack from
llvm-project/compiler-rt/cmake/Modules/CompilerRTUtils.cmake

Differential Revision: https://reviews.llvm.org/D109784
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android_functions.sh (diff)
Commit 0b51f5220a80f7a99b6d9e0d2f9129d62792f2d7 by gribozavr
Fix a capitalisation problem

The build system doesn't accept "All" here, we must pass "all".
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 3ddb899dea13cab48f1c79587f9eb5ec836b5459 by matthew.devereau
Add O3 flag to VLS and VLA configs

A missing O3 flag in the VLS and VLA buildbots was resulting
in some false positives slipping through. e.g., CLAMR fails when
running LNT with O3 but passes without it.
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 6e86f181714783f160991f7b8bea89a1c57c7a52 by mascasa
[Sanitizers] Fix broken LLVM_ENABLE_PROJECTS config.
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)

Summary

  1. [ARM] Teach DemandedVectorElts about VMOVN lanes (details)
  2. Recommit "[LAA] Support pointer phis in loop by analyzing each incoming pointer." (details)
  3. [runtimes] Check whether -nostdinc++ and -nostdlib++ are supported (details)
  4. [mlir][linalg] Fold ExtractSliceOps during tiling. (details)
  5. [OpenCL] Enables .rgba vector extension in C++ for OpenCL 2021 (details)
  6. [llvm cmake] replace tabs with spaces in config-ix.cmake (details)
  7. [Windows build] Use "DIA SDK" in sysroot (details)
  8. [Dexter] Improve performance by evaluating expressions only when needed (details)
  9. Cleanup identifier parsing; NFC (details)
  10. [lldb/test] Start pexpect tests with a custom HOME (details)
  11. AMDGPU: Avoid relying on an undef value in test (details)
  12. Remove incorrect comment in getSingleUndroppableUse. NFC (details)
  13. [PowerPC] Exploit Prefixed Load/Stores using the refactored Load/Store Implementation (details)
  14. [WebAssembly] Allow import and export of TLS symbols between DSOs (details)
  15. [clangd] Ignore ObjC `id` and `instancetype` in FindTarget (details)
  16. Fix a unittest file after D108695 when Z3 is enabled (details)
  17. Fix test failure created by ef8c9135efcb (details)
  18. [IR] Reduce max supported integer from 2^24-1 to 2^23. (details)
  19. clang-tidy: introduce readability-containter-data-pointer check (details)
  20. [JITLink] Allow moving a Symbol to a Block in a different Section (details)
  21. [mli][linalg] Reuse getValueOrCreateConstantIndexOp method (NFC). (details)
  22. [IPO] Use make_early_inc_range (NFC) (details)
  23. [flang][OpenMP] Add semantic check for threadprivate directive (details)
  24. [gn build] Use lib_dirs instead of qualified path in libs for diaguids.lib (details)
  25. Revert "clang-tidy: introduce readability-containter-data-pointer check" (details)
  26. [NFC] Add trailing comma on TYPED_TEST_SUITE (details)
  27. [StackColoring] Pre-commit of test case showing a debug invariance bug (details)
  28. [StackColoring] Fix a debug invariance problem (details)
  29. Revert "[Dexter] Improve performance by evaluating expressions only when needed" (details)
  30. Revert "Revert "clang-tidy: introduce readability-containter-data-pointer check"" (details)
  31. [gn build] Port 49992c04148e (details)
  32. Put code that avoids heapifying local blocks behind a flag (details)
  33. [Sanitizers] intercept fparseln on freebsd (details)
  34. [VPlan] Queue (block, operand) pairs together (NFC). (details)
  35. [llvm-profgen] Ignore broken LBR samples (details)
  36. [lld/mac] Search .tbd before binary for framework files too (details)
  37. [AMDGPU] Switch PostRA sched to MachineSched (details)
  38. Revert "[WebAssembly] Rethrow longjmp in EH handling if EmSjLj is enabled" (details)
  39. [CMake][AIX] Disable visibility options in build (details)
  40. [SCEV] Attempt to define what flags are legal on a SCEV (details)
  41. [StopInfoMachException] Summarize arm64e BLRAx/LDRAx auth failures (details)
  42. [SCEV] Stop applying contextual flags in applyLoopGuards (details)
  43. autogen a test for ease of update in later patch (details)
  44. [mlir] Apply py::module_local() to a few more classes. (details)
  45. [test] precommit test for D109786 (details)
  46. [test] precommit anoter test for D109786 (details)
  47. NFC: DebugInfo: refactor pretty printing into a utility class (details)
  48. Remove unused llvm/Support/Parallel.h from MLIR (NFC) (details)
  49. [flang] Make 'this_image()' an intrinsic function (details)
  50. Attributor: Fix typos (details)
  51. AMDGPU: Rename attributor class for uniform-work-group-size (details)
  52. Attributor: Fix crash on undef in !callees (details)
  53. SeparateConstOffsetFromGEP: Fix stack overflow in unreachable code (details)
  54. [mlir][linalg] PadTensorOp vectorization: Avoid redundant FillOps (details)
  55. [CMake] Delete obsoleted COMPILER_RT_TEST_TARGET_TRIPLE (details)
  56. RegAllocGreedy: Account for reserved registers in num regs heuristic (details)
  57. [lld][WebAssembly] Use llvm-objdump to test __wasm_init_memory (details)
  58. [CSSPGO] Enable pseudo probe instrumentation in O0 mode. (details)
  59. DAG: Fix incorrect folding of fmul -1 to fneg (details)
  60. regen an autogened test which is stale (details)
  61. Re-Revert "clang-tidy: introduce readability-containter-data-pointer check" (details)
  62. [gn build] Port 626586fc253c (details)
  63. [MLIR] Use memref.copy ops in BufferResultsToOutParams pass. (details)
  64. Make the --mlir-disable-threading command line option overrides the C++ API usage (details)
  65. Revert "[flang] Make 'this_image()' an intrinsic function" (details)
  66. [CSSPGO][llvm-profgen] Truncate stack samples with invalid return address. (details)
  67. [obj2yaml][XCOFF] Dump sections (details)
  68. Add extra check for llvm::Any::TypeId visibility (details)
  69. [NPM] Added -print-pipeline-passes print params for a few passes. (details)
  70. [AArch64][GlobalISel] Add a new reassociation for G_PTR_ADDs. (details)
  71. [mlir][linalg] Update OpDSL doc (NFC). (details)
  72. [mlir] Update docs on conversion and translation to LLVM (details)
  73. [X86][InlineAsm] Use mem size information (*word ptr) for "global variable + registers" memory expression in inline asm. (details)
  74. [VPlan] Support sinking recipes with uniform users outside sink target. (details)
  75. [mlir][linalg] ComprehensiveBufferize: Do not copy InitTensorOp results (details)
  76. [LV] Min/max intrinsic reduction test cases. (details)
  77. [NVPTX] NFC: Remove unused imm type intrinsic arg (details)
  78. [OpenCL] Supports optional image types in C++ for OpenCL 2021 (details)
  79. [MIPS] Remove unused tblgen template args. NFC (details)
  80. [X86] combineX86ShuffleChain - ensure we only peek through bitcasts to vectors (PR51858) (details)
  81. [LV] Recognize intrinsic min/max reductions (details)
  82. [DSE] Add capture-before test cases with loads. (details)
  83. [ARM] Prevent continuous folding of SUBC (details)
  84. [mlir][Linalg] Replace DenseSet by UnionFind in ComprehensiveBufferize - NFC (details)
  85. [mlir][Linalg] Make codegen strategy late transformations opt-in (details)
  86. [gn build] (manually) port 2c42a73d6c39 (details)
  87. [ARM] Move fetching of ARMSubtarget into the scopes that need it. NFC. (details)
  88. [lldb] [Windows] Fix an incorrect assert in NativeRegisterContextWindows_arm (details)
  89. [CostModel][X86] Adjust bitreverse/ctpop/ctlz/cttz AVX2+ costs based on llvm-mca reports (details)
  90. [PhaseOrdering] add tests for PR47023; NFC (details)
  91. [InstCombine] Transform X == 0 ? 0 : X * Y --> X * freeze(Y) (details)
  92. [RISCV][compiler-rt] Add missing __riscv_save_1/0 labels for RV64 (details)
  93. [RISCV][compiler-rt] Move RV64 __riscv_restore_1/0 directives next to labels (details)
  94. Implement delimited escape sequences. (details)
  95. [RISCV][compiler-rt] Fix an incorrect comment for RV64 __riscv_restore_12 (details)
  96. [clang][driver][AIX] Add system libc++ header paths to driver (details)
  97. [HWASan] Catch cases where libc populated jmp_buf. (details)
  98. [SLP][NFC]Add a test for tiny tree with stores and with not (details)
  99. [mlir][Linalg] Fail comprehensive bufferization if a memref is returned. (details)
  100. [Test] Add a test showing missing opportunities in branch deletion by indvars (details)
  101. [HWASan] Add missing newlines. (details)
  102. [test] Fix asan/scudo -shared-libsan tests with -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on (details)
  103. [InstCombine] Update test checks through autogeneration, add more tests. NFC (details)
  104. [compiler-rt] Move -fno-omit-frame-pointer check to common config-ix (details)
  105. [CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux (details)
  106. [HIP] Diagnose -fopenmp-targets for HIP programs (details)
  107. [MLIR] Tighten type constraint on memref.global op def (details)
  108. [OpenMP] Add support for GOMP depobj (details)
  109. Add llvm_unreachable after fully covered switch (NFC) (details)
  110. [MemorySSA] Add verification levels to MemorySSA. [NFC] (details)
  111. switch a couple of SCEV tests to autogen for ease of update (details)
  112. autogen a test for ease of update (details)
  113. [mlir][Linalg] Revisit insertion points in comprehensive bufferization. (details)
  114. [mlir] Fix printing of EmitC attrs/types with escape characters (details)
  115. [SCEV] (udiv X, Y) * Y is always NUW (details)
  116. [InstCombine] move extend after insertelement if both operands are extended (details)
  117. [MemorySSA] Fix "set but not used" warnings (details)
  118. [HWASan] Test longjmp(jmpbuf, 0). (details)
  119. precommit test for D109845/D106852 (details)
  120. [InstCombine] Improve TryToSinkInstruction with multiple uses (details)
  121. Improve type printing of size-dependent const arrays to normalize array-of-const and const-array (details)
  122. Revert "Re-Revert "clang-tidy: introduce readability-containter-data-pointer check"" (details)
  123. [OpenMP][libomptarget] Minor fix in x86_64 plugin (details)
  124. Senticify some comments - post-commit review for e4b9f5e851d1fe0ba93cbb11b2ed4558602c379e (details)
  125. Re-add getSingleUndroppableUse API (details)
  126. [mlir][linalg] Add canonicalizers for depthwise conv (details)
  127. [Compiler-RT] For arm64e test suites use the SDK version as the minimum deployment target. (details)
  128. [DRR] Explicit Return Types in Rewrites (details)
  129. SplitKit: Remove decade old live interval hack (details)
  130. Revert use of getUniqueUndroppableUser in AssumeBundleBuilder (details)
  131. NFC: DWARFTypePrinter: Remove "type" from member function names to reduce redundancy (details)
  132. [clang-format] Top-level unwrapped lines don't follow a left brace (details)
  133. Revert "[InstCombine] Improve TryToSinkInstruction with multiple uses" (details)
  134. Teach SimplifyCFG to fold switches into lookup tables in more cases. (details)
  135. [Polly] Remove autotools build systems from Externals. NFC. (details)
  136. [gn build] Port d249200fa7d5 (details)
  137. [NFC] Split up PassBuilder.cpp (details)
  138. [test] Move some llvm-extract tests into the proper directory (details)
  139. PR51874: Fix diagnostics for defaulted, implicitly deleted 'operator!='. (details)
  140. [MemProf] Avoid global lock when updating MIB cache (details)
  141. [lldb-vscode] Fix focus thread when previous thread exits (details)
  142. [MemProf] Fix format warnings (details)
  143. [GlobalISel] Fix CombinerHelper::isPredecessor for same def/use MI. (details)
  144. [AArch64][GlobalISel] Use MI::getIntrinsicID in more spots. NFC. (details)
  145. [AArch64][GlobalISel] Ensure atomic loads always get assigned GPR destinations (details)
  146. [Transforms] Use make_early_inc_range (NFC) (details)
  147. [mlir][sparse] add affine subscripts to sparse compilation pass (details)
  148. Delete unused GlobalIndirectSymbol::getBaseObject overloads (details)
  149. [ORC] Add MethodWrapperHandler utility for WrapperFunction. (details)
  150. [DebugInfo] Enhance DIImportedEntity to accept children entities (details)
  151. [mlir][OpDSL] Update op definitions to make shapes more concise (NFC). (details)
  152. [flang][driver] Add documentation for Plugins (details)
  153. [AArch64] Regenerate some test checks. NFC (details)
  154. [HardwareLoops] Loop guard intrinsic to recognise zext (details)
  155. [AMDGPU] Fix upcoming TableGen warnings on unused template arguments. NFC. (details)
  156. [FuncSpec] Add a test for specialising on a non-constant global argument. NFC. (details)
  157. [lldb] [gdb-remote] Try using <architecture/> for remote arch unconditionally (details)
  158. [lldb] [ABI/AArch64] Recognize special regs by their xN names too (details)
  159. [Test][AggressiveInstCombine] Add test for truncation of vector instructions (details)
  160. [AggressiveInstCombine] Add `{insert/extract}element` to `TruncInstCombine` DAG (details)
  161. [clangd] Fix clangd crash when including a header (details)
  162. Don't set executable file in ObjectFileMachO::LoadCoreFileImages (details)
  163. [Test] Add test showing missing opportunity in range inference for SCEV (details)
  164. [GlobalISel] Add a combine for and(load , mask) -> zextload (details)
  165. Be more flexible on the storage type allowed for llvm::Any::TypeId::Id (details)
  166. [lldb] Make Platform::DebugProcess take a Target reference (details)
  167. [Analyzer] ConversionChecker: track back the cast expression (details)
  168. [lldb] [DynamicRegisterInfo] Pass name/alt_name via RegisterInfo (details)
  169. [PGO] Change ThinLTO test for targets with loop unrolling disabled (details)
  170. [X86] SimplifyDemandedVectorEltsForTargetNode - add PSADBW handling (details)
  171. [lldb] [Process/gdb-remote] Alias sp to x31 on AArch64 for gdbserver (details)
  172. [AArch64][SVE] NFC: Remove unnecessary if (details)
  173. [lldb/win] Fix TestIRMemoryMapWindows.test when running tests in git bash (details)
  174. [clang-cl] Add a /diasdkdir flag and make /winsysroot imply it (details)
  175. [OpenCL] Supports optional program scope global variables in C++ for OpenCL 2021 (details)
  176. [ARM][CMSE] Clear the secure fp-registers when using softfp abi. (details)
  177. [ARM] Mitigate the cve-2021-35465 security vulnurability. (details)
  178. [hwasan] print globals in symbolizer-friendly format. (details)
  179. [SLP] Add additional memory versioning tests. (details)
  180. [clang-cl] Fix test after 951f362e256 on systems where default target isn't x86_64 (details)
  181. [NewPM] Use a separate struct for ModuleMemorySanitizerPass (details)
  182. [NewPM] Use a separate struct for ModuleThreadSanitizerPass (details)
  183. [NewPM] Replace 'kasan-module' by 'asan-module<kernel>' (details)
  184. [PowerPC][AIX] Add support for varargs for complex types on AIX (details)
  185. Add a new API seek for the Cursor class in the DataExtractor.cpp (details)
  186. Add a command-line flag to control the Swift extended async  frame info. (details)
  187. Increase expected line number for ExtDebugInfo.cpp (details)
  188. [clangd] Dont work on diags if we are not going to emit (details)
  189. Fix vtbl field addr space (details)
  190. [clangd] PreamblePatch should be no-op if includes arent patched (details)
  191. Remove trailing whitespace in ASTReaderDecl.cpp (details)
  192. Fix warning on `llvm-else-after-return`. NFC. (details)
  193. [llvm] Use drop_begin (NFC) (details)
  194. Add a new frontend flag `-fswift-async-fp={auto|always|never}` (details)
  195. [test] Fix test failure in Clang :: Lexer/char-escapes-delimited.c (details)
  196. [libcxx][libcxxabi] CMAKE_REQUIRED_FLAGS is a string, not a list (details)
  197. [LLVM][CMake][NFC] Resolve FIXME: Rename LLVM_CMAKE_PATH to LLVM_CMAKE_DIR throughout the project (details)
  198. [OpenMP] Support construct trait set for Clang (details)
  199. [mlir][Linalg] Cleanup doc and improve logging and readability in ComprehensiveBufferize.cpp - NFC (details)
  200. [FuncSpec] Add force flag to test case to trigger the transform. NFC. (details)
  201. [mlir][sparse] add more asserts to sparse support lib (details)
  202. Removing some spurious whitespace; NFC (details)
  203. [OpenMP] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D109635 (details)
  204. Support Unicode 14 identifiers (details)
  205. [llvm-profgen] Use context-sensitive byte size cost for preinliner decisions by default (details)
  206. [NFC] Added tests for llvm.powi optimizations (details)
  207. [InstCombine] Added llvm.powi optimizations (details)
  208. docs: correct SPHNIX document reference (details)
  209. [SimplifyCFG] Add bonus when seeing vector ops to branch fold to common dest (details)
  210. [AMDGPU] Inline non-kernel functions using extern lds (details)
  211. [lldb] Remove SBExecutionContext::reset (NFC) (details)
  212. [LLD] Remove global state in lld/COFF (details)
  213. [RISCV] Select (srl (sext_inreg X, i32), uimm5) to SRAIW if only lower 32 bits are used. (details)
  214. [AIX][ZOS] Disable LIT tests on AIX and z/OS due to lack of Objective-C support (details)
  215. [CUDA] Pass ExecConfig through BuildCallToMemberFunction (details)
  216. [lld] Add test to check for timer output (details)
  217. [mlir][tosa] Relax ranked constraint on quantization builder (details)
  218. [fuzzer][fuchsia] Close exception channel before exiting. (details)
  219. Temporarily revert "[LLD] Remove global state in lld/COFF" and "[lld] Add test to (details)
  220. [IR] Return AAMDNodes from Instruction::getMetadata() (NFC) (details)
  221. autogen a SCEV test for ease of update (details)
  222. [MemProf] Don't instrument stack accesses unless requested (details)
  223. [OpenMP] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D109635 (details)
  224. [lldb] Skip TestAppleSimulatorOSType if json parsing fails (details)
  225. precommit tests for D109457 (details)
  226. [AMDGPU] NFC: Fixing small spelling errors in AMDGPU header files (details)
  227. [lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings (details)
  228. [MachCore] Report arm64 thread exception state (details)
  229. Revert "[MachCore] Report arm64 thread exception state" (details)
  230. Revert "[lldb] Skip TestAppleSimulatorOSType if json parsing fails" (details)
  231. [Bazel] Use posix definitions for FreeBSD (details)
  232. [clang][NFC] refactor GlobalMethodPool to encapsulate its map (details)
  233. [mlir][sparse] remove unused TENSOR environment (details)
  234. Fixing vector add pattern that incorrectly returns success. (details)
  235. [symbolizer] Change libcxx paths in buildscript. (details)
  236. [LoopIdiomRecognize][Remarks] Track loop-strided store to/from blocks (details)
  237. NFC. Add tests exposing missing analysis invalidation in LoopPredication. (details)
  238. [LoopPredication] Report changes correctly when attempting loop exit predication (details)
  239. [flang] More precise checks for NULL() operands (details)
  240. [Support] Convert BinaryStream class zoo to 64-bit offsets (details)
  241. [flang] Enforce array conformance in actual arguments to ELEMENTALs (details)
  242. Update LoopPredication test to fix buildbot failure. (details)
  243. [ORC] Add finalization & deallocation actions, SimpleExecutorMemoryManager class (details)
  244. [gn build] Port 78b083dbb725 (details)
  245. [compiler-rt][test] Add int128 requirement to TestCases/Misc/Linux/static-link.cpp (details)
  246. [flang] Fold COUNT() (details)
  247. [ELF] Clarify --export-dynamic-symbol/--dynamic-list. NFC (details)
  248. [compiler-rt][test] Ensure CMAKE_SYSROOT is added as a test cflag if provided (details)
  249. Extract LC_CODE_SIGNATURE related implementation out of LLD (details)
  250. [gn build] Port cc8229603b67 (details)
  251. Add MachO signature verification test (details)
  252. [X86] Refactor GetSSETypeAtOffset to fix pr51813 (details)
  253. [GlobalOpt] Do not shrink global to bool for an unfavorable AS (details)
  254. [NFC][MachineRegisterInfo] Fix typo in comments of getLiveInVirtReg() function (details)
  255. [clang][scan-build] Use cc/c++ instead of gcc/g++ on OpenBSD. (details)
  256. [flang] Make 'this_image()' an intrinsic function (details)
  257. CodeView: static_cast result of getOffset() to size_t. (details)
  258. [examples] Fix SectionMemoryManager deconstruction error with MSVC. (details)
  259. [FuncSpec] Specialising on addresses of const global values. (details)
  260. [Clang] Fix long double availability check (details)
  261. Revert "[examples] Fix SectionMemoryManager deconstruction error with MSVC." (details)
  262. [Test] One more missing opportunity on IndVars check removal (details)
  263. Revert "[PowerPC][ELF] make sure local variable space does not overlap with parameter save area" (details)
  264. [DSE] Add test cases with stores to objects before they escape. (details)
  265. [Test] Add simple test where IndVars fails to remove checks on negative values (details)
  266. [OpenCL] Supports optional pipe types in C++ for OpenCL 2021 (details)
  267. GlobalISel/Utils: Refactor integer/float constant match functions (details)
  268. [SystemZ]  Recognize .machine directive in parser. (details)
  269. [MLIR] Matrix: support resizing horizontally (details)
  270. [MLIR] AffineStructures::removeIdRange: support specifying a range within an IdKind (details)
  271. [MLIR] AffineStructures: support removing a range of constraints at once (details)
  272. [TextAPI] Use const-ref iterator in for-range loop. NFCI. (details)
  273. [TableGen] Record::checkRecordAssertions() - Use const-ref iterator in for-range loop. NFCI. (details)
  274. [AsmPrinter] DebugLocEntry::dump() - Use const-ref iterator in for-range loop. NFCI. (details)
  275. [CodeGen] MachineInstr::getUsedDebugRegs() - Use const-ref iterator in for-range loop. NFCI. (details)
  276. [X86][Atom] Fix integer shuffles uops, latency and throughput (details)
  277. Fix Wdocumentation warnings. NFCI. (details)
  278. [MLIR] PresbugerSet: slightly expand documentation (details)
  279. Make multiversioning work with internal linkage (details)
  280. [X86] X86PreTileConfig - Use const-ref iterator in for-range loop. NFCI. (details)
  281. [TableGen] X86EVEX2VEXTablesEmitter - Use const-ref iterator in for-range loop. NFCI. (details)
  282. [CodeGen] LiveDebug - Use const-ref iterator in for-range loop. NFCI. (details)
  283. [DebugInfo] DWARF - Use const-ref iterator in for-range loop. NFCI. (details)
  284. [OpenCL] Supports optional same image reads and writes in C++ for OpenCL 2021 (details)
  285. Fix test failure from e3b10525b489b604d6a1e540be78bda80afb5868 (details)
  286. [NFC] Added testcase for PR25725 (details)
  287. [flang][OpenMP] Add semantic checks for ordered construct (details)
  288. [HWASan] Intercept setjmp/longjmp on x86_64. (details)
  289. Fix CodeGen/pgo-sample-thinlto-summary.c with old PM (details)
  290. [flang] Revamp C1502 checking of END INTERFACE [generic-spec] (details)
  291. [mlir][linalg] Add helper to update IndexOps after tiling (NFC). (details)
  292. [InstCombine] add vector tests for 'and' folds; NFC (details)
  293. [InstCombine] allow splat vectors for narrowing masked fold (details)
  294. [flang] Accept SIZE(assumed-rank, DIM=n) (details)
  295. [gn build] (semi-manually) port 750d5fc65c92 (details)
  296. [X86] Improve `matchBinaryShuffle()`'s `BLEND` lowering with per-element all-zero/all-ones knowledge (details)
  297. [llvm] Use drop_begin (NFC) (details)
  298. [flang] Catch errors with intrinsic array inquiry functions (details)
  299. [OpenMP] libomp: Update third-party sources of ittnotify client code. (details)
  300. [OpenMP] NFC: add type casts to silence gcc warnings (details)
  301. [flang] Correct overflow detection in folding of real->integer conversions (details)
  302. [NFC] clang-format -i /openmp/libomptarget/deviceRTLs/interface.h (details)
  303. [lld-macho] Ignore local personality symbols if non-local with the same name exisst,  to avoid "too many personalities" error. (details)
  304. [mlir] Fix potential crash in hoistRedundantVectorTransfers (details)
  305. [mlir] Linalg hoisting should ignore uses outside the loop (details)
  306. [mlir][linalg] Extend drop unit dim pattern to all cases of reduction (details)
  307. [flang] Upgrade warning to error in case of PURE procedure (details)
  308. [flang] Validate SIZE(x,DIM=n) dimension for assumed-size array x (details)
  309. [SLP][NFC]Add a test for reorder of alt shuffle operands. (details)
  310. [Dexter] Mutually exclusive argument group for --builder and --binary (details)
  311. Add information about C99 to the C status page. (details)
  312. [flang] Enforce fixed form rules about END continuation (details)
  313. [flang] Enforce specification function rules on callee, not call (details)
  314. [clang] [ARM] Don't set the strict alignment flag for armv7 on Windows (details)
  315. [mlir] Prevent crash in DropUnitDim pattern due to tensor with encoding (details)
  316. [MLIR][Affine] Simplify nested modulo operations when able (details)
  317. [clang][darwin] Add support for --emit-static-lib (details)
  318. [CSSPGO] Tweakes to lower pseudo probe runtime overhead (details)
  319. [llvm-reduce] Add reduce operands pass (details)
  320. [flang] Fix build (details)
  321. [compiler-rt] Implement __clear_cache() on OpenBSD/riscv64 (details)
  322. [nfc] [lldb] Remove unused DIEPointerSet, DeclToDIEMap and m_decl_to_die (details)
  323. [DFSan] Add force_zero_label abilist option to DFSan. This can be used as a work-around for overtainting. (details)
  324. [NFC] Precommit tests for D109954 (details)
  325. [mlir][sparse] add dce test for all sparse tensor ops (details)
  326. [mlir][sparse] add a sparse quantized_matmul example to integration test (details)
  327. [InstCombine] add tests for min/max intrinsics with offset operand; NFC (details)
  328. [OpenMP] Use irbuilder as default for masked and master construct (details)
  329. OpenMP 5.0 metadirective (details)
  330. Revert "OpenMP 5.0 metadirective" (details)
  331. OpenMP 5.0 metadirective (details)
  332. Revert "[OpenMP] Use irbuilder as default for masked and master construct" (details)
  333. Apply proper source location to fallthrough switch cases. (details)
  334. [NFC] Remove FIXMEs about calling LLVMContext::yield() (details)
  335. [AArch64][SVE][InstCombine] Fold redundant zip1/2(uzp1/2) operations (details)
  336. [flang] More checking of NULL pointer actual arguments (details)
  337. [MachCore] Report arm64 thread exception state (details)
  338. [lld-macho] Construct CFString literals by copying the ConcatInputSection (details)
  339. [OpenMP] Add NoSync attributes to alloc / free shared RTL calls (details)
  340. [Attributor] Change AAExecutionDomain to check intrinsic edges (details)
  341. Reland "[LLD] Remove global state in lld/COFF" after fixing asan and msan test failures (details)
  342. [mlir] Fix syntax example for tensor.from_elements (details)
  343. [lld] Fix small error in previous commit (details)
  344. [OpenMP] Change debugging symbol to weak_odr linkage (details)
  345. [OpenMP] Implement __assert_fail in the new device runtime (details)
  346. [OpenMP] Add additional fields to device environment (details)
  347. [OpenMP] Add support for dynamic shared memory in new RTL (details)
  348. Check for invalid projects passed in LLVM_ENABLE_PROJECTS (details)
  349. [MLIR][GPU] Add constant propagator for gpu.launch op (details)
  350. Adjust the doc after the renaming of debuginfo-tests => cross-project-tests (details)
  351. llvm doc: subversion isn't necessary in this example (details)
  352. llvm doc: remove the old reference to subversion and add a link to the GH repo instead (details)
  353. Revert "Check for invalid projects passed in LLVM_ENABLE_PROJECTS" (details)
  354. Thread safety analysis: Warn when demoting locks on back edges (details)
  355. Revert "OpenMP 5.0 metadirective" (details)
  356. [mlir-c] Add getting fused loc (details)
  357. [lld/mac] Fix comment typo to cycle bots (details)
  358. [MLIR] Simplex: support adding new variables dynamically (details)
  359. [CodeGen] Use make_early_inc_range (NFC) (details)
  360. [MLIR] Simplex: rename num{Variables,Constraints} to getNum{Variables,Constraints} (details)
  361. [ARM] Prevent large integer VQDMULH pattern crashes (details)
  362. [Support] Attempt to fix deadlock in ThreadGroup (details)
  363. Check for invalid projects passed in LLVM_ENABLE_PROJECTS (details)
  364. Precommit tests for D109807 "[InstCombine] Narrow type of logical operation chains when possible" (details)
  365. OpenMP 5.0 metadirective (details)
  366. [Tests] Fix incorrect noalias metadata (details)
  367. [Tests] Fix noalias metadata in one more test (details)
  368. [X86] Improve i8 all-ones element insertion in pre-SSE4.1 (details)
  369. DWARFDie.cpp: Reduce indentation with early continue (details)
  370. DWARFDie:DWARFTypePrinter: Add common utility function for checking where parentheses are required (details)
  371. [RISCV] Optimize (add (shl x, c0), (shl y, c1)) with SH*ADD (details)
  372. llvm/cmake: fix a typo (details)
  373. [X86][Atom] Fix (U)COMISS/SD uops, latency and throughput (details)
  374. [mlir][emitc] Fix indent in CondBranchOp and block label (details)
  375. [ARM] Add VGETLANEu patterns for v4f16 and v8f16 (details)
  376. [InstCombine] add/adjust tests for min/max intrinsics; NFC (details)
  377. [X86] combineX86ShufflesRecursively(): call SimplifyMultipleUseDemandedVectorElts() on after finishing recursing (details)
  378. [NFC] combineX86ShufflesRecursively(): actually address nits for previous patch (details)
  379. [X86] lowerShuffleAsDecomposedShuffleMerge(): if both inputs are broadcastable/identities, canonicalize broadcasts as such (details)
  380. [X86][TLI] SimplifyDemandedVectorEltsForTargetNode(): don't break apart broadcasts from which not just the 0'th elt is demanded (details)
  381. [X86][Atom] Specific uops for all IMUL/IDIV instructions (details)
  382. llvm-dwarfdump: Refactor type pretty printing tests (details)
  383. [X86] Fold SHUFPS(shuffle(x),shuffle(y),mask) -> SHUFPS(x,y,mask') (details)
  384. [X86][Atom] Fix FP uops + port usage (details)
  385. DWARFDie: Improve type printing for function and array types - with qualifiers (cv/reference) and pointers to them (details)
  386. DWARFDie.cpp: Minor follow-up clang-format (details)
  387. [X86] Add test cases for pr51908. NFC (details)
  388. [X86] Remove Commutable flag from mpsadbw intrinsics. (details)
  389. llvm-dwarfdump: Pretty printing types including a space between const and parenthesized references/pointers to arrays (details)
  390. [DebugInfo][LSR] Emit shorter expressions from scev-based salvaging (details)
  391. [llvm] Use pop_back_val (NFC) (details)
  392. [X86] SimplifyDemandedBits - only narrow a broadcast source if we only have one use. (details)
  393. llvm-dwarfdump: Pretty print names qualified/with scopes (details)
  394. llvm-dwarfdump: Don't print even an empty string when a type is unprintable (details)
  395. llvm-dwarfdump: support for type printing "decltype(nullptr)" as "nullptr_t" (details)
  396. llvm-dwarfdump: pretty type printing: print fully qualified names in function type parameter types (details)
  397. [SCEV] Support negative values in signed/unsigned predicate reasoning (details)
  398. [libc] Add implementations of div, ldiv, lldiv and imaxdiv. (details)
  399. Revert "Revert "[IndVars] Replace PHIs if loop exits on 1st iteration"" (details)
  400. [NFC] Add assert and test showing that revert of D109596 wasn't justified (details)
  401. [libc][obvious] Make *abs and *div functions buildable in default mode. (details)
  402. [libc][obvious] Add inttypes.h and stdlib.h as deps to *div functions. (details)
  403. [lldb] Remove two #ifndef linux from Platform.cpp (details)
  404. [mlir][NFC] Add explicit "::mlir" namespace to tblgen generated code (details)
  405. [mlir] Fix bug in partial dialect conversion (details)
  406. [MLIR] Simplex::appendVariable: early return if count == 0 (details)
  407. [CMake] Add debuginfo-tests to LLVM_ALL_PROJECTS after D110016 (details)
  408. [CaptureTracking] Allow passing LI to PointerMayBeCapturedBefore (NFC). (details)
  409. [MLIR][Linalg] Make detensoring cost-model more flexible. (details)
  410. [lldb] [gdb-remote] Remove unused arg from GDBRemoteRegisterContext::ReadRegisterBytes() (details)
  411. [lldb] [gdb-remote] Recognize aarch64v type from gdbserver (details)
  412. Revert "[AArch64][SVE] Teach cost model that masked loads/stores are cheap" (details)
  413. [mlir] Fix integration tests failures introduced in D108505 (details)
  414. AArch64: use ldp/stp for 128-bit atomic load/store in v.84 onwards (details)
  415. [OpenCL] Supports optional writing to 3d images in C++ for OpenCL 2021 (details)
  416. Add myself as a code owner for SYCL support (details)
  417. [clang][NFC] Remove dead code (details)
  418. [NewPM] Make InlinerPass (aka 'inline') a parameterized pass (details)
  419. [GlobalISel] Improve elimination of dead instructions in legalizer (details)
  420. [lldb] [gdb-remote] Always send PID when detaching w/ multiprocess (details)
  421. [mlir][openacc] Make use of the second counter extension in DataOp translation (details)
  422. [MCA] InstructionTables::execute() - use const-ref iterator in for-range loop. NFCI. (details)
  423. [X86] X86TargetTransformInfo - remove unnecessary if-else after early exit. NFCI. (details)
  424. MachOObjectFile - checkOverlappingElement - use const-ref to avoid unnecessary copies. NFCI. (details)
  425. Fix CLANG_ENABLE_STATIC_ANALYZER=OFF building all analyzer source (details)
  426. pre-commit test for D109767 (details)
  427. [update_mir_test_checks.py] Use -NEXT FileCheck directories (details)
  428. [ARM] MVE reverse shuffles. (details)
  429. [Clang] [Fix] Clang build fails when build directory contains space character (details)
  430. [lldb] [test] Add unittest for DynamicRegisterInfo::Finalize() (details)
  431. [lldb] [DynamicRegisterInfo] Unset value_regs/invalidate_regs before Finalize() (details)
  432. Thread safety analysis: Drop special block handling (details)
  433. [JITLink] Adopt forEachRelocation() helper in ELF x86-64 backend (NFC) (details)
  434. [JITLink] Adopt forEachRelocation() helper in ELF RISCV backend (NFC) (details)
  435. [AMDGPU] Regenerate checks (details)
  436. [Analysis] Add support for vscale in computeKnownBitsFromOperator (details)
  437. [analyzer] Move docs of SmartPtr to correct subcategory (details)
  438. [mlir][linalg] Fusion on tensors. (details)
  439. [clangd] Bail-out when an empty compile flag is encountered (details)
  440. [OpenCL] Supports atomics in C++ for OpenCL 2021 (details)
  441. [X86] Add test to show the effect caused by D109607. NFC (details)
  442. [X86] Always check the size of SourceTy before getting the next type (details)
  443. [flang] Put intrinsic function table back into order (details)
  444. [SLP]Improve graph reordering. (details)
  445. [mlir][linalg] Fix typo (NFC). (details)
  446. [MLIR][SCF] Add for-to-while loop transformation pass (details)
  447. [mlir][linalg] Add IndexOp support to fusion on tensors. (details)
  448. [DSE] Add additional tests to cover review comments. (details)
  449. [lldb] Fix whitespace in CommandObjectTarget (NFC) (details)
  450. [lldb] Extract adding symbols for UUID/File/Frame (NFC) (details)
  451. [Verifier] Verify scoped noalias metadata (details)
  452. [ELF] Don't fall back to .text for e_entry (details)
  453. [RISCV] Add a pass to recognize VLS strided loads/store from gather/scatter. (details)
  454. [gn build] Port d85e347a28dc (details)
  455. [MCA] Fix a warning (details)
  456. [Verifier] Try to fix MSVC build (details)
  457. [ELF] Add --why-extract= to query why archive members/lazy object files are extracted (details)
  458. [lld] Remove timers.ll because inconsistent timers behavior causes the test to fail sometimes (details)
  459. Add use_default_shell_env = True to ctx.actions.run (details)
  460. Temporarily XFAIL MLIR test that fails the LLVM verifier after 8700f2bd3 (details)
  461. Revert "[MLIR][SCF] Add for-to-while loop transformation pass" (details)
  462. [NCF][OpenMP] Fix metadirective test on SystemZ (details)
  463. [lldb][crashlog] Avoid specifying arch for image when a UUID is present (details)
  464. [RISCV] Add test cases showing failure to use .vf vector operations when splat is in another basic block. NFC (details)
  465. [RISCV] Teach RISCVTargetLowering::shouldSinkOperands to sink splats for FAdd/FSub/FMul/FDiv. (details)
  466. Eliminate _LIBCPP_EQUAL_DELETE in favor of `=delete`. (details)
  467. Revert code change of D63497 & D74399 for riscv64-*-linux GCC detection (details)
  468. Revert "[CMake] Add debuginfo-tests to LLVM_ALL_PROJECTS after D110016" (details)
  469. [mlir][Linalg] Add ConvolutionOpInterface. (details)
  470. Diagnose -Wunused-value based on CFG reachability (details)
  471. Fix bad merge the removed switch case (details)
  472. [OpenMP][host runtime] Fix indirect lock table race condition (details)
  473. [mlir][MemRef] Compute unused dimensions of a rank-reducing subviews using strides as well. (details)
  474. [IR] Add helper to convert offset to GEP indices (details)
  475. [gn build] Don't pass -Wl,-z,defs for sanitizer builds (details)
  476. [lldb][NFC] Remove outdated FIXME (details)
  477. [libc++] [LIBCXX-DEBUG-FIXME] Constexpr char_traits::copy mustn't compare unrelated pointers. (details)
  478. [libc++] [P0919] Some belated review on D87171. (details)
  479. [RISCV] Add test cases for missed opportunity to use vfmacc.vf. NFC (details)
  480. [RISCV] Teach RISCVTargetLowering::shouldSinkOperands to sink splats for FMA. (details)
  481. [cmake] Put check from D110016 behind (default-on) flag (details)
  482. Revert "Fix CLANG_ENABLE_STATIC_ANALYZER=OFF building all analyzer source" (details)
  483. [DebugInfo] Add test for dumping DW_AT_defaulted (details)
  484. [RISCV] Add test cases for missed opportunities to use vand/vor/vxor.vx. NFC (details)
  485. [NFC] [hwasan] Separate outline and inline instrumentation. (details)
  486. [Polly] Partially fix scoped alias metadata (details)
  487. [OpenMP][NVPTX] Fix a warning that data argument not used by format string (details)
  488. Sema: relax va_start checking further for Windows AArch64 (details)
  489. [GlobalISel] Implement support for the "trap-func-name" attribute. (details)
  490. [AMDGPU][NFC] Correct typos in lib/Target/AMDGPU/AMDGPU*.cpp files. Test commit for new contributor. (details)
  491. [mlir][tosa] Remove the documentation requirement for elements of several binary elementwise ops to be of the same rank. (details)
  492. [clang] Fix a few comment typos to cycle bots (details)
  493. [mlir][tosa] Add several binary elementwise to the list of broadcastable ops. (details)
  494. [X86] Rename the X86WinAllocaExpander pass and related symbols to "DynAlloca". NFC. (details)
  495. Update MLIR generate-test-checks.py to add the notice from the source into the generated file (details)
  496. [mlir-tblgen] Add DagNode StaticMatcher. (details)
  497. [clang] Fix a few comment more typos to cycle bots (details)
  498. [clang] Fix a few more comment typos to cycle bots (details)
  499. [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction are reverses (details)
  500. [mlir][python] Forward _OperationBase _CAPIPtr to the Operation. (details)
  501. [mlir] Tighten verification of SparseElementsAttr (details)
  502. [mlir] Add value_begin/value_end methods to DenseElementsAttr (details)
  503. [mlir] Refactor ElementsAttr into an AttrInterface (details)
  504. [llvm] Use make_early_inc_range (NFC) (details)
  505. [NFC] Rename Context->CtxI in SCEV for uniformity reasons (details)
  506. [Polly] Don't generate inter-iteration noalias metadata. (details)
  507. [SimplifyCFG] Redirect switch cases that lead to UB into an unreachable block (details)
  508. [OpAsmParser] Add a parseCommaSeparatedList helper and beef up Delimeter. (details)
  509. BPF: make 32bit register spill with 64bit alignment (details)
  510. [SCEV] Generalize implication when signedness of FoundPred doesn't matter (details)
  511. [GlobalISel][Legalizer] Don't use eraseFromParentAndMarkDBGValuesForRemoval() for some artifacts. (details)
  512. [DSE][NFC] Rename Later->Killing, Earlier->Dead (details)
  513. [GlobalISel][Legalizer] Use ArtifactValueFinder first for unmerge combines before trying others. (details)
  514. [clangd] Deduplicate inlay hints (details)
  515. [MLIR] Add mergeLocalIds and mergeSymbolIds (details)
  516. [lldb] Speculative fix to TestGuiExpandThreadsTree (details)
  517. [MLIR][SCF] Add for-to-while loop transformation pass (details)
  518. [PowerPC] NFC: Remove unused tblgen template args (details)
  519. Add CMAKE_BUILD_TYPE to the list of BOOTSTRAP_DEFAULT_PASSTHROUGH variables (details)
  520. [flang][docs] Document plugin limitations (details)
  521. [MLIR] NFC. gpu.launch op argument const folder cleanup (details)
  522. [OpenCL] Test case for C++ for OpenCL 2021 in OpenCL C header test (details)
  523. [LowerConstantIntrinsics] Fix heap-use-after-free bug in worklist (details)
  524. [SCEV] Add some asserts on availability of arguments of isLoopEntryGuardedByCond (details)
  525. GlobalISel/Utils: Refactor constant splat match functions (details)
  526. [SCEV] Use isAvailableAtLoopEntry in the asserts (details)
Commit 5a6dfbb8cd26376120e16ceae650f6c9b7a00950 by david.green
[ARM] Teach DemandedVectorElts about VMOVN lanes

The class of instructions that write to narrow top/bottom lanes only
demand the even or odd elements of the input lanes. Which means that a
pair of VMOVNT; VMOVNB demands no lanes from the original input. This
teaches that to instcombine from the target hooks available through
ARMTTIImpl.

Differential Revision: https://reviews.llvm.org/D109325
The file was modifiedllvm/test/Transforms/InstCombine/ARM/mve-narrow.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
Commit e248d69036dad6f65584dd8faac4e2d5a3816e12 by flo
Recommit "[LAA] Support pointer phis in loop by analyzing each incoming pointer."

SCEV does not look through non-header PHIs inside the loop. Such phis
can be analyzed by adding separate accesses for each incoming pointer
value.

This results in 2 more loops vectorized in SPEC2000/186.crafty and
avoids regressions when sinking instructions before vectorizing.

Fixes PR50296, PR50288.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D102266
The file was modifiedllvm/test/Transforms/LoopDistribute/pointer-phi-in-loop.ll
The file was modifiedllvm/lib/Analysis/LoopAccessAnalysis.cpp
The file was modifiedllvm/test/Analysis/LoopAccessAnalysis/pointer-phis.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vectorize-pointer-phis.ll
The file was modifiedllvm/include/llvm/Analysis/LoopAccessAnalysis.h
Commit 125e8ef10ba468d41b27bf9c7569c1a0520d1ab9 by martin
[runtimes] Check whether -nostdinc++ and -nostdlib++ are supported

Don't blindly assume they're supported - GCC doesn't support -nostdlib++.

The llvm-project/runtimes directory is supposed to allow building the
runtimes standalone from a newly built Clang, and thus should allow
building with other compilers too.

Differential Revision: https://reviews.llvm.org/D109719
The file was modifiedruntimes/CMakeLists.txt
Commit 44a889778ceeb6bcb11702f5c940306905a3821e by gysit
[mlir][linalg] Fold ExtractSliceOps during tiling.

Add the makeComposedExtractSliceOp method that creates an ExtractSliceOp and folds chains of ExtractSliceOps by computing the sum of their offsets and by multiplying their strides.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D109601
The file was modifiedmlir/include/mlir/Dialect/StandardOps/Utils/Utils.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
The file was modifiedmlir/lib/Dialect/StandardOps/Utils/Utils.cpp
The file was modifiedmlir/test/Dialect/Linalg/tile-tensors.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Utils/Utils.cpp
Commit 09dc454b00b8ed0a19f766f760fa19e86a0b9059 by Justas.Janickas
[OpenCL] Enables .rgba vector extension in C++ for OpenCL 2021

`.rgba` vector extension setting in C++ for OpenCL 2021 is now
performed analogously to OpenCL C 3.0. Test case added.

Differential Revision: https://reviews.llvm.org/D109370
The file was modifiedclang/test/SemaOpenCL/ext_vectors.cl
The file was modifiedclang/lib/Sema/SemaExprMember.cpp
Commit f78f613bb74ca837be36efcc72105c3c2d54b4f3 by thakis
[llvm cmake] replace tabs with spaces in config-ix.cmake
The file was modifiedllvm/cmake/config-ix.cmake
Commit 8cfab5de13a8ec3a2ffccb1b94b0165512a33552 by thakis
[Windows build] Use "DIA SDK" in sysroot

This updates llvm/utils/sysroot.py to include the "DIA SDK" folder in the
sysroot.

It also updates the build to look for the DIA SDK there if a sysroot is set.

This requires moving LLVM_WINSYSROOT to config-ix.cmake.

For the GN build, I chose to pass a qualified path to diaguids in libs instead
of pushing a config with a `/libpath:` flag. The former requires a GN with
https://gn-review.googlesource.com/c/gn/+/12200, the latter requires D109624.
The former is more like the cmake build, arguably a bit simpler, and it's
easier to check for the wrong GN revision and easier to update GN.

Differential Revision: https://reviews.llvm.org/D109708
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
The file was modifiedllvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/BUILD.gn
The file was modifiedcompiler-rt/cmake/config-ix.cmake
The file was modifiedllvm/cmake/config-ix.cmake
The file was modifiedllvm/utils/sysroot.py
The file was modifiedllvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/enable_dia.gni
Commit 9bbc0c1ffb47f9cf4c9d8e9a0e8100002fe5aafb by stephen.tozer
[Dexter] Improve performance by evaluating expressions only when needed

Currently, Dexter's model for fetching watch values is to build a list of
expressions to watch before running the debugger, then evaluating all of them at
each breakpoint, then finally looking up the values of these expressions at each
line they were expected on. When using dexter on a large project while watching
many different expressions, this is very slow, as Dexter will make a massive
number of calls made to the debugger's API, the vast majority of which are not
being used for anything. This patch fixes this issue by having Dexter only
evaluate expressions at a breakpoint when it will be used by a Dexter command.

Reviewed By: jmorse

Differential Revision: https://reviews.llvm.org/D107070
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/command/CommandBase.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectProgramState.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectWatchBase.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
Commit 601102d282d5e9a1429fea52ee17303aec8a7c10 by aaron
Cleanup identifier parsing; NFC

Rename methods to clearly signal when they only deal with ASCII,
simplify the parsing of identifier, and use start/continue instead of
head/body for consistency with Unicode terminology.
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
The file was modifiedclang/lib/Lex/ModuleMap.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/lib/Edit/EditedSource.cpp
The file was modifiedclang-tools-extra/clangd/SourceCode.cpp
The file was modifiedclang/unittests/Basic/CharInfoTest.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/IncludeFixer.cpp
The file was modifiedclang/lib/Lex/Lexer.cpp
The file was modifiedclang/include/clang/Lex/Lexer.h
The file was modifiedclang/lib/Frontend/Rewrite/FrontendActions.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang/lib/Sema/SemaAvailability.cpp
The file was modifiedclang/include/clang/Basic/CharInfo.h
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/ARCMigrate/ObjCMT.cpp
The file was modifiedclang/lib/Lex/DependencyDirectivesSourceMinimizer.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
The file was modifiedclang/lib/Frontend/LayoutOverrideSource.cpp
The file was modifiedclang/lib/Basic/Module.cpp
The file was modifiedclang/lib/Tooling/Transformer/Parsing.cpp
The file was modifiedclang/lib/ARCMigrate/TransUnbridgedCasts.cpp
The file was modifiedclang/lib/AST/MicrosoftMangle.cpp
Commit f22c63b41bda01163a88b0bb9887a9324810732f by pavel
[lldb/test] Start pexpect tests with a custom HOME

This addresses the flakyness of (at least) TestMultilineNavigation,
which was failing when the editline history of a concurrently executing
test made leaked in. Using a test-specific home directory ensures the
tests are independent.
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbpexpect.py
Commit 2b4745fe057f9d84e7c73cf5b990c7bdcde8847f by Matthew.Arsenault
AMDGPU: Avoid relying on an undef value in test

This was really becoming a direct call during the DAG, so it wasn't as
true to the test purpose.
The file was modifiedllvm/test/CodeGen/AMDGPU/indirect-call-known-callees.ll
Commit a1ae56d6ad9ae823241b384178910576590c223b by anna
Remove incorrect comment in getSingleUndroppableUse. NFC

We traverse the entire use list to find the undroppable use.
The file was modifiedllvm/include/llvm/IR/Value.h
Commit 5041a485b948e55e54338779f2248c45402b0ae7 by amy.kwan1
[PowerPC] Exploit Prefixed Load/Stores using the refactored Load/Store Implementation

This patch exploits the prefixed load and store instructions utilizing the
refactored load/store implementation introduced in D93370.

Prefixed load and store instructions are emitted whenever we are loading or
storing a value with an offset that fits into a 34-bit signed immediate.
Patterns for the prefixed load and stores are added in this patch, as well as
the implementation that detects when we are loading and storing a value with an
offset that fits in 34-bits.

Differential Revision: https://reviews.llvm.org/D96075
The file was modifiedllvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll
The file was modifiedllvm/test/CodeGen/PowerPC/mma-intrinsics.ll
The file was modifiedllvm/test/CodeGen/PowerPC/scalar-i8-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/scalar-i64-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/atomics-i8-ldst.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/test/CodeGen/PowerPC/vector-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/scalar-i32-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_insert_elt.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was modifiedllvm/test/CodeGen/PowerPC/f128_ldst.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-fi-elim.ll
The file was modifiedllvm/test/CodeGen/PowerPC/mma-acc-memops.ll
The file was modifiedllvm/test/CodeGen/PowerPC/int128_ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/atomics-i64-ldst.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/atomics-i16-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/pcrel_ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/paired-vector-intrinsics.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/atomics-i32-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/scalar-i16-ldst.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/test/CodeGen/PowerPC/scalar-float-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/scalar-double-ldst.ll
Commit ef8c9135efcb3847fc0e5bbdb55eae18751090df by sbc
[WebAssembly] Allow import and export of TLS symbols between DSOs

We previously had a limitation that TLS variables could not
be exported (and therefore could also not be imported).  This
change removed that limitation.

Differential Revision: https://reviews.llvm.org/D108877
The file was modifiedllvm/lib/Object/WasmObjectFile.cpp
The file was modifiedllvm/include/llvm/MC/MCExpr.h
The file was modifiedllvm/test/CodeGen/WebAssembly/tls-local-exec.ll
The file was modifiedllvm/include/llvm/BinaryFormat/Wasm.h
The file was modifiedlld/test/wasm/shared64.s
The file was modifiedlld/test/wasm/shared-needed.s
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
The file was modifiedlld/test/wasm/shared.s
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
The file was modifiedlld/wasm/SyntheticSections.h
The file was modifiedllvm/test/MC/WebAssembly/tls.s
The file was modifiedlld/test/wasm/pie.ll
The file was modifiedlld/test/wasm/tls-non-shared-memory.s
The file was modifiedlld/wasm/SyntheticSections.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
The file was modifiedlld/wasm/Writer.cpp
The file was modifiedllvm/tools/obj2yaml/wasm2yaml.cpp
The file was modifiedlld/wasm/Symbols.h
The file was removedlld/test/wasm/tls-import.s
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was modifiedlld/wasm/Symbols.cpp
The file was modifiedlld/wasm/Relocations.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
The file was modifiedlld/test/wasm/tls-export.s
The file was modifiedllvm/include/llvm/ObjectYAML/WasmYAML.h
The file was modifiedllvm/test/CodeGen/WebAssembly/tls-general-dynamic.ll
The file was modifiedllvm/lib/MC/MCExpr.cpp
The file was modifiedllvm/lib/MC/MCWasmStreamer.cpp
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/lib/ObjectYAML/WasmYAML.cpp
Commit 8401713b3ef1456a603874d96a99b2d5953df49c by davg
[clangd] Ignore ObjC `id` and `instancetype` in FindTarget

Even though they're implemented via typedefs, we typically
want to treat them like keywords.

We could add hover information / xrefs, but it's very unlikely
to provide any value.

Differential Revision: https://reviews.llvm.org/D108556
The file was modifiedclang-tools-extra/clangd/FindTarget.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FindTargetTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
Commit fb4d590a622f4031900516360c07ee6ace01c5e6 by kristof.umann
Fix a unittest file after D108695 when Z3 is enabled
The file was modifiedclang/unittests/StaticAnalyzer/FalsePositiveRefutationBRVisitorTest.cpp
The file was modifiedclang/unittests/StaticAnalyzer/CheckerRegistration.h
Commit 6ee55f9ab57435ae72a070a9eff76f281082208f by sbc
Fix test failure created by ef8c9135efcb

Followup to https://reviews.llvm.org/D108877 to fix test
failure.
The file was modifiedlld/test/wasm/shared.s
The file was modifiedllvm/lib/ObjectYAML/WasmYAML.cpp
The file was modifiedlld/test/wasm/shared64.s
The file was modifiedlld/test/wasm/shared-needed.s
Commit 2fd180bbb9a7bb8604a5aca31f1ca9dc5358a433 by craig.topper
[IR] Reduce max supported integer from 2^24-1 to 2^23.

SelectionDAG will promote illegal types up to a power of 2 before
splitting down to a legal type. This will create an IntegerType
with a bit width that must be <= MAX_INT_BITS. This places an
effective upper limit on any type of 2^23 so that we don't try
create a 2^24 type.

I considered putting a fatal error somewhere in the path from
TargetLowering::getTypeConversion down to IntegerType::get, but
limiting the type in IR seemed better.

This breaks backwards compatibility with IR that is using a really
large type. I suspect such IR is going to be very rare due to the
the compile time costs such a type likely incurs.

Prevents the ICE in PR51829.

Reviewed By: efriedma, aaron.ballman

Differential Revision: https://reviews.llvm.org/D109721
The file was modifiedclang/test/CodeGenCXX/ext-int.cpp
The file was modifiedclang/test/SemaCXX/ext-int.cpp
The file was modifiedllvm/test/Assembler/invalid-inttype.ll
The file was modifiedllvm/include/llvm/IR/DerivedTypes.h
The file was modifiedllvm/docs/ReleaseNotes.rst
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/test/CodeGen/ext-int.c
The file was modifiedllvm/test/Assembler/max-inttype.ll
The file was modifiedllvm/docs/LangRef.rst
Commit d0d9e6f0849b2e76e980e2edf365302f47f4e35f by Saleem Abdulrasool
clang-tidy: introduce readability-containter-data-pointer check

This introduces a new check, readability-containter-data-pointer.  This
check is meant to catch the cases where the user may be trying to
materialize the data pointer by taking the address of the 0-th member of
a container.  With C++11 or newer, the `data` member should be used for
this.  This provides the following benefits:

- `.data()` is easier to read than `&[0]`
- it avoids an unnecessary re-materialization of the pointer
  * this doesn't matter in the case of optimized code, but in the case
    of unoptimized code, this will be visible
- it avoids a potential invalid memory de-reference caused by the
  indexing when the container is empty (in debug mode, clang will
  normally optimize away the re-materialization in optimized builds).

The small potential behavioural change raises the question of where the
check should belong.  A reasoning of defense in depth applies here, and
this does an unchecked conversion, with the assumption that users can
use the static analyzer to catch cases where we can statically identify
an invalid memory de-reference.  For the cases where the static analysis
is unable to prove the size of the container, UBSan can be used to track
the invalid access.

Special thanks to Aaron Ballmann for the discussion on whether this
check would be useful and where to place it.

This also partially resolves PR26817!

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D108893
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp
The file was addedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
The file was addedclang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst
Commit 64c8e7489b01d1fb92eded6feb4913847b210cbd by blangmuir
[JITLink] Allow moving a Symbol to a Block in a different Section

When moving a Symbol between Blocks that are in different Sections,
update the symbol tables for each Section. Otherwise
symbol.getBlock().getSection() will not match the contents of
Section::symbols(), which asserts during linking.

Differential Revision: https://reviews.llvm.org/D109724
The file was modifiedllvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
Commit 609187365137be708509dd8d92acc5b9aef76695 by gysit
[mli][linalg] Reuse getValueOrCreateConstantIndexOp method (NFC).

Use getValueOrCreateConstantIndexOp introduced by https://reviews.llvm.org/D109601 in multiple places in LinalgOps.cpp.

Reviewed By: nicolasvasilache, springerm

Differential Revision: https://reviews.llvm.org/D109756
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit d9e46beace3120fbc4810dda5c3ed88f93e862a4 by kazu
[IPO] Use make_early_inc_range (NFC)
The file was modifiedllvm/lib/Transforms/IPO/ConstantMerge.cpp
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
The file was modifiedllvm/lib/Transforms/IPO/FunctionSpecialization.cpp
The file was modifiedllvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
The file was modifiedllvm/lib/Transforms/IPO/GlobalOpt.cpp
The file was modifiedllvm/lib/Transforms/IPO/StripDeadPrototypes.cpp
Commit 268521218434bcd3b859e88a0c50369de9d96cf7 by qiaopeixin
[flang][OpenMP] Add semantic check for threadprivate directive

This patch implements the following check for THREADPRIVATE construct:
```
A variable that is part of another variable (as an array, structure
element or type parameter inquiry) cannot appear in a threadprivate
directive.
```

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D109685
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedflang/test/Semantics/omp-allocate03.f90
The file was modifiedflang/test/Semantics/omp-parallel-private01.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared01.f90
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was modifiedflang/test/Semantics/omp-parallel-private04.f90
The file was modifiedflang/test/Semantics/omp-parallel-private02.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared02.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared03.f90
The file was modifiedflang/test/Semantics/omp-parallel-private03.f90
The file was addedflang/test/Semantics/omp-threadprivate01.f90
The file was modifiedflang/test/Semantics/omp-parallel-shared04.f90
The file was modifiedflang/test/Semantics/omp-allocate07.f90
Commit 53727b48fde1c275476e7531a0731bb1d9842dc5 by thakis
[gn build] Use lib_dirs instead of qualified path in libs for diaguids.lib

Follow-up to D109708: Using lib_dirs means this will work with ancient gn binaries.

Change the toolchain definitions to make lib_dirs have the right effect, and
pull out lib_switch of each of the tools while here.

This means we now do pass /LIBPATH: to link.exe, but since we invoke it directly
and not through clang-cl, this doesn't actually require D109624. And since this
is built in to GN, we don't need a config to push the flag to dependents.

This is arguably a bit more idiomatic, and it doesn't require folks to update
their GN binaries. No effective behavior change.

Differential Revision: https://reviews.llvm.org/D109763
The file was modifiedllvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/BUILD.gn
The file was modifiedllvm/utils/gn/build/toolchain/BUILD.gn
Commit 76dc8ac36d07cebe8cfe8fe757323562bb36df94 by thakis
Revert "clang-tidy: introduce readability-containter-data-pointer check"

This reverts commit d0d9e6f0849b2e76e980e2edf365302f47f4e35f.
Breaks tests, see e.g. https://lab.llvm.org/buildbot/#/builders/188/builds/3326
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was removedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
The file was removedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was removedclang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was removedclang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp
Commit d79bb30dbb08910816859ccaae1ca5d04fbd9501 by arames
[NFC] Add trailing comma on TYPED_TEST_SUITE

This avoids a -pedantic warning:
warning: ISO C++11 requires at least one argument for the "..." in a variadic macro

See also https://github.com/google/googletest/issues/2271
The file was modifiedllvm/unittests/Support/HashBuilderTest.cpp
Commit 1de516d7ae7e568a0ae28b79d2a91521bff79689 by bjorn.a.pettersson
[StackColoring] Pre-commit of test case showing a debug invariance bug

Having DBG_VALUE instructions referencing a stack slot while being outside
of the LIFETIME_START/LIFETIME_END markers for that stack slot is perhaps
not always ideal (from a debugging perspective), but it might happen during
codegen that we end up with such situations (e.g. positioning of the
DBG_VALUE instruction for a SDDbgOperand::FRAMEIX at ISel is a bit sloppy
in that context).

This patch adds a test case showing that StackColoring currently isn't
debug invariant, and that the position of DBG_VALUE instructions referencing
the stack slots might impact the decision making regarding stack slot reuse.

Differential Revision: https://reviews.llvm.org/D109757
The file was addedllvm/test/CodeGen/X86/StackColoring-dbg-invariance.mir
Commit cd2bff1ef10563bc710ca7a97aeb20297fc99597 by bjorn.a.pettersson
[StackColoring] Fix a debug invariance problem

Ignore dbg instructions when collecting stack slot markers. This is
to make sure the coloring is invariant regarding presence of dbg
instructions (even in cases when the dbg instructions might be
badly placed in the input).

Differential Revision: https://reviews.llvm.org/D109758
The file was modifiedllvm/test/CodeGen/X86/StackColoring-dbg-invariance.mir
The file was modifiedllvm/lib/CodeGen/StackColoring.cpp
Commit 1f44fa3ac17ceacc753019092bc50436c77ddcfa by stephen.tozer
Revert "[Dexter] Improve performance by evaluating expressions only when needed"

Reverted due to build failure on greendragon lldb build.

This reverts commit 9bbc0c1ffb47f9cf4c9d8e9a0e8100002fe5aafb.
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectProgramState.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/command/CommandBase.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectWatchBase.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
Commit 49992c04148e5327bef9bd2dff53a0d46004b4b4 by Saleem Abdulrasool
Revert "Revert "clang-tidy: introduce readability-containter-data-pointer check""

This reverts commit 76dc8ac36d07cebe8cfe8fe757323562bb36df94.

Restore the change.  The test had an incorrect negative from testing.
The test is expected to trigger a failure as mentioned in the review
comments.  This corrects the test and should resolve the failure.
The file was addedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
The file was addedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp
The file was addedclang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst
Commit 5a7e1d52a9680476db636c448027b7ff46035bbb by llvmgnsyncbot
[gn build] Port 49992c04148e
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Commit 66c6bbe7ff56441706d6cbb349fde9a02e248c9a by waltl
Put code that avoids heapifying local blocks behind a flag

This change puts the functionality in commit
c5792aa90fa45a1842f190c146f19e2c71ea6fbd behind a flag that is off by
default.  The original commit is not in Apple's Clang fork (and blocks
are an Apple extension in the first place), and there is one known
issue that needs to be addressed before it can be enabled safely.

Differential Revision: https://reviews.llvm.org/D108243
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/test/PCH/arc-blocks.mm
The file was modifiedclang/test/CodeGenObjC/arc-block-copy-escape.m
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
The file was modifiedclang/test/CodeGenObjC/arc-blocks.m
The file was modifiedclang/test/CodeGenObjCXX/arc-blocks.mm
Commit fa7c01e5784b7564a94029ca60dd3f9a8ca825b6 by David CARLIER
[Sanitizers] intercept fparseln on freebsd

Reviewed By: vitalybuka, emaste

Differential Revision: https://reviews.llvm.org/D109753
The file was addedcompiler-rt/test/sanitizer_common/TestCases/FreeBSD/fparseln.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
Commit 7359450e6a053f11cc628afcfc562aeb1da229cc by flo
[VPlan] Queue (block, operand) pairs together (NFC).

Instead of discovering the sink-to block for each operand in the main
loop, the sink-to block can instead be directly queued with the
operands.

This simplifies processing in the main loop and is a NFC change split
off from D104254 as suggested there.
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Commit 8cbbd7e0b2aa21ce7e416cfb63d9965518948c35 by hoy
[llvm-profgen] Ignore broken LBR samples

Perf script can sometimes give disordered LBR samples like below.

```
          b022500
          32de0044
          3386e1d1
      7f118e05720c
      7f118df2d81f
0x2a0b9622/0x2a0b9610/P/-/-/1  0x2a0b79ff/0x2a0b9618/P/-/-/2  0x2a0b7a4a/0x2a0b79e8/P/-/-/1  0x2a0b7a33/0x2a0b7a46/P/-/-/1  0x2a0b7a42/0x2a0b7a23/P/-/-/1  0x2a0b7a21/0x2a0b7a37/P/-/-/2  0x2a0b79e6/0x2a0b7a07/P/-/-/1  0x2a0b79d4/0x2a0b79dc/P/-/-/2  0x2a0b7a03/0x2a0b79aa/P/-/-/1  0x2a0b79a8/0x2a0b7a00/P/-/-/234  0x2a0b9613/0x2a0b7930/P/-/-/1  0x2a0b9622/0x2a0b9610/P/-/-/1  0x2a0b79ff/0x2a0b9618/P/-/-/2  0x2a0b7a4a/0x2aWarning:
Processed 10263226 events and lost 1 chunks!

```
Note that the last LBR record `0x2a0b7a4a/0x2aWarning:` . Currently llvm-profgen does not detect that and as a result an uninitialized branch target value will be used. The uninitialized value can cause creepy instruction ranges created which which in turn will result in a completely wrong profile. An example is like

```

.... @ _ZN5folly13loadUnalignedIsEET_PKv]:18446744073709551615:18446744073709551615
1: 18446744073709551615
!CFGChecksum: 4294967295
!Attributes: 0
```

Reviewed By: wenlei, wlei

Differential Revision: https://reviews.llvm.org/D109637
The file was modifiedllvm/tools/llvm-profgen/PerfReader.h
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
Commit ed2f0ad307193165a64c9847c24d8c9f4219f42b by thakis
[lld/mac] Search .tbd before binary for framework files too

This matters for example for the iPhoneSimulator14.0.sdk, which has
a System/Library/Frameworks/UIKit.framework/UIKit that has
LC_BUILD_VERSION with minos of 14.0, so linking against that file
will produce warnings like:

   .../iPhoneSimulator14.0.sdk/System/Library/Frameworks/UIKit.framework/UIKit
   has version 14.0.0, which is newer than target minimum of 12.0.0

when targeting x86_64-apple-ios12.0-simulator. That doens't happen when
linking against UIKit.tbd instead, obviously.

Linking with RC_TRACE_DYLIB_SEARCHING=1 shows that ld64 also searches
the tbd file first, and we already get that right for non-framework
dylibs.

Fixes crbug.com/1249456.

Differential Revision: https://reviews.llvm.org/D109768
The file was modifiedlld/test/MachO/link-search-order.s
The file was modifiedlld/MachO/DriverUtils.cpp
Commit 3ce1b9631a50d4853ab6d5750eaf50951b49e89d by Joseph.Nash
[AMDGPU] Switch PostRA sched to MachineSched

Use GCNHazardRecognizer in postra sched.
Updated tests for the new schedules.

Reviewed By: arsenm

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

Change-Id: Ia86ba2ae168f12fb34b4d8efdab491f84d936cde
The file was modifiedllvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/bitreverse.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/store-local.96.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/kernel-args.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/skip-if-dead.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ssubsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/udivrem.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/idot2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/trunc.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/select.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-global-i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/flat-scratch.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/captured-frame-index.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fast-unaligned-load-store.private.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fadd.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/select64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_read2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory_clause.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sra.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-local.128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu-mul24-knownbits.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fsub.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/store-local.128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/shift-i128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-constant-i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/add3.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/uaddsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fmul.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-sgprs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fptosi.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.atomic.inc.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sdiv64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds-alignment.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/call-waitcnt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lshr.v2i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vgpr-descriptor-waterfall-loop-idom-update.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/idiv-licm.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/dagcombine-fma-fmad.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/mul_uint24-amdgcn.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/store-weird-sizes.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/store-local.128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vector-extract-insert.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/idot4s.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fshl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/idot4u.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds-sub-offset.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cluster_stores.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/idot8s.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/cc-update.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/branch-relaxation-inst-size-gfx10.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/ashr.v2i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fma.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
The file was modifiedllvm/lib/Target/AMDGPU/GCNSubtarget.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_write2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/move-addr64-rsrc-dead-subreg-writes.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/mul.i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fneg-fabs.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sign_extend.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/bypass-div.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fptoui.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-local.96.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/idot8u.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/udiv64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/store-local.96.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sint_to_fp.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/min.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/max.i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/srem64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/uint_to_fp.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/urem64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/shl_add_ptr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.atomic.dec.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sdiv.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/agpr-remat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/usubsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fpext.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lshl64-to-32.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fp-min-max-atomics.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llc-pipeline.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ctpop16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fshr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.round.f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/copy-illegal-type.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/saddsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/srl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/half.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/anyext.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lds-atomic-fmin-fmax.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/frem.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fpow.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/shl.v2i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.mulo.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fp_to_sint.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-realign.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/roundeven.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/saddo.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fexp.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/shl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fast-unaligned-load-store.global.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/xor3.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vgpr-liverange.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
Commit 468c4409f61455a168f9d8c187c75435487adf8c by aheejin
Revert "[WebAssembly] Rethrow longjmp in EH handling if EmSjLj is enabled"

This reverts commit b7b4ebbcfa463a7fae61dca7cec30c5b747bdec8.

Reason: This breaks several code-size tests in Emscripten test suite
because this exports `emscripten_longjmp` for programs that didn't do it
before.
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
The file was removedllvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-sjlj-not-used.ll
Commit 26b803177456112b4c6c2d30b7c3dc4d439af7e2 by daltenty
[CMake][AIX] Disable visibility options in build

Visibility options currently have limited support on AIX and may cause warnings or errors
depending on the build compiler used.

Reviewed By: ZarkoCA

Differential Revision: https://reviews.llvm.org/D108467
The file was modifiedllvm/lib/Target/CMakeLists.txt
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit c4048d8f50aaf2c4c13b8d3e138abc34a22da754 by listmail
[SCEV] Attempt to define what flags are legal on a SCEV

This is an attempt to define what the current semantics are closest too.  Unfortunately, the current implementation does appear to be inconsistent with all semantic variants we've considered.  This semantics is the one which seems to be closest to the spirit of the code, and that matched several long time contributors mental models of how the code "should work".

https://bugs.llvm.org/show_bug.cgi?id=51817 tracks the list of currently known violations of these rules.  A series of follow up patches will be addressing each now that we've defined them to be bugs.

Differential Revision: https://reviews.llvm.org/D109553
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
Commit 66902a32c83809d26662f76e4107d5dd777610c3 by Vedant Kumar
[StopInfoMachException] Summarize arm64e BLRAx/LDRAx auth failures

Upstream lldb support for summarizing BLRAx and LDRAx auth failures.

rdar://41615322

Differential Revision: https://reviews.llvm.org/D102428
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/Makefile
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/Makefile
The file was modifiedlldb/source/Core/Address.cpp
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/braa.c
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/Makefile
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/TestPtrauthLDRAADiagnostic.py
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/Makefile
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/TestPtrauthBRKc47xX16Invalid.py
The file was modifiedlldb/include/lldb/Core/Disassembler.h
The file was modifiedlldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/Makefile
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/blraa.c
The file was modifiedlldb/source/Core/Disassembler.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/StopInfoMachException.h
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/TestPtrauthBRAADiagnostic.py
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/brkC47x.c
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/brkC47x.c
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/ldraa.c
The file was modifiedlldb/include/lldb/Core/Address.h
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/TestPtrauthBRKc47xDiagnostic.py
The file was addedlldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/TestPtrauthBLRAADiagnostic.py
The file was modifiedlldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
Commit 0dd755f0274245e320cd3eb0882ffe57542af252 by listmail
[SCEV] Stop applying contextual flags in applyLoopGuards

This fixes a violation of the wrap flag rules introduced in c4048d8f. As noted in the original review, the NUW is legal to infer from the structure of the replacee, but a) there's no test coverage, and b) this should be done generically for all multiplies.

Differential Revision: https://reviews.llvm.org/D109782
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 336291e777f3e74bea2ae16f7bf61b8f4a76c869 by listmail
autogen a test for ease of update in later patch
The file was modifiedllvm/test/Analysis/ScalarEvolution/nsw.ll
Commit 8dca953dd39c0cd8c80decbeb38753f58a4de580 by silvasean
[mlir] Apply py::module_local() to a few more classes.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D109776
The file was modifiedmlir/lib/Bindings/Python/IRModule.h
The file was modifiedmlir/lib/Bindings/Python/DialectSparseTensor.cpp
The file was modifiedmlir/lib/Bindings/Python/PybindUtils.h
Commit 162aed482403a4a7d54930d73a4d74e69e1e79db by listmail
[test] precommit test for D109786
The file was addedllvm/test/Analysis/ScalarEvolution/mul.ll
Commit baff4b41055fc2d75bcdcea7bb39edce38a40acf by listmail
[test] precommit anoter test for D109786
The file was modifiedllvm/test/Analysis/ScalarEvolution/mul.ll
Commit 4cabaf594aa272b02c0d227ae16a2aced687d796 by dblaikie
NFC: DebugInfo: refactor pretty printing into a utility class

Laying more foundation for full template name rebuilding - more complex
type printing benefits from an object to carry some state rather than
passing it around as parameters to every function.
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit 1a406cd5f2e2403b325f6d914b692459a2ab3b9b by joker.eph
Remove unused llvm/Support/Parallel.h from MLIR (NFC)

This header aren't needed anymore: MLIR is using a thread pool
injected in the context instead of a global one.
The file was modifiedmlir/lib/IR/Verifier.cpp
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/lib/Pass/Pass.cpp
The file was modifiedmlir/lib/Pass/PassCrashRecovery.cpp
Commit 81f8ad1769665a569a235b749e0e9e69ce7dc65e by erasmus
[flang] Make 'this_image()' an intrinsic function

Added 'this_image()' to the list of functions that are evaluated as intrinsic.
Added IsCoarray functions to determine if an expression is a coarray (corank > 1).

Added save attribute to coarray variables in test file, this_image.f90.

reviewers: klausler, PeteSteinfeld

Differential Revision: https://reviews.llvm.org/D108059
The file was modifiedflang/docs/Intrinsics.md
The file was modifiedflang/lib/Evaluate/tools.cpp
The file was modifiedflang/include/flang/Evaluate/tools.h
The file was addedflang/test/Semantics/this_image.f90
The file was modifiedflang/test/Semantics/call10.f90
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
Commit 99dfe90695a811f74fb7503703ffd52bd214dd2e by Matthew.Arsenault
Attributor: Fix typos
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit f12174204c639f9780f17cf7b8e910be703b6b8c by Matthew.Arsenault
AMDGPU: Rename attributor class for uniform-work-group-size

This isn't really an AMDGPU specific attribute and could be moved to
generic code. It's also important to include the word uniform in the
name.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
Commit fdd9761dd1a971c9f4d6776b511ea54d7765bfeb by Matthew.Arsenault
Attributor: Fix crash on undef in !callees
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
The file was modifiedllvm/test/Transforms/Attributor/callgraph.ll
Commit 88146230e1b21aa042da481e5fd702fab82408fc by Matthew.Arsenault
SeparateConstOffsetFromGEP: Fix stack overflow in unreachable code

ConstantOffsetExtractor::Find was infinitely recursing on the add
referencing itself.
The file was modifiedllvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
The file was addedllvm/test/Transforms/SeparateConstOffsetFromGEP/crash-in-unreachable-code.ll
Commit 9adc0114bfeb704ca62d8c369fa52d0530179274 by springerm
[mlir][linalg] PadTensorOp vectorization: Avoid redundant FillOps

Do not generate FillOps when these would be entirely overwritten.

Differential Revision: https://reviews.llvm.org/D109741
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Commit aaf62958f1ae3c17ed1f4551bac37c2e202ffd5e by i
[CMake] Delete obsoleted COMPILER_RT_TEST_TARGET_TRIPLE

The last user has been removed from llvm-zorg for Android.
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTUtils.cmake
Commit 4a36e96c3fc2a9128097bfc4f907ccebc5dc66af by Matthew.Arsenault
RegAllocGreedy: Account for reserved registers in num regs heuristic

This simple heuristic uses the estimated live range length combined
with the number of registers in the class to switch which heuristic to
use. This was taking the raw number of registers in the class, even
though not all of them may be available. AMDGPU heavily relies on
dynamically reserved numbers of registers based on user attributes to
satisfy occupancy constraints, so the raw number is highly misleading.

There are still a few problems here. In the original testcase that
made me notice this, the live range size is incorrect after the
scheduler rearranges instructions, since the instructions don't have
the original InstrDist offsets. Additionally, I think it would be more
appropriate to use the number of disjointly allocatable registers in
the class. For the AMDGPU register tuples, there are a large number of
registers in each tuple class, but only a small fraction can actually
be allocated at the same time since they all overlap with each
other. It seems we do not have a query that corresponds to the number
of independently allocatable registers. Relatedly, I'm still debugging
some allocation failures where overlapping tuples seem to not be
handled correctly.

The test changes are mostly noise. There are a handful of x86 tests
that look like regressions with an additional spill, and a handful
that now avoid a spill. The worst looking regression is likely
test/Thumb2/mve-vld4.ll which introduces a few additional
spills. test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll
shows a massive improvement by completely eliminating a large number
of spills inside a loop.
The file was modifiedllvm/test/CodeGen/X86/xmulo.ll
The file was modifiedllvm/test/CodeGen/X86/illegal-bitfield-loadstore.ll
The file was modifiedllvm/test/CodeGen/X86/legalize-shl-vec.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-512.ll
The file was modifiedllvm/test/CodeGen/X86/avx512bwvl-intrinsics-upgrade.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/frem.ll
The file was modifiedllvm/test/CodeGen/X86/pr34080-2.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-cmp-128.ll
The file was modifiedllvm/test/CodeGen/X86/ushl_sat.ll
The file was modifiedllvm/test/CodeGen/X86/usub_sat.ll
The file was modifiedllvm/test/CodeGen/X86/gather-addresses.ll
The file was modifiedllvm/test/CodeGen/RISCV/rv32zbp.ll
The file was modifiedllvm/test/CodeGen/X86/smax.ll
The file was modifiedllvm/test/CodeGen/X86/avx512bw-intrinsics-upgrade.ll
The file was modifiedllvm/test/CodeGen/ARM/srem-seteq-illegal-types.ll
The file was modifiedllvm/test/CodeGen/X86/vector-lzcnt-128.ll
The file was modifiedllvm/test/CodeGen/X86/known-signbits-vector.ll
The file was modifiedllvm/test/CodeGen/X86/nosse-vector.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-calling-conv.ll
The file was modifiedllvm/test/CodeGen/X86/ushl_sat_vec.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
The file was modifiedllvm/test/CodeGen/X86/vec_umulo.ll
The file was modifiedllvm/test/CodeGen/X86/smul_fix_sat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/srl.ll
The file was modifiedllvm/test/CodeGen/X86/vector-tzcnt-128.ll
The file was modifiedllvm/test/CodeGen/X86/umin.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/shl.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-reduce-smax.ll
The file was modifiedllvm/test/CodeGen/X86/subvector-broadcast.ll
The file was modifiedllvm/test/CodeGen/X86/umulo-64-legalisation-lowering.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
The file was modifiedllvm/test/CodeGen/X86/smul_fix.ll
The file was modifiedllvm/test/CodeGen/X86/widen_cast-4.ll
The file was modifiedllvm/test/CodeGen/X86/sshl_sat.ll
The file was modifiedllvm/test/CodeGen/X86/scheduler-backtracking.ll
The file was modifiedllvm/test/CodeGen/X86/vector-fshr-128.ll
The file was modifiedllvm/test/CodeGen/X86/select.ll
The file was modifiedllvm/test/CodeGen/X86/nontemporal.ll
The file was modifiedllvm/test/CodeGen/Hexagon/reg-scavengebug-2.ll
The file was modifiedllvm/test/CodeGen/X86/fptosi-sat-scalar.ll
The file was modifiedllvm/test/CodeGen/X86/vector-fshl-rot-128.ll
The file was modifiedllvm/test/CodeGen/ARM/umulo-128-legalisation-lowering.ll
The file was modifiedllvm/test/CodeGen/X86/mul-i256.ll
The file was modifiedllvm/test/CodeGen/X86/uadd_sat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
The file was modifiedllvm/test/CodeGen/X86/i128-mul.ll
The file was modifiedllvm/test/CodeGen/X86/mul-i512.ll
The file was modifiedllvm/test/CodeGen/X86/i256-add.ll
The file was modifiedllvm/test/CodeGen/X86/setcc-wide-types.ll
The file was modifiedllvm/test/CodeGen/X86/funnel-shift-rot.ll
The file was addedllvm/test/CodeGen/AMDGPU/greedy-global-heuristic.mir
The file was modifiedllvm/test/CodeGen/X86/combine-sbb.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-global-i16.ll
The file was modifiedllvm/test/CodeGen/X86/i128-sdiv.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.round.f64.ll
The file was modifiedllvm/test/CodeGen/X86/bool-vector.ll
The file was modifiedllvm/test/CodeGen/X86/bitreverse.ll
The file was modifiedllvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
The file was modifiedllvm/test/CodeGen/X86/vector-rotate-128.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/vector.ll
The file was modifiedllvm/test/CodeGen/X86/bswap.ll
The file was modifiedllvm/test/CodeGen/X86/sse-intrinsics-fast-isel.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/copy-illegal-type.ll
The file was modifiedllvm/test/CodeGen/X86/pr32610.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap.ll
The file was modifiedllvm/test/CodeGen/X86/smin.ll
The file was modifiedllvm/test/CodeGen/X86/shrink_vmul.ll
The file was modifiedllvm/test/CodeGen/X86/sadd_sat.ll
The file was modifiedllvm/test/CodeGen/X86/masked_gather_scatter.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-cmp-sub128.ll
The file was modifiedllvm/test/CodeGen/X86/build-vector-128.ll
The file was modifiedllvm/test/CodeGen/X86/clear-highbits.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
The file was modifiedllvm/test/CodeGen/X86/popcnt.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shift-shl-256.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
The file was modifiedllvm/test/CodeGen/X86/sshl_sat_vec.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sdiv64.ll
The file was modifiedllvm/test/CodeGen/X86/merge-consecutive-stores-nt.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll
The file was modifiedllvm/test/CodeGen/PowerPC/urem-vector-lkk.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp-more-load-pairs-x32.ll
The file was modifiedllvm/test/CodeGen/X86/pr31088.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shift-lshr-256.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-select.ll
The file was modifiedllvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir
The file was modifiedllvm/test/CodeGen/X86/vector-gep.ll
The file was modifiedllvm/test/CodeGen/PowerPC/srem-vector-lkk.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-reduce-umin.ll
The file was modifiedllvm/test/CodeGen/X86/overflow.ll
The file was modifiedllvm/test/CodeGen/X86/umul-with-overflow.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-vector-variablemask.ll
The file was modifiedllvm/test/CodeGen/X86/pr32329.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-simple-arith.ll
The file was modifiedllvm/test/CodeGen/X86/vector-fshl-128.ll
The file was modifiedllvm/test/CodeGen/X86/umul_fix_sat.ll
The file was modifiedllvm/test/CodeGen/X86/mul-i1024.ll
The file was modifiedllvm/test/CodeGen/X86/pr32284.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-ssat.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-reduce-umax.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-6.ll
The file was modifiedllvm/test/CodeGen/X86/sdiv_fix.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arith.ll
The file was modifiedllvm/test/CodeGen/X86/64-bit-shift-by-32-minus-y.ll
The file was modifiedllvm/test/CodeGen/X86/umax.ll
The file was modifiedllvm/lib/CodeGen/RegAllocGreedy.cpp
The file was modifiedllvm/test/CodeGen/X86/fshr.ll
The file was modifiedllvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-vreg-unlimited-tied-opnds.ll
The file was modifiedllvm/test/CodeGen/ARM/fptosi-sat-scalar.ll
The file was modifiedllvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
The file was modifiedllvm/test/CodeGen/RISCV/stack-store-check.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/half.ll
The file was modifiedllvm/test/CodeGen/X86/2008-04-16-ReMatBug.ll
The file was modifiedllvm/test/CodeGen/X86/i64-to-float.ll
The file was modifiedllvm/test/CodeGen/X86/pr46527.ll
The file was modifiedllvm/test/CodeGen/X86/udiv_fix_sat.ll
The file was modifiedllvm/test/CodeGen/X86/funnel-shift.ll
The file was modifiedllvm/test/CodeGen/X86/2007-10-12-SpillerUnfold1.ll
The file was modifiedllvm/test/CodeGen/X86/mul-constant-result.ll
The file was modifiedllvm/test/CodeGen/X86/smulo-128-legalisation-lowering.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift4.ll
The file was modifiedllvm/test/CodeGen/X86/load-combine.ll
The file was modifiedllvm/test/CodeGen/X86/umul_fix.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-v2i32.ll
The file was modifiedllvm/test/CodeGen/X86/abs.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-reduce-smin.ll
The file was modifiedllvm/test/CodeGen/X86/mul128.ll
The file was modifiedllvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
The file was modifiedllvm/test/CodeGen/X86/stack-align-memcpy.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-cast.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-constant-i16.ll
The file was modifiedllvm/test/CodeGen/X86/vector-fshr-rot-128.ll
The file was modifiedllvm/test/CodeGen/X86/vector-sext.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
The file was modifiedllvm/test/CodeGen/X86/mul-constant-i64.ll
The file was modifiedllvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
The file was modifiedllvm/test/CodeGen/RISCV/rv64zbp.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
The file was modifiedllvm/test/CodeGen/Thumb2/srem-seteq-illegal-types.ll
The file was modifiedllvm/test/CodeGen/X86/sdiv_fix_sat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
The file was modifiedllvm/test/CodeGen/X86/neg-abs.ll
Commit 962acf0a27fbdb945b7b790cc57ba4ae4729879f by tlively
[lld][WebAssembly] Use llvm-objdump to test __wasm_init_memory

Rather than depending on the hex dump from obj2yaml. Now the test shows the
expected function body in a human readable format.

Differential Revision: https://reviews.llvm.org/D109730
The file was modifiedlld/test/wasm/data-segments.ll
Commit 299b5d420df15fafc9936bc24995f6cd6ad325be by hoy
[CSSPGO] Enable pseudo probe instrumentation in O0 mode.

Pseudo probe instrumentation was missing from O0 build. It is needed in cases where some source files are built in O0 while the others are built in optimize mode.

Reviewed By: wenlei, wlei, wmi

Differential Revision: https://reviews.llvm.org/D109531
The file was modifiedclang/test/CodeGen/pseudo-probe-emit.c
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
Commit 54d755a034362814bd7a0b90f172cbba39729cf4 by Matthew.Arsenault
DAG: Fix incorrect folding of fmul -1 to fneg

The fmul is a canonicalizing operation, and fneg is not so this would
break denormals that need flushing and also would not quiet signaling
nans. Fold to fsub instead, which is also canonicalizing.
The file was modifiedllvm/test/CodeGen/PowerPC/combine-fneg.ll
The file was modifiedllvm/test/CodeGen/Hexagon/opt-fneg.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/ARM/fnegs.ll
The file was modifiedllvm/test/CodeGen/AArch64/arm64-fmadd.ll
The file was modifiedllvm/test/CodeGen/AArch64/fp16_intrinsic_scalar_3op.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fneg-combines.ll
Commit d4e03bccd4567b455ce0bf03a797b5189b4dcba8 by listmail
regen an autogened test which is stale
The file was modifiedllvm/test/Transforms/LoopIdiom/basic.ll
Commit 626586fc253c6f032aedb325dba6b1ff3f11875e by thakis
Re-Revert "clang-tidy: introduce readability-containter-data-pointer check"

This reverts commit 49992c04148e5327bef9bd2dff53a0d46004b4b4.
The test is still failing on Windows, see comments on https://reviews.llvm.org/D108893
The file was removedclang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was removedclang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp
The file was removedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
The file was removedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit 10b069d1a09f3ef145ce468e790243015a7c84ec by llvmgnsyncbot
[gn build] Port 626586fc253c
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Commit 500d4c45ba7f31907a64dead8ddb292649e6ce75 by joker.eph
[MLIR] Use memref.copy ops in BufferResultsToOutParams pass.

Both copy/alloc ops are using memref dialect after this change.

Reviewed By: silvas, mehdi_amini

Differential Revision: https://reviews.llvm.org/D109480
The file was modifiedmlir/test/Transforms/buffer-results-to-out-params.mlir
The file was modifiedmlir/lib/Transforms/PassDetail.h
The file was modifiedmlir/include/mlir/Transforms/Passes.td
The file was modifiedmlir/lib/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Transforms/BufferResultsToOutParams.cpp
Commit a32300a68f6c94b7b275e3560ed31e9174cec5ad by joker.eph
Make the --mlir-disable-threading command line option overrides the C++ API usage

This seems in-line with the intent and how we build tools around it.
Update the description for the flag accordingly.
Also use an injected thread pool in MLIROptMain, now we will create
threads up-front and reuse them across split buffers.

Differential Revision: https://reviews.llvm.org/D109802
The file was modifiedmlir/include/mlir/IR/MLIRContext.h
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
Commit 0dc461441eed3b49b36bec889ddf1449b502d17a by joker.eph
Revert "[flang] Make 'this_image()' an intrinsic function"

This reverts commit 81f8ad1769665a569a235b749e0e9e69ce7dc65e.
This seems to break the shared libs build
(linaro-flang-aarch64-sharedlibs bot) with:

  undefined reference to `Fortran::semantics::IsCoarray(Fortran::semantics::Symbol const&)

(from tools/flang/lib/Evaluate/CMakeFiles/obj.FortranEvaluate.dir/tools.cpp.o)

When linking lib/libFortranEvaluate.so.14git
The file was modifiedflang/lib/Evaluate/tools.cpp
The file was modifiedflang/docs/Intrinsics.md
The file was modifiedflang/include/flang/Evaluate/tools.h
The file was modifiedflang/test/Semantics/call10.f90
The file was removedflang/test/Semantics/this_image.f90
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
Commit 0057c7185d1cdbcfdaa9385f4b67e677066af8b8 by hoy
[CSSPGO][llvm-profgen] Truncate stack samples with invalid return address.

Invalid frame addresses exist in call stack samples due to bad unwinding. This could happen to frame-pointer-based unwinding and the callee functions that do not have the frame pointer chain set up. It isn't common when the program is built with the frame pointer omission disabled, but can still happen with third-party static libs built with frame pointer omitted.

Reviewed By: wenlei

Differential Revision: https://reviews.llvm.org/D109638
The file was modifiedllvm/tools/llvm-profgen/PerfReader.h
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.h
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
The file was addedllvm/test/tools/llvm-profgen/cs-invalid-ret-addr.test
The file was addedllvm/test/tools/llvm-profgen/Inputs/cs-invalid-ret-addr.perfscript
Commit 945df8bc4cf3c72a9721431ec490e2f196be170e by esme.yi
[obj2yaml][XCOFF] Dump sections

Summary: This patch implements parsing sections for obj2yaml on AIX.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D98003
The file was modifiedllvm/test/tools/obj2yaml/XCOFF/aix.yaml
The file was modifiedllvm/tools/obj2yaml/xcoff2yaml.cpp
The file was addedllvm/test/tools/obj2yaml/XCOFF/invalid-symbol.yaml
The file was addedllvm/test/tools/obj2yaml/XCOFF/invalid-section.yaml
Commit 2c42a73d6c39af3833e697c0b306cb8cf8de5143 by sguelton
Add extra check for llvm::Any::TypeId visibility

This check should ensure we don't reproduce the problem fixed by
02df443d2801601a4e42e360e436d97314e9da30

More accurately, it checks every llvm::Any::TypeId symbol in libLLVM-x.so and
make sure they have weak linkage and are not local to the library, which would
lead to duplicate definition if another weak version of the symbol is defined in
another linked library.

Differential Revision: https://reviews.llvm.org/D109252
The file was modifiedllvm/test/lit.cfg.py
The file was modifiedllvm/test/lit.site.cfg.py.in
The file was addedllvm/test/tools/llvm-shlib/typeids.test
Commit 1ac209ed76cb233b672302b6171a4c76de3e56b2 by markus.lavin
[NPM] Added -print-pipeline-passes print params for a few passes.

Added '-print-pipeline-passes' printing of parameters for those passes
declared with *_WITH_PARAMS macro in PassRegistry.def.

Note that it only prints the parameters declared inside *_WITH_PARAMS as
in a few cases there appear to be additional parameters not parsable.

The following passes are now covered (i.e. all of those with *_WITH_PARAMS in
PassRegistry.def).

LoopExtractorPass - loop-extract
HWAddressSanitizerPass - hwsan
EarlyCSEPass - early-cse
EntryExitInstrumenterPass - ee-instrument
LowerMatrixIntrinsicsPass - lower-matrix-intrinsics
LoopUnrollPass - loop-unroll
AddressSanitizerPass - asan
MemorySanitizerPass - msan
SimplifyCFGPass - simplifycfg
LoopVectorizePass - loop-vectorize
MergedLoadStoreMotionPass - mldst-motion
GVN - gvn
StackLifetimePrinterPass - print<stack-lifetime>
SimpleLoopUnswitchPass - simple-loop-unswitch

Differential Revision: https://reviews.llvm.org/D109310
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/HWAddressSanitizer.h
The file was modifiedllvm/lib/Analysis/StackLifetime.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/LoopExtractor.h
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
The file was modifiedllvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
The file was modifiedllvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/GVN.h
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
The file was modifiedllvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/EarlyCSE.h
The file was modifiedllvm/include/llvm/Transforms/Vectorize/LoopVectorize.h
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
The file was modifiedllvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
The file was modifiedllvm/lib/Transforms/IPO/LoopExtractor.cpp
The file was modifiedllvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
The file was modifiedllvm/test/Other/new-pm-print-pipeline.ll
The file was modifiedllvm/include/llvm/Analysis/StackLifetime.h
Commit 5ec1845cad9e2bce4eff78b6c7d7c0fca8dfffba by Amara Emerson
[AArch64][GlobalISel] Add a new reassociation for G_PTR_ADDs.

G_PTR_ADD (G_PTR_ADD X, C), Y) -> (G_PTR_ADD (G_PTR_ADD(X, Y), C)

Improves CTMark -Os on AArch64:

Program            before after  diff
           sqlite3 286932 287024  0.0%
                kc 432512 432508 -0.0%
             SPASS 412788 412764 -0.0%
    pairlocalalign 249460 249416 -0.0%
            bullet 475740 475512 -0.0%
    7zip-benchmark 568864 568356 -0.1%
  consumer-typeset 419088 418648 -0.1%
        tramp3d-v4 367628 367224 -0.1%
          clamscan 383184 382732 -0.1%
            lencod 430028 429284 -0.2%
Geomean difference               -0.1%

Differential Revision: https://reviews.llvm.org/D109528
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/combine-ptradd-reassociation.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Commit a543abc5ea65bc1a9fc322d41d40af3c5abb954d by gysit
[mlir][linalg] Update OpDSL doc (NFC).

Update the doc due to recent path changes an point to a helper script.
The file was modifiedmlir/docs/Dialects/Linalg/OpDSL.md
Commit b10940edfc7d0eef4388202165295b665afb3e68 by zinenko
[mlir] Update docs on conversion and translation to LLVM

Create a new document that explain both stages of the process in a single
place, merge and deduplicate the content from the two previous documents. Also
extend the documentation to account for the recent changes in pass structure
due to standard dialect splitting and translation being more flexible.

Reviewed By: aartbik

Differential Revision: https://reviews.llvm.org/D109605
The file was removedmlir/docs/ConversionToLLVMDialect.md
The file was addedmlir/docs/TargetLLVMIR.md
The file was removedmlir/docs/LLVMDialectMemRefConvention.md
Commit 1f1c71aeacc1c4eab385c074714508b6e7121f73 by xiang1.zhang
[X86][InlineAsm] Use mem size information (*word ptr) for "global variable + registers" memory expression in inline asm.

Differential Revision: https://reviews.llvm.org/D109739
The file was addedclang/test/CodeGen/X86/ms_fmul.c
The file was modifiedllvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
Commit e90d55e1c9e76ade72933804d050b7ae8dbd674b by flo
[VPlan] Support sinking recipes with uniform users outside sink target.

This is a first step towards addressing the last remaining limitation of
the VPlan version of sinkScalarOperands: the legacy version can
partially sink operands. For example, if a GEP has uniform users outside
the sink target block, then the legacy version will sink all scalar
GEPs, other than the one for lane 0.

This patch works towards addressing this case in the VPlan version by
detecting such cases and duplicating the sink candidate. All users
outside of the sink target will be updated to use the uniform clone.

Note that this highlights an issue with VPValue naming. If we duplicate
a replicate recipe, they will share the same underlying IR value and
both VPValues will have the same name ir<%gep>.

Reviewed By: Ayal

Differential Revision: https://reviews.llvm.org/D104254
The file was modifiedllvm/test/Transforms/LoopVectorize/float-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/if-pred-stores.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/loop-form.ll
Commit 934e2f695e18033fdf740ab45bb5b0dfdf453c19 by springerm
[mlir][linalg] ComprehensiveBufferize: Do not copy InitTensorOp results

E.g.:

```
%2 = memref.alloc() {alignment = 128 : i64} : memref<256x256xf32>
%3 = memref.alloc() {alignment = 128 : i64} : memref<256x256xf32>

// ... (%3 is not written to)

linalg.copy(%3, %2) : memref<256x256xf32>, memref<256x256xf32>
vector.transfer_write %11, %2[%c0, %c0] {in_bounds = [true, true]} : vector<256x256xf32>, memref<256x256xf32>
```

Avoid copies of %3 if %3 came directly from an InitTensorOp.

Differential Revision: https://reviews.llvm.org/D109742
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit bddfbf91ed14ef5ace9dcfc33f624300442c5198 by david.green
[LV] Min/max intrinsic reduction test cases.
The file was modifiedllvm/test/Transforms/LoopVectorize/minmax_reduction.ll
Commit 18655140d6226ce35ef9e80e93f01d3aa4f44c01 by cullen.rhodes
[NVPTX] NFC: Remove unused imm type intrinsic arg

Identified in D109359.

Reviewed By: tra

Differential Revision: https://reviews.llvm.org/D109755
The file was modifiedllvm/lib/Target/NVPTX/NVPTXIntrinsics.td
Commit 3b9470a6c46d0ecdb586a5a1e9223ea0c832337c by Justas.Janickas
[OpenCL] Supports optional image types in C++ for OpenCL 2021

Adds support for a feature macro `__opencl_c_images` in C++ for
OpenCL 2021 enabling a respective optional core feature from
OpenCL 3.0.

This change aims to achieve compatibility between C++ for OpenCL
2021 and OpenCL 3.0.

Differential Revision: https://reviews.llvm.org/D109002
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/test/SemaOpenCL/unsupported-image.cl
Commit 533471ff2f82a5dd46ea59d5894ffe9b694c5ed9 by simon
[MIPS] Remove unused tblgen template args. NFC

Identified in D109359.
The file was modifiedllvm/lib/Target/Mips/Mips16InstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MicroMipsInstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MipsDSPInstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MipsEVAInstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MicroMips32r6InstrFormats.td
The file was modifiedllvm/lib/Target/Mips/Mips32r6InstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MipsMSAInstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MicroMips32r6InstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MicroMipsDSPInstrInfo.td
Commit dcba99418438ec1d624ad207674234bd2e9e3394 by llvm-dev
[X86] combineX86ShuffleChain - ensure we only peek through bitcasts to vectors (PR51858)

When searching for hidden identity shuffles (added at rG41146bfe82aecc79961c3de898cda02998172e4b), only peek through bitcasts to the source operand if it is a vector type as well.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-mul.ll
Commit 61cc873a8ef1f3c77114b5322cf1f9f551c74978 by david.green
[LV] Recognize intrinsic min/max reductions

This extends the reduction logic in the vectorizer to handle intrinsic
versions of min and max, both the floating point variants already
created by instcombine under fastmath and the integer variants from
D98152.

As a bonus this allows us to match a chain of min or max operations into
a single reduction, similar to how add/mul/etc work.

Differential Revision: https://reviews.llvm.org/D109645
The file was modifiedllvm/lib/Analysis/IVDescriptors.cpp
The file was modifiedllvm/include/llvm/Analysis/IVDescriptors.h
The file was modifiedllvm/test/Transforms/LoopVectorize/minmax_reduction.ll
Commit 05c120823b6893c1384835d47656125cdd751550 by flo
[DSE] Add capture-before test cases with loads.

Add a set of test cases where redundant stores may be removable,
depending on whether a local allocation gets captured before performing
a load.
The file was addedllvm/test/Transforms/DeadStoreElimination/captures-before-load.ll
Commit a2332d5332c3ede49adf1c71481e9efab7ca88c7 by david.green
[ARM] Prevent continuous folding of SUBC

Under some situations under Thumb1, we could be stuck in an infinite
loop recombining the same instruction. This puts a limit on that, not
combining SUBC with SUBE repeatedly.
The file was modifiedllvm/test/CodeGen/ARM/select_const.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit e3889b30590a8d61eec42b08bbe3708322c15205 by nicolas.vasilache
[mlir][Linalg] Replace DenseSet by UnionFind in ComprehensiveBufferize - NFC

AliasInfo can now use union-find for a much more efficient implementation.
This brings no functional changes but large performance gains on more complex examples.

Differential Revision: https://reviews.llvm.org/D109819
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit 660f281b5e755663b2d8ad061075eb5f5abdf9fb by nicolas.vasilache
[mlir][Linalg] Make codegen strategy late transformations opt-in

Summary: Making the late transformations opt-in results in less surprising behavior when composing multiple calls to the codegen strategy.

Reviewers:

Subscribers:

Differential revision: https://reviews.llvm.org/D109820
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/CodegenStrategy.h
The file was modifiedmlir/test/lib/Dialect/Linalg/TestLinalgCodegenStrategy.cpp
Commit afc45ff06fac83209c631f2573789fde48b8b397 by thakis
[gn build] (manually) port 2c42a73d6c39
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
Commit b33a43e57c8c4405cfa3d1a8fb187063d3857c34 by martin
[ARM] Move fetching of ARMSubtarget into the scopes that need it. NFC.

This was requested in D38253, but missed back then.

Differential Revision: https://reviews.llvm.org/D109046
The file was modifiedllvm/lib/Target/ARM/ARMAsmPrinter.cpp
Commit b4133a21cef49edb57cf96bb7d7518099d61e910 by martin
[lldb] [Windows] Fix an incorrect assert in NativeRegisterContextWindows_arm

This codepath hadn't been exercised in a build with asserts before.

Differential Revision: https://reviews.llvm.org/D109778
The file was modifiedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_arm.cpp
Commit 0767e43d87453e76e418cabb2b96fdacd1a4981c by llvm-dev
[CostModel][X86] Adjust bitreverse/ctpop/ctlz/cttz AVX2+ costs based on llvm-mca reports

Based off the worse case numbers generated by D103695, the AVX2/512 bit reversing/counting costs were higher than necessary (based off instruction counts instead of actual throughput).
The file was modifiedllvm/test/Analysis/CostModel/X86/ctpop.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/cttz.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/ctlz.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/ctpop.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/bitreverse.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/ctlz.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/cttz.ll
Commit be1028053e935524620de91a30035f1ff0a7f9aa by spatel
[PhaseOrdering] add tests for PR47023; NFC
The file was addedllvm/test/Transforms/PhaseOrdering/X86/store-constant-merge.ll
Commit f5d89523567b08420ff3fa48a6fc50dbf530afa8 by spatel
[InstCombine] Transform X == 0 ? 0 : X * Y --> X * freeze(Y)

Enabled mul folding optimization that was previously disabled
by being incorrect.
To preserve correctness, mul's operand that is not compared
with zero in select's condition is now frozen.

Related bug: https://bugs.llvm.org/show_bug.cgi?id=51286

Correctness:
https://alive2.llvm.org/ce/z/bHef7J
https://alive2.llvm.org/ce/z/QcR7sf
https://alive2.llvm.org/ce/z/vvBLzt
https://alive2.llvm.org/ce/z/jGDXgq
https://alive2.llvm.org/ce/z/3Pe8Z4
https://alive2.llvm.org/ce/z/LGga8M
https://alive2.llvm.org/ce/z/CTG5fs

Differential Revision: https://reviews.llvm.org/D108408
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select.ll
Commit 3c885190af219417a71e315e7c5999e67b783d03 by jrtc27
[RISCV][compiler-rt] Add missing __riscv_save_1/0 labels for RV64

These got missed in D91717.
The file was modifiedcompiler-rt/lib/builtins/riscv/save.S
Commit bbca392a7f31bb76f024481292d900618988e780 by jrtc27
[RISCV][compiler-rt] Move RV64 __riscv_restore_1/0 directives next to labels

This looks like it was copied from the RV32 version and not properly
updated. This has no functional effect but is not good style.
The file was modifiedcompiler-rt/lib/builtins/riscv/restore.S
Commit 274adcb866343cb505408d8f401840ea814522c8 by aaron
Implement delimited escape sequences.

\x{XXXX} \u{XXXX} and \o{OOOO} are accepted in all languages mode
in characters and string literals.

This is a feature proposed for both C++ (P2290R1) and C (N2785). The
papers have been seen by both committees but are not yet adopted into
either standard. However, they do have support from both committees.
The file was modifiedclang/test/Parser/cxx11-user-defined-literals.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticLexKinds.td
The file was modifiedclang/lib/Lex/Lexer.cpp
The file was modifiedclang/lib/Lex/LiteralSupport.cpp
The file was addedclang/test/Lexer/char-escapes-delimited.c
The file was modifiedclang/test/Preprocessor/ucn-pp-identifier.c
The file was modifiedclang/test/Sema/ucn-identifiers.c
Commit b8d83e83be0fd841f71bae07b664896aec88a5a7 by jrtc27
[RISCV][compiler-rt] Fix an incorrect comment for RV64 __riscv_restore_12

This was presumably copied from the RV32 implementation and not updated
like the rest.
The file was modifiedcompiler-rt/lib/builtins/riscv/restore.S
Commit 1f3925e25ae010c30273501d24b2bd4e0318fe7a by daltenty
[clang][driver][AIX] Add system libc++ header paths to driver

This change adds the system libc++ header location to the driver. As well we define
the `__LIBC_NO_CPP_MATH_OVERLOADS__` macro when using those headers, in order to suppress
conflicting C++ overloads in the system libc headers that were used by XL C++.

Reviewed By: ZarkoCA

Differential Revision: https://reviews.llvm.org/D109078
The file was modifiedclang/lib/Driver/ToolChains/AIX.cpp
The file was modifiedclang/test/Driver/aix-ld.c
The file was modifiedclang/test/Driver/aix-toolchain-include.cpp
The file was modifiedclang/lib/Driver/ToolChains/AIX.h
Commit 1a3b3301d7aa9ab25a8bdf045c77298b087e3930 by mascasa
[HWASan] Catch cases where libc populated jmp_buf.

Some setjmp calls within libc cannot be intercepted while their matching
longjmp calls can be.  This causes problems if our setjmp/longjmp
interceptors don't use the exact same format as libc for populating and
reading the jmp_buf.

We add a magic field to our jmp_buf and populate it in setjmp.  This
allows our longjmp interceptor to notice when a libc jmp_buf is passed
to it.

See discussion on https://reviews.llvm.org/D109699 and
https://reviews.llvm.org/D69045.

Fixes https://github.com/google/sanitizers/issues/1244.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D109787
The file was modifiedcompiler-rt/lib/hwasan/hwasan.h
The file was modifiedcompiler-rt/lib/hwasan/hwasan_interceptors.cpp
Commit 446e11fa2943b1c82aaf588f0df4985259fe1be2 by a.bataev
[SLP][NFC]Add a test for tiny tree with stores and with not
same/alternate instructions.
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
Commit 6fe77b1051cc6e01dc1ac2d47f51802ab938e076 by nicolas.vasilache
[mlir][Linalg] Fail comprehensive bufferization if a memref is returned.

Summary:

Reviewers:

Subscribers:

Differential revision: https://reviews.llvm.org/D109824
The file was modifiedmlir/test/Dialect/Linalg/comprehensive-module-bufferize.mlir
The file was modifiedmlir/test/Dialect/Linalg/comprehensive-module-bufferize-invalid.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/Passes.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit c78ed20784ee7ffb60b0879197e34225325aafd0 by mkazantsev
[Test] Add a test showing missing opportunities in branch deletion by indvars
The file was addedllvm/test/Transforms/IndVarSimplify/outer_phi.ll
Commit 0a07789fe93d8994163798ed6d14937412274dc2 by mascasa
[HWASan] Add missing newlines.
The file was modifiedcompiler-rt/lib/hwasan/hwasan_interceptors.cpp
Commit 9111635cb78e4a134364319e2728ff8dd69d36a8 by i
[test] Fix asan/scudo -shared-libsan tests with -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on

On x86_64-unknown-linux-gnu, `-m32` tests set LD_LIBRARY_PATH to
`config.compiler_rt_libdir` (`$build/lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu`)
instead of i386-unknown-linux-gnu, so `-shared-libsan` executables
cannot find their runtime (e.g. `TestCases/replaceable_new_delete.cpp`).

Detect -m32 and -m64 in config.target_cflags, and adjust `config.compiler_rt_libdir`.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D108859
The file was modifiedcompiler-rt/test/lit.common.cfg.py
Commit 36ef65adc356699832f786f9fbd3244527e4b79d by anna
[InstCombine] Update test checks through autogeneration, add more tests. NFC

Updated check lines.
Tests precommitted from D109700.
The file was modifiedllvm/test/Transforms/InstCombine/sink_instruction.ll
Commit 210d72e9d6b4a8e7633921d0bd7186fd3c7a2c8c by mgorny
[compiler-rt] Move -fno-omit-frame-pointer check to common config-ix

9ee64c374605683ae80b9641d5312a72c2a67336 has started using
COMPILER_RT_HAS_OMIT_FRAME_POINTER_FLAG inside scudo.  However,
the relevant CMake check was performed in builtin-config-ix.cmake,
so the definition was missing when builtins were not built.  Move
the check to config-ix.cmake, so that it runs unconditionally of
the components being built.

Fixes PR#51847

Differential Revision: https://reviews.llvm.org/D109812
The file was modifiedcompiler-rt/cmake/builtin-config-ix.cmake
The file was modifiedcompiler-rt/cmake/config-ix.cmake
Commit f9dbca68d48e705f6d45df8f58d6b2ee88bce76c by i
[CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux

This makes the default build closer to a -DLLVM_ENABLE_RUNTIMES=all build.
The layout is arguably superior because different libraries of target triples
are in different directories, similar to GCC/Debian multiarch.

When LLVM_DEFAULT_TARGET_TRIPLE is x86_64-unknown-linux-gnu,
`lib/clang/14.0.0/lib/libclang_rt.asan-x86_64.a`
is moved to
`lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu/libclang_rt.asan.a`.

In addition, if the host compiler supports -m32 (multilib),
`lib/clang/14.0.0/lib/libclang_rt.asan-i386.a`
is moved to
`lib/clang/14.0.0/lib/i386-unknown-linux-gnu/libclang_rt.asan.a`.

Clang has been detecting both paths for lib/Driver/ToolChains/Gnu.cpp since 2018 (D50547).

---

Note: Darwin needs to be disabled. The hierarchy needs to be sorted out.
The current -DLLVM_DEFAULT_TARGET_TRIPLE=off state is like:
```
lib/clang/14.0.0/lib/darwin/libclang_rt.profile_ios.a
lib/clang/14.0.0/lib/darwin/libclang_rt.profile_iossim.a
lib/clang/14.0.0/lib/darwin/libclang_rt.profile_osx.a
```

Windows needs to be disabled: https://reviews.llvm.org/D107799?id=368557#2963311

Differential Revision: https://reviews.llvm.org/D107799
The file was modifiedllvm/CMakeLists.txt
Commit ab5f2b505a0751bce41f4cec9afa3c1541d485d0 by Yaxun.Liu
[HIP] Diagnose -fopenmp-targets for HIP programs

Diagnose -fopenmp-targets for HIP programs since
dual HIP and OpenMP offloading in the same compilation
is currently not supported by HIP toolchain.

Reviewed by: Artem Belevich

Differential Revision: https://reviews.llvm.org/D109718
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/test/Driver/hip-options.hip
The file was modifiedclang/lib/Driver/Driver.cpp
Commit f68939d3d91c3e1b57fba5450fa9146c3dcf5fdc by uday
[MLIR] Tighten type constraint on memref.global op def

Tighten the def of memref.global op to use the right kind of TypeAttr
(of MemRefType).

Differential Revision: https://reviews.llvm.org/D109822
The file was modifiedmlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
The file was modifiedmlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
The file was modifiedmlir/lib/Dialect/StandardOps/Transforms/TensorConstantBufferize.cpp
Commit 258e27aae1354e0e82cf328fc55b1c7eea932290 by jonathan.l.peyton
[OpenMP] Add support for GOMP depobj

GOMP depobjs are represented as a two intptr_t array. The first
element is the base address of the dependency and the second element
is the flag indicating the type the depobj represents.

Differential Revision: https://reviews.llvm.org/D108790
The file was modifiedopenmp/runtime/test/lit.cfg
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was addedopenmp/runtime/test/tasking/omp50_taskdep_depobj.c
The file was modifiedopenmp/runtime/test/CMakeLists.txt
The file was modifiedopenmp/runtime/test/lit.site.cfg.in
Commit 13237c3b1ee0e1b4688e2099b5a458c99b5d93f0 by joker.eph
Add llvm_unreachable after fully covered switch (NFC)

This fixes a compiler warning for some version of GCC.
The file was modifiedmlir/lib/Target/Cpp/TranslateToCpp.cpp
Commit b759381b7515fc60ae41b78f162bab38bafa6baa by asbirlea
[MemorySSA] Add verification levels to MemorySSA. [NFC]

Add two levels of verification for MemorySSA: Fast and Full.
The defaults are kept the same. Full verification always occurs under
EXPENSIVE_CHECKS, but now it can also be requested in a specific pass for
debugging purposes.
The file was modifiedllvm/include/llvm/Analysis/MemorySSA.h
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
Commit a92f11b682455b488ba66a006eaeb250373d989c by listmail
switch a couple of SCEV tests to autogen for ease of update
The file was modifiedllvm/test/Analysis/ScalarEvolution/flags-from-poison.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/range_nw_flag.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/nsw-offset.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/nsw-offset-assume.ll
Commit debbf8049d221966fd484c546fa2ddef11daec3c by listmail
autogen a test for ease of update
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/pr42729.ll
Commit 96ec0ff2b7603d6778c5b06d096dc4d2084c1936 by nicolas.vasilache
[mlir][Linalg] Revisit insertion points in comprehensive bufferization.

This revision fixes a corner case that could appear due to incorrect insertion point behavior in comprehensive bufferization.

Differential Revision: https://reviews.llvm.org/D109830
The file was modifiedmlir/test/Dialect/Linalg/comprehensive-module-bufferize-analysis.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit 1b79efdc72e640fb7a70e5974d0e7352d72ce997 by marius.brehler
[mlir] Fix printing of EmitC attrs/types with escape characters

Attributes and types were not escaped when printing.

Reviewed By: jpienaar, marbre

Differential Revision: https://reviews.llvm.org/D109143
The file was addedmlir/test/Target/Cpp/attrs.mlir
The file was modifiedmlir/test/Dialect/EmitC/types.mlir
The file was modifiedmlir/lib/Dialect/EmitC/IR/EmitC.cpp
The file was addedmlir/test/Dialect/EmitC/attrs.mlir
The file was addedmlir/test/Target/Cpp/types.mlir
Commit 9bdb19cca292f7a8335148e5c1b85f7e9120a1a5 by listmail
[SCEV] (udiv X, Y) * Y is always NUW

Motivated by the removal done in D109782. This implements the correct flag part generically.

Differential Revision: https://reviews.llvm.org/D109786
The file was modifiedllvm/test/Analysis/ScalarEvolution/max-be-count-not-constant.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/extract-highbits-variablemask.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/mul.ll
Commit e5a32d720ef2d8989442a533e1dd2d7e667155c1 by spatel
[InstCombine] move extend after insertelement if both operands are extended

I was wondering how instcombine does on the examples in D109236,
and we're missing a basic transform:

inselt (ext X), (ext Y), Index --> ext (inselt X, Y, Index)

https://alive2.llvm.org/ce/z/z2aBu9

Note that there are several possible extensions of this fold
(see TODO comments).

Differential Revision: https://reviews.llvm.org/D109537
The file was modifiedllvm/test/Transforms/InstCombine/insert-ext.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Commit 385f380e806a10549d91466e7ca22121c866d287 by kazu
[MemorySSA] Fix "set but not used" warnings
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
Commit acaca56471a7c7b68591f1bc0214177c43fa05d6 by mascasa
[HWASan] Test longjmp(jmpbuf, 0).

Our interceptor needs to change retval to 1 when 0 is passed.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D109788
The file was modifiedcompiler-rt/test/hwasan/TestCases/longjmp-setjmp-interception.c
Commit 248e430f37c8486e526147c5e6b8cbda1e633467 by listmail
precommit test for D109845/D106852
The file was modifiedllvm/test/Analysis/ScalarEvolution/no-wrap-add-exprs.ll
Commit 4ac4e52189aa6d80c3d59dc2c8f7dcc0cb7f9d58 by anna
[InstCombine] Improve TryToSinkInstruction with multiple uses

This patch allows sinking an instruction which can have multiple uses in a
single user. We were previously over-restrictive by looking for exactly one use,
rather than one user.

Also, the API for retrieving undroppable user has been updated accordingly since
in both usecases (Attributor and InstCombine), we seem to care about the user,
rather than the use.

Reviewed-By: nikic

Differential Revision: https://reviews.llvm.org/D109700
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/test/Transforms/InstCombine/icmp-mul-zext.ll
The file was modifiedllvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
The file was modifiedllvm/include/llvm/IR/Value.h
The file was modifiedllvm/test/Transforms/InstCombine/sink_instruction.ll
The file was modifiedllvm/lib/IR/Value.cpp
Commit 40acc0adad59ac39e9a7a02fcd93161298500c00 by dblaikie
Improve type printing of size-dependent const arrays to normalize array-of-const and const-array

Follow-on from 2bd84938470bf2e337801faafb8a67710f46429d based on
postcommit feedback from Richard Smith.

The VariableArray case I couldn't figure out how to test/provoke - you
can't write/form a variable array in any context other than a local
variable that I know of, and in that case `const int x[n]` is the
normalized form already (array-of-const) and you can't use typedefs
(since you can't typedef int[n] with variable 'n') to force the
const-array AST that would produce the undesirable type printing "int
const [n]".
The file was modifiedclang/test/AST/ast-dump-array.cpp
The file was modifiedclang/lib/AST/TypePrinter.cpp
Commit d249200fa7d540fb0b3ddc065575293e1da11107 by Saleem Abdulrasool
Revert "Re-Revert "clang-tidy: introduce readability-containter-data-pointer check""

This reverts commit 626586fc253c6f032aedb325dba6b1ff3f11875e.

Tweak the test for Windows.  Windows defaults to delayed template
parsing, which resulted in the main template definition not registering
the test on Windows.  Process the file with the additional
`-fno-delayed-template-parsing` flag to change the default beahviour.
Additionally, add an extra check for the fix it and use a more robust
test to ensure that the value is always evaluated.

Differential Revision: https://reviews.llvm.org/D108893
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was addedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was addedclang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
The file was addedclang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst
Commit ae2a5facce96dfe1efcb7111ee1ef0d91c956276 by hansang.bae
[OpenMP][libomptarget] Minor fix in x86_64 plugin

Call to remove() was passing invalid address for the file name.

Differential Revision: https://reviews.llvm.org/D109846
The file was modifiedopenmp/libomptarget/plugins/generic-elf-64bit/src/rtl.cpp
Commit 8264846c0ef847adeacca9b8fe0f867a8a378c5e by dblaikie
Senticify some comments - post-commit review for e4b9f5e851d1fe0ba93cbb11b2ed4558602c379e

Based on feedback from Paul Robinson.
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit 3273430406c186f1f2af597adeedf21d4fa52b18 by anna
Re-add getSingleUndroppableUse API

The API was removed in 4ac4e52189aa in favor of
getUniqueUndroppableUser.
However, this caused a buildbot failure in AbstractCallSiteTest.cpp,
which uses the API and the AbstractCallSite class requires a "use"
rather than a user.
Retain the API so that the unittest compiles and passes.
The file was modifiedllvm/lib/IR/Value.cpp
The file was modifiedllvm/include/llvm/IR/Value.h
Commit 1ac2d195ecb5d4c549c11b9c1df00179f5fea7ed by rob.suderman
[mlir][linalg] Add canonicalizers for depthwise conv

There are two main versions of depthwise conv depending whether the multiplier
is 1 or not. In cases where m == 1 we should use the version without the
multiplier channel as it can perform greater optimization.

Add lowering for the quantized/float versions to have a multiplier of one.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D108959
The file was modifiedmlir/test/Dialect/Linalg/canonicalize.mlir
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit f4382d4b0972ac31a2027610adfb9d4dc36caa2e by Dan Liew
[Compiler-RT] For arm64e test suites use the SDK version as the minimum deployment target.

Previously we used the minimum deployment target used for the platform
(e.g. iOS is 9.0). Unfortunately this leads to ABI incompatibilities with
arm64e devices running newer OSs. In particular the following TSan test
cases that used libcxx would fail due to the ABI mismatch.

* Darwin/libcxx-shared-ptr-recursive.mm
* Darwin/libcxx-shared-ptr-stress.mm
* Darwin/libcxx-shared-ptr.mm
* libcxx/std_shared_ptr.cpp

Given that arm64e is not ABI stable we should ideally match the
deployment target for sanitizer runtimes and their tests cases to the
device when building for arm64e. Unfortunately having a mixed deployment
target (based on architecture) isn't currently supported by the build system
and is non-trivial to implement.

As a stop-gap measure this patch changes the sanitizer test suites (but not the
sanitizer runtimes themselves) to use a newer deployment target when
targetting arm64e.

The deployment target used for arm64e is the SDK version because this
"should" match the OS version running on the target device (it is a
configuration error to not match them).

rdar://83080611
The file was modifiedcompiler-rt/cmake/config-ix.cmake
Commit cb8c30d35dc9eedca4b8073e96f06e9ce8f12192 by jpienaar
[DRR] Explicit Return Types in Rewrites

Adds a new rewrite directive returnType that can be added at the end of an op's
argument list to explicitly specify return types.

```
(OpX $v0, $v1, (returnType "$_builder.getI32Type()"))
```

Pass in a bound value to copy its return type, or pass a native code call to
dynamically create new types.

```
(OpX $v0, $v1, (returnType $v0, (NativeCodeCall<"..."> $v1)))
```

Reviewed By: jpienaar

Differential Revision: https://reviews.llvm.org/D109472
The file was modifiedmlir/test/mlir-tblgen/rewriter-indexing.td
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
The file was modifiedmlir/include/mlir/IR/OpBase.td
The file was modifiedmlir/include/mlir/TableGen/Pattern.h
The file was modifiedmlir/test/mlir-tblgen/rewriter-errors.td
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp
The file was modifiedmlir/lib/TableGen/Pattern.cpp
The file was modifiedmlir/test/mlir-tblgen/pattern.mlir
Commit 87c00878d3ace60fe07cc2a9f8bd4566ab817d26 by Matthew.Arsenault
SplitKit: Remove decade old live interval hack

This was trying to fixup broken live intervals coming out of the
coalescer. The verifier is more complete now and no tests seem to fail
without this.
The file was modifiedllvm/lib/CodeGen/SplitKit.h
The file was modifiedllvm/lib/CodeGen/SplitKit.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocGreedy.cpp
Commit b6cb03e6b94d91a1757d41d4b0f139166ae15de0 by anna
Revert use of getUniqueUndroppableUser in AssumeBundleBuilder

Fix build bot failure in rG4ac4e521 caused due to assumeBundleBuilder
using new API (getUniqueUndroppableUser).
We now continue using the existing API for AssumeBundleBuilder
(getSingleUndroppableUser).

Sorry for the noise here.

Tests-Run: failing testcase passes.
The file was modifiedllvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
Commit 065bb08bb8934f1b3774f6a2f6a077fde67cf053 by dblaikie
NFC: DWARFTypePrinter: Remove "type" from member function names to reduce redundancy
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit 8025c03f70ee9b92e8599519b5ee34b54c9a80da by owenca
[clang-format] Top-level unwrapped lines don't follow a left brace

Differential Revision: https://reviews.llvm.org/D109752
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
Commit f9e4aebe4a7a318869f57852359ad637f5c5a009 by anna
Revert "[InstCombine] Improve TryToSinkInstruction with multiple uses"

This reverts commit 4ac4e52189aa6d80c3d59dc2c8f7dcc0cb7f9d58.
There are couple of test failures, which needs update of the test cases.

Doing a clean revert and will recommit the change along with fixed
testcases.
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/lib/IR/Value.cpp
The file was modifiedllvm/test/Transforms/InstCombine/icmp-mul-zext.ll
The file was modifiedllvm/include/llvm/IR/Value.h
The file was modifiedllvm/test/Transforms/InstCombine/sink_instruction.ll
Commit 68079ef0eb011c8349e5ae84b95216e5039dbc16 by resistor
Teach SimplifyCFG to fold switches into lookup tables in more cases.

In particular, it couldn't handle cases where lookup table constant
expressions involved bitcasts. This does not seem to come up
frequently in C++, but comes up reasonably often in Rust via
`#[derive(Debug)]`.

Originally reported by pcwalton.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D109565
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was addedllvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-bitcast.ll
The file was addedllvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-gep.ll
Commit 658eb9e14264d48888ade0e3daf0b648f76c3f0e by llvm-project
[Polly] Remove autotools build systems from Externals. NFC.

Building a source distribution using autotools adds GPL-licenced
files into the the sources. Although redistribution of theses files is
explicitly allowed with an exception, these are not used by Polly
which uses a CMake replacement. Use the direct source checkout
instead (replacing the output of 'make dist').

Some m4 scripts with the same licence are also included in isl/ppcg
repository. Removing them renders the autotools-based build scipts
inoperable, so remove the autotools build system altogether.
The file was addedpolly/lib/External/isl/imath/rsamath.c
The file was addedpolly/lib/External/isl/imath/tests/isprime.tc
The file was addedpolly/lib/External/isl/imath/tests/test.bc
The file was removedpolly/lib/External/ppcg/m4/ax_check_opencl.m4
The file was removedpolly/lib/External/ppcg/ltmain.sh
The file was addedpolly/lib/External/isl/imath/tests/qdiv.tc
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/genpytest.py
The file was removedpolly/lib/External/isl/include/isl/cpp-checked-conversion.h
The file was addedpolly/lib/External/isl/imath/ChangeLog
The file was removedpolly/lib/External/isl/interface/install-sh
The file was removedpolly/lib/External/ppcg/install-sh
The file was removedpolly/lib/External/ppcg/m4/libtool.m4
The file was removedpolly/lib/External/isl/configure
The file was removedpolly/lib/External/isl/isl_config.h.in
The file was removedpolly/lib/External/isl/doc/Makefile.am
The file was addedpolly/lib/External/isl/imath/doc.md.in
The file was removedpolly/lib/External/ppcg/config.sub
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/Makefile
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/gendata.py
The file was addedpolly/lib/External/isl/imath/examples/basecvt.c
The file was addedpolly/lib/External/isl/imath/LICENSE
The file was addedpolly/lib/External/isl/imath/tests/egcd.tc
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/.gitignore
The file was addedpolly/lib/External/isl/imath/tests/qadd.tc
The file was removedpolly/lib/External/ppcg/configure
The file was addedpolly/lib/External/isl/imath/tests/qaddz.tc
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e6.pip
The file was addedpolly/lib/External/isl/imath/contrib/Makefile.msvc
The file was addedpolly/lib/External/isl/doc/interface
The file was removedpolly/lib/External/isl/interface/config.guess
The file was removedpolly/lib/External/ppcg/Makefile.am
The file was addedpolly/lib/External/isl/imath/imdrover.h
The file was addedpolly/lib/External/isl/imath/tests/linux/Dockerfile
The file was addedpolly/lib/External/isl/imath/examples/rsakey.c
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/runtest.py
The file was removedpolly/lib/External/isl/interface/isl.py
The file was removedpolly/lib/External/isl/interface/ltmain.sh
The file was removedpolly/lib/External/isl/Makefile.in
The file was addedpolly/lib/External/isl/imath/tests/neg.tc
The file was removedpolly/lib/External/isl/interface/aclocal.m4
The file was removedpolly/lib/External/ppcg/m4/ltversion.m4
The file was addedpolly/lib/External/isl/imath/tests/div.tc
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/runtest
The file was removedpolly/lib/External/isl/m4/ax_detect_imath.m4
The file was removedpolly/lib/External/ppcg/m4/ax_detect_git_head.m4
The file was addedpolly/lib/External/isl/imath/imdrover.c
The file was addedpolly/lib/External/isl/imath/tests/qsubz.tc
The file was removedpolly/lib/External/isl/m4/ax_gcc_archflag.m4
The file was addedpolly/lib/External/isl/imath/examples/randprime.c
The file was removedpolly/lib/External/isl/interface/compile
The file was removedpolly/lib/External/isl/config.guess
The file was addedpolly/lib/External/isl/.gitmodules
The file was removedpolly/lib/External/isl/m4/ltsugar.m4
The file was addedpolly/lib/External/isl/imath/tests/qmul.tc
The file was removedpolly/lib/External/isl/m4/ax_detect_git_head.m4
The file was addedpolly/lib/External/isl/imath/.dockerignore
The file was removedpolly/lib/External/isl/m4/ax_gcc_warn_unused_result.m4
The file was removedpolly/lib/External/ppcg/aclocal.m4
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/gmpapi.py
The file was removedpolly/lib/External/isl/configure.ac
The file was addedpolly/lib/External/isl/imath/tests/lcm.tc
The file was addedpolly/lib/External/isl/imath/tests/qmisc.tc
The file was removedpolly/lib/External/ppcg/m4/lt~obsolete.m4
The file was addedpolly/lib/External/isl/imath/tests/bintest.c
The file was removedpolly/lib/External/ppcg/m4/ltsugar.m4
The file was modifiedpolly/lib/External/update-isl.sh
The file was addedpolly/lib/External/isl/imath/examples/pi.c
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/genctest.py
The file was removedpolly/lib/External/isl/interface/isl_config.h.in
The file was addedpolly/lib/External/isl/imath/doc.md
The file was addedpolly/lib/External/isl/imath/Makefile
The file was addedpolly/lib/External/isl/imath/examples/input.c
The file was removedpolly/lib/External/isl/m4/ax_create_pkgconfig_info.m4
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e1.pip
The file was removedpolly/lib/External/isl/include/isl/typed_cpp.h
The file was removedpolly/lib/External/isl/depcomp
The file was addedpolly/lib/External/isl/imath/tools/findthreshold.py
The file was removedpolly/lib/External/isl/m4/ax_compiler_vendor.m4
The file was addedpolly/lib/External/isl/imath/tests/conv.tc
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/gmp_custom_test.c
The file was addedpolly/lib/External/isl/imath/tests/imath-test.scm
The file was removedpolly/lib/External/isl/include/isl/cpp.h
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e4.pip
The file was addedpolly/lib/External/isl/imath/tests/add.tc
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/imath_custom_test.c
The file was addedpolly/lib/External/isl/testsets/pip/bouleti.pip
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e8.pip
The file was addedpolly/lib/External/isl/imath/tests/compare.tc
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e3.pip
The file was removedpolly/lib/External/isl/m4/ax_prog_cxx_for_build.m4
The file was removedpolly/lib/External/isl/aclocal.m4
The file was addedpolly/lib/External/isl/imath/tests/set.tc
The file was removedpolly/lib/External/isl/m4/ax_check_compiler_flags.m4
The file was addedpolly/lib/External/isl/testsets/pip/jcomplex.pip
The file was removedpolly/lib/External/isl/interface/depcomp
The file was removedpolly/lib/External/isl/m4/ax_submodule.m4
The file was removedpolly/lib/External/ppcg/m4/ax_submodule.m4
The file was removedpolly/lib/External/ppcg/test-driver
The file was addedpolly/lib/External/isl/imath/.gitattributes
The file was removedpolly/lib/External/isl/m4/lt~obsolete.m4
The file was addedpolly/lib/External/isl/testsets/pip/phideo.pip
The file was addedpolly/lib/External/isl/imath/tests/qsub.tc
The file was addedpolly/lib/External/isl/imath/tests/root.tc
The file was removedpolly/lib/External/ppcg/depcomp
The file was addedpolly/lib/External/isl/imath/examples/findprime.c
The file was removedpolly/lib/External/isl/m4/ax_c___attribute__.m4
The file was addedpolly/lib/External/isl/imath/iprime.h
The file was addedpolly/lib/External/isl/imath/rsamath.h
The file was removedpolly/lib/External/isl/m4/ax_gcc_x86_cpuid.m4
The file was removedpolly/lib/External/isl/py-compile
The file was addedpolly/lib/External/isl/imath/tests/bigsqr.tc
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e5.pip
The file was removedpolly/lib/External/ppcg/Makefile.in
The file was removedpolly/lib/External/isl/m4/ax_cxx_compile_stdcxx_11.m4
The file was addedpolly/lib/External/isl/imath/examples/rounding.c
The file was addedpolly/lib/External/isl/imath/tests/qmulz.tc
The file was removedpolly/lib/External/isl/m4/ax_cxx_compile_stdcxx_11_no_override.m4
The file was addedpolly/lib/External/isl/imath/README.md
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/README
The file was removedpolly/lib/External/isl/interface/configure
The file was addedpolly/lib/External/isl/imath/.travis.yml
The file was addedpolly/lib/External/isl/imath/imtimer.c
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e9.pip
The file was addedpolly/lib/External/isl/imath/tests/gcd.tc
The file was addedpolly/lib/External/isl/imath/tests/bigmul.tc
The file was addedpolly/lib/External/isl/imath/tests/sqr.tc
The file was addedpolly/lib/External/isl/testsets/pip/difficult.pip
The file was removedpolly/lib/External/isl/config.sub
The file was removedpolly/lib/External/isl/m4/ltoptions.m4
The file was addedpolly/lib/External/isl/imath/examples/imcalc.c
The file was addedpolly/lib/External/isl/imath/tools/mkdoc.py
The file was removedpolly/lib/External/isl/m4/ax_cc_maxopt.m4
The file was removedpolly/lib/External/isl/m4/ax_detect_gmp.m4
The file was addedpolly/lib/External/isl/imath/tests/sub.tc
The file was removedpolly/lib/External/ppcg/configure.ac
The file was removedpolly/lib/External/isl/include/isl/cpp-checked.h
The file was removedpolly/lib/External/isl/m4/libtool.m4
The file was addedpolly/lib/External/isl/imath/iprime.c
The file was addedpolly/lib/External/isl/imath/tests/qdivz.tc
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e7.pip
The file was removedpolly/lib/External/isl/interface/Makefile.am
The file was addedpolly/lib/External/isl/imath/imtest.c
The file was addedpolly/lib/External/isl/imath/tests/qtodec.tc
The file was addedpolly/lib/External/isl/imath/tests/bug-swap.c
The file was addedpolly/lib/External/isl/testsets/pip/seghir-vd.pip
The file was removedpolly/lib/External/isl/m4/ltversion.m4
The file was removedpolly/lib/External/ppcg/compile
The file was removedpolly/lib/External/isl/m4/ax_create_stdint_h.m4
The file was addedpolly/lib/External/isl/imath/tests/pi1698-16.txt
The file was removedpolly/lib/External/isl/m4/ax_prog_cc_for_build.m4
The file was removedpolly/lib/External/isl/test-driver
The file was addedpolly/lib/External/isl/imath/tests/invmod.tc
The file was addedpolly/lib/External/isl/imath/tests/mul.tc
The file was addedpolly/lib/External/isl/imath/tests/test.sh
The file was addedpolly/lib/External/isl/imath/contrib/README
The file was removedpolly/lib/External/ppcg/m4/ax_check_openmp.m4
The file was addedpolly/lib/External/isl/imath/tests/expt.tc
The file was removedpolly/lib/External/isl/m4/ax_set_warning_flags.m4
The file was removedpolly/lib/External/isl/ltmain.sh
The file was addedpolly/lib/External/isl/imath/tests/emodv.tc
The file was removedpolly/lib/External/isl/interface/missing
The file was addedpolly/lib/External/isl/testsets/pip/cnt_sum2.pip
The file was removedpolly/lib/External/ppcg/missing
The file was removedpolly/lib/External/isl/compile
The file was addedpolly/lib/External/isl/imath/tests/init.tc
The file was removedpolly/lib/External/isl/m4/ax_detect_clang.m4
The file was removedpolly/lib/External/isl/doc/Makefile.in
The file was removedpolly/lib/External/isl/m4/ax_cxx_compile_stdcxx.m4
The file was addedpolly/lib/External/isl/imath/tests/rtest.c
The file was addedpolly/lib/External/isl/imath/tests/emod.tc
The file was removedpolly/lib/External/ppcg/config.guess
The file was addedpolly/lib/External/isl/imath/tests/mod.tc
The file was removedpolly/lib/External/isl/install-sh
The file was addedpolly/lib/External/isl/.gitignore
The file was removedpolly/lib/External/ppcg/m4/ltoptions.m4
The file was addedpolly/lib/External/isl/imath/tests/pi1500-10.txt
The file was removedpolly/lib/External/isl/missing
The file was removedpolly/lib/External/isl/interface/Makefile.in
The file was addedpolly/lib/External/isl/imath/tests/pi1024.txt
The file was removedpolly/lib/External/isl/Makefile.am
The file was removedpolly/lib/External/isl/interface/config.sub
Commit c90cbb2d3455a6e1421cc7e703d2043a399ef7aa by llvmgnsyncbot
[gn build] Port d249200fa7d5
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Commit c3ddc13d7d631a29b55f82c7cc7a9008bf89b1f4 by aeubanks
[NFC] Split up PassBuilder.cpp

PassBuilder.cpp is the slowest file to compile in LLVM.
When trying to test changes to pipelines, it takes a long time to recompile.

This doesn't actually speedup building PassBuilder.cpp itself since most
of the time is spent in other large/duplicated functions caused by
PassRegistry.def.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D109798
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Passes/CMakeLists.txt
The file was addedllvm/lib/Passes/OptimizationLevel.cpp
The file was addedllvm/lib/Passes/PassBuilderPipelines.cpp
Commit 5d78e33ce5eba5bdf2be0d261eb5c6dd3458ec78 by aeubanks
[test] Move some llvm-extract tests into the proper directory
The file was addedllvm/test/tools/llvm-extract/extract-alias.ll
The file was addedllvm/test/tools/llvm-extract/extract-linkonce.ll
The file was addedllvm/test/tools/llvm-extract/extract-weak-odr.ll
The file was removedllvm/test/Other/extract-weak-odr.ll
The file was addedllvm/test/tools/llvm-extract/extract.ll
The file was removedllvm/test/Other/extract-alias.ll
The file was removedllvm/test/Other/extract-linkonce.ll
The file was removedllvm/test/Other/extract.ll
Commit 699da98739b0f88c27f75adbe8295c7e1dfd0188 by richard
PR51874: Fix diagnostics for defaulted, implicitly deleted 'operator!='.

Don't say we couldn't find an 'operator<=>' when we were actually
looking for an 'operator=='. Also fix a crash when attempting to
diagnose if we select a built-in 'operator!=' in this lookup.
The file was addedclang/test/CXX/class/class.compare/class.compare.secondary/p2.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
Commit 37a5a3ae5508a120a6eba113dbd0b23ab27d650e by tejohnson
[MemProf] Avoid global lock when updating MIB cache

Previously we used a global Allocator-scope mutex to lock when adding a
deallocation to the MIB cache. This resulted in a lot of contention.
Instead add and use per-set mutexes.

Along with this, we now need to remove the global miss and access count
variables and instead utilize the per-set statistics to report the
overall miss rate.

Differential Revision: https://reviews.llvm.org/D109853
The file was modifiedcompiler-rt/lib/memprof/memprof_allocator.cpp
Commit 17589538aaef2b5ae27a0bfeb4346aff433aa59d by tedwood
[lldb-vscode] Fix focus thread when previous thread exits

The thread that Visual Studio Code displays on a stop is called the focus thread. When the previous focus thread exits and we stop in a new thread, lldb-vscode does not tell vscode to set the new thread as the focus thread, so it selects the first thread in the thread list.

This patch changes lldb-vscode to tell vscode that the new thread is the focus thread. It also includes a test that verifies the DAP stop message for this case contains the correct values.

Reviewed By: clayborg, wallace

Differential Revision: https://reviews.llvm.org/D109633
The file was addedlldb/test/API/tools/lldb-vscode/correct-thread/main.c
The file was addedlldb/test/API/tools/lldb-vscode/correct-thread/Makefile
The file was addedlldb/test/API/tools/lldb-vscode/correct-thread/TestVSCode_correct_thread.py
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp
Commit 242524741f3582d93e4fac8052d0bfc40f4c1ac4 by tejohnson
[MemProf] Fix format warnings

Fix the warnings that show up with -Wformat in this file.
The file was modifiedcompiler-rt/lib/memprof/memprof_allocator.cpp
Commit 94a2f9cdb6f9ef9843057030159ee69f76722121 by Ahmed Bougacha
[GlobalISel] Fix CombinerHelper::isPredecessor for same def/use MI.

The doc comment for isPredecessor says:
  Returns true if \p DefMI precedes \p UseMI or they are the same
  instruction.
And dominates relies on that behavior for its own:
  Returns true if \p DefMI dominates \p UseMI. By definition an
  instruction dominates itself.

Make both statements correct by fixing isPredecessor.
Found by inspection.
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Commit e159d3cbfc250115d1244f3a6219436a52f90f86 by Ahmed Bougacha
[AArch64][GlobalISel] Use MI::getIntrinsicID in more spots. NFC.

There's technically a difference in the logic used by these
findIntrinsicID and MachineInstr::getIntrinsicID, but it shouldn't
be a meaningful difference here, with G_INTRINSIC instructions.
getIntrinsicID's "first non-def" logic should be correct for those.
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
Commit c8b3d7d6d6de37af68b2f379d0e37304f78e115f by Jessica Paquette
[AArch64][GlobalISel] Ensure atomic loads always get assigned GPR destinations

The default register bank selection code for G_LOAD assumes that we ought to
use a FPR when the load is casted to a float/double.

For atomics, this isn't true; we should always use GPRs.

Without this patch, we crash in the following example:

https://godbolt.org/z/MThjas441

Also make the code a little more stylistically consistent while we're here.

Also test some other weird cast combinations as well.

Differential Revision: https://reviews.llvm.org/D109771
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
Commit 24c8eaec9467b2aaf70b0db33a4e4dd415139a50 by kazu
[Transforms] Use make_early_inc_range (NFC)
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroCleanup.cpp
The file was modifiedllvm/lib/Transforms/Utils/LowerSwitch.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroEarly.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit b1d44e59020a2a7adfc81bffb07577fd091d0778 by ajcbik
[mlir][sparse] add affine subscripts to sparse compilation pass

This enables the sparsification of more kernels, such as convolutions
where there is a x(i+j) subscript. It also enables more tensor invariants
such as x(1) or other affine subscripts such as x(i+1). Currently, we
reject sparsity altogether for such tensors. Despite this restriction,
however, we can already handle a lot more kernels with compound subscripts
for dense access (viz. convolution with dense input and sparse filter).
Some unit tests and an integration test demonstrate new capability.

Reviewed By: bixia

Differential Revision: https://reviews.llvm.org/D109783
The file was addedmlir/test/Dialect/SparseTensor/sparse_affine.mlir
The file was addedmlir/test/Integration/Dialect/SparseTensor/CPU/sparse_filter_conv2d.mlir
The file was modifiedmlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
Commit 03c8b24ace911912892f225cce16498b6f71bf3f by i
Delete unused GlobalIndirectSymbol::getBaseObject overloads
The file was modifiedllvm/include/llvm/IR/GlobalIndirectSymbol.h
Commit a01f772d19d53976a6d6e0eed684440e4f2cc9da by Lang Hames
[ORC] Add MethodWrapperHandler utility for WrapperFunction.

MethodWrapperHandler removes some of the boilerplate when writing wrapper
functions to wrap method calls. It can be used as a handler for wrapper
functions whose first argument is an ExecutorAddress: the address is cast to a
pointer of the given class type, then the given method function pointer is
called on that object pointer (passing the rest of the arguments).

E.g.

class MyClass {
public:
  void myMethod(uint32_t, bool) { ... }
};

// SPS Method signature for myMethod -- note MyClass object address as first
// argument.
using SPSMyMethodWrapperSignature =
  SPSTuple<SPSExecutorAddress, uint32_t, bool>;

// Wrapper function for myMethod.
WrapperFunctionResult
myMethodCallWrapper(const char *ArgData, size_t ArgSize) {
  return WrapperFunction<SPSMyMethodWrapperSignature>::handle(
     ArgData, ArgSize, makeMethodWrapperHandler(&MyClass::myMethod));
}
The file was modifiedllvm/unittests/ExecutionEngine/Orc/WrapperFunctionUtilsTest.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Shared/WrapperFunctionUtils.h
Commit a5b72abc9eaadbd319f0fbb8ae947d2dd289b30a by AlokKumar.Sharma
[DebugInfo] Enhance DIImportedEntity to accept children entities

New field `elements` is added to '!DIImportedEntity', representing
list of aliased entities.
This is needed to dump optimized debugging information where all names
in a module are imported, but a few names are imported with overriding
aliases.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D109343
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp
The file was modifiedllvm/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modifiedllvm/lib/IR/DIBuilder.cpp
The file was modifiedllvm/tools/llvm-c-test/debuginfo.c
The file was modifiedllvm/include/llvm-c/DebugInfo.h
The file was modifiedllvm/lib/IR/LLVMContextImpl.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
The file was modifiedllvm/lib/IR/AsmWriter.cpp
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
The file was modifiedllvm/lib/Bitcode/Writer/BitcodeWriter.cpp
The file was modifiedllvm/lib/IR/DebugInfo.cpp
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
The file was addedllvm/test/Bitcode/DIImportedEntity_backward.ll
The file was addedllvm/test/DebugInfo/X86/dwarfdump-DIImportedEntity_elements.ll
The file was addedllvm/test/Bitcode/DIImportedEntity_backward.ll.bc
The file was modifiedllvm/unittests/IR/MetadataTest.cpp
The file was modifiedllvm/include/llvm/IR/DIBuilder.h
The file was addedllvm/test/Bitcode/DIImportedEntity_elements.ll
Commit 8f2db36b01c043570e36a85c45b87c6df402d3ee by gysit
[mlir][OpDSL] Update op definitions to make shapes more concise (NFC).

Express the input shape definitions of convolution and pooling operations in terms of the output shapes, filter shapes, strides, and dilations.

Reviewed By: shabalin, rsuderman, stellaraccident

Differential Revision: https://reviews.llvm.org/D109815
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
The file was modifiedmlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
Commit 7acf92943b78611e1194687de37eebf83ba97430 by andrzej.warzynski
[flang][driver] Add documentation for Plugins

Adding documentation covering the Frontend Driver Plugins

Reviewed By: awarzynski, kiranchandramohan

Differential Revision: https://reviews.llvm.org/D108283
The file was modifiedflang/docs/FlangDriver.md
Commit e06767fdcbe3215773c53166b25e2bf24110119f by david.green
[AArch64] Regenerate some test checks. NFC

This regenerates some of the tests that had very-close-to-updated check
line already, in order to make them more maintainable.
The file was modifiedllvm/test/CodeGen/AArch64/sve-split-fp-reduce.ll
The file was modifiedllvm/test/CodeGen/AArch64/fdiv_combine.ll
The file was modifiedllvm/test/CodeGen/AArch64/i128_volatile_load_store.ll
Commit c98a8a09b5eb04882dddd02346e5c3b4c90f038c by sam.parker
[HardwareLoops] Loop guard intrinsic to recognise zext

If a loop count was initially represented by a 32b unsigned int in C
then the hardware-loop pass can recognise the loop guard and insert
the llvm.test.set.loop.iterations intrinsic. If this was instead a
unsigned short/char then clang inserts a zext instruction to expand
the loop count to an i32. This patch adds the necessary pattern
matching to enable the use of lvm.test.set.loop.iterations in those
cases.

Patch by: sherwin-dc

Differential Revision: https://reviews.llvm.org/D109631
The file was modifiedllvm/test/Transforms/HardwareLoops/loop-guards.ll
The file was modifiedllvm/lib/CodeGen/HardwareLoops.cpp
Commit 128a49727a4565617fab3d72e2fe2fe2d8f87ff6 by jay.foad
[AMDGPU] Fix upcoming TableGen warnings on unused template arguments. NFC.

The warning is implemented by D109359 which is still in review.

Differential Revision: https://reviews.llvm.org/D109826
The file was modifiedllvm/lib/Target/AMDGPU/VOP3PInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP3Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/R600Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP2Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/FLATInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/EvergreenInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td
The file was modifiedllvm/lib/Target/AMDGPU/VOPInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.td
The file was modifiedllvm/lib/Target/AMDGPU/SOPInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/BUFInstructions.td
Commit a4e437e3c959ac0cb2edb733d081edc95a4fff22 by sjoerd.meijer
[FuncSpec] Add a test for specialising on a non-constant global argument. NFC.
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization-nonconst-glob.ll
Commit 66249323d25f6db1dc76bd9fb3b9eebe436519a6 by mgorny
[lldb] [gdb-remote] Try using <architecture/> for remote arch unconditionally

Try determining the process architecture from <architecture/> tag
unconditionally, rather than for very specific cases.  Generic gdbserver
implementations do not support LLDB-specific packets used to determine
the process architecture, therefore this fallback is necessary to
support architecture-specific behavior on these targets.  Rather than
maintaining a mapping of all known architectures, just try mapping
the GDB values into triplets, as that is going to work most of the time.

This change is confirmed to fix LLDB against gdbserver when debugging
i386 and aarch64 executables.

Differential Revision: https://reviews.llvm.org/D109272
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py
The file was addedlldb/test/API/functionalities/gdb_remote_client/basic_eh_frame-i386.yaml
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Commit c208deb9008260d3effc00c98493434a65af4b8d by mgorny
[lldb] [ABI/AArch64] Recognize special regs by their xN names too

Recognize lr/sp/fp by their numeric register names in the ABI plugin.
This is necessary to mark them appropriately when interfacing with
gdbserver.

Differential Revision: https://reviews.llvm.org/D109691
The file was modifiedlldb/source/Plugins/ABI/AArch64/ABIAArch64.cpp
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py
Commit 8371a4c9d55997fdc45effbfa5d38d1f19ae3473 by anton.a.afanasyev
[Test][AggressiveInstCombine] Add test for truncation of vector instructions

Precommit test for D109236
The file was addedllvm/test/Transforms/AggressiveInstCombine/trunc_vector_instrs.ll
Commit 6a5f49a1acf861357b9ccb8495e4416878a2a7ad by anton.a.afanasyev
[AggressiveInstCombine] Add `{insert/extract}element` to `TruncInstCombine` DAG

Alive2 for `{insert/extract}element`: https://alive2.llvm.org/ce/z/hwy_E-

Actually, no one file of test suite is touched by this change,
which means that is rare pattern not generated by frontend. But
it's worth being in place.

Differential Revision: https://reviews.llvm.org/D109236
The file was modifiedllvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp
The file was modifiedllvm/test/Transforms/AggressiveInstCombine/trunc_vector_instrs.ll
Commit 9c4a1686d7c487fff8e63fa67e64623eea8986d5 by kadircet
[clangd] Fix clangd crash when including a header

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

SourceLocation of macros change when a header file is included above it. This is not checked when creating a PreamblePatch, resulting in reusing previously built preamble with an incorrect source location for the macro in the example test case.
This patch stores the SourceLocation in the struct TextualPPDirective so that it gets checked when comparing old vs new preambles.

Also creates a preamble patch for code completion parsing so that clangd does not crash when following the example test case with a large file.

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D108045
The file was modifiedclang-tools-extra/clangd/unittests/PreambleTests.cpp
The file was modifiedclang-tools-extra/clangd/Preamble.h
The file was modifiedclang-tools-extra/clangd/ParsedAST.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang-tools-extra/clangd/Preamble.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Commit ceded4153245322c45d28068860fb3d8d0a4884d by Jason Molenda
Don't set executable file in ObjectFileMachO::LoadCoreFileImages

When the corefile reader is adding binaries from the "all image
infos" LC_NOTE in a Mach-O corefile, it would detect if the binary
being added was an executable binary and set it as the Target's
executable binary.  This has the side effect of clearing the Target's
image list, so if the executable was in the middle of the all image
infos, the initial images would be dropped.  There's no need to set
the executable binary in the Target for these corefile processes,
so instead of doing multiple passes over the list to find the
executable, I'm dropping that.
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Commit e4da0f9657b475f62b68a7e7e6cc06855e2f4985 by mkazantsev
[Test] Add test showing missing opportunity in range inference for SCEV
The file was addedllvm/test/Analysis/ScalarEvolution/outer_phi.ll
Commit d2e66d7fa46b14a749ff8686ecccf66292b7bc6b by konstantin.schwarz
[GlobalISel] Add a combine for and(load , mask) -> zextload

This only handles simple masks, not shifted masks, for now.

Reviewed By: aemerson

Differential Revision: https://reviews.llvm.org/D109357
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-load-and-mask.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-and.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-load-and-mask.mir
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/ctlz.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds-alignment.ll
Commit 85f2ae57f713cec55f26b40efb82c4ee8845c27a by sguelton
Be more flexible on the storage type allowed for llvm::Any::TypeId::Id

This is a follow-up to 2c42a73d6c39af3833e697c0b306cb8cf8de5143.
The file was modifiedllvm/test/tools/llvm-shlib/typeids.test
Commit bd590a5f895f50ceb7669de1b4a69bbcc8adb38b by pavel
[lldb] Make Platform::DebugProcess take a Target reference

instead of a pointer. There are just two callers of this function, and
both of them have a valid target pointer, so there's no need for all
implementations to concern themselves with whether the pointer is null.
The file was modifiedlldb/include/lldb/Target/Platform.h
The file was modifiedlldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
The file was modifiedlldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp
The file was modifiedlldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
The file was modifiedlldb/source/Plugins/Platform/Windows/PlatformWindows.h
The file was modifiedlldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
The file was modifiedlldb/source/Target/Platform.cpp
The file was modifiedlldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
The file was modifiedlldb/source/Commands/CommandObjectPlatform.cpp
The file was modifiedlldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h
The file was modifiedlldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
The file was modifiedlldb/source/Target/Target.cpp
The file was modifiedlldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.h
The file was modifiedlldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h
Commit 96ec9b6ff2f0bb9078306e3857f09974603ccbe4 by gabor.marton
[Analyzer] ConversionChecker: track back the cast expression

Adding trackExpressionValue to the checker so it tracks the value of the
implicit cast's DeclRefExpression up to initialization/assignment. This
way the report becomes cleaner.

Differential Revision: https://reviews.llvm.org/D109836
The file was addedclang/test/Analysis/conversion-tracking-notes.c
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
The file was modifiedclang/test/Analysis/conversion.c
Commit 86a58f10284dea118703ecde0ef5b9a4f6e4d8be by mgorny
[lldb] [DynamicRegisterInfo] Pass name/alt_name via RegisterInfo

Remove the name and alt_name parameters from AddRegister() and instead
pass them via RegisterInfo.name and .alt_name fields.  This makes
the API simpler and removes some duplication.

Differential Revision: https://reviews.llvm.org/D109872
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h
Commit 005fc11ebdd6e1af29efee3d7c5da86f56138414 by thomasp
[PGO] Change ThinLTO test for targets with loop unrolling disabled

I am working on a target in a downstream LLVM repo, and it seems that if a target backend chooses to disable loop unrolling this test would fail. A solution would be to modify the test to search for a different string instead.

The specific test checks for `if.true.direct_targ` which appears in the output when thinlto is not used (ie samplepgo). The same is true for `if.false.orig_indirect`.

However, if a target disables loop unrolling in the backend, the test fails as  `if.true.direct_targ` no longer appears, though `if.false.orig_indirect` still does. This can be seen by using a clang pragma to disable loop unrolling in the `unroll()` function.

For reference, the following files are the outputs of the last 2 test functions being compiled as the test case does, with and without thinlto, and with and without loop unrolling on the latest x86 clang build. The loop unrolling pragma was used to simulate the loop unrolling being disabled in a backend.
```
// RUN: %clang_cc1 -O2 -fprofile-sample-use=%S/Inputs/pgo-sample-thinlto-summary.prof %s -emit-llvm -o out.ll
// RUN: %clang_cc1 -O2 -fprofile-sample-use=%S/Inputs/pgo-sample-thinlto-summary.prof %s -emit-llvm -flto=thin -o out.ll
```

Reviewed By: tejohnson

Differential Revision: https://reviews.llvm.org/D109234
The file was modifiedclang/test/CodeGen/pgo-sample-thinlto-summary.c
Commit 1ef62cb20028fb7b75c65badcafec8c4703cbda3 by llvm-dev
[X86] SimplifyDemandedVectorEltsForTargetNode - add PSADBW handling

Peek through PSADBW operands to handle non demanded elements.
The file was modifiedllvm/test/CodeGen/X86/sad_variations.ll
The file was modifiedllvm/test/CodeGen/X86/psadbw.ll
The file was modifiedllvm/test/CodeGen/X86/sad.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 47d57547f43c6cf9404268b8a4c2f75c402615c2 by mgorny
[lldb] [Process/gdb-remote] Alias sp to x31 on AArch64 for gdbserver

Alias the "sp" register to "x31" on AArch64 if one is present and does
not have the alt_name.  This is the case when connecting to gdbserver.

Differential Revision: https://reviews.llvm.org/D109695
The file was modifiedlldb/source/Plugins/ABI/AArch64/ABIAArch64.cpp
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py
The file was modifiedlldb/source/Plugins/ABI/AArch64/ABIAArch64.h
Commit 17f1ccc7590872a4fba6b2194f5fa1203b893ba4 by cullen.rhodes
[AArch64][SVE] NFC: Remove unnecessary if
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 99ece01a0f571f0df129a55bf679f7fbd0b01b75 by thakis
[lldb/win] Fix TestIRMemoryMapWindows.test when running tests in git bash

lit.util.which('link') picks up the wrong link.exe in git bash, leading
to this error:

  # command stderr:
  /usr/bin/link: extra operand '/LIBPATH:C:\\Progra....'
  Try '/usr/bin/link --help' for more information.

Instead, assume that link.exe is next to cl.exe.

Differential Revision: https://reviews.llvm.org/D109832
The file was modifiedlldb/test/Shell/helper/toolchain.py
Commit 951f362e2560fe1c9c05f487107fd9882d45d867 by thakis
[clang-cl] Add a /diasdkdir flag and make /winsysroot imply it

D109708 added "DIA SDK" to our win sysroot for hermetic builds
that use LLVM_ENABLE_DIA_SDK. But the build system still has to
manually pass flags pointing to it.

Since we have a /winsysroot flag, make it look at DIA SDK in
the sysroot.

With this, the following is enough to compile the DIA2Dump example:

out\gn\bin\clang-cl ^
  "sysroot\DIA SDK\Samples\DIA2Dump\DIA2Dump.cpp" ^
  "sysroot\DIA SDK\Samples\DIA2Dump\PrintSymbol.cpp" ^
  "sysroot\DIA SDK\Samples\DIA2Dump\regs.cpp" ^
  /diasdkdir "sysroot\DIA SDK" ^
  ole32.lib oleaut32.lib diaguids.lib

Differential Revision: https://reviews.llvm.org/D109828
The file was modifiedclang/lib/Driver/ToolChains/MSVC.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/test/Driver/cl-sysroot.cpp
Commit 054e331d9dbd3ce98b19625b75ba38dd9ebc34cc by Justas.Janickas
[OpenCL] Supports optional program scope global variables in C++ for OpenCL 2021

Adds support for macro `__opencl_c_program_scope_global_variables`
in C++ for OpenCL 2021 enabling a respective optional core feature
from OpenCL 3.0.

This change aims to achieve compatibility between C++ for OpenCL
2021 and OpenCL 3.0.

Differential Revision: https://reviews.llvm.org/D109305
The file was modifiedclang/include/clang/Basic/OpenCLOptions.h
The file was modifiedclang/test/SemaOpenCL/storageclass.cl
Commit 61f25daa8d1b69dd5138facd5d57a8e3dfa0c5cc by alexandros.lamprineas
[ARM][CMSE] Clear the secure fp-registers when using softfp abi.

When expanding the non-secure call instruction we are emiting code
to clear the secure floating-point registers only if the targeted
architecture has floating-point support. The potential problem is
when the source code containing non-secure calls are built with
-mfloat-abi=soft but some other part of the system has been built
with -mfloat-abi=softfp (soft and softfp are compatible as they use
the same procedure calling standard). In this case floating-point
registers could leak to non-secure state as the non-secure won't
have cleared them assuming no floating point has been used.

Differential Revision: https://reviews.llvm.org/D109153
The file was modifiedllvm/test/CodeGen/ARM/cmse-clear.ll
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was modifiedllvm/test/CodeGen/ARM/cmse.ll
Commit 1bd5ea968e9262a09512a64bca1624818640bc5b by alexandros.lamprineas
[ARM] Mitigate the cve-2021-35465 security vulnurability.

Recently a vulnerability issue is found in the implementation of VLLDM
instruction in the Arm Cortex-M33, Cortex-M35P and Cortex-M55. If the
VLLDM instruction is abandoned due to an exception when it is partially
completed, it is possible for subsequent non-secure handler to access
and modify the partial restored register values. This vulnerability is
identified as CVE-2021-35465.

The mitigation sequence varies between v8-m and v8.1-m as follows:

v8-m.main
---------
mrs        r5, control
tst        r5, #8       /* CONTROL_S.SFPA */
it         ne
.inst.w    0xeeb00a40   /* vmovne s0, s0 */
1:
vlldm      sp           /* Lazy restore of d0-d16 and FPSCR. */

v8.1-m.main
-----------
vscclrm    {vpr}        /* Clear VPR. */
vlldm      sp           /* Lazy restore of d0-d16 and FPSCR. */

More details on
developer.arm.com/support/arm-security-updates/vlldm-instruction-security-vulnerability

Differential Revision: https://reviews.llvm.org/D109157
The file was modifiedclang/docs/ClangCommandLineReference.rst
The file was addedclang/test/Driver/arm-cmse-cve-2021-35465.c
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was addedllvm/test/CodeGen/ARM/cmse-cve-2021-35465-return.ll
The file was modifiedllvm/test/CodeGen/ARM/cmse-vlldm-no-reorder.mir
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.h
The file was addedllvm/test/CodeGen/ARM/cmse-cve-2021-35465.ll
The file was modifiedclang/lib/Driver/ToolChains/Arch/ARM.cpp
The file was modifiedllvm/lib/Target/ARM/ARM.td
Commit 95ba9f957aa9887c0c1d41948529cfe1fc74d889 by fmayer
[hwasan] print globals in symbolizer-friendly format.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D109698
The file was modifiedcompiler-rt/lib/hwasan/hwasan_report.cpp
The file was modifiedcompiler-rt/test/hwasan/TestCases/global.c
Commit 2f97ff8e7bcf35595682b53fce8ecb7b4aabee6d by flo
[SLP] Add additional memory versioning tests.
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks.ll
The file was addedllvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks-in-loops.ll
Commit 05ea321f716390abda1632cca71dc9441662cf62 by thakis
[clang-cl] Fix test after 951f362e256 on systems where default target isn't x86_64
The file was modifiedclang/test/Driver/cl-sysroot.cpp
Commit ab41eef9aca3ad5e9321e045a57d36e288a75d17 by bjorn.a.pettersson
[NewPM] Use a separate struct for ModuleMemorySanitizerPass

Split MemorySanitizerPass into MemorySanitizerPass (as a function
pass) and ModuleMemorySanitizerPass (as a module pass).
Main reason is to make sure that we have a unique mapping from
ClassName to PassName in the new passmanager framework, making it
possible to correctly identify the passes when dealing with options
such as -print-after and -print-pipeline-passes.

This is a follow-up to D105006 and D105007.
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/test/Other/new-pm-print-pipeline.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
Commit 8f8616655c4d643d73601c6bf4b492fb9d3b52c8 by bjorn.a.pettersson
[NewPM] Use a separate struct for ModuleThreadSanitizerPass

Split ThreadSanitizerPass into ThreadSanitizerPass (as a function
pass) and ModuleThreadSanitizerPass (as a module pass).
Main reason is to make sure that we have a unique mapping from
ClassName to PassName in the new passmanager framework, making it
possible to correctly identify the passes when dealing with options
such as -print-after and -print-pipeline-passes.

This is a follow-up to D105006 and D105007.
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h
The file was modifiedllvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
Commit d9fc3d879e6da153f9b892642e2fe28bed6254a7 by bjorn.a.pettersson
[NewPM] Replace 'kasan-module' by 'asan-module<kernel>'

Change the asan-module pass into a MODULE_PASS_WITH_PARAMS in the
pass registry, and add a single parameter called 'kernel' that
can be set instead of having a special pass name 'kasan-module'
to trigger that special pass config.

Main reason is to make sure that we have a unique mapping from
ClassName to PassName in the new passmanager framework, making it
possible to correctly identify the passes when dealing with options
such as -print-after and -print-pipeline-passes.

This is a follow-up to D105006 and D105007.
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
Commit 1b0a71c5fc052322a45a8cb9a9fcaa2c36105b89 by zarko
[PowerPC][AIX] Add support for varargs for complex types on AIX

Remove the previous error and add support for special handling of small
complex types as in PPC64 ELF ABI. As in, generate code to load from
varargs location and pack it in a temp variable, then return a pointer to
the struct.

Reviewed By: sfertile

Differential Revision: https://reviews.llvm.org/D106393
The file was addedclang/test/CodeGen/aix32-complex-varargs.c
The file was modifiedclang/test/CodeGen/ppc64-varargs-complex.c
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
Commit baa18ee63e83ee534a5844e6219665ce42b57707 by zhijian
Add a new API seek for the Cursor class in the DataExtractor.cpp

Summary:

add a new API seek for the Cursor class in the DataExtractor.cpp

Reviewers: James Henderson, Fangrui Song

Differential Revision: https://reviews.llvm.org/D109603
The file was modifiedllvm/unittests/Support/DataExtractorTest.cpp
The file was modifiedllvm/include/llvm/Support/DataExtractor.h
Commit a773db7d76222ccf4365979e01dd582fd2b5b3df by aschwaighofer
Add a command-line flag to control the Swift extended async  frame info.

Introduce a new command-line flag `-swift-async-fp={auto|always|never}`
that controls how code generation sets the Swift extended async frame
info bit. There are three possibilities:

* `auto`: which determines how to set the bit based on deployment target, either
statically or dynamically via `swift_async_extendedFramePointerFlags`.
* `always`: the default, always set the bit statically, regardless of deployment
target.
* `never`: never set the bit, regardless of deployment target.

Patch by Doug Gregor <dgregor@apple.com>

Reviewed By: doug.gregor

Differential Revision: https://reviews.llvm.org/D109392
The file was modifiedllvm/include/llvm/CodeGen/CommandFlags.h
The file was modifiedllvm/include/llvm/Target/TargetOptions.h
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/swift-dynamic-async-frame.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/swift-dynamic-async-frame.ll
The file was modifiedllvm/lib/CodeGen/CommandFlags.cpp
Commit 45a738363ee39754a0e93d9f779bda2cad83fa18 by Jake.Egan
Increase expected line number for ExtDebugInfo.cpp

This patch increases the expected line number for one of the checks so that it doesn't have to be updated for any added/removed lines in the RUN section.

This change is in preparation for the following patch: https://reviews.llvm.org/D109060

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D109541
The file was modifiedclang/test/Modules/ExtDebugInfo.cpp
Commit ea79b77da3eeba926e16c3dd8a4f6626c139e185 by kadircet
[clangd] Dont work on diags if we are not going to emit

Don't install clang-tidy checks and IncludeFixer or process clang diags
when they're going to be dropped. Also disables analysis for some
warnings completely.

Differential Revision: https://reviews.llvm.org/D109884
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
The file was modifiedclang-tools-extra/clangd/ParsedAST.cpp
Commit abe8b354e37d8d6a163a6402d8e68ddcfc462dfc by Yaxun.Liu
Fix vtbl field addr space

Storing the vtable field of an object should use the same address space as
the this pointer. Currently it is assumed to be addr space 0 but this may not
be true.

This assumption (added in 054cc3b1b469de4b0cb25d1dc3af43c679c5dc44) caused
issues for the out-of-tree CHERI targets.

Reviewed by: John McCall, Alexander Richardson

Differential Revision: https://reviews.llvm.org/D109841
The file was modifiedclang/lib/CodeGen/CGClass.cpp
Commit 64fe0458866d7bcadacb776a1fa7d827ba8ab916 by kadircet
[clangd] PreamblePatch should be no-op if includes arent patched

Don't create a useless functional patch with only filename in it when
there is only include directives to be patched but they're not
requested.

Differential Revision: https://reviews.llvm.org/D109880
The file was modifiedclang-tools-extra/clangd/Preamble.cpp
The file was modifiedclang-tools-extra/clangd/unittests/PreambleTests.cpp
Commit 720766a50cab7a143f0aa04e3ae344769072511d by erich.keane
Remove trailing whitespace in ASTReaderDecl.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
Commit ffa5c3a555a8d5d9931d1ae6d6c9e873ff8c5510 by michael.hliao
Fix warning on `llvm-else-after-return`. NFC.
The file was modifiedllvm/lib/Analysis/AliasAnalysis.cpp
Commit cfc74024195e3be44d023a505d80b7e19f4041fc by kazu
[llvm] Use drop_begin (NFC)
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430FrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
The file was modifiedllvm/lib/TextAPI/TextStub.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/TailDuplicator.cpp
The file was modifiedllvm/lib/Target/AVR/AVRFrameLowering.cpp
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Commit f670c5aeeef09cd7b88e72cf8c1f2505d044a8ea by aschwaighofer
Add a new frontend flag `-fswift-async-fp={auto|always|never}`

Summary:
Introduce a new frontend flag `-fswift-async-fp={auto|always|never}`
that controls how code generation sets the Swift extended async frame
info bit. There are three possibilities:

* `auto`: which determines how to set the bit based on deployment target, either
statically or dynamically via `swift_async_extendedFramePointerFlags`.
* `always`: default, always set the bit statically, regardless of deployment
target.
* `never`: never set the bit, regardless of deployment target.

Differential Revision: https://reviews.llvm.org/D109451
The file was addedclang/test/CodeGen/swift-async-extended-fp.c
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
Commit 003fed8269b3f6d2b1618b670fc73d28972999e4 by matthew.voss
[test] Fix test failure in Clang :: Lexer/char-escapes-delimited.c

Specify the C and C++ standards explicitly for this test. This avoids
failures for drivers that default to older standards.

Differential Revision: https://reviews.llvm.org/D109857
The file was modifiedclang/test/Lexer/char-escapes-delimited.c
Commit 1613ab8a4a3e6f8ab74fadd7e9a2dfe2219e3b43 by koraq
[libcxx][libcxxabi] CMAKE_REQUIRED_FLAGS is a string, not a list

When `libcxx` or `libcxxabi` is built with `-DLLVM_USE_SANITIZER=MemoryWithOrigins`
**and** `-DLIBCXX[ABI]_USE_COMPILER_RT=ON`, all of the `LIBCXX[ABI]_SUPPORTS_*_FLAG`
checks fail, since the value of `CMAKE_REQUIRED_FLAGS` is not set correctly.

Bugzilla: https://bugs.llvm.org/show_bug.cgi?id=51774

Reviewed By: #libc, #libc_abi, compnerd, ldionne

Differential Revision: https://reviews.llvm.org/D109342
The file was modifiedlibcxx/cmake/config-ix.cmake
The file was modifiedlibcxxabi/cmake/config-ix.cmake
Commit a2c319fdc6b35ae6d8578459f07c89042775e5ec by koraq
[LLVM][CMake][NFC] Resolve FIXME: Rename LLVM_CMAKE_PATH to LLVM_CMAKE_DIR throughout the project

This way, we do not need to set LLVM_CMAKE_PATH to LLVM_CMAKE_DIR when (NOT LLVM_CONFIG_FOUND)

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D107717
The file was modifiedlldb/cmake/modules/LLDBStandalone.cmake
The file was modifiedlibcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake
The file was modifiedruntimes/CMakeLists.txt
The file was modifiedlld/CMakeLists.txt
The file was modifiedclang/CMakeLists.txt
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTMockLLVMCMakeConfig.cmake
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTUtils.cmake
The file was modifiedllvm/CMakeLists.txt
The file was modifiedlld/Common/CMakeLists.txt
The file was modifiedlldb/source/CMakeLists.txt
The file was modifiedclang/lib/Basic/CMakeLists.txt
The file was modifiedlibunwind/CMakeLists.txt
The file was modifiedflang/CMakeLists.txt
The file was modifiedllvm/include/llvm/Support/CMakeLists.txt
Commit 976d474bec357d7712884ce4691be45d247325bd by cchen
[OpenMP] Support construct trait set for Clang

This patch supports construct trait set selector by using the existed
declare variant infrastructure inside `OMPContext` and simd selector is
currently not supported. The goal of this patch is to pass the declare variant
test inside sollve test suite.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D109635
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was addedclang/test/OpenMP/declare_variant_construct_codegen_1.c
The file was modifiedclang/test/OpenMP/declare_variant_ast_print.cpp
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/declare_variant_ast_print.c
The file was modifiedclang/test/OpenMP/declare_variant_messages.c
The file was modifiedclang/lib/AST/OpenMPClause.cpp
Commit ee2e414dde4f2ea2c758d23cedb07b767b8fd891 by nicolas.vasilache
[mlir][Linalg] Cleanup doc and improve logging and readability in ComprehensiveBufferize.cpp - NFC
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit 2a1ac2e318c60955aecefb493e4707f0d609c35d by sjoerd.meijer
[FuncSpec] Add force flag to test case to trigger the transform. NFC.
The file was modifiedllvm/test/Transforms/FunctionSpecialization/function-specialization-constant-expression.ll
Commit 860cbeb15992a385d9a3fffb3f1a8443cc99b663 by ajcbik
[mlir][sparse] add more asserts to sparse support lib

We are having issues running the integration test of the sparse compiler
on AArch64 (crashing in the lib). This revision adds more assertions.

Reviewed By: jsetoain

Differential Revision: https://reviews.llvm.org/D109861
The file was modifiedmlir/lib/ExecutionEngine/SparseUtils.cpp
Commit aefb81a33a6d44048186010677eb1c0e6c6cac12 by aaron
Removing some spurious whitespace; NFC
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit c5f480fcbec04f46a9cfcad08914665ff83d8d8a by i
[OpenMP] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D109635
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
Commit afb6223bc53034973379863d08cbee322149569e by aaron
Support Unicode 14 identifiers

This update the UAX tables to support new Unicode 14 identifiers.
The file was modifiedclang/lib/Lex/UnicodeCharSets.h
The file was modifiedclang/test/Lexer/unicode.c
Commit 446e21623c285f335714297aa14f13c21b298931 by aktoon
[llvm-profgen] Use context-sensitive byte size cost for preinliner decisions by default

Turn on `use-context-cost-for-preinliner` to use context-sensitive byte size cost for preinliner decisions by default.

This is a more accurate proxy of inline cost than profile size. We tested on our large workload that it delivers measureable CPU improvement.

Differential Revision: https://reviews.llvm.org/D109893
The file was modifiedllvm/test/tools/llvm-profgen/cs-preinline-cost.test
The file was modifiedllvm/tools/llvm-profgen/CSPreInliner.cpp
Commit c0afb0092423a534d6a4f81a233845ef65f93930 by Dávid Bolvanský
[NFC] Added tests for llvm.powi optimizations
The file was addedllvm/test/Transforms/InstCombine/powi.ll
Commit a4a426c9e0da06b9ff4c58d3a15a1e789efebfb6 by Dávid Bolvanský
[InstCombine] Added llvm.powi optimizations

If power is even:
powi(-x, p) -> powi(x, p)
powi(fabs(x), p) -> powi(x, p)
powi(copysign(x, y), p) -> powi(x, p)
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/powi.ll
Commit f1e8ceb3054a02f4225ff7ab74cde10b70826707 by Saleem Abdulrasool
docs: correct SPHNIX document reference

The trailing `>` was missing, which resulted in the reference not being
processed properly.
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit d49cb5b3035b02ffdd0cc8cf4c69c6e5369558f6 by aeubanks
[SimplifyCFG] Add bonus when seeing vector ops to branch fold to common dest

This makes some tests in vector-reductions-logical.ll more stable when
applying D108837.

The cost of branching is higher when vector ops are involved due to
potential SLP transformations.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D108935
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll
Commit 106959acc15c4b98e252af0c43406aa9342a2e05 by Vang.Thao
[AMDGPU] Inline non-kernel functions using extern lds

In https://reviews.llvm.org/D100481, forceful inline of all non-kernel
functions using lds was disabled since AMDGPULowerModuleLDS pass now handles
static lds. However that pass does not handle extern lds so non-kernel
functions using extern lds must sill be inline.

Reviewed By: hsmhsm, arsenm

Differential Revision: https://reviews.llvm.org/D109773
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/hip.extern.shared.array.ll
Commit c96d45700f6d3cb2b8d1972bb8de03522b3ff8d7 by Jonas Devlieghere
[lldb] Remove SBExecutionContext::reset (NFC)

This is a protected function that's not implemented.
The file was modifiedlldb/include/lldb/API/SBExecutionContext.h
Commit b4fa71eed34d967195514fe9b0a5211fca2bc5bc by akhuang
[LLD] Remove global state in lld/COFF

This patch removes globals from the lldCOFF library, by moving globals
into a context class (COFFLinkingContext) and passing it around wherever
it's needed.

See https://lists.llvm.org/pipermail/llvm-dev/2021-June/151184.html for
context about removing globals from LLD.

I also haven't moved the `driver` or `config` variables yet.

Differential Revision: https://reviews.llvm.org/D109634
The file was modifiedlld/COFF/PDB.h
The file was modifiedlld/COFF/MarkLive.h
The file was modifiedlld/COFF/ICF.h
The file was modifiedlld/COFF/MinGW.h
The file was modifiedlld/COFF/MapFile.h
The file was modifiedlld/include/lld/Common/Timer.h
The file was modifiedlld/COFF/InputFiles.cpp
The file was addedlld/COFF/COFFLinkerContext.cpp
The file was modifiedlld/COFF/Driver.h
The file was modifiedlld/COFF/SymbolTable.h
The file was modifiedlld/COFF/ICF.cpp
The file was modifiedlld/COFF/LLDMapFile.cpp
The file was modifiedlld/COFF/Chunks.cpp
The file was modifiedlld/COFF/TypeMerger.h
The file was modifiedlld/COFF/CMakeLists.txt
The file was modifiedlld/COFF/CallGraphSort.h
The file was modifiedlld/COFF/Writer.cpp
The file was modifiedlld/COFF/MapFile.cpp
The file was modifiedlld/COFF/DLL.h
The file was modifiedlld/COFF/CallGraphSort.cpp
The file was modifiedlld/Common/Timer.cpp
The file was modifiedlld/COFF/PDB.cpp
The file was modifiedlld/COFF/SymbolTable.cpp
The file was modifiedlld/COFF/MarkLive.cpp
The file was modifiedlld/COFF/DebugTypes.cpp
The file was modifiedllvm/utils/gn/secondary/lld/COFF/BUILD.gn
The file was modifiedlld/COFF/DLL.cpp
The file was modifiedlld/COFF/DebugTypes.h
The file was modifiedlld/COFF/MinGW.cpp
The file was modifiedlld/COFF/Writer.h
The file was modifiedlld/COFF/LTO.cpp
The file was modifiedlld/COFF/LLDMapFile.h
The file was modifiedlld/COFF/InputFiles.h
The file was modifiedlld/COFF/LTO.h
The file was addedlld/COFF/COFFLinkerContext.h
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/COFF/Chunks.h
Commit 73e5b9ea90ba857dd7f0f6b79dc39dfc90ad66ea by craig.topper
[RISCV] Select (srl (sext_inreg X, i32), uimm5) to SRAIW if only lower 32 bits are used.

SimplifyDemandedBits can turn srl into sra if the bits being shifted
in aren't demanded. This patch can recover the original sra in some cases.

I've renamed the tablegen class for detecting W users since the "overflowing operator"
term I originally borrowed from Operator.h does not include srl.

Reviewed By: luismarques

Differential Revision: https://reviews.llvm.org/D109162
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoM.td
The file was modifiedllvm/test/CodeGen/RISCV/rv64i-exhaustive-w-insts.ll
The file was modifiedllvm/test/CodeGen/RISCV/srem-lkk.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.td
Commit 22f01cd4fc5d2a02a156722e1dab0398fc860e74 by Jake.Egan
[AIX][ZOS] Disable LIT tests on AIX and z/OS due to lack of Objective-C support

AIX and z/OS lack Objective-C support, so mark these tests as unsupported for AIX and z/OS.

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D109060
The file was modifiedclang/test/Modules/module_file_info.m
The file was modifiedclang/test/Modules/DebugInfoNamespace.cpp
The file was modifiedclang/test/PCH/objcxx-ivar-class.mm
The file was modifiedclang/test/Modules/DebugInfoTransitiveImport.m
The file was modifiedclang/test/Modules/merge-record-definition.m
The file was modifiedclang/test/Import/objc-definitions-in-expression/test.m
The file was modifiedclang/test/Modules/ModuleDebugInfoDwoId.cpp
The file was modifiedclang/test/PCH/objc_literals.mm
The file was modifiedclang/test/Modules/ExtDebugInfo.cpp
The file was modifiedclang/test/Modules/use-exportas-for-link.m
The file was modifiedclang/test/Import/objc-param-decl/test.m
The file was modifiedclang/test/Import/objc-arc/test-cleanup-object.m
The file was modifiedclang/test/Modules/direct-module-import.m
The file was modifiedclang/test/PCH/objc_container.m
The file was modifiedclang/test/Modules/autolinkTBD.m
The file was addedclang/test/CodeGenObjCXX/lit.local.cfg
The file was modifiedclang/test/PCH/pending-ids.m
The file was modifiedclang/test/Import/objc-autoreleasepool/test.m
The file was modifiedclang/test/PCH/objc_literals.m
The file was modifiedclang/test/Import/objc-try-catch/test.m
The file was modifiedclang/test/PCH/externally-retained.m
The file was modifiedclang/test/Modules/objc-initializer.m
The file was modifiedclang/test/Modules/ModuleModuleDebugInfo.cpp
The file was modifiedclang/test/Modules/merge-record-definition-nonmodular.m
The file was addedclang/test/CodeGenObjC/lit.local.cfg
The file was modifiedclang/test/Modules/cxx-irgen.cpp
The file was modifiedclang/test/Modules/ExtDebugInfo.m
The file was modifiedclang/test/Modules/debug-info-moduleimport.m
The file was modifiedclang/test/Modules/merge-record-definition-visibility.m
The file was modifiedclang/test/Modules/pch-used.m
The file was modifiedclang/test/Modules/autolink.m
The file was modifiedclang/test/Import/forward-declared-objc-class/test.m
The file was modifiedclang/test/Import/objc-method/test.m
The file was modifiedclang/test/PCH/irgen-rdar13114142.mm
Commit 6b20ea6963561f2c91490c0993390b7f2ff8f71c by tra
[CUDA] Pass ExecConfig through BuildCallToMemberFunction

Otherwise, we fail to compile calls to CUDA kernels that are static members.

Differential Revision: https://reviews.llvm.org/D108787
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/SemaCUDA/kernel-call.cu
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
Commit e03c7e367adb8f228332e3c2ef8f45484597b719 by akhuang
[lld] Add test to check for timer output

This test checks that timers are working and printing as expected.

I also seem to have changed the order of the timers in my globals refactoring
patch, so I fixed it here.

Differential Revision: https://reviews.llvm.org/D109904
The file was modifiedlld/COFF/COFFLinkerContext.h
The file was modifiedlld/COFF/COFFLinkerContext.cpp
The file was addedlld/test/COFF/timers.ll
Commit 8662a2f2081c2a6bf51a490caa045648c88dd230 by rob.suderman
[mlir][tosa] Relax ranked constraint on quantization builder

TosaOp defintion had an artificial constraint that the input/output types
needed to be ranked to invoke the quantization builder. This is correct as an
unranked tensor could still be quantized.

Reviewed By: NatashaKnk

Differential Revision: https://reviews.llvm.org/D109863
The file was modifiedmlir/lib/Dialect/Tosa/Utils/QuantUtils.cpp
The file was modifiedmlir/lib/Dialect/Tosa/IR/TosaOps.cpp
Commit 5de8c7f1387dd5e2ad3b79a145baf41b21fa4952 by mvanotti
[fuzzer][fuchsia] Close exception channel before exiting.

On Fuchsia, killing or exiting a process that has a thread listening to its own process's debugger exception channel can hang. Zircon may kill all the threads, send a synthetic exceptions to debugger, and wait for the debugger to have received them. This means the thread listening to the debug exception channel may be killed even as Zircon is waiting for that thread to drain the exception channel, and the process can become stuck in a half-dead state.

This situation is "weird" as it only arises when a process is trying to debug itself. Unfortunately, this is exactly the scenario for libFuzzer on Fuchsia: FuzzerUtilFuchsia spawns a crash-handling thread that acts like a debugger in order to be able to rewrite the crashed threads stack and resume them into libFuzzer's usual POSIX signal handlers. In practice, approximately 25% of fuzzers appear to hang on exit, after generating output and artifacts. These processes hang around until the platform is torn done, which is typically a ClusterFuzz VM. Thus, real-world impact has been somewhat mitigated. The issue should still be resolved for local users, though.

This change improves the behavior of exit() in libFuzzer by adding an atexit handler which closes an event shared with the crash handling thread. This signals to the crash handler that it should close the exception channel and be joined before the process actually exits.

Reviewed By: charco

Differential Revision: https://reviews.llvm.org/D109258
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp
Commit a2fd05ada9030eab2258fff25e77a05adccae128 by akhuang
Temporarily revert "[LLD] Remove global state in lld/COFF" and "[lld] Add test to
check for timer output"

Seems to be causing a number of asan test failures.

This reverts commit b4fa71eed34d967195514fe9b0a5211fca2bc5bc
and e03c7e367adb8f228332e3c2ef8f45484597b719.
The file was modifiedlld/COFF/MapFile.cpp
The file was modifiedlld/COFF/LTO.cpp
The file was modifiedlld/COFF/LTO.h
The file was removedlld/COFF/COFFLinkerContext.h
The file was modifiedlld/COFF/CMakeLists.txt
The file was modifiedlld/COFF/CallGraphSort.h
The file was modifiedlld/COFF/SymbolTable.h
The file was modifiedlld/COFF/Driver.h
The file was modifiedlld/COFF/TypeMerger.h
The file was removedlld/test/COFF/timers.ll
The file was modifiedlld/COFF/Writer.h
The file was modifiedlld/COFF/MarkLive.h
The file was removedlld/COFF/COFFLinkerContext.cpp
The file was modifiedlld/COFF/MapFile.h
The file was modifiedlld/COFF/DebugTypes.h
The file was modifiedlld/COFF/CallGraphSort.cpp
The file was modifiedlld/COFF/MinGW.h
The file was modifiedlld/COFF/LLDMapFile.cpp
The file was modifiedlld/COFF/LLDMapFile.h
The file was modifiedlld/COFF/PDB.cpp
The file was modifiedlld/COFF/DLL.h
The file was modifiedlld/COFF/Chunks.cpp
The file was modifiedllvm/utils/gn/secondary/lld/COFF/BUILD.gn
The file was modifiedlld/COFF/DebugTypes.cpp
The file was modifiedlld/COFF/DLL.cpp
The file was modifiedlld/COFF/ICF.cpp
The file was modifiedlld/COFF/MinGW.cpp
The file was modifiedlld/COFF/MarkLive.cpp
The file was modifiedlld/COFF/PDB.h
The file was modifiedlld/COFF/ICF.h
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/include/lld/Common/Timer.h
The file was modifiedlld/COFF/SymbolTable.cpp
The file was modifiedlld/COFF/InputFiles.h
The file was modifiedlld/COFF/InputFiles.cpp
The file was modifiedlld/Common/Timer.cpp
The file was modifiedlld/COFF/Writer.cpp
The file was modifiedlld/COFF/Chunks.h
Commit 0fc624f029f568e91caf74d90abc5d8d971151c2 by nikita.ppv
[IR] Return AAMDNodes from Instruction::getMetadata() (NFC)

getMetadata() currently uses a weird API where it populates a
structure passed to it, and optionally merges into it. Instead,
we can return the AAMDNodes and provide a separate merge() API.
This makes usages more compact.

Differential Revision: https://reviews.llvm.org/D109852
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/lib/Transforms/IPO/ArgumentPromotion.cpp
The file was modifiedllvm/include/llvm/IR/Instruction.h
The file was modifiedllvm/lib/Analysis/MemoryLocation.cpp
The file was modifiedpolly/lib/Analysis/ScopDetection.cpp
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was modifiedllvm/include/llvm/IR/Metadata.h
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Transforms/IPO/FunctionAttrs.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit f79ce5875f560528c801c404b1be1ce3e203c2e1 by listmail
autogen a SCEV test for ease of update
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
Commit 88cb3e2cb6fe80dec27d8ed3cad0f63555470910 by tejohnson
[MemProf] Don't instrument stack accesses unless requested

Skip stack accesses unless requested, as the memory profiler runtime
does not currently look at or report accesses for these addresses.

Differential Revision: https://reviews.llvm.org/D109868
The file was addedllvm/test/Instrumentation/HeapProfiler/stack.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/MemProfiler.cpp
Commit 45a8608d7ba4519ce890b74db20087ba22343c50 by i
[OpenMP] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D109635
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
Commit 47dd1f642846d476e3d789f4aa941699dc0ed3fe by augusto2112
[lldb] Skip TestAppleSimulatorOSType if json parsing fails

xcodebuild, which is invoked by the apple_simulator_test decorator, may
may return a successful status even if it was unable to run due to the
authorization agent denying it. This causes the TestAppleSimulatorOSType
to run when it shouldn't, and throw an excpection when parsing the JSON
that lists the simulators available. Wrap the json parsing in a
try/except block and if it fails, skip the ttest.

Differential Revision: https://reviews.llvm.org/D109336
The file was modifiedlldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
Commit df7c2bcf4e45e8e20539d9024893c42f6cf1c0fd by listmail
precommit tests for D109457
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
Commit 4c1023b4b7900db3ddeec16e16018c1413ecc3db by jacob.lambert
[AMDGPU] NFC: Fixing small spelling errors in AMDGPU header files

Nonfunctional commit fixing several minor spelling errors in llvm/lib/Target/AMDGPU header files.
Testing workflow as a new contributor.

Differential Revision: https://reviews.llvm.org/D109733
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
The file was modifiedllvm/lib/Target/AMDGPU/R600InstrInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPU.h
The file was modifiedllvm/lib/Target/AMDGPU/GCNSchedStrategy.h
The file was modifiedllvm/lib/Target/AMDGPU/GCNSubtarget.h
Commit a65f6aafe2d357cd83de62832a2bdae49a2d6749 by apl
[lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings

I have 2 goals with this change:
1. Disambiguate between CPlusPlus::FindAlternateFunctionManglings and
   IRExecutionUnit::FindBestAlternateMangledName. These are named very
   similar things, they try to do very similar things, but their
   approaches are different. This change should make it clear that one
   is generating possible alternate manglings (through some
   heuristics-based approach) and the other is finding alternate
   manglings (through searching the SymbolFile for potential matches).
2. Change GenerateAlternateFunctionManglings from a static method in
   CPlusPlusLanguage to a virtual method in Language. This will allow us
   to remove a direct use of CPlusPlusLanguage in IRExecutionUnit,
   further pushing it to be more general. This change doesn't meet this
   goal completely but allows for it to happen later.

Though this doesn't remove IRExecutionUnit's dependency on
CPlusPlusLanguage, it does bring us closer to that goal.

Differential Revision: https://reviews.llvm.org/D109785
The file was modifiedlldb/source/Expression/IRExecutionUnit.cpp
The file was modifiedlldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
The file was modifiedlldb/include/lldb/Target/Language.h
The file was modifiedlldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
The file was modifiedlldb/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp
Commit 7eb67748f9d7186419d678e807c01fc2a3811a80 by Vedant Kumar
[MachCore] Report arm64 thread exception state

A MachO userspace corefile may contain LC_THREAD commands which specify
thread exception state.

For arm64* only (for now), report a human-readable version of this state
as the thread stop reason, instead of 'SIGSTOP'.

As a follow-up, similar functionality can be implemented for x86 cores
by translating the trapno/err exception registers.

rdar://82898146

Differential Revision: https://reviews.llvm.org/D109795
The file was addedlldb/include/lldb/Target/AppleArm64ExceptionClass.def
The file was modifiedlldb/include/lldb/module.modulemap
The file was addedlldb/test/API/macosx/corefile-exception-reason/Makefile
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
The file was modifiedlldb/source/Plugins/Process/mach-core/ThreadMachCore.cpp
The file was addedlldb/include/lldb/Target/AppleArm64ExceptionClass.h
The file was addedlldb/test/API/macosx/corefile-exception-reason/TestCorefileExceptionReason.py
The file was addedlldb/test/API/macosx/corefile-exception-reason/main.cpp
Commit 79e48f3c7c8ca205048f584b7658ef001a677c6d by Vedant Kumar
Revert "[MachCore] Report arm64 thread exception state"

This reverts commit 7eb67748f9d7186419d678e807c01fc2a3811a80. It causes
TestMachCore.MachCoreTestCase to fail.
The file was removedlldb/test/API/macosx/corefile-exception-reason/main.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
The file was removedlldb/test/API/macosx/corefile-exception-reason/TestCorefileExceptionReason.py
The file was modifiedlldb/include/lldb/module.modulemap
The file was removedlldb/test/API/macosx/corefile-exception-reason/Makefile
The file was removedlldb/include/lldb/Target/AppleArm64ExceptionClass.h
The file was removedlldb/include/lldb/Target/AppleArm64ExceptionClass.def
The file was modifiedlldb/source/Plugins/Process/mach-core/ThreadMachCore.cpp
Commit 8fb86011026c56204e54a2806d598249c6297d08 by augusto2112
Revert "[lldb] Skip TestAppleSimulatorOSType if json parsing fails"

This reverts commit 47dd1f642846d476e3d789f4aa941699dc0ed3fe.
After discussing with Jim Ingham, we agreed to leave the test as-is
so we can catch any CI problems instead of silently skipping the test.
The file was modifiedlldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
Commit 2aa8474210044e41b527bd68870991b4104c4f2f by gcmn
[Bazel] Use posix definitions for FreeBSD

Presently, definitions default to those for Linux which are not defined for FreeBSD (HAVE_LSEEK64, HAVE_MALLINFO, etc.).  Patch sets os_defines to posix definitions under FreeBSD.

Reviewed By: GMNGeoffrey

Differential Revision: https://reviews.llvm.org/D109913
The file was modifiedutils/bazel/llvm-project-overlay/llvm/config.bzl
Commit e6020b2a42245d888e941eba66fbce9d0c4ab0a8 by danielrodriguez
[clang][NFC] refactor GlobalMethodPool to encapsulate its map

This refactor changes the GlobalMethodPool to a class that contains
the DenseMap of methods. This is to allow for the addition of a
separate DenseSet in a follow-up diff that will handle method
de-duplication when inserting methods into the global method pool.

Changes:
  - the `GlobalMethods` pair becomes `GlobalMethodPool::Lists`
  - the `GlobalMethodPool` becomes a class containing the `DenseMap` of methods
  - pass through methods are added to maintain most of the existing code without changing `MethodPool` -> `MethodPool.Methods` everywhere

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D109898
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
Commit 233b42a8bbdc4e604b6f3454d8d91702bebe008b by ajcbik
[mlir][sparse] remove unused TENSOR environment

Reviewed By: bixia

Differential Revision: https://reviews.llvm.org/D109919
The file was modifiedmlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cast.mlir
Commit 04a66f8d2b8f3dfba32ba3f7652dbeb3427a3df4 by ravishankarm
Fixing vector add pattern that incorrectly returns success.

The pattern is returning success even if it does no work leading to pattern application running up to the max iteration count and failing.

Reviewed By: nicolasvasilache, mravishankar

Differential Revision: https://reviews.llvm.org/D109791
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
Commit 65feb9f4447364e103f17e6feec552a3c51ccb86 by 31459023+hctim
[symbolizer] Change libcxx paths in buildscript.

D107799 changed the paths from lib/libcxx(abi)?.a to
lib/<triple>/libcxx(abi)?.a. The build script needs to know to pick up
the files from the triple subfolder instead.

See https://lab.llvm.org/buildbot/#/builders/37/builds/6764 for buildbot log failure.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D109924
The file was modifiedcompiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
Commit 4b19e7dfaee9a966f4bfb8e4378adb3bd43539de by Jon Roelofs
[LoopIdiomRecognize][Remarks] Track loop-strided store to/from blocks

Differential revision: https://reviews.llvm.org/D109929
The file was modifiedllvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
The file was modifiedllvm/test/Transforms/LoopIdiom/memset-debugify-remarks.ll
The file was modifiedllvm/test/Transforms/LoopIdiom/memcpy-debugify-remarks.ll
Commit 5f2b7879f16ad5023f0684febeb0a20f7d53e4a8 by dsuchkov
NFC. Add tests exposing missing analysis invalidation in LoopPredication.
The file was addedllvm/test/Transforms/LoopPredication/invalidate-analyses.ll
Commit 0e362883182db53da9d6dd8e90f8eafb4e3b916c by dsuchkov
[LoopPredication] Report changes correctly when attempting loop exit predication

To make the IR easier to analyze, this pass makes some minor transformations.
After that, even if it doesn't decide to optimize anything, it can't report that
it changed nothing and preserved all the analyses.

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D109855
The file was modifiedllvm/lib/Transforms/Scalar/LoopPredication.cpp
The file was modifiedllvm/test/Transforms/LoopPredication/invalidate-analyses.ll
Commit d9195d6603f2c95124e29beacec9129ae8fd616e by pklausler
[flang] More precise checks for NULL() operands

Improve checking for NULL() and NULL(MOLD=) when used as
variables and expressions outside the few contexts where
a disassociated pointer can be valid.  There were both
inappropriate errors and missing checks.

Differential Revision: https://reviews.llvm.org/D109905
The file was modifiedflang/include/flang/Evaluate/expression.h
The file was modifiedflang/test/Semantics/resolve63.f90
The file was modifiedflang/lib/Semantics/check-call.cpp
The file was modifiedflang/lib/Semantics/expression.cpp
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedflang/lib/Evaluate/tools.cpp
Commit 646299d183ca72cbafd3a2d64629ce8cb3fcdd9d by thakis
[Support] Convert BinaryStream class zoo to 64-bit offsets

Most PDB fields on disk are 32-bit but describe the file in terms of MSF
blocks, which are 4 kiB by default.

So PDB files can be a bit larger than 4 GiB, and much larger if you create them
with a block size > 4 kiB.

This is a first (necessary, but by far not not sufficient) step towards
supporting such PDB files.  Now we don't truncate in-memory file offsets (which
are in terms of bytes, not in terms of blocks).

No effective behavior change. lld-link will still error out if it were to
produce PDBs > 4 GiB.

Differential Revision: https://reviews.llvm.org/D109923
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeEnumInjectedSources.cpp
The file was modifiedllvm/unittests/DebugInfo/MSF/MappedBlockStreamTest.cpp
The file was modifiedllvm/include/llvm/Support/BinaryStreamReader.h
The file was modifiedllvm/lib/Support/BinaryStreamReader.cpp
The file was modifiedllvm/tools/llvm-pdbutil/LinePrinter.cpp
The file was modifiedllvm/include/llvm/Support/BinaryByteStream.h
The file was modifiedllvm/unittests/Support/BinaryStreamTest.cpp
The file was modifiedllvm/include/llvm/Support/BinaryItemStream.h
The file was modifiedllvm/include/llvm/Support/BinaryStreamWriter.h
The file was modifiedllvm/tools/llvm-pdbutil/LinePrinter.h
The file was modifiedllvm/include/llvm/Support/BinaryStream.h
The file was modifiedllvm/include/llvm/Support/BinaryStreamRef.h
The file was modifiedllvm/lib/DebugInfo/MSF/MappedBlockStream.cpp
The file was modifiedllvm/include/llvm/DebugInfo/MSF/MappedBlockStream.h
The file was modifiedllvm/lib/Support/BinaryStreamRef.cpp
The file was modifiedllvm/lib/Support/BinaryStreamWriter.cpp
Commit 19afc495dc2797803b3da7f0797f214483215bb8 by pklausler
[flang] Enforce array conformance in actual arguments to ELEMENTALs

When the shapes of actual arguments to ELEMENTAL procedures are
sufficiently well known during semantics, require them to conform.

Differential Revision: https://reviews.llvm.org/D109909
The file was addedflang/test/Semantics/call22.f90
The file was modifiedflang/lib/Semantics/check-call.cpp
Commit fe950cba8f463562072e196a01409425b6ca0d40 by dsuchkov
Update LoopPredication test to fix buildbot failure.

This patch updates tests added in 5f2b7879f16ad5023f0684febeb0a20f7d53e4a8.
The file was modifiedllvm/test/Transforms/LoopPredication/invalidate-analyses.ll
Commit 78b083dbb725e1ec568d1b8ee523f5f025d25798 by Lang Hames
[ORC] Add finalization & deallocation actions, SimpleExecutorMemoryManager class

Finalization and deallocation actions are a key part of the upcoming
JITLinkMemoryManager redesign: They generalize the existing finalization and
deallocate concepts (basically "copy-and-mprotect", and "munmap") to include
support for arbitrary registration and deregistration of parts of JIT linked
code. This allows us to register and deregister eh-frames, TLV sections,
language metadata, etc. using regular memory management calls with no additional
IPC/RPC overhead, which should both improve JIT performance and simplify
interactions between ORC and the ORC runtime.

The SimpleExecutorMemoryManager class provides executor-side support for memory
management operations, including finalization and deallocation actions.

This support is being added in advance of the rest of the memory manager
redesign as it will simplify the introduction of an EPC based
RuntimeDyld::MemoryManager (since eh-frame registration/deregistration will be
expressible as actions). The new RuntimeDyld::MemoryManager will in turn allow
us to remove older remote allocators that are blocking the rest of the memory
manager changes.
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Shared/TargetProcessControlTypes.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManagerTest.cpp
The file was addedllvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.h
The file was modifiedllvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
The file was addedllvm/unittests/ExecutionEngine/Orc/SimpleExecutorMemoryManagerTest.cpp
The file was addedllvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.cpp
The file was addedllvm/include/llvm/ExecutionEngine/Orc/TargetProcess/ExecutorBootstrapService.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp
Commit a9a6cdc1bdc0beeb55129e2b502b7c73101e139a by llvmgnsyncbot
[gn build] Port 78b083dbb725
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn
Commit 47373f94a431d7fcc78c760ca6ca321f3742b746 by leonardchan
[compiler-rt][test] Add int128 requirement to TestCases/Misc/Linux/static-link.cpp

We hit some undefined symbol errors to 128-bit floating point functions when linking this test.

ld.lld: error: undefined symbol: __multf3
>>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a
>>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a
>>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a
>>> referenced 4 more times
>>> did you mean: __muldf3
>>> defined in: /usr/local/google/home/leonardchan/llvm-monorepo/llvm-build-1-master-fuchsia-toolchain/lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu/libclang_rt.builtins.a

Host libc expects these to be defined, and compiler-rt will only define these
for certain platforms (see definition for CRT_LDBL_128BIT). Since we likely
can't do anything about the host libc, we can at least restrict the test to
check that these functions are supported.

Differential Revision: https://reviews.llvm.org/D109709
The file was modifiedcompiler-rt/test/ubsan/TestCases/Misc/Linux/static-link.cpp
Commit 26aff847d8860c14bc3e829e4bfe7980058504c0 by pklausler
[flang] Fold COUNT()

Complete folding of the intrinsic reduction function COUNT() for all
cases, including partial reductions with DIM= arguments.

Differential Revision: https://reviews.llvm.org/D109911
The file was modifiedflang/lib/Evaluate/fold-integer.cpp
The file was modifiedflang/lib/Evaluate/fold-implementation.h
The file was modifiedflang/lib/Evaluate/CMakeLists.txt
The file was modifiedflang/lib/Evaluate/fold-logical.cpp
The file was addedflang/lib/Evaluate/fold-reduction.cpp
The file was modifiedflang/lib/Evaluate/fold-reduction.h
The file was addedflang/test/Evaluate/folding29.f90
Commit 1d08a19a38a588a1ba39d1e0776ea331a451debd by i
[ELF] Clarify --export-dynamic-symbol/--dynamic-list. NFC
The file was modifiedlld/ELF/Driver.cpp
Commit f4092c769031f4dde5844ce57f1d47a7e7080311 by leonardchan
[compiler-rt][test] Ensure CMAKE_SYSROOT is added as a test cflag if provided

When running tests like SanitizerCommon-asan-x86_64-Linux :: Linux/crypt_r.cpp,
it may attempt to use the host header crypt.h rather than a sysroot header.
This is significant in the event where struct crypt_data defined on host is
different from the sysroot used to make the sanitizer runtime libraries. This
can result in logical differences between the expected size/layout of struct
crypt_data known by sanitizers and the strict crypt_data provided by the host crypt.h.

Since tests should still use the CMAKE_SYSROOT, this ensures that CMAKE_SYSROOT
is propagated to compiler-rt tests.

Differential Revision: https://reviews.llvm.org/D109796
The file was modifiedcompiler-rt/test/sanitizer_common/CMakeLists.txt
Commit cc8229603b67763e77a46894f88f7d3ddd04de34 by danielrodriguez
Extract LC_CODE_SIGNATURE related implementation out of LLD

Move the functionality in lld that handles writing of the LC_CODE_SIGNATURE load command and associated data section to a central reusable location.

This change is in preparation for another change that modifies llvm-objcopy to reproduce the LC_CODE_SIGNATURE load command and corresponding
data section to maintain the validity of signed macho object files passed through llvm-objcopy.

Reviewed By: #lld-macho, int3, oontvoo

Differential Revision: https://reviews.llvm.org/D109803
The file was modifiedllvm/lib/Object/CMakeLists.txt
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedllvm/include/llvm/Object/MachO.h
The file was modifiedlld/MachO/SyntheticSections.h
The file was addedllvm/lib/Object/CodeSignatureSection.cpp
Commit 2755670411d229bf134335d3b6ab071cf173a942 by llvmgnsyncbot
[gn build] Port cc8229603b67
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Object/BUILD.gn
Commit aaf00f3f19c1be69ce10d53236f824c2580c2139 by danielrodriguez
Add MachO signature verification test

Add a test to ensure that MachO files including
a LC_CODE_SIGNATURE load command produced by lld
are signed correctly.

Reviewed By: #lld-macho, int3

Differential Revision: https://reviews.llvm.org/D109840
The file was addedlld/test/MachO/Inputs/code-signature-check.py
The file was addedlld/test/MachO/adhoc-codesign-hash.s
Commit e9e1d4751b54126743ed72b1a9178ee51200acf6 by pengfei.wang
[X86] Refactor GetSSETypeAtOffset to fix pr51813

D105263 adds support for _Float16 type. It introduced a bug (pr51813) that generates a <4 x half> type instead the default double when passing blank structure by SSE registers.

Although I doubt it may expose a bug somewhere other than D105263, it's good to avoid return half type when no half type in arguments.

Reviewed By: LuoYuanke

Differential Revision: https://reviews.llvm.org/D109607
The file was modifiedclang/test/CodeGen/X86/avx512fp16-abi.c
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
Commit 167ff5280d7fcad731810d5d2bf10561ed2adacc by Christudasan.Devadasan
[GlobalOpt] Do not shrink global to bool for an unfavorable AS

Do not call `TryToShrinkGlobalToBoolean` for address spaces
that don't allow initializers. It inserts an initializer value
while shrinking to bool. Used the target hook introduced with
D109337 to skip this call for the restricted address spaces.

Reviewed By: tra

Differential Revision: https://reviews.llvm.org/D109823
The file was modifiedllvm/lib/Transforms/IPO/GlobalOpt.cpp
The file was addedllvm/test/Transforms/GlobalOpt/shrink-global-to-bool.ll
Commit 6403f716f129bb9edad9423cf1c23dc8e29a41d5 by VenkataRamanaiah.Nalamothu
[NFC][MachineRegisterInfo] Fix typo in comments of getLiveInVirtReg() function

Reviewed By: scott.linder

Differential Revision: https://reviews.llvm.org/D109743
The file was modifiedllvm/include/llvm/CodeGen/MachineRegisterInfo.h
Commit b588f5d665aa01fe88921fe2ffb7256fdedfbfb0 by brad
[clang][scan-build] Use cc/c++ instead of gcc/g++ on OpenBSD.

Differential Revision: https://reviews.llvm.org/D109349
The file was modifiedclang/tools/scan-build/libexec/ccc-analyzer
Commit ed921282e551f2252ccfcbddd7a85ad8a006ed3f by rasmussen17
[flang] Make 'this_image()' an intrinsic function

Added 'this_image()' to the list of functions that are evaluated as intrinsic.
Added IsCoarray functions to determine if an expression is a coarray (corank > 1).

Added save attribute to coarray variables in test file, this_image.f90.

reviewers: klausler, PeteSteinfeld

Differential Revision: https://reviews.llvm.org/D108059
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
The file was modifiedflang/lib/Evaluate/tools.cpp
The file was addedflang/test/Semantics/this_image.f90
The file was modifiedflang/include/flang/Evaluate/tools.h
The file was modifiedflang/test/Semantics/call10.f90
The file was modifiedflang/docs/Intrinsics.md
Commit fc08cfb8884db2f0a871479f7fc640e364a9ffe9 by peter
CodeView: static_cast result of getOffset() to size_t.

Silences a narrowing conversion warning on 32-bit platforms after D109923.
The file was modifiedllvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp
Commit 63838d88145feaeb839efff8f40ab1e98597e423 by Lang Hames
[examples] Fix SectionMemoryManager deconstruction error with MSVC.

This commit fixes an order-of-initialization issue: If the default mmapper
object is destroyed while some global SectionMemoryManager is still using it
then calls to the mapper from ~SectionMemoryManager will fail. This issue was
causing failures when running the LLVM Kaleidoscope examples on windows.

Switching to a ManagedStatic solves the initialization order issue.

Patch by Justice Adams. Thanks Justice!

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D107087
The file was modifiedllvm/lib/ExecutionEngine/SectionMemoryManager.cpp
Commit 97cc678cc4a226119ab48d399fd277283f4acc2d by sjoerd.meijer
[FuncSpec] Specialising on addresses of const global values.

This introduces an option to allow specialising on the address of global
values. This option is off by default because it is likely not that profitable
to do so and needs more investigation. Before, we were specialising on addresses
and thus this changes the default behaviour.

Differential Revision: https://reviews.llvm.org/D109775
The file was modifiedllvm/test/Transforms/FunctionSpecialization/function-specialization-nonconst-glob.ll
The file was modifiedllvm/lib/Transforms/IPO/FunctionSpecialization.cpp
Commit 0195f8621f1814967f9cd3ef51ee61117e914299 by qiucofan
[Clang] Fix long double availability check

fae0dfa changed code to check 128-bit float availability, since it
introduced a new 128-bit double type on PowerPC. However, there're other
long float types besides IEEE float128 and PPC double-double requiring
this feature.

Reviewed By: ronlieb

Differential Revision: https://reviews.llvm.org/D109943
The file was addedclang/test/OpenMP/amdgcn_ldbl_check.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
Commit 7e8babeb9d55749e3c9cae8802a644c5c96b1942 by Lang Hames
Revert "[examples] Fix SectionMemoryManager deconstruction error with MSVC."

This reverts commit 63838d88145feaeb839efff8f40ab1e98597e423, which broke tests
on some bots. See e.g. https://lab.llvm.org/buildbot#builders/109/builds/22561
The file was modifiedllvm/lib/ExecutionEngine/SectionMemoryManager.cpp
Commit 74fa174f339ce378c44010c579634ddefb35ff29 by mkazantsev
[Test] One more missing opportunity on IndVars check removal
The file was modifiedllvm/test/Transforms/IndVarSimplify/outer_phi.ll
Commit 80584f00564630a9edf51f74049b4eeaff4549b1 by czhengsz
Revert "[PowerPC][ELF] make sure local variable space does not overlap with parameter save area"

This causes mix-compile issues on PowerPC Linux.

This reverts commit 324bd467a217d89b5ab84a8ed66c0d3dc431782a.
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/byval.ll
Commit bdafe3124c9ac7276df6092e041d4b328684c680 by flo
[DSE] Add test cases with stores to objects before they escape.

Test cases where stores to local objects can be removed because the
object does not escape before calls that may read/write to memory.

Includes test from PR50220.
The file was addedllvm/test/Transforms/DeadStoreElimination/captures-before-call.ll
Commit 690f76958a737ebd1b17f9bc50f781b3aaa4f011 by mkazantsev
[Test] Add simple test where IndVars fails to remove checks on negative values
The file was addedllvm/test/Transforms/IndVarSimplify/negative_ranges.ll
Commit 37cdc7ebd9a373100cbbe39f5b9be7a4e4f7813d by Justas.Janickas
[OpenCL] Supports optional pipe types in C++ for OpenCL 2021

Adds support for a feature macro `__opencl_c_pipes` in C++ for
OpenCL 2021 enabling a respective optional core feature from
OpenCL 3.0.

This change aims to achieve compatibility between C++ for OpenCL
2021 and OpenCL 3.0.

Differential Revision: https://reviews.llvm.org/D109306
The file was modifiedclang/test/CodeGenOpenCL/pipe_types.cl
The file was modifiedclang/test/CodeGenOpenCL/address-spaces.cl
The file was modifiedclang/test/CodeGenOpenCL/address-spaces-mangling.cl
The file was modifiedclang/test/Misc/opencl-c-3.0.incorrect_options.cl
The file was modifiedclang/test/SemaOpenCL/invalid-pipes-cl1.2.cl
The file was modifiedclang/lib/Basic/TargetInfo.cpp
The file was modifiedclang/test/CodeGenOpenCL/pipe_types_mangling.cl
The file was modifiedclang/test/SemaOpenCL/invalid-pipes-cl2.0.cl
Commit d477a7c2e704f58be816159cd8ac11d5384334b5 by petar.avramovic
GlobalISel/Utils: Refactor integer/float constant match functions

Rework getConstantstVRegValWithLookThrough in order to make it clear if we
are matching integer/float constant only or any constant(default).
Add helper functions that get DefVReg and APInt/APFloat from constant instr
getIConstantVRegValWithLookThrough: integer constant, only G_CONSTANT
getFConstantVRegValWithLookThrough: float constant, only G_FCONSTANT
getAnyConstantVRegValWithLookThrough: either G_CONSTANT or G_FCONSTANT

Rename getConstantVRegVal and getConstantVRegSExtVal to getIConstantVRegVal
and getIConstantVRegSExtVal. These now only match G_CONSTANT as described
in comment.

Relevant matchers now return both DefVReg and APInt/APFloat.

Replace existing uses of getConstantstVRegValWithLookThrough and
getConstantVRegVal with new helper functions. Any constant match is
only required in:
ConstantFoldBinOp: for constant argument that was bit-cast of float to int
getAArch64VectorSplat: AArch64::G_DUP operands can be any constant
amdgpu select for G_BUILD_VECTOR_TRUNC: operands can be any constant

In other places use integer only constant match.

Differential Revision: https://reviews.llvm.org/D104409
The file was modifiedllvm/lib/Target/X86/X86InstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/Utils.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 1a5ab3e97c15708a0a9a19b3b0ccee73b0d757aa by paulsson
[SystemZ]  Recognize .machine directive in parser.

The .machine directive can be used in assembly files to specify the ISA for
the instructions following it.

Review: Ulrich Weigand
Differential Revision: https://reviews.llvm.org/D109660
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
The file was addedllvm/test/MC/SystemZ/machine-directive.s
The file was addedllvm/lib/Target/SystemZ/SystemZTargetStreamer.h
Commit f263ea157113ff0f119cc1bf23d76ce2727c40f9 by arjunpitchanathan
[MLIR] Matrix: support resizing horizontally

Reviewed By: Groverkss

Differential Revision: https://reviews.llvm.org/D109897
The file was modifiedmlir/include/mlir/Analysis/Presburger/Matrix.h
The file was modifiedmlir/lib/Analysis/Presburger/Matrix.cpp
The file was modifiedmlir/unittests/Analysis/Presburger/MatrixTest.cpp
Commit 6607bd9fd819de1a5872dce47ce1a67bbb9a12e8 by arjunpitchanathan
[MLIR] AffineStructures::removeIdRange: support specifying a range within an IdKind

Reviewed By: Groverkss, grosser

Differential Revision: https://reviews.llvm.org/D109896
The file was modifiedmlir/include/mlir/Analysis/AffineStructures.h
The file was modifiedmlir/unittests/Analysis/AffineStructuresTest.cpp
The file was modifiedmlir/lib/Analysis/AffineStructures.cpp
Commit 44db07f11f00b2115e277dd89d830e2abde684ab by arjunpitchanathan
[MLIR] AffineStructures: support removing a range of constraints at once

Reviewed By: Groverkss, grosser

Differential Revision: https://reviews.llvm.org/D109892
The file was modifiedmlir/include/mlir/Analysis/AffineStructures.h
The file was modifiedmlir/unittests/Analysis/AffineStructuresTest.cpp
The file was modifiedmlir/lib/Analysis/AffineStructures.cpp
Commit 8821345e68b2e027ababb5f4e1dba6916825681d by llvm-dev
[TextAPI] Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/include/llvm/TextAPI/InterfaceFile.h
Commit e4b2f66d7f7e27e01ecf4da240f1c39387dd9ede by llvm-dev
[TableGen] Record::checkRecordAssertions() - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/lib/TableGen/Record.cpp
Commit 9e70d4e5f2e447685ee99d6327bbe60f89962e92 by llvm-dev
[AsmPrinter] DebugLocEntry::dump() - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
Commit cbaaedea56fade69bf12164155734efece0f8931 by llvm-dev
[CodeGen] MachineInstr::getUsedDebugRegs() - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/include/llvm/CodeGen/MachineInstr.h
Commit 5ebe95e256737506f152395b5a3eb66cf448e969 by llvm-dev
[X86][Atom] Fix integer shuffles uops, latency and throughput

The MMX pack/unpck shuffles don't need an override - they have the same behaviour as other shuffles (Port0 only).
The SSE pslldq/psrldq shuffles don't need an override - they have the same behaviour as other shuffles (Port0 only).
The SSE pshufb shuffles use 4uops (+1 load).

Noticed the pslldq/psrldq issue while trying to improve reduction costs via the D103695 helper script, and fixed the others while reviewing. Confirmed with Intel AoM / Agner / InstLatX64.
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-sse2.s
The file was modifiedllvm/lib/Target/X86/X86ScheduleAtom.td
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-mmx.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-ssse3.s
Commit 77f6c0bcaa267541886b5e025cde16ff5bf8dec4 by llvm-dev
Fix Wdocumentation warnings. NFCI.

Fix parameter name typos and drop returns statements from void functions
The file was modifiedllvm/lib/Transforms/IPO/IROutliner.cpp
The file was modifiedllvm/include/llvm/Analysis/IRSimilarityIdentifier.h
Commit 58719f61535e8c585ebeb96e6f7c340bbf1f769c by arjunpitchanathan
[MLIR] PresbugerSet: slightly expand documentation
The file was modifiedmlir/lib/Analysis/PresburgerSet.cpp
Commit e3b10525b489b604d6a1e540be78bda80afb5868 by erich.keane
Make multiversioning work with internal linkage

We previously made all multiversioning resolvers/ifuncs have weak
ODR linkage in IR, since we NEED to emit the whole resolver every time
we see a call, but it is not necessarily the place where all the
definitions live.

HOWEVER, when doing so, we neglected the case where the versions have
internal linkage.  This patch ensures we do this, so you don't get weird
behavior with static functions.
The file was modifiedclang/test/CodeGen/unique-internal-linkage-names.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was addedclang/test/CodeGenCXX/multi-versioning-internal-linkage.cpp
Commit db23f27786d9cea6f3d947d877b6b3a301e795ea by llvm-dev
[X86] X86PreTileConfig - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/lib/Target/X86/X86PreTileConfig.cpp
Commit bbebb564f9316fd37605eb92028d15f9e005d212 by llvm-dev
[TableGen] X86EVEX2VEXTablesEmitter - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/utils/TableGen/X86EVEX2VEXTablesEmitter.cpp
Commit 4af76434706a65d839ff167d98455d0704cad70b by llvm-dev
[CodeGen] LiveDebug - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
Commit 72e57862818c92617e22595923cb0a2ed49d603c by llvm-dev
[DebugInfo] DWARF - Use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
Commit b7e9d203c6793873f72dd3ffaf7c9365ce03007e by Justas.Janickas
[OpenCL] Supports optional same image reads and writes in C++ for OpenCL 2021

Adds support for a feature macro `__opencl_c_read_write_images` in
C++ for OpenCL 2021 enabling a respective optional core feature
from OpenCL 3.0.

This change aims to achieve compatibility between C++ for OpenCL
2021 and OpenCL 3.0.

Differential Revision: https://reviews.llvm.org/D109307
The file was modifiedclang/test/Misc/opencl-c-3.0.incorrect_options.cl
The file was modifiedclang/test/SemaOpenCL/access-qualifier.cl
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
Commit 197a3d183b8b2a8452d816a1b0fcfc1093ef76ab by erich.keane
Fix test failure from e3b10525b489b604d6a1e540be78bda80afb5868

Seemingly, names in anonymous namespaces are ALWAYS given the unique
internal linkage name on windows, and I was not aware of this when I put
the names in my test!  Replaced them with a wildcard.
The file was modifiedclang/test/CodeGenCXX/multi-versioning-internal-linkage.cpp
Commit ff6b074674f063295c4aadda394feb032449d86e by Dávid Bolvanský
[NFC] Added testcase for PR25725
The file was addedllvm/test/CodeGen/X86/pr25725.ll
Commit 6fb01a94708ffcd0aed63d0697d4ca08ed937dff by qiaopeixin
[flang][OpenMP] Add semantic checks for ordered construct

This patch implements the following semantic checks according to
OpenMP Version 5.1 Ordered construct restriction:

```
At most one threads clause can appear on an ordered construct; At most
one simd clause can appear on an ordered construct; At most one
depend(source) clause can appear on an ordered construct; Either
depend(sink:vec) clauses or depend(source) clauses may appear on an
ordered construct, but not both.
```

This patch also implements the following semantic checks according to
the syntax and descriptions in OpenMP Version 5.1 Ordered construct:

```
The dependence types of sink or source are only allowed on an ordered
construct. The depend(*) clauses are not allowed when ordered construct
is a block construct with an ordered region. The threads or simd clauses
are not allowed when the ordered construct is a standalone construct
with no ordered region.
```

Co-authored-by: Sameeran Joshi <sameeranjayant.joshi@amd.com>

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D108512
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedflang/lib/Semantics/resolve-directives.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was addedflang/test/Semantics/omp-ordered01.f90
The file was modifiedflang/test/Semantics/omp-clause-validity01.f90
Commit 750d5fc65c92aaf9878d78d0c66947a3e7d76202 by mascasa
[HWASan] Intercept setjmp/longjmp on x86_64.

Reviewed By: xiangzhangllvm

Differential Revision: https://reviews.llvm.org/D109790
The file was removedcompiler-rt/lib/hwasan/hwasan_setjmp.S
The file was addedcompiler-rt/lib/hwasan/hwasan_setjmp_aarch64.S
The file was addedcompiler-rt/lib/hwasan/hwasan_setjmp_x86_64.S
The file was modifiedcompiler-rt/lib/hwasan/hwasan_interceptors.cpp
The file was modifiedcompiler-rt/lib/hwasan/CMakeLists.txt
The file was modifiedcompiler-rt/lib/hwasan/hwasan.h
The file was modifiedcompiler-rt/test/hwasan/TestCases/longjmp-setjmp-interception.c
The file was modifiedcompiler-rt/lib/hwasan/hwasan_type_test.cpp
Commit 8a7a28075b7fa70d56b131c10a4d1add777d5830 by thomasp
Fix CodeGen/pgo-sample-thinlto-summary.c with old PM

Re-add -fexperimental-new-pass-manager to
Clang::CodeGen/pgo-sample-thinlto-summary.c for the test to work on
builds that still default to the old pass manager.

Reviewed By: tejohnson

Differential Revision: https://reviews.llvm.org/D109956
The file was modifiedclang/test/CodeGen/pgo-sample-thinlto-summary.c
Commit 1894250291ea654bf589bef1b809dc1e15011eec by pklausler
[flang] Revamp C1502 checking of END INTERFACE [generic-spec]

Validation of the optional generic-spec on an END INTERFACE statement
was missing many possible error cases; reimplement it.

Differential Revision: https://reviews.llvm.org/D109910
The file was modifiedflang/lib/Semantics/resolve-names-utils.h
The file was modifiedflang/lib/Semantics/resolve-labels.cpp
The file was modifiedflang/test/Semantics/label11.f90
The file was modifiedflang/lib/Semantics/resolve-names.cpp
Commit 90b7817e03af19a8fdc7f32f82e39d0fbf8a9791 by gysit
[mlir][linalg] Add helper to update IndexOps after tiling (NFC).

Add the addTileLoopIvsToIndexOpResults method to shift the IndexOp results after tiling.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D109761
The file was modifiedmlir/lib/Dialect/Linalg/Utils/Utils.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
Commit 3a587ed20ffe55314223e73eff58f96f15f4d728 by spatel
[InstCombine] add vector tests for 'and' folds; NFC
The file was modifiedllvm/test/Transforms/InstCombine/and.ll
Commit 41ff7612b31db6dc5bb133a9227773e8ea1c1712 by spatel
[InstCombine] allow splat vectors for narrowing masked fold

Mostly cosmetic diffs, but the use of m_APInt matches splat constants.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/test/Transforms/InstCombine/and.ll
Commit 12ba72789747b3e177349f04deb30afb410292c2 by pklausler
[flang] Accept SIZE(assumed-rank, DIM=n)

Silence a bogus error message about an out-of-range DIM= argument
when the argument is assumed-rank.  (More generally, don't pretend
to be able to discern a shape of known rank for an assumed-rank
object.)

Differential Revision: https://reviews.llvm.org/D109915
The file was modifiedflang/lib/Evaluate/shape.cpp
Commit df1ab7de38e95cdd228e13a8501231e15c6d6728 by thakis
[gn build] (semi-manually) port 750d5fc65c92
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/hwasan/BUILD.gn
Commit 358df06f4e8d64ba5ad3e80c8f0d763cbb8c0065 by lebedev.ri
[X86] Improve `matchBinaryShuffle()`'s `BLEND` lowering with per-element all-zero/all-ones knowledge

We can use `OR` instead of `BLEND` if either the element we are not picking is zero (or masked away);
or the element we are picking overwhelms (e.g. it's all-ones) whatever the element we are not picking:
https://alive2.llvm.org/ce/z/RKejao

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D109726
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/insertelement-ones.ll
Commit e2febc2ed46129b272eb9ba627433c8e08ef6339 by kazu
[llvm] Use drop_begin (NFC)
The file was modifiedllvm/lib/Transforms/Scalar/MergeICmps.cpp
The file was modifiedllvm/lib/CodeGen/TailDuplicator.cpp
Commit 7ff920826c8d09404803ae5225341218589beb18 by pklausler
[flang] Catch errors with intrinsic array inquiry functions

The intrinsic inquiry functions SIZE and UBOUND -- but not LBOUND --
require a DIM= argument if their first argument is an assumed-size
array.  The intrinsic SHAPE must not be used with an assumed-size
array.

Differential Revision: https://reviews.llvm.org/D109912
The file was addedflang/test/Semantics/misc-intrinsics.f90
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
Commit 7f1a6d891e085929f9ec4c82569151933264d4d8 by Andrey.Churbanov
[OpenMP] libomp: Update third-party sources of ittnotify client code.

The third-party ittnotify sources updated from https://github.com/intel/ittapi.
Changes applied:
- llvm license aded to all files; initial BSD license saved in LICENSE.txt;
- clang-formatted;
- renamed *.c to *.cpp, similar to what we did with all our sources;
- added #include "kmp_config.h" with definition of INTEL_ITTNOTIFY_PREFIX macro
  into ittnotify_static.cpp.

Differential Revision: https://reviews.llvm.org/D109333
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify_types.h
The file was addedopenmp/runtime/src/thirdparty/ittnotify/LICENSE.txt
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify_config.h
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/legacy/ittnotify.h
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/disable_warnings.h
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify.h
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify_static.h
Commit 59b877d00162b634e5c924f90ca1d68f4fddb80a by Andrey.Churbanov
[OpenMP] NFC: add type casts to silence gcc warnings
The file was modifiedopenmp/runtime/src/kmp_taskdeps.cpp
Commit 43d41b295e15fcf9487279f700038d57c8eb43d8 by pklausler
[flang] Correct overflow detection in folding of real->integer conversions

INT, NINT, FLOOR, and CEILING were failing to report overflow as an
error while folding operations with constant operands.

Differential Revision: https://reviews.llvm.org/D109922
The file was modifiedflang/include/flang/Evaluate/real.h
Commit 81a1a91c6260772fe0478be293b47dbf2c4748e5 by tianshilei1992
[NFC] clang-format -i /openmp/libomptarget/deviceRTLs/interface.h
The file was modifiedopenmp/libomptarget/deviceRTLs/interface.h
Commit b428c3e8c19293506a55e389f025a9a9572aa03a by vyng
    [lld-macho] Ignore local personality symbols if non-local with the same name exisst,  to avoid "too many personalities" error.

    Sometimes people intentionally re-define a dylib personlity symbol as a local defined symbol as a workaround to a ld -r bug.
    As a result, we could see "too many personalities" to encode. This patch tries to handle this case by ignoring the local symbols entirely.

    Differential Revision: https://reviews.llvm.org/D107533
The file was addedlld/test/MachO/compact-unwind-both-local-and-dylib-personality.s
The file was modifiedlld/MachO/UnwindInfoSection.cpp
Commit a123e3c48b5814dba4ec90262192068cd05f755e by thomasraoux
[mlir] Fix potential crash in hoistRedundantVectorTransfers

Differential Revision: https://reviews.llvm.org/D107856
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
Commit 416679615d8349a4cf17e57f7bea1f8111d699e5 by thomasraoux
[mlir] Linalg hoisting should ignore uses outside the loop

Differential Revision: https://reviews.llvm.org/D109859
The file was modifiedmlir/test/Dialect/Linalg/hoisting.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
Commit 36aac53b36983c5ae8b7dcb0519c34e8c41dc4e5 by thomasraoux
[mlir][linalg] Extend drop unit dim pattern to all cases of reduction

Even with all parallel loops reading the output value is still allowed so we
don't have to handle reduction loops differently.

Differential Revision: https://reviews.llvm.org/D109851
The file was modifiedmlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
Commit 20afd38651cc37961a7353771fd3f34aec5d2a34 by pklausler
[flang] Upgrade warning to error in case of PURE procedure

A procedure actual argument to a PURE procedure should be required
to have an explicit interface.  Implicit-interface actual arguments
to non-PURE procedures remain a warning.

Differential Revision: https://reviews.llvm.org/D109926
The file was modifiedflang/test/Semantics/call12.f90
The file was modifiedflang/lib/Semantics/check-call.cpp
Commit 9245f35580ca0cce147ec9cebfa431fa5b7feac4 by pklausler
[flang] Validate SIZE(x,DIM=n) dimension for assumed-size array x

Catch invalid attempts to extract the unknowable extent of the last
dimension of an assumed-size array dummy argument, and clean up
problems with assumed-rank arguments in similar circumstances
exposed by testing the fix.

Differential Revision: https://reviews.llvm.org/D109918
The file was modifiedflang/lib/Evaluate/variable.cpp
The file was modifiedflang/lib/Evaluate/shape.cpp
The file was modifiedflang/test/Semantics/select-rank.f90
The file was modifiedflang/include/flang/Evaluate/tools.h
The file was modifiedflang/lib/Evaluate/formatting.cpp
The file was modifiedflang/lib/Semantics/check-select-rank.cpp
The file was modifiedflang/include/flang/Semantics/tools.h
The file was modifiedflang/lib/Evaluate/fold-integer.cpp
The file was modifiedflang/lib/Evaluate/tools.cpp
Commit 2b0b1d531974295c0d7c5ebb6f8c78c42d22a260 by a.bataev
[SLP][NFC]Add a test for reorder of alt shuffle operands.
The file was addedllvm/test/Transforms/SLPVectorizer/X86/vectorize-reorder-alt-shuffle.ll
Commit 9c036627483850135c41493f77aa7f42224a8523 by stephen.tozer
[Dexter] Mutually exclusive argument group for --builder and --binary

Dexter currently accepts two possible arguments to determine the binary
used for testing; either --builder <builder> (and optionally
compiler/linker flags) to build the binary, or --binary <binary> to use
the provided binary directly. If both are passed, then --binary
overrides --builder; if neither are passed, then an error is raised.
This patch instead puts these arguments into a required mutually
exclusive argument group, so that an error is automatically raised by
argparse if both or neither are given.

As an additional change, the --cflags and --ldflags will now raise a
warning if they are passed without the --builder flag, as they are
meaningless if Dexter is using a pre-built binary.

Reviewed By: Orlando

Differential Revision: https://reviews.llvm.org/D109833
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/builder/ParserOptions.py
The file was modifiedcross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
Commit 101c3de39fbcdd7d47b25aaf6d972e435f017077 by aaron
Add information about C99 to the C status page.
The file was modifiedclang/www/c_status.html
Commit f6ddfac401b8a5dfbf7623ebd8800df5184fa244 by pklausler
[flang] Enforce fixed form rules about END continuation

From subclause 6.3.3.5: a program unit END statement cannot be
continued in fixed form, and other statements cannot have initial
lines that look like program unit END statements.  I think this
is to avoid violating assumptions that are important to legacy
compilers' statement classification routines.

Differential Revision: https://reviews.llvm.org/D109933
The file was modifiedflang/lib/Parser/prescan.cpp
The file was addedflang/test/Parser/end.f
The file was modifiedflang/lib/Parser/prescan.h
The file was modifiedflang/lib/Parser/token-sequence.cpp
The file was modifiedflang/lib/Parser/token-sequence.h
Commit 338f21a4bd6b43d9a2eb00929d24cefeb0ccf581 by pklausler
[flang] Enforce specification function rules on callee, not call

A function can't be a specification function if it has a dummy procedure
argument, even if it's optional and unused.  So don't check the reference
for actual procedure arguments, but rather the characteristics of the
function.

Differential Revision: https://reviews.llvm.org/D109935
The file was modifiedflang/test/Semantics/expr-errors02.f90
The file was modifiedflang/lib/Evaluate/check-expression.cpp
Commit d13d9da1fbe1a750f9c4fc3f4da31c9d16a530d3 by martin
[clang] [ARM] Don't set the strict alignment flag for armv7 on Windows

Windows on armv7 is as alignment tolerant as Linux.

The alignment considerations in the Windows on ARM ABI are documented
at https://docs.microsoft.com/en-us/cpp/build/overview-of-arm-abi-conventions?view=msvc-160#alignment.

The document doesn't explicitly say in which state the OS configures
the SCTLR.A register (and it's not accessible from user space to
inspect), but in practice, unaligned loads/stores do work and seem
to be as fast as aligned loads and stores. (Unaligned strd also does
seem to work, contrary to Linux, but significantly slower, as they're
handled by the kernel - exactly as the document describes.)

Differential Revision: https://reviews.llvm.org/D109960
The file was modifiedclang/lib/Driver/ToolChains/Arch/ARM.cpp
The file was modifiedclang/test/Driver/arm-alignment.c
Commit 08f0cb77197dc2842baa00f22f0264fa49d1475a by thomasraoux
[mlir] Prevent crash in DropUnitDim pattern due to tensor with encoding

Differential Revision: https://reviews.llvm.org/D109984
The file was modifiedmlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
Commit 121aab84d16f659cea539becff2cc2fef82ec152 by Krzysztof.Drewniak
[MLIR][Affine] Simplify nested modulo operations when able

It is the case that, for all positive a and b such that b divides a
(e mod (a * b)) mod b = e mod b. For example, ((d0 mod 35) mod 5) can
be simplified to (d0 mod 5), but ((d0 mod 35) mod 4) cannot be simplified
further (x = 36 is a counterexample).

This change enables more complex simplifications. For example,
((d0 * 72 + d1) mod 144) mod 9 can now simplify to (d0 * 72 + d1) mod 9
and thus to d1 mod 9. Expressions with chained modulus operators are
reasonably common in tensor applications, and this change _should_
improve code generation for such expressions.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D109930
The file was modifiedmlir/test/IR/affine-map.mlir
The file was modifiedmlir/lib/IR/AffineExpr.cpp
The file was modifiedmlir/test/Transforms/loop-fusion-2.mlir
The file was modifiedmlir/test/Transforms/loop-fusion.mlir
Commit 80d62993d0720bc36523e39e64cc36da6e445e64 by keithbsmiley
[clang][darwin] Add support for --emit-static-lib

This uses darwin's default libtool since llvm-ar isn't normally
available.

Differential Revision: https://reviews.llvm.org/D109461
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedclang/test/Driver/bindings.c
The file was modifiedclang/lib/Driver/ToolChains/Darwin.h
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was addedclang/test/Driver/darwin-static-lib.c
Commit c5fafc1e73bcdbb8eaf899d13c5566f37f9580ac by hoy
[CSSPGO] Tweakes to lower pseudo probe runtime overhead

A couple tweaks to

1. allow more thinlto importing by excluding probe intrinsics from IR size in module summary

2. Allow general default attributes (nofree nosync nounwind) for pseudo probe intrinsic. Without those attributes, pseudo probes will be basically treated as unknown calls which will in turn block their containing functions from annotated with those attributes.

Reviewed By: wenlei

Differential Revision: https://reviews.llvm.org/D109976
The file was modifiedllvm/lib/Analysis/ModuleSummaryAnalysis.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
Commit f18c0739b3077565b6a562b6c60cfc9ef6a7d9ed by aeubanks
[llvm-reduce] Add reduce operands pass

Add reduction to set operands to default values

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D108903
The file was modifiedllvm/test/tools/llvm-reduce/no-replace-intrinsic-callee-with-undef.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-global-vars.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-args.ll
The file was addedllvm/tools/llvm-reduce/deltas/ReduceOperands.h
The file was modifiedllvm/tools/llvm-reduce/CMakeLists.txt
The file was modifiedllvm/tools/llvm-reduce/DeltaManager.cpp
The file was modifiedllvm/test/tools/llvm-reduce/remove-all-of-multiple-args.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-invoked-functions.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-bbs.ll
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
The file was addedllvm/test/tools/llvm-reduce/remove-operands.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-bbs-ret-nonvoid.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-bbs-unwinded-to.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-function-arguments-of-funcs-used-in-blockaddress.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-args-used-by-ret.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-args-2.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-funcs.ll
The file was modifiedllvm/test/tools/llvm-reduce/remove-single-arg.ll
The file was addedllvm/tools/llvm-reduce/deltas/ReduceOperands.cpp
Commit 5a6c38fbefba981d8e37d78b3d0d7a07d56d1160 by pklausler
[flang] Fix build

An unused variable declaration from a recent change is eliciting
a fatal warning; remove it.
The file was modifiedflang/lib/Parser/prescan.cpp
Commit 3db959060546eef76b90733ccde80c75576a97ad by brad
[compiler-rt] Implement __clear_cache() on OpenBSD/riscv64
The file was modifiedcompiler-rt/lib/builtins/clear_cache.c
Commit e93baded39578d62139656833c9b926d5cf78ba5 by jan.kratochvil
[nfc] [lldb] Remove unused DIEPointerSet, DeclToDIEMap and m_decl_to_die

In whole GIT history this map has been always only written but never read.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
Commit c533b88a6dc970b5f98451bb3e676cdf6e9129f8 by browneee
[DFSan] Add force_zero_label abilist option to DFSan. This can be used as a work-around for overtainting.

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D109847
The file was addedcompiler-rt/test/dfsan/force_zero.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/Inputs/abilist.txt
The file was modifiedclang/docs/DataFlowSanitizer.rst
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was modifiedcompiler-rt/test/dfsan/Inputs/flags_abilist.txt
The file was addedllvm/test/Instrumentation/DataFlowSanitizer/force_zero.ll
Commit d01e0c8c66bb88fa40d350df00dce36f65bc1e5d by Dávid Bolvanský
[NFC] Precommit tests for D109954
The file was modifiedllvm/test/Transforms/InstCombine/powi.ll
Commit d4e16171e889df1be22cb9cc64c58c9966124db3 by ajcbik
[mlir][sparse] add dce test for all sparse tensor ops

Reviewed By: ThomasRaoux

Differential Revision: https://reviews.llvm.org/D109992
The file was modifiedmlir/test/Dialect/SparseTensor/fold.mlir
Commit 46e77b5d109b13c0d972f643c2e368d1962715dd by ajcbik
[mlir][sparse] add a sparse quantized_matmul example to integration test

Note that this revision adds a very tiny bit of constant folding in the
sparse compiler lattice construction. Although I am generally trying to
avoid such canonicalizations (and rely on other passes to fix this instead),
the benefits of avoiding a very expensive disjunction lattice construction
justify having this special code (at least for now).

Reviewed By: bixia

Differential Revision: https://reviews.llvm.org/D109939
The file was modifiedmlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
The file was addedmlir/test/Integration/Dialect/SparseTensor/CPU/sparse_quantized_matmul.mlir
The file was modifiedmlir/include/mlir/Dialect/SparseTensor/Utils/Merger.h
Commit 6da35036023d9184bc2578c9c9baff76dd70c43e by spatel
[InstCombine] add tests for min/max intrinsics with offset operand; NFC
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit 2908fc0d3f16f873b5019f1c62a24482c2b75e36 by cchen
[OpenMP] Use irbuilder as default for masked and master construct

Use irbuilder as default and remove redundant Clang codegen for masked construct and master construct.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D100874
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/test/OpenMP/masked_codegen.cpp
The file was modifiedclang/test/OpenMP/master_codegen.cpp
Commit c7d7b98e5263472f05b2f3cb767b5d16e1349e9a by cchen
OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h

Currently this function return the index of the when clause with the highest score from the ones applicable in the Context.
But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D91944
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was addedclang/test/OpenMP/metadirective_empty.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was addedclang/test/OpenMP/metadirective_implementation_codegen.cpp
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was addedclang/test/OpenMP/metadirective_device_kind_codegen.c
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was addedclang/test/OpenMP/metadirective_implementation_codegen.c
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was addedclang/test/OpenMP/metadirective_device_kind_codegen.cpp
The file was modifiedclang/include/clang/AST/StmtOpenMP.h
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/lib/AST/StmtOpenMP.cpp
The file was addedclang/test/OpenMP/metadirective_ast_print.c
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was addedclang/test/OpenMP/metadirective_messages.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedclang/tools/libclang/CXCursor.cpp
Commit 7efb825382c0a8372597aaf75a319fa379573fd4 by cchen
Revert "OpenMP 5.0 metadirective"

This reverts commit c7d7b98e5263472f05b2f3cb767b5d16e1349e9a.
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/StmtOpenMP.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was removedclang/test/OpenMP/metadirective_ast_print.c
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was removedclang/test/OpenMP/metadirective_messages.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was removedclang/test/OpenMP/metadirective_implementation_codegen.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was removedclang/test/OpenMP/metadirective_device_kind_codegen.c
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was removedclang/test/OpenMP/metadirective_device_kind_codegen.cpp
The file was modifiedclang/include/clang/AST/StmtOpenMP.h
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was removedclang/test/OpenMP/metadirective_implementation_codegen.c
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was removedclang/test/OpenMP/metadirective_empty.cpp
The file was modifiedclang/lib/AST/OpenMPClause.cpp
Commit 347f3c186d3fd86628904450d2f4ee0ffd428150 by cchen
OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h

Currently this function return the index of the when clause with the highest score from the ones applicable in the Context.
But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D91944
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was addedclang/test/OpenMP/metadirective_implementation_codegen.cpp
The file was modifiedclang/lib/AST/StmtOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was addedclang/test/OpenMP/metadirective_device_kind_codegen.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was addedclang/test/OpenMP/metadirective_ast_print.c
The file was addedclang/test/OpenMP/metadirective_empty.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/include/clang/AST/StmtOpenMP.h
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was addedclang/test/OpenMP/metadirective_implementation_codegen.c
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was addedclang/test/OpenMP/metadirective_messages.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was addedclang/test/OpenMP/metadirective_device_kind_codegen.c
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
Commit 9ff848c5cd88947714f3d9bf03a3adbb84066736 by cchen
Revert "[OpenMP] Use irbuilder as default for masked and master construct"

This reverts commit 2908fc0d3f16f873b5019f1c62a24482c2b75e36.
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/test/OpenMP/masked_codegen.cpp
The file was modifiedclang/test/OpenMP/master_codegen.cpp
Commit 843390c58ae660fa356c534fdc8b19756f8d175c by Adrian Prantl
Apply proper source location to fallthrough switch cases.

This fixes a bug in clang where, when clang sees a switch with a
fallthrough to a default like this:

static void funcA(void) {}
static void funcB(void) {}

int main(int argc, char **argv) {

switch (argc) {
    case 0:
        funcA();
        break;
    case 10:
    default:
        funcB();
        break;
}
}

It does not add a proper debug location for that switch case, such as
case 10: above.

Patch by Shubham Rastogi!

Differential Revision: https://reviews.llvm.org/D109940
The file was addedclang/test/CodeGen/debug-info-switch-fallthrough.c
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
Commit 0db948120826d59fbede50ac9abe2ad1862dfaa3 by aeubanks
[NFC] Remove FIXMEs about calling LLVMContext::yield()

Nobody has complained about this, and the documentation for
LLVMContext::yield() states that LLVM is allowed to never call it.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D110008
The file was modifiedllvm/include/llvm/IR/PassManager.h
The file was modifiedllvm/lib/Transforms/Scalar/LoopPassManager.cpp
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
Commit 757384abff38fa41877afe36c36a1850b60fef0f by mnadeem
[AArch64][SVE][InstCombine] Fold redundant zip1/2(uzp1/2) operations

    zip1(uzp1(A, B), uzp2(A, B)) --> A
    zip2(uzp1(A, B), uzp2(A, B)) --> B

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

Change-Id: I4a6578db2fcef9ff71ad0e77b9fe08354e6dbfcd
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
The file was addedllvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-zip.ll
Commit bcb2591b6ca00365cb9f99efafeb3bfe8682f002 by pklausler
[flang] More checking of NULL pointer actual arguments

Catch additional missing error cases for typed and untyped
NULL actual arguments to non-intrinsic procedures in cases
of explicit and implicit interfaces.

Differential Revision: https://reviews.llvm.org/D110003
The file was modifiedflang/lib/Semantics/check-call.cpp
The file was modifiedflang/lib/Semantics/pointer-assignment.cpp
The file was modifiedflang/test/Semantics/null01.f90
Commit 3b14d80ad4af303c9f7df189b8b7eee528d0ec8d by Vedant Kumar
[MachCore] Report arm64 thread exception state

A MachO userspace corefile may contain LC_THREAD commands which specify
thread exception state.

For arm64* only (for now), report a human-readable version of this state
as the thread stop reason, instead of 'SIGSTOP'.

As a follow-up, similar functionality can be implemented for x86 cores
by translating the trapno/err exception registers.

rdar://82898146

Differential Revision: https://reviews.llvm.org/D109795
The file was modifiedlldb/test/API/functionalities/postmortem/mach-core/TestMachCore.py
The file was modifiedlldb/test/API/functionalities/postmortem/mach-core/operating_system.py
The file was addedlldb/include/lldb/Target/AppleArm64ExceptionClass.h
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
The file was modifiedlldb/source/Plugins/Process/mach-core/ThreadMachCore.cpp
The file was addedlldb/test/API/macosx/corefile-exception-reason/TestCorefileExceptionReason.py
The file was addedlldb/test/API/macosx/corefile-exception-reason/Makefile
The file was addedlldb/include/lldb/Target/AppleArm64ExceptionClass.def
The file was modifiedlldb/include/lldb/module.modulemap
The file was addedlldb/test/API/macosx/corefile-exception-reason/main.cpp
Commit 91ace9f06202c567f5600c59f62188db3f3c7147 by jezng
[lld-macho] Construct CFString literals by copying the ConcatInputSection

... instead of constructing a new one each time. This allows us
to take advantage of {D105305}.

I didn't see a substantial difference when linking chromium_framework,
but this paves the way for reusing similar logic for splitting compact
unwind entries into sections. There are a lot more of those, so the
performance impact is significant.

Differential Revision: https://reviews.llvm.org/D109895
The file was modifiedlld/MachO/InputFiles.cpp
Commit fec2927e0739144d101d5ad1e912bde9e8cd1fb6 by jhuber6
[OpenMP] Add NoSync attributes to alloc / free shared RTL calls

This patch adds the `nosync` attribute to the `__kmpc_alloc_shared` and
`__kmpc_free_shared` runtime library calls. This allows code analysis to
know that these functins dont contain any barriers. This will help
optimizations reason about the CFG of blocks containing these calls.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D109995
The file was modifiedllvm/test/Transforms/OpenMP/replace_globalization.ll
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was modifiedllvm/test/Transforms/OpenMP/remove_globalization.ll
Commit 27905eeb89620357bbb69e8396c4708341a5fd1a by jhuber6
[Attributor] Change AAExecutionDomain to check intrinsic edges

The AAExecutionDomain instance checks if a BB is executed by the main
thread only. Currently, this only checks the `__kmpc_kernel_init` call
for generic regions to indicate the path taken by the main thread. In
the new runtime, we want to be able to detect basic blocks even in SPMD
mode. For this we enable it to check thread-ID intrinsics being compared
to zero as well.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D109849
The file was modifiedllvm/test/Transforms/OpenMP/single_threaded_execution.ll
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
Commit 6f7483b1ece4747f2aafe4baa05fc07e7dc9ed9d by akhuang
Reland "[LLD] Remove global state in lld/COFF" after fixing asan and msan test failures

Original commit description:

  [LLD] Remove global state in lld/COFF

  This patch removes globals from the lldCOFF library, by moving globals
  into a context class (COFFLinkingContext) and passing it around wherever
  it's needed.

  See https://lists.llvm.org/pipermail/llvm-dev/2021-June/151184.html for
  context about removing globals from LLD.

  I also haven't moved the `driver` or `config` variables yet.

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

This reverts commit a2fd05ada9030eab2258fff25e77a05adccae128.

Original commits were b4fa71eed34d967195514fe9b0a5211fca2bc5bc
and e03c7e367adb8f228332e3c2ef8f45484597b719.
The file was modifiedlld/COFF/CMakeLists.txt
The file was modifiedlld/COFF/DebugTypes.h
The file was modifiedlld/COFF/Chunks.cpp
The file was modifiedlld/COFF/SymbolTable.h
The file was modifiedlld/include/lld/Common/Timer.h
The file was addedlld/COFF/COFFLinkerContext.cpp
The file was modifiedlld/COFF/Chunks.h
The file was modifiedlld/COFF/InputFiles.cpp
The file was modifiedlld/COFF/InputFiles.h
The file was modifiedllvm/utils/gn/secondary/lld/COFF/BUILD.gn
The file was modifiedlld/COFF/MinGW.h
The file was modifiedlld/COFF/Writer.h
The file was modifiedlld/COFF/LLDMapFile.h
The file was addedlld/COFF/COFFLinkerContext.h
The file was modifiedlld/COFF/CallGraphSort.h
The file was modifiedlld/COFF/MarkLive.h
The file was modifiedlld/COFF/MarkLive.cpp
The file was modifiedlld/COFF/MapFile.h
The file was modifiedlld/COFF/DebugTypes.cpp
The file was modifiedlld/COFF/LLDMapFile.cpp
The file was modifiedlld/COFF/PDB.cpp
The file was modifiedlld/COFF/Writer.cpp
The file was modifiedlld/COFF/ICF.h
The file was modifiedlld/COFF/LTO.h
The file was modifiedlld/COFF/TypeMerger.h
The file was modifiedlld/COFF/LTO.cpp
The file was modifiedlld/COFF/MapFile.cpp
The file was modifiedlld/COFF/DLL.h
The file was modifiedlld/COFF/PDB.h
The file was addedlld/test/COFF/timers.ll
The file was modifiedlld/COFF/MinGW.cpp
The file was modifiedlld/COFF/Driver.h
The file was modifiedlld/COFF/CallGraphSort.cpp
The file was modifiedlld/COFF/DLL.cpp
The file was modifiedlld/COFF/ICF.cpp
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/COFF/SymbolTable.cpp
The file was modifiedlld/Common/Timer.cpp
Commit 2cda4f8ed798ecf061965b54976e427459514763 by noreply
[mlir] Fix syntax example for tensor.from_elements

Parens are not used here
The file was modifiedmlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
Commit 724a1dff8a8eabee4ca03036dd3efd84ecd8298a by akhuang
[lld] Fix small error in previous commit
6f7483b1ece4747f2aafe4baa05fc07e7dc9ed9d.
The file was modifiedlld/Common/Timer.cpp
Commit c30d7730ebde18d61b33ae1de9ded69dac6ea6be by jhuber6
[OpenMP] Change debugging symbol to weak_odr linkage

The new device runtime uses an internal variable to set debugging. This
variable was originally privately linked because every module will have
a copy of it. This caused problems with merging the device bitcode
library because it would get renamed and there was not a way to refer to
an external, private symbol. This changes the symbol to weak_odr so it
can be defined multiply, but will not be renamed.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D109997
The file was modifiedclang/test/OpenMP/target_debug_codegen.cpp
The file was modifiedllvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Commit b266bcb13557f6a9fcf58a2d2be271a631aee72f by jhuber6
[OpenMP] Implement __assert_fail in the new device runtime

This patch implements the `__assert_fail` function in the new device
runtime. This allows users and developers to use the standars assert
function inside of the device.

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D109886
The file was modifiedopenmp/libomptarget/DeviceRTL/src/Debug.cpp
The file was modifiedopenmp/libomptarget/DeviceRTL/include/Debug.h
Commit ec02c34b6df1efc643e5889bf3f181d55c4fed38 by jhuber6
[OpenMP] Add additional fields to device environment

This patch adds fields for the device number and number of devices into
the device environment struct and debugging values.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D110004
The file was modifiedopenmp/libomptarget/deviceRTLs/common/device_environment.h
The file was modifiedopenmp/libomptarget/DeviceRTL/include/Configuration.h
The file was modifiedopenmp/libomptarget/DeviceRTL/src/Configuration.cpp
The file was modifiedopenmp/libomptarget/plugins/cuda/src/rtl.cpp
Commit f1c821fa850b5168e0cc120f2497ac54d8ad325b by jhuber6
[OpenMP] Add support for dynamic shared memory in new RTL

This patch adds support for using dynamic shared memory in the new
device runtime. The new function `__kmpc_get_dynamic_shared` will return a
pointer to the buffer of dynamic shared memory. Currently the amount of memory
allocated is set by an environment variable.

In the future this amount will be added to the amount used for the smart stack
which will be configured in a similar way.

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D110006
The file was modifiedopenmp/libomptarget/DeviceRTL/include/State.h
The file was modifiedopenmp/libomptarget/DeviceRTL/include/Configuration.h
The file was modifiedopenmp/docs/design/Runtimes.rst
The file was addedopenmp/libomptarget/test/api/omp_dynamic_shared_memory.c
The file was modifiedopenmp/libomptarget/plugins/cuda/src/rtl.cpp
The file was modifiedopenmp/libomptarget/DeviceRTL/include/Interface.h
The file was modifiedopenmp/libomptarget/DeviceRTL/src/State.cpp
The file was modifiedopenmp/libomptarget/DeviceRTL/src/Configuration.cpp
Commit 4121ac1e7f96d826b793bd7e29c181f1eb8168bf by joker.eph
Check for invalid projects passed in LLVM_ENABLE_PROJECTS

This is catching misconfiguration. For example one of my automation
had a typo running `-DLLVM_ENABLE_PROJECTS=nlir` and it was just
silently ignored. Instead, an error will now be displayed.

Differential Revision: https://reviews.llvm.org/D110016
The file was modifiedllvm/CMakeLists.txt
Commit 57eda9beccfebddc2a5eccc488de85285d0ed76e by uday
[MLIR][GPU] Add constant propagator for gpu.launch op

Add a constant propagator for gpu.launch op in cases where the
grid/thread IDs can be trivially determined to take a single constant
value of zero.

Differential Revision: https://reviews.llvm.org/D109994
The file was modifiedmlir/lib/Dialect/GPU/IR/GPUDialect.cpp
The file was modifiedmlir/include/mlir/Dialect/GPU/GPUOps.td
The file was modifiedmlir/test/Dialect/GPU/canonicalize.mlir
Commit 2790498178b4bb7c8594c936d512410d55b91d98 by sylvestre
Adjust the doc after the renaming of debuginfo-tests => cross-project-tests
The file was modifiedllvm/docs/TestingGuide.rst
Commit 23763dd7c9eaa5f85ff29cceac84d3911a8725fe by sylvestre
llvm doc: subversion isn't necessary in this example
The file was modifiedllvm/docs/MyFirstTypoFix.rst
Commit 8919e7b251f319e5cb36a72e64362fb80b230cac by sylvestre
llvm doc: remove the old reference to subversion and add a link to the GH repo instead
The file was modifiedllvm/docs/TestingGuide.rst
Commit 0eb75a41c5d46bda6e31bc33bb81acef1b0890f2 by lebedev.ri
Revert "Check for invalid projects passed in LLVM_ENABLE_PROJECTS"

```
CMake Error at CMakeLists.txt:76 (MESSAGE):
  all isn't a know project:
  clang;clang-tools-extra;compiler-rt;cross-project-tests;libc;libclc;libcxx;libcxxabi;libunwind;lld;lldb;mlir;openmp;parallel-libs;polly;pstl;flang;llvm
```

This reverts commit 4121ac1e7f96d826b793bd7e29c181f1eb8168bf.
The file was modifiedllvm/CMakeLists.txt
Commit 9b889f826ff587e9758c80823419512d502e457d by aaron.puchert
Thread safety analysis: Warn when demoting locks on back edges

Previously in D104261 we warned about dropping locks from back edges,
this is the corresponding change for exclusive/shared joins. If we're
entering the loop with an exclusive change, which is then relaxed to a
shared lock before we loop back, we have already analyzed the loop body
with the stronger exclusive lock and thus might have false positives.

There is a minor non-observable change: we modify the exit lock set of a
function, but since that isn't used further it doesn't change anything.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D106713
The file was modifiedclang/test/SemaCXX/warn-thread-safety-analysis.cpp
The file was modifiedclang/lib/Analysis/ThreadSafety.cpp
Commit 31cca215654ac5eca01796248696b8d710a5cffc by thakis
Revert "OpenMP 5.0 metadirective"

This reverts commit c7d7b98e5263472f05b2f3cb767b5d16e1349e9a.
Breaks tests on macOS, see comment on https://reviews.llvm.org/D91944
The file was removedclang/test/OpenMP/metadirective_device_kind_codegen.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was removedclang/test/OpenMP/metadirective_messages.cpp
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/AST/StmtOpenMP.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was removedclang/test/OpenMP/metadirective_ast_print.c
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was removedclang/test/OpenMP/metadirective_device_kind_codegen.c
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was removedclang/test/OpenMP/metadirective_empty.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/include/clang/AST/StmtOpenMP.h
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was removedclang/test/OpenMP/metadirective_implementation_codegen.c
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was removedclang/test/OpenMP/metadirective_implementation_codegen.cpp
Commit 0a1e569d37e04c75632633d77c7d3f0fb5126b46 by jpienaar
[mlir-c] Add getting fused loc

For creating a fused loc using array of locations and metadata.

Differential Revision: https://reviews.llvm.org/D110022
The file was modifiedmlir/include/mlir-c/IR.h
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/test/CAPI/ir.c
Commit 1b2c36aa5fa07a2d64ddda745a138d5eacd5a06c by thakis
[lld/mac] Fix comment typo to cycle bots
The file was modifiedlld/MachO/ConcatOutputSection.cpp
Commit 2b44a7325c56cdd78bbcfab7ff7a00126aa5c822 by arjunpitchanathan
[MLIR] Simplex: support adding new variables dynamically

Reviewed By: Groverkss

Differential Revision: https://reviews.llvm.org/D109962
The file was modifiedmlir/include/mlir/Analysis/Presburger/Simplex.h
The file was modifiedmlir/lib/Analysis/Presburger/Simplex.cpp
The file was modifiedmlir/unittests/Analysis/Presburger/SimplexTest.cpp
Commit 48719e3b1861a9b8216dc3aa4dce1b05389f0aff by kazu
[CodeGen] Use make_early_inc_range (NFC)
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Localizer.cpp
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
The file was modifiedllvm/lib/CodeGen/StackProtector.cpp
Commit 33afea548892b2e7f0f7636ab17367da59f42c4a by arjunpitchanathan
[MLIR] Simplex: rename num{Variables,Constraints} to getNum{Variables,Constraints}

As per the LLVM Coding Standards, function names should be verb phrases.
The file was modifiedmlir/include/mlir/Analysis/Presburger/Simplex.h
The file was modifiedmlir/lib/Analysis/PresburgerSet.cpp
The file was modifiedmlir/unittests/Analysis/Presburger/SimplexTest.cpp
The file was modifiedmlir/lib/Analysis/Presburger/Simplex.cpp
Commit cb5e3f79592416cc5c1413655eddc641b1dae920 by david.green
[ARM] Prevent large integer VQDMULH pattern crashes

Put a limit on the size of constant integers we test when looking for
VQDMULH, to prevent it from crashing from values more than 64bits.
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vqdmulh.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit 7b25fa8c7a151e94be46ed8f0a56bf4e2af1c104 by alexandre.ganea
[Support] Attempt to fix deadlock in ThreadGroup

This is an attempt to fix the situation described by https://reviews.llvm.org/D104207#2826290 and PR41508.
See sequence of operations leading to the bug in https://reviews.llvm.org/D104207#3004689

We ensure that the Latch is completely "free" before decrementing the number of TaskGroupInstances.

Differential revision: https://reviews.llvm.org/D109914
The file was modifiedllvm/include/llvm/Support/Parallel.h
The file was modifiedllvm/lib/Support/Parallel.cpp
Commit 713c768a6d0e385be0f14816494d146bd32ea731 by joker.eph
Check for invalid projects passed in LLVM_ENABLE_PROJECTS

This is catching misconfiguration. For example one of my automation
had a typo running `-DLLVM_ENABLE_PROJECTS=nlir` and it was just
silently ignored. Instead, an error will now be displayed.

Recommit 4121ac1e after fixing it to not fail on "all"

Differential Revision: https://reviews.llvm.org/D110016
The file was modifiedllvm/CMakeLists.txt
Commit d841c72e09c81a5892a52e3c3200af838f6a2a69 by mnadeem
Precommit tests for D109807 "[InstCombine] Narrow type of logical operation chains when possible"

Change-Id: Iae9bf18619e4926301a866c7e2bd38ced524804e
The file was modifiedllvm/test/Transforms/InstCombine/and-xor-or.ll
Commit 000875c127c7f2ae10a954bd592c1658e5912cf1 by cchen
OpenMP 5.0 metadirective

This patch supports OpenMP 5.0 metadirective features.
It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind.

A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h

Currently this function return the index of the when clause with the highest score from the ones applicable in the Context.
But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D91944
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedclang/lib/AST/StmtOpenMP.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was addedclang/test/OpenMP/metadirective_implementation_codegen.c
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was addedclang/test/OpenMP/metadirective_implementation_codegen.cpp
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was addedclang/test/OpenMP/metadirective_device_kind_codegen.c
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/include/clang/AST/StmtOpenMP.h
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was addedclang/test/OpenMP/metadirective_ast_print.c
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was addedclang/test/OpenMP/metadirective_messages.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was addedclang/test/OpenMP/metadirective_empty.cpp
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was addedclang/test/OpenMP/metadirective_device_kind_codegen.cpp
Commit 80110aafa09aff9869cdb50ed718a169888da578 by nikita.ppv
[Tests] Fix incorrect noalias metadata

Mostly this fixes cases where !noalias or !alias.scope were passed
a scope rather than a scope list. In some cases I opted to drop
the metadata entirely instead, because it is not really relevant
to the test.
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.inc.ll
The file was modifiedllvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/remarks-shared-subtrees.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/drop-invalid-metadata.ll
The file was modifiedllvm/test/Analysis/CostModel/free-intrinsics-no_info.ll
The file was modifiedllvm/test/Transforms/InstCombine/loadstore-metadata.ll
The file was modifiedllvm/test/CodeGen/AArch64/vector_merge_dep_check.ll
The file was modifiedllvm/test/CodeGen/MIR/X86/memory-operands.mir
The file was modifiedllvm/test/Analysis/CostModel/free-intrinsics-datalayout.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr25281.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.atomic.inc.ll
The file was modifiedllvm/test/Transforms/InstCombine/bitcast-store.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/free-intrinsics.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/merge-stores.ll
Commit abe21da670f9bcadcb0af6f97a25e1faf9e0b133 by nikita.ppv
[Tests] Fix noalias metadata in one more test

Missed this one in 80110aafa09aff9869cdb50ed718a169888da578. This
is another test mixing up alias scopes and alias scope lists.
The file was modifiedllvm/test/Transforms/InstCombine/noalias-scope-decl.ll
Commit 6a2c2263fbca07a59b9f41181c1418df052e24d1 by lebedev.ri
[X86] Improve i8 all-ones element insertion in pre-SSE4.1

Should avoid some regressions in D109065

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D109989
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/insertelement-ones.ll
Commit d2373c04a7cbbc38221bbfb6120e5285c765785c by dblaikie
DWARFDie.cpp: Reduce indentation with early continue
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit ae0873483d9393d35bd5bdbfcb2bfb843c335cd5 by dblaikie
DWARFDie:DWARFTypePrinter: Add common utility function for checking where parentheses are required
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit dee5a8ca325f3c752534442233cb601910e918c4 by ben.shi
[RISCV] Optimize (add (shl x, c0), (shl y, c1)) with SH*ADD

Optimize (add (shl x, c0), (shl y, c1)) ->
         (SLLI (SH*ADD x, y), c1), if c0-c1 == 1/2/3.

Reviewed By: craig.topper, luismarques

Differential Revision: https://reviews.llvm.org/D108916
The file was modifiedllvm/test/CodeGen/RISCV/rv64zba.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rv32zba.ll
Commit b7ec8f3dcbcdf6d27902688c8eac0e6196061cb3 by sylvestre
llvm/cmake: fix a typo
The file was modifiedllvm/CMakeLists.txt
Commit e381d8b24329cae6408205f74d0d6d9eaa6b29cf by llvm-dev
[X86][Atom] Fix (U)COMISS/SD uops, latency and throughput

Both ports are required, for reg and mem variants - we can also use the WriteFComX class directly and remove the unnecessary InstRW overrides. Matches what Intel AoM / Agner / InstLatX64 report as well.
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-sse2.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-sse1.s
The file was modifiedllvm/lib/Target/X86/X86ScheduleAtom.td
Commit 9de88fc0eac1bfc719dfd63a32b7eb069489407e by xndchn
[mlir][emitc] Fix indent in CondBranchOp and block label

1. Add missing indent in CondBranchOp
2. Remove indent in block label

Differential Revision: https://reviews.llvm.org/D109805
The file was modifiedmlir/lib/Target/Cpp/TranslateToCpp.cpp
Commit 1da52ef2943b67c0ec1ccd3b8e459d0e57e67a6d by david.green
[ARM] Add VGETLANEu patterns for v4f16 and v8f16

These were apparently missing, having no pattern that could convert a
VGETLANEu of a v4f16 to an i32. Added bf16 whilst here, following the
same code.
The file was modifiedllvm/test/CodeGen/ARM/fp16-insert-extract.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrNEON.td
The file was modifiedllvm/test/CodeGen/ARM/bf16-getlane-with-fp16.ll
Commit 9555d1edb0d16f135ae57695fc2da55deaabf082 by spatel
[InstCombine] add/adjust tests for min/max intrinsics; NFC

If we transform these, we have to propagate no-wrap/undef carefully.
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit 1e72ca94e5796a744d0e1a8871c33b1b4edb0acb by lebedev.ri
[X86] combineX86ShufflesRecursively(): call SimplifyMultipleUseDemandedVectorElts() on after finishing recursing

This was suggested in https://reviews.llvm.org/D108382#inline-1039018,
and it avoids regressions in that patch.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D109065
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/oddshuffles.ll
The file was modifiedllvm/test/CodeGen/X86/vselect.ll
Commit 0852313e47836152b00fb8b8fd62a7e12bf92abd by lebedev.ri
[NFC] combineX86ShufflesRecursively(): actually address nits for previous patch
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 07f1d8f0caa1516e0d97616adfea4aa94f7883a4 by lebedev.ri
[X86] lowerShuffleAsDecomposedShuffleMerge(): if both inputs are broadcastable/identities, canonicalize broadcasts as such

Split off from D108253.
Broadcast is simpler than any other shuffle we might produce
to do what we want to do here, so prefer it.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D108382
The file was modifiedllvm/test/CodeGen/X86/horizontal-sum.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/copy-low-subvec-elt-to-high-subvec-elt.ll
Commit 5f2fe48d06c742872804da8b3d86596ed2bb9acb by lebedev.ri
[X86][TLI] SimplifyDemandedVectorEltsForTargetNode(): don't break apart broadcasts from which not just the 0'th elt is demanded

Apparently this has no test coverage before D108382,
but D108382 itself shows a few regressions that this fixes.

It doesn't seem worthwhile breaking apart broadcasts,
assuming we want the broadcasted value to be preset in several elements,
not just the 0'th one.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D108411
The file was modifiedllvm/test/CodeGen/X86/sse41.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-sum.ll
The file was modifiedllvm/test/CodeGen/X86/copy-low-subvec-elt-to-high-subvec-elt.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit cf8fac7d07307bc6679d60c3ad3e7a7792a2caa6 by llvm-dev
[X86][Atom] Specific uops for all IMUL/IDIV instructions

Based off a mixture of llvm-exegesis captures (PR36895) and Intel AoM / Agner / InstLatX64 reports.
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-x86_64.s
The file was modifiedllvm/lib/Target/X86/X86ScheduleAtom.td
Commit 2ca637c9769ff50e94ace3083075a97b50d147f0 by dblaikie
llvm-dwarfdump: Refactor type pretty printing tests

Move most type tests to a pre-generated assembly file to make it easier
to add more weird cases without having to hand craft more DWARF.

Move the novel array types that aren't reachable via clang-generated
DWARF to a separate file for easy maintenance.
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types.s
The file was addedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types_handcrafted.s
Commit b7342e3137d8fa7c356a80c1ddecf1d410c27eef by llvm-dev
[X86] Fold SHUFPS(shuffle(x),shuffle(y),mask) -> SHUFPS(x,y,mask')

We can combine unary shuffles into either of SHUFPS's inputs and adjust the shuffle mask accordingly.

Unlike general shuffle combining, we can be more aggressive and handle multiuse cases as we're not going to accidentally create additional shuffles.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/horizontal-sum.ll
The file was modifiedllvm/test/CodeGen/X86/vselect.ll
Commit f855ef260148df0f08c73a70b9425a5215232874 by llvm-dev
[X86][Atom] Fix FP uops + port usage

Both ports are required in most cases. Update the uops counts + port usage based off the most recent llvm-exegesis captures (PR36895) and what Intel AoM / Agner / InstLatX64 reports as well.

Noticed while trying to improve fp costs for vectorization via the D103695 helper script.
The file was modifiedllvm/lib/Target/X86/X86ScheduleAtom.td
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-sse1.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-x87.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-sse2.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-sse3.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-ssse3.s
Commit f09ca5c6461b604113b6e1adb825be2d92575aff by dblaikie
DWARFDie: Improve type printing for function and array types - with qualifiers (cv/reference) and pointers to them
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types.s
Commit a51fb58c557c2cd217eddc8a2332b245350118cf by dblaikie
DWARFDie.cpp: Minor follow-up clang-format
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit 2bde3dcd32b3ce2c8855d13659c6708f4434a985 by craig.topper
[X86] Add test cases for pr51908. NFC
The file was modifiedllvm/test/CodeGen/X86/sse41-intrinsics-x86.ll
The file was modifiedllvm/test/CodeGen/X86/avx2-intrinsics-x86.ll
Commit 391fa371fdfbc5ea4d4a924aebb27cb77d483da4 by craig.topper
[X86] Remove Commutable flag from mpsadbw intrinsics.

Unlike psadbw, mpsadbw is not commutable because of how it operates
on blocks. We already marked as not commutable for MachineIR, but
had it commutable for the tablegened isel patterns.

Fixes PR51908.
The file was modifiedllvm/include/llvm/IR/IntrinsicsX86.td
The file was modifiedllvm/test/CodeGen/X86/avx2-intrinsics-x86.ll
The file was modifiedllvm/test/CodeGen/X86/sse41-intrinsics-x86.ll
Commit 372e2c24b6e17bbff8fe6ed488cff5f7b7abd2b7 by dblaikie
llvm-dwarfdump: Pretty printing types including a space between const and parenthesized references/pointers to arrays
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types.s
Commit 5ba8020326a522c0dfa32f59a472fe20bee4908a by chris.jackson
[DebugInfo][LSR] Emit shorter expressions from scev-based salvaging

The scev-based salvaging for LSR can sometimes produce unnecessarily
verbose expressions. This patch adds logic to detect when the value to
be recovered and the induction variable differ by only a constant
offset. Then, the expression to derive the current iteration count can
be omitted from the dbg.value in favour of the offset.

Reviewed by: aprantl

Differential Revision: https://reviews.llvm.org/D109044
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modifiedllvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
Commit 84b07c9b3aa79e073a97290bdd30d98b1941a536 by kazu
[llvm] Use pop_back_val (NFC)
The file was modifiedllvm/lib/Analysis/StackSafetyAnalysis.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
The file was modifiedllvm/lib/CodeGen/LiveVariables.cpp
The file was modifiedllvm/lib/IR/Value.cpp
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
The file was modifiedllvm/lib/Analysis/MemorySSAUpdater.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/CodeGen/LiveRangeEdit.cpp
The file was modifiedllvm/lib/CodeGen/LoopTraversal.cpp
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
The file was modifiedllvm/lib/CodeGen/ReachingDefAnalysis.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
The file was modifiedllvm/lib/Target/ARM/A15SDOptimizer.cpp
Commit 0e89ff8195e994e5051f19669e1044d47120ac06 by llvm-dev
[X86] SimplifyDemandedBits - only narrow a broadcast source if we only have one use.

Helps with the regression noted on D109065 - don't truncate a broadcast source if the source has multiple uses.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/oddshuffles.ll
Commit 5bfe5207ef283194a76616e5693a67a14c158ae3 by dblaikie
llvm-dwarfdump: Pretty print names qualified/with scopes
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/DebugInfo/X86/addr-tu-to-non-tu.ll
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types.s
Commit 11e0b79b056a5f1ba1feb81872aee67709f34834 by dblaikie
llvm-dwarfdump: Don't print even an empty string when a type is unprintable
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/verify_debug_info.s
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit 606ea0dd2a7308d4af222ddcf0ae66c6267cb90d by dblaikie
llvm-dwarfdump: support for type printing "decltype(nullptr)" as "nullptr_t"

This should probably be rendered as "std::nullptr_t" but for now clang
uses the unqualified name (which is ambiguous with possible user defined
name in the global namespace), so match that here.
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types.s
Commit cb42bb355061235f1c4190c8a35e59e4cfb15163 by dblaikie
llvm-dwarfdump: pretty type printing: print fully qualified names in function type parameter types
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/prettyprint_types.s
Commit def15c5fb6a117c1b6d8b2835f6760f814410582 by mkazantsev
[SCEV] Support negative values in signed/unsigned predicate reasoning

There is a piece of logic that uses the fact that signed and unsigned
versions of the same predicate are equivalent when both values are
non-negative. It's also true when both of them are negative.

Differential Revision: https://reviews.llvm.org/D109957
Reviewed By: nikic
The file was modifiedllvm/test/Transforms/IndVarSimplify/negative_ranges.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 74670e79b0a00224c04dfc6a446ea4439f4cfca4 by sivachandra
[libc] Add implementations of div, ldiv, lldiv and imaxdiv.

Reviewed By: michaelrj

Differential Revision: https://reviews.llvm.org/D109952
The file was addedlibc/src/inttypes/imaxdiv.cpp
The file was addedlibc/test/src/stdlib/lldiv_test.cpp
The file was addedlibc/test/src/inttypes/imaxdiv_test.cpp
The file was addedlibc/test/src/stdlib/DivTest.h
The file was addedlibc/src/stdlib/ldiv.h
The file was modifiedlibc/test/src/inttypes/CMakeLists.txt
The file was modifiedlibc/src/__support/integer_operations.h
The file was addedlibc/src/stdlib/lldiv.h
The file was modifiedlibc/src/stdlib/CMakeLists.txt
The file was modifiedlibc/spec/stdc.td
The file was addedlibc/src/inttypes/imaxdiv.h
The file was addedlibc/src/stdlib/div.cpp
The file was addedlibc/test/src/stdlib/div_test.cpp
The file was addedlibc/src/stdlib/ldiv.cpp
The file was modifiedlibc/config/linux/x86_64/entrypoints.txt
The file was addedlibc/test/src/stdlib/ldiv_test.cpp
The file was modifiedlibc/src/inttypes/CMakeLists.txt
The file was addedlibc/src/stdlib/div.h
The file was modifiedlibc/config/linux/api.td
The file was modifiedlibc/config/linux/aarch64/entrypoints.txt
The file was addedlibc/src/stdlib/lldiv.cpp
The file was modifiedlibc/test/src/stdlib/CMakeLists.txt
Commit 471217cff8e5c827f2ee52175a1c94584699cab2 by mkazantsev
Revert "Revert "[IndVars] Replace PHIs if loop exits on 1st iteration""

This reverts commit 6fec6552f54885ae06bf76b35f9f1173a0561a4c.

The patch was reverted on incorrect claim that this patch may break LCSSA form
when the loop is not in a simplify form. All IndVars' transform insure that
the loop is in simplify and LCSSA form, so if it wasn't broken before this
transform, it will also not be broken after it.
The file was modifiedllvm/test/Transforms/IndVarSimplify/eliminate-exit-no-dl.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/eliminate-backedge.ll
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
The file was modifiedllvm/test/Transforms/IndVarSimplify/floating-point-iv.ll
Commit e9d34c54290e277e075aed33036fddae77b5f582 by mkazantsev
[NFC] Add assert and test showing that revert of D109596 wasn't justified

All transforms of IndVars have prerequisite requirement of LCSSA and LoopSimplify
form and rely on it. Added test that shows that this actually stands.
The file was modifiedllvm/test/Transforms/IndVarSimplify/eliminate-backedge.ll
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Commit 5252aa2981ba19417b3ea68b22e8be33d5623368 by sivachandra
[libc][obvious] Make *abs and *div functions buildable in default mode.
The file was modifiedlibc/src/stdlib/CMakeLists.txt
Commit f5b8f1247cd9d1b18b7b95f6f197d4d654597529 by sivachandra
[libc][obvious] Add inttypes.h and stdlib.h as deps to *div functions.
The file was modifiedlibc/src/inttypes/CMakeLists.txt
The file was modifiedlibc/src/stdlib/CMakeLists.txt
Commit 966922320f09b8bf6e4a69a32f344b3acec36434 by pavel
[lldb] Remove two #ifndef linux from Platform.cpp

These have been here since r215992, guarding the calls to HostInfo, but
their purpose unclear -- HostInfoLinux provides these functions and they
work fine.
The file was modifiedlldb/source/Target/Platform.cpp
Commit 9a2255dfa012ad0334eacb2d09da7aa4db249c51 by vlad.vinogradov
[mlir][NFC] Add explicit "::mlir" namespace to tblgen generated code

Reviewed By: lattner, ftynse

Differential Revision: https://reviews.llvm.org/D109223
The file was modifiedmlir/include/mlir/IR/OpBase.td
Commit ec03bbe8a74ae593d0ea5d8bf55c337e395873d1 by vlad.vinogradov
[mlir] Fix bug in partial dialect conversion

The discussion on forum:
https://llvm.discourse.group/t/bug-in-partial-dialect-conversion/4115

The `applyPartialConversion` didn't handle the operations, that were
marked as illegal inside dynamic legality callback.
Instead of reporting error, if such operation was not converted to legal set,
the method just added it to `unconvertedSet` in the same way as unknown operations.

This patch fixes that and handle dynamically illegal operations as well.

The patch includes 2 fixes for existing passes:

* `tensor-bufferize` - explicitly mark `std.return` as legal.
* `convert-parallel-loops-to-gpu` - ugly fix with marking visited operations
  to avoid recursive legality checks.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D108505
The file was modifiedmlir/lib/Conversion/SCFToGPU/SCFToGPUPass.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
The file was modifiedmlir/lib/Dialect/Tensor/Transforms/Bufferize.cpp
The file was modifiedmlir/lib/Transforms/Utils/DialectConversion.cpp
The file was modifiedmlir/test/Transforms/test-legalizer-full.mlir
The file was modifiedmlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
The file was modifiedmlir/include/mlir/Conversion/SCFToGPU/SCFToGPU.h
The file was modifiedmlir/test/Transforms/test-legalizer.mlir
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
Commit 76cb876563d0e2a3c850b14ca68638be9f6124a0 by arjunpitchanathan
[MLIR] Simplex::appendVariable: early return if count == 0
The file was modifiedmlir/lib/Analysis/Presburger/Simplex.cpp
The file was modifiedmlir/unittests/Analysis/Presburger/SimplexTest.cpp
Commit 4b80f0125adc876c8ef325f1c0ace4af023f2264 by i
[CMake] Add debuginfo-tests to LLVM_ALL_PROJECTS after D110016
The file was modifiedllvm/CMakeLists.txt
Commit 7f6a4826ac49e4c7075f80930480045bf983483c by flo
[CaptureTracking] Allow passing LI to PointerMayBeCapturedBefore (NFC).

isPotentiallyReachable can use LoopInfo to return earlier. This patch
allows passing an optional LI to PointerMayBeCapturedBefore. Used in
D109844.

Reviewed By: nikic, asbirlea

Differential Revision: https://reviews.llvm.org/D109978
The file was modifiedllvm/lib/Analysis/CaptureTracking.cpp
The file was modifiedllvm/include/llvm/Analysis/CaptureTracking.h
Commit bdcf4b9b9620afe24d17132027a7d12e2f1a598b by kareem.ergawy
[MLIR][Linalg] Make detensoring cost-model more flexible.

So far, the CF cost-model for detensoring was limited to discovering
pure CF structures. This means, if while discovering the CF component,
the cost-model found any op that is not detensorable, it gives up on
detensoring altogether. This patch makes it a bit more flexible by
cleaning-up the detensorable component from non-detensorable ops without
giving up entirely.

Reviewed By: silvas

Differential Revision: https://reviews.llvm.org/D109965
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Detensorize.cpp
The file was addedmlir/test/Dialect/Linalg/detensorize_while_impure_cf.mlir
The file was removedmlir/test/Dialect/Linalg/detensorize_while_failure.mlir
Commit 92904cc68fbc1d000387b30accc8b05b3fe95daa by mgorny
[lldb] [gdb-remote] Remove unused arg from GDBRemoteRegisterContext::ReadRegisterBytes()

Differential Revision: https://reviews.llvm.org/D110020
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
Commit f6e0edc23e6199bbb5fb4ef3b018b49a5b303183 by mgorny
[lldb] [gdb-remote] Recognize aarch64v type from gdbserver

Differential Revision: https://reviews.llvm.org/D109899
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py
Commit 92c9b28347c38cc15adf20223ed272abe8ec0227 by david.spickett
Revert "[AArch64][SVE] Teach cost model that masked loads/stores are cheap"

This reverts commit 734708e04f84b72f1ae7c8b35c002b8bf97dc064.

Due to build failures on the 2 stage SVE VLS bot.
https://lab.llvm.org/buildbot/#/builders/176/builds/908/steps/11/logs/stdio
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
The file was removedllvm/test/Analysis/CostModel/AArch64/masked_ldst_vls.ll
Commit 798e4bfbeda824551fa89a388969baa2abbc2411 by vlad.vinogradov
[mlir] Fix integration tests failures introduced in D108505
The file was modifiedmlir/lib/Dialect/Tensor/Transforms/Bufferize.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp
Commit 13aa102e07695297fd17f68913c343c95a7c56ad by Tim Northover
AArch64: use ldp/stp for 128-bit atomic load/store in v.84 onwards

v8.4 says that normal loads/stores of 128-bytes are single-copy atomic if
they're properly aligned (which all LLVM atomics are) so we no longer need to
do a full RMW operation to guarantee we got a clean read.
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was addedllvm/test/CodeGen/AArch64/v8.4-atomic-128.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64.td
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic-128.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/v8.4-atomic-128.ll
The file was modifiedllvm/test/CodeGen/AArch64/atomic-ops-lse.ll
Commit ca3bebd8440f9f88f1457dad9c12933b73d9590f by Justas.Janickas
[OpenCL] Supports optional writing to 3d images in C++ for OpenCL 2021

Adds support for a feature macro __opencl_c_3d_image_writes in
C++ for OpenCL 2021 enabling a respective optional core feature
from OpenCL 3.0.

This change aims to achieve compatibility between C++ for OpenCL
2021 and OpenCL 3.0.

Differential Revision: https://reviews.llvm.org/D109328
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/test/Misc/opencl-c-3.0.incorrect_options.cl
The file was modifiedclang/test/SemaOpenCL/unsupported-image.cl
Commit 15feaaa359c7245bb59ff0a2aa3b806682f44286 by alexey.bader
Add myself as a code owner for SYCL support
The file was modifiedclang/CODE_OWNERS.TXT
Commit eb3af1e77341e82249993a5a8a50779c48e1cb61 by wingo
[clang][NFC] Remove dead code

Remove code that has no effect in SemaType.cpp:processTypeAttrs.

Differential Revision: https://reviews.llvm.org/D108360
The file was modifiedclang/lib/Sema/SemaType.cpp
Commit c8cb7f611fdf4d96c4d23a75aa48c93cca38646f by bjorn.a.pettersson
[NewPM] Make InlinerPass (aka 'inline') a parameterized pass

In default pipelines the ModuleInlinerWrapperPass is adding the
InlinerPass to the pipeline twice, once due to MandatoryFirst (passing
true in the ctor) and then a second time with false as argument.

To make it possible to bisect and reduce opt test cases for this
part of the pipeline we need to be able to choose between the two
different variants of the InlinerPass when running opt. This patch is
changing 'inline' to a CGSCC_PASS_WITH_PARAMS in the PassRegistry,
making it possible run opt with both -passes=cgscc(inline) and
-passes=cgscc(inline<only-mandatory>).

Reviewed By: aeubanks, mtrofin

Differential Revision: https://reviews.llvm.org/D109877
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Inliner.h
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
Commit e4c46ddd91eba5ec162225abc1e47aa3c6c13516 by petar.avramovic
[GlobalISel] Improve elimination of dead instructions in legalizer

Add eraseInstr(s) utility functions. Before deleting an instruction
collects its use instructions. After deletion deletes use instructions
that became trivially dead.
This patch clears all dead instructions in existing legalizer mir tests.

Differential Revision: https://reviews.llvm.org/D109154
The file was modifiedllvm/lib/CodeGen/GlobalISel/Legalizer.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-or.mir
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/legalize-ashr-scalar.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpy.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-saddsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/bug-legalization-artifact-combiner-dead-def.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-unmerge-values.mir
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/legalizer/zextLoad_and_sextLoad.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssube.mir
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ffloor.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memset.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-unmerge-values.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-and.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-insert-vector-elt.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shuffle-vector.s16.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uadde.mir
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/legalizer/bitwise.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fabs.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-zext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-anyext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sadde.mir
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/legalizer/constants.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shuffle-vector.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-extract-vector-elt.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-extract.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-concat-vectors.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ashr.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fcos.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-xor.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memmove.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-add.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-intrinsic-round.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-build-vector.s16.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sext-inreg.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-sadde.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-lshr.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/artifact-find-value.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extract-vector-elt.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umax.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-uaddo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fminnum.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usube.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smax.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-trunc.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ushlsat.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-merge-values.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fshr.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ctlz-zero-undef.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-mul.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sdiv.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-ssubo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fsqrt.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fadd.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.load.2d.d16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def-s1025.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/legalizer/zext_and_sext.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-ssube.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpyinline.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.dim.a16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usubsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fma.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-shift.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmaxnum.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umulo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-bswap.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-brcond.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-uadde.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fshl.mir
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/legalize-shl-scalar.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-ssubsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usubo.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/legalize-lshr-scalar.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extract.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-zext.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-usubo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fsub.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-udiv.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-usube.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ctlz.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uaddsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smulo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sub.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fpext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uaddo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sext.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-saddo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.load.2d.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-bswap.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddo.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fsin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.store.2d.d16.ll
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/legalizer/trunc.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-extload.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-phi-insertpt-decrement.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-and.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fneg.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-freeze.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-phi.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umulh.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fcanonicalize.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sshlsat.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/Utils.h
Commit b1099120ff963d0a0f1de12e3315b1ee4e4ed7e7 by mgorny
[lldb] [gdb-remote] Always send PID when detaching w/ multiprocess

Always send PID in the detach packet when multiprocess extensions are
enabled.  This is required by qemu's GDB server, as plain 'D' packet
results in an error and the emulated system is not resumed.

Differential Revision: https://reviews.llvm.org/D110033
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
Commit d6929aaa67c7996a69451e301970408362af909e by clementval
[mlir][openacc] Make use of the second counter extension in DataOp translation

Make use of runtime extension for the second reference counter used in
structured data region. This extension is implemented in D106510 and D106509.

Differential Revision: https://reviews.llvm.org/D106517
The file was modifiedmlir/lib/Target/LLVMIR/Dialect/OpenACC/OpenACCToLLVMIRTranslation.cpp
The file was modifiedmlir/test/Target/LLVMIR/openacc-llvm.mlir
Commit ea17b15f2dcdc77881cc0183dce4dea1aff9bffa by llvm-dev
[MCA] InstructionTables::execute() - use const-ref iterator in for-range loop. NFCI.

Avoid unnecessary copies, reported by MSVC static analyzer.
The file was modifiedllvm/lib/MCA/Stages/InstructionTables.cpp
Commit 4ab7c0d3fa068fb0ce39b9f75c0253d45a99745e by llvm-dev
[X86] X86TargetTransformInfo - remove unnecessary if-else after early exit. NFCI.

(style) Break the if-else chain as they all return.
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit 7fc12b822c5d1360780667af94c218733c3fc4e0 by llvm-dev
MachOObjectFile - checkOverlappingElement - use const-ref to avoid unnecessary copies. NFCI.

Reported by MSVC static analyzer.
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
Commit 6d7b3d6b3a8dbd62650b6c3dae1fe904a8ae9048 by Alexander.Richardson
Fix CLANG_ENABLE_STATIC_ANALYZER=OFF building all analyzer source

Since https://reviews.llvm.org/D87118, the StaticAnalyzer directory is
added unconditionally. In theory this should not cause the static analyzer
sources to be built unless they are referenced by another target. However,
the clang-cpp target (defined in clang/tools/clang-shlib) uses the
CLANG_STATIC_LIBS global property to determine which libraries need to
be included. To solve this issue, this patch avoids adding libraries to
that property if EXCLUDE_FROM_ALL is set.

In case something like this comes up again: `cmake --graphviz=targets.dot`
is quite useful to see why a target is included as part of `ninja all`.

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D109611
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
The file was modifiedclang/lib/StaticAnalyzer/CMakeLists.txt
The file was modifiedclang/cmake/modules/AddClang.cmake
Commit 7b68c0725d89ac9bd48b9b6a51d9cd0bc7146829 by Alexander.Richardson
pre-commit test for D109767

Differential Revision: https://reviews.llvm.org/D109765
The file was addedllvm/test/tools/UpdateTestChecks/update_mir_test_checks/x86-condbr.test
The file was addedllvm/test/tools/UpdateTestChecks/update_mir_test_checks/lit.local.cfg
The file was addedllvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-condbr.mir
The file was addedllvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-condbr.mir.expected
Commit 817e23d481be52e6e0fd779efce2beb105e8c7b6 by Alexander.Richardson
[update_mir_test_checks.py] Use -NEXT FileCheck directories

Previously the script emitted output using plain CHECK directives. This
can result in a test passing even if there are some instructions between
CHECK directives that should have been removed. It also makes debugging
tests that have the output in a different order more difficult since
FileCheck can match with a later line and then complain about the "wrong"
directive not being found.

This will cause quite large diffs when updating existing tests, but I'm not sure we need an opt-in flag here.

Depends on D109765 (pre-commit tests)

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D109767
The file was modifiedllvm/utils/update_mir_test_checks.py
The file was modifiedllvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-condbr.mir.expected
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/select-phi.mir
Commit 3f90df22f1b72932016102daf8e92e99252e5589 by david.green
[ARM] MVE reverse shuffles.

The vectorizer can sometimes make reverse shuffles from indices that
count down. In MVE, we don't have a 128bit rev instruction, but we can
select this to a VREV64 with some lane movs to swap the two halfs.

Ideally this would use VMOVD's, but only gets as far as VMOVS's at the
moment.

Differential Revision: https://reviews.llvm.org/D69510
The file was modifiedllvm/test/CodeGen/Thumb2/mve-shuffle.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-shufflemov.ll
Commit fae57a6a9795eccfa349270b110c09524e341abd by shivam98.tkg
[Clang] [Fix] Clang build fails when build directory contains space character

Clang build fails when build directory contains space character.

Error messages:

[ 95%] Linking CXX executable ../../../../bin/clang
clang: error: no such file or directory: 'Space/Net/llvm/Build/tools/clang/tools/driver/Info.plist'
make[2]: *** [bin/clang-14] Error 1
make[1]: *** [tools/clang/tools/driver/CMakeFiles/clang.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

The path name is actually:
  'Dev Space/Net/llvm/Build/tools/clang/tools/driver/Info.plist'

Bugzilla issue - https://bugs.llvm.org/show_bug.cgi?id=51884
Reporter and patch author - Brain Swift <bsp2bsp-llvm@yahoo.com>

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D109979
The file was modifiedclang/tools/driver/CMakeLists.txt
Commit 4737dcbc83e05ac97c8695cf9a19bddb6446d71f by mgorny
[lldb] [test] Add unittest for DynamicRegisterInfo::Finalize()

Differential Revision: https://reviews.llvm.org/D109906
The file was addedlldb/unittests/Process/Utility/DynamicRegisterInfoTest.cpp
The file was modifiedlldb/unittests/Process/Utility/CMakeLists.txt
Commit ec50d351ffdd4559ccce6013d3ab4a3f41c42cee by mgorny
[lldb] [DynamicRegisterInfo] Unset value_regs/invalidate_regs before Finalize()

Set value_regs and invalidate_regs in RegisterInfo pushed onto m_regs
to nullptr, to ensure that the temporaries passed there are not
accidentally used.

Differential Revision: https://reviews.llvm.org/D109879
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp
The file was modifiedlldb/unittests/Process/Utility/DynamicRegisterInfoTest.cpp
Commit 6de19ea4b6264e64cea145e00ab66fe1530fc0a0 by aaron.puchert
Thread safety analysis: Drop special block handling

Previous changes like D101202 and D104261 have eliminated the special
status that break and continue once had, since now we're making
decisions purely based on the structure of the CFG without regard for
the underlying source code constructs.

This means we don't gain anything from defering handling for these
blocks. Dropping it moves some diagnostics, though arguably into a
better place. We're working around a "quirk" in the CFG that perhaps
wasn't visible before: while loops have an empty "transition block"
where continue statements and the regular loop exit meet, before
continuing to the loop entry. To get a source location for that, we
slightly extend our handling for empty blocks. The source location for
the transition ends up to be the loop entry then, but formally this
isn't a back edge. We pretend it is anyway. (This is safe: we can always
treat edges as back edges, it just means we allow less and don't modify
the lock set. The other way around it wouldn't be safe.)

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D106715
The file was modifiedclang/lib/Analysis/ThreadSafety.cpp
The file was modifiedclang/test/PCH/thread-safety-attrs.cpp
The file was modifiedclang/test/SemaCXX/warn-thread-safety-analysis.cpp
Commit 68914dc99083716d6e9868