SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [libcxx][test] Silence MSVC narrowing warning (details)
  2. [AIX] Actually push back "-mabi=vec-extabi" when option is on. (details)
  3. [VE] Add include for formatted_raw_ostream after 046cfb856517c6140d5e1c0989232e26d00b05b2 (details)
  4. [GlobalISel] Remove hint instructions in generic InstructionSelect code. (details)
  5. [CMake] Actually require python 3.6 or greater (details)
  6. Revert "[CMake] Actually require python 3.6 or greater" (details)
  7. [mlir] Preserve lexicographic order after loop collapsing. (details)
  8. [clang-tidy] Fix linking tests to LLVMTestingSupport (details)
  9. Emit metadata when instr. profiles hash mismatch occurs. (details)
  10. [SVE] delete VectorType::getNumElements() (details)
  11. [LowerConstantIntrinsics] Preserve Dominator Tree, if avaliable (details)
  12. [ShadowStackGCLowering] Preserve Dominator Tree, if avaliable (details)
  13. [ExpandMemCmpPass] Preserve Dominator Tree, if available (details)
  14. [AMDGPU] Be more specific in needsFrameBaseReg (details)
  15. [NFC][RISCV] Remove redundant pseudo instructions for vector load/store. (details)
  16. [RISCV] Update the version number to v0.10 for vector. (details)
  17. [flang] Support disabled alternative PARAMETER statement (details)
  18. [RISCV]  Update the version number to v0.10 for vector. (details)
  19. Update ElementsAttr::isValidIndex to handle ElementsAttr with a scalar. Scalar will have rank 0. (details)
  20. [VFS] Combine VFSFromYamlDirIterImpl and OverlayFSDirIterImpl into a single implementation (NFC) (details)
  21. [RISCV] Merge rv32 and rv64 vector fadd/fsub/fmul/fdiv sdnode tests into single tests files with 2 run lines. (details)
  22. Use type alias for large tuples (details)
  23. Detect Source Drift with Propeller. (details)
  24. [X86] Fix tile config register spill issue. (details)
  25. [llvm-objdump-macho] print per-second-level-page encodings for option --unwind-info (details)
  26. [lld-macho][NFC] Add new option group for versions (details)
  27. [NFC][VFS] Fix a build warning due to an extra semicolon (details)
  28. [llvm] Use append_range (NFC) (details)
  29. [llvm] Use llvm::lower_bound and llvm::upper_bound (NFC) (details)
  30. [llvm] Use isa instead of dyn_cast (NFC) (details)
  31. [ELF][test] Add --emit-relocs --gc-sections test for relocation section for a non-SHF_ALLOC section (details)
  32. [LTO] Use lto::backend for code generation. (details)
  33. [LTO] Add option enable NewPM with LTOCodeGenerator. (details)
  34. [compiler-rt][tests] Define TARGET_FLAGS (details)
  35. [ASTMatchers] Fix traversal below range-for elements (details)
  36. [LoopUnswitch] Properly update MSSA if header has non-clobbering stores. (details)
  37. Fix traversal with hasDescendant into lambdas (details)
  38. [llvm-symbolizer] - Fix the crash in GNU output style with --no-inlines and missing input file. (details)
  39. [RISCV] Update extractelt tests to sign-extend results (NFC) (details)
  40. [ASTMatchers] Fix definition of decompositionDecl (details)
  41. [TableGen] Use ListSeparator (NFC) (details)
  42. [AMDGPU] Forward-declare AMDGPUTargetMachine (NFC) (details)
  43. [llvm] Add missing header guards (NFC) (details)
  44. [ConstraintElimination] Verify CS and DFSInStack are in sync.(NFC) (details)
  45. [OpenMP][NVPTX] Refined CMake logic to choose compute capabilites (details)
  46. [TableGen] Avoid a couple vector copies in ExpandHwModeBasedTypes. (details)
  47. [TableGen] Use emplace_back to add to PatternsToMatch in GenerateVariants. Use std::move when adding to PatternsToMatch in AddPatternToMatch. (details)
  48. [RISCV] Use MVT instead of EVT in RISCVISelDAGToDAG.cpp (details)
  49. [flang] Improve shape & length characterization (details)
  50. [mlir][AVX512] Fix result type of vp2intersect (details)
  51. [RISCV] Add rv64 command line to bswap-ctlz-cttz-ctpop.ll. (details)
  52. [docs] Clarify compile_flags.txt subtleties (details)
  53. [clangd] Quote/escape argv included in log messages. (details)
  54. [clangd] Remove references to old future-based API. NFC (details)
  55. [libc++] Allow building with C++17. (details)
  56. [dsymutil][DWARFLinker][NFC] make AddressManager not depending on the order of checks for relocations. (details)
  57. Revert "[clangd] Quote/escape argv included in log messages." (details)
  58. Reland [clangd] Quote/escape argv included in log messages. (details)
  59. AMDGPU: Add missing consts (details)
  60. RegAlloc: Fix assert if all registers in class reserved (details)
  61. [VE] Fix compiler warnings (NFC) (details)
  62. [TableGen] Use ListSeparator (NFC) (details)
  63. [llvm] Drop unnecessary const from return types (NFC) (details)
  64. [lldb] [Process/FreeBSDRemote] Introduce arm64 support (details)
  65. [lldb] [Process/FreeBSDRemote] Introduce arm (32-bit) support (details)
  66. [ConstraintElimination] Add tests for ICMP_EQ predicates. (details)
  67. [LTOCodeGenerator] Use lto::Config for options (NFC). (details)
  68. [LSan][RISCV] Enable LSan for RISCV64 (details)
  69. Fix omitted kw in type alias printer (details)
  70. [RISCV][LegalizeTypes] Try to expand BSWAP before promoting if the promoted BSWAP would expand anyway. (details)
  71. CFG: Create scope for non-compound range-for body. (details)
  72. [CMake][compiler-rt][RISCV] Support RISC-V cross-compilation (details)
  73. [Sanitizer][RISCV] Fix FastUnwindTest (details)
  74. [CodeGenPrepare] Also skip lifetime.end intrinsic when check return block in dupRetToEnableTailCallOpts. (details)
  75. Fix test in "CFG: Create scope for non-compound range-for body." (details)
  76. [OpenMP] Fix comment and assertion strings (NFC). (details)
  77. [JITLink] Add missing symbols for ELF ehframe testcase, re-enable on Windows. (details)
  78. [RISCV] Custom lower fshl/fshr with Zbt extension. (details)
  79. Revert "[JITLink] Add missing symbols for ELF ehframe testcase, re-enable ...." (details)
  80. [X86] Cleanup isel patterns to use 'vnot' instead of (xor X, immAllOnesV) to improve readability. NFC (details)
  81. [PowerPC] Remove vnot_ppc and replace with the standard vnot. (details)
  82. [Mips] Cleanup isel patterns to use 'vnot' instead of (xor X, immAllOnesV). NFCI (details)
  83. [FPEnv] Intrinsic for setting rounding mode (details)
  84. [TableGen] Don't commute isel patterns if it would put an immAllOnesV or immAllZerosV on the left hand side. (details)
  85. [OpenMP] Fix python3 compatibility in openmp's lit.cfg (details)
  86. [mlir][Linalg] Replace SimplePad with PadTensor in hoist-padding (details)
  87. [mlir] Fix missing null termination in cuLinkAddData argument. (details)
  88. Revert "[mlir][Linalg] Replace SimplePad with PadTensor in hoist-padding" (details)
  89. [lldb][docs] Attempt to disable the generated GitHub button on the LLDB website (details)
  90. [LoopPeel] Use llvm.experimental.noalias.scope.decl for duplicating noalias metadata as needed. (details)
  91. [LoopUnswitch] Add shortcut if unswitched path is a no-op. (details)
  92. [LoopUnswitch] Pacify compiler warnings. (details)
  93. [VE] Change inetger constants 32-bit friendly (details)
  94. [ARM] Simplify extract of VMOVDRR (details)
  95. [X86][AVX] combineExtractWithShuffle - combine extracts from 256/512-bit vector shuffles. (details)
  96. [Verifier] enable llvm.experimental.noalias.scope.decl dominance check. (details)
  97. [ARM] Turn sext_inreg(VGetLaneu) into VGetLaneu (details)
  98. [Branch-Rename] Fix some links (details)
  99. [lldb/API] Expose Module::IsLoadedInTarget() to SB API (NFC) (details)
  100. [AMDGPU][MC] Corrected error position for invalid operands (details)
  101. [lldb] Remove a stray semicolon, fixing GCC warnings. NFC. (details)
  102. Revert "[clang][cli] Port OpenMP-related LangOpts to marshalling system" (details)
  103. [lldb] Use current execution context in SBDebugger (details)
  104. NFC: Migrate SpeculativeExecution to work on InstructionCost (details)
  105. [LV] Fix crash when computing max VF too early (details)
  106. GlobalISel: check type size before getZExtValue()ing it. (details)
  107. [lldb/test] Skip `SBTarget::IsLoaded` test on windows (NFC) (details)
  108. [ConstraintElimination] Add tests for signed predicates. (details)
  109. Revert "[Verifier] enable llvm.experimental.noalias.scope.decl dominance check." (details)
  110. [SCEV] Bail out if URem operand cannot be zero-extended. (details)
  111. [SVE][CodeGen] Remove performMaskedGatherScatterCombine (details)
  112. [clangd] Rename: merge index/AST refs path-insensitively where needed (details)
  113. [gn build] Port b63cd4db915c (details)
  114. [clangd] Don't rely on builtin headers for document-link.test. (details)
  115. [libc++] Fix for the Bug 41784 (details)
  116. [APFloat] multiplySignificand - pass IEEEFloat as const reference. NFCI. (details)
  117. [TableGen] Fix anonymous record self-reference in foreach and multiclass (details)
  118. [clangd] Respect ReferencesParams.context.includeDeclarations (details)
  119. [ARM] Simplify VMOVRRD from extracts of buildvectors (details)
  120. [SimplifyCFG] NFC: Rename static methods to clang-tidy standards. (details)
  121. NFC: Migrate SimplifyCFG to work on InstructionCost (details)
  122. Revert rGce587529ad8b5 - "[APFloat] multiplySignificand - pass IEEEFloat as const reference. NFCI." (details)
  123. [clangd] references: decls of overrides of x are refs to x, not decls (details)
  124. [OpenMP] Fix seg fault in libomptarget when using Info with multiple threads (details)
  125. [clangd] Remove some obsolete options that are now always on (details)
  126. [compiler-rt] Fix AArch64 out-of-line atomics visibility on mach-o (details)
  127. [AMDGPU] Fix crash with sgpr spills to vgpr disabled (details)
  128. [AMDGPU] Fix release build after 0397dca0. (details)
  129. [flang] Fix parsing of WRITE(I+J) with more accurate look-ahead (details)
  130. [ConstraintElimination] Negate IR condition directly. (details)
  131. [RISCV] Optimize (srl (and X, 0xffff), C) -> (srli (slli X, 16), 16 + C). (details)
  132. [GlobalISel] Make sure G_ASSERT_ZEXT's src ends up with the same rc as dst (details)
  133. [RISCV] Update comment text from D95774. NFC (details)
  134. [RISCV] Add scalable vector support for floating point FMA instructions (details)
  135. [LTO] Move part of gold devirt test to v1.16 directory (details)
  136. [AArch64][GlobalISel] Emit G_ASSERT_ZEXT in assignValueToReg (details)
  137. [libc++] Implements concept default_initializable. (details)
  138. [OpenMP] Disable tests if FileCheck is not available in in-tree building (details)
  139. [X86][SSE] LowerScalarImmediateShift - use APInt::getLowBitsSet for vXi8 ISD::SRL mask generation. NFCI. (details)
  140. [X86][AVX] Add 'OK' tests cases for PR48877 (details)
  141. [flang][directive] Enforce basic semantic check for all clauses (details)
  142. [NFC] Disallow unused prefixes under clang/test/Driver (details)
  143. [libc] Small adjustments to fenv tests (details)
  144. [InstCombine] add tests for min/max with extend and constant operand; NFC (details)
  145. [InstCombine] try to narrow min/max intrinsics with constant operand (details)
  146. [clang][PATCH] Fix bug 48848 assertion related to recoverFromMSUnqualifiedLookup (details)
  147. [elfabi] Fix tests which failed on different timezones (details)
  148. [X86] Accept 64-bit GPRs for vextractps when using a register that requires EVEX. (details)
  149. [NewPM][Unswitch] Add option to disable -O3 non-trivial unswitching (details)
  150. [ARM] Flatten identity shuffles through vqdmulh nodes (details)
  151. [libc][NFC] Add a death test API adaptation macro (details)
  152. [libc++][format] Add basic_format_parse_context. (details)
  153. [ConstantHoisting] Fix bug where constant materialization could insert into EH pad (details)
  154. [WebAssembly] fixed wasm64 data segment init exp not 64-bit (details)
  155. [mlir][Linalg] Replace SimplePad with PadTensor in hoist-padding (details)
  156. [Loads] Plumb through TLI argument [NFC] (details)
  157. [OpenMP] libomp: implement nteams-var and teams-thread-limit-var ICVs (details)
  158. [mlir][spirv] Add support for OpImageType (details)
  159. Revert "[mlir][spirv] Add support for OpImageType" (details)
  160. [ConstraintElimination] Add support for EQ predicates. (details)
  161. Avoid string comparisons on the fast path of MLIR Identifier lookup (NFC) (details)
  162. Revert "[libc++][format] Add basic_format_parse_context." (details)
  163. [LoopVectorize] improve IR fast-math-flags propagation in reductions (details)
  164. NFC: Re-generate out-of-date matchers docs (details)
  165. [tests] highlight cornercase w/deref hoisting from D95815 (details)
  166. [mlir][spirv] Add support for OpImageType (details)
  167. [clang-format] Add option to control the spaces in a line comment (details)
  168. [CSSPGO] Tweaking inlining with pseudo probes. (details)
  169. [AMDGPU] Set s-memtime-inst feature from clang (details)
  170. [llvm-objcopy] -O binary: consider SHT_NOBITS sections to be empty (details)
  171. [InstrProfiling] Use !associated metadata for counters, data and values (details)
  172. [NFC][X86] Avoid redundant work inspecting callee (details)
  173. [NFC][X86] Use CallBase interface to simplify code (details)
  174. [flang][NFC] Rename complex type. (details)
  175. [obj2yaml, yaml2obj] Use Hex64 for BBAddressMap fields. (details)
  176. [lldb] Use the host architecture in TestAppleSimulatorOSType.py (details)
  177. [x86] introduce no_callee_saved_registers attribute (details)
  178. [OpenMP][Libomptarget] Remove possible harmful copy constructor call for RTLsTy (details)
  179. [Utils] Add a switch controlling prefix warnings in UpdateTestChecks (details)
  180. [mlir] Add custom directive hooks for printing mixed integer or value operands. (details)
  181. AMDGPU: Fix dbg_value handling when forming soft clause bundles (details)
  182. [LoopVectorize] Relax a FCmpInst assert to dyn_cast after D95690 (details)
  183. [test] Fix unuses FileCheck prefixes in clang/test/Modules (details)
  184. [test] Fix unuses FileCheck prefixes in lld (details)
  185. [llvm] Use pop_back_val (NFC) (details)
  186. [TableGen] Use ListSeparator (NFC) (details)
  187. [TableGen] Use range-based for loops (NFC) (details)
  188. [VFS] Add support to RedirectingFileSystem for mapping a virtual directory to one in the external FS. (details)
  189. clang-extra: fix incorrect use of std::lock_guard by adding variable name (identified by MSVC [[nodiscard]] error) (details)
  190. [test] Fix unused FileCheck prefixes in compiler-rt/test (details)
  191. [AArch64] Homogeneous Prolog and Epilog Size Optimization (details)
  192. [MLIR][TOSA] Comparison based elementwise operations for tosa-to-linalg (details)
  193. [test] Fix unused FileCheck prefixes in lldb (details)
  194. [test] Default clang/test to FileCheck --allow-unused-prefixes=false (details)
  195. [SCEV] Apply loop guards to divisibility tests (details)
  196. [test] Fix unused FileCheck prefixes in compiler-rt (details)
  197. [ORC] Clear unused materializing info entries. (details)
  198. [test] Fix unused FileCheck prefixes in clang-tidy and one llvm/test/Reduce test (details)
  199. [test] Fix unused FileCheck prefixes in test/Reduce (details)
  200. Revert "[AArch64] Homogeneous Prolog and Epilog Size Optimization" (details)
  201. [NFC][Docs] Fix RAVFrontendAction doc's CMakelists.txt for Shared build (details)
  202. [SelectionDAG] Prevent scalable vector warning from ComputeNumSignBits on extract_vector_elt on a scalable vector. (details)
  203. [mlir][Standard] Extend n-D vector lowering to LLVM to [s|z]exti ops. (details)
  204. [CSSPGO] Call site prioritized inlining for sample PGO (details)
  205. [RISCV] Replace NoX0 SDNodeXForm with a ComplexPattern to do the selection of the VL operand. (details)
  206. Added clamp i64 to i16 global isel pattern. (details)
  207. clang-format (details)
  208. Added comments. (details)
  209. Added early exit. (details)
  210. Renames (details)
  211. Refactored the pattern matching. (details)
  212. Fixed the lit tests and a bug in the implementation. (details)
  213. Reverted unintended git-format change. (details)
  214. Renamed identifiers in lit (details)
  215. Move Combiner to PreLegalize step (details)
  216. Move step to PreLegalizer (details)
  217. Fixed tests. (details)
  218. Code changes yielded from review. (details)
  219. Resolve formatting changes. (details)
  220. Updating formatting changes. (details)
  221. Formatting changes. (details)
  222. Formatting changes (details)
  223. Added and used new target pseudo for v_cvt_pk_i16_i32, changes due to code review. (details)
  224. Implemented a MED3_S32 GIR opcode. (details)
  225. Removed the generic virtual register creations. Reworked the tests. (details)
  226. Renamed med3 opcode, removed superfluous copy. (details)
  227. Added missing includes. (details)
  228. Reverted whitespace changes. (details)
  229. Fixed includes. (details)
  230. Fixed includes. (details)
  231. Removed Diff file. (details)
  232. [CSSPGO] Factor out common part for CSSPGO inline and AFDO inline (details)
  233. Fix build break from D95024 (details)
  234. [AMDGPU] Clarify calling conv about inactive lanes (details)
  235. [AMDGPU] Mark epilog restores as frame-destroy (details)
  236. [dllimport] Honor always_inline when deciding whether a dllimport function should be available for inlining (PR48925) (details)
  237. [mlir] Keep track of region signature conversions as argument replacements (details)
  238. Fold one-use variable into assert. NFCI. (details)
  239. [SVE][LoopVectorize] Add masked load/store and gather/scatter support for SVE (details)
  240. [flang][driver] Disallow non-existent input files in the frontend driver (details)
  241. [ARM] Regenerate LowOverheadLoops mir tests. NFC (details)
  242. Revert "Fix build break from D95024" (details)
  243. Revert "[CSSPGO] Factor out common part for CSSPGO inline and AFDO inline" (details)
  244. [ARM] Remove DLS lr, lr (details)
  245. [OpenCL] Change extension handling for -fdeclare-opencl-builtins (details)
  246. [X86][AVX] Add missing VEX_WIG tags from VPACKUSDW/VPHSUBD/VPCMPISTRI/VPCMPISTRM/VPCMPESTRI/VPCMPESTRM (details)
  247. [mlir][Linalg] Refactor Linalg vectorization for better reuse and extensibility. (details)
  248. [X86] Fix disassembly of x86-64 GDTLS code sequence (details)
  249. [X86][AVX512] Support variable-index vector insertion on AVX512 targets (PR47924) (details)
  250. [AMDGPU][MC] Corrected parsing of optional modifiers (details)
  251. [mlir][Linalg] Fix unused variable warning in Release builds. NFC. (details)
  252. [clangd] Report only decl of overridding method in xref. (details)
  253. Revert "[test] Default clang/test to FileCheck --allow-unused-prefixes=false" (details)
  254. [mlir][Linalg] Fix and properly test CodegenStrategy API (details)
  255. [ASTMatchers] Fix matching after generic top-level matcher (details)
  256. NFC: Migrate SimpleLoopUnswitch to work on InstructionCost (details)
  257. NFC: Migrate SpeculateAroundPHIs to work on InstructionCost (details)
  258. Revert "[lldb] Use current execution context in SBDebugger" (details)
  259. [X86][SSE] LowerINSERT_VECTOR_ELT - pull out repeated EltSizeInBits calls. NFCI. (details)
  260. [ARM] Select VINS from vector inserts (details)
  261. [ASTMatchers] Add matchers for decomposition decls (details)
  262. [clang-format] Add case aware include sorting. (details)
  263. [ARM] Extra shuffle tests. NFC (details)
  264. Revert "[InstrProfiling] Use !associated metadata for counters, data and values" (details)
  265. [ASTMatchers] Ignore parts of BindingDecls which are not spelled in source (details)
  266. [clangd] Fix race in Global CDB shutdown (details)
  267. [AVR][clang] Fix a bug in AVR toolchain search paths (details)
  268. [NFC][InstCombine] Add tests for  (~x) a>> y  -->  ~(x a>> y)  fold (PR48995) (details)
  269. [InstCombine] Host inversion out of ashr's value operand (PR48995) (details)
  270. [mlir] Put template specialization in the same namespace (details)
  271. [clang][PATCH][NFC] Correct test case related to review D95482 (details)
  272. [OpenCL] Add diagnostics for references to functions (details)
  273. Ensure that the matcher is instantiated (details)
  274. [ARM] Add MVE insert-of-extract pattern (details)
  275. [PowerPC] Materialize 34 bit constants with pli on Power 10. (details)
  276. [OpenMP][NFC] Adding FAQ Entry for errors with static libraries (details)
  277. [CSSPGO] Factor out common part for CSSPGO inline and AFDO inline (details)
  278. [AIX] Improve option processing for mabi=vec-extabi and mabi=vec=defaul (details)
  279. [mlir] Fix scf.for single iteration canonicalization check (details)
  280. [mlir][spirv] Define sp.VectorShuffle (details)
  281. Revert "[mlir] Fix scf.for single iteration canonicalization check" (details)
  282. [AMDGPU] Save fp/bp after csr saves (details)
  283. [AMDGPU] Remove unused tmp register (details)
  284. Fixed failing OpenCL test (details)
  285. [ARM] Mark MVE_VMOV_to_lane_32 as isInsertSubregLike (details)
  286. [ConstraintElimination] Add nicer way to dump constraints (NFC). (details)
  287. [flang][NFC] Update #include and comment. (details)
  288. [OpenMP] Fix sign comparison warnings from GCC (details)
  289. [ARM] Correct some tablegen operand types. NFC (details)
  290. [InlineFunction] Only update noalias scopes once for an instruction. (details)
  291. [ExpandReductions] add test for fmin with FMF; NFC (details)
  292. [yaml2obj/obj2yaml/llvm-readobj] Support SHF_GNU_RETAIN (details)
  293. [MC] Support SHF_GNU_RETAIN as section flag 'R' (details)
  294. [test] Add basic _Unwind_ForcedUnwind + exception tests (details)
  295. [ConstraintElimination] Add test with pointer bitcast. (details)
  296. [MC] Upgrade DWARF version to 5 upon .file 0 (details)
  297. [debugserver] Fix -Winconsistent-missing-override warnings on arm64 (details)
  298. [CSSPGO] Passing the clang driver switch -fpseudo-probe-for-profiling to the linker. (details)
  299. [ELF] Delete unused --warn-ifunc-textrel (details)
  300. [libcxx] Implement the space function for windows (details)
  301. [lld-macho][NFC] refactor relocation handling (details)
  302. [OpenMP] Fix iterations calculation for dependent counters. (details)
  303. [debugserver] Fix -Wunused-function warnings on arm64 (details)
  304. [RISCV] Use a ComplexPattern to merge isel patterns for vector load/store with GPR and FrameIndex addresses. (details)
  305. [ConstraintElimination] Fix -Wunused-function in -DLLVM_ENABLE_ASSERTIONS=off build (details)
  306. [debugserver] Fix -Wsign-compare warnings on arm64 (details)
  307. [mlir][NFC] Use explicit `mlir` namespace in generated code (details)
  308. [mlir][NFC] Add missing include guards to MlirOptMain.h (details)
  309. [mlir] Allow to use constant lambda as callbacks for `TypeConverter` (details)
  310. [mlir] Print more verbose message in case of type inference error (details)
  311. [debugserver] Fix -Wmissing-field-initializers warnings on arm64 (details)
  312. [mlir] Return new Operation from `Rewriter::replaceOpWithNewOp` (details)
  313. [RISCV] Correct types in tablegen multiclasses found by D95874. (details)
  314. [RISCV] Fix incorrect RVV sdiv/udiv lowering (details)
  315. Fix CMake LLVM_TARGETS_TO_BUILD "Native" option to work with JIT (details)
  316. [mlir] Delay adding the __resume function (details)
  317. [MLIR] [CMake] Support building MLIR standalone (details)
  318. Fix namespace for MLIR Async Runtime (details)
  319. [test] Default clang/test to FileCheck --allow-unused-prefixes=false (details)
  320. [flang] Detect UBOUND() error on assumed-size array (details)
  321. [flang] Implement IEEE_SUPPORT_xxx inquiry functions (details)
  322. Ensure that InstructionCost actually implements a total ordering (details)
  323. [flang][NFC] Update #include. (details)
  324. [CSSPGO] Introducing distribution factor for pseudo probe. (details)
  325. [flang][NFC] Update the CG rewrite pass. (details)
  326. [mlir][Pattern] Create a new IRRewriter class to enable sharing code with pattern rewrites (details)
  327. Revert "Ensure that InstructionCost actually implements a total ordering" (details)
  328. [lldb] Convert assertTrue(a == b) to assertEqual(a, b) (details)
  329. Disable CFI in __get_elem to allow casting a pointer to uninitialized memory (details)
  330. Revert "Fix namespace for MLIR Async Runtime" (details)
  331. [libc++] Add new queues for specific macOS system versions (details)
  332. [libcxx] Implement the current_path function for windows (details)
  333. [libcxx] Implement the canonical function for windows (details)
  334. [ConstraintElimination] Skip pointer casts. (details)
  335. [dfsan] Clean TLS after sigaction callbacks (details)
  336. Diagnose if a SLEB128 is too large to fit in an int64_t. (details)
  337. [GWP-ASan] Add aligned allocations. (details)
  338. [GWP-ASan] Add locking around unwinder for atfork protection. (details)
  339. Revert "[GWP-ASan] Add aligned allocations." (details)
  340. [AArch64] Homogeneous Prolog and Epilog Size Optimization (details)
  341. [gn build] Port 4f58b1bd2974 (details)
  342. [test][NewPM] Pin various tests to the legacy PM (details)
  343. [flang] Add TypeAndShape::MeasureElementSizeInBytes() (details)
  344. [FileCheck] Make --allow-unused-prefixes cl::ZeroOrMore (details)
  345. [mlir][Vector] Add lowering to LLVM for vector.bitcast (details)
  346. [mlir] Fix scf.for single iteration canonicalization check (details)
  347. [libc] Add hardware implementations of ceil and ceilf for aarch64. (details)
  348. [GlobalISel] Check if branches use the same MBB in matchOptBrCondByInvertingCond (details)
  349. AMDGPU: Don't consider global pressure when bundling soft clauses (details)
  350. AMDGPU: Fix adding extra operands for i128 asm constraints (details)
  351. [lldb/test] Stop recording fundamental return types (NFC) (details)
  352. [PowerPC] [NFC] fix wording typos (details)
  353. [VFS] Fix Wreturn-type gcc warning (NFC) (details)
  354. [yaml2obj][wasm] Support numeric relocation type (details)
  355. [clang-format] Fix MSVC "unsafe use of type 'bool' in operation" warning (NFC) (details)
  356. [CSSPGO] Fix MSVC initializing truncation warning (NFC) (details)
  357. [Statepoint] Handle 'undef' operand tied to def (details)
  358. [clang-tidy] Fix crash in readability-identifier-naming check (details)
  359. [dfsan] Wrap memmove (details)
  360. [NFC] Fix typo in comment (details)
  361. [Docs] Update HowToSubmitABug (details)
  362. [RISCV] Add new vector instructions in v0.10. (details)
  363. [OpenMP] Add OpenMP offloading toolchain for AMDGPU (details)
  364. [RISCV] Load/store vector mask types. (details)
  365. [gn build] Port fcf03e728007 (details)
  366. [CodeGen] Drop unnecessary const from return types (NFC) (details)
  367. [Transforms/Utils] Use range-based for loops (NFC) (details)
  368. [AsmPrinter] Use ListSeparator (NFC) (details)
  369. [InstrProfiling] Use !associated metadata for counters, data and values (details)
  370. [libcxx] Implement the permissions function for windows (details)
  371. [libcxx] Implement the read_symlink function for windows (details)
  372. [clang-include-fixer] Pre-reserve vector size. NFC (details)
  373. [X86] Correct types in tablegen multiclasses found by D95874. (details)
  374. [VPlan][NFC] Introduce constructors for VPIteration (details)
  375. [LIBC] Add optimized memcpy routine for AArch64 (details)
  376. [AArch64][SVE]Add cost model for broadcast shuffle (details)
  377. Revert "[AMDGPU] Add a new Clamp Pattern to the GlobalISel Path." (details)
  378. [clang][AVR] Improve avr-ld command line options (details)
  379. [OpenCL] Add cl_khr_subgroup_ballot to TableGen BIFs (details)
  380. [OpenCL] Add cl_khr_subgroup_non_uniform_vote to TableGen BIFs (details)
  381. [Flang][OpenMP] Add semantic checks for invalid branches into or out of OpenMP constructs (details)
  382. [clangd] Report xref for base methods. (details)
  383. [clang][AVR][NFC] Fix a typo (details)
  384. Fix MLIR Async Runtime DLL on Windows (details)
  385. [OpenCL] Fix address space in binding of initializer lists to referencs (details)
  386. [Sema] Fix -Warray-bounds false negative when casting an out-of-bounds array item (details)
  387. [OpenCL][Docs] Fix command line flag in the example. (details)
  388. [X86][SSE] Support variable-index float/double vector insertion on SSE41+ targets (PR47924) (details)
  389. [LoopVectorize] add test for fake min/max; NFC (details)
  390. AMDGPU: Move handling of allocation of fixed ABI inputs (details)
  391. [test] Use host platform specific error message substitution in lit tests - continued (details)
  392. Revert "[ConstantFold] Fold more operations to poison" (details)
  393. [AMDGPU] Fix multiclass template parameter types. NFC. (details)
  394. [ConstraintElimination] Add some tests with conds in loop header. (details)
  395. [FPEnv][X86] Platform builtins edition: clang should get from the AST the metadata for constrained FP builtins (details)
  396. [flang] Add -fsyntax-only to f18; retain -fparse-only synonym (details)
  397. [Hexagon] Add ELF flags for Hexagon V68 (details)
  398. [dfsan] Clean TLS after signal callbacks (details)
  399. [flang][NFCI] Relpace `LoopOp` Op with `DoLoopOp` Op in FIR Dialect (details)
  400. [DWARF] Location-less inlined variables should not have DW_TAG_variable (details)
  401. [VPlan] Manage induction value creation using VPValues. (details)
  402. Revert "[DWARF] Location-less inlined variables should not have DW_TAG_variable" (details)
  403. [OpenMP] Fixed an issue that taskwait doesn't work on detachable task (details)
  404. [flang] Enable FIR types and Dialect round trip tests (details)
  405. [DAGCombiner] Remove (sra (shl X, C), C) if X has more than C sign bits. (details)
  406. [AMDGPU] Added -mcpu to couple more tests. NFC. (details)
  407. Revert "AMDGPU: Don't consider global pressure when bundling soft clauses" (details)
  408. [scudo/standalone] Use zx_system_get_page_size() on Fuchsia (details)
  409. [gwp_asan] Use zx_system_get_page_size() on Fuchsia (details)
  410. [lldb] Fix debugserver-entitlements.plist path (details)
  411. RegisterCoalescer: Prune undef subranges from copy pairs in loops (details)
  412. [lld-macho] Associate each Symbol with an InputFile (details)
  413. [lld-macho] Force-loading should share code path with regular archive loads (details)
  414. [lld-macho] Remove stray ehFrame change (details)
  415. [lld-macho] Rename VERSION CONTROL to VERSION TARGETING in helptext (details)
  416. [sanitizer_common] Use zx_system_get_page_size() on Fuchsia (details)
  417. [libc][NFC] Move generic math implementations to the generic directory. (details)
  418. [dfsan] Test IGN and DFL for sigaction (details)
  419. [dfsan] Wrap strcat (details)
  420. [flang] Fix calls to LBOUND() intrinsic for arrays with lower bounds not 1 (details)
  421. RegisterCoalescer: Fix not setting undef on coalesced subregister uses (details)
  422. Set GPU context before {cu,hip}MemHostRegister. (details)
  423. [GlobalISel] Combine narrowScalar of G_ADD and G_SUB. NFC (details)
  424. Delete CUDA context after linking device code. (details)
  425. [NFC][CUDA] Refactor registering device variable (details)
  426. [SampleFDO][NFC] Detach SampleProfileLoader from SampleCoverageTracker (details)
  427. [clang-tblgen] AnnotateAttr::printPretty has spurious comma when no variadic argument is specified (details)
  428. [Hexagon] Add LLVM instruction definitions for Hexagon V68 (details)
  429. [mlir] Add gpu async integration test. (details)
  430. Fix overflowing signed left shift, found by ubsan buildbot. (details)
  431. [asan] Fix pthread_create interceptor (details)
  432. [NewPM][HelloWorld] Move HelloWorld to Utils (details)
  433. [lld-macho] Try to fix Windows build (details)
  434. Add API for adding arguments to blocks (details)
  435. [libc++] Rationalize our treatment of contiguous iterators and __unwrap_iter(). (details)
  436. [Coverage] Propogate counter to condition of conditional operator (details)
  437. [lldb] Honor the CPU type & subtype when launching on macOS (details)
  438. [lldb] Check for both Lua 5.3 and 5.4 error messages in the tests. (details)
  439. [GlobalISel] Add sext(constant) -> constant artifact combine. (details)
  440. PR49020: Diagnose brace elision in designated initializers in C++. (details)
  441. Turn on the new pass manager by default (details)
  442. Revert "[LTOCodeGenerator] Use lto::Config for options (NFC)." (details)
  443. Revert "[LTO] Add option enable NewPM with LTOCodeGenerator." (details)
  444. Revert "[LTO] Use lto::backend for code generation." (details)
  445. PR44325 (and duplicates): don't issue -Wzero-as-null-pointer-constant (details)
  446. [clang-tidy] Use new mapping matchers (details)
  447. [Docs] Add some documentation for constructor homing, a debug info optimization (-fuse-ctor-homing) (details)
  448. [libc++] [P0879] constexpr std::sort (details)
  449. [AArch64][GlobalISel] Emit G_ASSERT_ZEXT in assignValueToAddress for ZExt params (details)
  450. Revert "[InstrProfiling] Use !associated metadata for counters, data and values" (details)
  451. [AArch64][GlobalISel] Change store value type from p0 -> s64 to import patterns (details)
  452. [CSSPGO][llvm-profgen] Pseudo probe based CS profile generation (details)
  453. [lldb] Rollback to using i386 for the watch simulator (details)
  454. [OpenMPIRBuilder] Implement collapseLoops. (details)
  455. [OpenMP][NVPTX] Take functions in `deviceRTLs` as `convergent` (details)
  456. Make the folder more robust against op fold() methods that generate a type mismatch (details)
  457. [MLIR] Fix building unittests in in-tree build (details)
  458. [CSSPGO][llvm-profgen] Compress recursive cycles in calling context (details)
  459. [CSSPGO][llvm-profgen] Aggregate samples on call frame trie to speed up profile generation (details)
  460. [test] Pin spir-codegen.ll to legacy PM (details)
  461. Fix the guaranteed alignment of memory returned by malloc/new on Darwin (details)
  462. [Support] Drop unnecessary const from return types (NFC) (details)
  463. [TableGen] Use ListSeparator (NFC) (details)
  464. [Transforms/IPO] Use range-based for loops (NFC) (details)
  465. [NFC][Coroutine] Remove redundant comment (details)
  466. [lldb] Convert more assertTrue to assertEqual (NFC) (details)
  467. [NFC] Fix the noprofile attribute comment (details)
  468. [ASTReader] Always rebuild a cached module that has errors (details)
  469. Revert "[CSSPGO][llvm-profgen] Aggregate samples on call frame trie to speed up profile generation" (details)
  470. Revert "[CSSPGO][llvm-profgen] Compress recursive cycles in calling context" (details)
  471. [CSSPGO][llvm-profgen] Compress recursive cycles in calling context (details)
  472. [hip][cuda] Enable extended lambda support on Windows. (details)
  473. [mlir][Linalg] NFC - Extract a standalone LinalgInterfaces (details)
  474. Fix miscompile when performing template instantiation of non-dependent (details)
  475. Give this test a target triple. (details)
  476. [mlir][Linalg] Generalize the definition of a Linalg contraction. (details)
  477. [Syntax] Support condition for IfStmt. (details)
  478. [clangd] Detect rename conflicits within enclosing scope (details)
  479. [AMDGPU] Save all lanes for reserved VGPRs (details)
  480. [Support] Indent multi-line descr of enum cli options. (details)
  481. [clang][cli] Command line round-trip for HeaderSearch options (details)
  482. [clang-cl] Remove the /fallback option (details)
  483. [mlir] Apply source materialization in case of transitive conversion (details)
  484. [lldb] Make TestLocalVariables.py compatible with the new pass manager (details)
  485. [mlir] make vector to llvm conversion truly partial (details)
  486. [ARM] Handle f16 in GeneratePerfectShuffle (details)
  487. Re-land D94976 after revert in e29552c5aff6 (details)
  488. [mlir][Linalg] Drop SliceOp (details)
  489. [ElementCount] NFC: Set 'const' qualifier for getWithIncrement/Decrement. (details)
  490. [gn build] (manually) port 0609f257dc2e2c3 (details)
  491. Revert "[hip][cuda] Enable extended lambda support on Windows." (details)
  492. [X86] Remove stale TODO comment. NFC. (details)
  493. [flang][driver] Add forced form flags and -ffixed-line-length (details)
  494. [clang] Add AddClang.cmake to the list of the CMake modules that are installed (details)
  495. [AVR] Remove an assertion that causes generic CodeGen tests to fail (details)
  496. AMDGPU: Add support for amdgpu-unsafe-fp-atomics attribute (details)
  497. [mlir] Return scf.parallel ops resulted from tiling. (details)
  498. [OpenCL] Fix default address space in template argument deduction. (details)
  499. [ConstraintElimination] Support conditions from loop preheaders (details)
  500. [OpenCL][Docs] Link page explaining tooling for offline compilation. (details)
  501. NFC: Migrate LoopUnrollPass to work on InstructionCost (details)
  502. [flang][driver] Add PrescanAction frontend action (nfc) (details)
  503. [Dexter] Avoid infinite loop in dbgeng driver (details)
  504. [AVR] Fix 14 Generic CodeGen tests by making address space explicit or optional (details)
  505. [AVR] Add 'XFAIL' to the remaining failing Generic CodeGen tests for AVR (details)
  506. [X86] Use VT::changeVectorElementType helper where possible. NFCI. (details)
  507. [libc++] Rename include/support to include/__support (details)
  508. [AVR] Fix up a few accidentally-regressed Generic CodeGen tests recently broken (details)
  509. [InstCombine] add tests for demanded/known bits of shifted constant; NFC (details)
  510. [Hexagon] Add clang builtin definitions for Hexagon V68 (details)
  511. [libc++] Adds a make_string test helper function. (details)
  512. [Hexagon] Add -mv68 option to driver (details)
  513. [flang][driver] Add support for `-J/-module-dir` (details)
  514. [clang][Arm] Fix handling of -Wa,-march= (details)
  515. [libc++] Fix libcxx build on 32bit architectures with 64bit time_t defaults e.g. riscv32 (details)
  516. [libc++] Make feature-test macros consistent with availability macros (details)
  517. [CSSPGO][llvm-profgen] Aggregate samples on call frame trie to speed up profile generation (details)
  518. [libc++] Remove the ability to use braced-init for filesystem paths (details)
  519. [flang][driver] Fix reading from stdin when using `-test-io` (details)
  520. [lldb] Simplify the logic to detect compiler flag support (details)
  521. [mlir][Linalg] Introduce a ContractionOpInterface (details)
  522. [AMDGPU][GlobalISel] Use scalar min/max instructions (details)
  523. [AMDGPU][GlobalISel] Fix v2s16 right shifts (details)
  524. [mlir][ODS] Small fixes for ODS classes (details)
  525. [llvm-objdump] --source: drop the warning when there is no debug info (details)
  526. [mlir][ODS] Add explicit namespace to `ViewLikeInterface` definition (details)
  527. [examples] Fix Target does not support MC emission in ParallelJIT (details)
  528. [ELF] Allow R_386_GOTOFF from .debug_info (details)
  529. [ELF] Make SHF_GNU_RETAIN sections GC roots (details)
  530. [mlir][ODS] Use StringLiteral instead of StringRef when applicable (details)
  531. Remove dead code from Linalg vectorization to fix GCC warning (NFC) (details)
  532. [OpenMP][deviceRTLs] Drop `assert` in common parts of `deviceRTLs` (details)
  533. [PS4] Allow triple to reflect the new company name. (details)
  534. [AMDGPU] Add f16 to i1 CodeGen patterns. (details)
  535. [NFC][llvm-mca] Fix compiler warning (details)
  536. Reland "Ensure that InstructionCost actually implements a total ordering" (details)
  537. [ExpandReductions] fix FMF requirement for fmin/fmax (details)
  538. [mlir] Silence GCC warnings (details)
  539. Remove overzealous verifier check on DW_OP_LLVM_entry_value and improve the documentation (details)
  540. Revert "[mlir][ODS] Use StringLiteral instead of StringRef when applicable" (details)
  541. [lldb-vscode] correctly use Windows macros (details)
  542. [CSSPGO][llvm-profgen] Merge and trim profile for cold context to reduce profile size (details)
  543. Print the "no plugin" warning only when there is no plugin (details)
  544. [MemorySSA] Don't treat lifetime.end as NoAlias (details)
  545. [libc++] Add format check to CI (details)
  546. [TargetLowering] Use LegalOnly operand to isOperationLegalOrCustom to simplify some code. NFC (details)
  547. [clangd] Improve name conflict detection (details)
  548. [flang][NFC] Rename IntType to IntegerType. (details)
  549. Correct some confused diagnostic terminology (details)
  550. [ARM] Do not emit ldrexd/strexd on Cortex-M chips (details)
  551. Fix miscomputation of dependence for elaborated types that are (details)
  552. [CodeComplete] Guess type for designated initializers (details)
  553. [HIP] Add __managed__ macro to header (details)
  554. [mlir] Small touchups to LangRef attribute section (details)
  555. [sanitizer] Add suffix to report file name (details)
  556. Revert "[BuildLibcalls, Attrs] Support more variants of C++'s new, add attributes for C++'s delete" (details)
  557. Don't infer attributes on '::operator new'. (details)
  558. Revert "[libc++] [P0879] constexpr std::nth_element, and rewrite its tests." (details)
  559. [flang][msvc] Reapply "Explicitly reference "this" inside closure" (details)
  560. [flang] Remove dims type and gendims op. (details)
  561. [CUDA][HIP] Fix checking dependent initalizer (details)
  562. [mlir] Mark LogicalResult as LLVM_NODISCARD (details)
  563. [asan] Add %d variable to external_symbolizer_path option, so that user can specify paths relative to the location of the binary. (details)
  564. Fix a test case after committing D94563. (details)
  565. [CSSPGO][llvm-profgen] Fix bug with parsing hybrid sample trace line (details)
  566. Fix test case from D94563. (details)
  567. [RISCV] Add i8/i16 test cases to div.ll and i8/i16/i64 to rem.ll. NFC (details)
  568. fix -Werror build issue. (details)
  569. [AST] Update LVal before evaluating lambda decl fields. (details)
  570. [OpenMP][libomptarget] Fixed an issue that device sync is skipped if the kernel doesn't have any argument (details)
  571. [LV] Unconditionally branch from middle to scalar preheader if the scalar loop must execute (details)
  572. DebugInfo: Temporarily work around -gsplit-dwarf + LTO .debug_gnu_pubnames regression after D94976 (details)
  573. [sanitizer] Fix the test on android (details)
  574. Add missing test update from 3e5ce49 (details)
  575. [WebAssembly] Support single-floating-point immediate value (details)
  576. [WebAssembly] Use single-threaded mode when -matomics isn't enabled. (details)
  577. [TargetLowering] Use Align in allowsMisalignedMemoryAccesses. (details)
  578. [X86] Generate unaligned access for fixed slots in unaligned stack (details)
  579. [RISCV] Split vrgather intrinsics into separate vrgather.vv and vrgather.vx intrinsics. (details)
  580. [RISCV] Use LLVMScalarOrSameVectorWidth to make avoid needing to mention the index type for vrgatherei16 intrinsics. (details)
  581. [ARM][WebAssembly] Fix incorrect MCOperand::createDFPImm after D96091 (details)
  582. [MC] Add createFPImm/isFPImm/setFPImm to smooth migration from FPImm to DFPImm after D96091 (details)
  583. [VE] Fix allowsMisalignedMemoryAccesses after D96097 (details)
  584. [MC] Add isFPImm after D96091 (details)
  585. [Darwin] Switch to new logging api for sanitizers (details)
  586. LLVMgold.so: Fix tests after D95380 (details)
  587. [IR] Drop unnecessary const from return types (NFC) (details)
  588. [GlobalISel] Use ListSeparator (NFC) (details)
  589. [Transforms/Scalar] Use range-based for loops (NFC) (details)
  590. [flang] Adapt mlir based error status handling in `tco` tool (details)
  591. [Test] Add more tests demonstrating oddities in behavior of LSR (details)
  592. [lldb/test] Reduce API test tools configuration boilerplate (details)
  593. [lldb/cmake] Reduce duplication in generation lldb-dotest (details)
  594. [OpenCL] Introduce new language options for OpenCL keywords. (details)
  595. [mlir][linalg] Linalg.fill on tensor should not have side-effects (details)
  596. [llvm-objdump] Fix missing first line of license in header file (details)
  597. [lldb][NFC] Minor comment and inlining fixes for Args (details)
  598. [CostModel] Remove VF from IntrinsicCostAttributes (details)
  599. [RISCV] Add patterns for scalable-vector fsqrt (details)
  600. [RISCV] Optimize sign-extended EXTRACT_VECTOR_ELT nodes (details)
  601. [RISCV] Support scalable-vector integer reduction intrinsics (details)
  602. [NFC] inline variable (details)
  603. [NFC] Simplify expression (details)
  604. [clangd] Take into account what is in the index (symbols, references, etc.) at indexes merge (details)
  605. [AArch64][SVE] Coalesce ptrue instrinsic calls where possible (details)
  606. DWARFDebugFrame.h - fix Wdocumentation warning. NFCI. (details)
  607. TypeMismatchCheck.cpp - fix Wdocumentation warning. NFCI. (details)
  608. CodeGenPassBuilder.h - fix Wdocumentation warning. NFCI. (details)
  609. IROutliner.cpp - fix Wdocumentation warnings. NFCI. (details)
  610. SampleProfile.cpp - fix Wdocumentation warning. NFCI. (details)
  611. AArch64LowerHomogeneousPrologEpilog.cpp - fix Wdocumentation warning. NFCI. (details)
  612. IROutliner.cpp - fix Wdocumentation warning. NFCI. (details)
  613. [mlir][Linalg] Add option to anchor on func name in TestLinalgCodegenStrategy (details)
  614. [Test] Add tests demonstrating missing case of usub with overflow usage (details)
  615. Revert "[LV] Unconditionally branch from middle to scalar preheader if the scalar loop must execute" (details)
  616. [mlir][Linalg] NFC - Refactor vectorization to be more composable (details)
  617. [mlir][Linalg] Fix spurious test change (details)
  618. Treat opencl_unroll_hint subject errors as semantic rather than parse errors (details)
  619. [mlir] Add `const` qualifiers to `AffineMap` methods (details)
  620. [LoopVectorize][ARM] Regenerate mve-gather-scatter-tailpred.ll test (details)
  621. Revert "[PowerPC] [Clang] Enable float128 feature on P9 by default" (details)
  622. [clangd] Deduplicate scopes in IncludeFixer queries (details)
  623. [mlir] Turn Linalg to LLVM into a partial conversion (details)
  624. [mlir][Linalg] NFC - Improve usage of mlir::linalg::isaContractionOpInterface (details)
  625. [ObjC][ARC] Use operand bundle 'clang.arc.rv' instead of explicitly (details)
  626. Revert "[ObjC][ARC] Use operand bundle 'clang.arc.rv' instead of explicitly" (details)
  627. [mlir][vector] Add patterns to cast away leading 1-dim (details)
  628. Add an API to simplify setting TraversalKind in clang-tidy matchers (details)
  629. [clang-tidy] Simplify implementation of container-size-empty (details)
  630. We can only move static allocas into the resume entry points (details)
  631. [ObjC][ARC] Use operand bundle 'clang.arc.rv' instead of explicitly (details)
  632. [mlir][spirv] Add more vector conversion patterns (details)
  633. [mlir][vector] Add constant folding for fp16 to fp32 bitcast (details)
  634. [OpenCL] Add cl_khr_subgroup_shuffle* to TableGen BIFs (details)
  635. [RGT][ProfileData] Correct a test assertion (details)
  636. [Test] Fix test case demonstrating oddities in behavior of LSR. (details)
  637. [ASTMatchers] Fix segfault when Action is nullptr (details)
  638. [OpenCL] Add macro definitions of OpenCL C 3.0 features (details)
  639. LoopUnrollAndJam] Only allow loops with single exit(ing) blocks (details)
  640. Recommit of a2fdf9d4d734732a6fa9288f1ffdf12bf8618123. (details)
  641. Drop LLVM_i1, LLVM_i8, LLVM_i32, LLVM_IntBase types (details)
  642. [lldb] Emit type annotation in SWIG generated Python code. (details)
  643. [clangd] Trace queue state for each TUScheduler action. (details)
  644. [MSP430] Fix multiclass template parameter types. NFC. (details)
  645. Revert "Revert "[libc++] [P0879] constexpr std::nth_element, and rewrite its tests."" (details)
  646. [gn build] Turn on new pass manager by default (details)
  647. [AMDGPU] Add Fiji target in fptosi/fptoui instruction-select MIR tests. (details)
  648. [ELF] Improve --icf=safe diagnostic (details)
  649. [dfsan] Add thread registration (details)
  650. [CodeView][DebugInfo] Update the code for removing template arguments from the display name of a codeview function id. (details)
  651. [DAGCombiner][SVE] Fix invalid use of getVectorNumElements() in visitSRA. (details)
  652. [DebugInfo] Fix error from D95893, where I accidentally used an (details)
  653. Stop traping on sNaN in __builtin_isnan (details)
  654. [libc] Add aarch64 flavors of floor, round, sqrt and trunc. (details)
  655. [flang][NFC] Update comments. (details)
  656. [flang][NFC] Make KindTy consistent and consistently used. (details)
  657. [WebAssembly] locals can now be indirect in DWARF (details)
  658. [Codegen][ReplaceWithVecLib] add pass to replace vector intrinsics with calls to vector library (details)
  659. [Reassociate] add test for shl+or; NFC (details)
  660. [PhaseOrdering] add test to show combined result of reassociate+instcombine+vectorizers; NFC (details)
  661. [lic++][docs] Explain noexcept policy for narrow contracts. (details)
  662. [NVPTX][NewPM] Temporarily disable NVPTX passes in new PM pipeline (details)
  663. [RISCV] Correct types in tablegen multiclasses found by D95874. (details)
  664. Revert "[Codegen][ReplaceWithVecLib] add pass to replace vector intrinsics with calls to vector library" (details)
  665. [CUDA][HIP] Fix device variable linkage (details)
  666. [libc++] Further improve the contiguous-iterator story, and fix some bugs. (details)
  667. [flang][fir] Add FIR's vector type. (details)
  668. [libcxx] Use the posix code for directory_entry::__do_refresh (details)
  669. [libcxx] Implement temp_directory_path using GetTempPath on windows (details)
  670. Various minor fixes for python 3 (details)
  671. Don't emit coverage mapping for excluded functions (details)
  672. Allow SmallPtrSet to be used with a std::insert_iterator (details)
  673. [gn build] enable new pass manager more, follow-up to 39ceb5c9cfe (details)
  674. [WebAssembly] Prevent data inside text sections in assembly (details)
  675. [clang][emscripten] Add builtin define for __EMSCRIPTEN_PTHREADS__ (details)
  676. [libc++abi] Disable _Unwind_ForcedUnwind + exception tests for ARM EHABI (details)
  677. [mlir][vector] Add pattern to shuffle bitcast ops (details)
  678. [libc][aarch64] Enable a bunch of math functions. (details)
  679. [debugserver] Fix more warnings in DNBArchImplARM64 (details)
  680. [lldb] Re-enable TestExprsChar on arm64 (details)
  681. [WebAssembly] ensure .functype applies to right label in assembler (details)
  682. [lld-macho] Fix alignment & layout to match ld64 and satisfy kernel & codesign (details)
  683. SPARCv9: recognize SIR trap instruction (details)
  684. Have stripDebugInfo() also strip !llvm.loop annotations from all (details)
  685. Add a link to the LLVM Dev recording from the MLIR tutorial landing page (details)
  686. Rework ExecutionEngine::invoke() to make it more friendly to use from C++ (details)
  687. [CSSPGO] Use merged base profile for hot threshold calculation (details)
  688. [AsmPrinter] __patchable_function_entries: Set SHF_LINK_ORDER for binutils 2.36 and above (details)
  689. [AMDGPU] Drop unnecessary const from a return type (NFC) (details)
  690. [llvm] Fix header guards (NFC) (details)
  691. [Transforms/Instrumentation] Use range-based for loops (NFC) (details)
  692. [ELF] --gc-sections: collect unused SHF_LINK_ORDER .gcc_except_table (details)
  693. .gcc_except_table: Set SHF_LINK_ORDER if binutils>=2.36, and drop unneeded unique ID for -fno-unique-section-names (details)
  694. [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion (details)
  695. NFC: Migrate LoopFlatten to work on InstructionCost. (details)
  696. [AArch64] Correct some tablegen operand types. NFC (details)
  697. NFC: Migrate LoopIdiomRecognize to work on InstructionCost (details)
  698. [WebAssembly] Fix call unwind mismatches (details)
  699. [WebAssembly] Fix catch unwind mismatches (details)
  700. [Hexagon] Fix multiclass template parameter types. NFC. (details)
  701. [Sparc] Fix multiclass template parameter types. NFC. (details)
  702. [PowerPC] Fix multiclass template parameter types. NFC. (details)
  703. [X86][AVX] canonicalizeLaneShuffleWithRepeatedOps - merge VPERMILPD ops with different low/high masks. (details)
  704. [WebAssembly] Handle EH terminate pads for cleanup (details)
  705. [gn build] Port be0efa1f2368 (details)
  706. [WebAssembly] Update InstPrinter and AsmParser for new EH instructions (details)
  707. [LTT] Don't attempt to lower type tests used only by assumes (details)
  708. [LSR] Add test for multi-edge latch (NFC) (details)
  709. [AssumptionCache] Do not track llvm.assume calls (PR49043) (details)
  710. [AssumptionCache] Avoid dangling llvm.assume calls in the cache (details)
  711. [X86] Don't pass a 1 to the second argument of ISD::FP_ROUND in LowerFCOPYSIGN. (details)
  712. [IR] Drop unnecessary const from return types (NFC) (details)
  713. [TableGen] Use ListSeparator (NFC) (details)
  714. [Analysis] Use range-based for loops (NFC) (details)
  715. [ELF][test] Improve aarch64 tests (details)
  716. [lldb] Use assertIn/NotIn over assertTrue/False (NFC) (details)
  717. [Polly] Fix build after AssumptionCache change (D96168) (details)
  718. [ConstraintElimination] Extend test coverage. (details)
  719. [TableGen] Make all the fields in PatternToMatch private. NFCI (details)
  720. [ConstraintElimination] Require GEPs to be inbounds for decomposition. (details)
  721. [X86][AVX] Fold extract_subvector(splat, c) -> extract_subvector(splat, 0) (details)
  722. [DAG] SelectionDAG::isSplatValue - handle OR/XOR cases (details)
  723. [ASTMatchers] Add static constructor for ArgKinds of Matchers (details)
  724. Make it possible to store NodeKinds in ArgKind (details)
  725. [Reassociate] allow or->add with shl operands (details)
  726. [ASTMatchers ]Make MatcherDescriptors indicate the node type they match (details)
  727. [ASTMatchers] Make it possible to build mapAnyOf through the registry (details)
  728. [ASTMatchers] Change internal method API (details)
  729. [ASTMatchers] Extract parsing of bind token from the bind id (details)
  730. Add clang-query support for mapAnyOf (details)
  731. Add code complete support for mapAnyOf (details)
  732. [clang-tidy] fix modernize-loop-convert to retain needed array-like operator[] (details)
  733. [SelectionDAG] Drop unnecessary const from a return type (NFC) (details)
  734. [TableGen] Use ListSeparator (NFC) (details)
  735. [Transforms/Utils] Use range-based for loops (NFC) (details)
  736. [ConstraintElimination] Add additional tests. (details)
  737. [LV] Replace some uses of VectorLoopValueMap with VPTransformState (NFC) (details)
  738. [ConstraintElimination] Decompose zext for unsigned compares. (details)
  739. ELFObjectWriter: Don't sort local symbols (details)
  740. [MC][test] Improve STT_FILE tests (details)
  741. ELFObjectWriter: Make STT_FILE precede associated local symbols (details)
  742. ELFObjectWriter: Don't de-duplicate STT_FILE symbols (details)
  743. [scan-build-py] Update scan-build-py to allow outputing as SARIF (details)
  744. [Test] Add failing test for PR49087 (details)
  745. [mlir][ODS] Allow to specify custom namespace for `NativeOpTrait` (details)
  746. [elf-core] Improve reading memory from core file (details)
  747. [clang][cli] Generate and round-trip analyzer options (details)
  748. Reorder MLIRContext location in BuiltinAttributes.h (details)
  749. Revert "Reorder MLIRContext location in BuiltinAttributes.h" (details)
  750. [clang][cli] Generate and round-trip preprocessor options (details)
  751. [ARM] i16 insert-of-extract to VINS pattern (details)
  752. [clang][index] Mark file as C++ in parse-all-comments test (details)
  753. [modules] Put Frontend/OpenMP headers into a Clang module to fix the module build (details)
  754. [clang][cli] Report result of ParseLangArgs (details)
  755. [LLDB] Disable TestExprsChar.py, still fails on Arm/Linux (details)
  756. Use remote regnums in expedited list, value regs and invalidate regs (details)
  757. [clang][cli] NFC: Mirror CreateFromArgs order in generateCC1CommandLine (details)
  758. Revert "[clang][cli] Report result of ParseLangArgs" (details)
  759. [WebAssembly] Fix multiclass template parameter types. NFC. (details)
  760. Revert "Revert "Reorder MLIRContext location in BuiltinAttributes.h"" (details)
  761. [Analysis] Remove unused functions from TargetLibraryInfo (details)
  762. [RISCV] Support the scalable-vector fadd reduction intrinsic (details)
  763. [DebugInfo] Re-engineer a test to be stricter, add XFails (details)
  764. [LLDB] Fix buildbot regression in symbol-binding.test (details)
  765. [OpenCL] Do not enforce ASTContext for OCL2Qual (details)
  766. [ValueTypes] Fix size of nxv1f16 (32 -> 16). (details)
  767. [AMDGPU][MC][GFX10] Improved errors reporting for invalid MIMG NSA operands (details)
  768. [ARM] Add some float Biquad cases showing difficult shuffling. NFC (details)
  769. [ARM] Testing for stored extracted values. NFC (details)
  770. Follow up to e05c10380ce7: add aarch64 to test XFails (details)
  771. [AMDGPU][MC] Corrected error position for invalid dim modifiers (details)
  772. [ARM] Make v2f64 scalar_to_vector legal (details)
  773. [MLIR][LangRef doc] Fix a small typo. (details)
  774. [AMDGPU]: Fixes an invalid clamp selection pattern. (details)
  775. [lldb] Debugger: reuse ExecutionContextRef to create ExecutionContext from Target (details)
  776. Reland "[lldb] Make CommandInterpreter's execution context the same as debugger's one" (details)
  777. [lldb/tests] Un-skip TestGuiBasicDebug.py on Arm and AArch64 (details)
  778. [lldb/tests] Removed add_test_categories decorator for python API tests, NFC (details)
  779. Reapply "[clang][cli] Report result of ParseLangArgs" (details)
  780. [clang][CodeComplete] Fix crash on ParenListExprs (details)
  781. Revert "[Sema] Fix -Warray-bounds false negative when casting an out-of-bounds array item" (details)
  782. Revert "DebugInfo: Temporarily work around -gsplit-dwarf + LTO .debug_gnu_pubnames regression after D94976" (details)
  783. Revert "Re-land D94976 after revert in e29552c5aff6" (details)
  784. [AMDGPU] Generate test checks and add GFX10 test coverage (details)
  785. [ConstraintElimination] Improve index handing during constraint building. (details)
  786. [MLIR][SPIRV] NFC: Split serialization code among multiple files. (details)
  787. [CodeGen][AArch64] Add TargetInstrInfo hook to modify the TailDuplicateSize default threshold (details)
  788. [RISCV] Use std::make_tuple to make some toolchains happy again (details)
  789. [DAG] visitVECTOR_SHUFFLE - move shuffle legality check into MergeInnerShuffle lamda. NFCI. (details)
  790. Introduce -print-changed=[diff | diff-quiet] which show changes in patch-like format (details)
  791. AArch64: use a constpool for blockaddress(...) on MachO (details)
  792. [libc++] Add a wait step in the BuildKite pipeline to shield macOS builders (details)
  793. [AArch64AsmParser] Fix type-limits warning for VectorIndex. (details)
  794. [OpenCL] Fix pipe type printing in arg info metadata (details)
  795. [FE] Manipulate the first byte of guard variable type in both load and store operation (details)
  796. [flang][fir] Update FIR's character type. (details)
  797. [llvm-objdump] Support PLT decoding for aarch64_be (details)
  798. [ELF] Support aarch64_be (details)
  799. [LLDB] Fix `Wunused-result` warning (details)
  800. [lldb] [Process/FreeBSDRemote] Introduce mips64 support (details)
  801. [AMDGPU] Use named unified buffer format constant. NFC. (details)
  802. [RISCV] Use SplatPat/SplatPat_simm5 to handle PseudoVMV_V_X_/PseudoVMV_V_I_ selection as well. (details)
  803. [Sanitizer] Fix failing sanitizer tests (details)
  804. [RISCV] Make scalable vector FMA commutable for register allocation. (details)
  805. [ConstraintElimination] Decompose a few more GEP indices. (details)
  806. [mlir] Drop deprecated syntax for LLVM dialect types (details)
  807. [ELF] Inspect -EL & -EB for OUTPUT_FORMAT(default, big, little) (details)
  808. [RISCV] Add initial support for converting fixed vectors to scalable vectors during lowering to use RVV instructions. (details)
  809. [lld-macho] Emit personalities in compact unwind (details)
  810. [lld-macho] Emit LSDA info in compact unwind (details)
  811. [mlir][Linalg] Fix padding related bugs. (details)
  812. [RISCV] Add support for fixed vector FMA. (details)
  813. [RISCV] Add support for splat fixed length build_vectors using RVV. (details)
  814. Revert "[Utils] Add a switch controlling prefix warnings in UpdateTestChecks" (details)
  815. [GWP-ASan] Add aligned allocations. (details)
  816. [RISCV] Use _COMMUTABLE fma pseudos for fixed vectors. (details)
  817. [lld-macho] Try to make ubsan happy (details)
  818. [dfsan] Refactor visitCallBase (details)
  819. [libomptarget][amdgcn] Fix language linkage post D95300, drop use of assert (details)
  820. [flang][NFC] Update comments. (details)
  821. [scudo/standalone] Use .arch_extension memtag, not mte (details)
  822. DebugInfo/Symbolize: Allow STT_NOTYPE/STT_GNU_IFUNC symbols for .symtab symbolization (details)
  823. [AArch64] Use '//' as comment string for MSVC assembly (details)
  824. Revert "[Test] Add failing test for PR49087" (details)
  825. [AArch64][GlobalISel] Support the 'returned' parameter attribute. (details)
  826. [CMake] [MinGW] Enable use of LLVM_USE_SANITIZER in a MinGW environment (details)
  827. [gn build] reformat all gn files (details)
  828. [SimpleLoopUnswitch] Don't non-trivially unswitch loops that are unsafe to clone (details)
  829. [ARM] One-off identity shuffle (details)
  830. [Verifier] Allow DW_TAG_class_type/DW_TAG_union_type to have no filename (details)
  831. [FileCheck] Default --allow-unused-prefixes to false (details)
  832. [test] Fix unused check prefixes (details)
  833. [flang][NFC] Add comment. (details)
  834. [NVPTX][NewPM] Re-enable NVVMReflectPass (details)
  835. AMDGPU/GlobalISel: Remove dead check prefixes (details)
  836. AMDGPU: Stop adding stack passed wide arguments to call conv handler (details)
  837. GlobalISel: Use correct calling convention in handleAssignments (details)
  838. [RISCV] Initial support of LoopVectorizer for RISC-V Vector. (details)
  839. Renovate CMake files in the `llvm-exegesis` tool. (details)
  840. Renovate CMake file for the `llvm-cfi-verify` tool (details)
  841. [flang][fir] Add OpaqueAttr. (details)
  842. [CUDA][HIP] Pass -fgpu-rdc to host clang -cc1 (details)
  843. Make sure a module file with errors produced via '-fallow-pcm-with-compiler-errors' can be loaded when using implicit modules (details)
  844. Revert "Renovate CMake files in the `llvm-exegesis` tool." (details)
  845. [SPARC] Recognize and handle the %lm(sym) operator (details)
  846. Fix failure in cuda-external-tools.cu (details)
  847. [MLIR][NFC] Fix std.copysign op documentation (details)
  848. [TableGen] Use return value from EmitVBRValue instead of calling GetVBRSize on the same value. Consistently use unsigned for child sizes. NFCI (details)
  849. [MC][WebAssembly] Fix provisional values for data alias relocations (details)
  850. [lld-macho] Add ARM64 target arch (details)
  851. [gn build] Port 87104faac433 (details)
  852. [llvm-objcopy][test] Stablize build-id-link-dir.test (details)
  853. PR48587: is_constant_evaluated() should not evaluate to true during a (details)
  854. PR48606: The lifetime of a constexpr heap allocation always started (details)
  855. Revert "[CostModel] Remove VF from IntrinsicCostAttributes" (details)
  856. [lldb] Fix crash in FormatEntity for mangled-name (details)
  857. [CUDA][HIP] Add -fuse-cuid (details)
  858. [lld][WebAssembly] Fix typo in function name (details)
  859. [MLIR] Add C API for navigating up the IR tree (details)
  860. Return "[Test] Add failing test for PR49087" (details)
  861. [Transforms/Utils] Drop unnecessary const from a return type (NFC) (details)
  862. [TableGen] Use ListSeparator (NFC) (details)
  863. [Transforms] Use range-based for loops (NFC) (details)
  864. Mark 4 tests added in 6d766c8bf9df as requiring an x86 backend as they fail when it is not present. (details)
  865. [test] Add REQUIRES: x86-registered-target to DebugInfo/Symbolize/ELF llvm-mc tests (details)
  866. [test] Drop redundant REQUIRES: x86-registered-target (details)
  867. [MLIR][AVX512] Add integration test for vp2intersect (details)
  868. [Docs] Fix Typo (details)
  869. [RISCV] Use whole register load/store for generic load/store. (details)
  870. [NFC] [Coroutine] Remove Unused Variables (details)
  871. [ELF] Rewriting the path of sample profile file for --reproduce response.txt (details)
  872. [-Wcompletion-handler] Support checks with builtins (details)
  873. [ELF] Drop Android specific workaround -m aarch64_elf64_le_vec (details)
  874. [clang][cli] Generate and round-trip language options (details)
  875. [gn build] Port 40c261c41c4c (details)
  876. Revert "Follow up to e05c10380ce7: add aarch64 to test XFails" (details)
  877. Revert "[DebugInfo] Re-engineer a test to be stricter, add XFails" (details)
  878. [clang][codegen] Remember string used to create llvm::Regex for optimization remarks (details)
  879. [clang][cli] Generate and round-trip CodeGen options (details)
  880. [-Wcompletion-handler][NFC] Remove unexpected warnings on Windows (details)
  881. [clangd] Fix false positive in local rename collision detetction (details)
  882. [NFC,Clang] Add LTO Driver Tsan tests (details)
  883. [NFC,Clang] Add LTO Driver DFsan tests (details)
  884. [NFC,Clang] Add LTO Driver MSan,KMsan tests (details)
  885. [NFC,Clang] Add SanCov Driver tests (details)
  886. [NFC,Clang] Add more Asan Driver tests (details)
  887. Improve STRICT_FSETCC codegen in absence of no NaN (details)
  888. Revert STRICT_FCMP nonan optimisation (details)
  889. [AVR] Fix global references to function symbols (details)
  890. [libomptarget][amdgcn] Tolerate deadstripped env variable (details)
  891. [RISCV] Fix shared libs build (details)
  892. [DAGCombine] Do not remove masking argument to FP16_TO_FP for some targets (details)
  893. [X86] Always assign reassoc flag for intrinsics *reduce_add/mul_ps/pd. (details)
  894. [lld/mac] Implement -u flag (details)
  895. [mlir][linalg] Verify indexing map required attributes (details)
  896. [mlir][linalg] Define a depthwise 2-D convolution op (details)
  897. [clang-tidy] fix modernize-use-nullptr false positive with spaceship operator comparisons (details)
  898. [mlir] Add stacksave, stackrestore to llvm dialect (details)
  899. [X86][SSE] foldShuffleOfHorizOp - add SHUFPS v4f32 handling (details)
  900. [clang][cli] Store InputKind in FrontendOptions (details)
  901. Try to fix compiler-rt tests after 87dbdd2e3bb63b on mac and win (details)
  902. [clang][cli] Look up program action argument in a table (details)
  903. [clang][cli] Store unsigned instead of OptSpecifier in table (details)
  904. [mlir][linalg] Fix one more missing NoSideEffect in linalg tensor op (details)
  905. [mlir][linalg] Fix depthwise conv C++ symbol to be consistent (details)
  906. [OpenCL] Fix types with signed prefix in arginfo metadata. (details)
  907. [clangd] Implement semanticTokens modifiers (details)
  908. [clang][cli] Generate and round-trip Frontend options (details)
  909. [lldb] Inline invariant params to AppleThreadPlanStepThrough (NFC) (details)
  910. Revert "[ObjC][ARC] Use operand bundle 'clang.arc.rv' instead of explicitly" (details)
  911. [libomptarget][amdgcn] Tolerate deadstripped device_state variable (details)
  912. [mlir] add support for verification in integration tests (details)
  913. [flang][fir] Add shape, shape_shift, and slice types. (details)
  914. [clangd] Add semanticTokens modifiers for function/class/file/global scope (details)
  915. [llvm-readobj] Print empty line between note sections in GNU mode (details)
  916. [yaml2obj] Handle NT_* string values in for ELF note types (details)
  917. [llvm-readelf] Print raw ELF note contents if we can't parse it (details)
  918. [llvm-readobj] Add support for decoding FreeBSD ELF notes (details)
  919. [MLIR] Replace dialect registration hooks with dialect handle (details)
  920. [dfsan] Refactor loadShadow (details)
  921. [libc++] Remove C++11 work-arounds in src. (details)
  922. [libc++] Require C++20 to build the benchmarks. (details)
  923. [RISCV] Remove SRO* and SLO* instructions from bitmanip. (details)
  924. [ValueTracking] improve analysis for "C << X" and "C >> X" (details)
  925. [IROutliner] Adding instruction strings to IRSimilarityPrinting diagnostics. (details)
  926. Revert "[mlir] add support for verification in integration tests" (details)
  927. [mlir][Linalg] Add a build method for linalg.pad_tensor (details)
  928. [InstCombine] convert assumes to operand bundles (details)
  929. [RISCV] Make the min and max vector width command line options more consistent and check their relationship to each other. (details)
  930. GlobalISel: Fix using wrong calling convention for callees (details)
  931. AMDGPU: Fix verifier error with argument passed in CSR SGPR (details)
  932. Revert "[libc++] Require C++20 to build the benchmarks." (details)
  933. [CUDA, NVPTX] Allow targeting sm_86 GPUs. (details)
  934. [Attributor][FIX] Do not create UB by introducing a `noundef undef` (details)
  935. [WebAssembly] Use data sections by default (details)
  936. [mlir][spirv] Add support for sampled image type (details)
  937. [clangd] Expose more dependent-name detail via semanticTokens (details)
  938. [libc++] Add `noexcept` to `string::find` and similar members. (details)
  939. [mlir][IR] Remove the concept of `OperationProperties` (details)
  940. [lldb] [Process/FreeBSDRemote] Introduce powerpc support (details)
  941. [libc++] [LWG2993] reference_wrapper<T> conversion from U&& (details)
  942. [lld][WebAssembly] Allow --export of optional start/stop symbols (details)
  943. [MLIR] Add context accessor to identifier (details)
  944. PR48545: Access check the inherited constructor, not the inheriting (details)
  945. [AIX][llvm][support] Implement getHostCPUName (details)
  946. [AArch64][GlobalISel] Allow vector load legalization into 128-bit-wide types (details)
  947. [VPlan] Use VPUser to manage CondBit (details)
  948. [llvm-objdump][test] Fix --prefix tests for system-windows (details)
  949. [mlir] Add initial support for an alias analysis framework in MLIR (details)
  950. [mlir][OpFormatGen] Refactor `type_ref` into a more general `ref` directive (details)
  951. [lld][WebAssembly] Fix segfault in map file support (details)
  952. [flang][fir] Updates to internal name uniquer. (details)
  953. Add NoSideEffect trait to shape.split_at and shape.concat (details)
  954. Add documentation for the extra_args parameter to breakpoint commands. (details)
  955. Remove trailing spaces after \ in comments. (details)
  956. [LLDB] Remove uneeded CopyType from BlockPointerSyntheticFrontEnd (details)
  957. [Polly] Remove use of -O3 in regression test. (details)
  958. Revert "[InstCombine] convert assumes to operand bundles" (details)
  959. Fix side-effect detection in LLVMIRIntrinsicGen. (details)
  960. Add LLVMIR Dialect counterparts of @llvm.maximum and @llvm.minimum. (details)
  961. Use internal_dict everywhere we refer to the python session dict in docs. (details)
  962. Fix xray fdr mode to allow multiple flushes (details)
  963. Fix JSON formatting when converting to trace event format (details)
  964. [clang][cli] Fix gcc "enumeral and non-enumeral type in conditional expression" warning (NFC) (details)
  965. [libcxx] adds concept `std::convertible_to` (details)
  966. [MLIR] Update affine.for unroll utility for iter_args support (details)
  967. [MLIR] NFC Fix vector transforms build warnings (details)
  968. [clang][driver] Only warn once about invalid library values (details)
  969. [Test] Two more tests on usub (details)
  970. Fix deprecated usage of `mallinfo` (details)
  971. [Polly] Port ForwardOpTree to the NewPM. (details)
  972. [Polly] Port DeLICM to the NewPM. (details)
  973. [Polly] Port PruneUnprofitable to the NewPM. (details)
  974. [Polly] Register pass-instrumentation for NewPM's Scop level. (details)
  975. [Polly] Add TargetTransformInfo to ScopPass standard analysis results. (details)
  976. [Polly] Port IslScheduleOptimizer to the NewPM. (details)
  977. [Polly] Improve Simplify pass PM integration. (details)
  978. [Polly] Make NewPM's IslAstAnalysis more similar to the legacy IslAstInfoWrapperPass. (details)
  979. [Polly] Make the NewPM pass pipeline more similar to the legacy's. (details)
  980. [TableGen] Use ListSeparator (NFC) (details)
  981. [TableGen] Drop unnecessary const from return types (NFC) (details)
  982. [SelectionDAG] Use range-based for loops (NFC) (details)
  983. [mlir][shape] Generalize broadcast to a variadic number of shapes (details)
  984. Revert "[analyzer] RetainCountChecker: Add a suppression for OSSymbols." (details)
  985. [AArch64][GlobalISel] Fold selects fed by G_PTR_ADD (details)
  986. [WebAssembly] Enable loop unrolling (details)
  987. [ValueTypes] Add MVT for nxv1bf16. (details)
  988. [LoopVectorize] NFC: Change computeFeasibleMaxVF to operate on ElementCount. (details)
  989. [OpenCL] Add cl_khr_subgroup_non_uniform_arithmetic to TableGen BIFs (details)
  990. [OpenCL] Add cl_khr_subgroup_clustered_reduce to TableGen BIFs (details)
  991. [flang][driver] Add support for -fopenmp and -fopenacc (details)
Commit 605751790418ca4fb1df1e94dfbac34cfcc1b96f by Casey
[libcxx][test] Silence MSVC narrowing warning
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.default/default.pred.pass.cpp
Commit caaaebcde462bf681498ce85c2659d683a07fc87 by zarko
[AIX] Actually push back "-mabi=vec-extabi" when option is on.

Accidentaly ommitted the portion of pushing back the option in
https://reviews.llvm.org/D94986
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit ee4f8860e5f882a7ed1e1549301006c14ed4e749 by i
[VE] Add include for formatted_raw_ostream after 046cfb856517c6140d5e1c0989232e26d00b05b2
The file was modifiedllvm/lib/Target/VE/MCTargetDesc/VETargetStreamer.cpp
The file was modifiedllvm/lib/Target/VE/MCTargetDesc/VETargetStreamer.h
Commit d6656c3b258ef2c40ad089dbb4bfcbb29fd47d9e by Jessica Paquette
[GlobalISel] Remove hint instructions in generic InstructionSelect code.

I think every target will want to remove these in the same way. Rather than
making them all implement the same code, let's just put this in
InstructionSelect.

Differential Revision: https://reviews.llvm.org/D95652
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-hint.mir
Commit 0703b0753c40dad30f1683403f6600bd2cb42055 by ctetreau
[CMake] Actually require python 3.6 or greater

Previously, CMake would find any version of Python3. However, the project
claims to require 3.6 or greater, and 3.6 features are being used.

Reviewed By: yln

Differential Revision: https://reviews.llvm.org/D95635
The file was modifiedclang/CMakeLists.txt
The file was modifiedmlir/CMakeLists.txt
The file was modifiedlld/CMakeLists.txt
The file was modifiedllvm/CMakeLists.txt
Commit d3e8b9fdc0de18ff92764f1be0a9b5a13fbbe9de by ctetreau
Revert "[CMake] Actually require python 3.6 or greater"

There are builders that do not have python 3.6. Revert until this situation can be rectified

This reverts commit 0703b0753c40dad30f1683403f6600bd2cb42055.
The file was modifiedmlir/CMakeLists.txt
The file was modifiedlld/CMakeLists.txt
The file was modifiedclang/CMakeLists.txt
The file was modifiedllvm/CMakeLists.txt
Commit 8d7cbcf582c5c7bc08a9de7f31fed63bf2687127 by pifon
[mlir] Preserve lexicographic order after loop collapsing.

Currently, for a scf.parallel (i,j,k) after the loop collapsing to 1D is done, the
IVs would be traversed as for an scf.parallel(k,j,i).

Differential Revision: https://reviews.llvm.org/D95693
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/test/Transforms/parallel-loop-collapsing.mlir
The file was modifiedmlir/test/Transforms/single-parallel-loop-collapsing.mlir
Commit 632545e8ce846ccaeca8df15a3dc5e36d01a1275 by mgorny
[clang-tidy] Fix linking tests to LLVMTestingSupport

LLVMTestingSupport is not part of libLLVM, and therefore can not
be linked to via LLVM_LINK_COMPONENTS.  Instead, it needs to be
specified explicitly to ensure that it is linked explicitly
even if LLVM_LINK_LLVM_DYLIB is used.  This is consistent with handling
in clangd.

Fixes PR#48931

Differential Revision: https://reviews.llvm.org/D95653
The file was modifiedclang-tools-extra/unittests/clang-tidy/CMakeLists.txt
Commit 9a81a4ef79cf283fcf55a25a0bea67ba34dc0d53 by tmsriram
Emit metadata when instr. profiles hash mismatch occurs.

This patch emits "instr_prof_hash_mismatch" function annotation metadata if
there is a hash mismatch while applying instrumented profiles.

During the PGO optimized build using instrumented profiles, if the CFG of
the function has changed since generating the profile, a hash mismatch is
encountered. This patch emits this information as annotation metadata. We
plan to use this with Propeller which is done at the machine IR level.
Propeller is usually applied on top of PGO and a hash mismatch during
PGO could be used to detect source drift.

Differential Revision: https://reviews.llvm.org/D95495
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
The file was addedllvm/test/Transforms/PGOProfile/Inputs/hash_mismatch_metadata.proftext
The file was addedllvm/test/Transforms/PGOProfile/hash_mismatch_metadata.ll
Commit 49a6502cd5c2361d9c6f49ae1ee36940afbdeb0a by ctetreau
[SVE] delete VectorType::getNumElements()

The previously agreed-upon deprecation period for
VectorType::getNumElements() has passed. This patch removes this method
and completes the refactor proposed in the RFC:
https://lists.llvm.org/pipermail/llvm-dev/2020-March/139811.html

Reviewed By: david-arm, rjmccall

Differential Revision: https://reviews.llvm.org/D95570
The file was modifiedllvm/include/llvm/IR/DerivedTypes.h
Commit a78d8feb48a536f50736f97a9ae28d5bae94e8ed by lebedev.ri
[LowerConstantIntrinsics] Preserve Dominator Tree, if avaliable
The file was modifiedllvm/test/Other/opt-Os-pipeline.ll
The file was modifiedllvm/test/Other/opt-O2-pipeline.ll
The file was modifiedllvm/test/Other/opt-O3-pipeline-enable-matrix.ll
The file was modifiedllvm/test/Other/opt-O3-pipeline.ll
The file was modifiedllvm/lib/Transforms/Scalar/LowerConstantIntrinsics.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/opt-pipeline.ll
Commit c2534a7097c054547b2c30ef0d337088dd5da3d1 by lebedev.ri
[ShadowStackGCLowering] Preserve Dominator Tree, if avaliable

This doesn't help avoid any Dominator Tree recalculations just yet,
there's one more pass to go..
The file was modifiedllvm/include/llvm/Transforms/Utils/EscapeEnumerator.h
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/lib/CodeGen/ShadowStackGCLowering.cpp
The file was modifiedllvm/lib/Transforms/Utils/EscapeEnumerator.cpp
Commit ddc4b56eef9fec990915470069a29e70bbde3711 by lebedev.ri
[ExpandMemCmpPass] Preserve Dominator Tree, if available

This finishes getting rid of all the avoidable Dominator Tree recalculations
in X86 optimized codegen pipeline.
The file was modifiedllvm/test/CodeGen/AArch64/O3-pipeline.ll
The file was modifiedllvm/lib/CodeGen/ExpandMemCmp.cpp
The file was modifiedllvm/test/CodeGen/X86/opt-pipeline.ll
The file was modifiedllvm/test/CodeGen/ARM/O3-pipeline.ll
Commit 9dbe736cbd2c6a0c3d62a6fd6a2cf31c9ffc9577 by Stanislav.Mekhanoshin
[AMDGPU] Be more specific in needsFrameBaseReg

A condition "mayLoadOrStore" is too broad for that function.

Differential Revision: https://reviews.llvm.org/D95700
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
Commit e08b67f3a8ada62dcf84d41929c208adc656ba92 by kai.wang
[NFC][RISCV] Remove redundant pseudo instructions for vector load/store.

Not all combinations of SEW and LMUL we need to support. For example, we
only need to support [M1, M2, M4, M8] for SEW = 64. There is no need to
define pseudos for PseudoVLSE64MF8, PseudoVLSE64MF4, and PseudoVLSE64MF2.

Differential Revision: https://reviews.llvm.org/D95667
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Commit 282aca10aeb03bdaef0a8d4f3faa4c2ff236e527 by kai.wang
[RISCV] Update the version number to v0.10 for vector.

v0.10 is tagged in V specification. Update the version to v0.10.

Differential Revision: https://reviews.llvm.org/D95680
The file was modifiedclang/test/Preprocessor/riscv-target-features.c
The file was modifiedclang/lib/Basic/Targets/RISCV.cpp
The file was modifiedclang/test/Driver/riscv-arch.c
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoV.td
The file was modifiedllvm/test/CodeGen/RISCV/attributes.ll
The file was modifiedllvm/test/MC/RISCV/attribute-arch.s
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was modifiedclang/lib/Driver/ToolChains/Arch/RISCV.cpp
Commit ebe74d9592d097501f376c2086e58d35aa318896 by pklausler
[flang] Support disabled alternative PARAMETER statement

Legacy Fortran implementations support an alternative form of the
PARAMETER statement; it differs syntactically from the standard's
PARAMETER statement by lacking parentheses, and semantically by
using the type and shape of the initialization expression to define
the attributes of the named constant.  (GNU Fortran gets that part
wrong; Intel Fortran and nvfortran have full support.)

This patch disables the old style PARAMETER statement by default, as
it is syntactically ambiguous with conforming assignment statements;
adds a new "-falternative-parameter-statement" option to enable it;
and implements it correctly when enabled.

Fixes https://bugs.llvm.org/show_bug.cgi?id=48774, in which a user
tripped over the syntactic ambiguity.

Differential Revision: https://reviews.llvm.org/D95697
The file was modifiedflang/include/flang/Common/Fortran-features.h
The file was modifiedflang/tools/f18/f18.cpp
The file was modifiedflang/docs/Extensions.md
The file was modifiedflang/lib/Semantics/scope.cpp
The file was modifiedflang/include/flang/Semantics/tools.h
The file was modifiedflang/include/flang/Semantics/scope.h
The file was modifiedflang/lib/Semantics/resolve-names.cpp
The file was modifiedflang/lib/Semantics/tools.cpp
The file was modifiedflang/lib/Evaluate/shape.cpp
The file was addedflang/test/Semantics/oldparam02.f90
The file was addedflang/test/Semantics/oldparam03.f90
The file was addedflang/test/Semantics/oldparam01.f90
The file was modifiedflang/lib/Semantics/type.cpp
Commit 9847023660467a4469b5667bcf7a4c73a4780037 by kai.wang
[RISCV]  Update the version number to v0.10 for vector.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
Commit 0af25275364e27d9766eb0912a5dd9731d62936b by jpienaar
Update ElementsAttr::isValidIndex to handle ElementsAttr with a scalar. Scalar will have rank 0.

Update ElementsAttr::isValidIndex to handle ElementsAttr with a scalar. Scalar will have rank 0.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D95663
The file was modifiedmlir/lib/IR/BuiltinAttributes.cpp
The file was modifiedmlir/unittests/IR/AttributeTest.cpp
Commit 719f778441750dcadcf7c7c411d1cfb39029d59a by nhawes
[VFS] Combine VFSFromYamlDirIterImpl and OverlayFSDirIterImpl into a single implementation (NFC)

As a fixme notes, both of these directory iterator implementations are
conceptually similar and duplicate the functionality of returning and uniquing
entries across two or more directories. This patch combines them into a single
class 'CombiningDirIterImpl'.

This also drops the 'Redirecting' prefix from RedirectingDirEntry and
RedirectingFileEntry to save horizontal space. There's no loss of clarity as
they already have to be prefixed with 'RedirectingFileSystem::' whenever
they're referenced anyway.

rdar://problem/72485443
Differential Revision: https://reviews.llvm.org/D94857
The file was modifiedlldb/source/Host/common/FileSystem.cpp
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
The file was modifiedllvm/include/llvm/Support/VirtualFileSystem.h
Commit ad5307aaca7e3ce43918ef464ea271cfe53deccb by craig.topper
[RISCV] Merge rv32 and rv64 vector fadd/fsub/fmul/fdiv sdnode tests into single tests files with 2 run lines.

The IR and CHECK lines are identical so just keep one copy.
The file was addedllvm/test/CodeGen/RISCV/rvv/vfdiv-sdnode.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfsub-sdnode.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfadd-sdnode.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfmul-sdnode-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmul-sdnode.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vfneg-sdnode.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfdiv-sdnode-rv64.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfsub-sdnode-rv64.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfmul-sdnode-rv32.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfadd-sdnode-rv32.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfadd-sdnode-rv64.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfdiv-sdnode-rv32.ll
The file was removedllvm/test/CodeGen/RISCV/rvv/vfsub-sdnode-rv32.ll
Commit 4d9336923ec33ff789ed0f32dd0d13a4f902b3aa by jpienaar
Use type alias for large tuples

Tuples can occupy quite a lot of space, instead of printing out tuple type
everywhere, just use the type alias if larger (arbitrarily chose a bound for
now).

Differential Revision: https://reviews.llvm.org/D95707
The file was modifiedmlir/lib/IR/BuiltinDialect.cpp
Commit c32f3998029d52df33d060e759563e3d314ce29f by tmsriram
Detect Source Drift with Propeller.

Source Drift happens when the sources are updated after profiling the binary
but before building the final optimized binary. If the source has changed since
the profiles were obtained, optimizing basic blocks might be sub-optimal. This
only applies to BasicBlockSection::List as it creates clusters of basic blocks
using basic block ids. Source drift can invalidate these groupings leading to
sub-optimal code generation with regards to performance.

PGO source drift for a particular function can be detected using function
metadata added in D95495.

When source drift is deected, disable basic block clusters by default
which can be re-enabled with  -mllvm option
bbsections-detect-source-drift=false.

Differential Revision: https://reviews.llvm.org/D95593
The file was addedllvm/test/CodeGen/X86/basic-block-sections-source-drift.ll
The file was modifiedllvm/lib/CodeGen/BasicBlockSections.cpp
Commit a5d9e0c79befb6856ae78a3c5f515287ad89a40f by pengfei.wang
[X86] Fix tile config register spill issue.

This is an optimized approach for D94155.

Previous code build the model that tile config register is the user of
each AMX instruction. There is a problem for the tile config register
spill. When across function, the ldtilecfg instruction may be inserted
on each AMX instruction which use tile config register. This cause all
tile data register clobber.

To fix this issue, we remove the model of tile config register. Instead,
we analyze the AMX instructions between one call to another. We will
insert ldtilecfg after the first call if we find any AMX instructions.

Reviewed By: LuoYuanke

Differential Revision: https://reviews.llvm.org/D95136
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86TileConfig.cpp
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrAMX.td
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-across-func.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-bf16-intrinsics.ll
The file was addedllvm/test/CodeGen/X86/AMX/amx-ldtilecfg-insert.ll
The file was modifiedllvm/lib/Target/X86/X86ExpandPseudo.cpp
The file was modifiedllvm/lib/Target/X86/X86PreTileConfig.cpp
The file was modifiedllvm/lib/Target/X86/X86RegisterInfo.td
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
Commit 61a5502a93ab938edc66422e41ad98757a6f920b by gkm
[llvm-objdump-macho] print per-second-level-page encodings for option --unwind-info

Compact unwind entries have 8 bits for the encoding-table offset:
* offsets 0..126 reference the global commmon-encodings table, while
* offsets 127..255 reference a per-second-level-page table.
This diff teaches `llvm-objdump` to print this per-page encodings table.

Differential Revision: https://reviews.llvm.org/D93265
The file was addedllvm/test/tools/llvm-objdump/MachO/Inputs/unwind-info-excess.macho-x86_64
The file was addedllvm/test/tools/llvm-objdump/MachO/unwind-info-excess-x86_64.test
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
Commit 0ef25cf558bfaffda4820c8b4e4f2a02d52b0334 by gkm
[lld-macho][NFC] Add new option group for versions

Coalesce all version control options into a group

Differential Revision: https://reviews.llvm.org/D94938
The file was modifiedlld/MachO/Options.td
Commit 49556b87ae9b85b883b9b8be432a6f6a769d6021 by nullptr.cpp
[NFC][VFS] Fix a build warning due to an extra semicolon
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
Commit 7728cc003a87b274ebd611070fe38f0e41fef2aa by kazu
[llvm] Use append_range (NFC)
The file was modifiedllvm/tools/obj2yaml/wasm2yaml.cpp
The file was modifiedllvm/utils/FileCheck/FileCheck.cpp
The file was modifiedllvm/tools/lto/lto.cpp
The file was modifiedllvm/tools/llvm-cov/CoverageExporterJson.cpp
The file was modifiedllvm/include/llvm/Bitstream/BitstreamWriter.h
The file was modifiedllvm/tools/llvm-cov/CoverageExporterLcov.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
Commit 1a2d67fa23b2b65c7f07481dd0184957f8d058d9 by kazu
[llvm] Use llvm::lower_bound and llvm::upper_bound (NFC)
The file was modifiedllvm/lib/CodeGen/LiveRangeCalc.cpp
The file was modifiedllvm/lib/Target/X86/X86IntrinsicsInfo.h
The file was modifiedllvm/lib/CodeGen/LiveInterval.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinkerForBinary.cpp
The file was modifiedllvm/lib/MC/MCSection.cpp
Commit 8ed163618478dd4e7e03e34a029256b47a95d85c by kazu
[llvm] Use isa instead of dyn_cast (NFC)
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/AVR/AVRISelLowering.cpp
The file was modifiedllvm/lib/Transforms/IPO/MergeFunctions.cpp
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
The file was modifiedllvm/lib/Target/BPF/BPFAdjustOpt.cpp
The file was modifiedllvm/utils/TableGen/FixedLenDecoderEmitter.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/ValueProfilePlugins.inc
The file was modifiedllvm/lib/Target/VE/VEISelDAGToDAG.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOMemOPSizeOpt.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopSink.cpp
Commit 3949a3ed49bbd95235c3c616bf4dbae4ecac48bc by i
[ELF][test] Add --emit-relocs --gc-sections test for relocation section for a non-SHF_ALLOC section

This has been fixed by D89841.
The file was modifiedlld/test/ELF/emit-relocs-gc.s
Commit 6a59f0560648b43324b5aed51b9ef996404a25e0 by flo
[LTO] Use lto::backend for code generation.

This patch updates LTOCodeGenerator to use the utilities provided by
LTOBackend to run middle-end optimizations and backend code generation.

This is a first step towards unifying the code used by libLTO's C API
and the newer, C++ interface (see PR41541).

The immediate motivation is to allow using the new pass manager when
doing LTO using libLTO's C API, which is used on Darwin, among others.

With the changes, there are no codegen/stats differences when building
MultiSource/SPEC2000/SPEC2006 on Darwin X86 with LTO, compared
to without the patch.

Reviewed By: steven_wu

Differential Revision: https://reviews.llvm.org/D94487
The file was modifiedllvm/test/tools/lto/print-stats.ll
The file was modifiedllvm/test/LTO/X86/disable-verify.ll
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
Commit 7a6a2cc81aaf064e6f5bc9a9a16973f552d2bdc2 by flo
[LTO] Add option enable NewPM with LTOCodeGenerator.

This patch adds an option to enable the new pass manager in
LTOCodeGenerator. It also updates a few tests with legacy PM specific
tests, which started failing after 6a59f0560648 when
LLVM_ENABLE_NEW_PASS_MANAGER=true.
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/test/Other/X86/lto-hot-cold-split.ll
The file was modifiedllvm/test/LTO/X86/diagnostic-handler-remarks.ll
The file was modifiedllvm/test/LTO/X86/disable-verify.ll
Commit b01b964d3776956ef415a10c57cf612add55bba9 by harald
[compiler-rt][tests] Define TARGET_FLAGS

D36116 refactored the logic of tests and removed the definition of TARGET_FLAGS, but left one use of it. Restore its definition for that one use, so that an x86_64 test is compiled with -m64.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D93634
The file was modifiedcompiler-rt/lib/sanitizer_common/tests/CMakeLists.txt
Commit 79125085f16540579d27c7e4987f63eef9c4aa23 by steveire
[ASTMatchers] Fix traversal below range-for elements

Differential Revision: https://reviews.llvm.org/D95562
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
Commit 10c57268c074c3ad48f76da38fa2ba575ee3d1f9 by flo
[LoopUnswitch] Properly update MSSA if header has non-clobbering stores.

This patch fixes updating MemorySSA if the header contains memory
defs that do not clobber a duplicated instruction. We need to find the
first defining access outside the loop body and use that as defining
access of the duplicated instruction.

This fixes a crash caused by bee486851c1a.
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnswitch.cpp
The file was addedllvm/test/Transforms/LoopUnswitch/partial-unswitch-update-memoryssa.ll
The file was modifiedllvm/test/Transforms/LoopUnswitch/partial-unswitch.ll
Commit bb57a3422a09dcdd572ccb42767a0dabb5f966dd by steveire
Fix traversal with hasDescendant into lambdas

Differential Revision: https://reviews.llvm.org/D95607
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
Commit d22140687500f90830fe416d9c1e317f7c4535d5 by grimar
[llvm-symbolizer] - Fix the crash in GNU output style with --no-inlines and missing input file.

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

If the input file does not exist (or has a reading error), the
following code will crash if there are two or more input addresses.

```
auto ResOrErr = Symbolizer.symbolizeInlinedCode(
  ModuleName, {Offset, object::SectionedAddress::UndefSection});
Printer << (error(ResOrErr) ? DILineInfo() : ResOrErr.get().getFrame(0));
```

For the first address, `symbolizeInlinedCode` returns an error.
For the second address, `symbolizeInlinedCode` returns an empty result
(not an error) and `.getFrame(0)` will crash.

Differential revision: https://reviews.llvm.org/D95609
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
The file was modifiedllvm/test/tools/llvm-symbolizer/output-style-inlined.test
Commit c87dd614fd4b0b0d6290b5b90897caa09e053ef0 by fraser
[RISCV] Update extractelt tests to sign-extend results (NFC)

This demonstrates a missed optimization: the `vmv.x.s` instruction is
used to extract the element from the vector, and this instruction
already sign-extends the value to XLEN.
The file was modifiedllvm/test/CodeGen/RISCV/rvv/extractelt-int-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll
Commit b10d445307a0f3c7e5522836b4331090aacaf349 by steveire
[ASTMatchers] Fix definition of decompositionDecl
The file was modifiedclang/lib/ASTMatchers/ASTMatchersInternal.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
Commit e718869bf47af20be0ec7301846f78c82d0f1140 by kazu
[TableGen] Use ListSeparator (NFC)
The file was modifiedllvm/utils/TableGen/AsmMatcherEmitter.cpp
Commit b4e780697d1cf0c06e7ca3a908ece0ab65a470ff by kazu
[AMDGPU] Forward-declare AMDGPUTargetMachine (NFC)

AMDGPUTargetTransformInfo.h needs AMDGPUTargetMachine but relies on a
forward declaration of AMDGPUTargetMachine in AMDGPU.h.  This patch
adds a forward declaration right in AMDGPUTargetTransformInfo.h.

While we are at it, this patch removes the one in
AMDGPU.h, where it is unnecessary.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPU.h
Commit 627b5bda11a79785a21b1a50070415d4188aba6a by kazu
[llvm] Add missing header guards (NFC)

Identified with llvm-header-guard.
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUExportClustering.h
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h
The file was modifiedllvm/lib/Target/PowerPC/PPCMacroFusion.h
The file was modifiedllvm/include/llvm/Support/DataTypes.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMacroFusion.h
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
The file was modifiedllvm/lib/Target/AArch64/AArch64MacroFusion.h
The file was modifiedllvm/include/llvm/CodeGen/CommandFlags.h
Commit 39486753d5c69d98d510c9ed43c92f076ec4c602 by flo
[ConstraintElimination] Verify CS and DFSInStack are in sync.(NFC)

After the main loop is done, we should have one constraint per item in
DFSInStack. Otherwise we added a constraint without a proper DFSInStack
item.
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Commit 26d38f6d20ff137d89cb7c891b739662de1ca508 by tianshilei1992
[OpenMP][NVPTX] Refined CMake logic to choose compute capabilites

This patch refines the logic to choose compute capabilites via the
environment variable `LIBOMPTARGET_NVPTX_COMPUTE_CAPABILITIES`. It supports the
following values (all case insensitive):
- "all": Build `deviceRTLs` for all supported compute capabilites;
- "auto": Only build for the compute capability auto detected. Note that this
  requires CUDA. If CUDA is not found, a CMake fatal error will be raised.
- "xx,yy" or "xx;yy": Build for compute capabilities `xx` and `yy`.

If `LIBOMPTARGET_NVPTX_COMPUTE_CAPABILITIES` is not set, it is equivalent to set
it to `all`.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D95687
The file was modifiedopenmp/libomptarget/cmake/Modules/LibomptargetGetDependencies.cmake
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/CMakeLists.txt
Commit 4e04a535d8f836804d39e8861ae17d7817293c5a by craig.topper
[TableGen] Avoid a couple vector copies in ExpandHwModeBasedTypes.

Use vector::swap instead of copying to a local vector and clearing
the original. We can just swap into the just created local vector
instead which will move the pointers and not the data.

Use std::move in another place to avoid a copy.
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
Commit b5e3a5785dab0d0c7aa68cc65c2dd348488e72d1 by craig.topper
[TableGen] Use emplace_back to add to PatternsToMatch in GenerateVariants. Use std::move when adding to PatternsToMatch in AddPatternToMatch.

We already used emplace_back in at least one other place so be
consistent.

AddPatternToMatch already took PTM as an rvalue reference, but
we need to use std::move again to move it into the PatternToMatch
vector.
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
Commit 3fdf2a56dd00ece7b6572e592f40b207ef85f96f by craig.topper
[RISCV] Use MVT instead of EVT in RISCVISelDAGToDAG.cpp

All this code runs post type legalization so we should have
exclusively legal types. The methods on MVT should be more
efficient than EVT.
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Commit 6f3d322f250d2381370b256e648cbb76c6de0135 by pklausler
[flang] Improve shape & length characterization

Analyze the shape of the result of TRANSFER(ptr,array) correctly
when "ptr" is an array of deferred shape.  Fixing this bug led to
some refactoring and concentration of common code in TypeAndShape
member functions with code in general shape and character length
analysis, and this led to some regression test failures that have
all been cleaned up.

Differential Revision: https://reviews.llvm.org/D95744
The file was modifiedflang/include/flang/Evaluate/tools.h
The file was modifiedflang/lib/Evaluate/shape.cpp
The file was modifiedflang/lib/Semantics/runtime-type-info.cpp
The file was modifiedflang/lib/Evaluate/characteristics.cpp
The file was modifiedflang/lib/Evaluate/variable.cpp
The file was modifiedflang/lib/Semantics/check-call.cpp
The file was modifiedflang/include/flang/Evaluate/characteristics.h
The file was modifiedflang/lib/Semantics/expression.cpp
Commit 5ec59f021ceb09cff32c0fb4c24310362d08ea63 by springerm
[mlir][AVX512] Fix result type of vp2intersect

The result values of vp2intersect are vectors of bits, i.e.,
vector<8xi1> or vector<16xi8> (instead of i8 or i16).

Differential Revision: https://reviews.llvm.org/D95678
The file was modifiedmlir/include/mlir/Dialect/AVX512/AVX512.td
The file was modifiedmlir/test/Dialect/AVX512/roundtrip.mlir
The file was modifiedmlir/test/Conversion/AVX512ToLLVM/convert-to-llvm.mlir
Commit be997cead7fa0e4a1001129cd0d80944e6cc126d by craig.topper
[RISCV] Add rv64 command line to bswap-ctlz-cttz-ctpop.ll.
The file was modifiedllvm/test/CodeGen/RISCV/bswap-ctlz-cttz-ctpop.ll
Commit 095f08653f3ab0917a474888abac95c4fa99697d by sam.mccall
[docs] Clarify compile_flags.txt subtleties

See confusion e.g. in https://github.com/clangd/clangd/issues/637
The file was modifiedclang/docs/JSONCompilationDatabase.rst
Commit 0962f1d72b1606f3224a14434c7b4500a23f8728 by sam.mccall
[clangd] Quote/escape argv included in log messages.

https://github.com/clangd/clangd/issues/637
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
The file was modifiedclang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
The file was modifiedclang-tools-extra/clangd/CompileCommands.h
The file was modifiedclang-tools-extra/clangd/QueryDriverDatabase.cpp
The file was modifiedclang-tools-extra/clangd/tool/Check.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
Commit 60053a9ce28655fc6f635567c62599fa3aad57d2 by sam.mccall
[clangd] Remove references to old future-based API. NFC
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/support/Context.h
Commit 8869e2f969101426e8615bb3cb0e7186938c23c7 by koraq
[libc++] Allow building with C++17.

After committing D92214 it was noticed libc++ no longer builds with
C++17. For now reenable building with C++17. This is intended to be a
temporary measure in the future a C++20 capable compiler will be
required.
The file was modifiedlibcxx/src/format.cpp
Commit fb244ffb9f2d7718b0edb1566138ba454b5709bc by a.v.lapshin
[dsymutil][DWARFLinker][NFC] make AddressManager not depending on the order of checks for relocations.

Current dsymutil implementation of hasLiveMemoryLocation()/hasLiveAddressRange()
and applyValidRelocs() assume that calls should be done in certain order
(from first Dies to last). Multi-thread implementation might call these methods
in other order(it might process compilation units in order other than they are physically
located), so we remove restriction that searching for relocations should be done
in ascending order. This change does not introduce noticable performance degradation.
The testing results for clang binary:

golden-dsymutil/dsymutil  23787992
clang MD5: 5efa8fd9355ebf81b65f24db5375caa2
elapsed time=91sec

build-Release/bin/dsymutil 23855616
clang MD5: 5efa8fd9355ebf81b65f24db5375caa2
elapsed time=91sec

Differential Revision: https://reviews.llvm.org/D93106
The file was modifiedllvm/test/tools/dsymutil/X86/dwarf5.test
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
The file was modifiedllvm/include/llvm/DWARFLinker/DWARFLinker.h
The file was modifiedllvm/lib/DWARFLinker/DWARFLinker.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinkerForBinary.h
The file was modifiedllvm/tools/dsymutil/DwarfLinkerForBinary.cpp
Commit 7a8008d0e8885d22ff9a1fa7f9965c7b2ad2569a by sam.mccall
Revert "[clangd] Quote/escape argv included in log messages."

This reverts commit 0962f1d72b1606f3224a14434c7b4500a23f8728.
http://45.33.8.238/win/32346/step_9.txt
The file was modifiedclang-tools-extra/clangd/CompileCommands.h
The file was modifiedclang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
The file was modifiedclang-tools-extra/clangd/tool/Check.cpp
The file was modifiedclang-tools-extra/clangd/QueryDriverDatabase.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
Commit 7de711ecca99f81da3c2ae1705cefe0b4bda70b3 by sam.mccall
Reland [clangd] Quote/escape argv included in log messages.

... but don't apply it where we're using hasSubstr

This reverts commit 7a8008d0e8885d22ff9a1fa7f9965c7b2ad2569a.
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
The file was modifiedclang-tools-extra/clangd/CompileCommands.h
The file was modifiedclang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
The file was modifiedclang-tools-extra/clangd/tool/Check.cpp
The file was modifiedclang-tools-extra/clangd/QueryDriverDatabase.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
Commit 8f14a08863bf295cdc660f24948ef810731b812d by Matthew.Arsenault
AMDGPU: Add missing consts
The file was modifiedllvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
Commit 1801e2aa249497adb5b0ab33e7fc5dd0ad4a4ab3 by Matthew.Arsenault
RegAlloc: Fix assert if all registers in class reserved

With a context instruction, this would produce a context
error. However, it would continue on and do an out of bounds access of
the empty allocation order array.
The file was addedllvm/test/CodeGen/AMDGPU/alloc-all-regs-reserved-in-class.mir
The file was modifiedllvm/lib/CodeGen/RegAllocBase.cpp
Commit 177b8d1ad3cd78aa789bb246c42cbf10dda8a901 by kazu
[VE] Fix compiler warnings (NFC)
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
Commit 6bfb02cafe4fb31fd0a4f8a9871180df3333bd49 by kazu
[TableGen] Use ListSeparator (NFC)
The file was modifiedllvm/utils/TableGen/SearchableTableEmitter.cpp
Commit 3d1200b9f6e305ea66080bb93fd34753c46066a1 by kazu
[llvm] Drop unnecessary const from return types (NFC)

Identified with const-return-type.
The file was modifiedllvm/include/llvm/IR/DerivedTypes.h
The file was modifiedllvm/include/llvm/Analysis/DDG.h
The file was modifiedllvm/include/llvm/MCA/Instruction.h
The file was modifiedllvm/include/llvm/TableGen/DirectiveEmitter.h
The file was modifiedllvm/include/llvm/Transforms/IPO/SampleContextTracker.h
The file was modifiedllvm/lib/Target/X86/X86MachineFunctionInfo.h
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/tools/dsymutil/DebugMap.h
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.h
The file was modifiedllvm/include/llvm/Object/WindowsResource.h
The file was modifiedllvm/lib/Transforms/IPO/SampleContextTracker.cpp
The file was modifiedllvm/include/llvm/Analysis/LoopCacheAnalysis.h
Commit f43c0707f66a19236f58f5bd8be470e5fc625603 by mgorny
[lldb] [Process/FreeBSDRemote] Introduce arm64 support

Introduce arm64 support in the FreeBSDRemote plugin.  The code
is roughly based on Linux and reuses the same POSIX RegisterInfos
(but the buffers need to be a few bytes larger due to stricter struct
member alignment in FreeBSD structures -- luckily, they do not affect
the actual member offsets).  It supports reading and writing
general-purpose and FPU registers.  SVE and hardware watchpoint support
is missing due to the limitations of FreeBSD ptrace(2) API.

Differential Revision: https://reviews.llvm.org/D95297
The file was addedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_arm64.h
The file was addedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_arm64.cpp
The file was modifiedlldb/unittests/Process/Utility/RegisterContextFreeBSDTest.cpp
The file was modifiedlldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/CMakeLists.txt
Commit 9d029362d1ed48c38565aeab0ca04bf4143d3e5b by mgorny
[lldb] [Process/FreeBSDRemote] Introduce arm (32-bit) support

Introduce a NativeRegisterContextFreeBSD for 32-bit ARM platform.
This includes support for GPR + VFP registers as exposed by FreeBSD's
ptrace(2) API.  Hardware breakpoints or watchpoints are not supported
due to missing kernel support.  The code is roughly based on the arm64
context.

It also includes an override for GetSoftwareBreakpointTrapOpcode() based
on the matching code in the PlatformFreeBSD plugin.

Differential Revision: https://reviews.llvm.org/D95696
The file was addedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_arm.h
The file was addedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_arm.cpp
The file was modifiedlldb/unittests/Process/Utility/RegisterContextFreeBSDTest.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/CMakeLists.txt
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeProcessFreeBSD.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeProcessFreeBSD.h
The file was modifiedlldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
Commit 2ae0f8d60083d39b6df6a1b4d073970fba3e4a0a by flo
[ConstraintElimination] Add tests for ICMP_EQ predicates.

Pre-commit test coverage for conditions with EQ predicates.
The file was addedllvm/test/Transforms/ConstraintElimination/eq.ll
Commit 0d487cf87aa1b609b7db061def3e5ad068576ecf by flo
[LTOCodeGenerator] Use lto::Config for options (NFC).

This patch removes some options that have been duplicated in
LTOCodeGenerator and instead use lto::Config directly to manage the
options.

This is a cleanup after 6a59f0560648.

Reviewed By: tejohnson

Differential Revision: https://reviews.llvm.org/D95738
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
Commit 2de4f19ecdb275bcbc6e7ee8368c19a63f99db88 by luismarques
[LSan][RISCV] Enable LSan for RISCV64

Fixes the broken RISCV64 implementation of `internal_clone` and
adds RISCV64 support for LSan.

Differential Revision: https://reviews.llvm.org/D92403
The file was modifiedcompiler-rt/test/asan/lit.cfg.py
The file was modifiedclang/test/Driver/fsanitize.c
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
The file was modifiedcompiler-rt/cmake/config-ix.cmake
The file was modifiedcompiler-rt/test/lsan/TestCases/use_registers.cpp
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was modifiedcompiler-rt/lib/lsan/lsan_allocator.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
The file was modifiedcompiler-rt/test/sanitizer_common/print_address.h
The file was modifiedcompiler-rt/test/lsan/lit.common.cfg.py
The file was modifiedcompiler-rt/lib/lsan/lsan_common.h
Commit 2eb5f3454212aa906388013e6807a7a906233f18 by jpienaar
Fix omitted kw in type alias printer

* Fixing missing `type` keyword in alias print
* Add test for large tuple type alias & rerun output to verify printed
form can be parsed (which caught the above).
The file was modifiedmlir/test/IR/print-attr-type-aliases.mlir
The file was modifiedmlir/lib/IR/AsmPrinter.cpp
Commit 70289ea6f591bd39c631f1eee3e6f2622fbc1d46 by craig.topper
[RISCV][LegalizeTypes] Try to expand BSWAP before promoting if the promoted BSWAP would expand anyway.

If we're going to end up expanding anyway, we should do it early
so we don't create extra operations to handle the bytes added by
promotion.

This is helfpul on RISCV where we might have to promote i16 all
the way to i64.

Differential Revision: https://reviews.llvm.org/D95756
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rv64Zbb.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rv64Zbp.ll
The file was modifiedllvm/test/CodeGen/RISCV/bswap-ctlz-cttz-ctpop.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Commit 8f670d5b6d8f39bf9bf1d142dacef3afaed6d70b by jyknight
CFG: Create scope for non-compound range-for body.

Previously, it was omitting the destructor call from the CFG, which
could result in incorrect diagnostics.
The file was modifiedclang/lib/Analysis/CFG.cpp
The file was modifiedclang/test/Analysis/auto-obj-dtors-cfg-output.cpp
Commit 3203c968424193a519d1b52739047748038bb074 by luismarques
[CMake][compiler-rt][RISCV] Support RISC-V cross-compilation

This seems to be a safe way to ensure that the Compiler-RT test compiler
flags are properly set in all cross-compilation scenarios. Without this
when `BUILTINS_TEST_TARGET_CFLAGS` is set in
`compiler-rt/test/builtins/CMakeLists.txt` the other flags are cleared.

Differential Revision: https://reviews.llvm.org/D92124
The file was modifiedcompiler-rt/cmake/config-ix.cmake
Commit 68e5614b42823cc1eef48916e1e6f551ad61a055 by luismarques
[Sanitizer][RISCV] Fix FastUnwindTest

Fixes the `FastUnwindTest` unit test for RISC-V.
These changes reflect the different stack organization commonly used for
that architecture.

Differential Revision: https://reviews.llvm.org/D90574
The file was modifiedcompiler-rt/lib/sanitizer_common/tests/sanitizer_stacktrace_test.cpp
Commit 54842fa0bba0c6cf69b7eb94f4b10d8da8aa5170 by JunMa
[CodeGenPrepare] Also skip lifetime.end intrinsic when check return block in dupRetToEnableTailCallOpts.

Differential Revision: https://reviews.llvm.org/D95424
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/test/Transforms/CodeGenPrepare/X86/tailcall-assume-xbb.ll
The file was modifiedllvm/test/Transforms/CodeGenPrepare/ARM/tailcall-dup.ll
Commit 20b1c1300c8f00d85e1292158f865c1bd0d1e12c by jyknight
Fix test in "CFG: Create scope for non-compound range-for body."

The constant 4 is sometimes printed as "4L", or "4LL", in CFG dump
output, depending on platform; accept all variants.

Ammends commit 8f670d5b6d8f39bf9bf1d142dacef3afaed6d70b.
The file was modifiedclang/test/Analysis/auto-obj-dtors-cfg-output.cpp
Commit e94a35a744b780fcbe18e8bc6a4f774191588d45 by michael.p.rice
[OpenMP] Fix comment and assertion strings (NFC).
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
Commit 6e58539659aea0ee621c7e267d825aa82d4e7e96 by Lang Hames
[JITLink] Add missing symbols for ELF ehframe testcase, re-enable on Windows.

This testcase was failing on windows due to missing definitions. This commit
adds definitions of the missing symbols (as absolute symbols) to eliminate the
errors.
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_ehframe_basic.s
Commit 44cc5abbf9166c47a1da7027123b13d230442610 by craig.topper
[RISCV] Custom lower fshl/fshr with Zbt extension.

We need to add a mask to the shift amount for these operations
to use the FSR/FSL instructions. We were previously doing this
in isel patterns, but custom lowering will make the mask
visible to optimizations earlier.
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoB.td
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
Commit d2bb07949b0e66a60f26a0a1fb6bcec609da5e63 by Lang Hames
Revert "[JITLink] Add missing symbols for ELF ehframe testcase, re-enable ...."

This reverts commit 6e58539659aea0ee621c7e267d825aa82d4e7e96.

This failed in http://lab.llvm.org:8011/#/builders/123/builds/2676. I guess
were're still missing some symbols, but unfortunately the specific error is
masked by a bug in python/lit that hides stderr. This test will have to remain
disabled on Windows until I can get help to debug it further.
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_ehframe_basic.s
Commit ff460268973533e8d39a7714223891d1b7c62d67 by craig.topper
[X86] Cleanup isel patterns to use 'vnot' instead of (xor X, immAllOnesV) to improve readability. NFC
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
Commit 94206f1f90fee1b92c49234a17cf8e1781179146 by craig.topper
[PowerPC] Remove vnot_ppc and replace with the standard vnot.

immAllOnesV has special support for looking through bitcasts
automatically so isel patterns don't need to explicitly look
for the bitconvert.
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrAltivec.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
Commit ce27b327158e6ae7b726b6d867b7db5117a90b73 by craig.topper
[Mips] Cleanup isel patterns to use 'vnot' instead of (xor X, immAllOnesV). NFCI

A couple patterns used bitconvert on the immAllOnesV, but
the isel matching uses ISD::isBuildVectorAllOnes which
is able to look through bitcasts. So isel patterns don't need
to do it explicitly.
The file was modifiedllvm/lib/Target/Mips/MipsMSAInstrInfo.td
Commit bf416d166bdde187cf3b7e99888bcb4b95a93142 by sepavloff
[FPEnv] Intrinsic for setting rounding mode

To set non-default rounding mode user usually calls function 'fesetround'
from standard C library. This way has some disadvantages.

* It creates unnecessary dependency on libc. On the other hand, setting
  rounding mode requires few instructions and could be made by compiler.
  Sometimes standard C library even is not available, like in the case of
  GPU or AI cores that execute small kernels.
* Compiler could generate more effective code if it knows that a particular
  call just sets rounding mode.

This change introduces new IR intrinsic, namely 'llvm.set.rounding', which
sets current rounding mode, similar to 'fesetround'. It however differs
from the latter, because it is a lower level facility:

* 'llvm.set.rounding' does not return any value, whereas 'fesetround'
  returns non-zero value in the case of failure. In glibc 'fesetround'
  reports failure if its argument is invalid or unsupported or if floating
  point operations are unavailable on the hardware. Compiler usually knows
  what core it generates code for and it can validate arguments in many
  cases.
* Rounding mode is specified in 'fesetround' using constants like
  'FE_TONEAREST', which are target dependent. It is inconvenient to work
  with such constants at IR level.

C standard provides a target-independent way to specify rounding mode, it
is used in FLT_ROUNDS, however it does not define standard way to set
rounding mode using this encoding.

This change implements only IR intrinsic. Lowering it to machine code is
target-specific and will be implemented latter. Mapping of 'fesetround'
to 'llvm.set.rounding' is also not implemented here.

Differential Revision: https://reviews.llvm.org/D74729
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/include/llvm/CodeGen/ISDOpcodes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
Commit 77f077b8c3b2e8bbf9b160d56194312e506dfe8f by craig.topper
[TableGen] Don't commute isel patterns if it would put an immAllOnesV or immAllZerosV on the left hand side.

This primarily occurs with isel patterns using vnot. This reduces
the number of variants in the isel tables.

We generally canonicalize build_vectors of constants to the RHS. I think
we might fail if there is a bitcast on the build_vector, but that
should be easy to fix if we can find a case. Usually the
bitcast is introduced by type legalization or lowering. It's
likely canonicalization would have already occured.
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
Commit c3c02d0d5a313272f6d35926bdf678fc6b884c02 by tobias
[OpenMP] Fix python3 compatibility in openmp's lit.cfg

Differential Revision: https://reviews.llvm.org/D95669
The file was modifiedopenmp/runtime/test/lit.cfg
Commit d9b953d84b332a8c4751fcbf8178e32818dc718b by hanchung
[mlir][Linalg] Replace SimplePad with PadTensor in hoist-padding

This is the last revision to migrate using SimplePadOp to PadTensorOp, and the
SimplePadOp is removed in the patch. Update a bit in SliceAnalysis because the
PadTensorOp takes a region different from SimplePadOp. This is not covered by
LinalgOp because it is not a structured op.

Also, remove a duplicated comment from cpp file, which is already described in a
header file. And update the pseudo-mlir in the comment.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D95671
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
The file was modifiedmlir/test/Dialect/Linalg/hoist-padding.mlir
The file was modifiedmlir/lib/Analysis/CMakeLists.txt
The file was modifiedmlir/lib/Analysis/SliceAnalysis.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h
The file was modifiedmlir/test/lib/Transforms/TestLinalgTransforms.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
Commit a4b7d52f3a219e7726edc8c3805c1d6dc7bd97a5 by csigg
[mlir] Fix missing null termination in cuLinkAddData argument.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D95679
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
Commit 2790cbedd0a886fa70c35efda40924679d1cbcd0 by tpopp
Revert "[mlir][Linalg] Replace SimplePad with PadTensor in hoist-padding"

This reverts commit d9b953d84b332a8c4751fcbf8178e32818dc718b.

This commit resulted in build bot failures and the author is away from a
computer, so I am reverting on their behalf until they have a chance to
look into this.
The file was modifiedmlir/lib/Analysis/SliceAnalysis.cpp
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
The file was modifiedmlir/lib/Analysis/CMakeLists.txt
The file was modifiedmlir/test/lib/Transforms/TestLinalgTransforms.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
The file was modifiedmlir/test/Dialect/Linalg/hoist-padding.mlir
Commit 2939d2e1b46c05432864db333ca3d5cb7ab83533 by Raphael Isemann
[lldb][docs] Attempt to disable the generated GitHub button on the LLDB website

For unknown reasons the alabaster theme on the docs server is always generating
a GitHub link in the side bar. Beside the privacy problems of having an iframe
to some third-party service, we never configured any GitHub integration so
this button just links to the GitHub main site.

The button generation should be disabled by default, but as that's apparently
not true in the alabaster theme on the server, this patch tries working around
the issue by just explicitly turning off the GitHub integration.
The file was modifiedlldb/docs/conf.py
Commit 80cdd30eb90c3509bf315f1fa1369483e2448bbd by jeroen.dobbelaere
[LoopPeel] Use llvm.experimental.noalias.scope.decl for duplicating noalias metadata as needed.

The reduction of a sanitizer build failure when enabling the dominance check (D95335) showed that loop peeling also needs to take care of scope duplication, just like loop unrolling (D92887).

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D95544
The file was modifiedllvm/lib/Transforms/Utils/LoopPeel.cpp
The file was addedllvm/test/Transforms/LoopUnroll/peel-loop-noalias-scope-decl.ll
Commit b8c81fa5c7f77a7a1267e42ddbbc9bffb10b0817 by flo
[LoopUnswitch] Add shortcut if unswitched path is a no-op.

If we determine that the invariant path through the loop has no effects,
we can directly branch to the exit block, instead to unswitching first.

Besides avoiding some extra work (unswitching first, then deleting the
loop again) this allows to be more aggressive than regular unswitching
with respect to cost-modeling. This approach should always be be
desirable.

This is similar in spirit to D93734, just that it uses the previously
added checks for loop-unswitching.

I tried to add the required no-op checks from scratch, as we only check
a subset of the loop. There is potential to unify the checks with
LoopDeletion, at the cost of adding a predicate whether a block should
be considered.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D95468
The file was modifiedllvm/test/Transforms/LoopUnswitch/partial-unswitch-cost.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnswitch.cpp
Commit a9583a19237e66fa56fcd979511ac14232e9a3c3 by flo
[LoopUnswitch] Pacify compiler warnings.

Attempt to fix some compiler warnings on some bots after
b8c81fa5c7f77a7a1267e42ddbbc9bffb10b0817.
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnswitch.cpp
Commit 4648098f97fa2a7c08c04632c70cf29293528812 by marukawa
[VE] Change inetger constants 32-bit friendly

Correct integer constants like `1UL << 63` to `UINT64_C(1) << 63` in
order to make them work on 32-bit machines.  Tested on both an i386
and x86_64 machines.

Reviewed By: mgorny

Differential Revision: https://reviews.llvm.org/D95724
The file was modifiedllvm/lib/Target/VE/VE.h
Commit 6ab792b68d5779e1668a2bd6ecd0a52c91b56387 by david.green
[ARM] Simplify extract of VMOVDRR

Under SoftFP calling conventions, we can be left with
extract(bitcast(BUILD_VECTOR(VMOVDRR(a, b), ..))) patterns that can
simplify to a or b, depending on the extract lane.

Differential Revision: https://reviews.llvm.org/D94990
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-soft-float-abi.ll
Commit 5211af48181fe1a1ac99aeacf15818c50bfbda7d by llvm-dev
[X86][AVX] combineExtractWithShuffle - combine extracts from 256/512-bit vector shuffles.

We can only legally extract from the lowest 128-bit subvector, so extract the correct subvector to allow us to handle 256/512-bit vector element extracts.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
Commit b43c395e60d2636ab5afc9b60a2046978c71e366 by jeroen.dobbelaere
[Verifier] enable llvm.experimental.noalias.scope.decl dominance check.

Now that Loop Peeling has been fixed (80cdd30eb90c3509bf315f1fa1369483e2448bbd),
enable the dominance check by default.

This reverts commit 3b5d36ece21f9baf96d82944b0165cb352443bee.
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit ad12e6ee9579149c0efb594211fa3fb8aed2d84f by david.green
[ARM] Turn sext_inreg(VGetLaneu) into VGetLaneu

This adds a DAG combine for converting sext_inreg of VGetLaneu into
VGetLanes, providing the types match correctly.

Differential Revision: https://reviews.llvm.org/D95073
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-div-expand.ll
The file was modifiedllvm/test/CodeGen/ARM/dagcombine-anyexttozeroext.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-add.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-addpred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vcvt.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-mlapred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-mla.ll
Commit 94fac81fccfef9917e94bed398781744fb82e159 by shivam98.tkg
[Branch-Rename] Fix some links

According to the [[ https://foundation.llvm.org/docs/branch-rename/ | status of branch rename ]], the master branch of the LLVM repository is removed on 28 Jan 2021.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D95766
The file was modifiedlibcxxabi/www/index.html
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedmlir/docs/Tutorials/UnderstandingTheIRStructure.md
The file was modifiedmlir/docs/OpDefinitions.md
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interface.h
The file was modifiedclang/www/analyzer/checker_dev_manual.html
The file was modifiedclang/www/menu.html.incl
The file was modifiedclang/docs/LibTooling.rst
The file was modifiedclang-tools-extra/docs/clang-rename.rst
The file was modifiedclang/docs/InternalsManual.rst
The file was modifiedclang/docs/ControlFlowIntegrityDesign.rst
The file was modifiedclang-tools-extra/clangd/README.md
The file was modifiedlibcxx/www/atomic_design_c.html
The file was modifiedmlir/docs/ShapeInference.md
The file was modifiedclang/www/analyzer/open_projects.html
The file was modifiedopenmp/www/index.html
The file was modifiedlibcxx/www/atomic_design_b.html
The file was modifiedlibcxx/www/upcoming_meeting.html
The file was modifiedcompiler-rt/include/sanitizer/tsan_interface_atomic.h
The file was modifiedmlir/docs/Dialects/Vector.md
The file was modifiedlldb/docs/resources/test.rst
The file was modifiedclang/docs/ClangPlugins.rst
The file was modifiedlibcxx/docs/index.rst
The file was modifiedmlir/docs/Dialects/SPIR-V.md
The file was modifiedflang/docs/flang-c-style.el
The file was modifiedlibcxx/www/atomic_design_a.html
The file was modifiedlldb/docs/use/python-reference.rst
The file was modifiedlibcxx/www/index.html
The file was modifiedlibcxx/www/type_traits_design.html
The file was modifiedflang/README.md
The file was modifiedclang/docs/ClangTools.rst
The file was modifiedlibcxx/www/atomic_design.html
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.h
The file was modifiedpolly/www/menu.html.incl
The file was modifiedmlir/docs/Rationale/RationaleGenericDAGRewriter.md
The file was modifiedllvm/utils/lit/setup.py
The file was modifiedcompiler-rt/www/menu.html.incl
The file was modifiedlibcxx/www/ts1z_status.html
The file was modifiedmlir/docs/SPIRVToLLVMDialectConversion.md
The file was modifiedclang-tools-extra/docs/clang-tidy/Contributing.rst
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/matmul.ll
The file was modifiedlibunwind/docs/index.rst
The file was modifiedmlir/docs/PatternRewriter.md
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedclang-tools-extra/docs/clang-tidy/Integrations.rst
The file was modifiedmlir/docs/DeclarativeRewrites.md
The file was modifiedllvm/docs/Vectorizers.rst
The file was modifiedclang/www/hacking.html
The file was modifiedflang/docs/_templates/indexsidebar.html
The file was modifiedlldb/docs/resources/build.rst
Commit b8923c002207da449ec462ade468e27a651b1f91 by medismail.bennani
[lldb/API] Expose Module::IsLoadedInTarget() to SB API (NFC)

This patch adds an `SBTarget::IsLoaded(const SBModule&) const` endpoint
to lldb's Scripting Bridge API. As the name suggests, it will allow the
user to know if the module is loaded in a specific target.

rdar://37957625

Differential Review: https://reviews.llvm.org/D95686

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedlldb/source/API/SBTarget.cpp
The file was modifiedlldb/include/lldb/API/SBTarget.h
The file was modifiedlldb/test/API/python_api/target/TestTargetAPI.py
The file was modifiedlldb/bindings/interface/SBTarget.i
Commit 99b5631649e09970769562abb05475b79eb44e3c by dmitry.preobrazhensky
[AMDGPU][MC] Corrected error position for invalid operands

Generic parser may report an incorrect error position when an offending operand is followed by a comma.
See bug 48884 for details: https://bugs.llvm.org/show_bug.cgi?id=48884.

Differential Revision: https://reviews.llvm.org/D95674
The file was modifiedllvm/test/MC/AMDGPU/gfx10_err_pos.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Commit 11e74e512d64ae2a2531156b6f0dde211b1ae19d by martin
[lldb] Remove a stray semicolon, fixing GCC warnings. NFC.
The file was modifiedlldb/tools/lldb-vscode/FifoFiles.cpp
Commit eefa8a9ff859153c510e740b33a9e721e42b88c5 by Jan Svoboda
Revert "[clang][cli] Port OpenMP-related LangOpts to marshalling system"

This reverts commit 9ad94c12

It turns out that to correctly generate command line flags for LangOptions::OpenMP and LangOptions::OpenMPSimd, we need the flexibility of C++.
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 754ab803b8dc659e3645d369d1b5d6d2f97be29e by Raphael Isemann
[lldb] Use current execution context in SBDebugger

Use `GetSelectedExecutionContext()` instead of
`GetCommandInterpreter().GetExecutionContext()` in
`SBDebugger::GetInternalVariableValue/SBDebugger::SetInternalVariable`. The
execution context in the command interpreter might be empty, if no commands has
been executed yet (it is updated only when handling commands or completions --
e.g.
https://github.com/llvm/llvm-project/blob/main/lldb/source/Interpreter/CommandInterpreter.cpp#L1855).

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D95761
The file was modifiedlldb/test/API/python_api/debugger/TestDebuggerAPI.py
The file was modifiedlldb/source/API/SBDebugger.cpp
Commit 3b8a1d581e6e1623d046b8b8da577ec4d42a544c by sander.desmalen
NFC: Migrate SpeculativeExecution to work on InstructionCost

This patch migrates cost values and arithmetic to work on InstructionCost.
When the interfaces to TargetTransformInfo are changed, any InstructionCost
state will propagate naturally.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Reviewed By: david-arm

Differential Revision: https://reviews.llvm.org/D95356
The file was modifiedllvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
Commit 8cda227432f1c9ceb63b88802ed8136da97274f1 by cullen.rhodes
[LV] Fix crash when computing max VF too early

D90687 introduced a crash:

  llvm::LoopVectorizationCostModel::computeMaxVF(llvm::ElementCount, unsigned int):
    Assertion `WideningDecisions.empty() && Uniforms.empty() && Scalars.empty() &&
    "No decisions should have been taken at this point"' failed.

when compiling the following C code:

  typedef struct {
  char a;
  } b;

  b *c;
  int d, e;

  int f() {
    int g = 0;
    for (; d; d++) {
      e = 0;
      for (; e < c[d].a; e++)
        g++;
    }
    return g;
  }

with:

  clang -Os -target hexagon -mhvx -fvectorize -mv67 testcase.c -S -o -

This occurred since prior to D90687 computeFeasibleMaxVF would only be
called in computeMaxVF when a scalar epilogue was allowed, but now it's
always called. This causes the assert above since computeFeasibleMaxVF
collects all viable VFs larger than the default MaxVF, and for each VF
calculates the register usage which results in analysis being done the
assert above guards against. This can occur in computeFeasibleMaxVF if
TTI.shouldMaximizeVectorBandwidth and this target hook is implemented in
the hexagon backend to always return true.

Reported by @iajbar.

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D94869
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was addedllvm/test/Transforms/LoopVectorize/Hexagon/maximum-vf-crash.ll
Commit c2b322fc19e829162ed4c7dcd04d9e9b2cd4e66c by Tim Northover
GlobalISel: check type size before getZExtValue()ing it.

Otherwise getZExtValue() asserts.
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/huge-switch.ll
Commit ee562e2315cfe339fdcb0cb9b2122284bbeda29b by medismail.bennani
[lldb/test] Skip `SBTarget::IsLoaded` test on windows (NFC)

This patch skips the test for the SBTarget::IsLoaded method on windows
since the logic is different.

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

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedlldb/test/API/python_api/target/TestTargetAPI.py
Commit 972212d29c3ad0569afb9dbed38a6cab7311db3e by flo
[ConstraintElimination] Add tests for signed predicates.

Add test coverage for conditions with signed predicates.
The file was addedllvm/test/Transforms/ConstraintElimination/sge.ll
The file was addedllvm/test/Transforms/ConstraintElimination/mixed-signed-unsigned-predicates.ll
Commit 2556b413a7b802703290ecf318712941dec6d745 by jeroen.dobbelaere
Revert "[Verifier] enable llvm.experimental.noalias.scope.decl dominance check."

the 'clang-with-lto-ubuntu' buildbot triggers the assertion.

This reverts commit b43c395e60d2636ab5afc9b60a2046978c71e366.
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit f1e8136115ac86a633f670cd4d50cf41b71418d8 by flo
[SCEV] Bail out if URem operand cannot be zero-extended.

In some cases, LHS is larger than the target expression type. Bail out
in that case for now, to avoid crashing
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
Commit 9b4fcfaa9e8f19f250c45e92dd2e5a305156b701 by kerry.mclaughlin
[SVE][CodeGen] Remove performMaskedGatherScatterCombine

The AArch64 DAG combine added by D90945 & D91433 extends the index
of a scalable masked gather or scatter to i32 if necessary.

This patch removes the combine and instead adds shouldExtendGSIndex, which
is used by visitMaskedGather/Scatter in SelectionDAGBuilder to query whether
the index should be extended before calling getMaskedGather/Scatter.

Reviewed By: david-arm

Differential Revision: https://reviews.llvm.org/D94525
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Commit b63cd4db915c08e0cb4cf668a18de24b67f2c44c by sam.mccall
[clangd] Rename: merge index/AST refs path-insensitively where needed

If you have c:\foo open, and C:\foo indexed (case difference) then these
need to be considered the same file. Otherwise we emit edits to both,
and editors do... something that isn't pretty.

Maybe more centralized normalization is called for, but it's not trivial
to do this while also being case-preserving. see
https://github.com/clangd/clangd/issues/108

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

Differential Revision: https://reviews.llvm.org/D95759
The file was addedclang-tools-extra/clangd/support/Path.cpp
The file was modifiedclang-tools-extra/clangd/GlobalCompilationDatabase.cpp
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
The file was modifiedclang-tools-extra/clangd/support/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/support/Path.h
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
Commit 313a36130f2ab7d2a442820e86009d2834fbe6db by llvmgnsyncbot
[gn build] Port b63cd4db915c
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/support/BUILD.gn
Commit 78c22fbce991bb5ef49db36473b71fc4386e1e85 by hokein.wu
[clangd] Don't rely on builtin headers for document-link.test.

This test seems to be failing at HEAD.

Reviewed By: kadircet, sammccall

Differential Revision: https://reviews.llvm.org/D95670
The file was modifiedclang-tools-extra/clangd/test/document-link.test
Commit c448ea948c28878735fefec734d8326ca2e4b33a by Louis Dionne
[libc++] Fix for the Bug 41784

Add deleted volatile copy-assignment operator in the most derived atomic
to fix the Bug 41784. The root cause: there is an `operator=(T) volatile`
that has better match than the deleted copy-assignment operator of the base
class when `this` is `volatile`. The compiler sees that right operand of
the assignment operator can be converted to `T` and chooses that path
without taking into account the deleted copy-assignment operator of the
base class.

The current behavior on libstdc++ is different from what we have in libc++.
On the same test compilation fails with libstdc++. Proof: https://godbolt.org/z/nebPYd
(everything is the same except the -stdlib option).

I choose the way with explicit definition of copy-assignment for atomic
in the most derived class. But probably we can fix that by moving
`operator=(T)` overloads to the base class from both specializations.
At first glance, it shouldn't break anything.

Differential Revision: https://reviews.llvm.org/D90968
The file was addedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/copy.assign.ptr.volatile.verify.cpp
The file was addedlibcxx/test/std/atomics/atomics.types.generic/copy_semantics_traits.pass.cpp
The file was modifiedlibcxx/include/atomic
The file was addedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/copy.assign.volatile.verify.cpp
Commit ce587529ad8b5347fa8896e6811469c1857ed1a2 by llvm-dev
[APFloat] multiplySignificand - pass IEEEFloat as const reference. NFCI.

Avoids unnecessary IEEEFloat copies.
The file was modifiedllvm/include/llvm/ADT/APFloat.h
The file was modifiedllvm/lib/Support/APFloat.cpp
Commit 267b573b55f7f43aaeaf4860e31101cd6a3dbba0 by paul
[TableGen] Fix anonymous record self-reference in foreach and multiclass

If we instantiate self-referenced anonymous records in foreach and
multiclass, the NAME value will point to incorrect record. It's because
anonymous name is resolved too early.

This patch adds AnonymousNameInit to represent an anonymous record name.
When instantiating an anonymous record, it will update the referred name.

Differential Revision: https://reviews.llvm.org/D95309
The file was modifiedllvm/lib/TableGen/Record.cpp
The file was modifiedllvm/lib/TableGen/TGParser.cpp
The file was modifiedllvm/test/TableGen/self-reference.td
The file was modifiedllvm/include/llvm/TableGen/Record.h
Commit ff4832dbff0ccf1fd29f726efe72fd1220cd645a by sam.mccall
[clangd] Respect ReferencesParams.context.includeDeclarations

Unfortunately this treats overrides declarations as declarations, not as
references. I don't plan to land this until I have a fix for that issue.

Differential Revision: https://reviews.llvm.org/D95450
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/test/references.test
The file was modifiedclang-tools-extra/clangd/Protocol.cpp
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/Protocol.h
The file was modifiedclang-tools-extra/clangd/XRefs.h
The file was modifiedclang-tools-extra/clangd/unittests/PreambleTests.cpp
Commit 5805521207852b859090c274a69fd51618b68b69 by david.green
[ARM] Simplify VMOVRRD from extracts of buildvectors

Under the softfp calling convention, we are often left with
VMOVRRD(extract(bitcast(build_vector(a, b, c, d)))) for the return value
of the function. These can be simplified to a,b or c,d directly,
depending on the value of the extract.

Big endian is a little different because the bitcast switches the lanes
around, meaning we end up with b,a or d,c.

Differential Revision: https://reviews.llvm.org/D94989
The file was modifiedllvm/test/CodeGen/Thumb2/mve-soft-float-abi.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/ARM/func-argpassing-endian.ll
The file was modifiedllvm/test/CodeGen/ARM/vcvt.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vcreate.ll
Commit 880b64aa228fdc0152b8bb9e88e4ff83f5d0e43a by sander.desmalen
[SimplifyCFG] NFC: Rename static methods to clang-tidy standards.

This patch is a precursor to D95351, which changes the signature
of these methods.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit bf294953e77089c314e431a7eb238cb353aa44d5 by sander.desmalen
NFC: Migrate SimplifyCFG to work on InstructionCost

This patch migrates cost values and arithmetic to work on InstructionCost.
When the interfaces to TargetTransformInfo are changed, any InstructionCost
state will propagate naturally.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D95351
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit 657e76968822f6fbfc06826e2af88806025e32cb by llvm-dev
Revert rGce587529ad8b5 - "[APFloat] multiplySignificand - pass IEEEFloat as const reference. NFCI."

Breaks on some buildbots
The file was modifiedllvm/include/llvm/ADT/APFloat.h
The file was modifiedllvm/lib/Support/APFloat.cpp
Commit 8712df7a621d1d00a3fd4641ef72639a8faa6284 by sam.mccall
[clangd] references: decls of overrides of x are refs to x, not decls

This requires a second index query for refs to overrides, as the refs
call doesn't tell you which ref points at which symbol.

Differential Revision: https://reviews.llvm.org/D95451
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/index/Index.h
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
Commit fda48539988d2a1bdb6395799151e9090312a20b by huberjn
[OpenMP] Fix seg fault in libomptarget when using Info with multiple threads

Summary:
One option for the LIBOMPTARGET_INFO environment variable is to print the current status of the device's data mappings. These are a shared resource among threads so this needs to be protected when using multiple streams.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D95786
The file was modifiedopenmp/libomptarget/src/interface.cpp
The file was modifiedopenmp/libomptarget/src/private.h
Commit 1eb7fd089e2fcf3fe211f865b28e2fed12128c3f by sam.mccall
[clangd] Remove some obsolete options that are now always on

- always collect main-file refs when indexing
- always build preambles asynchronously
- always use dex for fast preamble index

Retire associated flags

Differential Revision: https://reviews.llvm.org/D95571
The file was modifiedclang-tools-extra/clangd/index/FileIndex.h
The file was modifiedclang-tools-extra/clangd/TUScheduler.h
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
The file was modifiedclang-tools-extra/clangd/index/Background.h
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/index/Background.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/index/FileIndex.cpp
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
Commit 5f3c4923e4e4d5f40a64e08e407067ff551f2901 by erik.pilkington
[compiler-rt] Fix AArch64 out-of-line atomics visibility on mach-o

This fixes an apparent oversight in D91156, where the symbol was defined
without the leading underscore, then the visibility was later declared with it.
rdar://73364185

Differential revision: https://reviews.llvm.org/D95639
The file was modifiedcompiler-rt/lib/builtins/assembly.h
Commit 0397dca0214ab50de41ac6c3d432aab93ff75c60 by Austin.Kerbow
[AMDGPU] Fix crash with sgpr spills to vgpr disabled

This would assert with amdgpu-spill-sgpr-to-vgpr disabled when trying to
spill the FP.

Fixes: SWDEV-262704

Reviewed By: RamNalamothu

Differential Revision: https://reviews.llvm.org/D95768
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was addedllvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
Commit e068e236c3b8e5ad4527bd9407cc9900359c3eec by Austin.Kerbow
[AMDGPU] Fix release build after 0397dca0.
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
Commit f0ffc690d5bcb3d8c373cbe63ac9a2a3a10deee8 by pklausler
[flang] Fix parsing of WRITE(I+J) with more accurate look-ahead

The parsing of I/O units uses look-ahead to discriminate between
keywords, variables and expressions as part of distinguishing internal
from external I/O.  The look-ahead was inaccurate for variables that
appear as the initial parts of expressions.

Differential Revision: https://reviews.llvm.org/D95743
The file was modifiedflang/lib/Parser/io-parsers.cpp
The file was modifiedflang/lib/Parser/Fortran-parsers.cpp
Commit ce190e41445eb52e560ac70dd1df74717a1e80d2 by flo
[ConstraintElimination] Negate IR condition directly.

Instead of using ConstraintSystem::negate when adding new constraints,
flip the condition in IR.

The main advantage is that EQ predicates can be represented by 2
constraints, which makes negating based on the constraint tricky. The IR
condition can easily negated.
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Commit 1097ee61bf3ef4f36a7e92b4d8781a5c069c93de by craig.topper
[RISCV] Optimize (srl (and X, 0xffff), C) -> (srli (slli X, 16), 16 + C).

Rather than materializing the 0xffff immediate for the AND, use
a shift left to remove the upper bits and then shift in zeros
from the right.

This pattern occurs when type legalizing an i16 right shift.

I've implemented this with custom selection code for a number of
reasons. I've limited this to the AND having a single use. We need
to compensate for SimplifyDemandedBits altering the AND mask. I'm
using *W opcodes on RV64. We may want to generlize this in the
future. For all these reason it seemed easiest to do it this way.

Reviewed By: luismarques

Differential Revision: https://reviews.llvm.org/D95774
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/RISCV/alu16.ll
The file was modifiedllvm/test/CodeGen/RISCV/bswap-ctlz-cttz-ctpop.ll
Commit 4809663334ab84fc0e3f4ed11477d6873e642824 by Jessica Paquette
[GlobalISel] Make sure G_ASSERT_ZEXT's src ends up with the same rc as dst

When replacing the dst reg with the src reg, we need to make sure that we
propagate the dst reg's register class through to the src.

Otherwise, we aren't meeting the requirements for G_ASSERT_ZEXT, and so the
verifier will fail.

Differential Revision: https://reviews.llvm.org/D95708
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-hint.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
Commit 6a3ab66625cf1d440e66d9f438f05ee5ed040672 by craig.topper
[RISCV] Update comment text from D95774. NFC
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Commit 72b31ad4b8c1463dcdfed636be0abb8e9050c16f by craig.topper
[RISCV] Add scalable vector support for floating point FMA instructions

A follow up patch will add support for commuting operands or
changing opcode to vfmacc and friends.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D95662
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmsub-sdnode.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfnmsub-sdnode.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfnmadd-sdnode.ll
Commit 7f2e0879b5b45815207a986eac2d614649aea526 by tejohnson
[LTO] Move part of gold devirt test to v1.16 directory

Part of the gold test added in 1487747e990ce9f8851f3d92c3006a74134d7518
relies on more recent fixes to gold that fix the plugin behavior with
--export-dynamic-symbol and --dynamic-list. Extract those parts of the
new test into a v1.16 test.
The file was modifiedllvm/test/tools/gold/X86/devirt_vcall_vis_export_dynamic.ll
The file was addedllvm/test/tools/gold/X86/v1.16/devirt_vcall_vis_export_dynamic.ll
Commit cf2be5e3bb3dae347af41ab6117f3e9b250cc8c3 by Jessica Paquette
[AArch64][GlobalISel] Emit G_ASSERT_ZEXT in assignValueToReg

When we have a zeroext parameter, emit G_ASSERT_ZEXT.

Add a check that we actually emit it.

This is a 0.1% code size win on CTMark/7zip and CTMark/consumer-typeset at -Os.

Differential Revision: https://reviews.llvm.org/D95567
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/call-lowering-zeroext.ll
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
Commit 3ffc53ba16272b6475ff49c05ab6aa72f7720383 by koraq
[libc++] Implements concept default_initializable.

Implements:
- LWG3149 DefaultConstructible should require default initialization

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

Depends on D91986

Reviewed By: ldionne, #libc

Differential Revision: https://reviews.llvm.org/D93461
The file was modifiedlibcxx/include/concepts
The file was addedlibcxx/test/std/concepts/concept.default.init/default_initializable.compile.pass.cpp
The file was modifiedlibcxx/docs/Cxx2aStatusIssuesStatus.csv
The file was addedlibcxx/test/std/concepts/concept.default.init/default_initializable.verify.cpp
Commit f0129cc35ebd4607c86f1f90cb664c86ffdb4a5c by tianshilei1992
[OpenMP] Disable tests if FileCheck is not available in in-tree building

FileCheck is required for OpenMP tests. The current detection can fail
if building OpenMP in-tree when user sets `LLVM_INSTALL_TOOLCHAIN_ONLY=ON`. As a
result, CMake will raise an error and the compilation will be broken. This patch
fixed the issue. When `FileCheck` is not a target, tests will just be skipped.

Reviewed By: jdoerfert, JonChesterfield

Differential Revision: https://reviews.llvm.org/D95689
The file was modifiedopenmp/cmake/OpenMPTesting.cmake
Commit e640b209b24a9bf66f5998b5fafa76f0dbb388ab by llvm-dev
[X86][SSE] LowerScalarImmediateShift - use APInt::getLowBitsSet for vXi8 ISD::SRL mask generation. NFCI.

Match what we do for ISD::SHL
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e9514429a02b1e4f8b9d54b28a934bfa9bd246ec by llvm-dev
[X86][AVX] Add 'OK' tests cases for PR48877
The file was addedllvm/test/MC/Disassembler/X86/x86-64-avx2.txt
The file was addedllvm/test/MC/Disassembler/X86/x86-64-avx.txt
Commit 3f46c209f1527530ca8e60a51d08e32e886fa11b by clementval
[flang][directive] Enforce basic semantic check for all clauses

This patch is a follow up to D94821 to ensure the correct behavior of the
general directive structure checker.
This patch add the generation of the Enter function declaration for clauses in
the TableGen backend.
This helps to ensure each clauses declared in the TableGen file has at least
a basic check.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D95108
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedllvm/utils/TableGen/DirectiveEmitter.cpp
The file was modifiedflang/lib/Semantics/check-acc-structure.cpp
The file was modifiedflang/lib/Semantics/check-acc-structure.h
Commit c4d6f2707a1e6c4e9bd93480dd913121fef122b7 by mtrofin
[NFC] Disallow unused prefixes under clang/test/Driver

Differential Revision: https://reviews.llvm.org/D95660
The file was modifiedclang/test/Driver/ps4-visibility-dllstorageclass.c
The file was modifiedclang/test/Driver/lit.local.cfg
The file was modifiedclang/test/Driver/rocm-device-libs.cl
The file was modifiedclang/test/Driver/amdgpu-macros.cl
The file was modifiedclang/test/Driver/cuda-detect.cu
The file was modifiedclang/test/Driver/fsanitize.c
Commit cb2e2d506814dc3c06449a87aec180b29f4351d7 by michaelrj
[libc] Small adjustments to fenv tests

Some libcs define non-standard FE_* macros and include them in
FE_ALL_EXCEPT. This change adjusts the fenv tests so that the
non-standard FE_* macros do not interfere when compiled with
fenv.h from another libc.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D95650
The file was modifiedlibc/test/src/fenv/exception_status_test.cpp
The file was modifiedlibc/test/src/fenv/enabled_exceptions_test.cpp
Commit d23b68a8798913bda65db109e57029139197c587 by spatel
[InstCombine] add tests for min/max with extend and constant operand; NFC
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit 0ce2920f1707266c0d94dacc8719251b7b6a2c01 by spatel
[InstCombine] try to narrow min/max intrinsics with constant operand

The constant trunc/ext may not be the optimal pre-condition,
but I think that handles the common cases.

Example of Alive2 proof:
https://alive2.llvm.org/ce/z/sREeLC

This is another step towards canonicalizing to the intrinsics.
Narrowing was identified as source of potential regression for
abs(), so we need to handle this for min/max - see:
https://llvm.org/PR48816

If this is not enough, we could process intrinsics in
the trunc-driven matching in canEvaluateTruncated().
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit 08d46d50599a7005380e1a9eebb276ceb2b0ad93 by melanie.blower
[clang][PATCH] Fix bug 48848 assertion related to recoverFromMSUnqualifiedLookup

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D95482
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/test/SemaCXX/lambda-expressions.cpp
Commit 771b35965457ebd5faaed8a1c3d2bcefffe721a3 by haowei
[elfabi] Fix tests which failed on different timezones

This patch fixes elfabi tests on machines using a GMT+X timezone
settings.

Differential Revision: https://reviews.llvm.org/D95641
The file was modifiedllvm/test/tools/llvm-elfabi/preserve-dates-tbe.test
The file was modifiedllvm/test/tools/llvm-elfabi/preserve-dates-stub.test
Commit c691fe14da93a7c9eff466231515d6d4d16124fa by craig.topper
[X86] Accept 64-bit GPRs for vextractps when using a register that requires EVEX.

This is consistent with the VEX version. It also fixes a sorting
issue in the matching table that caused the EVEX version to be
prioritized over VEX in intel syntax.

Fixes issue [2] from PR48991.
The file was modifiedllvm/test/MC/X86/intel-syntax-x86-64-avx.s
The file was modifiedllvm/test/MC/X86/intel-syntax-x86-64-avx512f_vl.s
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
Commit 7739f9ff974a2b301f5b036de55820b19a0df19a by aeubanks
[NewPM][Unswitch] Add option to disable -O3 non-trivial unswitching

Some benchmarks regress with non-trivial unswitching, so add an option
to opt-out of performing non-trivial unswitching while investigating.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D95796
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/pipeline.ll
Commit 5b2626ea87f48eab011b616a96540b9e83c7ca88 by david.green
[ARM] Flatten identity shuffles through vqdmulh nodes

Given a shuffle(vqdmulh(shuffle, shuffle), we can flatter the shuffles
out if they become an identity mask. This can come up during lane
interleaving, when we do that better.

Differential Revision: https://reviews.llvm.org/D94034
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vqdmulh.ll
Commit c73c23f2a91f5a454d782da9918e2160cfe66087 by michaelrj
[libc][NFC] Add a death test API adaptation macro

Fuchsia's zxtest has a slightly different death test definition, and
this macro makes our death test API work on Fuchsia.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D95648
The file was modifiedlibc/test/src/signal/sigprocmask_test.cpp
The file was modifiedlibc/utils/UnitTest/FuchsiaTest.h
The file was modifiedlibc/test/src/signal/raise_test.cpp
The file was modifiedlibc/test/src/signal/sigaction_test.cpp
The file was modifiedlibc/test/src/fenv/enabled_exceptions_test.cpp
The file was modifiedlibc/test/src/signal/sigdelset_test.cpp
The file was modifiedlibc/test/src/assert/assert_test.cpp
The file was modifiedlibc/test/src/stdlib/abort_test.cpp
The file was modifiedlibc/utils/UnitTest/LibcTest.h
Commit 35a57f39b5d126646335183f1ff0f7adb52d63bc by koraq
[libc++][format] Add basic_format_parse_context.

Implements parts of:
- P0645 Text Formatting

Depends on D92214

Reviewed By: ldionne, curdeius, #libc

Differential Revision: https://reviews.llvm.org/D93166
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.pass.cpp
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.pass.cpp
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/begin.pass.cpp
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/types.compile.pass.cpp
The file was modifiedlibcxx/include/format
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/advance_to.pass.cpp
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/ctor.pass.cpp
The file was addedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/end.pass.cpp
Commit 8bfef787225c14a67db23254b82b330e85d1c35c by rnk
[ConstantHoisting] Fix bug where constant materialization could insert into EH pad

If the incoming block to a phi node is an EH pad, then we will
materialize into an EH pad, which is not supposed to happen. To fix
this, I added a check to see if incoming block of a phi node is an EH
pad before using it as the insertion point.

Differential Revision: https://reviews.llvm.org/D95019
The file was addedllvm/test/Transforms/ConstantHoisting/X86/ehphi.ll
The file was modifiedllvm/lib/Transforms/Scalar/ConstantHoisting.cpp
Commit 0d9b17d0efe065f23b7f1c1f8f2b2b32491abd45 by aardappel
[WebAssembly] fixed wasm64 data segment init exp not 64-bit

As defined in the spec:
https://github.com/WebAssembly/memory64/blob/master/proposals/memory64/Overview.md

Differential Revision: https://reviews.llvm.org/D95651
The file was modifiedllvm/test/MC/WebAssembly/data-section.s
The file was modifiedlld/test/wasm/data-segments.ll
The file was modifiedlld/wasm/OutputSections.cpp
The file was modifiedlld/test/wasm/data-layout.ll
The file was modifiedllvm/test/MC/WebAssembly/wasm64.s
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
Commit b3f611bfe7d4aac7b1393ab0200d7166a590791b by hanchung
[mlir][Linalg] Replace SimplePad with PadTensor in hoist-padding

This is the last revision to migrate using SimplePadOp to PadTensorOp, and the
SimplePadOp is removed in the patch. Update a bit in SliceAnalysis because the
PadTensorOp takes a region different from SimplePadOp. This is not covered by
LinalgOp because it is not a structured op.

Also, remove a duplicated comment from cpp file, which is already described in a
header file. And update the pseudo-mlir in the comment.

This is as same as D95615 but fixing one dep in CMakeLists.txt

Different from D95671, the fix was applied to run target.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D95785
The file was modifiedmlir/test/Dialect/Linalg/hoist-padding.mlir
The file was modifiedmlir/lib/Analysis/SliceAnalysis.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgTransforms.cpp
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
The file was modifiedmlir/lib/Analysis/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
Commit 2a53d9a6e7736fe141cd6365be05d972ff6f0065 by listmail
[Loads] Plumb through TLI argument [NFC]

This is a (rather delayed) follow up to commit 0129cd5.  This commit is entirely NFC, the semantic change to leverage the new information will be submitted separate with a test case.
The file was modifiedllvm/lib/Analysis/Loads.cpp
The file was modifiedllvm/include/llvm/Analysis/Loads.h
Commit d7b12004bd7d6d9a592f1773101cbedd9daf8492 by Andrey.Churbanov
[OpenMP] libomp: implement nteams-var and teams-thread-limit-var ICVs

The change includes OMP_NUM_TEAMS, OMP_TEAMS_THREAD_LIMIT env variables,
omp_set_num_teams, omp_get_max_teams, omp_set_teams_thread_limit,
omp_get_teams_thread_limit routines.

Differential Revision: https://reviews.llvm.org/D95003
The file was modifiedopenmp/runtime/src/include/omp.h.var
The file was addedopenmp/runtime/test/api/omp_nteams_api_env2.c
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/src/kmp_global.cpp
The file was addedopenmp/runtime/test/api/omp_nteams_api.c
The file was modifiedopenmp/runtime/src/include/omp_lib.f90.var
The file was modifiedopenmp/runtime/src/kmp_settings.cpp
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/kmp_ftn_entry.h
The file was modifiedopenmp/runtime/src/dllexports
The file was addedopenmp/runtime/test/api/omp_nteams_api_env.c
The file was modifiedopenmp/runtime/src/include/omp_lib.h.var
The file was modifiedopenmp/runtime/src/kmp_ftn_os.h
Commit 21f1462106b9ee1e646bf409c85528828320b34e by antiagainst
[mlir][spirv] Add support for OpImageType

Support OpImageType in SPIRV Dialect.

This change doesn't support operand AccessQualifier since
it is optinal and only enables under Kernel capability.

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

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D95580
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.h
The file was addedmlir/test/Target/SPIRV/image.mlir
The file was modifiedmlir/lib/Target/SPIRV/Serialization/Serialization.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
Commit 75347ba1fae25819a086fc29ad52d813419887a8 by antiagainst
Revert "[mlir][spirv] Add support for OpImageType"

This reverts commit 21f1462106b9ee1e646bf409c85528828320b34e.
The file was removedmlir/test/Target/SPIRV/image.mlir
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.h
The file was modifiedmlir/lib/Target/SPIRV/Serialization/Serialization.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
Commit 0b28d756af183b9f294ddca5432a0ad5054ac9c2 by flo
[ConstraintElimination] Add support for EQ predicates.

A == B map to A >= B && A <= B
(https://alive2.llvm.org/ce/z/_dwxKn).

This extends the constraint construction to return a list of
constraints, which can be used to properly de-compose nested AND & OR.
The file was modifiedllvm/test/Transforms/ConstraintElimination/eq.ll
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Commit 32ef6d89f48be765330ee5d15cf57a1f01c9b335 by joker.eph
Avoid string comparisons on the fast path of MLIR Identifier lookup (NFC)

Differential Revision: https://reviews.llvm.org/D95770
The file was modifiedmlir/lib/IR/MLIRContext.cpp
Commit 68f66f37d7d74be7beba56506c4397dadc8538dd by joker.eph
Revert "[libc++][format] Add basic_format_parse_context."

This reverts commit 35a57f39b5d126646335183f1ff0f7adb52d63bc.

A build is broken during clang bootstrap with:

In file included from ../libcxx/src/format.cpp:9:
/tmp/ci-nGNyLRM9V3/include/c++/v1/format:153:16: error: no member named 'is_constant_evaluated' in namespace 'std::__1'
    if (_VSTD::is_constant_evaluated() && __id >= __num_args_)
        ~~~~~~~^
1 error generated.
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.pass.cpp
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/ctor.pass.cpp
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/types.compile.pass.cpp
The file was modifiedlibcxx/include/format
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/begin.pass.cpp
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/advance_to.pass.cpp
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/end.pass.cpp
The file was removedlibcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.pass.cpp
Commit bbed5f2f8a04ae3a49f5e8f900c117f405101424 by spatel
[LoopVectorize] improve IR fast-math-flags propagation in reductions

This is another step (see D95452) towards correcting fast-math-flags
bugs in vector reductions.

There are multiple bugs visible in the test diffs, and this is still
not working as it should. We still use function attributes (rather
than FMF) to drive part of the logic, but we are not checking for
the correct FP function attributes.

Note that FMF may not be propagated optimally on selects (example
in https://llvm.org/PR35607 ). That's why I'm proposing to union the
FMF of a fcmp+select pair and avoid regressions on existing vectorizer
tests.

Differential Revision: https://reviews.llvm.org/D95690
The file was modifiedllvm/lib/Analysis/IVDescriptors.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/include/llvm/IR/Operator.h
The file was modifiedllvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
The file was modifiedllvm/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
Commit 68b0595ccb8de1b0a9459f958dda17164341ee87 by steveire
NFC: Re-generate out-of-date matchers docs
The file was modifiedclang/docs/LibASTMatchersReference.html
Commit 73ef96c49c293e09f50bba60eff9d143db41864d by listmail
[tests] highlight cornercase w/deref hoisting from D95815

The main point of committing this early is to have a negative test in tree.  Nothing fails in the current tests if we implement this (currently unsound) optimization.
The file was addedllvm/test/Transforms/LICM/hoist-alloc.ll
Commit 35f746c17fd0315b235050c0a350fc521f944f20 by antiagainst
[mlir][spirv] Add support for OpImageType

Support OpImageType in SPIRV Dialect.

This change doesn't support operand AccessQualifier since
it is optinal and only enables under Kernel capability.

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

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D95580
The file was modifiedmlir/lib/Target/SPIRV/Serialization/Serialization.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.h
The file was addedmlir/test/Target/SPIRV/image.mlir
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
The file was modifiedmlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
Commit 772eb24e00629faaae0244aa0d6d6204542c579b by bjoern
[clang-format] Add option to control the spaces in a line comment

Differential Revision: https://reviews.llvm.org/D92257
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/unittests/Format/FormatTestComments.cpp
The file was modifiedclang/lib/Format/NamespaceEndCommentsFixer.cpp
The file was modifiedclang/lib/Format/BreakableToken.cpp
The file was modifiedclang/lib/Format/BreakableToken.h
The file was modifiedclang/lib/Format/Format.cpp
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
The file was modifiedclang/include/clang/Format/Format.h
Commit 224fee8219bb3aed34f13ce40935e1b3ede90a0f by hoy
[CSSPGO] Tweaking inlining with pseudo probes.

Fixing up a couple places where `getCallSiteIdentifier` is needed to support pseudo-probe-based callsites.

Also fixing an issue in the extbinary profile reader where the metadata section is not fully scanned based on the number of profiles loaded only for the current module.

Reviewed By: wmi, wenlei

Differential Revision: https://reviews.llvm.org/D95791
The file was modifiedllvm/lib/Transforms/IPO/SampleContextTracker.cpp
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-inline.ll
The file was addedllvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-inline.prof
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
Commit 8e661d3d9c52ea9e5e68cbf699701d9cfa071a8f by Stanislav.Mekhanoshin
[AMDGPU] Set s-memtime-inst feature from clang

Differential Revision: https://reviews.llvm.org/D95733
The file was modifiedclang/lib/Basic/Targets/AMDGPU.cpp
The file was modifiedclang/test/CodeGenOpenCL/amdgpu-features.cl
Commit 93345e825a0733f6a67898f6d6d156ff56db80e7 by i
[llvm-objcopy] -O binary: consider SHT_NOBITS sections to be empty

This is consistent with BFD objcopy.

Previously llvm objcopy would allocate space for SHT_NOBITS sections
often resulting in enormous binary files.

New test case (binary-paddr.test %t6).

Reviewed By: jhenderson, MaskRay

Differential Revision: https://reviews.llvm.org/D95569
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/binary-paddr.test
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
Commit df3e39f60b356ca9dbfc11e96e5fdda30afa7acb by phosek
[InstrProfiling] Use !associated metadata for counters, data and values

C identifier name input sections such as __llvm_prf_* are GC roots so
they cannot be discarded. In LLD, the SHF_LINK_ORDER flag overrides the
C identifier name semantics.

The !associated metadata may be attached to a global object declaration
with a single argument that references another global object, and it
gets lowered to SHF_LINK_ORDER flag. When a function symbol is discarded
by the linker, setting up !associated metadata allows linker to discard
counters, data and values associated with that function symbol.

Note that !associated metadata is only supported by ELF, it does not have
any effect on non-ELF targets.

Differential Revision: https://reviews.llvm.org/D76802
The file was modifiedllvm/include/llvm/Transforms/Instrumentation.h
The file was modifiedllvm/test/Instrumentation/InstrProfiling/icall.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was addedllvm/test/Transforms/PGOProfile/associated.ll
The file was addedcompiler-rt/test/profile/instrprof-gc-sections.c
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo.ll
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo_mexits.ll
Commit bb6c23b1f50780390eafd73aac1a2a895a8971a4 by listmail
[NFC][X86] Avoid redundant work inspecting callee
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was modifiedllvm/test/CodeGen/X86/x86-no_caller_saved_registers-preserve.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/x86-no_caller_saved_registers.ll
Commit 9d09db941ff882a0be761e5d3d170a474bf047c8 by listmail
[NFC][X86] Use CallBase interface to simplify code
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 59186902555546b9d864065d03eb1c79cb041409 by eschweitz
[flang][NFC] Rename complex type.

This change renames the CplxType class to ComplexType.
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/lib/Lower/ConvertType.cpp
The file was modifiedflang/lib/Lower/IO.cpp
The file was modifiedflang/lib/Lower/FIRBuilder.cpp
The file was modifiedflang/lib/Optimizer/Dialect/FIRDialect.cpp
The file was modifiedflang/lib/Optimizer/Dialect/FIRType.cpp
The file was modifiedflang/lib/Lower/ComplexExpr.cpp
The file was modifiedflang/lib/Lower/Mangler.cpp
The file was modifiedflang/include/flang/Optimizer/Dialect/FIRType.h
The file was modifiedflang/lib/Lower/IntrinsicCall.cpp
Commit f1ff6d210a5fb45dc90d063d04b12b9da0ae4110 by rahmanl
[obj2yaml, yaml2obj] Use Hex64 for BBAddressMap fields.

This patch let the yaml encoding use Hex64 values for NumBlocks, BB AddressOffset, BB Size, and BB Metadata.
Additionally, it changes the decoded values in elf2yaml to uint64_t to match DataExtractor::getULEB128 return type.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D95767
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/test/tools/obj2yaml/ELF/bb-addr-map.yaml
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
Commit fbd55071788a3e57d2fdf8cad5c79ee45a273019 by Jonas Devlieghere
[lldb] Use the host architecture in TestAppleSimulatorOSType.py
The file was modifiedlldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
Commit 46e764a628da81795af3f64bd28970b7bd4115d6 by listmail
[x86] introduce no_callee_saved_registers attribute

This is directly analogous to the existing no_caller_saved_registers, but with the opposite intention.  A function or call so marked shifts the responsibility of spilling the usual CSRs to it's caller.

An indirect call site and callee which don't agree on the attribute is ill defined.

The motivation for this change is that being able to prune callee saves (without modifying other details of the calling convention) is sometimes useful when generating stubs and adapters.  There's no intention to expose this as a source language feature; this is expected to be used by frontends to implement adapters where warranted.

Some specific examples of use cases:
* GC compatible compiled code wants to call an externally defined library function without needing to track pointer values through CSRs.
* debug enabled code wants to call precompiled library which doesn't provide enough information to track CSRs while preserving debug quality in caller.
* adapter stub entering hand written assembler which doesn't follow normal calling conventions.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was addedllvm/test/CodeGen/X86/x86-no_callee_saved_registers.ll
The file was modifiedllvm/lib/Target/X86/X86RegisterInfo.cpp
Commit b545667d0a4e8d3ca7d4789c3c4004b2816c1b84 by atmndp
[OpenMP][Libomptarget] Remove possible harmful copy constructor call for RTLsTy

From https://bugs.llvm.org/show_bug.cgi?id=48973, we know that
`std::call_once(PM->RTLs.initFlag, &RTLsTy::LoadRTLs, PM->RTLs)` causes compile
time problems in libstdc++v3 5.3.1. This is because there was a defect in the
standard regarding the `call_once` (LWG 2442). This was fixed in libstdc++ soon
thereafter, but there are likely other standard libraries where this will fail.

By matching this function call with the other one, we fix this bug.

Differential Revision: https://reviews.llvm.org/D95769
The file was modifiedopenmp/libomptarget/src/interface.cpp
Commit 87f8a08ce36e5bc72f11129d2cf36b5848f86f63 by mtrofin
[Utils] Add a switch controlling prefix warnings in UpdateTestChecks

The switch controls both unused prefix warnings, and warnings about
functions which differ under different runs for a prefix, and, thus, end
up not having asserts for that prefix.

(If the latter case spans to all functions, then the former case kicks
in)

The switch is on by default, and can be disabled.

Differential Revision: https://reviews.llvm.org/D95829
The file was modifiedllvm/utils/UpdateTestChecks/common.py
The file was modifiedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/common-label-different-bodies.test
Commit 342d4662e1c930bd0a856c6c88d0cde5f106cc81 by ravishankarm
[mlir] Add custom directive hooks for printing mixed integer or value operands.

Add printer and parser hooks for a custom directive that allows
parsing and printing of idioms that can represent a list of values
each of which is either an integer or an SSA value. For example in

`subview %source[%offset_0, 1] [4, %size_1] [%stride_0, 3]`

each of the list (which represents offset, size and strides) is a mix
of either statically know integer values or dynamically computed SSA
values. Since this is used in many places adding a custom directive to
parse/print this idiom allows using assembly format on operations
which use this idiom.

Differential Revision: https://reviews.llvm.org/D95773
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/tools/mlir-tblgen/OpFormatGen.cpp
The file was modifiedmlir/lib/Interfaces/ViewLikeInterface.cpp
The file was modifiedmlir/test/Dialect/Linalg/invalid.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/include/mlir/Interfaces/ViewLikeInterface.h
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
Commit 41877b82f07224041a2a994f9032332fe01e4d1b by Matthew.Arsenault
AMDGPU: Fix dbg_value handling when forming soft clause bundles

DBG_VALUES placed between memory instructions would change
codegen. Skip over these and re-insert them after the bundle instead
of giving up on bundling.
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegPressure.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
The file was addedllvm/test/CodeGen/AMDGPU/soft-clause-dbg-value.mir
Commit 0fa61304d247a61b151cceac70e805abc69f8c1d by i
[LoopVectorize] Relax a FCmpInst assert to dyn_cast after D95690

The instruction may be `icmp eq i32`. Noticed in an internal Halide+wasm JIT test.
The file was modifiedllvm/lib/Analysis/IVDescriptors.cpp
Commit 98768bab19b27db71f497b0e5d87dfa9e5a0f05a by i
[test] Fix unuses FileCheck prefixes in clang/test/Modules
The file was modifiedclang/test/Modules/codegen.test
The file was modifiedclang/test/Modules/preprocess-nested.cpp
Commit 3f8dda50cbc89888015b9d2f69db38d9314d6517 by i
[test] Fix unuses FileCheck prefixes in lld
The file was modifiedlld/test/ELF/arm-thumb-interwork-thunk.s
The file was modifiedlld/test/COFF/wrap-lto-2.ll
The file was modifiedlld/test/ELF/lto/amdgcn-oses.ll
The file was modifiedlld/test/ELF/partition-notes.s
The file was modifiedlld/test/ELF/mips-micro-cross-calls.s
Commit 7a37d981d90529a125b425b1ca155da530c3008a by kazu
[llvm] Use pop_back_val (NFC)
The file was modifiedllvm/include/llvm/Analysis/SparsePropagation.h
The file was modifiedllvm/lib/Analysis/BranchProbabilityInfo.cpp
Commit 094fc4d5cf9b34edcc1034e00ead287a32dd7804 by kazu
[TableGen] Use ListSeparator (NFC)
The file was modifiedllvm/utils/TableGen/InstrDocsEmitter.cpp
Commit b167303b772d1d07fb831b2110cd26d541138bf7 by kazu
[TableGen] Use range-based for loops (NFC)
The file was modifiedllvm/utils/TableGen/AsmMatcherEmitter.cpp
The file was modifiedllvm/utils/TableGen/DAGISelEmitter.cpp
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.h
The file was modifiedllvm/utils/TableGen/CodeEmitterGen.cpp
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
The file was modifiedllvm/utils/TableGen/SubtargetEmitter.cpp
Commit ecb00a77624c94ce38fccf9b4095e026ecf14aed by nhawes
[VFS] Add support to RedirectingFileSystem for mapping a virtual directory to one in the external FS.

Previously file entries in the -ivfsoverlay yaml could map to a file in the
external file system, but directories had to list their contents in the form of
other file entries or directories. Allowing directory entries to map to a
directory in the external file system makes it possible to present an external
directory's contents in a different location and (in combination with the
'fallthrough' option) overlay one directory's contents on top of another.

rdar://problem/72485443
Differential Revision: https://reviews.llvm.org/D94844
The file was addedclang/test/VFS/directory.c
The file was addedclang/test/VFS/Inputs/vfsoverlay-directory.yaml
The file was modifiedllvm/include/llvm/Support/VirtualFileSystem.h
The file was modifiedlldb/source/Host/common/FileSystem.cpp
The file was modifiedllvm/unittests/Support/VirtualFileSystemTest.cpp
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
The file was addedclang/test/VFS/Inputs/vfsoverlay-directory-relative.yaml
Commit 0b70c86e2007d3f32968f0a7d9efe8eab3bf0f0a by kadircet
clang-extra: fix incorrect use of std::lock_guard by adding variable name (identified by MSVC [[nodiscard]] error)

`std::lock_guard` is an RAII class that needs a variable name whose scope determines the guard's lifetime. This particular usage lacked a variable name, meaning the guard could be destroyed before the line that it was indented to protect.

This line was identified by building clang with the latest MSVC preview release, which declares the std::lock_guard constructor to be `[[nodiscard]]` to draw attention to such issues.

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D95725
The file was modifiedclang-tools-extra/clangd/support/Function.h
Commit 327196d688585ecc6a4aa7dc1323adb7fe203c55 by i
[test] Fix unused FileCheck prefixes in compiler-rt/test
The file was modifiedcompiler-rt/test/profile/instrprof-value-prof-2.c
The file was modifiedcompiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-constants.cpp
The file was modifiedcompiler-rt/test/ubsan/TestCases/Pointer/nullptr-and-nonzero-offset-summary.cpp
Commit 0426be3df6180747bd68706db87a70580f064f0f by plotfi
[AArch64] Homogeneous Prolog and Epilog Size Optimization

Prologs and epilogs handle callee-save registers and tend to be irregular with
different immediate offsets that are not often handled by the MachineOutliner.
Commit D18619/a5335647d5e8 (combining stack operations) stretched irregularity
further.

This patch tries to emit homogeneous stores and loads with the same offset for
prologs and epilogs respectively. We have observed that this canonicalizes
(homogenizes) prologs and epilogs significantly and results in a greatly
increased chance of outlining, resulting in a code size reduction.

Despite the above results, there are still size wins to be had that the
MachineOutliner does not provide due to the special handling X30/LR. To handle
the LR case, his patch custom-outlines prologs and epilogs in place. It does
this by doing the following:

  * Injects HOM_Prolog and HOM_Epilog pseudo instructions during a Prolog and
    Epilog Injection Pass.
  * Lowers and optimizes said pseudos in a AArchLowerHomogneousPrologEpilog Pass.
  * Outlined helpers are created on demand. Identical helpers are merged by the linker.
  * An opt-in flag is introduced to enable this feature. Another threshold flag
    is also introduced to control the aggressiveness of outlining for application's need.

This reduced an average of 4% of code size on LLVM-TestSuite/CTMark targeting arm64/-Oz.

Differential Revision: https://reviews.llvm.org/D76570
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-bad-outline.mir
The file was addedllvm/lib/Target/AArch64/AArch64LowerHomogeneousPrologEpilog.cpp
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-frame-tail.ll
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-no-helper.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog.ll
Commit 21724ddcb7033cb010d57ff1a2d593cd70d462f5 by rob.suderman
[MLIR][TOSA] Comparison based elementwise operations for tosa-to-linalg

Comitted log, exp, maximum, minimum, comparison, ceil and floor conversions from TOSA to LinAlg. Support for signless integer and floating point.

Reviewed By: rsuderman

Differential Revision: https://reviews.llvm.org/D95839
The file was modifiedmlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
The file was modifiedmlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
Commit 45db9d4594bdbb4a304c16f6ad61b87c60eeb300 by i
[test] Fix unused FileCheck prefixes in lldb
The file was modifiedlldb/test/Shell/Reproducer/TestMultipleTargets.test
Commit 80f539526eec31f03aadd96753648686312b1ad1 by i
[test] Default clang/test to FileCheck --allow-unused-prefixes=false
The file was removedclang/test/CodeGenCXX/lit.local.cfg
The file was modifiedclang/test/Analysis/lit.local.cfg
The file was addedclang/test/OpenMP/lit.local.cfg
The file was modifiedclang/test/lit.cfg.py
The file was removedclang/test/Driver/lit.local.cfg
The file was removedclang/test/CodeGen/lit.local.cfg
Commit d475030dc28a85e649cdd3dd4e5941ec82227c26 by gil.rapaport
[SCEV] Apply loop guards to divisibility tests

Extend applyLoopGuards() to take into account conditions/assumes proving some
value %v to be divisible by D by rewriting %v to (%v / D) * D. This lets the
loop unroller and the loop vectorizer identify more loops as not requiring
remainder loops.

Differential Revision: https://reviews.llvm.org/D95521
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was addedllvm/test/Transforms/LoopUnroll/runtime-unroll-assume-no-remainder.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
Commit a59283a74529c74a8ee8682f9acf9d993f7cda08 by i
[test] Fix unused FileCheck prefixes in compiler-rt
The file was modifiedcompiler-rt/test/asan/TestCases/asan_update_allocation.cpp
The file was modifiedcompiler-rt/test/msan/death-callback.cpp
The file was modifiedcompiler-rt/test/ubsan_minimal/TestCases/nullptr-and-nonzero-offset.c
Commit 86b249c040ca7af31953ef304ac780502f2d285a by Lang Hames
[ORC] Clear unused materializing info entries.

Once a symbol is Ready its MaterializingInfo entry is unused and can be removed
to free up some memory.
The file was modifiedllvm/lib/ExecutionEngine/Orc/Core.cpp
Commit af6be9a7bb0fca891ec60138608902cd37b9f84f by i
[test] Fix unused FileCheck prefixes in clang-tidy and one llvm/test/Reduce test
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/modernize-loop-convert-reverse.cpp
The file was modifiedllvm/test/Reduce/remove-function-bodies-used-in-globals.ll
Commit ab1d977a16c4fd2bdaaac539f8f82006234d7c75 by i
[test] Fix unused FileCheck prefixes in test/Reduce
The file was modifiedllvm/test/Reduce/remove-multiple-use-of-global-vars-in-same-instruction.ll
The file was modifiedllvm/test/Reduce/no-replace-intrinsic-callee-with-undef.ll
The file was modifiedllvm/test/Reduce/remove-multiple-use-of-args-in-same-instruction.ll
The file was modifiedllvm/test/Reduce/remove-function-attributes.ll
The file was modifiedllvm/test/Reduce/remove-unused-declarations.ll
Commit 8f7f2c4211caf724e8319976968995bec1894b96 by plotfi
Revert "[AArch64] Homogeneous Prolog and Epilog Size Optimization"

This reverts commit 0426be3df6180747bd68706db87a70580f064f0f.

Reverting due to some expensive-checks failures in tests.
The file was removedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-frame-tail.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was removedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog.ll
The file was removedllvm/lib/Target/AArch64/AArch64LowerHomogeneousPrologEpilog.cpp
The file was removedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-no-helper.ll
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was removedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-bad-outline.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
Commit 6ee1f64a2e828d27a6c20839232b3ac828367123 by shivam98.tkg
[NFC][Docs] Fix RAVFrontendAction doc's CMakelists.txt for Shared build

[[ https://clang.llvm.org/docs/RAVFrontendAction.html | Example tutorial ]] giving undefine reference error while building with BUILD_SHARED_LIBS=ON.

Differential Revision: https://reviews.llvm.org/D95737
The file was modifiedclang/docs/RAVFrontendAction.rst
Commit 4553821815ebe3101dd7c8514a5a2b45891b29a6 by craig.topper
[SelectionDAG] Prevent scalable vector warning from ComputeNumSignBits on extract_vector_elt on a scalable vector.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 49c9c3a59e21205aabe48f92b9e53bf666348388 by nicolas.vasilache
[mlir][Standard] Extend n-D vector lowering to LLVM to [s|z]exti ops.

[s|z]exti ops do not have the same operand and result type.
As a consequence, the lowering of the n-D vector form needs to be relaxed a bit.
This revision additionally performs a few NFC renamings of variables to make them more intuitive.

Differential Revision: https://reviews.llvm.org/D95760
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was addedmlir/test/Conversion/StandardToLLVM/convert-nd-vector-to-llvmir.mlir
The file was modifiedmlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-to-llvmir.mlir
Commit 6bae5973c476e16dbbc82030d65c7859a6628e89 by aktoon
[CSSPGO] Call site prioritized inlining for sample PGO

This change implemented call site prioritized BFS profile guided inlining for sample profile loader. The new inlining strategy maximize the benefit of context-sensitive profile as mentioned in the follow up discussion of CSSPGO RFC. The change will not affect today's AutoFDO as it's opt-in. CSSPGO now defaults to the new FDO inliner, but can fall back to today's replay inliner using a switch (`-sample-profile-prioritized-inline=0`).

Motivation

With baseline AutoFDO, the inliner in sample profile loader only replays previous inlining, and the use of profile is only for pruning previous inlining that turned out to be cold. Due to the nature of replay, the FDO inliner is simple with hotness being the only decision factor. It has the following limitations that we're improving now for CSSPGO.
- It doesn't take inline candidate size into account. Since it's doing replay, the size growth is bounded by previous CGSCC inlining. With context-sensitive profile, FDO inliner is no longer limited by previous inlining, so we need to take size into account to avoid significant size bloat.
- The way it looks at hotness is not accurate. It uses total samples in an inlinee as proxy for hotness, while what really matters for an inline decision is the call site count. This is an unfortunate fall back because call site count and callee entry count are not reliable due to dwarf based correlation, especially for inlinees. Now paired with pseudo-probe, we have accurate call site count and callee's entry count, so we can use that to gauge hotness more accurately.
- It treats all call sites from a block as hot as long as there's one call site considered hot. This is normally true, but since total samples is used as hotness proxy, this transitiveness within block magnifies the inacurate hotness heuristic. With pseduo-probe and the change above, this is no longer an issue for CSSPGO.

New FDO Inliner

Putting all the requirement for CSSPGO together, we need a top-down call site prioritized BFS inliner. Here're reasons why each component is needed.
- Top-down: We need a top-down inliner to better leverage context-sensitive profile, so inlining is driven by accurate context profile, and post-inline is also accurate. This is already implemented in https://reviews.llvm.org/D70655.
- Size Cap: For top-down inliner, taking function size into account for inline decision alone isn't sufficient to control size growth. We also need to explicitly cap size growth because with top-down inlining, we can grow inliner size significantly with large number of smaller inlinees even if each individually passes the cost/size check.
- Prioritize call sites: With size cap, inlining order also becomes important, because if we stop inlining due to size budget limit, we'd want to use budget towards the most beneficial call sites.
- BFS inline: Same as call site prioritization, if we stop inlining due to size budget limit, we want a balanced inline tree, rather than going deep on one call path.

Note that the new inliner avoids repeatedly evaluating same set of call site, so it should help with compile time too. For this reason, we could transition today's FDO inliner to use a queue with equal priority to avoid wasted reevaluation of same call site (TODO).

Speculative indirect call promotion and inlining is also supported now with CSSPGO just like baseline AutoFDO.

Tunings and knobs

I created tuning knobs for size growth/cap control, and for hot threshold separate from CGSCC inliner. The default values are selected based on initial tuning with CSSPGO.

Results

Evaluated with an internal LLVM fork couple months ago, plus another change to adjust hot-threshold cutoff for context profile (will send up after this one), the new inliner show ~1% geomean perf win on spec2006 with CSSPGO, while reducing code size too. The measurement was done using train-train setup, MonoLTO w/ new pass manager and pseudo-probe. Note that this is just a starting point - we hope that the new inliner will open up more opportunity with CSSPGO, but it will certainly take more time and effort to make it fully calibrated and ready for bigger workloads (we're working on it).

Differential Revision: https://reviews.llvm.org/D94001
The file was addedllvm/test/Transforms/SampleProfile/csspgo-inline-debug.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was addedllvm/test/Transforms/SampleProfile/csspgo-inline.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/SampleContextTracker.h
The file was addedllvm/test/Transforms/SampleProfile/csspgo-inline-icall.ll
The file was modifiedllvm/test/Transforms/SampleProfile/profile-context-tracker.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleContextTracker.cpp
The file was addedllvm/test/Transforms/SampleProfile/Inputs/indirect-call-csspgo.prof
The file was modifiedllvm/test/Transforms/SampleProfile/profile-context-tracker-debug.ll
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-inline.ll
Commit e7f9a834996f40be8dc46a0b059aa850f1f4ef05 by craig.topper
[RISCV] Replace NoX0 SDNodeXForm with a ComplexPattern to do the selection of the VL operand.

I think this is a more standard way of doing this.

Reviewed By: rogfer01

Differential Revision: https://reviews.llvm.org/D95833
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
Commit 62af0305b7cc0238a8f0bf138c1fb8745b1041d0 by thomas.symalla
Added clamp i64 to i16 global isel pattern.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/clampi64toi16.ll
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCombine.td
Commit ec043967ecb4bbfbf3bcbdad4055e9ba8e5dc21b by thomas.symalla
clang-format
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit d722924f20918fd29d342cb2be50393d0fa9347f by thomas.symalla
Added comments.
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit fce3230be2c84401598e8ff5ce470e7509ecf75b by thomas.symalla
Added early exit.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit d41b7fa9bf80e09a52aa0d392db94a7b971044c9 by thomas.symalla
Renames
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/clampi64toi16.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
Commit 88a832aef1a696178c2ec3cb93f913ac937c4f5e by thomas.symalla
Refactored the pattern matching.
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit dae85e4671416490c6aaf2bac88c3ce1d74cc4d6 by thomas.symalla
Fixed the lit tests and a bug in the implementation.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
Commit 9a8da909f192e576e6aabc0ee5343bfff6db1d69 by thomas.symalla
Reverted unintended git-format change.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit f2ef2fbc692ed17bdb012a88cf0435dcd243cff8 by thomas.symalla
Renamed identifiers in lit
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
Commit cdfd9b3bf52e95705935699de90d3e3be7b33de4 by thomas.symalla
Move Combiner to PreLegalize step
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCombine.td
Commit 3a46502264b6a53764e28d55e990f714a31cba70 by thomas.symalla
Move step to PreLegalizer
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
Commit 79e729bdf14c884f13aff010ac9509370676aba7 by thomas.symalla
Fixed tests.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
Commit 7b2e701906c66d765b60f25ee746c713788ec714 by thomas.symalla
Code changes yielded from review.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
Commit ecbed4e0ab3ebc2388a35563e756a62c2d53b24c by thomas.symalla
Resolve formatting changes.
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was addeddiff.txt
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit bcd6c2d2031af50ffe9b357e839b8a9dd4d0ddd6 by thomas.symalla
Updating formatting changes.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit 7d24026ed2b7493f38e0b6b9d1bfb38db7998171 by thomas.symalla
Formatting changes.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit 52bfb50145ab1257d53a2909aeb0c8ec81e511fd by thomas.symalla
Formatting changes
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit 6604d81e1bb349597e8c1b919303a2efb4c9ba19 by thomas.symalla
Added and used new target pseudo for v_cvt_pk_i16_i32, changes due to code review.
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGISel.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
Commit c781c254124445259fbea3049cd32544afca1cb5 by thomas.symalla
Implemented a MED3_S32 GIR opcode.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGISel.td
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
Commit fa3e840d3d7d14fe131b0df0db359025b9446b9e by thomas.symalla
Removed the generic virtual register creations. Reworked the tests.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
Commit 602896b9d2f27b1ea0fd1f78db51fee25d4f2de0 by thomas.symalla
Renamed med3 opcode, removed superfluous copy.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGISel.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
Commit e630dd476ca719cacdd089a88be5faa387f65ec9 by thomas.symalla
Added missing includes.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
Commit 09508d28496069169a8538c96a16b665187db44f by thomas.symalla
Reverted whitespace changes.

Differential Revision: https://reviews.llvm.org/D90968
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
Commit 6c85e98f06426c2a1b33e0e862edc1afc0810d5d by thomas.symalla
Fixed includes.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
Commit faeed774d15734618a8928c3d17ce2f41bf607a3 by thomas.symalla
Fixed includes.

Differential Revision: https://reviews.llvm.org/D93708
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
Commit 508329922dad8dd8b0eef267a6b72f3ac2440485 by thomas.symalla
Removed Diff file.

Differential Revision: https://reviews.llvm.org/D93708
The file was removeddiff.txt
Commit 9a03058d6322edb8abc803ba3e436cc62647d979 by aktoon
[CSSPGO] Factor out common part for CSSPGO inline and AFDO inline

Refactoring SampleProfileLoader::inlineHotFunctions to use helpers from CSSPGO inlining and reduce similar code in the inlining loop, plus minor cleanup for AFDO path.

Test Plan:

Differential Revision: https://reviews.llvm.org/D95024
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-inline.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/remarks.ll
Commit 09cd849fdef2b2d3de2d0b0a5c512100957e0ef6 by aktoon
Fix build break from D95024
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit fc22de82182e05794123be70df5dfe15600c02b4 by sebastian.neubauer
[AMDGPU] Clarify calling conv about inactive lanes

So far, it was not specified what happens with the VGPRs of inactive
lanes when functions are called. This patch explicitely mentions that
the VGPR values of inactive lanes need to be preserved for all
registers.

This describes the current behavior, as only active lanes of registers
are saved to scratch. Also, as the multi-lane nature of VGPRs is not
properly modeled, we cannot determine the live VGPRs from inactive lanes
at calls. So we cannot save them, even if we intended to do so.

Differential Revision: https://reviews.llvm.org/D95610
The file was modifiedllvm/docs/AMDGPUUsage.rst
Commit b91afa474e124514fe7bd3f399af0cbbcbe961fc by sebastian.neubauer
[AMDGPU] Mark epilog restores as frame-destroy

I guess instructions were marked as frame-setup by accident, they are
restores as part of the epilog.

Differential Revision: https://reviews.llvm.org/D95783
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/fix-frame-ptr-reg-copy-livein.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
Commit 0479c53b6c5224c16bdc78cb014e76c0b0dbc6f9 by hans
[dllimport] Honor always_inline when deciding whether a dllimport function should be available for inlining (PR48925)

Normally, Clang will not make dllimport functions available for inlining
if they reference non-imported symbols, as this can lead to confusing
link errors. But if the function is marked always_inline, the user
presumably knows what they're doing and the attribute should be honored.

Differential revision: https://reviews.llvm.org/D95673
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/test/CodeGenCXX/dllimport.cpp
Commit 0409eb287414b71cfdcda13796c93794b71ea6d4 by zinenko
[mlir] Keep track of region signature conversions as argument replacements

In dialect conversion, signature conversions essentially perform block argument
replacement and are added to the general value remapping. However, the replaced
values were not tracked, so if a signature conversion was rolled back, the
construction of operand lists for the following patterns could have obtained
block arguments from the mapping and give them to the pattern leading to
use-after-free. Keep track of signature conversions similarly to normal block
argument replacement, and erase such replacements from the general mapping when
the conversion is rolled back.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D95688
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
The file was modifiedmlir/lib/Transforms/Utils/DialectConversion.cpp
The file was modifiedmlir/test/Transforms/test-legalize-type-conversion.mlir
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
Commit 679ef22f2e553e73eda43c45d4361256c4524c00 by benny.kra
Fold one-use variable into assert. NFCI.

Avoids a warning in Release builds.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
Commit d4d4ceeb8f3be67be94781ed718ceb103213df74 by david.sherwood
[SVE][LoopVectorize] Add masked load/store and gather/scatter support for SVE

This patch updates IRBuilder::CreateMaskedGather/Scatter to work
with ScalableVectorType and adds isLegalMaskedGather/Scatter functions
to AArch64TargetTransformInfo. In addition I've fixed up
isLegalMaskedLoad/Store to return true for supported scalar types,
since this is what the vectorizer asks for.

In LoopVectorize.cpp I've changed
LoopVectorizationCostModel::getInterleaveGroupCost to return an invalid
cost for scalable vectors, since currently this relies upon using shuffle
vector for reversing vectors. In addition, in
LoopVectorizationCostModel::setCostBasedWideningDecision I have assumed
that the cost of scalarising memory ops is infinitely expensive.

I have added some simple masked load/store and gather/scatter tests,
including cases where we use gathers and scatters for conditional invariant
loads and stores.

Differential Revision: https://reviews.llvm.org/D95350
The file was addedllvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/IR/IRBuilder.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
The file was addedllvm/test/Transforms/LoopVectorize/AArch64/sve-masked-loadstore.ll
Commit 760e6c4ce58324856d8f105b37bb974564e0f170 by andrzej.warzynski
[flang][driver] Disallow non-existent input files in the frontend driver

This patch adds a check that verifies that the input file used when
calling the frontend driver (i.e. `flang-new -fc1`) actually exists.
This was not required for the compiler driver, `flang-new`, as that's
already handled in libclangDriver.

Once all input/output file management is moved to the driver, we should
also check that for input from `stdin` the corresponding file descriptor
was successfully acquired.

This patch also makes sure that the default action in the frontend is
`ParseSyntaxOnly`. This is consistent with Clang. Before this change
`flang-new -fc1` would do nothing, which makes testing changes like the
one introduced here a bit tricky.

Reviewed By: SouraVX

Differential Revision: https://reviews.llvm.org/D95127
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedflang/test/Flang-Driver/missing-input.f90
The file was modifiedflang/lib/Frontend/FrontendAction.cpp
Commit 64421988e3958b19a8db6d29433f62f3db2fdb9a by david.green
[ARM] Regenerate LowOverheadLoops mir tests. NFC
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/size-limit.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-elem-moves.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/multiblock-massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/out-of-range-cbz.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/end-positive-offset.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-use.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-mov.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/loop-dec-copy-chain.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix-debug.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-while.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/loop-dec-copy-prev-iteration.mir
Commit 3a65ec4bf96bccafdb3524f116844ebdd789c76a by akuegel
Revert "Fix build break from D95024"

This reverts commit 09cd849fdef2b2d3de2d0b0a5c512100957e0ef6.
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit 48ca6da9d2f534752f5a5263a6209257149dba7d by akuegel
Revert "[CSSPGO] Factor out common part for CSSPGO inline and AFDO inline"

This reverts commit 9a03058d6322edb8abc803ba3e436cc62647d979.
The file was modifiedllvm/test/Transforms/SampleProfile/remarks.ll
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-inline.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit 48230355e930c592ec105ed71963459671c54a42 by david.green
[ARM] Remove DLS lr, lr

A DLS lr, lr instruction only moves lr to itself. It need not be emitted
on it's own to save a instruction in the loop preheader.

Differential Revision: https://reviews.llvm.org/D78916
The file was modifiedllvm/test/CodeGen/Thumb2/mve-nounrolledremainder.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/remat-vctp.ll
The file was modifiedllvm/test/CodeGen/Thumb2/aligned-nonfallthrough.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-tailpred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/reductions.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-arith-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-postinc-lsr.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/skip-debug.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vldshuffle.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float16regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unrolled-and-vector.mir
The file was modifiedllvm/test/CodeGen/Thumb2/active_lane_mask.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/minloop.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-def-before-start.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpnot-3.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vabdus.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unpredload.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-ptr-address.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-vector-reduce-mve-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpnot-1.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fp16convertloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-postinc-distribute.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-32.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-liveout-lsr-shift.mir
The file was modifiedllvm/test/Transforms/HardwareLoops/ARM/simple-do.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpnot-2.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/disjoint-vcmp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-store.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vldst4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-ptrs.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp16-reduce.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/loop-guards.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/constbound.ll
The file was modifiedllvm/test/Transforms/HardwareLoops/ARM/structure.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-chain-store.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vaddv.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-start-after-def.mir
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-in-vpt.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/lstp-insertion-position.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/multi-block-cond-iter-count.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-load.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/ctlz-non-zeros.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-8.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-pred-threshold.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-elem-moves.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-16.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vqdmulh.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-shifts-scalar.ll
The file was modifiedllvm/test/Transforms/HardwareLoops/ARM/calls-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vpt-blocks.mir
Commit dc00c96b2d1bcae56ef598b614ba65a1cc26c4de by sven.vanhaastregt
[OpenCL] Change extension handling for -fdeclare-opencl-builtins

Until now, the `-fdeclare-opencl-builtins` option behaved differently
compared to inclusion of `opencl-c.h`: builtins that are part of an
extension were only available if the extension was enabled using the
corresponding pragma.

Builtins that belong to an extension are guarded using a preprocessor
macro (that is named after the extension) in `opencl-c.h`.  Align the
behaviour of `-fdeclare-opencl-builtins` with this.

Co-authored-by: Anastasia Stulova

Differential Revision: https://reviews.llvm.org/D95616
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/SemaLookup.cpp
Commit 4d904776a77aa80342c65cf72a962920cc9d1fa9 by llvm-dev
[X86][AVX] Add missing VEX_WIG tags from VPACKUSDW/VPHSUBD/VPCMPISTRI/VPCMPISTRM/VPCMPESTRI/VPCMPESTRM

Fixes PR48877

Differential Revision: https://reviews.llvm.org/D95801
The file was modifiedllvm/test/MC/Disassembler/X86/x86-64-avx2.txt
The file was modifiedllvm/test/MC/Disassembler/X86/x86-64-avx.txt
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
Commit 0a2a260aab177bfbdef5829ea16e39323ce50916 by nicolas.vasilache
[mlir][Linalg] Refactor Linalg vectorization for better reuse and extensibility.

This revision unifies Linalg vectorization and paves the way for vectorization of Linalg ops with mixed-precision operations.
The new algorithm traverses the ops in the linalg block in order and avoids recursion.
It uses a BlockAndValueMapping to keep track of vectorized operations.

The revision makes the following modifications but is otherwise NFC:
1. vector.transfer_read are created eagerly and may appear in a different order than the original order.
2. a more progressive vectorization to vector.contract results in only the multiply operation being converted to `vector.contract %a, %b, %zero`, where `%zero` is a
constant of the proper type. Later vector canonicalizations are assumed to rewrite vector.contract %a, %b, %zero + add to a proper accumulate form.

Differential revision: https://reviews.llvm.org/D95797
The file was modifiedmlir/test/Dialect/Linalg/vectorization.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Commit 94fedd266125a5425aa33e11332bf414f0b6dc35 by andrew.ng
[X86] Fix disassembly of x86-64 GDTLS code sequence

For x86-64 the REX.w prefix takes precedence over any other size
override (i.e. 0x66). Therefore, for x86-64 when REX.w is present set
'hasOpSize' to false to ensure that any size override is ignored.

Fixes PR48901.

Differential Revision: https://reviews.llvm.org/D95682
The file was modifiedllvm/test/MC/Disassembler/X86/x86-64.txt
The file was addedllvm/test/tools/llvm-objdump/X86/disassemble-gdtls.s
The file was modifiedllvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
Commit d46a6b3d55e601705184c1f819bd1f498a648ce7 by llvm-dev
[X86][AVX512] Support variable-index vector insertion on AVX512 targets (PR47924)

With predicate masks, AVX512 can efficiently perform variable-index vector insertion with 2 broadcasts + 1 comparison, avoiding a lot of aliased memory traffic.

Differential Revision: https://reviews.llvm.org/D95779
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512-insert-extract.ll
The file was modifiedllvm/test/CodeGen/X86/insertelement-var-index.ll
Commit 586df38478b2bf2a85128e72a5300da9b1b09a5e by dmitry.preobrazhensky
[AMDGPU][MC] Corrected parsing of optional modifiers

Fixed bugs in parsing of "no*" modifiers and improved errors handling.
See https://bugs.llvm.org/show_bug.cgi?id=41282.

Differential Revision: https://reviews.llvm.org/D95675
The file was modifiedllvm/test/MC/AMDGPU/vop3-modifiers.s
The file was modifiedllvm/test/MC/AMDGPU/gfx9_err_pos.s
The file was modifiedllvm/test/MC/AMDGPU/gfx8_err_pos.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/test/MC/AMDGPU/flat-scratch-instructions.s
The file was modifiedllvm/test/MC/AMDGPU/vop3-modifiers-err.s
The file was modifiedllvm/test/MC/AMDGPU/flat-global.s
Commit 94f540cc7ceb98a25a62f04647ce30974a33a3d6 by benny.kra
[mlir][Linalg] Fix unused variable warning in Release builds. NFC.
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Commit fbeff2ec2bc6e44b92931207b0063f83ff7a3b3a by usx
[clangd] Report only decl of overridding method in xref.

See: https://github.com/clangd/clangd/issues/668

```
struct A { virtual void foo() = 0; };
struct B : A { void foo() override; };
```

Find refs on `A::foo()` will show:
- decls of `A::foo()`
- decls of `B::foo()`
- refs to `A::foo()`
- no refs to `B::foo()`.

Differential Revision: https://reviews.llvm.org/D95812
The file was modifiedclang-tools-extra/clangd/XRefs.h
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
Commit f2b4cc91e0830835c251e0525322effda8522b1c by thakis
Revert "[test] Default clang/test to FileCheck --allow-unused-prefixes=false"

This reverts commit 80f539526eec31f03aadd96753648686312b1ad1.
Many test failures on mac: http://45.33.8.238/macm1/2772/summary.html
One on win: http://45.33.8.238/win/32442/summary.html
The file was modifiedclang/test/lit.cfg.py
The file was removedclang/test/OpenMP/lit.local.cfg
The file was addedclang/test/CodeGen/lit.local.cfg
The file was addedclang/test/Driver/lit.local.cfg
The file was modifiedclang/test/Analysis/lit.local.cfg
The file was addedclang/test/CodeGenCXX/lit.local.cfg
Commit 8fce22888bd2aec9eadf8a0f229bfd0dbe06460d by nicolas.vasilache
[mlir][Linalg] Fix and properly test CodegenStrategy API

Fix a bug that was introduced where calling the codegen strategy with actual concrete C++ Op types did not trigger the expected behavior.
Also introduce a test for the behavior that was missing.

Differential Revision: https://reviews.llvm.org/D95863
The file was modifiedmlir/test/Dialect/Linalg/codegen-strategy.mlir
The file was modifiedmlir/test/lib/Transforms/TestLinalgCodegenStrategy.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/CodegenStrategy.h
Commit d6a06365cf12bebe20a7d65cf3894608efc089b4 by steveire
[ASTMatchers] Fix matching after generic top-level matcher

With a matcher like

  expr(anyOf(integerLiteral(equals(42)), unless(expr())))

and code such as

  struct B {
    B(int);
  };

  B func1() { return 42; }

the top-level expr() would match each of the nodes which are not spelled
in the source and then ignore-traverse to match the integerLiteral node.
This would result in multiple results reported for the integerLiteral.

Fix that by only running matching logic on nodes which are not skipped
with the top-level matcher.

Differential Revision: https://reviews.llvm.org/D95735
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
Commit 00da3227882654533efe9ae62023e367e4a88e29 by sander.desmalen
NFC: Migrate SimpleLoopUnswitch to work on InstructionCost

This patch migrates cost values and arithmetic to work on InstructionCost.
When the interfaces to TargetTransformInfo are changed, any InstructionCost
state will propagate naturally.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Reviewed By: david-arm

Differential Revision: https://reviews.llvm.org/D95352
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
Commit 3d3ca8f8ebc4a7e50e1bb1f6eb6a92056a69fd71 by sander.desmalen
NFC: Migrate SpeculateAroundPHIs to work on InstructionCost

This patch migrates cost values and arithmetic to work on InstructionCost.
When the interfaces to TargetTransformInfo are changed, any InstructionCost
state will propagate naturally.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Reviewed By: ctetreau

Differential Revision: https://reviews.llvm.org/D95353
The file was modifiedllvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp
Commit 0f2be195d5e5fc79d28692266eae226cd42678b0 by Raphael Isemann
Revert "[lldb] Use current execution context in SBDebugger"

This reverts commit 754ab803b8dc659e3645d369d1b5d6d2f97be29e.

As pointed out in https://reviews.llvm.org/D95761, this patch could lead to
having the wrong execution context in some situations (thanks Jim!).

D92164 is addressing the same issue and will replace this patch, so I'll
revert this one.
The file was modifiedlldb/test/API/python_api/debugger/TestDebuggerAPI.py
The file was modifiedlldb/source/API/SBDebugger.cpp
Commit 8c2e075c2cee76a4ede05b44b4e269264ef62296 by llvm-dev
[X86][SSE] LowerINSERT_VECTOR_ELT - pull out repeated EltSizeInBits calls. NFCI.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit c72257563347b611733b6744cefc0bf49bab4f8d by david.green
[ARM] Select VINS from vector inserts

This patch adds tablegen patterns for pairs of i16/f16 insert/extracts.
If we are inserting into two adjacent vector lanes (0 and 1 for
example), we can use either a vmov;vins or vmovx;vins to insert the pair
together, avoiding a round-trip from GRP registers. This is quite a
large patterns with a number of EXTRACT_SUBREG/INSERT_SUBREG/
COPY_TO_REGCLASS nodes, but hopefully as most of those become copies all
that will be cleaned up by further optimizations.

The VINS pattern was also adjusted to allow it to represent that it is
inserting into the top half of an existing register.

Differential Revision: https://reviews.llvm.org/D95381
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fmas.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fp-negabs.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vcmpfr.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vcmpfz.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vmovn.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-shuffle.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vcmpf.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-ptrs.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fmath.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld3.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-div-expand.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-shufflemov.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-ind16-scaled.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst2.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-frint.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-ldst.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst3.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrVFP.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vmovnstore.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-minmax.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vcvt.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld2.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vldst4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-simple-arith.ll
Commit 467a045601430c81e1a7f41f6a134e751f17df55 by steveire
[ASTMatchers] Add matchers for decomposition decls

Differential Revision: https://reviews.llvm.org/D95739
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Registry.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
Commit a8105b3766e4195ca2390cd0714e07406bc8a4a5 by marek.kurdej
[clang-format] Add case aware include sorting.

Adds an option to [clang-format] which sorts headers in an alphabetical manner using case only for tie-breakers. The options is off by default in favor of the current ASCIIbetical sorting style.

Reviewed By: MyDeveloperDay, curdeius, HazardyKnusperkeks

Differential Revision: https://reviews.llvm.org/D95017
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/lib/Format/Format.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/unittests/Format/SortIncludesTest.cpp
The file was modifiedclang/unittests/Format/SortImportsTestJava.cpp
The file was modifiedclang/include/clang/Format/Format.h
The file was modifiedclang/tools/clang-format/ClangFormat.cpp
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
Commit c4fe29e0e5b6f637d12997bbd2b9c7634ae5598f by david.green
[ARM] Extra shuffle tests. NFC
The file was modifiedllvm/test/CodeGen/Thumb2/mve-shuffle.ll
Commit 4f1320b77d1780dd7532f8ca8b123c13ab55bf1a by Tom.Weaver
Revert "[InstrProfiling] Use !associated metadata for counters, data and values"

This reverts commit df3e39f60b356ca9dbfc11e96e5fdda30afa7acb.

introduced failing test instrprof-gc-sections.c
causing build bot to fail:
http://lab.llvm.org:8011/#/builders/53/builds/1184
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was removedllvm/test/Transforms/PGOProfile/associated.ll
The file was modifiedllvm/include/llvm/Transforms/Instrumentation.h
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/icall.ll
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo.ll
The file was removedcompiler-rt/test/profile/instrprof-gc-sections.c
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo_mexits.ll
Commit 9e5fc578f99aaa3f01374d3f09fda75fa7d0239e by steveire
[ASTMatchers] Ignore parts of BindingDecls which are not spelled in source

Differential Revision: https://reviews.llvm.org/D95740
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/include/clang/AST/ASTNodeTraverser.h
The file was modifiedclang/unittests/AST/ASTTraverserTest.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
Commit 6ac3fd9706047304c52a678884122a3a6bc55432 by sam.mccall
[clangd] Fix race in Global CDB shutdown

I believe the atomic write can be reordered after the notify, and that
seems to be happening on mac m1: http://45.33.8.238/macm1/2654/step_8.txt
In practice maybe seq_cst is enough? But no reason not to lock here.

https://bugs.llvm.org/show_bug.cgi?id=48998
The file was modifiedclang-tools-extra/clangd/GlobalCompilationDatabase.cpp
Commit 9b0b435d7931bdb1fb128861cc9063a365a9e648 by powerman1st
[AVR][clang] Fix a bug in AVR toolchain search paths

Reviewed By: dylanmckay, MaskRay

Differential Revision: https://reviews.llvm.org/D95529
The file was addedclang/test/Driver/avr-ld.c
The file was addedclang/test/Driver/Inputs/basic_avr_tree/usr/lib/gcc/avr/5.4.0/libgcc.a
The file was modifiedclang/lib/Driver/ToolChains/AVR.cpp
The file was addedclang/test/Driver/Inputs/basic_avr_tree/usr/bin/avr-ld
The file was addedclang/test/Driver/Inputs/basic_avr_tree/usr/lib/avr/lib/libavr.a
Commit e6a061ed9f94218197d87959066d5c6dd1f51f79 by lebedev.ri
[NFC][InstCombine] Add tests for  (~x) a>> y  -->  ~(x a>> y)  fold (PR48995)

See https://bugs.llvm.org/show_bug.cgi?id=48995
The file was addedllvm/test/Transforms/InstCombine/hoist-not-from-ashr-operand.ll
Commit 485c4b552b71aff21fc27ce958c2d8ea4cebba99 by lebedev.ri
[InstCombine] Host inversion out of ashr's value operand (PR48995)

This is a yet another hint that we will eventually need InstCombineInverter,
which would consistently sink inversions, but but for that we'll need
to consistently hoist inversions where possible, so let's do that here.

Example of a proof: https://alive2.llvm.org/ce/z/78SbDq

See https://bugs.llvm.org/show_bug.cgi?id=48995
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/hoist-not-from-ashr-operand.ll
Commit b24e3cc5423c646447589d9701e5bbee8204cb8f by antiagainst
[mlir] Put template specialization in the same namespace

This should address GCC 5 failure due to specialization of
runStrategy in different namespace.
The file was modifiedmlir/test/lib/Transforms/TestLinalgCodegenStrategy.cpp
Commit 9a5dc01e4b65b15c73751f5b3d9273ea73533b5d by melanie.blower
[clang][PATCH][NFC] Correct test case related to review D95482
The file was addedclang/test/SemaCXX/pr48848.cpp
The file was modifiedclang/test/SemaCXX/lambda-expressions.cpp
Commit 5bbf39704c2b70581d78a463f3c9d20b0eb7dcd5 by anastasia.stulova
[OpenCL] Add diagnostics for references to functions

Restrict use of references to functions as they can
result in non-conforming behavior.

Tags: #clang

Differential Revision: https://reviews.llvm.org/D95442
The file was modifiedclang/test/SemaOpenCLCXX/members.cl
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was addedclang/test/SemaOpenCLCXX/references.cl
Commit 903a153409b8640aac30fa0b46b9a99ad90fe786 by steveire
Ensure that the matcher is instantiated

Fix issue diagnosed by Windows linker.
The file was modifiedclang/lib/ASTMatchers/ASTMatchersInternal.cpp
Commit 3a5adf84834a2b6fad57214278e4ec743977356c by david.green
[ARM] Add MVE insert-of-extract pattern

A v4i32 insert of an extract can become a simple lane move, as opposed
to round-tripping via a GPR. This adds a patterns that turns an v4i32
insert-extract pair into a EXTRACT_SUBREG/INSERT_SUBREG, with the
required COPY_TO_REGCLASS. These get better optimized into a simple lane
move by the rest of the backend.

Differential Revision: https://reviews.llvm.org/D95428
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-add.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
Commit 288f762b6ff2c0cedfda88e8b9af11c2ec412cd3 by stefanp
[PowerPC] Materialize 34 bit constants with pli on Power 10.

NOTE: This patch was originally written by Anil Mahmud. His code has been
rebased but otherwise left mostly unchanged.

A new instructon on Power 10 allows for the materialization of 34 bit
immediate values. This patch allows the compiler to take advantage of
the new instruction in this situation.

Reviewed By: amyk

Differential Revision: https://reviews.llvm.org/D92879
The file was addedllvm/test/CodeGen/PowerPC/p10-constants.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was modifiedllvm/test/CodeGen/PowerPC/paired-vector-intrinsics.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
Commit ed8943c08769082f4ce5e7682a4ff53ae25bee36 by huberjn
[OpenMP][NFC] Adding FAQ Entry for errors with static libraries
The file was modifiedopenmp/docs/SupportAndFAQ.rst
Commit 1645f465be85223e9f5b6303a3e5e0e491fd819f by aktoon
[CSSPGO] Factor out common part for CSSPGO inline and AFDO inline

Refactoring SampleProfileLoader::inlineHotFunctions to use helpers from CSSPGO inlining and reduce similar code in the inlining loop, plus minor cleanup for AFDO path.

This is resubmit of D95024, with build break and overtighten assertion fixed.

Test Plan:
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-inline.ll
The file was modifiedllvm/test/Transforms/SampleProfile/remarks.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit eb3426a528d5b3cbbb54aee662a779f2067fc9db by zarko
[AIX] Improve option processing for mabi=vec-extabi and mabi=vec=defaul

Opening this revision to better address comments by @hubert.reinterpretcast in https://reviews.llvm.org/rGcaaaebcde462

Reviewed By: hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D95702
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/CodeGen/altivec.c
Commit b2b35697dc5172ab1e815e08c0a2714f2a1a9330 by antiagainst
[mlir] Fix scf.for single iteration canonicalization check

We should be check whether lb + step >= ub to determine
whether this is a single iteration. Previously we were
checking lb + lb >= ub.

Differential Revision: https://reviews.llvm.org/D95440
The file was modifiedmlir/test/Dialect/Linalg/fusion.mlir
The file was modifiedmlir/test/Dialect/SCF/canonicalize.mlir
The file was modifiedmlir/lib/Dialect/SCF/SCF.cpp
Commit e901188cf9e34b54db7b1c5359264549d5f5be4f by antiagainst
[mlir][spirv] Define sp.VectorShuffle

This patch adds basic op definition, parser/printer, and verifier.

Reviewed By: ThomasRaoux

Differential Revision: https://reviews.llvm.org/D95825
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
The file was modifiedmlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVCompositeOps.td
The file was modifiedmlir/test/Target/SPIRV/composite-op.mlir
The file was modifiedmlir/test/Dialect/SPIRV/IR/composite-ops.mlir
Commit a2e791e3969565cfd3c316c5a880fc9cff6f4bac by antiagainst
Revert "[mlir] Fix scf.for single iteration canonicalization check"

This reverts commit b2b35697dc5172ab1e815e08c0a2714f2a1a9330.
It gotten accidentially landed before LGTM.
The file was modifiedmlir/lib/Dialect/SCF/SCF.cpp
The file was modifiedmlir/test/Dialect/Linalg/fusion.mlir
The file was modifiedmlir/test/Dialect/SCF/canonicalize.mlir
Commit 6b6ae583cf873debf06e982062fcc7982c8a184a by sebastian.neubauer
[AMDGPU] Save fp/bp after csr saves

Saving callee-save registers happens in whole wave mode. Exec is saved
to a free register, which can be reused to save the frame pointer.
Therefore, saving the fp needs to happen after saving csrs.

Differential Revision: https://reviews.llvm.org/D95861
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
Commit 8b898b19a8cb90871fa85a6db924c61b9f22cfe6 by sebastian.neubauer
[AMDGPU] Remove unused tmp register

The temporary register is only used to compute the frame pointer.
The frame pointer is overwritten and not used in between, so we
can reuse the frame pointer for the computation, saving one register.

Differential Revision: https://reviews.llvm.org/D95865
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-realign.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
Commit 844f01fc9589b25a3427a6cf4ca406e6787ae171 by anastasia.stulova
Fixed failing OpenCL test
The file was modifiedclang/test/SemaOpenCLCXX/references.cl
Commit 2753722b0fc1fe34c382277e2e6c7195dd573100 by david.green
[ARM] Mark MVE_VMOV_to_lane_32 as isInsertSubregLike

This allows the peephole optimizer to know that a MVE_VMOV_to_lane_32 is
the same as an insert subreg, allowing it to optimize some redundant
lane moves.

Differential Revision: https://reviews.llvm.org/D95433
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst3.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-add.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-mla.ll
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
Commit 3e09bc250044fc3d294cba23c8d797e12f30581d by flo
[ConstraintElimination] Add nicer way to dump constraints (NFC).

Use ConstraintSystem::dump(Names) to display the result of decomposing a
condition.
The file was modifiedllvm/include/llvm/Analysis/ConstraintSystem.h
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Commit af43440bd2f49f9cc548099d35e42734f03735ef by eschweitz
[flang][NFC] Update #include and comment.

Differential Revision: https://reviews.llvm.org/D95828
The file was modifiedflang/include/flang/Optimizer/Dialect/FIRAttr.h
Commit ffca74b8b82f0af0d213bffa59c40b10449fd05f by jonathan.l.peyton
[OpenMP] Fix sign comparison warnings from GCC

New affinity patch introduced legitimate sign-compare warnings that
clang doesn't report but GCC-10 does. This removes the warnings by
changing two variables types to unsigned.

Differential Revision: https://reviews.llvm.org/D95818
The file was modifiedopenmp/runtime/src/kmp_affinity.cpp
Commit 3e780616c46ecd2caa8f52e714839b87a39f514b by david.green
[ARM] Correct some tablegen operand types. NFC
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrNEON.td
Commit 50c523a9d4402c69d59c0b2ecb383a763d16cde9 by jeroen.dobbelaere
[InlineFunction] Only update noalias scopes once for an instruction.

Inlining sometimes maps different instructions to be inlined onto the same instruction.

We must ensure to only remap the noalias scopes once. Otherwise the scope might disappear (at best).
This patch ensures that we only replace scopes for which the mapping is known.

This approach is preferred over tracking which instructions we already handled in a SmallPtrSet,
as that one will need more memory.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D95862
The file was addedllvm/test/Transforms/Inline/noalias3.ll
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
Commit ce33bd0b86e5c777d587e330944751e58fd7d4d6 by spatel
[ExpandReductions] add test for fmin with FMF; NFC
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/vector-reductions-expanded.ll
Commit 1560a0003224cf20d14a71521d4f36fd150f8206 by i
[yaml2obj/obj2yaml/llvm-readobj] Support SHF_GNU_RETAIN

In binutils, the flag is defined for ELFOSABI_GNU and ELFOSABI_FREEBSD.
It can be used to mark a section as a GC root.

In practice, the flag has generic semantics and can be applied to many
EI_OSABI values, so we consider it generic.

Differential Revision: https://reviews.llvm.org/D95728
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-flags-os-proc.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-sections.test
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-flags.test
Commit 1477ed846508dc84610b7ca9570e590eb7e21797 by i
[MC] Support SHF_GNU_RETAIN as section flag 'R'

On Linux target triples, GNU as sets EI_OSABI to ELFOSABI_GNU when SHF_GNU_RETAIN is used。
On `*-*-freebsd`, it usually sets EI_OSABI to ELFOSABI_FREEBSD.

GNU ld respects SHF_GNU_RETAIN only for ELFOSABI_FREEBSD/ELFOSABI_GNU.
https://sourceware.org/bugzilla/show_bug.cgi?id=27282

MC doesn't set ELFOSABI_GNU for SHF_GNU_RETAIN/STB_GNU_UNIQUE/STT_GNU_IFUNC.
MC assembled object files do not have special semantics in GNU ld.

Reviewed By: psmith

Differential Revision: https://reviews.llvm.org/D95730
The file was addedllvm/test/MC/ELF/section-gnu.s
The file was modifiedllvm/lib/MC/MCSectionELF.cpp
The file was modifiedllvm/lib/MC/MCParser/ELFAsmParser.cpp
Commit 81af8149d8cb8ff65f2569d813252fab2a14df00 by i
[test] Add basic _Unwind_ForcedUnwind + exception tests

Forced unwinding is like a foreign exception, which can be caught by `catch (...)` and rethrown.
If not rethrown, `__cxa_end_cath` will call `_Unwind_DeleteException` to destroy the object.

The behavior going through empty `throw()` and non-empty `throw(int)` is not
clear (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98785), so I do not add such
tests.

Differential Revision: https://reviews.llvm.org/D95200
The file was addedlibcxxabi/test/forced_unwind1.pass.cpp
The file was addedlibcxxabi/test/forced_unwind2.pass.cpp
Commit abc145182ceda3f5aec2aa64e2550f228cc87963 by flo
[ConstraintElimination] Add test with pointer bitcast.
The file was addedllvm/test/Transforms/ConstraintElimination/pointercast.ll
Commit 3e8ab54ba072cc50e41510ec8c56f49b06cac256 by i
[MC] Upgrade DWARF version to 5 upon .file 0

Without `-dwarf-version`, llvm-mc uses the default `MCContext::DwarfVersion` 4.

Without `-gdwarf-N`, Clang cc1as uses `clang::driver::ToolChain::GetDefaultDwarfVersion`
which is 4 on many toolchains. Note: `clang -c` can synthesize .debug_info without -g.

There is currently a MCParser warning upon `.file 0` and MCParser errors upon
`.loc 0` if the DWARF version is less than 5. This causes friction to the
following usage:

```
clang -S -g -gdwarf-5 a.c

// MC warning due to .file 0, MC error due to .loc 0
clang -c a.s
llvm-mc -filetype=obj a.s
```

My idea is that we can just upgrade `MCContext::DwarfVersion` to 5 upon
`.file 0` to make the above commands work.

The downside is that for an explicit version `clang -c -gdwarf-4 a.s`, it can be
argued that the new behavior drops the probably intended diagnostic. I think the
downside is small because in most cases DWARF version for an assembly action
should either match the original compile action or be omitted.

Ongoing discussion taking a similar action for GNU as: https://sourceware.org/pipermail/binutils/2021-January/114980.html

Differential Revision: https://reviews.llvm.org/D94882
The file was modifiedllvm/test/MC/ELF/dwarf-file0.s
The file was modifiedllvm/lib/MC/MCParser/AsmParser.cpp
The file was modifiedllvm/test/MC/ELF/dwarf-loc0.s
Commit 870a58a75889031d0d860ec6ae51caa1ccfbd8ad by Jonas Devlieghere
[debugserver] Fix -Winconsistent-missing-override warnings on arm64
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.h
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.h
Commit d3e2e3740d0730cb6788c771bb01a8f3e935bf2e by hoy
[CSSPGO] Passing the clang driver switch -fpseudo-probe-for-profiling to the linker.

As titled.

Reviewed By: wmi, wenlei

Differential Revision: https://reviews.llvm.org/D95271
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedclang/test/Driver/pseudo-probe-lto.c
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
Commit 57bfa2ddb6bf1f1814295a2423258fdd46cb702c by i
[ELF] Delete unused --warn-ifunc-textrel

The option catches incompatibility between `R_*_IRELATIVE` and DT_TEXTREL/DF_TEXTREL
before glibc 2.29. Newer glibc versions are more common nowadays and I don't
think this option has ever been used. Diagnosing this problem is also
straightforward by reading the stack trace.
The file was modifiedlld/ELF/Relocations.cpp
The file was modifiedlld/ELF/Config.h
The file was modifiedlld/ELF/Driver.cpp
The file was removedlld/test/ELF/textrel.s
Commit a3cc99658d52f79faad26beeea06691b3a50bc95 by martin
[libcxx] Implement the space function for windows

Differential Revision: https://reviews.llvm.org/D91168
The file was modifiedlibcxx/src/filesystem/operations.cpp
The file was modifiedlibcxx/src/filesystem/posix_compat.h
Commit 3a9d2f1488f0a767d4e55dc701bbdfc5438bbb3e by gkm
[lld-macho][NFC] refactor relocation handling

Add per-reloc-type attribute bits and migrate code from per-target file into target independent code, driven by reloc attributes.

Many cleanups

Differential Revision: https://reviews.llvm.org/D95121
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/test/MachO/invalid/invalid-relocation-pcrel.yaml
The file was modifiedlld/MachO/Target.cpp
The file was modifiedlld/test/MachO/invalid/bad-got-to-tlv-reference.s
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/test/MachO/invalid/bad-tlv-def.s
The file was modifiedlld/test/MachO/invalid/invalid-relocation-length.yaml
The file was modifiedlld/MachO/Arch/X86_64.cpp
The file was modifiedlld/test/MachO/invalid/bad-got-to-dylib-tlv-reference.s
The file was addedlld/test/MachO/x86-64-reloc-subtract.s
The file was modifiedlld/MachO/Target.h
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/test/MachO/invalid/bad-tlv-opcode.s
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/test/MachO/invalid/bad-tlv-relocation.s
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/MachO.h
Commit ca98c15f23354520bf689bd5feb333a716159d2c by michael.p.rice
[OpenMP] Fix iterations calculation for dependent counters.

The number of iterations calculation was failing in some cases with more
than two collpased loops. Now the LoopIterationSpace selected matches
InitDependOnLC and CondDependOnLC.

Differential Revision: https://reviews.llvm.org/D95834
The file was modifiedclang/test/OpenMP/for_loop_messages.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/for_codegen.cpp
Commit 9a62b7242aead46dd5962bc516c6527ae5e80bc0 by Jonas Devlieghere
[debugserver] Fix -Wunused-function warnings on arm64
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp
Commit 912306ef21d76589ef312af992819a4752ad66ea by craig.topper
[RISCV] Use a ComplexPattern to merge isel patterns for vector load/store with GPR and FrameIndex addresses.

This reduces the isel table size by about 3000 bytes.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D95844
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
Commit 51da12680f9dd06caa550522f05a4820131887be by i
[ConstraintElimination] Fix -Wunused-function in -DLLVM_ENABLE_ASSERTIONS=off build
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Commit ec6815a72dfcf46fcca546d8c87d05606e140428 by Jonas Devlieghere
[debugserver] Fix -Wsign-compare warnings on arm64
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp
Commit f1bdf9fa9bc5edc616842b6cb9028b7d207e012c by joker.eph
[mlir][NFC] Use explicit `mlir` namespace in generated code

This makes the generated code independent from actual namespace of its users.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D95520
The file was modifiedmlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
The file was modifiedmlir/include/mlir/Interfaces/InferTypeOpInterface.td
The file was modifiedmlir/include/mlir/IR/SymbolInterfaces.td
The file was modifiedmlir/include/mlir/Interfaces/CopyOpInterface.td
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp
The file was modifiedmlir/include/mlir/IR/OpAsmInterface.td
Commit d8c373815d35df1b8544784ce172ade68fb01f8f by joker.eph
[mlir][NFC] Add missing include guards to MlirOptMain.h

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D95533
The file was modifiedmlir/include/mlir/Support/MlirOptMain.h
Commit 7cc79984979014c86b6b4672ed0df93a74b2f218 by joker.eph
[mlir] Allow to use constant lambda as callbacks for `TypeConverter`

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D95787
The file was modifiedmlir/include/mlir/Transforms/DialectConversion.h
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
Commit 95935849881c403e6e141da16b41d64dc4e537d3 by joker.eph
[mlir] Print more verbose message in case of type inference error

Include the types into the error message.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D95854
The file was modifiedmlir/test/mlir-tblgen/types.mlir
The file was modifiedmlir/lib/Interfaces/InferTypeOpInterface.cpp
Commit 39047f6c2e5e8999b012cda1a92447bb615a6d1b by Jonas Devlieghere
[debugserver] Fix -Wmissing-field-initializers warnings on arm64
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp
Commit 67dfe9c8d70c1242c1e91e3bafc710781ac2a585 by joker.eph
[mlir] Return new Operation from `Rewriter::replaceOpWithNewOp`

It will allow to perform additional manipulation with the newly created Operation.
For example, custom attributes propagation/changes.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D95525
The file was modifiedmlir/include/mlir/IR/PatternMatch.h
Commit c4fd1981a74520aaa1731f8705360c2c87346f44 by craig.topper
[RISCV] Correct types in tablegen multiclasses found by D95874.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Commit b4106f9c7b8c498d109301ced7bf9aca32027168 by fraser
[RISCV] Fix incorrect RVV sdiv/udiv lowering

Due to a clerical error, the sdiv operation was mapping to vdivu and
udiv to vdiv, when the opposite mapping is the correct one.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D95869
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdivu-sdnode-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdivu-sdnode-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdiv-sdnode-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdiv-sdnode-rv64.ll
Commit bb0212929e36732585f0b43f9b0301af51953667 by joker.eph
Fix CMake LLVM_TARGETS_TO_BUILD "Native" option to work with JIT

LLVM_TARGETS_TO_BUILD accepts both "host" or "Native" for auto-selecting
the target from the environment. However the way "Native" was plumbed
would lead to the JIT environment being disabled. This patch is making
"Native" works just as "host".

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D95837
The file was modifiedllvm/cmake/config-ix.cmake
The file was modifiedllvm/CMakeLists.txt
Commit 5b3881691f3375344c1b4c3d594b5958948851d7 by csigg
[mlir] Delay adding the __resume function

The __resume function trips up LLVM's 'X86 DAG->DAG Instruction Selection' unless optimizations are disabled.

Only adding the __resume function when it's needed allows lowering through AsyncToLLVM and LLVM without '-O0' as long as the coroutine functionality is not used.

Reviewed By: ezhulenev

Differential Revision: https://reviews.llvm.org/D95868
The file was modifiedmlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
Commit 2aa1af9b1da0d832270d9b8afcba19a4aba2c366 by isuruf
[MLIR] [CMake] Support building MLIR standalone

Add the necessary bits to CMakeLists to make it possible to configure
MLIR against installed LLVM, and build it with minimal need for LLVM
source tree.  The latter is only necessary to run unittests, and if it
is missing then unittests are skipped with a warning.

This change includes the necessary changes to tests, in particular
adding some missing substitutions and defining missing variables
for lit.site.cfg.py substitution.

Reviewed By: stephenneuendorffer

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

Co-authored-by: Isuru Fernando <isuruf@gmail.com>
The file was modifiedmlir/cmake/modules/AddMLIR.cmake
The file was modifiedmlir/CMakeLists.txt
The file was modifiedmlir/test/CMakeLists.txt
The file was modifiedmlir/test/lit.cfg.py
Commit b7d80058ff4649d1a15ef930269458dbb17145d9 by rengolin
Fix namespace for MLIR Async Runtime

The MLIR Async runtime uses different namespacing for the header file,
and the definitions of its C API. The header file places the extern "C"
functions inside namespace mlir::runtime, and the definitions are not
in a namespace. This causes issues in cl.exe. It treats the declaration
and definition as different, and thus does not apply dllexport to the
definition, which leads to the mlir_async_runtime.dll containing no
definitions, and the mlir_async_runtime.lib not being generated.

This patch moves the namespace to cover the definitions, and thus
generates the dll correctly on Windows with cl.exe.

This was tested with Visual Studio C++ 19.28.29336.

Differential Revision: https://reviews.llvm.org/D95386
The file was modifiedmlir/lib/ExecutionEngine/AsyncRuntime.cpp
The file was modifiedmlir/include/mlir/ExecutionEngine/AsyncRuntime.h
Commit 74c94b5d9c2b19333b43684c9d60decd41543d50 by i
[test] Default clang/test to FileCheck --allow-unused-prefixes=false
The file was modifiedclang/test/lit.cfg.py
The file was removedclang/test/CodeGen/lit.local.cfg
The file was modifiedclang/test/Driver/lit.local.cfg
The file was addedclang/test/OpenMP/lit.local.cfg
The file was removedclang/test/CodeGenCXX/lit.local.cfg
The file was modifiedclang/test/Analysis/lit.local.cfg
Commit dc6fadf7082821e4144b8b7ba256889bcba6f455 by pklausler
[flang] Detect UBOUND() error on assumed-size array

UBOUND() is not allowed on the last dimension of an
assumed-size array dummy argument.

Differential Revision: https://reviews.llvm.org/D95831
The file was addedflang/test/Evaluate/folding19.f90
The file was modifiedflang/test/Semantics/spec-expr.f90
The file was modifiedflang/lib/Evaluate/fold-integer.cpp
Commit aa39ddd0a320c1d615171fef98694e5726c3fa4f by pklausler
[flang] Implement IEEE_SUPPORT_xxx inquiry functions

Implement IEEE_SUPPORT_DATATYPE() and other inquiry intrinisic
functions from the intrinsic module IEEE_ARITHMETIC, folding all of
their results to .TRUE.

Differential Revision: https://reviews.llvm.org/D95830
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
The file was modifiedflang/lib/Evaluate/fold-logical.cpp
The file was addedflang/test/Evaluate/folding18.f90
The file was modifiedflang/module/__fortran_builtins.f90
The file was modifiedflang/module/ieee_arithmetic.f90
Commit b481cd519e07b3ad2bd3e81c89b0dd8efd68d6bc by ctetreau
Ensure that InstructionCost actually implements a total ordering

Previously, operator== would consider the actual equality of the pairs
(lhs.Value, lhs.State) == (rhs.Value, rhs.State). However, if an invalid
cost was involved in a call to operator<, only the state would be
compared. Thus, it was not the case that ({2, Invalid} < {3, Invalid} ||
{2, Invalid} > {3, Invalid} || {2, Invalid} == {3, Invalid}).

This patch implements a true total ordering, where cost state is
considered first, then value. While it's not really imporant that
{2, Invalid} be considered to be less than {3, Invalid}, it's not a
problem either. This patch also implements operator== in terms of
operator<, so the two definitions will be kept in sync.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D95803
The file was modifiedllvm/unittests/Support/InstructionCostTest.cpp
The file was modifiedllvm/include/llvm/Support/InstructionCost.h
Commit d3950072161f067ef4f3bd8b86ec37c97813b97d by eschweitz
[flang][NFC] Update #include.

Differential Revision: https://reviews.llvm.org/D95882
The file was modifiedflang/include/flang/Optimizer/CodeGen/CodeGen.h
Commit 3d89b3cbec230633e8228787819b15116c1a1730 by hoy
[CSSPGO] Introducing distribution factor for pseudo probe.

Sample re-annotation is required in LTO time to achieve a reasonable post-inline profile quality. However, we have seen that such LTO-time re-annotation degrades profile quality. This is mainly caused by preLTO code duplication that is done by passes such as loop unrolling, jump threading, indirect call promotion etc, where samples corresponding to a source location are aggregated multiple times due to the duplicates. In this change we are introducing a concept of distribution factor for pseudo probes so that samples can be distributed for duplicated probes scaled by a factor. We hope that optimizations duplicating code well-maintain the branch frequency information (BFI) based on which probe distribution factors are calculated. Distribution factors are updated at the end of preLTO pipeline to reflect an estimated portion of the real execution count.

This change also introduces a pseudo probe verifier that can be run after each IR passes to detect duplicated pseudo probes.

A saturated distribution factor stands for 1.0. A pesudo probe will carry a factor with the value ranged from 0.0 to 1.0. A 64-bit integral distribution factor field that represents [0.0, 1.0] is associated to each block probe. Unfortunately this cannot be done for callsite probes due to the size limitation of a 32-bit Dwarf discriminator. A 7-bit distribution factor is used instead.

Changes are also needed to the sample profile inliner to deal with prorated callsite counts. Call sites duplicated by PreLTO passes, when later on inlined in LTO time, should have the callees’s probe prorated based on the Prelink-computed distribution factors. The distribution factors should also be taken into account when computing hotness for inline candidates. Also, Indirect call promotion results in multiple callisites. The original samples should be distributed across them. This is fixed by adjusting the callisites' distribution factors.

Reviewed By: wmi

Differential Revision: https://reviews.llvm.org/D93264
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/lib/Transforms/IPO/SampleProfileProbe.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-profile.ll
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-inline.ll
The file was modifiedclang/test/CodeGen/pseudo-probe-emit.c
The file was modifiedllvm/include/llvm/Transforms/IPO/SampleProfileProbe.h
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
The file was modifiedllvm/lib/IR/PseudoProbe.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-verify.ll
The file was modifiedllvm/include/llvm/IR/PseudoProbe.h
The file was modifiedllvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/include/llvm/Passes/StandardInstrumentations.h
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/test/Transforms/SampleProfile/pseudo-probe-update.ll
The file was addedllvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-update.prof
The file was modifiedllvm/lib/Passes/StandardInstrumentations.cpp
Commit e2bd29a0d680158a66472859a18af0f1d450bbe1 by eschweitz
[flang][NFC] Update the CG rewrite pass.
Add description and dependencies.

Differential Revision: https://reviews.llvm.org/D95888
The file was modifiedflang/include/flang/Optimizer/CodeGen/CGPasses.td
Commit ec10f0660963c77413f31a9b232b453f09425387 by riddleriver
[mlir][Pattern] Create a new IRRewriter class to enable sharing code with pattern rewrites

This revision adds two new classes, RewriterBase and IRRewriter. RewriterBase is a new shared base class between IRRewriter and PatternRewriter. PatternRewriter will continue to be the base class used to perform rewrites within a rewrite pattern. IRRewriter on the other hand, is a new class that allows for tracking IR rewrites from outside of a rewrite pattern. In this revision all of the old API from PatternRewriter is moved to RewriterBase, but the distinction between IRRewriter and PatternRewriter is kept on the chance that a necessary API divergence happens in the future.

Currently if you want to have some utility that transforms a piece of IR and share it between pattern and non-pattern code, you have to duplicate it. This revision enables the creation of utilities that can be invoked from rewrite patterns and normal transformation code:

```c++
void someSharedUtility(RewriterBase &rewriter, ...) {
  // Some interesting IR mutation here.
}

// Some RewritePattern
LogicalResult MyPattern::matchAndRewrite(Operation *op, PatternRewriter &rewriter) {
  ...
  someSharedUtility(rewriter, ...);
  ...
}

// Some Pass
void MyPass::runOnOperation() {
  ...
  IRRewriter rewriter(...);
  someSharedUtility(rewriter, ...);
}
```

Differential Revision: https://reviews.llvm.org/D94638
The file was modifiedmlir/include/mlir/IR/PatternMatch.h
The file was modifiedmlir/lib/IR/PatternMatch.cpp
Commit ff1147c3635685ba6aefbdc9394300adb5404595 by ctetreau
Revert "Ensure that InstructionCost actually implements a total ordering"

This reverts commit b481cd519e07b3ad2bd3e81c89b0dd8efd68d6bc.
The file was modifiedllvm/unittests/Support/InstructionCostTest.cpp
The file was modifiedllvm/include/llvm/Support/InstructionCost.h
Commit 619e2e095fb1cd1e60b745cf1a10af9f67a4cd41 by davelee.com
[lldb] Convert assertTrue(a == b) to assertEqual(a, b)

Convert `assertTrue(a == b)` to `assertEqual(a, b)` to produce better failure messages.

These were mostly done via regex search & replace, with some manual fixes.

Differential Revision: https://reviews.llvm.org/D95813
The file was modifiedlldb/test/API/functionalities/breakpoint/serialize/TestBreakpointSerialization.py
The file was modifiedlldb/test/API/functionalities/return-value/TestReturnValue.py
The file was modifiedlldb/test/API/lang/c/stepping/TestStepAndBreakpoints.py
The file was modifiedlldb/test/API/lang/objc/foundation/TestObjectDescriptionAPI.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_ignore_count/TestBreakpointIgnoreCount.py
The file was modifiedlldb/test/API/functionalities/type_get_module/TestTypeGetModule.py
The file was modifiedlldb/test/API/python_api/symbol-context/TestSymbolContext.py
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/atomic/TestLibCxxAtomic.py
The file was modifiedlldb/test/API/lang/cpp/class_static/TestStaticVariables.py
The file was modifiedlldb/test/API/tools/lldb-vscode/breakpoint-events/TestVSCode_breakpointEvents.py
The file was modifiedlldb/test/API/python_api/sbdata/TestSBData.py
The file was modifiedlldb/test/API/python_api/value/linked_list/TestValueAPILinkedList.py
The file was modifiedlldb/test/API/python_api/frame/TestFrames.py
The file was modifiedlldb/test/API/python_api/type/TestTypeList.py
The file was modifiedlldb/test/API/functionalities/conditional_break/TestConditionalBreak.py
The file was modifiedlldb/test/API/python_api/watchpoint/TestWatchpointIter.py
The file was modifiedlldb/test/API/tools/lldb-server/registers-target-xml-reading/TestGdbRemoteTargetXmlPacket.py
The file was modifiedlldb/test/API/python_api/event/TestEvents.py
The file was modifiedlldb/test/API/python_api/thread/TestThreadAPI.py
The file was modifiedlldb/test/API/lang/c/bitfields/TestBitfields.py
The file was modifiedlldb/test/API/functionalities/tty/TestTerminal.py
The file was modifiedlldb/test/API/python_api/frame/inlines/TestInlinedFrame.py
The file was modifiedlldb/test/API/python_api/watchpoint/TestSetWatchpoint.py
The file was modifiedlldb/test/API/python_api/process/io/TestProcessIO.py
The file was modifiedlldb/test/API/tools/lldb-vscode/module/TestVSCode_module.py
The file was modifiedlldb/test/API/tools/lldb-vscode/variables/TestVSCode_variables.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
The file was modifiedlldb/test/API/functionalities/data-formatter/vector-types/TestVectorTypesFormatting.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_in_delayslot/TestAvoidBreakpointInDelaySlot.py
The file was modifiedlldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py
The file was modifiedlldb/test/API/commands/register/register/register_command/TestRegisters.py
The file was modifiedlldb/test/API/python_api/target/TestTargetAPI.py
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-synthval/TestDataFormatterSynthVal.py
The file was modifiedlldb/test/API/python_api/lldbutil/iter/TestLLDBIterator.py
The file was modifiedlldb/test/API/python_api/disassemble-raw-data/TestDisassemble_VST1_64.py
The file was modifiedlldb/test/API/python_api/lldbutil/frame/TestFrameUtils.py
The file was modifiedlldb/test/API/functionalities/exec/TestExec.py
The file was modifiedlldb/test/API/python_api/process/read-mem-cstring/TestReadMemCString.py
The file was modifiedlldb/test/API/python_api/function_symbol/TestDisasmAPI.py
The file was modifiedlldb/test/API/python_api/function_symbol/TestSymbolAPI.py
The file was modifiedlldb/test/API/python_api/watchpoint/watchlocation/TestSetWatchlocation.py
The file was modifiedlldb/test/API/commands/watchpoints/watchpoint_events/TestWatchpointEvents.py
The file was modifiedlldb/test/API/lang/cpp/class_types/TestClassTypes.py
The file was modifiedlldb/test/API/lang/cpp/dynamic-value/TestCppValueCast.py
The file was modifiedlldb/test/API/terminal/TestSTTYBeforeAndAfter.py
The file was modifiedlldb/test/API/lang/cpp/template/TestTemplateArgs.py
The file was modifiedlldb/test/API/lang/objc/objc-checker/TestObjCCheckers.py
The file was modifiedlldb/test/API/python_api/watchpoint/watchlocation/TestTargetWatchAddress.py
The file was modifiedlldb/test/API/lang/objc/foundation/TestSymbolTable.py
The file was modifiedlldb/test/API/python_api/watchpoint/condition/TestWatchpointConditionAPI.py
The file was modifiedlldb/test/API/lang/objc/foundation/TestObjCMethods.py
The file was modifiedlldb/test/API/lang/objc/objc-class-method/TestObjCClassMethod.py
The file was modifiedlldb/test/API/lang/objc/blocks/TestObjCIvarsInBlocks.py
The file was modifiedlldb/test/API/python_api/value/TestValueAPI.py
The file was modifiedlldb/test/API/tools/lldb-vscode/console/TestVSCode_console.py
Commit bab74864168bb5e28ecbc0294fe1095d8da7f569 by rnk
Disable CFI in __get_elem to allow casting a pointer to uninitialized memory

Fixes usage of shared_ptr with CFI enabled, which is llvm.org/pr48993.

Differential Revision: https://reviews.llvm.org/D95827
The file was modifiedlibcxx/include/memory
Commit 29fffff8d36ab722345c8697ec67c778c315faa7 by joker.eph
Revert "Fix namespace for MLIR Async Runtime"

This reverts commit b7d80058ff4649d1a15ef930269458dbb17145d9.

The mlir-windows buildbot is broken.
The file was modifiedmlir/include/mlir/ExecutionEngine/AsyncRuntime.h
The file was modifiedmlir/lib/ExecutionEngine/AsyncRuntime.cpp
Commit 3fb83853791cabd08fbc6cd35ed2b82c0ffcc2d6 by Louis Dionne
[libc++] Add new queues for specific macOS system versions

This will allow running back-deployment testing on macOS only on systems
running the right version of macOS. For the time being, we're cheating
because we don't have actual machines running older than 10.15.
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
The file was modifiedlibcxx/utils/ci/macos-ci-setup
Commit 0c71c914faa371ba502a2e1835f763104837cb9f by martin
[libcxx] Implement the current_path function for windows

Differential Revision: https://reviews.llvm.org/D91169
The file was modifiedlibcxx/src/filesystem/posix_compat.h
The file was modifiedlibcxx/src/filesystem/operations.cpp
Commit 83d705adb2e043e576c9cbaf9709795bc69fe5cf by martin
[libcxx] Implement the canonical function for windows

Differential Revision: https://reviews.llvm.org/D91170
The file was modifiedlibcxx/src/filesystem/posix_compat.h
The file was modifiedlibcxx/src/filesystem/operations.cpp
Commit d8e90716dfd186943359c7ade83cc2d1d247f140 by flo
[ConstraintElimination] Skip pointer casts.

We should be able to look through pointer casts that do not impact the
value.
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp
The file was modifiedllvm/test/Transforms/ConstraintElimination/pointercast.ll
Commit e1a4322f8136788228d915a7384c5679b39dfeed by jianzhouzh
[dfsan] Clean TLS after sigaction callbacks

DFSan uses TLS to pass metadata of arguments and return values. When an
instrumented function accesses the TLS, if a signal callback happens, and
the callback calls other instrumented functions with updating the same TLS,
the TLS is in an inconsistent state after the callback ends. This may cause
either under-tainting or over-tainting.

This fix follows MSan's workaround.
  https://github.com/llvm/llvm-project/commit/cb22c67a21e4b5e1ade65141117a70be318be072
It simply resets TLS at restore. This prevents from over-tainting. Although
under-tainting may still happen, a taint flow can be found eventually if we
run a DFSan-instrumented program multiple times. The alternative option is
saving the entire TLS. However the TLS storage takes 2k bytes, and signal calls
could be nested. So it does not seem worth.

This diff fixes sigaction. A following diff will be fixing signal.

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D95642
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
The file was modifiedcompiler-rt/lib/dfsan/dfsan.h
The file was addedcompiler-rt/test/dfsan/sigaction_stress_test.c
The file was modifiedcompiler-rt/lib/dfsan/dfsan_custom.cpp
The file was modifiedcompiler-rt/lib/dfsan/dfsan.cpp
The file was addedcompiler-rt/test/dfsan/sigaction.c
Commit 32e98f05fe108e7b25dcf2031c499b96a1436e1d by richard
Diagnose if a SLEB128 is too large to fit in an int64_t.

Previously we'd hit UB due to an invalid left shift operand.

Also fix the WASM emitter to properly use SLEB128 encoding instead of
ULEB128 encoding for signed fields so that negative numbers don't
result in overly-large values that we can't read back any more.

In passing, don't diagnose a non-canonical ULEB128 that fits in a uint64_t but
has redundant trailing zero bytes.

Reviewed By: dblaikie, aardappel

Differential Revision: https://reviews.llvm.org/D95510
The file was modifiedllvm/include/llvm/Support/LEB128.h
The file was modifiedllvm/lib/ObjectYAML/WasmEmitter.cpp
The file was modifiedllvm/unittests/Support/LEB128Test.cpp
Commit 9dc06762470cb5a6cde8de5833cb75262e1bacb0 by 31459023+hctim
[GWP-ASan] Add aligned allocations.

Adds a new allocation API to GWP-ASan that handles size+alignment
restrictions.

Differential Revision: https://reviews.llvm.org/D94830
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
The file was modifiedcompiler-rt/lib/gwp_asan/crash_handler.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.h
The file was modifiedcompiler-rt/lib/gwp_asan/tests/alignment.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/common.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/tests/crash_handler_api.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/tests/basic.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/utilities.h
The file was modifiedcompiler-rt/lib/gwp_asan/common.h
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/options.inc
The file was removedcompiler-rt/lib/gwp_asan/utilities.cpp
Commit 30973f6fe01cc0a9624147466f0c54b91a1b61d7 by 31459023+hctim
[GWP-ASan] Add locking around unwinder for atfork protection.

Unwinders (like libc's backtrace()) can call their own locks (like the
libdl lock). We need to let the unwinder release the locks before
forking. Wrap a new lock around the unwinder for atfork protection.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D95889
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.h
Commit 0dcf3324cfb4429e85b54e857f9bb86f423ffc5e by 31459023+hctim
Revert "[GWP-ASan] Add aligned allocations."

This reverts commit 9dc06762470cb5a6cde8de5833cb75262e1bacb0.

Should not have been committed, was a bad rebase. Review still
continuing on D94830.
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.h
The file was modifiedcompiler-rt/lib/gwp_asan/tests/crash_handler_api.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/crash_handler.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/utilities.h
The file was modifiedcompiler-rt/lib/gwp_asan/options.inc
The file was addedcompiler-rt/lib/gwp_asan/utilities.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/common.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/tests/basic.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
The file was modifiedcompiler-rt/lib/gwp_asan/common.h
The file was modifiedcompiler-rt/lib/gwp_asan/tests/alignment.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.cpp
Commit 4f58b1bd29747ff491148ef8e27bf310b7f07d97 by plotfi
[AArch64] Homogeneous Prolog and Epilog Size Optimization

Second land attempt. MachineVerifier DefRegState expensive check errors fixed.

Prologs and epilogs handle callee-save registers and tend to be irregular with
different immediate offsets that are not often handled by the MachineOutliner.
Commit D18619/a5335647d5e8 (combining stack operations) stretched irregularity
further.

This patch tries to emit homogeneous stores and loads with the same offset for
prologs and epilogs respectively. We have observed that this canonicalizes
(homogenizes) prologs and epilogs significantly and results in a greatly
increased chance of outlining, resulting in a code size reduction.

Despite the above results, there are still size wins to be had that the
MachineOutliner does not provide due to the special handling X30/LR. To handle
the LR case, his patch custom-outlines prologs and epilogs in place. It does
this by doing the following:

  * Injects HOM_Prolog and HOM_Epilog pseudo instructions during a Prolog and
    Epilog Injection Pass.
  * Lowers and optimizes said pseudos in a AArchLowerHomogneousPrologEpilog Pass.
  * Outlined helpers are created on demand. Identical helpers are merged by the linker.
  * An opt-in flag is introduced to enable this feature. Another threshold flag
    is also introduced to control the aggressiveness of outlining for application's need.

This reduced an average of 4% of code size on LLVM-TestSuite/CTMark targeting arm64/-Oz.

Differential Revision: https://reviews.llvm.org/D76570
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was addedllvm/lib/Target/AArch64/AArch64LowerHomogeneousPrologEpilog.cpp
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-frame-tail.ll
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-bad-outline.mir
The file was addedllvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-no-helper.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
Commit 2569ab4deb400206fc6c1347a3fab0e042860b82 by llvmgnsyncbot
[gn build] Port 4f58b1bd2974
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit dd4dbad87bd0cf67760a5786d760efdee41b20b0 by aeubanks
[test][NewPM] Pin various tests to the legacy PM

tut-simplify-cfg hasn't been ported to the new PM.
llvm-lto2's -enable-new-pm defaults to the CMake flag, so the legacy PM extension test needs to be pinned.

Reviewed By: MaskRay, ychen

Differential Revision: https://reviews.llvm.org/D95898
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg3-phis.ll
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg5-del-phis-for-dead-block.ll
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg6-dead-self-loop.ll
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg-blockaddress.ll
The file was modifiedllvm/test/Feature/load_extension.ll
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg4-multiple-duplicate-cfg-updates.ll
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg1.ll
The file was modifiedllvm/test/Examples/IRTransforms/SimplifyCFG/tut-simplify-cfg2-dead-block-order.ll
Commit efc5926c20602cb40b86e8c592014103224994e9 by pklausler
[flang] Add TypeAndShape::MeasureElementSizeInBytes()

Split up MeasureSizeInBytes() so that array element sizes can be
calculated accurately; use the new API in some places where
DynamicType::MeasureSizeInBytes() was being used but the new
API performs better due to TypeAndShape having precise CHARACTER
length information.

Differential Revision: https://reviews.llvm.org/D95897
The file was modifiedflang/lib/Evaluate/fold-integer.cpp
The file was modifiedflang/include/flang/Evaluate/characteristics.h
The file was modifiedflang/lib/Semantics/compute-offsets.cpp
The file was modifiedflang/lib/Evaluate/characteristics.cpp
The file was modifiedflang/lib/Evaluate/shape.cpp
Commit eec87db2a66dcc52ce8c89433631a6a2867fd508 by i
[FileCheck] Make --allow-unused-prefixes cl::ZeroOrMore

cl::ZeroOrMore allows the option to be specified multiple times, which makes
downstream projects possible to specify a default value in lit configuration
while some tests can override the value.
The file was modifiedllvm/test/FileCheck/allow-unused-prefixes.txt
The file was modifiedllvm/utils/FileCheck/FileCheck.cpp
Commit cf5c517c05e056ab083770b8baed1897b5fcac10 by diego.caballero
[mlir][Vector] Add lowering to LLVM for vector.bitcast

Add the conversion pattern for vector.bitcast to lower it to
the LLVM Dialect.

Reviewed By: ThomasRaoux, aartbik

Differential Revision: https://reviews.llvm.org/D95579
The file was modifiedmlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
Commit 5b7619c90b1c0cfc7f5e67053dc55dca56afbf43 by antiagainst
[mlir] Fix scf.for single iteration canonicalization check

We should be check whether lb + step >= ub to determine
whether this is a single iteration. Previously we were
checking lb + lb >= ub.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D95440
The file was modifiedmlir/lib/Dialect/SCF/SCF.cpp
The file was modifiedmlir/test/Dialect/SCF/canonicalize.mlir
The file was modifiedmlir/test/Dialect/Linalg/fusion.mlir
Commit 2668714747c5a35fcdce45fb2d09d73fa4a46134 by sivachandra
[libc] Add hardware implementations of ceil and ceilf for aarch64.

This change also introduces a new source layout for adding machine
specific and generic implementations. To keep the scope of this change
small, this new pattern is only applied for ceil, ceilf and ceill.
Follow up changes will switch all math functions in to the new pattern.

Reviewed By: lntue

Differential Revision: https://reviews.llvm.org/D95850
The file was addedlibc/src/math/aarch64/ceilf.cpp
The file was addedlibc/src/math/generic/CMakeLists.txt
The file was modifiedlibc/src/math/CMakeLists.txt
The file was removedlibc/src/math/ceilf.cpp
The file was addedlibc/src/math/aarch64/CMakeLists.txt
The file was modifiedlibc/test/src/math/CMakeLists.txt
The file was removedlibc/src/math/ceil.cpp
The file was addedlibc/src/math/generic/ceilf.cpp
The file was addedlibc/test/src/math/generic/CMakeLists.txt
The file was removedlibc/src/math/ceill.cpp
The file was addedlibc/src/math/generic/ceil.cpp
The file was addedlibc/src/math/generic/ceill.cpp
The file was addedlibc/src/math/aarch64/ceil.cpp
Commit 02d4b365bf4f8c2cb56e5612902f6c3bb4316493 by Jessica Paquette
[GlobalISel] Check if branches use the same MBB in matchOptBrCondByInvertingCond

If the G_BR + G_BRCOND in this combine use the same MBB, then it will infinite
loop. Don't allow that to happen.

Differential Revision: https://reviews.llvm.org/D95895
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-br.mir
Commit 1e377a273f59375d8e6a424f66f069b3adfa1ca4 by Matthew.Arsenault
AMDGPU: Don't consider global pressure when bundling soft clauses

This should only consider whether the pressure impact of the bundle at
the given point in the program will decrease the occupancy. High VGPR
pressure was incorrectly blocking the formation of scalar bundles, and
vice versa. This was also blocking bundling from high pressure
situations at other points in the program.
The file was addedllvm/test/CodeGen/AMDGPU/soft-clause-bundle-local-pressure.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegPressure.h
Commit af2cbe8effcade9913c0f2cff295f664f185df54 by Matthew.Arsenault
AMDGPU: Fix adding extra operands for i128 asm constraints

We don't register i128 as a legal type with addRegisterClass, but it
appears in the list of legal register types. This inconsistency
resulted in the asm constraint lowering trying to use 2 128-bit
registers for these operands. This would leave behind a dead def that
would waste registers.

Regresses GlobalISel tests for i128 load/store, but these aren't very
important right now. Ideally these would not depend on the list of
register types.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local-128.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-flat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-global.mir
The file was addedllvm/test/CodeGen/AMDGPU/inline-asm.i128.ll
Commit 608ee55a317f9f7307c90c720c3ab019926cdb49 by medismail.bennani
[lldb/test] Stop recording fundamental return types (NFC)

It seems that recording fundamental return type is bogus.

This can trigger asserts when running a test with reproducers so this
patch updates the `SBTarget::IsLoaded` test to stop recording them.

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

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedlldb/source/API/SBTarget.cpp
Commit b0869a7d72f121b77d48d6496c6c3f00dd4731da by czhengsz
[PowerPC] [NFC] fix wording typos

Post commit comments address for D92071.
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
Commit 8178a55b25704e150edf4c595a4283bc757c8fb8 by nullptr.cpp
[VFS] Fix Wreturn-type gcc warning (NFC)

GCC warning:
```
In file included from /llvm-project/llvm/lib/Support/VirtualFileSystem.cpp:13:
/llvm-project/llvm/include/llvm/Support/VirtualFileSystem.h: In static member function ‘static bool llvm::vfs::RedirectingFileSystem::RemapEntry::classof(const llvm::vfs::RedirectingFileSystem::Entry*)’:
/llvm-project/llvm/include/llvm/Support/VirtualFileSystem.h:681:5: warning: control reaches end of non-void function [-Wreturn-type]
  681 |     }
      |     ^
```
The file was modifiedllvm/include/llvm/Support/VirtualFileSystem.h
Commit fb7c36636ded085e87daa4010f1dfc73a748c794 by i
[yaml2obj][wasm] Support numeric relocation type

Differential Revision: https://reviews.llvm.org/D95661
The file was modifiedllvm/test/ObjectYAML/wasm/event_section.yaml
The file was modifiedllvm/lib/ObjectYAML/WasmYAML.cpp
Commit ad50c8633321a2a76b6e49daf57c7eaea4494536 by nullptr.cpp
[clang-format] Fix MSVC "unsafe use of type 'bool' in operation" warning (NFC)

MSVC warning:
```
\llvm-project\clang\lib\Format\BreakableToken.cpp(1002): warning C4804: '-': unsafe use of type 'bool' in operation
```
The file was modifiedclang/lib/Format/BreakableToken.cpp
Commit c90c261e44e7251163602f5e0dab10c8a374a90c by nullptr.cpp
[CSSPGO] Fix MSVC initializing truncation warning (NFC)

MSVC warning:
```
\llvm-project\llvm\include\llvm\Transforms\IPO\SampleProfileProbe.h(65): warning C4305: 'initializing': truncation from 'double' to 'const float'
```
The file was modifiedllvm/include/llvm/Transforms/IPO/SampleProfileProbe.h
Commit de305b04257d01fc08bb27a20f1cfe586e1c0379 by serguei.katkov
[Statepoint] Handle 'undef' operand tied to def

FixupStatepoints pass does not take into account the undef use
it skips may have a tied def. So when defs are handled pass
considers that tied-use should be spilled and triggers an assert.

FixupStatepoints should skip undef def as well.

Reviewers: reames, dantrushin
Reviewed By: dantrushin
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D95858
The file was addedllvm/test/CodeGen/X86/statepoint-fixup-undef-def.mir
The file was modifiedllvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
Commit c97592c5df09850404a9ddbfb614c7df271d1dfe by n.james93
[clang-tidy] Fix crash in readability-identifier-naming check

`isParamInMainLikeFunction` didn't check if the function had an identifer name before calling getName() which could lead to an assert.
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
Commit 3f568e1fbb4163cd7ddba3d0e9fff0d7415c38b2 by jianzhouzh
[dfsan] Wrap memmove

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D95883
The file was modifiedcompiler-rt/lib/dfsan/dfsan_custom.cpp
The file was modifiedcompiler-rt/lib/dfsan/done_abilist.txt
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
Commit 4454a9cd77e7481f6a2d75b4986fe7fbc364204d by n.james93
[NFC] Fix typo in comment
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
Commit 98b71c53517f89017c765ac73259cb136f5e4955 by aeubanks
[Docs] Update HowToSubmitABug

With the new PM imminent, bugpoint will diverge from opt, meaning it may
not reproduce a crash with the same arguments passed to opt. We need to
specify alternatives to bugpoint for reducing crashes.

I looked at the rest of the document to see if anything could be
improved. Major highlights:

* Run -Xclang -disable-llvm-passes instead of -O0 for skipping IR passes
* Mention the files that clang dumps on a crash
* Remove outdated reference to `delta` and plug `creduce` instead
* Mention llvm-reduce on top of bugpoint
* Mention --print-before-all --print-module-scope
* Mention sanitizers in addition to valgrind
* Mention opt-bisect for miscompiles

Reviewed By: fhahn, MaskRay

Differential Revision: https://reviews.llvm.org/D95578
The file was modifiedllvm/docs/HowToSubmitABug.rst
Commit c7189ba78578d029e0162720319de3c1c6fc348b by kai.wang
[RISCV] Add new vector instructions in v0.10.

* Add new vector instructions in v0.10.
- load/store for mask value vle1.v vse1.v
- vsetivli for 0-31 immediate vector length.
* Rename vector instructions in v0.10.
- vfrsqrte7 -> vfrsqrt7
- vfrece7 -> vfrec7
* Reserve memory width encodings for EEW>128b.

Differential Revision: https://reviews.llvm.org/D95781
The file was modifiedllvm/test/MC/RISCV/rvv/zvlsseg.s
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/test/MC/RISCV/rvv/vsetvl.s
The file was addedllvm/test/CodeGen/RISCV/rvv/vfrsqrt7-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVCleanupVSETVLI.cpp
The file was addedllvm/test/CodeGen/RISCV/rvv/vse1-rv32.ll
The file was removedllvm/test/CodeGen/RISCV/vfrece7-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfrsqrt7-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/cleanup-vsetivli.mir
The file was modifiedllvm/test/MC/RISCV/rvv/fothers.s
The file was removedllvm/test/CodeGen/RISCV/vfrsqrte7-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was removedllvm/test/CodeGen/RISCV/vfrsqrte7-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vle1-rv64.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrFormatsV.td
The file was addedllvm/test/CodeGen/RISCV/rvv/vfrec7-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vse1-rv64.ll
The file was modifiedllvm/test/MC/RISCV/rvv/store.s
The file was modifiedllvm/test/CodeGen/RISCV/rvv/rv64-vsetvli-intrinsics.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vle1-rv32.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsRISCV.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoV.td
The file was addedllvm/test/CodeGen/RISCV/rvv/vfrec7-rv64.ll
The file was modifiedllvm/test/MC/RISCV/rvv/invalid.s
The file was modifiedllvm/test/MC/RISCV/rvv/load.s
The file was removedllvm/test/CodeGen/RISCV/vfrece7-rv64.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/rv32-vsetvli-intrinsics.ll
Commit fcf03e728007fa4aa1f64985a3a9bf91fd476d78 by Pushpinder.Singh
[OpenMP] Add OpenMP offloading toolchain for AMDGPU

This patch adds AMDGPUOpenMPToolChain for supporting OpenMP
offloading to AMD GPU's.

Originally authored by Greg Rodgers

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D94961
The file was addedclang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
The file was addedclang/lib/Driver/ToolChains/AMDGPUOpenMP.h
The file was modifiedclang/lib/Driver/Driver.cpp
The file was addedclang/test/Driver/amdgpu-openmp-toolchain.c
The file was modifiedclang/lib/Driver/CMakeLists.txt
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.h
Commit 63baeec66e7fd07c2085eee42663fae2b05a9917 by kai.wang
[RISCV] Load/store vector mask types.

Use vle1.v/vse1.v to load/store vector mask types.

Differential Revision: https://reviews.llvm.org/D93364
The file was addedllvm/test/CodeGen/RISCV/rvv/load-mask.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
Commit b86e9c83a6d1eea6d78718051210ac7bbc04bc31 by llvmgnsyncbot
[gn build] Port fcf03e728007
The file was modifiedllvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
Commit c18231e3dda0c7bd82f3e8bbdc5d55d6ddf767ed by kazu
[CodeGen] Drop unnecessary const from return types (NFC)

Identified with const-return-type.
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
Commit dc3d5453bc5fcaeb321a195c7dccb6dc8639ff9f by kazu
[Transforms/Utils] Use range-based for loops (NFC)
The file was modifiedllvm/lib/Transforms/Utils/SSAUpdater.cpp
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
The file was modifiedllvm/lib/Transforms/Utils/BasicBlockUtils.cpp
Commit 511c9a76fb98efda5019b4e6d07bea395ce1df78 by kazu
[AsmPrinter] Use ListSeparator (NFC)
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
Commit 97ba5cde52664200819446c1a18de28faf2ed1c6 by phosek
[InstrProfiling] Use !associated metadata for counters, data and values

C identifier name input sections such as __llvm_prf_* are GC roots so
they cannot be discarded. In LLD, the SHF_LINK_ORDER flag overrides the
C identifier name semantics.

The !associated metadata may be attached to a global object declaration
with a single argument that references another global object, and it
gets lowered to SHF_LINK_ORDER flag. When a function symbol is discarded
by the linker, setting up !associated metadata allows linker to discard
counters, data and values associated with that function symbol.

Note that !associated metadata is only supported by ELF, it does not have
any effect on non-ELF targets.

Differential Revision: https://reviews.llvm.org/D76802
The file was modifiedcompiler-rt/test/CMakeLists.txt
The file was modifiedcompiler-rt/test/profile/CMakeLists.txt
The file was addedcompiler-rt/test/profile/instrprof-gc-sections.c
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo_mexits.ll
The file was addedllvm/test/Transforms/PGOProfile/associated.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/icall.ll
The file was modifiedllvm/include/llvm/Transforms/Instrumentation.h
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo.ll
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
Commit 40117b700f723a27b90989a429ceb66c0873b161 by martin
[libcxx] Implement the permissions function for windows

Differential Revision: https://reviews.llvm.org/D91171
The file was modifiedlibcxx/src/filesystem/posix_compat.h
The file was modifiedlibcxx/src/filesystem/operations.cpp
Commit cdc60a3b9aa523b49329a7a5e4c1774d3b9e3db9 by martin
[libcxx] Implement the read_symlink function for windows

Differential Revision: https://reviews.llvm.org/D91172
The file was modifiedlibcxx/src/filesystem/posix_compat.h
The file was modifiedlibcxx/src/filesystem/operations.cpp
Commit 08274d7d5db7c4dddc271b84239a01cd116e42b8 by sam.mccall
[clang-include-fixer] Pre-reserve vector size. NFC
The file was modifiedclang-tools-extra/clang-include-fixer/SymbolIndexManager.cpp
Commit fae6d129dac27fa8c98c1680ac79af7b453ec7af by pengfei.wang
[X86] Correct types in tablegen multiclasses found by D95874.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D95926
The file was modifiedllvm/lib/Target/X86/X86InstrFMA.td
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/lib/Target/X86/X86InstrFPStack.td
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.td
Commit d4626eb0bd5b9331b2f62cadd726eca7c2e7890a by david.sherwood
[VPlan][NFC] Introduce constructors for VPIteration

This patch adds constructors to VPIteration as a cleaner way of
initialising the struct and replaces existing constructions of
the form:

  {Part, Lane}

with

  VPIteration(Part, Lane)

I have also added a default constructor, which is used by VPlan.cpp
when deciding whether to replicate a block or not.

This refactoring will be required in a later patch that adds more
members and functions to VPIteration.

Differential Revision: https://reviews.llvm.org/D95676
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.h
Commit 369f7de3135a517a69c45084d4b175f7b0d5e6f5 by andre.simoesdiasvieira
[LIBC] Add optimized memcpy routine for AArch64

This patch adds an optimized memcpy routine for AArch64 tuned and benchmarked
on Neoverse-N1.

Differential Revision: https://reviews.llvm.org/D92235
The file was addedlibc/src/string/aarch64/memcpy.cpp
The file was modifiedlibc/src/string/CMakeLists.txt
The file was addedlibc/src/string/aarch64/CMakeLists.txt
Commit 2cbcf3e297d1ca210118e21fca6c5e55e22f23be by caroline.concatto
[AArch64][SVE]Add cost model for broadcast shuffle

This patch adds a cost model for  SK_Broadcast in
AArch64TTIImpl::getShuffleCost with scalable vector.
Without this patch, the scalable vector type relies on  BasicTTIImpl cost
implementation and assert.

Differential Revision: https://reviews.llvm.org/D95598
The file was addedllvm/test/Analysis/CostModel/AArch64/sve-shuffle-broadcast.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Commit d49efdc9696afee4b972c54bc3678b28c5700047 by sebastian.neubauer
Revert "[AMDGPU] Add a new Clamp Pattern to the GlobalISel Path."

This reverts commits 62af0305b7cc..677a3529d3e6 from D93708.
They cause failures in the sanitizer builds because of uninitialized
values.

A fix is in D95878, but it might take some time until this is pushed,
so reverting the changes for now.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGISel.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCombine.td
Commit d38973aa4d6a2c8be97b9781ca7325ca3eb0c40d by powerman1st
[clang][AVR] Improve avr-ld command line options

Reviewed By: dylanmckay, MaskRay

Differential Revision: https://reviews.llvm.org/D93579
The file was modifiedclang/test/Driver/avr-ld.c
The file was modifiedclang/lib/Driver/ToolChains/AVR.cpp
Commit 9caf364d69db3cd0ce0fba99dba95dbc2b646fbc by sven.vanhaastregt
[OpenCL] Add cl_khr_subgroup_ballot to TableGen BIFs

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

Also add placeholder comments for the other Extended Subgroup
Functions from the OpenCL Extension Specification.

Add a comment clarifying the scope of the test.

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

Add the builtin functions brought by the
cl_khr_subgroup_non_uniform_vote extension to
`-fdeclare-opencl-builtins`.
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
Commit 5bc6e75386e71129d3cbdcae6486a244a5301d54 by praveen
[Flang][OpenMP] Add semantic checks for invalid branches into or out of OpenMP constructs

OpenMP 4.5 - Check invalid branches into OpenMP strucutred blocks.
             Check invalid branches leaving OpenMP structured blocks.

Test cases : omp-do-cycle.f90, omp-invalid-branch.f90

Resolve related test cases marked as XFAIL

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D92735
The file was removedflang/test/Semantics/omp-parallell01.f90
The file was modifiedflang/test/Semantics/omp-taskloop01.f90
The file was modifiedflang/test/Semantics/omp-clause-validity01.f90
The file was removedflang/test/Semantics/omp-parallell02.f90
The file was addedflang/test/Semantics/omp-parallel01.f90
The file was addedflang/test/Semantics/omp-parallel02.f90
The file was modifiedflang/test/Semantics/omp-simd01.f90
The file was modifiedflang/test/Semantics/omp-task01.f90
The file was addedflang/test/Semantics/omp-do-cycle.f90
The file was modifiedflang/test/Semantics/omp-do07.f90
The file was addedflang/test/Semantics/omp-invalid-branch.f90
The file was modifiedflang/lib/Semantics/resolve-directives.cpp
The file was modifiedflang/lib/Semantics/check-directive-structure.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedflang/test/Semantics/omp-taskloop02.f90
Commit 54afcade3bbcf4a085c8a8c3c22429921420e54d by usx
[clangd] Report xref for base methods.

See: https://github.com/clangd/clangd/issues/668

```
struct A { virtual void foo() = 0; };
struct B : A { void foo() override; };
```

Find refs on `B::foo()` will show:
- decls of `A::foo()` (new)
- decls of `B::foo()`
- refs to `A::foo()` (new)
- refs to `B::foo()`.

Differential Revision: https://reviews.llvm.org/D95852
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
Commit 3fda262b7d7bdbf9db5b1d6602602733b4cf4f35 by powerman1st
[clang][AVR][NFC] Fix a typo

Fix a typo in commit d38973aa4d6a2c8be97b9781ca7325ca3eb0c40d
The file was modifiedclang/lib/Driver/ToolChains/AVR.cpp
Commit dd2dac2fd076b76e2897306ad8f95766ebddf6c3 by rengolin
Fix MLIR Async Runtime DLL on Windows

The AsyncRuntime declares prototypes for extern "C" functions inside a
namespace in the header, but not inside that namespace in the
definition. This causes Visual Studio to treat them as different
entities and thus the dllexport is ignored for the definitions.

Using the same namespace fixes this issue.

Secondly, this commit moves the dllexport to be consistent with the
JITs expectation.

This is an update to https://reviews.llvm.org/D95386 that fixes the
compile issues in old versions of Visual studio.

Differential Revision: https://reviews.llvm.org/D95933
The file was modifiedmlir/include/mlir/ExecutionEngine/AsyncRuntime.h
The file was modifiedmlir/lib/ExecutionEngine/AsyncRuntime.cpp
Commit e635feb15a91e6eeb77876031be2811e63d542f3 by anastasia.stulova
[OpenCL] Fix address space in binding of initializer lists to referencs

Prevent materializing temporaries in the address space of the references
they are bind to. The temporaries should always be in the same address
space - private for OpenCL.

Tags: #clang

Differential Revision: https://reviews.llvm.org/D95608
The file was modifiedclang/test/CodeGenOpenCLCXX/addrspace-references.cl
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/test/SemaOpenCLCXX/address-space-references.cl
Commit e48f444751cf781c42934b242b81f549da77bad0 by vince.a.bridgers
[Sema] Fix -Warray-bounds false negative when casting an out-of-bounds array item

Patch by Ilya Mirsky!

Fixes: http://llvm.org/PR44343

Reviewed By: rsmith

Differential Revision: https://reviews.llvm.org/D71714
The file was modifiedclang/test/SemaCXX/array-bounds.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/test/Parser/cxx-ambig-decl-expr.cpp
Commit 7a45f27ba156e311bf1deaa42761ec08d8e34d05 by anastasia.stulova
[OpenCL][Docs] Fix command line flag in the example.

Fixed incorrect example of clang command line with
the builtin function declarations in OpenCLSupport.

Tags: #clang
The file was modifiedclang/docs/OpenCLSupport.rst
Commit 32b7c2fa42a2fe83f9754f219b3fe07fd1e03c4f by llvm-dev
[X86][SSE] Support variable-index float/double vector insertion on SSE41+ targets (PR47924)

Extends D95779 to permit insertion into float/doubles vectors while avoiding a lot of aliased memory traffic.

The scalar value is already on the simd unit, so we only need to transfer and splat the index value, then perform the select.

SSE4 codegen is a little bulky due to the tied register requirements of (non-VEX) BLENDPS/PD but the extra moves are cheap so shouldn't be an actual problem.

Differential Revision: https://reviews.llvm.org/D95866
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/insertelement-var-index.ll
Commit 916c4121c10bc39b51754c3ac2483317568a4856 by spatel
[LoopVectorize] add test for fake min/max; NFC

This goes with the dyn_cast fix:
0fa61304d247a61

That was made after noticing that the assert was over-reaching here:
bbed5f2f8a ( D95690 )
The file was modifiedllvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
Commit 9719f17011a2d5b4020eaaa04b6346c2d10db80c by Matthew.Arsenault
AMDGPU: Move handling of allocation of fixed ABI inputs

For the fixed ABI, set this in the initial argument constructor,
rather than relying on the allocation logic to set the values. Also
stop passing them for amdgpu_gfx, since the DAG path seems to skip
these. I'm unclear on what amdgpu_gfx's expectations are.  This will
allow moving the special input registers out of the normal argument
range.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-indirect-call.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-callable.ll
Commit e59d336e75f4670b1a702c2281b3fed27ba4c426 by Abhina.Sreeskantharajan
[test] Use host platform specific error message substitution in lit tests - continued

On z/OS, other error messages are not matched correctly in lit tests.

```
EDC5121I Invalid argument.
EDC5111I Permission denied.
```

This patch adds a lit substitution to fix it.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D95808
The file was modifiedclang/test/Analysis/taint-generic.c
The file was modifiedlld/test/ELF/lto/resolution-err.ll
The file was modifiedclang/test/Format/style-on-command-line.cpp
The file was modifiedlld/test/ELF/lto/thinlto-cant-write-index.ll
The file was modifiedllvm/test/tools/yaml2obj/ELF/DWARF/debug-gnu-pubnames.yaml
The file was modifiedllvm/docs/TestingGuide.rst
The file was modifiedllvm/test/tools/llvm-ar/error-opening-permission.test
The file was modifiedllvm/test/tools/llvm-elfabi/fail-file-write.test
The file was modifiedlld/test/COFF/thinlto-emit-imports.ll
The file was modifiedlld/test/ELF/lto/thinlto-emit-imports.ll
The file was modifiedllvm/utils/lit/lit/llvm/config.py
Commit 06829034ca64b8c83a5b20d8abe5ddbfe7af0004 by aqjune
Revert "[ConstantFold] Fold more operations to poison"

This reverts commit 53040a968dc2ff20931661e55f05da2ef8b964a0 due to its
bad interaction with select i1 -> and/or i1 transformation.

This fixes:
https://bugs.llvm.org/show_bug.cgi?id=49005
https://bugs.llvm.org/show_bug.cgi?id=48435
The file was modifiedclang/test/Frontend/fixed_point_unary.c
The file was modifiedllvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-c.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/shift.ll
The file was modifiedllvm/test/Transforms/SROA/select-gep.ll
The file was modifiedllvm/test/Transforms/SROA/phi-gep.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-b.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-a.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-b.ll
The file was modifiedllvm/test/Transforms/VectorCombine/X86/insert-binop.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/vector-undef-elts-inseltpoison.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/vscale-inseltpoison.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll
The file was modifiedllvm/test/Transforms/InstCombine/icmp.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-d.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/cast.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-c.ll
The file was modifiedllvm/test/Transforms/InstSimplify/div.ll
The file was modifiedllvm/test/Transforms/InstCombine/apint-shift.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/InsertElement-inseltpoison.ll
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-fold-binop-select.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/vector-undef-elts.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-a.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll
The file was modifiedllvm/test/Transforms/InstCombine/shift-add-inseltpoison.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/InsertElement.ll
The file was modifiedllvm/test/Transforms/InstSimplify/rem.ll
The file was modifiedllvm/test/Transforms/InstCombine/shift-add.ll
The file was modifiedllvm/test/Transforms/InstCombine/select-of-bittest.ll
The file was modifiedllvm/unittests/IR/ConstantsTest.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/poison.ll
The file was modifiedllvm/test/Transforms/VectorCombine/X86/insert-binop-inseltpoison.ll
The file was modifiedllvm/test/Transforms/InstSimplify/undef.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-e.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-e.ll
The file was modifiedllvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-d.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/vscale.ll
Commit 26ec7853863842e05b5a25fadbf3ae1ffe1ae8f0 by jay.foad
[AMDGPU] Fix multiclass template parameter types. NFC.

This fixes TableGen parser errors that will be reported when D95874 is
applied.

Differential Revision: https://reviews.llvm.org/D95955
The file was modifiedllvm/lib/Target/AMDGPU/VOPCInstructions.td
Commit be0bf04b19ffa380ef2f15fefa402ac1b6d29f03 by flo
[ConstraintElimination] Add some tests with conds in loop header.

This patch adds a set of tests in which we can add the information from
the pre-header to a loop header, but currently do not do so.
The file was modifiedllvm/test/Transforms/ConstraintElimination/loops.ll
The file was modifiedllvm/test/Transforms/ConstraintElimination/dom.ll
Commit 81b69879c946533c71cc484bd8d9202bf1e34bfe by kevin.neal
[FPEnv][X86] Platform builtins edition: clang should get from the AST the metadata for constrained FP builtins

Currently clang is not correctly retrieving from the AST the metadata for
constrained FP builtins. This patch fixes that for the X86 specific builtins.

Differential Revision: https://reviews.llvm.org/D94614
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
The file was addedclang/test/CodeGen/X86/avx512dq-builtins-constrained.c
The file was modifiedclang/test/CodeGen/X86/avx512f-builtins-constrained.c
The file was modifiedclang/test/CodeGen/X86/fma-builtins-constrained.c
The file was modifiedclang/test/CodeGen/X86/sse-builtins-constrained.c
Commit 34eb0adaa9cd76f5bb0549f5a32d6ef452fe977e by pklausler
[flang] Add -fsyntax-only to f18; retain -fparse-only synonym

Now that semantics is working, the standard -fsyntax-only option of
GNU and Clang should be used as the name of the option that causes
f18 to just run the front-end.  Support both options in f18, silently
accepting the old option as a synonym for the new one (as
preferred by the code owner), and replace all instances of the
old -fparse-only option with -fsyntax-only throughout the source base.

Differential Revision: https://reviews.llvm.org/D95887
The file was modifiedflang/test/Lower/pre-fir-tree05.f90
The file was modifiedflang/test/Semantics/getdefinition04.f90
The file was modifiedflang/test/Semantics/getsymbols04.f90
The file was modifiedflang/test/Semantics/getdefinition05.f90
The file was modifiedflang/test/Flang-Driver/syntax-only.f90
The file was modifiedflang/test/Semantics/typeinfo01.f90
The file was modifiedflang/test/Semantics/getsymbols05.f90
The file was modifiedflang/test/Lower/pre-fir-tree04.f90
The file was modifiedflang/tools/f18-parse-demo/f18-parse-demo.cpp
The file was modifiedflang/test/Lower/pre-fir-tree01.f90
The file was modifiedflang/test/Flang-Driver/parse-error.f95
The file was modifiedflang/test/Semantics/getsymbols02.f90
The file was modifiedflang/test/Semantics/test_errors.sh
The file was modifiedflang/test/Semantics/missing_newline.f90
The file was modifiedflang/test/Semantics/offsets02.f90
The file was modifiedflang/test/Semantics/getdefinition02.f
The file was modifiedflang/test/Semantics/oldparam01.f90
The file was modifiedflang/docs/ImplementingASemanticCheck.md
The file was modifiedflang/test/Lower/pre-fir-tree02.f90
The file was modifiedflang/test/Semantics/getsymbols03-a.f90
The file was modifiedflang/test/Lower/pre-fir-tree03.f90
The file was modifiedflang/test/Semantics/rewrite01.f90
The file was modifiedflang/tools/f18/f18.cpp
The file was modifiedflang/test/Frontend/prescanner-diag.f90
The file was modifiedflang/test/Semantics/getsymbols01.f90
The file was modifiedflang/test/Semantics/offsets03.f90
The file was modifiedflang/test/Semantics/resolve100.f90
The file was modifiedflang/test/Semantics/call17.f90
The file was modifiedflang/test/Evaluate/test_folding.sh
The file was modifiedflang/test/Semantics/data08.f90
The file was modifiedflang/test/Semantics/data05.f90
The file was modifiedflang/test/Semantics/data09.f90
The file was modifiedflang/test/Semantics/modifiable01.f90
The file was modifiedflang/test/Semantics/test_modfile.sh
The file was modifiedflang/test/Semantics/final02.f90
The file was modifiedflang/test/Semantics/oldparam02.f90
The file was modifiedflang/test/Semantics/getdefinition03-a.f90
The file was modifiedflang/docs/Overview.md
The file was modifiedflang/tools/f18/CMakeLists.txt
The file was modifiedflang/test/Semantics/oldparam03.f90
The file was modifiedflang/test/Semantics/getdefinition01.f90
The file was modifiedflang/test/Semantics/mod-file-rewriter.f90
The file was modifiedflang/test/Semantics/empty.f90
The file was modifiedflang/test/Semantics/offsets01.f90
Commit 3562d253dacf06487bb563388fea613e49b0da14 by kparzysz
[Hexagon] Add ELF flags for Hexagon V68
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
Commit 93afc3452cd4ebdb145e309f4d82f82e2f496479 by jianzhouzh
[dfsan] Clean TLS after signal callbacks

Similar to https://reviews.llvm.org/D95642, this diff fixes signal.

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D95896
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
The file was modifiedcompiler-rt/lib/dfsan/dfsan_custom.cpp
The file was modifiedcompiler-rt/lib/dfsan/done_abilist.txt
Commit 4463e39d91c6c54e671f409ae6e170d67239c577 by SourabhSingh.Tomar
[flang][NFCI] Relpace `LoopOp` Op with `DoLoopOp` Op in FIR Dialect

Part of upstreaming effort,
PR: https://github.com/flang-compiler/f18-llvm-project/pull/296

Reviewed By: schweitz

Differential Revision: https://reviews.llvm.org/D95950
The file was modifiedflang/lib/Lower/DoLoopHelper.cpp
The file was modifiedflang/lib/Lower/IO.cpp
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.h
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
The file was modifiedflang/include/flang/Optimizer/Transforms/Passes.td
Commit ddc2f1e3fb4f8f9ae7dd130e40b60cfc775eba24 by jeremy.morse
[DWARF] Location-less inlined variables should not have DW_TAG_variable

Discussed in this thread:

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

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

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

Differential Revision: https://reviews.llvm.org/D95617
The file was modifiedllvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-loc-offset.ll
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was addedllvm/test/DebugInfo/Generic/no-empty-child-vars.ll
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-addr-class.ll
Commit daaa0e35012758121be5e97389735b1b82feb38b by flo
[VPlan] Manage induction value creation using VPValues.

This patch updates the induction value creation to use VPValues of
recipes to map the created values. This should bring is one step closer
to being able to optimize induction recipes directly in VPlan.

Currently widenIntOrFpInduction also generates vector values for a cast
of the induction, if it exists. Make this explicit by adding the cast
instruction to the values defined by the recipe.

Reviewed By: gilr

Differential Revision: https://reviews.llvm.org/D92284
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.h
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit d32deaab4d5366569c96a5ef5f7e4d1b6201dedb by jeremy.morse
Revert "[DWARF] Location-less inlined variables should not have DW_TAG_variable"

This reverts commit ddc2f1e3fb4f8f9ae7dd130e40b60cfc775eba24.

A build-bot objected:

  http://lab.llvm.org:8011/#builders/105/builds/5486
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was removedllvm/test/DebugInfo/Generic/no-empty-child-vars.ll
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-addr-class.ll
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-loc-offset.ll
The file was modifiedllvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit 3c31b78455dac6e94ba182b02ecf2a58253b0811 by tianshilei1992
[OpenMP] Fixed an issue that taskwait doesn't work on detachable task

D77609 mistakenly changed the bebavior of task waiting on detachable task that a detachable task is not waited, based on https://lists.llvm.org/pipermail/openmp-dev/2021-February/003836.html. This patch fixed it. Thank Raúl for the report.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D95798
The file was modifiedopenmp/runtime/src/kmp_tasking.cpp
The file was addedopenmp/runtime/test/tasking/bug_taskwait_detach.cpp
Commit f2879559ac11d88f1f9f043d4c0fec981ac2a9e6 by SourabhSingh.Tomar
[flang] Enable FIR types and Dialect round trip tests

Reviewed By: schweitz, mehdi_amini

Differential Revision: https://reviews.llvm.org/D95958
The file was modifiedflang/test/Fir/fir-ops.fir
The file was modifiedflang/test/Fir/fir-types.fir
Commit 34da12dd1fb327bb56f5003a727a73c78929a98d by craig.topper
[DAGCombiner] Remove (sra (shl X, C), C) if X has more than C sign bits.

If sext_inreg is supported, we will turn this into sext_inreg. That
will then remove it if there are enough sign bits. But if sext_inreg
isn't supported, we can still remove the shift pair based on sign
bits.

Split from D95890.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/Mips/atomic.ll
Commit 6038d68bafa4d6d7e53a1e35952fbec9d06234fb by Stanislav.Mekhanoshin
[AMDGPU] Added -mcpu to couple more tests. NFC.
The file was modifiedllvm/test/CodeGen/AMDGPU/skip-if-dead.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/adjust-writemask-invalid-copy.ll
Commit 477e3fe4f874b1c4d5896f3bfaf7b3b8a6d38103 by Matthew.Arsenault
Revert "AMDGPU: Don't consider global pressure when bundling soft clauses"

This reverts commit 1e377a273f59375d8e6a424f66f069b3adfa1ca4.

A regression was reported.
The file was modifiedllvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
The file was removedllvm/test/CodeGen/AMDGPU/soft-clause-bundle-local-pressure.mir
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegPressure.h
Commit d81069e796f76abc3747af646c9b6176e4a91de7 by mcgrathr
[scudo/standalone] Use zx_system_get_page_size() on Fuchsia

Fuchsia is migrating to a variable page size.

Reviewed By: hctim

Differential Revision: https://reviews.llvm.org/D95921
The file was modifiedcompiler-rt/lib/scudo/standalone/fuchsia.cpp
Commit 09fe23a61c62da68ff776ec0b69cb9c7477c9ad5 by mcgrathr
[gwp_asan] Use zx_system_get_page_size() on Fuchsia

Fuchsia is migrating to a variable page size.

Reviewed By: hctim

Differential Revision: https://reviews.llvm.org/D95920
The file was modifiedcompiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_fuchsia.cpp
Commit 5580fa10dbda49199ddc553294c0d18e0d21373a by Jonas Devlieghere
[lldb] Fix debugserver-entitlements.plist path
The file was modifiedlldb/tools/debugserver/source/CMakeLists.txt
Commit d886da042c65e7bac3dc77215abf2f29b6a87de6 by Matthew.Arsenault
RegisterCoalescer: Prune undef subranges from copy pairs in loops

If we had a pair of copies inside a loop which introduced new liveness
to a subregister which was undef before the loop, we would have a
dummy phi-only segment remaining across the loop body. Later, this
false segment would confuse RenameIndependentSubregs causing it to
introduce IMPLICIT_DEFs with broken value numbering.

It seems always adding the lanes to ShrinkMask is OK, so any
conditions should be purely a compile time filter.
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
The file was addedllvm/test/CodeGen/AMDGPU/loop-live-out-copy-undef-subrange.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/coalesce-identity-copies-undef-subregs.mir
Commit 163dcd851309d0bfbbbe0b7810335f30d88ee879 by jezng
[lld-macho] Associate each Symbol with an InputFile

This makes our error messages more informative. But the bigger motivation is for
LTO symbol resolution, which will be in an upcoming diff. The changes in this
one are largely mechanical.

Reviewed By: #lld-macho, smeenai

Differential Revision: https://reviews.llvm.org/D94316
The file was modifiedlld/test/MachO/invalid/abs-duplicate.s
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/MachO/SymbolTable.cpp
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/test/MachO/invalid/duplicate-symbol.s
The file was modifiedlld/MachO/Symbols.h
The file was modifiedlld/MachO/ExportTrie.cpp
The file was modifiedlld/MachO/Symbols.cpp
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/MachO/SymbolTable.h
Commit f843bb82c042f9e669135957bb5bd1c233c5c316 by jezng
[lld-macho] Force-loading should share code path with regular archive loads

This extends {D92539} to work even when we are loading archive
members via `-force_load`. I uncovered this issue while trying to
force-load archives containing bitcode -- we were segfaulting.

In addition to fixing the `-force_load` case, this diff also addresses
the behavior of `-ObjC` when LTO bitcode is involved -- we need to
force-load those archive members if they contain ObjC categories.

Reviewed By: #lld-macho, smeenai

Differential Revision: https://reviews.llvm.org/D95265
The file was modifiedlld/MachO/CMakeLists.txt
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/Driver.h
The file was modifiedlld/test/MachO/invalid/bad-archive.s
The file was modifiedlld/test/MachO/invalid/bad-archive-member.s
The file was modifiedlld/MachO/DriverUtils.cpp
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/test/MachO/lto-archive.ll
Commit 4b2169fb6b3ce75e946806070debb9f0d38e415a by jezng
[lld-macho] Remove stray ehFrame change

Per https://reviews.llvm.org/D95121#inline-897943.
The file was modifiedlld/MachO/Writer.cpp
Commit 2d2e0000d31fb76f5201e3b40bc33790a1086450 by jezng
[lld-macho] Rename VERSION CONTROL to VERSION TARGETING in helptext

Per https://reviews.llvm.org/D94938#inline-896740.
The file was modifiedlld/MachO/Options.td
Commit 15aa78abb6ca22294e72767d5ed2aea0b1cf23f9 by mcgrathr
[sanitizer_common] Use zx_system_get_page_size() on Fuchsia

Fuchsia is migrating to a variable page size.

Reviewed By: phosek, charco

Differential Revision: https://reviews.llvm.org/D95919
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
The file was modifiedcompiler-rt/lib/asan/asan_fuchsia.cpp
Commit bbb7555403855f5c2a61d62ae59f1e970ea37ec1 by sivachandra
[libc][NFC] Move generic math implementations to the generic directory.

This expands the pattern suggest in https://reviews.llvm.org/D95850 to all
math functions.
The file was removedlibc/src/math/ldexp.cpp
The file was addedlibc/src/math/generic/floorf.cpp
The file was removedlibc/src/math/rint.cpp
The file was removedlibc/src/math/modf.cpp
The file was removedlibc/src/math/hypot.cpp
The file was addedlibc/src/math/generic/hypotf.cpp
The file was removedlibc/src/math/sqrtf.cpp
The file was removedlibc/src/math/ilogbl.cpp
The file was removedlibc/src/math/floor.cpp
The file was addedlibc/src/math/generic/sqrt.cpp
The file was removedlibc/src/math/exp_utils.cpp
The file was addedlibc/src/math/generic/frexpf.cpp
The file was addedlibc/src/math/generic/expf.cpp
The file was removedlibc/src/math/round.cpp
The file was addedlibc/src/math/generic/truncl.cpp
The file was addedlibc/src/math/generic/fdiml.cpp
The file was addedlibc/src/math/generic/hypot.cpp
The file was addedlibc/src/math/generic/lrintl.cpp
The file was addedlibc/src/math/generic/nextafterl.cpp
The file was addedlibc/src/math/generic/sincosf_data.cpp
The file was removedlibc/src/math/truncf.cpp
The file was addedlibc/src/math/generic/truncf.cpp
The file was addedlibc/src/math/generic/lround.cpp
The file was addedlibc/src/math/generic/floor.cpp
The file was removedlibc/src/math/ilogb.cpp
The file was removedlibc/src/math/llrintl.cpp
The file was addedlibc/src/math/generic/llroundl.cpp
The file was addedlibc/src/math/generic/fdimf.cpp
The file was addedlibc/src/math/generic/remainderl.cpp
The file was addedlibc/src/math/generic/rintf.cpp
The file was addedlibc/src/math/generic/roundf.cpp
The file was addedlibc/src/math/generic/exp_utils.cpp
The file was removedlibc/src/math/fmaxf.cpp
The file was removedlibc/src/math/lrintl.cpp
The file was removedlibc/src/math/nextafterf.cpp
The file was removedlibc/src/math/fmaxl.cpp
The file was removedlibc/src/math/logb.cpp
The file was addedlibc/src/math/generic/copysignl.cpp
The file was addedlibc/src/math/generic/nextafter.cpp
The file was removedlibc/src/math/remquo.cpp
The file was addedlibc/src/math/generic/rint.cpp
The file was addedlibc/src/math/generic/rintl.cpp
The file was addedlibc/src/math/generic/remainder.cpp
The file was addedlibc/src/math/generic/ldexpf.cpp
The file was addedlibc/src/math/generic/modff.cpp
The file was addedlibc/src/math/generic/lroundl.cpp
The file was removedlibc/src/math/llrintf.cpp
The file was removedlibc/src/math/nearbyintl.cpp
The file was removedlibc/src/math/rintf.cpp
The file was addedlibc/src/math/generic/sqrtf.cpp
The file was removedlibc/src/math/fminl.cpp
The file was removedlibc/src/math/cosf.cpp
The file was removedlibc/src/math/llround.cpp
The file was modifiedlibc/src/math/CMakeLists.txt
The file was addedlibc/src/math/generic/modf.cpp
The file was addedlibc/src/math/generic/trunc.cpp
The file was addedlibc/src/math/generic/remquol.cpp
The file was removedlibc/src/math/sincosf_utils.h
The file was addedlibc/src/math/generic/math_utils.h
The file was removedlibc/src/math/remainderl.cpp
The file was addedlibc/src/math/generic/round.cpp
The file was addedlibc/src/math/generic/ldexpl.cpp
The file was removedlibc/src/math/fdiml.cpp
The file was removedlibc/src/math/nearbyintf.cpp
The file was removedlibc/src/math/floorf.cpp
The file was addedlibc/src/math/generic/fabs.cpp
The file was removedlibc/src/math/fabsf.cpp
The file was addedlibc/src/math/generic/cosf.cpp
The file was addedlibc/src/math/generic/fminl.cpp
The file was addedlibc/src/math/generic/ldexp.cpp
The file was removedlibc/src/math/lrintf.cpp
The file was removedlibc/src/math/sqrt.cpp
The file was removedlibc/src/math/roundf.cpp
The file was addedlibc/src/math/generic/llroundf.cpp
The file was removedlibc/src/math/lroundl.cpp
The file was addedlibc/src/math/generic/remquof.cpp
The file was removedlibc/src/math/nextafter.cpp
The file was addedlibc/src/math/generic/fabsl.cpp
The file was removedlibc/src/math/logbf.cpp
The file was addedlibc/src/math/generic/fminf.cpp
The file was addedlibc/src/math/generic/exp_utils.h
The file was removedlibc/src/math/fdim.cpp
The file was removedlibc/src/math/frexpl.cpp
The file was addedlibc/src/math/generic/nextafterf.cpp
The file was addedlibc/src/math/generic/fmaf.cpp
The file was removedlibc/src/math/fabs.cpp
The file was removedlibc/src/math/math_utils.h
The file was addedlibc/src/math/generic/nearbyint.cpp
The file was addedlibc/src/math/generic/fmin.cpp
The file was addedlibc/src/math/generic/copysignf.cpp
The file was removedlibc/src/math/frexp.cpp
The file was removedlibc/src/math/lround.cpp
The file was removedlibc/src/math/fmin.cpp
The file was addedlibc/src/math/generic/math_utils.cpp
The file was addedlibc/src/math/generic/nearbyintl.cpp
The file was removedlibc/src/math/floorl.cpp
The file was removedlibc/src/math/math_utils.cpp
The file was removedlibc/src/math/remainder.cpp
The file was removedlibc/src/math/copysignl.cpp
The file was addedlibc/src/math/generic/nearbyintf.cpp
The file was removedlibc/src/math/truncl.cpp
The file was removedlibc/src/math/exp2f.cpp
The file was addedlibc/src/math/generic/ilogbf.cpp
The file was removedlibc/src/math/logbl.cpp
The file was removedlibc/src/math/sqrtl.cpp
The file was addedlibc/src/math/generic/fmaxf.cpp
The file was addedlibc/src/math/generic/remainderf.cpp
The file was addedlibc/src/math/generic/sincosf.cpp
The file was removedlibc/src/math/hypotf.cpp
The file was addedlibc/src/math/generic/llround.cpp
The file was addedlibc/src/math/generic/fmaxl.cpp
The file was addedlibc/src/math/generic/fdim.cpp
The file was removedlibc/src/math/nextafterl.cpp
The file was removedlibc/src/math/fminf.cpp
The file was removedlibc/src/math/fdimf.cpp
The file was removedlibc/src/math/trunc.cpp
The file was removedlibc/src/math/ldexpl.cpp
The file was removedlibc/src/math/ldexpf.cpp
The file was addedlibc/src/math/generic/llrint.cpp
The file was addedlibc/src/math/generic/logb.cpp
The file was removedlibc/src/math/remquof.cpp
The file was addedlibc/src/math/generic/sinf.cpp
The file was removedlibc/src/math/ilogbf.cpp
The file was removedlibc/src/math/lroundf.cpp
The file was modifiedlibc/src/math/generic/CMakeLists.txt
The file was addedlibc/src/math/generic/logbf.cpp
The file was addedlibc/src/math/generic/roundl.cpp
The file was removedlibc/src/math/remainderf.cpp
The file was removedlibc/src/math/llroundl.cpp
The file was addedlibc/src/math/generic/floorl.cpp
The file was removedlibc/src/math/fmax.cpp
The file was addedlibc/src/math/generic/ilogb.cpp
The file was addedlibc/src/math/generic/modfl.cpp
The file was removedlibc/src/math/copysignf.cpp
The file was removedlibc/src/math/llroundf.cpp
The file was removedlibc/src/math/exp_utils.h
The file was removedlibc/src/math/expf.cpp
The file was addedlibc/src/math/generic/frexp.cpp
The file was addedlibc/src/math/generic/lrintf.cpp
The file was removedlibc/src/math/sinf.cpp
The file was removedlibc/src/math/sincosf_data.cpp
The file was removedlibc/src/math/frexpf.cpp
The file was removedlibc/src/math/sincosf.cpp
The file was removedlibc/src/math/modfl.cpp
The file was addedlibc/src/math/generic/lrint.cpp
The file was addedlibc/src/math/generic/logbl.cpp
The file was removedlibc/src/math/remquol.cpp
The file was removedlibc/src/math/fmaf.cpp
The file was addedlibc/src/math/generic/fmax.cpp
The file was addedlibc/src/math/generic/frexpl.cpp
The file was addedlibc/src/math/generic/sincosf_utils.h
The file was addedlibc/src/math/generic/ilogbl.cpp
The file was removedlibc/src/math/nearbyint.cpp
The file was removedlibc/src/math/copysign.cpp
The file was addedlibc/src/math/generic/copysign.cpp
The file was removedlibc/src/math/rintl.cpp
The file was addedlibc/src/math/generic/fabsf.cpp
The file was removedlibc/src/math/roundl.cpp
The file was removedlibc/src/math/lrint.cpp
The file was removedlibc/src/math/fabsl.cpp
The file was removedlibc/src/math/llrint.cpp
The file was removedlibc/src/math/modff.cpp
The file was addedlibc/src/math/generic/exp2f.cpp
The file was addedlibc/src/math/generic/remquo.cpp
The file was addedlibc/src/math/generic/sqrtl.cpp
The file was addedlibc/src/math/generic/lroundf.cpp
The file was addedlibc/src/math/generic/llrintl.cpp
The file was addedlibc/src/math/generic/llrintf.cpp
Commit eb5c0a90e7d96325cfc537629bef769448eb9b71 by jianzhouzh
[dfsan] Test IGN and DFL for sigaction

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D95957
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
Commit 15f26c5f5191fd4cfdece0e9621efd395ba57bc8 by jianzhouzh
[dfsan] Wrap strcat

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D95923
The file was modifiedcompiler-rt/lib/dfsan/done_abilist.txt
The file was modifiedcompiler-rt/lib/dfsan/dfsan_custom.cpp
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
Commit 2018dafce50cbd1363fdd4e24c76e98852843a19 by psteinfeld
[flang] Fix calls to LBOUND() intrinsic for arrays with lower bounds not 1

Constant folding for calls to LBOUND() was not working when the lower bound of
a constant array was not 1.

I fixed this and re-enabled the test in Evaluate/folding16.f90 that previously
was silently failing.  I slightly changed the test to parenthesize the first
argument to exercise all of the new code.

Differential Revision: https://reviews.llvm.org/D95894
The file was modifiedflang/test/Evaluate/folding16.f90
The file was modifiedflang/lib/Evaluate/fold-integer.cpp
Commit 39fbb5c3e307ac06c7ca83aca8e3c76ed99b25f3 by Matthew.Arsenault
RegisterCoalescer: Fix not setting undef on coalesced subregister uses

This was only adding undef to the use if the copy itself had a
subregister index. It did not consider the subrange liveness if the
use had a subreg index to begin with.
The file was addedllvm/test/CodeGen/AMDGPU/undef-subreg-use-after-coalesce.mir
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
Commit 8a43ec7faa274257325823f312ca2e7657c79785 by csigg
Set GPU context before {cu,hip}MemHostRegister.

Differential Revision: https://reviews.llvm.org/D95856
The file was modifiedmlir/tools/mlir-cuda-runner/cuda-runtime-wrappers.cpp
The file was modifiedmlir/tools/mlir-rocm-runner/rocm-runtime-wrappers.cpp
Commit 62ce4b048ff76adb4bb67a40aa28f69e0be26349 by Justin Bogner
[GlobalISel] Combine narrowScalar of G_ADD and G_SUB. NFC

These two cases have identical implementations other than an
unreachable part of `G_ADD` that checks if the scalar we're narrowing
is a vector. Combining them to avoid unnecessary divergence.
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 4a35941dbde63964240d30309e2b72d8be8fabb6 by csigg
Delete CUDA context after linking device code.

Differential Revision: https://reviews.llvm.org/D95857
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
Commit 0b2af1a2889423bb797856841ac81cf10d01c696 by Yaxun.Liu
[NFC][CUDA] Refactor registering device variable

Extract registering device variable to CUDA runtime codegen function since it
will be called in multiple places.

Reviewed by: Artem Belevich

Differential Revision: https://reviews.llvm.org/D95558
The file was modifiedclang/lib/CodeGen/CGCUDANV.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/lib/CodeGen/CGCUDARuntime.h
Commit b8f13db5b7aa4245d96a07218298dcaa0ec93bb6 by xur
[SampleFDO][NFC] Detach SampleProfileLoader from SampleCoverageTracker

This patch detaches SampleProfileLoader from class
SampleCoverageTracker. We plan to move SampleProfileLoader
to a template class. This would remain SampleCoverageTracker
as a class.
Also make callsiteIsHot() as a file static function.

Differential Revision: https://reviews.llvm.org/D95823
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit 554cf3729e651b3b5416e081e63670fbe71cf91e by fcloutier
[clang-tblgen] AnnotateAttr::printPretty has spurious comma when no variadic argument is specified

rdar://73742471
Differential Revision: https://reviews.llvm.org/D95695
The file was modifiedclang/utils/TableGen/ClangAttrEmitter.cpp
The file was modifiedclang/test/AST/ast-print-attr.c
Commit 0bb198510210da2dc64b47e37a930ce62a04cd68 by kparzysz
[Hexagon] Add LLVM instruction definitions for Hexagon V68
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepOperands.td
The file was addedllvm/lib/Target/Hexagon/HexagonScheduleV68.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepITypes.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepArch.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepIICHVX.td
The file was modifiedllvm/include/llvm/IR/IntrinsicsHexagonDep.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonSubtarget.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepInstrInfo.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepDecoders.inc
The file was modifiedllvm/lib/Target/Hexagon/Hexagon.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepMappings.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepTimingClasses.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepIICScalar.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepITypes.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepInstrFormats.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepMapAsm2Intrin.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepArch.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepMask.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonSchedule.td
The file was modifiedllvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
Commit 8d73bee4edc2b5029d20777a8d4c740ea782b691 by csigg
[mlir] Add gpu async integration test.

Reviewed By: herhut

Differential Revision: https://reviews.llvm.org/D94421
The file was addedmlir/test/mlir-cuda-runner/async.mlir
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
The file was modifiedmlir/lib/Conversion/GPUCommon/CMakeLists.txt
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
Commit 6b14c126884981bb4c2d767d2f2ea5f5864b5b39 by richard
Fix overflowing signed left shift, found by ubsan buildbot.
The file was modifiedllvm/include/llvm/Support/LEB128.h
Commit 9da05cf6ed16e8b8c0829d1fb34be3cdcad85d1c by Vitaly Buka
[asan] Fix pthread_create interceptor

AsanThread::Destroy implementation expected to be called on
child thread.

I missed authors concern regarding this reviewing D95184.

Reviewed By: delcypher

Differential Revision: https://reviews.llvm.org/D95731
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
The file was addedcompiler-rt/test/sanitizer_common/TestCases/Posix/create_thread_fail.cpp
The file was modifiedcompiler-rt/lib/asan/asan_thread.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp
Commit f02054460137940d66559b0c4e675a86af23439a by aeubanks
[NewPM][HelloWorld] Move HelloWorld to Utils

To prevent creating a new component, which creates a new library.

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D95907
The file was modifiedllvm/lib/Transforms/CMakeLists.txt
The file was modifiedllvm/docs/WritingAnLLVMNewPMPass.rst
The file was removedllvm/utils/gn/secondary/llvm/lib/Transforms/HelloNew/BUILD.gn
The file was modifiedllvm/lib/Transforms/Utils/CMakeLists.txt
The file was addedllvm/include/llvm/Transforms/Utils/HelloWorld.h
The file was removedllvm/lib/Transforms/HelloNew/CMakeLists.txt
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
The file was addedllvm/lib/Transforms/Utils/HelloWorld.cpp
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
The file was removedllvm/lib/Transforms/HelloNew/HelloWorld.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was removedllvm/include/llvm/Transforms/HelloNew/HelloWorld.h
The file was modifiedllvm/lib/Passes/CMakeLists.txt
Commit ea5b75de49999e0fa496fc855aa88e009956c999 by jezng
[lld-macho] Try to fix Windows build
The file was modifiedlld/MachO/Target.cpp
Commit 9db61142965e6f4b382e7ff7bde8af5d8396fe98 by GeorgeLyon
Add API for adding arguments to blocks

This just exposes a missing API

Differential Revision: https://reviews.llvm.org/D95968
The file was modifiedmlir/test/CAPI/ir.c
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/include/mlir-c/IR.h
Commit d41c6d51cbadbbd0f81c6ac0d6628d01b881e2a5 by arthur.j.odwyer
[libc++] Rationalize our treatment of contiguous iterators and __unwrap_iter().

- Implement C++20's changes to `reverse_iterator`, so that it won't be
    accidentally counted as a contiguous iterator in C++20 mode.
- Implement C++20's changes to `move_iterator` as well.
- `move_iterator` should not be contiguous. This fixes a bug where
    we optimized `std::copy`-of-move-iterators in an observable way.
    Add a regression test for that bugfix.
- Add libcxx tests for `__is_cpp17_contiguous_iterator` of all relevant
    standard iterator types. Particularly check that vector::iterator
    is still considered contiguous in all C++ modes, even C++03.

After this patch, there continues to be no supported way to write your
own iterator type in C++17-and-earlier such that libc++ will consider it
"contiguous"; however, we now fully support the C++20 approach (in C++20
mode only). If you want user-defined contiguous iterators in C++17-and-earlier,
libc++'s position is "please upgrade to C++20."

Differential Revision: https://reviews.llvm.org/D94807
The file was addedlibcxx/test/libcxx/iterators/contiguous_iterators.pass.cpp
The file was modifiedlibcxx/test/support/test_iterators.h
The file was modifiedlibcxx/include/filesystem
The file was modifiedlibcxx/include/iterator
The file was modifiedlibcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iterator/types.pass.cpp
The file was modifiedlibcxx/include/memory
The file was modifiedlibcxx/include/algorithm
The file was addedlibcxx/test/std/algorithms/alg.modifying.operations/alg.move/contiguous_trivial_optimization.pass.cpp
The file was modifiedlibcxx/include/__memory/pointer_traits.h
The file was modifiedlibcxx/test/libcxx/iterators/trivial_iterators.pass.cpp
The file was modifiedlibcxx/test/std/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp
Commit 4dc08cc3aa41a28ca6ec82bb9c7183048761aad5 by zequanwu
[Coverage] Propogate counter to condition of conditional operator

Clang usually propagates counter mapping region for conditions of `if`, `while`,
`for`, etc from parent counter. We should do the same for condition of conditional operator.

Differential Revision: https://reviews.llvm.org/D95918
The file was modifiedclang/test/CoverageMapping/if.cpp
The file was modifiedclang/lib/CodeGen/CoverageMappingGen.cpp
The file was modifiedclang/test/CoverageMapping/macro-expressions.cpp
Commit 98e50a7d4c12d2c32eb15e55cbb2e1f89a802e28 by Jonas Devlieghere
[lldb] Honor the CPU type & subtype when launching on macOS

Honor the CPU type (and subtype) when launching the inferior on macOS.

Part of this functionality was thought to be no longer needed and
removed in 85bd4369610fe60397455c8e0914a09288285e84, however it's still
needed, for example to launch binaries under Rosetta 2 on Apple Silicon.

This patch will use posix_spawnattr_setarchpref_np if available and
fallback to posix_spawnattr_setbinpref_np if not.

Differential revision: https://reviews.llvm.org/D95922
The file was addedlldb/test/API/macosx/posix_spawn/x86_64h.c
The file was modifiedlldb/source/Host/macosx/objcxx/Host.mm
The file was addedlldb/test/API/macosx/posix_spawn/x86_64.c
The file was modifiedlldb/source/Utility/ArchSpec.cpp
The file was addedlldb/test/API/macosx/posix_spawn/TestLaunchProcessPosixSpawn.py
The file was addedlldb/test/API/macosx/posix_spawn/arm64.c
The file was addedlldb/test/API/macosx/posix_spawn/Makefile
Commit b3901ef09c74443c7d9deeb1c140ce6b0ea3f13c by Jonas Devlieghere
[lldb] Check for both Lua 5.3 and 5.4 error messages in the tests.
The file was modifiedlldb/test/Shell/ScriptInterpreter/Lua/breakpoint_callback.test
The file was modifiedlldb/test/Shell/ScriptInterpreter/Lua/fail_breakpoint_oneline.test
Commit 1a13ee1efb62c048c5a38090fe9e64a09df23c03 by Amara Emerson
[GlobalISel] Add sext(constant) -> constant artifact combine.

This is the G_SEXT counterpart to the existing G_ZEXT/G_ANYEXT combines.

Differential Revision: https://reviews.llvm.org/D95729
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/legalize-ptr-add.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddo.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-extract-vector-elt.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubo.mir
Commit b15cbaf5a03d0b32dbc32c37766e32ccf66e6c87 by richard
PR49020: Diagnose brace elision in designated initializers in C++.

This is a corner of the differences between C99 designators and C++20
designators that we'd previously overlooked. As with other such cases,
this continues to be permitted as an extension and allowed by default,
behind the -Wc99-designators warning flag, except in cases where it
leads to a conformance difference (such as in overload resolution and in
a SFINAE context).
The file was modifiedclang/test/SemaCXX/cxx2a-initializer-aggregates.cpp
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
Commit 669ddd1e9b1226432b003dbba05b99f8e992285b by aeubanks
Turn on the new pass manager by default

This turns on the new pass manager by default for the optimization pipeline in
Clang and ThinLTO in various LLD backends. This also makes uses of `opt
-instcombine` use the new pass manager (unless specifically opted out).

This does not affect the backend target-dependent codegen pipeline.

If this causes regressions, you can opt out of the new pass manager
either via the -DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=OFF CMake flag
while building LLVM, or via various compiler flags, e.g.
-flegacy-pass-manager for Clang or -Wl,--lto-legacy-pass-manager for
ELF LLD. Please file bugs for any regressions.

Major differences:
* The inliner works slightly differently
* -O1 does some amount of inlining
* LCSSA and LoopSimplify are run before all loop passes
* Loop unswitching is implemented slightly differently
* A new SpeculateAroundPHIs pass is added to the pipeline

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

Reviewed By: asbirlea, ychen, MaskRay, echristo

Differential Revision: https://reviews.llvm.org/D95380
The file was modifiedllvm/CMakeLists.txt
Commit b0a8e41cfff717ff067bf63412d6edb0280608cd by flo
Revert "[LTOCodeGenerator] Use lto::Config for options (NFC)."

This reverts commit 0d487cf87aa1b609b7db061def3e5ad068576ecf because
it is causing failures on green dragon.
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
Commit 0a17664b47c153aa26a0d31b4835f26375440ec6 by flo
Revert "[LTO] Add option enable NewPM with LTOCodeGenerator."

This reverts commit 7a6a2cc81aaf064e6f5bc9a9a16973f552d2bdc2 because
it is causing failures on green dragon.
The file was modifiedllvm/test/LTO/X86/diagnostic-handler-remarks.ll
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/test/Other/X86/lto-hot-cold-split.ll
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/test/LTO/X86/disable-verify.ll
Commit 7db390cc7738a9ba0ed7d4ca59ab6ea2e69c47e9 by flo
Revert "[LTO] Use lto::backend for code generation."

This reverts commit 6a59f0560648b43324b5aed51b9ef996404a25e0, because
it is causing failures on green dragon.
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/test/LTO/X86/disable-verify.ll
The file was modifiedllvm/test/tools/lto/print-stats.ll
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
Commit 1f06f41993b6363e6b2c4f22a13488a3e687f31b by richard
PR44325 (and duplicates): don't issue -Wzero-as-null-pointer-constant
when rewriting 'a < b' as '(a <=> b) < 0'.

It's pretty common for comparison category types to use a pointer or
pointer-to-member type as their '0' parameter.
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang/test/SemaCXX/cxx2a-three-way-comparison.cpp
Commit c0199b2a21705747c999a59bfa77d7fc6e4500a5 by steveire
[clang-tidy] Use new mapping matchers

Use mapAnyOf() and matchers based on it.

Use of binaryOperation() means that modernize-loop-convert and
readability-container-size-empty can now be used with rewritten binary
operators.

Differential Revision: https://reviews.llvm.org/D94131
The file was modifiedclang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-container-size-empty-cxx20.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
The file was modifiedclang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/modernize-loop-convert-rewritten-binop.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
Commit 26e9c99010b6870ee5c8ce998a84214e06f3f3a9 by akhuang
[Docs] Add some documentation for constructor homing, a debug info optimization (-fuse-ctor-homing)

Adding this, since there's currently no documentation about this.

Differential Revision: https://reviews.llvm.org/D95911
The file was modifiedclang/docs/UsersManual.rst
Commit 493f1407927cdf6db2e08f150ed9f9b8abe4ac45 by arthur.j.odwyer
[libc++] [P0879] constexpr std::sort

This completes libc++'s implementation of
P0879 "Constexpr for swap and swap related functions."
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0879r0.html

For the feature-macro adjustment, see
https://cplusplus.github.io/LWG/issue3256

Differential Revision: https://reviews.llvm.org/D93661
The file was modifiedlibcxx/docs/FeatureTestMacroTable.rst
The file was modifiedlibcxx/include/algorithm
The file was modifiedlibcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp
The file was modifiedlibcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
The file was modifiedlibcxx/utils/generate_feature_test_macro_components.py
The file was modifiedlibcxx/docs/Cxx2aStatusPaperStatus.csv
The file was addedlibcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort_constexpr.pass.cpp
The file was modifiedlibcxx/docs/Cxx2aStatusIssuesStatus.csv
The file was modifiedlibcxx/include/version
The file was addedlibcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort_constexpr_comp.pass.cpp
Commit a1f6bb20db14ec72e2a01731dff222565eedb2ff by Jessica Paquette
[AArch64][GlobalISel] Emit G_ASSERT_ZEXT in assignValueToAddress for ZExt params

When we have a zeroext parameter coming in on the stack, build

```
%x = G_LOAD ...
%x_assert_zext = G_ASSERT_ZEXT %x, narrow_size
%trunc = G_TRUNC %x_assert_zext
```

Rather than just loading into the truncated type.

This allows us to optimize cases like this: https://godbolt.org/z/vfjhW8

Differential Revision: https://reviews.llvm.org/D95805
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/call-lowering-zeroext.ll
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
Commit b9953141439b460f4023c2d684b7f789bebfc885 by thakis
Revert "[InstrProfiling] Use !associated metadata for counters, data and values"

This reverts commit 97ba5cde52664200819446c1a18de28faf2ed1c6.
Still breaks tests: https://reviews.llvm.org/D76802#2540647
The file was modifiedcompiler-rt/test/profile/CMakeLists.txt
The file was modifiedcompiler-rt/test/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was removedcompiler-rt/test/profile/instrprof-gc-sections.c
The file was modifiedllvm/include/llvm/Transforms/Instrumentation.h
The file was modifiedllvm/test/Instrumentation/InstrProfiling/icall.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo_mexits.ll
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
The file was removedllvm/test/Transforms/PGOProfile/associated.ll
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/counter_promo.ll
Commit 56fcd4ea8dafecbd71ff6eda7db6407d66505c93 by Jessica Paquette
[AArch64][GlobalISel] Change store value type from p0 -> s64 to import patterns

Similar to the G_PTR_ADD + G_LOAD twiddling we do in `preISelLower`.

The imported patterns expect scalars only, so they can't handle things like

```
G_STORE %ptr1, %ptr2
```

To get around this, use s64 instead.

(This probably makes a good portion of the manual selection code for G_STORE
dead.)

This is a 0.2% geomean code size improvement on CTMark at -Os.

(Best is consumer-typeset @ -0.7%)

Differential Revision: https://reviews.llvm.org/D95908
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/store-wro-addressing-modes.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-store.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/sext-inreg-ldrow-16b.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/store-addressing-modes.mir
Commit c82b24f4756e436b0d25b458e6c5a3fc1820d66e by wlei
[CSSPGO][llvm-profgen] Pseudo probe based CS profile generation

This change implements profile generation infra for pseudo probe in llvm-profgen. During virtual unwinding, the raw profile is extracted into range counter and branch counter and aggregated to sample counter map indexed by the call stack context. This change introduces the last step and produces the eventual profile. Specifically, the body of function sample is recorded by going through each probe among the range and callsite target sample is recorded by extracting the callsite probe from branch's source.

Please refer https://groups.google.com/g/llvm-dev/c/1p1rdYbL93s and https://reviews.llvm.org/D89707 for more context about CSSPGO and llvm-profgen.

**Implementation**

- Extended `PseudoProbeProfileGenerator` for pseudo probe based profile generation.
- `populateBodySamplesWithProbes` reading range counter is responsible for recording function body samples and inferring caller's body samples.
- `populateBoundarySamplesWithProbes` reading branch counter is responsible for recording call site target samples.
- Each sample is recorded with its calling context(named `ContextId`). Remind that the probe based context key doesn't include the leaf frame probe info, so the `ContextId` string is created from two part: one from the probe stack strings' concatenation and other one from the leaf frame probe.
- Added regression test

Test Plan:

ninja & ninja check-llvm

Differential Revision: https://reviews.llvm.org/D92998
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.h
The file was modifiedllvm/test/tools/llvm-profgen/inline-cs-pseudoprobe.test
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
The file was modifiedllvm/tools/llvm-profgen/PseudoProbe.h
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.h
The file was modifiedllvm/tools/llvm-profgen/PseudoProbe.cpp
The file was modifiedllvm/test/tools/llvm-profgen/noinline-cs-pseudoprobe.test
Commit e3bb1c80fe68110f6362af0413c04cd77a05fbac by Jonas Devlieghere
[lldb] Rollback to using i386 for the watch simulator

I switched the watch simulator test from i386 to using x86_64, but
apparently that's not supported on the bots. Rollback to using i386 and
solve the original issue by passing the target, similar to what I did
in TestSimulatorPlatform.py.
The file was modifiedlldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
Commit 26b5be66f9c540028136f4fb4538c5786104abb9 by llvm-project
[OpenMPIRBuilder] Implement collapseLoops.

The collapseLoops method implements a transformations facilitating the implementation of the collapse-clause. It takes a list of loops from a loop nest and reduces it to a single loop that can be used by other methods that are implemented on just a single loop, such as createStaticWorkshareLoop.

This patch shares some changes with D92974 (such as adding some getters to CanonicalLoopNest), used by both patches.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D93268
The file was modifiedllvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
The file was modifiedllvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
Commit 0f0ce3c12edefd25448e39c4d20718a10d3d42c1 by tianshilei1992
[OpenMP][NVPTX] Take functions in `deviceRTLs` as `convergent`

OpenMP device compiler (similar to other SPMD compilers) assumes that
functions are convergent by default to avoid invalid transformations, such as
the bug (https://bugs.llvm.org/show_bug.cgi?id=49021).

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D95971
The file was addedopenmp/libomptarget/test/offloading/bug49021.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was addedclang/test/OpenMP/target_attribute_convergent.cpp
Commit a1d5bdf8192fccf5dddeb3c18a187e9ffe2c2dbd by joker.eph
Make the folder more robust against op fold() methods that generate a type mismatch

We could extend this with an interface to allow dialect to perform a type
conversion, but that would make the folder creating operation which isn't
the case at the moment, and isn't necessarily always desirable.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D95991
The file was modifiedmlir/test/Transforms/test-canonicalize.mlir
The file was modifiedmlir/test/lib/Dialect/Test/TestDialect.cpp
The file was modifiedmlir/lib/Transforms/Utils/FoldUtils.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
Commit c95c0db2eb687edb91afa628655bb5025f7e863b by joker.eph
[MLIR] Fix building unittests in in-tree build

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D95978
The file was modifiedmlir/CMakeLists.txt
Commit 0609f257dc2e2c3e4c7cd30fe2ffd520117e706b by wlei
[CSSPGO][llvm-profgen] Compress recursive cycles in calling context

This change compresses the context string by removing cycles due to recursive function for CS profile generation. Removing recursion cycles is a way to normalize the calling context which will be better for the sample aggregation and also make the context promoting deterministic.
Specifically for implementation, we recognize adjacent repeated frames as cycles and deduplicated them through multiple round of iteration.
For example:
Considering a input context string stack:
[“a”, “a”, “b”, “c”, “a”, “b”, “c”, “b”, “c”, “d”]
For first iteration,, it removed all adjacent repeated frames of size 1:
[“a”, “b”, “c”, “a”, “b”, “c”, “b”, “c”, “d”]
For second iteration, it removed all adjacent repeated frames of size 2:
[“a”, “b”, “c”, “a”, “b”, “c”, “d”]
So in the end, we get compressed output:
[“a”, “b”, “c”, “d”]

Compression will be called in two place: one for sample's context key right after unwinding, one is for the eventual context string id in the ProfileGenerator.
Added a switch `compress-recursion` to control the size of duplicated frames, default -1 means no size limit.
Added unit tests and regression test for this.

Differential Revision: https://reviews.llvm.org/D93556
The file was addedllvm/test/tools/llvm-profgen/Inputs/recursion-compression-noprobe.perfbin
The file was addedllvm/unittests/tools/llvm-profgen/ContextCompressionTest.cpp
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.h
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.h
The file was modifiedllvm/tools/llvm-profgen/PseudoProbe.h
The file was addedllvm/test/tools/llvm-profgen/recursion-compression-noprobe.test
The file was modifiedllvm/unittests/tools/CMakeLists.txt
The file was addedllvm/test/tools/llvm-profgen/Inputs/recursion-compression-pseudoprobe.perfbin
The file was addedllvm/test/tools/llvm-profgen/Inputs/recursion-compression-pseudoprobe.perfscript
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
The file was addedllvm/test/tools/llvm-profgen/Inputs/recursion-compression-noprobe.perfscript
The file was addedllvm/unittests/tools/llvm-profgen/CMakeLists.txt
The file was addedllvm/test/tools/llvm-profgen/recursion-compression-pseudoprobe.test
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.cpp
The file was modifiedllvm/tools/llvm-profgen/PseudoProbe.cpp
Commit 1714ad2336293f351b15dd4b518f9e8618ec38f2 by wlei
[CSSPGO][llvm-profgen] Aggregate samples on call frame trie to speed up profile generation

For CS profile generation, the process of call stack unwinding is time-consuming since for each LBR entry we need linear time to generate the context( hash, compression, string concatenation). This change speeds up this by grouping all the call frame within one LBR sample into a trie and aggregating the result(sample counter) on it, deferring the context compression and string generation to the end of unwinding.

Specifically, it uses `StackLeaf` as the top frame on the stack and manipulates(pop or push a trie node) it dynamically during virtual unwinding so that the raw sample can just be recoded on the leaf node, the path(root to leaf) will represent its calling context. In the end, it traverses the trie and generates the context on the fly.

Results:
Our internal branch shows about 5X speed-up on some large workloads in SPEC06 benchmark.

Differential Revision: https://reviews.llvm.org/D94110
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/ProfiledBinary.cpp
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
Commit 781a1b1e3683f44bcf5af27ecdb71a494c707abe by aeubanks
[test] Pin spir-codegen.ll to legacy PM

-polly-enable-delicm is not supported under the new PM but is tested here:
  Assertion `!EnableDeLICM && "This option is not implemented"' failed.
The file was modifiedpolly/test/GPGPU/spir-codegen.ll
Commit aade0ec23b5986a9c478c4093d029a5db8a2c012 by Akira
Fix the guaranteed alignment of memory returned by malloc/new on Darwin

The guaranteed alignment is 16 bytes on Darwin.

rdar://73431623

Differential Revision: https://reviews.llvm.org/D95910
The file was modifiedclang/test/Preprocessor/init-arm.c
The file was modifiedclang/lib/Basic/TargetInfo.cpp
The file was modifiedclang/test/Preprocessor/init-aarch64.c
Commit b4de30f6afe446a38c30626e611daa5509f19b92 by kazu
[Support] Drop unnecessary const from return types (NFC)

Identified with const-return-type.
The file was modifiedllvm/include/llvm/Support/ScopedPrinter.h
The file was modifiedllvm/lib/Support/ScopedPrinter.cpp
Commit 643c00f717a2cc20a85cdbfa3681e8f61af8c64f by kazu
[TableGen] Use ListSeparator (NFC)
The file was modifiedllvm/utils/TableGen/CodeGenSchedule.cpp
Commit be37475897c1efe00c632de4896e31bcfec62585 by kazu
[Transforms/IPO] Use range-based for loops (NFC)
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/lib/Transforms/IPO/HotColdSplitting.cpp
The file was modifiedllvm/lib/Transforms/IPO/PartialInlining.cpp
The file was modifiedllvm/lib/Transforms/IPO/MergeFunctions.cpp
The file was modifiedllvm/lib/Transforms/IPO/ArgumentPromotion.cpp
Commit 9511fa2ddab73c7c93c97df514a00cee5e12e1b2 by yedeng.yd
[NFC][Coroutine] Remove redundant comment

The functionallity in the TODO was added before:
https://reviews.llvm.org/rGb3a722e66b75328ab5e2eb5c8572022cb083855b
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
Commit 0ed758b26041ef4ec57e8511d289fb0b84468775 by davelee.com
[lldb] Convert more assertTrue to assertEqual (NFC)

Follow up to D95813, this converts multiline assertTrue to assertEqual.

Differential Revision: https://reviews.llvm.org/D95899
The file was modifiedlldb/test/API/macosx/safe-to-func-call/TestSafeFuncCalls.py
The file was modifiedlldb/test/API/python_api/sbdata/TestSBData.py
The file was modifiedlldb/test/API/commands/process/launch-with-shellexpand/TestLaunchWithShellExpand.py
The file was modifiedlldb/test/API/functionalities/inline-stepping/TestInlineStepping.py
The file was modifiedlldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
The file was modifiedlldb/test/API/functionalities/thread/create_during_step/TestCreateDuringStep.py
The file was modifiedlldb/test/API/lang/objc/objc-static-method-stripped/TestObjCStaticMethodStripped.py
The file was modifiedlldb/test/API/functionalities/breakpoint/address_breakpoints/TestAddressBreakpoints.py
The file was modifiedlldb/test/API/lang/objc/blocks/TestObjCIvarsInBlocks.py
The file was modifiedlldb/test/API/lang/objc/objc-static-method/TestObjCStaticMethod.py
The file was modifiedlldb/test/API/api/listeners/TestListener.py
The file was modifiedlldb/test/API/python_api/sbvalue_persist/TestSBValuePersist.py
The file was modifiedlldb/test/API/functionalities/memory/read/TestMemoryRead.py
The file was modifiedlldb/test/API/functionalities/breakpoint/source_regexp/TestSourceRegexBreakpoints.py
The file was modifiedlldb/test/API/functionalities/exec/TestExec.py
The file was modifiedlldb/test/API/lang/cpp/gmodules/TestWithModuleDebugging.py
The file was modifiedlldb/test/API/commands/expression/call-restarts/TestCallThatRestarts.py
The file was modifiedlldb/test/API/python_api/watchpoint/TestSetWatchpoint.py
The file was modifiedlldb/test/API/commands/register/register/register_command/TestRegisters.py
The file was modifiedlldb/test/API/functionalities/thread/thread_specific_break_plus_condition/TestThreadSpecificBpPlusCondition.py
The file was modifiedlldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
The file was modifiedlldb/test/API/lang/cpp/template/TestTemplateArgs.py
The file was modifiedlldb/test/API/python_api/value/TestValueAPI.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_names/TestBreakpointNames.py
The file was modifiedlldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/list/TestDataFormatterLibcxxList.py
The file was modifiedlldb/test/API/functionalities/target-new-solib-notifications/TestModuleLoadedNotifys.py
The file was modifiedlldb/test/API/lang/objc/foundation/TestObjCMethods.py
The file was modifiedlldb/test/API/functionalities/data-formatter/synthupdate/TestSyntheticFilterRecompute.py
The file was modifiedlldb/test/API/lang/cpp/nsimport/TestCppNsImport.py
The file was modifiedlldb/test/API/python_api/frame/TestFrames.py
The file was modifiedlldb/test/API/lang/c/array_types/TestArrayTypes.py
The file was modifiedlldb/test/API/lang/objc/global_ptrs/TestGlobalObjects.py
The file was modifiedlldb/test/API/python_api/objc_type/TestObjCType.py
The file was modifiedlldb/test/API/macosx/queues/TestQueues.py
The file was modifiedlldb/test/API/functionalities/data-formatter/format-propagation/TestFormatPropagation.py
The file was modifiedlldb/test/API/functionalities/dynamic_value_child_count/TestDynamicValueChildCount.py
The file was modifiedlldb/test/API/lang/cpp/limit-debug-info/TestWithLimitDebugInfo.py
The file was modifiedlldb/test/API/lang/c/bitfields/TestBitfields.py
The file was modifiedlldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
The file was modifiedlldb/test/API/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py
The file was modifiedlldb/test/API/lang/cpp/diamond/TestDiamond.py
The file was modifiedlldb/test/API/lang/objc/objc-baseclass-sbtype/TestObjCBaseClassSBType.py
The file was modifiedlldb/test/API/lang/c/unions/TestUnionMembers.py
The file was modifiedlldb/test/API/functionalities/avoids-fd-leak/TestFdLeak.py
The file was modifiedlldb/test/API/lang/cpp/breakpoint-commands/TestCPPBreakpointCommands.py
The file was modifiedlldb/test/API/python_api/signals/TestSignalsAPI.py
The file was modifiedlldb/test/API/lang/objc/objc-ivar-offsets/TestObjCIvarOffsets.py
The file was modifiedlldb/test/API/functionalities/thread/break_after_join/TestBreakAfterJoin.py
The file was modifiedlldb/test/API/python_api/event/TestEvents.py
The file was modifiedlldb/test/API/lang/objc/objc-dyn-sbtype/TestObjCDynamicSBType.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_language/TestBreakpointLanguage.py
The file was modifiedlldb/test/API/functionalities/plugins/python_os_plugin/TestPythonOSPlugin.py
The file was modifiedlldb/test/API/lang/objc/objc-ivar-stripped/TestObjCIvarStripped.py
The file was modifiedlldb/test/API/python_api/formatters/TestFormattersSBAPI.py
The file was modifiedlldb/test/API/commands/frame/var/TestFrameVar.py
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/atomic/TestLibCxxAtomic.py
The file was modifiedlldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
The file was modifiedlldb/test/API/commands/disassemble/basic/TestFrameDisassemble.py
The file was modifiedlldb/test/API/python_api/thread/TestThreadAPI.py
The file was modifiedlldb/test/API/commands/watchpoints/watchpoint_events/TestWatchpointEvents.py
The file was modifiedlldb/test/API/functionalities/signal/TestSendSignal.py
The file was modifiedlldb/test/API/lang/cpp/class_static/TestStaticVariables.py
The file was modifiedlldb/test/API/functionalities/thread/multi_break/TestMultipleBreakpoints.py
The file was modifiedlldb/test/API/lang/cpp/global_operators/TestCppGlobalOperators.py
The file was modifiedlldb/test/API/python_api/target/TestTargetAPI.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_hit_count/TestBreakpointHitCount.py
The file was modifiedlldb/test/API/lang/c/stepping/TestStepAndBreakpoints.py
The file was modifiedlldb/test/API/python_api/lldbutil/iter/TestLLDBIterator.py
The file was modifiedlldb/test/API/macosx/indirect_symbol/TestIndirectSymbols.py
The file was modifiedlldb/test/API/functionalities/thread/exit_during_break/TestExitDuringBreak.py
The file was modifiedlldb/test/API/python_api/watchpoint/TestWatchpointIter.py
The file was modifiedlldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
The file was modifiedlldb/test/API/lang/objc/objc-stepping/TestObjCStepping.py
The file was modifiedlldb/test/API/commands/frame/language/TestGuessLanguage.py
The file was modifiedlldb/test/API/commands/expression/call-throws/TestCallThatThrows.py
Commit b42ccdf38fe3d04765d1c265b4819c045d451e09 by phosek
[NFC] Fix the noprofile attribute comment
The file was modifiedllvm/include/llvm/IR/Attributes.td
Commit a2c1054c303f20be006e9ef20739dbb88bd9ae02 by kyrtzidis
[ASTReader] Always rebuild a cached module that has errors

A module in the cache with an error should just be a cache miss. If
allowing errors (with -fallow-pcm-with-compiler-errors), a rebuild is
needed so that the appropriate diagnostics are output and in case search
paths have changed. If not allowing errors, the module was built
*allowing* errors and thus should be rebuilt regardless.

Reviewed By: akyrtzi

Differential Revision: https://reviews.llvm.org/D95989
The file was removedclang/test/Modules/Inputs/error.h