AbortedChanges

Summary

  1. GlobalISel: Minor cleanups (details)
  2. Revert "[lldb] Fix TestSettings.test_pass_host_env_vars on windows" (details)
  3. [Alignment][NFC] Use Align version of getMachineMemOperand (details)
  4. [analyzer] Add core.CallAndMessage to StdCLibraryFunctionArgsChecker's dependency (details)
  5. [X86] make sure POP has implicit def/use of stack pointer when materializing 8-bit immediates for minsize (details)
  6. [ELF][test] Improve linkerscript/linkorder.s (details)
  7. [libc++] Add support for a new keyword ADDITIONAL_COMPILE_FLAGS (details)
  8. [libc++] Fix wrong default value for LIBCXX_ENABLE_ASSERTIONS in documentation (details)
  9. [ELF] Allow SHF_LINK_ORDER and non-SHF_LINK_ORDER to be mixed (details)
  10. [LoopVectorize] Fix crash on "getNoopOrZeroExtend cannot truncate!" (PR45259) (details)
  11. Introduce unify-loop-exits pass. (details)
  12. [Hexagon] MaxAtomicPromoteWidth and MaxAtomicInlineWidth are not getting set. (details)
  13. [OPENMP50]Add codegen support for array shaping expression in depend (details)
  14. [AMDGPU] Add Relocation Constant Support (details)
  15. [MLIR] Fix permuteLoops utility (details)
  16. Move CLANG_SYSTEMZ_DEFAULT_ARCH to config.h. (details)
  17. [gn build] Port 3cbbded68c2 (details)
  18. [ConstantFold][NFC] Compile time optimization for large vectors (details)
  19. lld: Reduce number of references to undefined printed from 10 to 3. (details)
  20. GlobalISel: Translate llvm.fshl/llvm.fshr (details)
  21. GlobalISel: Add accessor to known bits to CombinerHelper (details)
  22. [lldb/CMake] Make check-lldb-* work for the standalone build. (details)
  23. fix a comment grammar-o (details)
  24. [clang analysis] Make mutex guard detection more reliable. (details)
  25. [Intrinsic] Give "is.constant" the "convergent" attribute (details)
  26. AMDGPU/GlobalISel: Basic legalize rules for G_FSHR (details)
  27. Add /bigobj for SPIRV dialect on MSVC. (details)
  28. Setup clang-format as an Arcanist linter (details)
  29. [analyzer] Fix StdLibraryFunctionsChecker NotNull Constraint Check (details)
  30. [mlir] Update all dialects docs to use 'dialect-namespace' in the header (details)
  31. CodeGen: Add missing MachineOperand setter (details)
  32. Fix comment for CLANG_SYSTEMZ_DEFAULT_ARCH (details)
  33. Add a flag on the context to protect against creation of operations in unregistered dialects (details)
  34. [lit] Use Python's support for None in array slice indexing (details)
  35. [llvm-cov] Improve error message for missing profdata (details)
  36. [ADT] Allow empty string in StringSet (details)
  37. [InstCombine] do not exclude min/max from icmp with casted operand fold (details)
  38. Fix test: add `-allow-unregistered-dialect` to Affine/loop-permute.mlir test (missed during rebase) (details)
  39. [InstCombine] Update assertions in InstCombine test; NFC (details)
  40. Re-land "[FileCollector] Add a method to add a whole directory and it contents." (details)
  41. Revert "[lldb] Make Fix-Its also apply to top-level expressions" (details)
  42. Revert "[InstCombine] Update assertions in InstCombine test; NFC" (details)
  43. [TypeSystemClang] Add missing case in a switch. NFC'ish. (details)
  44. Revert "[lldb] Make TestExprDiagnostics.py pass again after enabling Fix-Its in test" (details)
  45. AMDGPU/GlobalISel: Start handling _L to _LZ optimization (details)
  46. AMDGPU/GlobalISel: Round up image operations with 5, 6 or 7 addresses (details)
  47. [OPENMP50]Do not imply lvalue as base expression in array shaping (details)
  48. Revert "[lldb][NFC] Refactor Fix-It filter for warnings" (details)
  49. [llvm][IR][CastInst] Update `castIsValid` for scalable vectors. (details)
  50. AMDGPU: Implement getMemcpyLoopLoweringType (details)
  51. Recommit "[lldb] Make TestExprDiagnostics.py pass again after enabling Fix-Its in test" (details)
  52. Recommit "[lldb] Make Fix-Its also apply to top-level expressions"" (details)
  53. AMDGPU: Account for dmask when computing image mem size (details)
  54. AMDGPU/GlobalISel: Start selecting image intrinsics (details)
  55. AMDGPU/GlobalISel: Handle image atomics (details)
  56. AMDGPU/GlobalISel: Form CVT_F32_UBYTE0 (details)
  57. Enforce that libc++ and libc++abi are built in a monorepo layout (details)
  58. AMDGPU: Form v_cvt_ubyte* with f16 results (details)
  59. Recommit "[InstCombine] Update assertions in InstCombine test; NFC" (details)
  60. Recommit "[libc++] NFC: Simplify substitutions by using lit recursive substitutions" (details)
  61. AMDGPU/GlobalISel: Fix crashing on weird G_INSERT sources (details)
  62. [lldb/Reproducers] Always collect the whole dSYM in the reproducer (details)
  63. [ELF][test] Add linkerscript/linkorder-linked-to.s (details)
  64. [SelectionDAGISel] small cleanup to INLINEASM_BR selection. NFC (details)
  65. Revert "[GISel]: Fix incorrect IRTranslation while translating null pointer types" (details)
  66. [SVE][SelectionDAG] Fix dumping of EVTs to use correct API for element count. (details)
  67. [GlobalISel] Combine (x op 0) -> x for operations with a right identity of 0 (details)
  68. [WebAssembly] Import wasm_simd128.h from Emscripten (details)
  69. Fix crash if base specifier parsing hits an invalid type annotation. (details)
  70. Rename options --cuda-gpu-arch and --no-cuda-gpu-arch (details)
  71. [LegalizeTypes] Add SoftenFloatRes_FREEZE (details)
  72. [GlobalISel] Implement identity transforms for x op x -> x (details)
  73. [gn build] (manually) ort 5074776de47 (details)
  74. [gn build] minor tweaks to sync script (details)
  75. [gn build] re-run "gn format" on all .gn and .gni files (details)
  76. [PowerPC] Don't do the folding if the operand is R0/X0 (details)
  77. Fix linalg.generic access of hoisted constants (details)
  78. [lit] Send back whole lit.Test object from worker process (details)
  79. [lit] Remove single process mode (details)
  80. [lit] Fix test that relied on "single process" mode (details)
  81. [SampleFDO] Port MD5 name table support to extbinary format. (details)
  82. [AVR] Respect the 'interrupt' function attribute (details)
  83. [SelectionDAG] Add an assert that the input VT and output VT for ISD::FREEZE are the same. (details)
  84. [AVR] Generalize the previous interrupt bugfix to signal handlers too (details)
  85. [Alignment][NFC] Simplify IRTranslator::getMemOpAlignment (details)
  86. [Alignment][NFC] GlobalIsel Utils inferAlignFromPtrInfo (details)
  87. [Mips] Make MipsBranchExpansion aware of BBIT family of branch (details)
  88. Remove unused variable (details)
  89. Fix missing override (details)
  90. [Syntax] Remove delayed folding from tree building. (details)
  91. [Alignment][NFC] Transition to inferAlignFromPtrInfo (details)
  92. [NFC] Remove unuseful infrastructure (details)
  93. [RISCV] ELF attribute section for RISC-V. (details)
  94. [SCCP] Use constant ranges for casts. (details)
  95. [gn build] Port 581ba35291a (details)
  96. [AMDGPU] New llvm.amdgcn.ballot intrinsic (details)
  97. [Alignment][NFC] Transitionning more getMachineMemOperand call sites (details)
  98. [Statepoint] Fix StatepointLoweringInfo::GCTransitionArgs initialization (details)
  99. [ARM] Fix qdadd operand order (details)
  100. Correct the duplicate pragma marks in CommandObjectTarget.cpp (details)
  101. [Dexter] Add support for Windows to regression test suite. (details)
  102. [InstCombine] Transform extelt-trunc -> bitcast-extelt (details)
  103. [X86] Move canLowerByDroppingEvenElements earlier to be with matchShuffleWithPACK. NFCI. (details)
  104. [X86] Combine concat(palignr,palignr) -> palignr(concat,concat) (details)
  105. [Alignment][NFC] Transitionning more getMachineMemOperand call sites (details)
  106. [SCEV] Use backedge SCEV of PHI only if its input is loop invariant (details)
  107. [docs] Document coding standard for error and warning messages (details)
  108. [lld][ELF][test] Improve deplib.s (details)
  109. [ELF][test] Add test for --gc-sections + many sections (details)
  110. [ValueLattice] Distinguish between constant ranges with/without undef. (details)
  111. [LLD][ELF] Allow empty (.init|.preinit|.fini)_array to be RELRO (details)
  112. [VPlan] Move test strs to variables, silence spurious C4129 (NFC). (details)
  113. [clang-tidy] Fix crash in readability-redundant-string-cstr (details)
  114. [LoopTerminology] LCSSA form (details)
  115. [libc++] Do not rely on the environment to run filesystem tests (details)
  116. [clangd] Support new semanticTokens request from LSP 3.16. (details)
  117. [InstCombine] remove stray auto-generated test comment; NFC (details)
  118. [libc++] Set filesystem test flags in a lit.local.cfg (details)
  119. [libc++] Provide a method for adding compiler flags in lit.local.cfg files (details)
  120. [libc++] Quote the filesystem static env root in the source files instead of the command line (details)
  121. [X86][SSE] lowerShuffleWithPACK - extend to use chained PACKs for larger truncations (details)
  122. [libc++] Remove incorrect assertion in the filesystem tests (details)
  123. [ADT] Implement the Waymarking as an independent utility (details)
  124. [gn build] Port 154d517bc7d (details)
  125. Fix enumeral mismatch warning. NFCI. (details)
  126. Revert rGefe59d6717dcdf7777acb9b7a734e1a520bdf22a "[X86][SSE] lowerShuffleWithPACK - extend to use chained PACKs for larger truncations" (details)
  127. [obj2yaml] - Teach tool to dump program headers. (details)
  128. [SystemZ] Improve foldMemoryOperandImpl(). (details)
  129. [SystemZ] Add isCommutable flag on VFA and VFM. (details)
  130. [lldb/DWARF] Fix evaluator crash when accessing empty stack. (details)
  131. [libc++] Execute tests using an external shell (details)
  132. [MLIR][Vector] Add support for TupleGetOp folding through InsertSlicesOp and ExtractSlicesOp. (details)
  133. Revert "[lldb/DWARF] Fix evaluator crash when accessing empty stack." (details)
  134. [lldb/DWARF] Fix evaluator crash when accessing empty stack. (details)
  135. [lld][COFF][ELF][WebAssembly] Replace --[no-]threads /threads[:no] with --threads={1,2,...} /threads:{1,2,...} (details)
  136. [AssumeBundles] Preserve Information from Load/Store (details)
  137. [AssumeBundles] Preserve information in EarlyCSE (details)
  138. [libc++abi] Remove the old testit script (details)
  139. [Alignment][NFC] Deprecate MachineMemOperand::getMachineMemOperand version that takes an untyped alignement. (details)
  140. [SCCP] Limit use of range info for binops to integers for now. (details)
  141. [mlir][Linalg] Allow tiling of batch dimension for convolution ops with padding. (details)
  142. New symbolizer option to print files relative to the compilation directory. (details)
  143. Fix buildgo.sh script to fix linux build failure due to changes in ad1466f8cbc5. (details)
  144. [CodeComplete] Member completion for concept-constrained types. (details)
  145. Add manually overriding of the darwin SDK version (details)
  146. [X86][SSE] Simplify PTEST/TESTP tests for D76984 (details)
  147. [X86][SSE] Add additional PTEST/TESTP inversion tests (details)
  148. Make FunctionDecl::isDefined non-virtual, NFC (details)
  149. [llvm-symbolizer] Delete unneeded option name comments. NFC (details)
  150. [NFC] Do not run CGProfilePass when not using integrated assembler (details)
  151. [MLIR] Add simple runner utilities for timing (details)
  152. [lldb/API] Add missing reproducer instrumentation to GetHostPlatform. (details)
  153. Fix 7093b92a136b0696cf9cfc3f9822973ed886be5b (details)
  154. [InstCombine] Deduce attributes for aligned_alloc in InstCombine (details)
  155. [SystemZ] Allow %r0 in address context for AsmParser (details)
  156. Revert "[lldb/Reproducers] Always collect the whole dSYM in the reproducer" (details)
  157. [libc++] Make sure substitutions are expanded inside FILE_DEPENDENCIES (details)
  158. [MLIR][NFC] Move test/Transforms/lower-affine.mlir -> test/Conversion (details)
  159. Add an opque payload field to lldb::Type (NFC). (details)
  160. [libc++] Move a bunch of tests from .sh.cpp to .pass.cpp (details)
  161. [clang-format] Correct line breaks in C# generic type constraints (details)
  162. [intel-pt] Fix existing support in LLDB (details)
  163. [InlineFunction] Handle return attributes on call within inlined body (details)
  164. [AMDGPU] Define 16 bit VGPR subregs (details)
  165. [CodeGenPrepare] Delete intrinsic call to llvm.assume to enable more tailcall (details)
  166. [lld] Initial commit for new Mach-O backend (details)
  167. Replace std::string::find == 0 with StringRef::startswith (details)
  168. [AArch64][SVE] Add support for fcmp. (details)
  169. Add a new -fglobal-isel option and make -fexperimental-isel an alias for it. (details)
  170. [gn build] Port 03f43b3aca36 (details)
  171. [mlir][spirv] Change op doc description autogen separator (details)
  172. [docs] Make llvm-addr2line documentation more explicit about which (details)
  173. Re-land "[lldb/Reproducers] Always collect the whole dSYM in the reproducer" (details)
  174. [libc++] Allow running .sh.cpp tests with SSHExecutors (details)
  175. [InstCombine] Report change in non zero phi transform (details)
  176. [InstCombine] Use replaceOperand() in non zero phi transform (details)
  177. [InstCombine] Erase old alloca in cast of alloca transform (details)
  178. [InstCombine] Use replaceOperand() in descaling (details)
  179. Remove "mask" operand from shufflevector. (details)
  180. [InstCombine] Use replaceOperand() in some select transforms (details)
  181. Revert "[InlineFunction] Handle return attributes on call within inlined body" (details)
  182. [cmake] Link libc++ tests against static libc++/libc++abi in CrossWinToARMLinux.cmake (details)
  183. Switch this function to the LLVM variable naming convention, to match the rest of the file. (details)
  184. [pch] Honour -fallow-pch-with-compiler-errors for overall compilation status (details)
  185. [MLIR][NFC] modernize affine.for unroll test pass (details)
  186. Fixed windows failure after D74873 (details)
  187. [clangd] Don't build clangdserver for (most) completion tests. NFC (details)
  188. [libc++] Use 'export' instead of 'env' to run remote commands (details)
  189. [OPENMP50]Allow use of array shaping expression in a list. (details)
  190. [AArch64] Fix mismatch in prologue and epilogue for funclets on Windows (details)
  191. [AArch64] Change AArch64 Windows EH UnwindHelp object to be a fixed object (details)
  192. [Object] Update ObjectFile::makeTriple for XCOFF (details)
  193. [FileCheck] Add missing %ProtectFileCheckOutput to FileCheck tests (details)
  194. Add a Type::Payload typedef. (NFC) (details)
  195. Replace uint32_t with typedef (NFC) (details)
  196. HIP: Ensure new denormal mode attributes are set (details)
  197. [PPCInstPrinter] Print conditional branches as `bt 2, $target` instead of `bt 2, .+$imm` (details)
  198. AMDGPU: Make HIPToolChain a subclass of AMDGPUToolChain (details)
  199. [ELF][test] Add 'REQUIRES: x86' to threads.s (details)
  200. Fix MSan false positive due to select folding. (details)
  201. [mlir][spirv] Include SPIR-V op definitions in main SPIR-V doc (details)
  202. [libomptarget][nfc] Move non-freestanding headers out of common (details)
  203. [OPENMP50]Fix size calculation for array shaping expression in the (details)
  204. [debugserver/ARM64] Make sure watchpoints hit are attributed correctly. (details)
  205. [lit] Refine adoption of argparse --version action (details)
  206. [OPENMP50]Codegen for array shaping expression in map clauses. (details)
  207. [OPENMP][DOCS]Mark array shaping as done, NFC. (details)
  208. Forward WrapperFrontendAction::shouldEraseOutputFiles() (details)
  209. Fix leak in GVNSink introduced in D72467. (details)
  210. [analyzer] Use IgnoreImpCasts() instead of reimplementing it. (details)
  211. [Support] Delete ioctl TIOCGWINSZ (details)
  212. AMDGPU/GlobalISel: Fix insert point when lowering G_FMAD (details)
  213. [VectorOps] Implement a simple folder for identity vector.transpose operations. (details)
  214. [Driver] Don't pass -fmessage-length=0 to CC1 (details)
  215. Fix diagnostics where _Atomic can't be applied (details)
  216. [Driver] Don't pass -fobjc-rumtime= for non-ObjC input (details)
  217. Fix simultaneous .gcda creation (details)
  218. [X86][MC] Disable Prefix padding after hardcode/prefix (details)
  219. [PowerPC] Don't generate ST_VSR_SCAL_INT if power8-vector is disabled (details)
  220. [RISCV] Split RISCVISelDAGToDAG.cpp to RISCVISelDAGToDAG.h and RISCVISelDAGToDAG.cpp (details)
  221. [clang][xray] Add xray attributes to functions without decls too (details)
  222. [mlir][Linalg] Introduce linalg.pooling_min/max/sum op. (details)
  223. [mlir][Linalg] Extend fusion to support WAW atm on buffers. (details)
  224. [lld][WebAssembly] Early error if output file cannot be created. (details)
  225. [Driver] Flip the CC1 default of -fdiagnostics-show-option (details)
  226. [Frontend] Replace CC1 option -masm-verbose with -fno-verbose-asm (details)
  227. [clangd] Add a flag to turn on recovery-expr. (details)
  228. [X86] Run XOP vector rotation tests with/without AVX2 (details)
  229. [X86][AVX] Add additional 256/512-bit test cases for PACKSS/PACKUS shuffle patterns (details)
  230. [lldb] Allow expect_expr without a running target (details)
  231. [VectorUtils][X86] De-templatize scaleShuffleMask and 2 X86 shuffle mask helpers and move their implementation to cpp files (details)
  232. [TTI] Remove getCallCost (details)
  233. [MLIR] Replace OpBuilder(Block) with atBlockBegin and atBlockEnd (details)
  234. [lldb][NFC] Modernize TestCallUserAnonTypedef (details)
  235. [AVR] Fix function pointer address space (details)
  236. [MLIR] Rename collapsePLoops -> collapseParallelLoops (details)
  237. [lldb][NFC] Modernize call-function tests (details)
  238. [lldb][NFC] Modernize TestXValuePrinting (details)
  239. [Verifier] Verify matrix dimensions operands match vector size. (details)
  240. [DAGCombiner] Require ninf for sqrt recip estimation (details)
  241. [Matrix] Add new test case with getelementptr constant exprs. (details)
  242. tsan: fix Go build on Windows (details)
  243. Add a method to build affine maps with zero or more results. (details)
  244. [clang] Minor cleanup in CloneDetectionTest (details)
  245. [ConstantRange] Use APInt::or/APInt::and for single elements. (details)
  246. [clangd] Force delayed-template-parsing off in code completion. (details)
  247. [mlir][Pass] Add a tablegen backend for defining Pass information (details)
  248. [mlir][Pass] Move the registration of dialect passes to tablegen (details)
  249. [mlir][Pass] Move the registration of conversion passes to tablegen (details)
  250. [mlir][Pass] Add support for generating pass utilities via tablegen (details)
  251. [mlir][Pass] Add support for generating pass documention from the tablegen definition (details)
  252. [lldb] Inherit host environment when running shell commands (details)
  253. [yaml2obj] - Add NBucket and NChain fields for the SHT_HASH section. (details)
  254. [Alignment][NFC] Use Align in SelectionDAG::getMemIntrinsicNode (details)
  255. [lldb] [PECOFF] Only use PECallFrameInfo on the one supported architecture (details)
  256. [X86] Do not assume types are legal in getFauxShuffleMask (details)
  257. [NFC] [PowerPC] Add test for frsp elimination (details)
  258. [LSR] add testcase for wrongly phi node elimination - NFC (details)
  259. Revert "[LSR] add testcase for wrongly phi node elimination - NFC" (details)
  260. [X86][SSE] Handle basic inversion of PTEST/TESTP operands (PR38522) (details)
  261. [Transforms][SROA] Promote allocas with mem2reg for scalable types (details)
  262. [clangd] Run semaCodeComplete only with a preamble (details)
  263. [LSR] re-add testcase for wrongly phi node elimination - NFC (details)
  264. [GVNSink] Simplify code. NFC. (details)
  265. [lldb][NFC] Modernize TestExprChar (details)
  266. Silent failing TestWatchpointCount.py aarch64/linux (details)
  267. [Target][ARM] Change VPTMaskValues to the correct encoding (details)
  268. [Target][ARM] Improvements to the VPT Block Insertion Pass (details)
  269. [clangd-vscode] NFC; Improve wording in documentation and update VSCode tasks (details)
  270. [Alignment][NFC] Convert MIR Yaml to MaybeAlign (details)
  271. Revert "[LSR] re-add testcase for wrongly phi node elimination - NFC" (details)
  272. [ARM] Extra vmull loop tests. NFC (details)
  273. Fix "control reaches end of non-void function" warning. NFCI. (details)
  274. [X86][SSE] matchShuffleWithPACK - generalize zero/signbits matching for any packed src type (details)
  275. [NFC] run clang format on the file llvm/include/llvm/MC/MCDirectives.h (details)
  276. [Alignment][NFC] Convert SelectionDAG::InferPtrAlignment to MaybeAlign (details)
  277. [ARM] Silence warning in Release builds (details)
  278. Fix unused variable warnings. NFCI. (details)
  279. Fix operator precedence warning. NFCI. (details)
  280. [RISCV] Support RISC-V ELF attributes sections in llvm-readobj. (details)
  281. [Alignment][NFC] Transition to MachineFrameInfo::getObjectAlign() (details)
  282. [libc++abi] Fix remote execution of .sh.cpp tests (details)
  283. [X86][SSE] combinePTESTCC - fold TESTZ(X,~Y) -> TESTC(Y,X) (details)
  284. [Alignment][NFC] Remove remaining uses of MachineFrameInfo::setObjectAlignment (details)
  285. [Alignment][NFC] Mark IRTranslator::getMemOpAlignment deprecated (details)
  286. Replace output file name in test with %t (details)
  287. [MLIR] Implement LoopLikeInterface for loop.parallel (details)
  288. [llvm][clang][IFS] Enhancing the llvm-ifs yaml format for symbol lists. (details)
  289. [LegalizeTypes][RISCV] Correctly sign-extend comparison for ATOMIC_CMP_XCHG (details)
  290. [libc++] Handle SSH errors more gracefully and make sure we clean up the tmp directory (details)
  291. clagn-tidy/doc: Add a link to readability-static-accessed-through-instance from readability-convert-member-functions-to-static (details)
  292. [llvm-readobj] - Do not crash when SHT_HASH table is broken. (details)
  293. [ELF] Print symbols with non-default versions for better "undefined symbol" diagnostics (details)
  294. [WebAssembly] Fix subregion relationship in CFGSort (details)
  295. [analyzer] RetainCountChecker: Add a suppression for OSSymbols. (details)
  296. [ELF] Propagate LMA offset to sections with neither AT() nor AT> (details)
  297. [libc++] SSH: Properly handle test-executables that are not the first argument (details)
  298. [clang] CodeGen: Make getOrEmitProtocol public for Swift (details)
  299. [lld] NFC: fix trivial typos in comments (details)
  300. [libc++] SSH: Use -p when scp'ing to preserve modes and modification times (details)
  301. [mlir] Modify GPU to SPIR-V conversion to respect (details)
  302. AMDGPU: Fix consistently backwards logic for default denormal mode (details)
  303. HIP: Link correct denormal mode library (details)
  304. [WebAssembly] Rename SIMD min/max/avgr intrinsics for consistency (details)
  305. [OPENMP50]Add initial support for OpenMP 5.0 iterator. (details)
  306. AMDGPU/GlobalISel: Change intrinsic ID for _L to _LZ opt (details)
  307. AMDGPU/GlobalISel: Switch test to checking final ISA (details)
  308. [llvm-locstats] Fix labels on x-axis of comparison chart (details)
  309. [MLIR][NFC] loop transforms/analyis utils cleanup / modernize (details)
  310. [MLIR][NFC] clean up affine data copy test case (details)
  311. Add LLVM_ATTRIBUTE_UNUSED to function used only in assert (NFC) (details)
  312. Remove linking all targets from `mlir-opt` (NFC) (details)
  313. [mlir][Linalg][Doc] Minor doc fixes (details)
  314. AMDGPU: Fix broken check lines (details)
  315. [InstCombine] Use replaceOperand() in div transforms (details)
  316. [InstCombine] Erase old instruction when replacing extractelements (details)
  317. [Attributor] Make attributor aware of aligned_alloc for heap to stack conversion (details)
  318. [GVN] Make GVN aware of aligned_alloc (details)
  319. [NewGVN] Make NewGVN aware of aligned_alloc (details)
  320. [SimplifyLibCalls] Erase replaced instructions (details)
  321. Revert "[InstCombine] Erase old instruction when replacing extractelements" (details)
  322. Fix PR45371: SeparateConstOffsetFromGEP clean up bookkeeping (details)
  323. Revert "[OPENMP50]Add initial support for OpenMP 5.0 iterator." (details)
  324. [InstCombine] add tests for negate with xor operand; NFC (details)
  325. [InstCombine] enhance freelyNegateValue() by handling xor (details)
  326. [libc] Add sigfillset and sigdelset (details)
  327. [ORC] Add JITDylib name to debugging output when defining symbols. (details)
  328. [ORC] Don't require a null-terminator on MemoryBuffers for objects in archives. (details)
  329. [globalisel][legalizer] Fix DebugLoc bugs caught by a prototype lost-location verifier (details)
  330. [source maps] Ensure all valid source maps are added instead of failing with the first invalid one (details)
  331. [intel-pt] Implement a basic test case (details)
  332. DebugInfo: Defaulted non-type template parameters of bool type (details)
  333. Updating the documentation for the noescape attribute. (details)
  334. Revert "[intel-pt] Implement a basic test case" (details)
  335. [libc++] SSH: Create a tarball of dependencies and scp that instead (details)
  336. [intel-pt] Implement a basic test case (details)
  337. Revert "[intel-pt] Implement a basic test case" (details)
  338. [mlir] Move LLVMPassIncGen to LLVMIR/Transforms/CMakeLists.txt (details)
  339. [MLIR] Add method to drop duplicate result exprs from AffineMap (details)
  340. [MLIR][NFC] drop unnecessary matches in affine dma generate test case (details)
  341. Reapply: [Host.mm] Check for the right macro instead of inlining it (details)
  342. [WebAssembly] EmscriptenEHSjLj: Mark __invoke_ functions as imported (details)
  343. [libcxx] Stop using builtin type traits for is_floating_point and is_arithmetic. (details)
  344. Remove const qualifier from Modules returned by ExternalASTSource. (NFC) (details)
  345. Preserve the owning module information from DWARF in the synthesized AST (details)
  346. [LangRef][AliasAnalysis] Clarify `noalias` affects only modified objects (details)
  347. [Attributor][NFC] Use a BumpPtrAllocator to allocate `AbstractAttribute`s (details)
  348. Revert "Preserve the owning module information from DWARF in the synthesized AST" (details)
  349. [ORC] Export __cxa_atexit from the main JITDylib in LLJIT. (details)
  350. [libc++] Add missing FILE_DEPENDENCIES markup (details)
  351. [libc++] Execute tests from the Lit execution root instead of the test tree (details)
  352. Fix infinite recursion in deferred diag emitter (details)
  353. [Attributor][NFC] Cleanup leftover check lines (details)
  354. [Attributor][FIX] Prevent alignment breakage wrt. must-tail calls (details)
  355. Revert "[ORC] Export __cxa_atexit from the main JITDylib in LLJIT." (details)
  356. [Attributor] Derive better alignment for accessed pointers (details)
  357. [Attributor][NFC] Predetermine the module (details)
  358. [Utils][FIX] Properly deal with occasionally deleted functions (details)
  359. [Attributor][FIX] Do not compute ranges for arguments of declarations (details)
  360. [Attributor] Use the proper context instruction in genericValueTraversal (details)
  361. [cmake] Only set deps for an ExternalProject if the type is executable or library (details)
  362. [DOC] Remove too strong restriction for ‘llvm.experimental.gc.statepoint’ Intrinsic (details)
  363. Correct copy-pasteo in lua script language description (details)
  364. [LLD][ELF] Follow the common pattern in a message about an undefined vtable symbol. (details)
  365. [CUDA][NFC] Split math.h functions out of __clang_cuda_device_functions.h (details)
  366. [openmp] Disable tests flaky on Debian (details)
  367. [OpenMP][FIX] Add second include after header was split in d1705c1196 (details)
  368. [PPCInstPrinter] Change B to print the target address in hexadecimal form (details)
  369. [PPCInstPrinter] Delete an unneeded overload of printBranchOperand. NFC (details)
  370. [libc++] Simplify the configuration of the C++ ABI library (details)
  371. [llvm-exegesis] 'Min' repetition mode (details)
  372. [OpenMP][FIX] Undo changes accidentally already introduced in NFC commit (details)
  373. [OpenMP][NFCI] Move OpenMP clause information to `lib/Frontend/OpenMP` (details)
  374. Revert "[OpenMP][NFCI] Move OpenMP clause information to `lib/Frontend/OpenMP`" (details)
  375. [clangd] Fix an assertion crash in ReferenceFinder. (details)
  376. [NFC][X86] Refine code in X86AsmBackend (details)
  377. Revert "[NFC][X86] Refine code in X86AsmBackend" (details)
  378. [X86] Add SERIALIZE instruction. (details)
  379. [lit] Improve handling of timeouts and max failures (details)
  380. [clang] Move branch-protection from CodeGenOptions to  LangOptions (details)
  381. Fix RUN line in AArch64/speculation-hardening.ll (details)
  382. [Object] Add the method for checking if a section is a debug section (details)
  383. [NFC] Fix performance issue in LiveDebugVariables (details)
  384. [Alignment][NFC] Use more Align versions of various functions (details)
  385. [CallSiteSplitting] Simplify isPredicateOnPHI & continue checking PHIs. (details)
  386. [ExpandMemCmp] Allow overlaping loads in the zero-relational case. (details)
  387. [NFC] Preparatory work for D77292 (details)
  388. [NFC][update_llc_test_checks] Remove the redundant SCRUB_LOOP_COMMENT_RE in asm.py (details)
  389. Recommit "[lldb] Fix TestSettings.test_pass_host_env_vars on windows" (details)
  390. [ARM] Make remaining MVE instruction predictable (details)
  391. [ARM] MVE VMULL patterns (details)
  392. [NFC][PowerPC] Add a new test case loop-comment.ll (details)
  393. [gn build] remove NOSORT from clang/Headers/BUILD.gn (details)
  394. [gn build] Port d08fadd6628 (details)
  395. [gn build] Port d1705c1196f (details)
  396. tsan: don't check libc dependency on FreeBSD (details)
  397. [llvm-mca] Cleanup unnecessary includes from headers (details)
  398. [mlir] LLVMFuncOp: provide a capability to pass attributes through to LLVM IR (details)
  399. [clang][AARCH64] Add __ARM_FEATURE_{PAC, BTI}_DEFAULT  defines (details)
  400. [Clang][CodeGen] Fixing mismatch between memory layout and const expressions for oversized bitfields (details)
  401. Fix "result of 32-bit shift implicitly converted to 64 bits" MSVC warning. NFCI. (details)
  402. [llvm-dwarfdump] Add the --show-sections-sizes option (details)
  403. [gn build] Port 5e508b9bac0 (details)
  404. [LoopTerminology] Make term names bold (details)
  405. [InstCombine] add tests for disguised vector trunc; NFC (details)
  406. [PhaseOrdering] add test for vector trunc; NFC (details)
  407. [OpenCL] Add sub-group builtin functions (details)
  408. Revert "[lld] Initial commit for new Mach-O backend" (details)
  409. [OPENMP50]Add initial support for OpenMP 5.0 iterator. (details)
  410. [lldb] Change Communication::SetConnection to take a unique_ptr (details)
  411. [NFC][PowerPC] Using update_llc_test_checks.py to update atomics-regression.ll (details)
  412. [LoopDataPrefetch + SystemZ] Let target decide on prefetching for each loop. (details)
  413. [NFC] Split Knowledge retention and place it more appropriatly (details)
  414. Revert "[InstCombine] do not exclude min/max from icmp with casted operand fold" (details)
  415. [libc++] Fix linking libc++abi in standalone builds (details)
  416. [lldb] update eArgTypeScriptLang description to mention lua (details)
  417. [SystemZ] Add isCommutable flag on vector instructions. (details)
  418. Add OMPIterator case in switch statement to silence warnings (details)
  419. [docs] use git diff instead of git format-patch (details)
  420. Fix several typos in the attribute documentation. (details)
  421. [libc++] Reimplement the dynamic filesystem helper without using Python (details)
  422. [clangd] Get rid of redundant make_uniques (details)
  423. [analyzer] StdLibraryFunctionsChecker: fix bug with arg constraints (details)
  424. [libc++][test] Update _LIBCPP_SUPPRESS_DEPRECATED_(PUSH|POP) (details)
  425. [NFC] remove delcartion that shouldn't be there (details)
  426. Revert "[SimplifyLibCalls] Erase replaced instructions" (details)
  427. [clangd] Add a tweak for adding "using" statement. (details)
  428. [clangd] Don't send semanticHighlights to clients that support semanticTokens. (details)
  429. [clangd] Support textDocument/semanticTokens/edits (details)
  430. NFC: Comment in TargetTransformInfo.h reformatted (by Michael Kruse). (details)
  431. [LoopDataPrefetch] Remove unused include that's a layering violation (details)
  432. [libc++] Attempt to fix the 'runtimes' build (details)
  433. [ELF] Change some "Alias for " help messages to use double dashed options (details)
  434. Revert "[gn build] Port 03f43b3aca36" (details)
  435. [gn build] Port 24bb2d1e776 (details)
  436. [gn build] Port c00cb76274f (details)
  437. [mlir] StandardToLLVM conversion: remove dead code (details)
  438. Convert for loops to entry-based iteration (details)
  439. [InstCombine] add tests for cmyk benchmark; NFC (details)
  440. [mlir][LLVM] Finer-grained control for C interface emission (details)
  441. [libc++] Try to fix Chromium's build (details)
  442. [libc++abi] NFC: Add link to review in workaround comment (details)
  443. [AMDGPU] Fix crash in SILoadStoreOptimizer (details)
  444. [VectorCombine] transform bitcasted shuffle to narrower elements (details)
  445. [InstCombine] try to reduce shuffle with bitcasted operand (details)
  446. Exit unwinding early when at the top of the stack and additional info won't be found. (details)
  447. Make it possible for lit.site.cfg to contain relative paths, and use it for llvm and clang (details)
  448. AMDGPU: Hack out noinline on functions using LDS globals (details)
  449. [InlineFunction] Update valid return attributes at callsite within callee body (details)
  450. Make fb80b6b2d58c4 actually work. (details)
  451. [intel-pt] Implement a basic test case (details)
  452. Change pass registration generated code to allow users to selectively register passes (details)
  453. Revert "Make it possible for lit.site.cfg to contain relative paths, and use it for llvm and clang" (details)
  454. Reland D75382 "[lld] Initial commit for new Mach-O backend" (details)
  455. [X86] Enable combineExtSetcc for vectors larger than 256 bits when we've disabled 512 bit vectors. (details)
  456. [libc++][test] Partially revert msvc_stdlib_force_include.h _Pragma change (details)
  457. [llvm][TextAPI] adding inlining reexported libraries support (details)
  458. Reland "Make it possible for lit.site.cfg to contain relative paths, and use it for llvm and clang" (details)
  459. [libc++] Refer to the Filesystem static test env as relative paths (details)
  460. [libc++] NFC: Add documentation for writing tests (details)
  461. utils: Tweak clang-parse-diagnostics-file for modules includes (details)
  462. AMDGPU: Assume f32 denormals are enabled by default (details)
  463. clang/AMDGPU: Stop setting old denormal subtarget features (details)
  464. AMDGPU: Remove denormal subtarget features (details)
  465. AMDGPU: Add some tests for exotic denormal mode combinations (details)
  466. AMDGPU: Use 128-bit DS operations by default (details)
  467. [lit] Remove unnecessary indirection in progress_callback (details)
  468. [lit] Refine filter error handling (details)
  469. iOS simulator testing: replace `simctl bootstatus` with boot+shutdown (details)
  470. [llvm-objdump][COFF][NFC] Split format-specific interfaces; add namespace (details)
  471. AMDGPU: Fix broken check lines (details)
  472. Re-apply 0071eaaf089, "[ORC] Export __cxa_atexit ...", with fixes. (details)
  473. Try again to get tests passing again on Windows. (details)
  474. try more to appease win bots (details)
  475. Teach the stripNonLineTableDebugInfo pass about the llvm.dbg.addr intrinsic. (details)
  476. Teach the stripNonLineTableDebugInfo pass about the llvm.dbg.label intrinsic. (details)
  477. [AMDGPU] Handle SMRD signed offset immediate (details)
  478. [mlir][Linalg] NFC - Rename Linalg and Vector EDSCs to avoid collisions (details)
  479. [Coroutines] Simplify implementation using removePredecessor (details)
  480. another wild guess at the win bot-only failures (details)
  481. Have lldb-vscode update the currently selecte thread and frame when it receives a "scopes" request. (details)
  482. [mlir][VectorOps] Implement canonicalization for TransposeOp. (details)
  483. [coroutines] Don't build promise init with no args (details)
  484. This might actually fix the Windows bots after a16ba6fea. (details)
  485. [PowerPC] Remove unnecessary XSRSP instruction (details)
  486. [x86] Fix Intel OpenCL builtin CalleeSavedRegs on skx (details)
  487. [AArch64][GlobalISel] Constrain reg operands in selectBrJT (details)
  488. [X86] Add -flax-vector-conversions=none to more of the clang CodeGen tests (details)
  489. Enable IBT(Indirect Branch Tracking) in JIT with CET(Control-flow Enforcement Technology) (details)
  490. Fix a bug in the inliner that causes subsequent double inlining (details)
  491. Handle exp2 with proper vectorization and lowering to SVML calls (details)
  492. Use git-clang-format as Arcanist linter (details)
  493. [X86][NFC] Generalize the naming of "Retpoline Thunks" and related code to "Indirect Thunks" (details)
  494. [gn build] Port 71e8021d82c (details)
  495. [X86] Refactor X86IndirectThunks.cpp to Accommodate Mitigations other than Retpoline (details)
  496. Bugix for buildbot failure at commit 43f031d31264d20cfb8f1ebd606c66e57c231d4d (details)
  497. [DAG] Change isGCValue detection for statepoint lowering (details)
  498. [DWARF5] Added support for debug_macro section parsing and dumping in llvm-dwarfdump. (details)
  499. [DebugInfo] Rename getOffset() to getContribution(). NFC. (details)
  500. Silence -Wpessimizing-move warning (details)
  501. [X86] Add Indirect Thunk Support to X86 to mitigate Load Value Injection (LVI) (details)
  502. Silence -Wpessimizing-move warning (details)
  503. [NFC] G_DYN_STACKALLOC realign iff align > 1, update documentation (details)
  504. [DebugInfo] Salvage debug info when sinking loop invariant instructions (details)
  505. Use --style file instead of --style LLVM (details)
  506. [Alignment][NFC] Convert MachineIRBuilder::buildDynStackAlloc to Align (details)
  507. [AMDGPU] Fix CHECK lines (details)
  508. [Alignment][NFC] Remove unused private functions (details)
  509. [LLD][ELF][ARM] use .reloc directive for Thumb assembler tests (details)
  510. Make helpers static. NFC. (details)
  511. Drop unused diagnostic. NFC. (details)
  512. [mlir][vulkan-runner] Add support for 3D memrefs. (details)
  513. clang-format: [JS] detect C++ keywords. (details)
  514. [lldb][nfc] early exit/continue (details)
  515. [AMDGPU] Allow AGPR in inline asm (details)
  516. [X86][AVX] Add tests showing failure to use chained PACKSS/PACKUS for multi-stage compaction shuffles (details)
  517. [Alignment][NFC] Deprecate InstrTypes getRetAlignment/getParamAlignment (details)
  518. [mips][test] Remove redundant and invalid `CHECK-NOT` directives. NFC (details)
  519. [NFC][XCOFF][AIX] Refactor get/setContainingCsect (details)
  520. Revert "Use git-clang-format as Arcanist linter" (details)
  521. [clangd] Enable some nice clang-tidy checks by default. (details)
  522. [gn build] Port d65557d15d4 (details)
  523. [Hexagon] Fix issue with non-preemptible STT_TLS symbols (details)
  524. [X86] Regenerate stack clash test to fix issue reported on D77354 (details)
  525. [X86] Regenerate soft fp legalization test to fix issue reported on D77354 (details)
  526. Fix __builtin_amdgcn_workgroup_size_x/y/z return type (details)
  527. [libc++] Add REQUIRES for tests that need -fblocks and -fobjc-arc (details)
  528. [Alignment][NFC] Remove documentation and FIXME for deprecated functions (details)
  529. [libc++] Fix is_pointer support for Objective-C++ (details)
  530. [LoopOps] Return ArrayRefs from accessors instead of iterator_ranges (details)
  531. [X86] Cleanup emulated TLS test checks. NFC (details)
  532. [X86] Fix strong local function/global label issue reported on D77354 (details)
  533. [X86] Fix gisel copy tests to fix issue reported on D77354 (details)
  534. [X86] Fix weak global label issue reported on D77354 (details)
  535. [MSan] Add COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED (details)
  536. [AST] clang::VectorType supports any size (that fits in unsigned) (details)
  537. [libc++] Add an alternative Lit test format (details)
  538. [X86] Remove defunct section checks from emulated TLS tests to fix issue reported on D77354 (details)
  539. [ELF] Allow invalid sh_size%sh_entsize!=0 for non-SHF_MERGE sections (details)
  540. InstCombine: Reduce minnum/maxnum if inputs are casted (details)
  541. [PowerPC] Regenerate f128 test to fix issue reported on D77354 (details)
  542. [LoopRotate] Cleanup test checks to fix issue reported on D77354 (details)
  543. [lldb/Symbol] Reimplement Symbols::FindSymbolFileInBundle to use the VFS (details)
  544. [lldb/Support] Treat empty FileSpec as an invalid file. (details)
  545. [InstSimplify] Regenerate compares tests to fix issue reported on D77354 (details)
  546. Run update_llc_test on test/CodeGen/ARM/vmov.ll (details)
  547. [ARM] Avoid pointless vrev of element-wise vmov (details)
  548. [ARM] Fix incorrect handling of big-endian vmov.i64 (details)
  549. [PhaseOrdering] add shuffle tests based on D40633; NFC (details)
  550. [AArch64] Fix swap-compare-operands test names to fix issue reported on D77354 (details)
  551. [cuda][hip] Fix `RegisterVar` function prototype. (details)
  552. [LoopStrengthReduce] Fix test checks to fix issue reported on D77227 (details)
  553. [NFC] Move ARM `opt -indvars` test from Codegen into Transforms (details)
  554. Revert "[SCEV] rewriteLoopExitValues(): even if have hard uses, still rewrite if cheap (PR44668)" (details)
  555. [X86][SSE] lowerShuffleWithPACK - extend to use chained PACKs for larger truncations (details)
  556. [CMAKE] Plumb include_directories() into tablegen() (details)
  557. Revert "[CMAKE] Plumb include_directories() into tablegen()" (details)
  558. [libc++] Remove useless nothing_to_do.pass.cpp tests (details)
  559. [Support/Path] sys::path::replace_path_prefix fix and simplifications (details)
  560. [VectorCombine] try to form a better extractelement (details)
  561. [YAMLParser] Scanner::setError - ensure we use the StringRef::iterator argument (PR45043) (details)
  562. [libc++] Remove support for specifying LIBCXX_CXX_ABI_SYSTEM manually (details)
  563. [AMDGPU] Propagate AGPR RC from PHI to its PHI operands (details)
  564. [CMAKE] Plumb include_directories() into tablegen() (details)
  565. Clean up usages of asserting vector getters in Type (details)
  566. [mlir] DialectConversion: support block creation in ConversionPatternRewriter (details)
  567. [AMDGPU] Added label to test. NFC. (details)
  568. [clang-tidy] Address false positive in modernize-use-default-member-init (details)
  569. [libc++] NFC: Remove unused CMake option (details)
  570. AMDGPU: Remove redundant virtual (details)
  571. AMDGPU: Use Register in more places (details)
  572. CodeGen: Convert some TII hooks to use Register (details)
  573. Support: Add specializations for reverseBits to use builtin (details)
  574. [compiler-rt] Build with correct ABI (PR38025) (details)
  575. [PowerPC] Replace subtract-from-zero float in version with fneg in PowerPC special fma compiler builtins (details)
  576. [X86] Add RET-hardening Support to mitigate Load Value Injection (LVI) (details)
  577. [GraphDiff] Extend GraphDiff to track a list of updates. (details)
  578. Fix typo in test. (details)
  579. [ORC] Improve documention of memory ownership in the new Orc C bindings. (details)
  580. Test had incorrect check for nonzero count (details)
  581. Don't use relpaths in lit cfg if build/source dir are on different drives. (details)
  582. Revert "[PowerPC] Replace subtract-from-zero float in version with fneg in PowerPC special fma compiler builtins" (details)
  583. [gn build] Port f95a67d8b8a (details)
  584. [nfc] [lldb] Unindent code - obvious part (details)
  585. [X86] Add a Pass that builds a Condensed CFG for Load Value Injection (LVI) Gadgets (details)
  586. [lit] Cleanly exit on user keyboard interrupt (details)
  587. [gn build] Port c74dd640fd7 (details)
  588. [mlir][Linalg] Employ finer-grained control of C interface emission (details)
  589. [OpenMP][NFC] Remove the need to include `OpenMPClause.h` (details)
  590. [X86] Add Support for Load Hardening to Mitigate Load Value Injection (LVI) (details)
  591. [test] preformat test with update_llc_test_checks.py NFC (details)
  592. Fix standalone clang builds after fb80b6b2d58. (details)
  593. [InstCombine] add tests for freelyNegateValue with 'not'; NFC (details)
  594. [mlir] LoopToStandard conversion: support "if/else" with results (details)
  595. [libc++] Lit: Add default values for most arguments of test executors (details)
  596. Make ThreadPlans use TID and Process, rather than Thread *. (details)
  597. Make ThreadPlanTracers use TID & Process rather than Thread *. (details)
  598. Move thread plan stacks into the Process, indexed by TID. (details)
  599. Allow the ThreadPlanStackMap to hold the thread plans for threads (details)
  600. [libc] Add strlen implementation. (details)
  601. [lldb] Findtypes -gmodules fix for too many matches (details)
  602. [libc] Fix memcpy to adhere to qualified calls. (details)
  603. [Driver] Handle all optimization-record options for Darwin LTO (details)
  604. [ObjC generics] Fix not inheriting type bounds in categories/extensions. (details)
  605. Avoid using std::max_align_t in pre-C++11 mode (details)
  606. [MS] Fix assert handling enum forward decls in hasVisibleDefinition (details)
  607. Revert "[X86] Add Support for Load Hardening to Mitigate Load Value Injection (LVI)" (details)
  608. Revert "[X86] Add a Pass that builds a Condensed CFG for Load Value Injection (LVI) Gadgets" (details)
  609. [gn build] Port 1d42c0db9a2 (details)
  610. Disable two new tests on Windows.  They are failing but the logs are not helpful. (details)
  611. [intel-mpx] Delete an unnecessary license header (details)
  612. Fix unused variable, format, and format string warnings. (details)
  613. [llvm-stress][opaque pointers] Remove use of deprecated constructor (details)
  614. [clang codegen][opaque pointers] Remove use of deprecated constructor (details)
  615. [polly][opaque pointers] Remove use of deprecated APIs. (details)
  616. [clang][opaque pointers] Fix up a bunch of "getType()->getElementType()" (details)
  617. This test is failing on the Ubuntu bot but the bot log doesn't (details)
  618. PR45402: Make the restrictions on constant evaluation of memcmp and (details)
  619. [NFC][PowerPC] Pre-commit a test case for D77448 (details)
  620. [mlir] Change the default of `mlir-print-op-on-diagnostic` to true (details)
  621. [source maps] Fix remove, insert-after and replace (details)
  622. [mlir][DeclarativeParser] Emit an error if a `:` follows an attribute with a non-constant type. (details)
  623. Fix LLDB debug builds (details)
  624. The thread plan list test is failing at least on Ubuntu Linux. (details)
  625. [OpenMP] NFC: Fix trivial typo (details)
  626. Fix typos in toy tutorial (details)
  627. Don't treat a CXXScopeSpec with a nested name specifier but no location (details)
  628. Add mention of advantages of `arc` in the Phabricator doc. (details)
  629. AMDGPU: Fix a few more tests with old denormal subtarget features (details)
  630. [MLIR] Fix shape inference in toy tutorial (details)
  631. [clang] Annotate trivial getters and setters on hover. (details)
  632. [clangd] Tweak parseDocumentation loop to use raw lines. NFC (details)
  633. [libc++] Attempt to workaround module invalidation bug (details)
  634. [IVDescriptors] Remove unnecessary DemandedBits.h include; NFC (details)
  635. [IVDescriptors] Remove IRBuilder.h include; NFC (details)
  636. [Reassociate] Use IRBuilderBase; NFC (details)
  637. [Object] object::ELFObjectFile::dynamic_symbol_begin(): skip symbol index 0 (details)
  638. [VNCoercion] Use IRBuilderBase; NFC (details)
  639. [IRBuilder] Move some code into the cpp file; NFC (details)
  640. [X86][SSE] lowerV8I16Shuffle - lower compaction shuffles using PACKUSDW(PBLENDW,PBLENDW) on SSE41+ (details)
  641. [CostModel][X86] Add insert/extract cost tests for sub-128bit vXi8/vXi16 vectors (details)
  642. [CostModel][X86] Add shuffle cost tests for sub-128bit vectors (details)
  643. [WebAssembly] Fix wasm.lsda() optimization in WasmEHPrepare (details)
  644. [clang-tidy]: fix false positive of cert-oop54-cpp check. (details)
  645. Disable relative paths in lit.site.cfg in presence of symlinks (details)
  646. [OpenMP][NFC] Remove unnecessary argument (details)
  647. [Attributor] Deduce attributes for non-exact functions (details)
  648. [InstCombine] Don't limit uses in eraseInstFromFunction() (details)
  649. fix typo in comment to cycle bots (details)
  650. [WebAssembly] Fix a sanitizer error in WasmEHPrepare (details)
  651. [mlir] Add an out-of-tree dialect example (details)
  652. [LV] Simplify tryToWiden as recipes are not re-used (NFC). (details)
  653. [InstCombine] add more tests for min/max folding; NFC (details)
  654. [ValueTracking] add tests for smin/smax; NFC (details)
  655. [ELF][test] Test that thunks are processed before finalizeSynthetic(in.symTab) (details)
  656. [ELF][PPC64] Enable R_PPC64_REL14 trunks (details)
  657. [DAG] Fix PR45049: LegalizeTypes crash (details)
  658. Revert "[DAG] Fix PR45049: LegalizeTypes crash" (details)
  659. libcxx 'LLVM_USE_SANITIZER=Address;Undefined' (details)
  660. [libc++] Enable the new libc++ testing format by default (details)
  661. [X86] Cleanup vectorcall test checks (details)
  662. [CostModel][X86] Add some insert subvector cost tests for vXf32/vXi32/vXi16/vXi8 types (details)
  663. [compiler-rt] Fix build on NetBSD 9.99.52+ (details)
  664. [Attributor] AAUndefinedBehavior: Use AAValueSimplify in memory accessing instructions. (details)
  665. AMDGPU: Add feature for fast f32 denormals (details)
  666. [Attributor] Make use of analysis in the MustBeExecutedExplorer (details)
  667. [Attributor] AAReachability : use isPotentiallyReachable in isKnownReachable (details)
  668. AMDGPU: Fix annotate kernel features through casted calls (details)
  669. [clang-tools-extra] NFC: Fix trivial typo in documents and comments (details)
  670. [mlir] NFC: Fix trivial typo (details)
  671. [llvm-objdump] Teach `llvm-objdump` dump dynamic symbols. (details)
  672. [llvm-objdump][test] Remove unimplemented-features.test (details)
  673. [llvm-objdump][test] Recommit unimplemented-features.test (details)
  674. [llvm-nm] Add test for `--debug-syms --dynamic` (details)
  675. [llvm-objdump] Simplify conditional statements (isa<...>(Obj) => Obj->isSomeFile()) (details)
  676. [clang-tools-extra] NFC: Fix trivial typo in documents and comments (details)
  677. [mlir][ODS] Add support for variadic regions. (details)
  678. [MLIR] Don't insert YieldOp for non-void loop.for by default. (details)
  679. [X86][SSE] truncateVectorWithPACK - upper undef for 128->64 packing (details)
  680. [X86][SSE] Generalize shuffle(HORIZOP,HORIZOP) -> HORIZOP combine (details)
  681. Revert "Test had incorrect check for nonzero count" (details)
  682. [clang] Make libcxx test suite pass again after memcmp changes (details)
  683. Revert "[libc++] Enable the new libc++ testing format by default" (details)
  684. [ValueTracking] Use Inst::comesBefore in isValidAssumeForCtx (NFC). (details)
  685. [X86] Roll some loops. NFCI. (details)
  686. [ARM] add ARMv8.6-A Activity monitors virtualization extension (details)
  687. [ValueTracking] enhance matching of smin/smax with 'not' operands (details)
  688. [InstCombine] enhance freelyNegateValue() by handling 'not' (details)
  689. [ARM] Add ARMv8.6 Fine Grain Traps system registers (details)
  690. [MLIR] fix greedy pattern rewrite driver iteration on change (details)
  691. [MLIR][NFC] fix name operand -> userOp (details)
  692. [InstCombine] convert bitcast-shuffle to vector trunc (details)
  693. [MLIR] Add pattern rewriter util to erase block; remove dead else (details)
  694. [ARM] Add enhanced counter virtualization system registers (details)
  695. [ARM] Add data gathering hint instruction (details)
  696. AMDGPU/GlobalISel: Add some G_INSERT/G_EXTRACT select tests (details)
  697. Fix typo in xfail decorator for lldb thread plan list tests (details)
  698. [scan-build] fix dead store warnings emitted on LLVM AMDGPU code base (details)
  699. Remove the additional constant which requires an extra register for statepoint lowering. (details)
  700. clang: Make tests using symlinks more consistent. (details)
  701. make ccabe93298 more robust (details)
  702. [ELF][test] Reorganize warn-backrefs.s (details)
  703. Make the AsmPrinter print "<<NULL TYPE>>" instead of crashing on null types (details)
  704. [DebugInfo]: Allow DwarfCompileUnit to have line table symbol (details)
  705. [InlineFunction] Update metadata on loads that are return values (details)
  706. [mlir][Pass] Add documentation for the declarative pass specification (details)
  707. [mlir] Update the documentation on Canonicalization (details)
  708. [MLIR][NFC] Make AsmPrinter messages on null structures consistent (details)
  709. [X86][SSE] Combine unary shuffle(HORIZOP,HORIZOP) -> HORIZOP (details)
  710. Remove unused function 'isInRange'. NFCI. (details)
  711. Add documentation and testing for (details)
  712. Permit constant evaluation of mixed __builtin_memcmp between char and (details)
  713. [mlir] Only number the parent operation in Block::printAsOperand (details)
  714. [mlir] Refactor and cleanup the translation facilities. (details)
  715. DebugInfo: Fix default template parameter computation for dependent non-type template parameters (details)
  716. [mlir][spirv] NFC: remove uncessary return after llvm_unreachable (details)
  717. [ORC] Add MachO universal binary support to StaticLibraryDefinitionGenerator. (details)
  718. Expose `attributor-disable` to the new and old pass managers (details)
  719. [OpenMP][NFCI] Move OpenMP clause information to `lib/Frontend/OpenMP` (details)
  720. [clang] Persist Attr::IsPackExpansion into the PCH (details)
  721. [DAGCombiner] Replace a hardcoded constant in visitZERO_EXTEND with a proper check for the condition its trying to protect. (details)
  722. [OpenMP] Add extra qualification to OpenMP clause id (details)
  723. [OpenMP][NFC] Move and simplify directive -> allowed clause mapping (details)
  724. [DAGCombiner] Use getAnyExtOrTrunc instead of getSExtOrTrunc in the zext(setcc) combine. (details)
  725. PR45239: Don't deallocate TemplateIdAnnotations if they might still be (details)
  726. [llvm-dwp] Refactor handling of section identifiers. NFCI. (details)
  727. [DebugInfo] Rename section identifiers which are deprecated in DWARFv5. NFC. (details)
  728. [DebugInfo] Support DWARFv5 index sections. (details)
  729. [DebugInfo] Fix reading location tables of v5 units in DWP. (details)
  730. [DebugInfo] Fix reading location tables headers of v5 units in DWP. (details)
  731. [DebugInfo] Fix reading range lists of v5 units in DWP. (details)
  732. [Alignment][NFC] Add DebugStr and operator* (details)
  733. [libc] NFC: Fix trivial typo in comments, documents, and messages (details)
  734. [llvm-dwp] Fix a possible out of bound access. (details)
  735. [lldb][NFC] Modernize lang/cpp/scope test (details)
  736. Revert "[Alignment][NFC] Add DebugStr and operator*" (details)
  737. [MLIR] Change return type of ParallelOp::getInductionVars to ValueRange. (details)
  738. [Matrix] Add initial tiling for load/multiply/store chains. (details)
  739. [lldb] XFAIL TestThreadPlanCommands _only_ on aarch64 (details)
  740. [lldb] Also apply Fix-Its in "note:" diagnostics that belong to an error diagnostic (details)
  741. [clang] fix undefined behaviour in RawComment::getFormattedText() (details)
  742. [Matrix] Add option to use row-major matrix layout as default. (details)
  743. [AArch64][SVE] Add SVE intrinsics for saturating add & subtract (details)
  744. [lldb] Add option to retry Fix-Its multiple times to failed expressions (details)
  745. Revert "[IPRA][ARM] Spill extra registers at -Oz" (details)
  746. [VE] Update lea/load/store instructions (details)
  747. [ARM] MVE vqmovn tests. NFC. (details)
  748. [llvm-bcanalyzer] Simplify code. NFCI. (details)
  749. [RuntimeDyld] Replace hand-rolled endian conversion with support::endian. NFCI. (details)
  750. [LTO] Replace hand-rolled endian conversion with support::endian. NFCI. (details)
  751. [X86][SSE] combineVectorSignBitsTruncation - remove minimum vector length limitations (details)
  752. [Alignment][NFC] Remove deprecated functions introduced in 10.0.0 (details)
  753. [Alignment][NFC] Add DebugStr and operator* (details)
  754. [Support] Make DataExtractor string functions error-aware (details)
  755. [llvm/Support] Make more DataExtractor methods error-aware (details)
  756. [llvm/Support] Don't crash on empty nullptr ranges when decoding LEBs (details)
  757. [DWARF5] Added support for emission of debug_macro section. (details)
  758. Add a triple to test/ExecutionEngine/MCJIT/cet-code-model-lager.ll (details)
  759. [mlir][LowerToAffineLoops] Handle tensors of rank 0 (details)
  760. Revert 43f031d3126 "Enable IBT(Indirect Branch Tracking) in JIT with CET(Control-flow Enforcement Technology)" (details)
  761. [libc++] [test] Add missing FILE_DEPENDENCIES to align.pass.sh.cpp (details)
  762. Make paths in generated llvm-lit relative as well. (details)
  763. DAG: Combine extract_vector_elt of concat_vectors (details)
  764. AMDGPU: Remove DisableInst feature (details)
  765. AMDGPU: Use DAG patterns for div_fmas (details)
  766. test commit (details)
  767. [lldb-server] jThreadsInfo returns stack memory (details)
  768. Make test more robust (details)
  769. [Matrix] Update load/storeMatrix to take indices as Value* (NFC). (details)
  770. [MC] Use a byte_swap in emitIntValue instead of doing it in a loop.  NFCI. (details)
  771. [Polly] Add -polly-isl-arg command line option. (details)
  772. [libc++] SSH: Fix tarring of dependencies on Windows (details)
  773. [OpenMP][FIX] Add missing cmake dependence needed after 931c0cd713ee (details)
  774. Make clang/test/Driver/cl-options.cu pass in 32-bit builds (details)
  775. [lldb][nfc] remove overriden funcs with default impl (details)
  776. [llvm-objdump][XCOFF] Use symbol index+symbol name + storage mapping class as label for -D (details)
  777. [NFC][PPC][AIX] Test updates for byval args that fit in a single register (details)
  778. try to fix tsan bot (details)
  779. [Alignment][NFC] Assume AlignmentFromAssumptions::getNewAlignment is always set. (details)
  780. AMDGPU/GlobalISel: Add unmerge of concat tests (details)
  781. [AIX][PPC] Implement by-val caller arguments in multiple registers (details)
  782. [VPlan] Introduce new VPWidenCallRecipe (NFC). (details)
  783. [analyzer] StdLibraryFunctionsChecker: Add test for function with default parameter (details)
  784. clang-format: [JS] handle pseudo-keywords. (details)
  785. [ValueTracking] add/adjust tests for min/max; NFC (details)
  786. [mlir][Linalg] Add a linalg.tensor_reshape to operate on tensors (details)
  787. [libc++] Mark is_scalar test as unsupported in C++11 and C++14 (details)
  788. [libc++] Make sure we include %{flags} when building with the new format (details)
  789. [analyzer] StdLibraryFunctionsChecker: match signature based on FunctionDecl (details)
  790. [libc++] Always use -fsyntax-only in .fail.cpp tests (details)
  791. [AMDGPU] Fix inaccurate comments (details)
  792. AMDGPU/GlobalISel: Fix llvm.amdgcn.div.fmas.ll (details)
  793. AMDGPU/GlobalISel: Select llvm.amdgcn.div.scale (details)
  794. Fix a typo in an assert message; NFC. (details)
  795. [ValueTracking] enhance matching of umin/umax with 'not' operands (details)
  796. [llvm] Fix missing FileCheck directive colons (details)
  797. [llvm-objdump] Fix case of -Wmismatched-tags (details)
  798. Use in-tree clang-format-diff.py as Arcanist linter (details)
  799. [lldb] NFC: Fix trivial typo in comments, documents, and messages (details)
  800. [OPENMP]Fix PR45439: `omp for collapse(2) ordered(2)` generates invalid (details)
  801. [RDA] Don't adjust ReachingDefDefaultVal (NFCI) (details)
  802. [x86] add size cost tests for casts and binops; NFC (details)
  803. [RDA] Only store most recent reaching def from predecessors (NFCI) (details)
  804. [libc++] Mark two std::timed_mutex tests as flaky (details)
  805. [sanitizer_common] Show new unexpected symbols. (details)
  806. [sanitizer_common] Update global_symbols.txt. (details)
  807. [ELF] Make --version-script/--dynamic-list work for lazy symbols fetched by LTO libcalls (details)
  808. [DebugInfo] Change to constructor homing debug info mode: skip literal types (details)
  809. [LV] Fix value that could be read uninitialized. (details)
  810. [AArch64] Allow logical immediates to have all-1 in top bits (details)
  811. Revert "[sanitizer_common] Update global_symbols.txt." (details)
  812. Revert "[sanitizer_common] Show new unexpected symbols." (details)
  813. [sanitizer_common] Update global_symbols.txt. (details)
  814. [AMDGPU] Disable 'Skip Uniform Regions' optimization by default for AMDGPU. (details)
  815. Speed up deferred diagnostic emitter (details)
  816. [AST] Remove DeclCXX.h dep on ASTContext.h (details)
  817. [analyzer] Fix scan-build and exploded-graph-rewriter tests on Windows. (details)
  818. [analyzer] Fix NSErrorChecker false positives on constructors. (details)
  819. [libc++] Make sure we execute tests with the current environment (details)
  820. [mlir] Fix typo in docs/DefiningAttributesAndTypes.md (details)
  821. Remove llvm::Error include form Diagnostic.h (details)
  822. [CFGPrinter][CallPrinter][polly] Adding distinct structure for CFGDOTInfo (details)
  823. [clang-tidy] Add check llvmlibc-implementation-in-namespace. (details)
  824. Revert e1730cfeb3588f20dcf4a96b181ad52761666e52 (details)
  825. [gn build] Port 00a57558978 (details)
  826. [lit] Move the recursiveExpansionLimit setting to TestingConfig (details)
  827. [Hexagon] Make lld be the default linker for linux/musl (details)
  828. [NFC] Minor fix for deferred diagnostics emitter (details)
  829. [SelectionDAGBuilder] Fix ISD::FREEZE creation for structs with fields of different types. (details)
  830. [OpenMP] Fix layering problem with FrontendOpenMP (details)
  831. [clang][CodeComplete] Dont perform fallback completion for incomplete member ref (details)
  832. [mlir][AsmPrinter] Change value numbering for local scope to be the next isolated operation. (details)
  833. Add InjectTLIMappings pass to new pass manager (details)
  834. Remove math.h/cmath include from DataTypes.h (details)
  835. [WebAssembly] Handle event exports (details)
  836. [llvm][CodeGen] Avoid implicit cast of TypeSize to integer in `initActions`. (details)
  837. [ASTMatchers] Matchers that take enumerations args provide hints with invalid arguments (details)
  838. Fix mismatch from D77112 and D77499 (details)
  839. [clangd] Decouple preambleworker from astworker, NFCI (details)
  840. [clangd] Update TUStatus api to accommodate preamble thread (details)
  841. [clangd] Build ASTs only with fresh preambles or after building a new preamble (details)
  842. [gn build] Port 427c1dc4f42 (details)
  843. Delete a variable that's been unused since r313407. (details)
  844. [clangd] Fix bad include (details)
  845. [CodeGenObjC] Fix a crash when attempting to copy a zero-sized bit-field in a non-trivial C struct (details)
  846. AMDGPU: Remove dead paths for requiresUniformRegister (details)
  847. Minor typo improvements in documentation, NFC. (details)
  848. [libunwind] Support the new libc++ test format (details)
  849. [debugserver] Get rid of `else` after `return`. NFC. (details)
  850. Upstream Bionic definitions of ctype_base/regex. (details)
  851. [SelectionDAG] fix predecessor list for INLINEASM_BRs' parent (details)
  852. Make llvm_source_root in llvm-lit relative too. (details)
  853. [AsmPrinter] Do not define local aliases for global objects in a comdat (details)
  854. [gn build] (manually) port 6c1a9fb174ac3c (details)
  855. [llvm-objdump][NFC] Declare command-line externs in headers with namespace (details)
  856. [AMDGPU] Disable 'Skip Uniform Regions' optimization by default for AMDGPU. (details)
  857. Add more detailed symbol type categorization, based on a swift patch by (details)
  858. [clang-format] Don't break multi block parameters on ObjCBreakBeforeNestedBlockParam (details)
  859. X86ISelLowering: Minor refactor to avoid redundant initialization while ensuring compiler warnings can hopefully still prove initialization (details)
  860. [lldb/Test] Enable TestGdbRemoteThreadsInfoMemory.py on Windows. (details)
  861. Revert "Make llvm_source_root in llvm-lit relative too." (details)
  862. [gdb-remote] Moving prevents copy elision. Found by clang. (details)
  863. Add option to limit Debugify to locations (omitting variables) (details)
  864. [libc++] Add availability markup for the C++20 Synchronization Library on Apple (details)
  865. [libc++] Only support std::to_chars availability test when back-deploying (details)
  866. Allow MachineFunction to obtain non-const Function (to enable MIR-level debugify) (details)
  867. Support bfdname "elf32-hexagon". (details)
  868. [libc++] 2/N: Enable the new libc++ testing format by default (details)
  869. Remap the target (Xcode) SDK directory to the host SDK directory. (details)
  870. fix comment typo to cycle bots (details)
  871. [AddressSanitizer] Fix for wrong argument values appearing in backtraces (details)
  872. Remove case in rewritergen unmatched opdefgen side (details)
  873. [lldb/API] Add missing LLDB_REGISTER_METHOD macros (details)
  874. [CallSite Removal] a CallBase is never an IndirectCall for isInlineAsm (details)
  875. Add way to omit debug-location from MIR output (details)
  876. [AMDGPU] Remove clutter from endcf test. NFC. (details)
  877. [MachineCSE] Don't carry the wrong location when hoisting (details)
  878. For PR45333: Move AnalyzeImplicitConversions to using data recursion (details)
  879. Remove SequentialType from the type heirarchy. (details)
  880. Add missing include (details)
  881. Target: correct the return value for `GetImageAddrFromToken` (details)
  882. Reland "Make llvm_source_root in llvm-lit relative too." (details)
  883. [NFC] Modernize misc. uses of Align/MaybeAlign APIs. (details)
  884. [Coroutines] Remove alignment check in shouldBeMustTail (details)
  885. Enable IBT(Indirect Branch Tracking) in JIT with CET(Control-flow Enforcement Technology) (details)
  886. [PowerPC] Pre-commit test case of float rounding in kernel build. NFC. (details)
  887. Fix template instantiation of a non-dependent call to an inherited (details)
  888. [lldb/test] Fix TestDSYMSourcePathRemapping in the presence of symlnks (details)
  889. [lit] Improve handling of parallelism group semaphores (details)
  890. [WebAssembly] EmscriptenEHSjLj: Mark more functions as imported (details)
  891. [DWARF5]: Added a left over test case from D73462 (details)
  892. Fix unused variable warning in Protocol.cpp, NFCI (details)
  893. [CodeGen][SelectionDAG] Flip Booleans More Often (details)
  894. Drop the number of thinlto jobs in some tests to avoid crashing on 32-bit windows (details)
  895. Revert "[CodeGen][SelectionDAG] Flip Booleans More Often" (details)
  896. [Support,Windows] Tolerate failure of CryptGenRandom (details)
  897. [MLIR] fix/update affine data copy utility for max/min bounds (details)
  898. [ARM] Remove condition that could never be true (details)
  899. [DAG] Consolidate require spill slot logic in lambda. NFC. (details)
  900. [docs] Add the release notes about Debug Entry Values (details)
  901. [SCCP] Use ranges for predicate info conditions. (details)
  902. [MLIR] Introduce std.alloca op (details)
  903. [X86] Fix implicit sign conversion warnings in X86 headers. (details)
  904. [ARM] unwinding .pad instructions missing in execute-only prologue (details)
  905. [clangd] DefineOutline: removes static token from static CXXMethodDecl (details)
  906. Fixed licenses in dynamic ast matchers (details)
  907. Add map-type check for target and target data directive, by Chi Chun (details)
  908. [InstCombine] add icmp+cast tests for ppc_fp128; NFC (details)
  909. [llvm-readobj] - Introduce warnings for cases when unable to read strings from string tables. (details)
  910. [clangd] Get rid of ASTWorker::getCurrentFileInputs (details)
  911. [clangd] Fix printing for Inclusion (details)
  912. Mark TestFixIts.py xfail for LLDB AArch64/Linux (details)
  913. Revert "[lldb-server] jThreadsInfo returns stack memory" (details)
  914. Stop passing site cfg files via --param to llvm-lit. (details)
  915. [AST] Fix a crash on invalid constexpr Ctorinitializer when building RecoveryExpr. (details)
  916. [analyzer] Try to lift 'REQUIRES: shell' for scan-build tests. (details)
  917. [libc++] Make sure the source file appears before link libraries when compiling tests (details)
  918. [Syntax] Simplify TokenCollector::Builder, use captured expansion bounds. NFC (details)
  919. [Clang] Add llvm.loop.unroll.disable to loops with -fno-unroll-loops. (details)
  920. [Syntax] Merge overlapping top-level macros in TokenBuffer (details)
  921. [Syntax] Add mapping from spelled to expanded tokens for TokenBuffer (details)
  922. [libc++] Support .sh.s tests in the new format (details)
  923. [libc++abi] Enable the new libc++ testing format by default (details)
  924. Revert "[analyzer] Try to lift 'REQUIRES: shell' for scan-build tests." (details)
  925. [X86][SSE] combineX86ShufflesConstants - early out for zeroable vectors (PR45443) (details)
  926. [hip] Remove `hip_pinned_shadow`. (details)
  927. LLD Support for Basic Block Sections (details)
  928. [lldb][NFC] Fix typo in 'watchpoint delete' error message (details)
  929. tsan: fix Go/ppc build (details)
  930. [NFC][XCOFF] refactor readobj/XCOFFDumper.cpp (details)
  931. [NFC][PowerPC] Cleanup 64-bit and Darwin CalleeSavedRegs (details)
  932. [RDA] Avoid inserting duplicate reaching defs (NFCI) (details)
  933. [RDA] Don't pass down TraversedMBB (NFC) (details)
  934. [RDA] Avoid full reprocessing of blocks in loops (NFCI) (details)
  935. [DebugInfo] Fix for adding "returns cxx udt" option to functions in CodeView. (details)
  936. Slightly modify some tests as follow up to bcf66084, which breaks tests. (details)
  937. DAG: Use the correct getPointerTy in a few places (details)
  938. [mlir][vulkan-runner] Fix createLowerToLLVMPass interface (details)
  939. [mlir][spirv] Fix wrong Phi parent block for back-to-back loops (details)
  940. [X86][SSE] Add PTEST(AND(X,Y),AND(X,Y)) tests derived from PR42035 examples (details)
  941. Check LLVM_BUILD_LLVM_C_DYLIB before building the C DLL with MSVC. (details)
  942. [ELF] -M/-Map: fix VMA/LMA/Size columns of symbol assignments when address/size>=2**32 (details)
  943. [ELF] --warn-backrefs: don't warn for linking sandwich problems (details)
  944. [AMDGPU] Limit endcf-collapase to simple if (details)
  945. [WebAssembly][MC] Fix leak of std::string members in MCSymbolWasm (details)
  946. [lit] Cleanup printing of discovered suites and tests (details)
  947. AMDGPU: Use early return (details)
  948. [AArch64] Don't expand memcmp in strict align mode. (details)
  949. Revert "Revert "[analyzer] Teach scan-build how to rebuild index.html without analyzing."" (details)
  950. AMDGPU: Cleanup test MIR (details)
  951. [DWARFLinker][dsymutil][NFC] Move DwarfStreamer into DWARFLinker. (details)
  952. [gn build] Port 88c2137b6d4 (details)
  953. [SelectionDAG] Make getZeroExtendInReg take a vector VT if the operand VT is a vector. (details)
  954. [AMDGPU] Extend constant folding for logical operations (details)
  955. [libc++] Translate MODULES_DEFINES annotations to ADDITIONAL_COMPILE_FLAGS (details)
  956. Allow parameter names to be elided in a function definition in C. (details)
  957. [Hexagon] Update paths for linux/musl (details)
  958. [clang-tidy] Added support for validating configuration options (details)
  959. [OpenMP] Optimized stream selection by scheduling data mapping for the same target region into a same stream (details)
  960. [clang-tidy] Change checks that take enum configurations to use a new access method. (details)
  961. [NFC][PowerPC] Fix register class for patterns using XXPERMDIs (details)
  962. [SampleFDO] Add flag for partial profile. (details)
  963. [OPENMP50]Codegen for iterator construct. (details)
  964. [OpenMP] "UnFix" layering problem with FrontendOpenMP (details)
  965. [ScriptInterpreterPython] Remove buggy code to save/restore stdin. (details)
  966. [OPENMP][DOCS]Update status of oimplemented constructs, NFC. (details)
  967. [mlir][Diagnostic] Don't store Operation arguments as a DiagnosticArgument (details)
  968. Revert "[SampleFDO] Add flag for partial profile." show-prof-info.test breaks on some platforms. (details)
  969. CodeGen: Use Register in more places (details)
  970. [TLI] fix a function's (commented) signature; NFC (details)
  971. [libc++] Run tests in a directory related to %t instead of /tmp (details)
  972. [ms] Add new /PDBSTREAM option to lld-link allowing injection of streams into PDB files. (details)
  973. Remove some top-level const from return values seen in review (details)
  974. Remove FxpMathOps dialect and Quantizer tool. (details)
  975. [clang-tidy] Fix buildbot failing with explicit specialization in class scope (details)
  976. Fix illegal early call to PyBuffer_Release in swig typemaps (details)
  977. [mlir][DRR] Add location directive (details)
  978. [BPI] Clear handles when releasing memory (NFC) (details)
  979. CodeGen: Use Register in TargetFrameLowering (details)
  980. [mlir][Pass][NFC] Replace usages of ModulePass with OperationPass<ModuleOp> (details)
  981. [mlir][Pass] Remove the use of CRTP from the Pass classes (details)
  982. [mlir][Pass] Update the PassGen to generate base classes instead of utilities (details)
  983. Don't access reference to a vector after pop_back (details)
  984. [Driver] Only pass LTO remark arguments if the driver asks for it (details)
  985. [libc++] Remove the %{not} substitution (details)
  986. [mlir][Pass] Update the documentation for the declarative pass specification (details)
  987. [AMDGPU] Implement copyPhysReg for 16 bit subregs (details)
  988. Recommit [SampleFDO] Add flag for partial profile. (details)
  989. [OPENMP]Do not capture global marked as shared in OpenMP region. (details)
  990. [libunwind] Fix UB in EHHeaderParser::findFDE (details)
  991. Don't expose unavailable cstdio functions. (details)
  992. [MLIR] Cleanup mlir-tblgen error messages for custom assembly formats. (details)
  993. [MLIR] Add note for file-line numbers in tablegen errors for assembly formats (details)
  994. Revert "Don't expose unavailable cstdio functions." (details)
  995. [VE] Adapt aa26dd985848364df01d3f8f0f3eaccfd5ee80dc and 2481f26ac3f228cc085d4d68ee72dadc07afa48f (details)
  996. [ThinLTO] Drop dso_local if a GlobalVariable satisfies isDeclarationForLinker() (details)
  997. CodeGen: More conversions to use Register (details)
  998. [mlir][AsmFormat] Avoid invalidating the iterator when verifying attributes (details)
  999. [VE] Migrate to the getMachineMemOperand overload using llvm::Align (details)
  1000. Add MIR-level debugify with only locations support for now (details)
  1001. [ManualDWARFIndex] Remove dead code, in preparation for moving this function. (details)
  1002. [NFC] Clean up uses of LoadInst constructor. (details)
  1003. [gn build] Port 1adeeabb79a (details)
  1004. Reset more globalMemCounters. (details)
  1005. Revert "[ObjC generics] Fix not inheriting type bounds in categories/extensions." (details)
  1006. [lit] Improve consistency when printing test results (details)
  1007. [lit] Print slowest test first when timing tests (details)
  1008. [JumpThreading] NFC: Simplify ComputeValueKnownInPredecessorsImpl (details)
  1009. Keep output file after successful execution of mlir-opt (details)
  1010. [OpenMP] "UnFix" last layering problem with FrontendOpenMP (details)
  1011. [mlir][Linalg] Use subview instead of linalg.slice in Promotion.cpp (details)
  1012. [OpenMP] Try to find an existing base for `omp begin/end declare variant` (details)
  1013. [OpenMP] Add match_{all,any,none} declare variant selector extensions. (details)
  1014. [OpenMP] Specialize OpenMP calls after template instantiation (details)
  1015. [OpenMP] Provide math functions in OpenMP device code via OpenMP variants (details)
  1016. [AMDGPU] Expand vector trunc stores from i16 to i8 (details)
  1017. [gn build] Port f85ae058f58 (details)
  1018. [lit] Improve test summary output (details)
  1019. [lit] Print slowest tests and time histogram before result groups (details)
  1020. [DebugInfo] Fix reading DWARFv5 type units in DWP. (details)
  1021. Add missing hyphens (details)
  1022. [VE] Simplify definitions of uimm6 and simm7 (details)
  1023. [clangd] Fix broken assertion (details)
  1024. [clangd] Destroy context before resetting CurrentReq (details)
Commit cc3b5590d2a72ab86d58151c4457e7a7fcc89427 by arsenm2
GlobalISel: Minor cleanups
The file was modifiedllvm/lib/CodeGen/GlobalISel/CallLowering.cpp
Commit 37889786b040bd2bc48e5a01c6b92de777564a8f by pavel
Revert "[lldb] Fix TestSettings.test_pass_host_env_vars on windows"

This reverts commit because of test failures in TestHelloWorld.

It seems that this test (specifically running "ls" as a platform shell
command) depended on the implicit passing of the host environment.

The fix should be fairly simple (inherit the environment explicitly),
but it may take me a while to figure where exactly to do that. Revert
while I am figuring that out.
The file was modifiedlldb/test/API/commands/settings/TestSettings.py
The file was modifiedlldb/source/Host/windows/ProcessLauncherWindows.cpp
Commit bdf77209b98ee6c9bb56bbfa8498a54492ccb8b9 by gchatelet
[Alignment][NFC] Use Align version of getMachineMemOperand

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: jyknight, sdardis, nemanjai, hiraditya, kbarton, fedor.sergeev, asb, rbar, johnrusso, simoncook, sabuasal, niosHD, jrtc27, MaskRay, zzheng, edward-jones, atanasyan, rogfer01, MartinMosbeck, brucehoult, the_o, jfb, PkmX, jocewei, Jim, lenary, s.egerton, pzheng, sameer.abuasal, apazos, luismarques, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77059
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonStoreWidening.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/unittests/CodeGen/MachineInstrTest.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MipsCallLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstructionSelector.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrBuilder.h
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreInstrInfo.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrBuilder.h
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcInstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86CallLowering.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/MachineIRBuilderTest.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430InstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSplitDouble.cpp
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreFrameLowering.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Commit 1a1bb876dba41066f6e9a273c24fad04e0f9f2da by gabor.marton
[analyzer] Add core.CallAndMessage to StdCLibraryFunctionArgsChecker's dependency

Reviewers: Szelethus, NoQ

Subscribers: whisperity, xazax.hun, baloghadamsoftware, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp, gamesh411, Charusso, steakhal, ASDenysPetrov, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77061
The file was modifiedclang/test/Analysis/analyzer-enabled-checkers.c
The file was modifiedclang/include/clang/StaticAnalyzer/Checkers/Checkers.td
Commit ece79f47083babcabde3700c67b90ef19967a5b3 by Yuanfang Chen
[X86] make sure POP has implicit def/use of stack pointer when materializing 8-bit immediates for minsize

Summary:
Otherwise PostRA list scheduler may reorder instruction, such as

schedule this
'''
pushq  $0x8
pop    %rbx
lea    0x2a0(%rsp),%r15
'''
to
'''
pushq  $0x8
lea    0x2a0(%rsp),%r15
pop    %rbx
'''
by mistake. The patch is to prevent this to happen by making sure POP has
implicit use of SP.

Reviewers: craig.topper

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77031
The file was modifiedllvm/test/CodeGen/X86/materialize.ll
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
Commit 2d19270efcf01672c8eaab1ccb0e5b89ea953cc9 by maskray
[ELF][test] Improve linkerscript/linkorder.s
The file was modifiedlld/test/ELF/linkerscript/linkorder.s
Commit 32c9efb423035ef7c5db6cb6e7b68ac935a8d15b by Louis Dionne
[libc++] Add support for a new keyword ADDITIONAL_COMPILE_FLAGS

This allows adding compilation flags for a single test, which can help
eliminate some .sh.cpp tests and some custom handling in the libc++
test format.

It also works around the issue that .sh.cpp substitutions are _not_
equivalent to the actual compiler command lines used to compile tests,
since the compiler flags can be modified in local lit configurations,
and substitutions are frozen at that point. For example using %{compile}
in a .sh.cpp test in the coroutines subdirectory will not include the
-fcoroutines-ts flag, which is added in the local lit config, because
the %{compile} substitution is created long before we add -fcoroutines-ts
to the compiler flags (in the lit.local.cfg for coroutines).
The file was modifiedlibcxx/test/libcxx/selftest/test.arc.pass.mm
The file was modifiedlibcxx/test/libcxx/type_traits/is_pointer.arc.pass.mm
The file was modifiedlibcxx/test/libcxx/selftest/test.arc.fail.mm
The file was removedlibcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.sh.cpp
The file was modifiedlibcxx/utils/libcxx/test/format.py
The file was addedlibcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.pass.cpp
Commit 094b11c3ab41f44296f11fa607509776e757e054 by Louis Dionne
[libc++] Fix wrong default value for LIBCXX_ENABLE_ASSERTIONS in documentation

It's set to OFF by default at libcxx/CMakeLists.txt:73.

Differential Revision: https://reviews.llvm.org/D76905
The file was modifiedlibcxx/docs/BuildingLibcxx.rst
Commit 673e81eee4fa3ffa38736f1063e6c4fa2d9278b0 by maskray
[ELF] Allow SHF_LINK_ORDER and non-SHF_LINK_ORDER to be mixed

Currently, `error: incompatible section flags for .rodata` is reported
when we mix SHF_LINK_ORDER and non-SHF_LINK_ORDER sections in an output section.

This is overconstrained. This patch allows mixed flags with the
requirement that SHF_LINK_ORDER sections must be contiguous. Mixing
flags is used by Linux aarch64 (https://github.com/ClangBuiltLinux/linux/issues/953)

  .init.data : { ... KEEP(*(__patchable_function_entries)) ... }

When the integrated assembler is enabled, clang's -fpatchable-function-entry=N[,M]
implementation sets the SHF_LINK_ORDER flag (D72215) to fix a number of
garbage collection issues.

Strictly speaking, the ELF specification does not require contiguous
SHF_LINK_ORDER sections but for many current uses of SHF_LINK_ORDER like
.ARM.exidx/__patchable_function_entries there has been a requirement for
the sections to be contiguous on top of the requirements of the ELF
specification.

This patch also imposes one restriction: SHF_LINK_ORDER sections cannot
be separated by a symbol assignment or a BYTE command. Not allowing BYTE
is a natural extension that a non-SHF_LINK_ORDER cannot be a separator.
Symbol assignments can delimiter the contents of SHF_LINK_ORDER
sections.  Allowing SHF_LINK_ORDER sections across symbol assignments
(especially __start_/__stop_) can make things hard to explain. The
restriction should not be a problem for practical use cases.

Reviewed By: psmith

Differential Revision: https://reviews.llvm.org/D77007
The file was modifiedlld/ELF/Writer.cpp
The file was removedlld/test/ELF/linkorder-err3.s
The file was modifiedlld/ELF/OutputSections.cpp
The file was modifiedlld/test/ELF/linkerscript/linkorder.s
Commit dcc410b5cf202e354105df431fad62d2f5f7eac7 by Vedant Kumar
[LoopVectorize] Fix crash on "getNoopOrZeroExtend cannot truncate!" (PR45259)

In InnerLoopVectorizer::getOrCreateTripCount, when the backedge taken
count is a SCEV add expression, its type is defined by the type of the
last operand of the add expression.

In the test case from PR45259, this last operand happens to be a
pointer, which (according to llvm::Type) does not have a primitive size
in bits. In this case, LoopVectorize fails to truncate the SCEV and
crashes as a result.

Uing ScalarEvolution::getTypeSizeInBits makes the truncation work as expected.

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

Differential Revision: https://reviews.llvm.org/D76669
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was addedllvm/test/Transforms/LoopVectorize/pr45259.ll
Commit 3cbbded68c260ea5574798ca444b3feecfbbcd70 by sameer.sahasrabuddhe
Introduce unify-loop-exits pass.

For each natural loop with multiple exit blocks, this pass creates a
new block N such that all exiting blocks now branch to N, and then
control flow is redistributed to all the original exit blocks.

The bulk of the tranformation is a new function introduced in
BasicBlockUtils that an redirect control flow from a set of incoming
blocks to a set of outgoing blocks via a common "hub".

This is a useful workaround for a limitation in the structurizer which
incorrectly orders blocks when processing a nest of loops. This pass
bypasses that issue by ensuring that each natural loop is recognized
as a separate region. Since the structurizer is a region pass, it no
longer sees a nest of loops in a single region, and instead processes
each "level" in the nesting as a separate region.

The AMDGPU backend provides a new option to enable this pass before
the structurizer, which may eventually be enabled by default.

Reviewers: madhur13490, arsenm, nhaehnle

Reviewed By: nhaehnle

Differential Revision: https://reviews.llvm.org/D75865
The file was modifiedllvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
The file was addedllvm/lib/Transforms/Utils/UnifyLoopExits.cpp
The file was addedllvm/test/Transforms/UnifyLoopExits/basic.ll
The file was modifiedllvm/lib/Transforms/Scalar/StructurizeCFG.cpp
The file was modifiedllvm/include/llvm/LinkAllPasses.h
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/include/llvm/Transforms/Utils.h
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/test/CodeGen/AMDGPU/loop_break.ll
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was addedllvm/test/Transforms/UnifyLoopExits/switch.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was addedllvm/test/Transforms/UnifyLoopExits/nested.ll
The file was modifiedllvm/lib/Transforms/Utils/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Utils/BasicBlockUtils.cpp
The file was addedllvm/test/Transforms/StructurizeCFG/workarounds/needs-unified-loop-exits.ll
The file was modifiedllvm/tools/llc/llc.cpp
The file was addedllvm/test/Transforms/UnifyLoopExits/restore-ssa.ll
The file was modifiedllvm/lib/Transforms/Utils/Utils.cpp
Commit 81194bfeea7b40b6e8c543bb4ae49b59f590475b by sidneym
[Hexagon] MaxAtomicPromoteWidth and MaxAtomicInlineWidth are not getting set.

Noticed when building llvm's c++ library.

Differential Revision: https://reviews.llvm.org/D76546
The file was modifiedclang/lib/Basic/Targets/Hexagon.h
The file was modifiedclang/test/Preprocessor/hexagon-predefines.c
Commit 7842e7ebbf3b68ebe52592d51aaf7a20f94d047b by a.bataev
[OPENMP50]Add codegen support for array shaping expression in depend
clauses.

Implemented codegen for array shaping operation in depend clauses. The
begin of the expression is the pointer itself, while the size of the
dependence data is the mukltiplacation of all dimensions in the array
shaping expression.
The file was modifiedclang/test/OpenMP/depobj_ast_print.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/depobj_codegen.cpp
The file was modifiedclang/test/OpenMP/task_codegen.c
Commit 77ce2e21a87768370b97a027e5053b73e8f438a7 by kubak
[AMDGPU] Add Relocation Constant Support

Summary:
This change adds amdgcn.reloc.constant intrinsic to the amdgpu backend, which will compile into a relocation entry in the resulting elf.

The intrinsics takes a MetadataNode (String) as its only argument, which specifies the symbol name of the relocation entry.

`SelectionDAGBuilder::getValueImpl` is changed to allow metadata operands passed through to ISel.

Author: csyonghe <yonghe@google.com>

Reviewers: tpr, nhaehnle

Reviewed By: nhaehnle

Subscribers: arsenm, kzhuravl, jvesely, wdng, yaxunl, dstuttard, t-tye, hiraditya, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76440
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicsAMDGPU.td
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was addedllvm/test/CodeGen/AMDGPU/amdgcn-load-offset-from-reg.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was addedllvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll
Commit f273e5c50745d8496846688e3019bc8ef68004e4 by uday
[MLIR] Fix permuteLoops utility

Rewrite mlir::permuteLoops (affine loop permutation utility) to fix
incorrect approach. Avoiding using sinkLoops entirely - use single move
approach. Add test pass.

This fixes https://bugs.llvm.org/show_bug.cgi?id=45328

Depends on D77003.

Signed-off-by: Uday Bondhugula <uday@polymagelabs.com>

Differential Revision: https://reviews.llvm.org/D77004
The file was modifiedmlir/include/mlir/Transforms/LoopUtils.h
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was addedmlir/test/lib/Dialect/Affine/TestLoopPermutation.cpp
The file was addedmlir/test/Dialect/Affine/loop-permute.mlir
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/test/lib/Dialect/Affine/CMakeLists.txt
Commit c506adcdf2ca3ba6459e52e09c55868e3b57af46 by thakis
Move CLANG_SYSTEMZ_DEFAULT_ARCH to config.h.

Instead of using a global define; see comments on D75914.

While here, port 9c9d88d8b1b to the GN build.
The file was modifiedclang/lib/Driver/ToolChains/Arch/SystemZ.cpp
The file was modifiedclang/CMakeLists.txt
The file was modifiedclang/include/clang/Config/config.h.cmake
The file was modifiedllvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn
Commit 8242509a49e019c0279305d152c7ab2b9cdc2d0d by llvmgnsyncbot
[gn build] Port 3cbbded68c2
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
Commit 3ea0774b13a538759aa1a68f30130d18ddb0d3f2 by thomasraoux
[ConstantFold][NFC] Compile time optimization for large vectors

Optimize the common case of splat vector constant. For large vector
going through all elements is expensive. For splatr/broadcast cases we
can skip going through all elements.

Differential Revision: https://reviews.llvm.org/D76664
The file was modifiedllvm/lib/IR/Constants.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/include/llvm/IR/Constants.h
Commit 20eb719f99c4979838c2995a447452f9fc3d3605 by thakis
lld: Reduce number of references to undefined printed from 10 to 3.

As of a while ago, lld groups all undefined references to a single
symbol in a single diagnostic. Back then, I made it so that we
print up to 10 references to each undefined symbol.

Having used this for a while, I never wished there were more
references, but I sometimes found that this can print a lot of
output. lld prints up to 10 diagnostics by default, and if
each has 10 references (which I've seen in practice), and each
undefined symbol produces 2 (possibly very long) lines of output,
that's over 200 lines of error output.

Let's try it with just 3 references for a while and see how
that feels in practice.

Differential Revision: https://reviews.llvm.org/D77017
The file was modifiedlld/COFF/SymbolTable.cpp
The file was modifiedlld/test/COFF/undefined-symbol-multi.s
The file was modifiedlld/test/ELF/undef-multi.s
The file was modifiedlld/ELF/Relocations.cpp
Commit 23da702d69b1562828cc40d948403fa4be2c5e2a by Matthew.Arsenault
GlobalISel: Translate llvm.fshl/llvm.fshr
The file was modifiedllvm/include/llvm/Support/TargetOpcodes.def
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/include/llvm/Target/GenericOpcodes.td
The file was modifiedllvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
Commit a87ca9e4af5a794054a179688a1d73de0e97d81b by Matthew.Arsenault
GlobalISel: Add accessor to known bits to CombinerHelper

I need to pass known bits to a target combine matcher (which for some
reason aren't methods in a subclass of CombinerHelper?)
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
Commit 63aaecd5bebc8cf2cd4b4f2b42183978fd30ddef by Jonas Devlieghere
[lldb/CMake] Make check-lldb-* work for the standalone build.

In order to run check-lldb-* we need the correct map_config directives
in llvm-lit. For the standalone build, LLVM doesn't know about LLDB, and
the lldb mappings are missing. In that case we build our own llvm-lit,
and tell LLVM to use the llvm-lit in the lldb build directory.

Differential revision: https://reviews.llvm.org/D76945
The file was modifiedlldb/test/CMakeLists.txt
Commit a235215415dc42da558d52070a2ca6eb9ad10d86 by thakis
fix a comment grammar-o
The file was modifiedllvm/utils/gn/build/write_cmake_config.py
Commit 24485aec4750255574a9a8211b3aef1ce00e83b6 by efriedma
[clang analysis] Make mutex guard detection more reliable.

-Wthread-safety was failing to detect certain AST patterns it should
detect. Make the pattern detection a bit more comprehensive.

Due to an unrelated bug involving template instantiation, this showed up
as a regression in 10.0 vs. 9.0 in the original bug report. The included
testcase fails on older versions of clang, though.

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

Differential Revision: https://reviews.llvm.org/D76943
The file was modifiedclang/test/SemaCXX/warn-thread-safety-analysis.cpp
The file was modifiedclang/lib/Analysis/ThreadSafety.cpp
Commit fa496ce3c6774097080c8a9cb808da56f383b938 by isanbard
[Intrinsic] Give "is.constant" the "convergent" attribute

Summary:
Code frequently relies upon the results of "is.constant" intrinsics to
DCE invalid code paths. We don't want the intrinsic to be made control-
dependent on any additional values. For instance, we can't split a PHI
into a "constant" and "non-constant" part via jump threading in order
to "optimize" the constant part, because the "is.constant" intrinsic is
meant to return "false".

Reviewers: wmi, kazu, MaskRay

Reviewed By: kazu

Subscribers: jdoerfert, efriedma, joerg, lebedev.ri, nikic, xbolva00, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D75799
The file was addedllvm/test/Transforms/JumpThreading/is_constant.ll
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
Commit 4919f2e1c52131508d6b6db38667ff4954117d18 by Matthew.Arsenault
AMDGPU/GlobalISel: Basic legalize rules for G_FSHR

Only handles easy 32-bit cases.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fshr.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fshr.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fshr.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 0af6d27e2ee2aa7365449e0f3c0f4727357a9584 by stellaraccident
Add /bigobj for SPIRV dialect on MSVC.

Summary: This object file has grown beyond the default limit, and elsewhere in LLVM, we seem to be setting this flag as a one-off, so continuing that here.

Reviewers: mravishankar, antiagainst

Subscribers: mgorny, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, bader, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77002
The file was modifiedmlir/lib/Dialect/SPIRV/CMakeLists.txt
Commit 3c371491a2d5023060391ff54b924bf1c7a0c41f by scott.linder
Setup clang-format as an Arcanist linter

Summary:
This uses clang-format-diff as a linter for Arcanist.

`arc lint` flow, also run as part of `arc diff` unless skipped with
`--nolint`, will now run the linter shell script on the changed files,
and prompt the user to accept the suggested changes.

Message when clang-format-diff is not installed:
{F6654094}

Example of the noise during code review when clang-format-diff is not installed:
https://reviews.llvm.org/differential/changeset/?ref=1115809

Prompt when clang-format-diff is installed and suggests edits:
{F6650223}

Reviewers: probinson, scott.linder

Reviewed By: scott.linder

Subscribers: scott.linder, MyDeveloperDay, JonasToth, danilaml, JDevlieghere, dberris, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D49116
The file was addedutils/arcanist/clang-format.sh
The file was added.arclint
Commit defd95ef45171252ee8491729d3f3c863bbfe530 by vince.a.bridgers
[analyzer] Fix StdLibraryFunctionsChecker NotNull Constraint Check

Summary:
This check was causing a crash in a test case where the 0th argument was
uninitialized ('Assertion `T::isKind(*this)' at line SVals.h:104). This
was happening since the argument was actually undefined, but the castAs
assumes the value is DefinedOrUnknownSVal.

The fix appears to be simply to check for an undefined value and skip
the check allowing the uninitalized value checker to detect the error.

I included a test case that I verified to produce the negative case
prior to the fix, and passes with the fix.

Reviewers: martong, NoQ

Subscribers: xazax.hun, szepet, rnkovacs, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, Charusso, ASDenysPetrov, baloghadamsoftware, dkrupp, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77012
The file was modifiedclang/test/Analysis/std-c-library-functions.c
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
Commit 01c857bc83c742a5d82611d3b9c7ace95fdc285e by riddleriver
[mlir] Update all dialects docs to use 'dialect-namespace' in the header
The file was modifiedmlir/docs/Dialects/SPIR-V.md
The file was modifiedmlir/docs/Dialects/Affine.md
The file was modifiedmlir/docs/Dialects/GPU.md
The file was modifiedmlir/docs/Dialects/Linalg.md
The file was modifiedmlir/docs/Dialects/Vector.md
The file was modifiedmlir/docs/Dialects/LLVM.md
The file was modifiedmlir/docs/Dialects/Standard.md
Commit 6f9f4fdd5b0c383e9abebba983360e8f2294f703 by arsenm2
CodeGen: Add missing MachineOperand setter
The file was modifiedllvm/include/llvm/CodeGen/MachineOperand.h
Commit ced99a1a6368b117384935957e2329ec4ba7784b by hahnjo
Fix comment for CLANG_SYSTEMZ_DEFAULT_ARCH

Also move up, next to the other *_DEFAULT_* configurations.
The file was modifiedclang/include/clang/Config/config.h.cmake
Commit bab5bcf8fd60c9df3d1517e5ca22109c785016d1 by joker.eph
Add a flag on the context to protect against creation of operations in unregistered dialects

Differential Revision: https://reviews.llvm.org/D76903
The file was modifiedmlir/test/Dialect/Affine/invalid.mlir
The file was modifiedmlir/lib/Analysis/Verifier.cpp
The file was modifiedmlir/test/IR/test-symbol-dce.mlir
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/test/IR/parser.mlir
The file was modifiedmlir/test/Transforms/test-legalizer-full.mlir
The file was modifiedmlir/test/Dialect/Affine/slicing-utils.mlir
The file was modifiedmlir/test/Transforms/location-snapshot.mlir
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/compose_maps.mlir
The file was modifiedmlir/test/Dialect/Affine/canonicalize.mlir
The file was modifiedmlir/test/Transforms/loop-coalescing.mlir
The file was modifiedmlir/test/Transforms/memref-dataflow-opt.mlir
The file was modifiedmlir/test/Dialect/Loops/parallel-loop-fusion.mlir
The file was modifiedmlir/test/Transforms/strip-debuginfo.mlir
The file was modifiedmlir/test/Dialect/Affine/unroll.mlir
The file was modifiedmlir/unittests/IR/OperationSupportTest.cpp
The file was modifiedmlir/test/Dialect/GPU/promotion.mlir
The file was modifiedmlir/test/IR/affine-map.mlir
The file was modifiedmlir/test/IR/test-symbol-uses.mlir
The file was modifiedmlir/include/mlir/IR/MLIRContext.h
The file was modifiedmlir/test/Conversion/GPUToSPIRV/simple.mlir
The file was modifiedmlir/test/Dialect/GPU/outlining.mlir
The file was modifiedmlir/test/Dialect/Quant/parse-uniform.mlir
The file was modifiedmlir/test/Transforms/single-parallel-loop-collapsing.mlir
The file was modifiedmlir/test/Conversion/StandardToSPIRV/std-to-spirv.mlir
The file was modifiedmlir/test/Transforms/parallel-loop-collapsing.mlir
The file was modifiedmlir/test/Dialect/SPIRV/structure-ops.mlir
The file was modifiedmlir/test/Conversion/GPUToNVVM/memory-attrbution.mlir
The file was modifiedmlir/test/IR/op-stats.mlir
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
The file was modifiedmlir/test/Dialect/Affine/inlining.mlir
The file was modifiedmlir/test/IR/module-op.mlir
The file was modifiedmlir/test/IR/traits.mlir
The file was modifiedmlir/test/Dialect/LLVMIR/invalid.mlir
The file was modifiedmlir/test/Dialect/Quant/parse-ops-invalid.mlir
The file was modifiedmlir/test/Transforms/constant-fold.mlir
The file was modifiedmlir/test/Transforms/parametric-mapping.mlir
The file was modifiedmlir/test/Dialect/Quant/quant_region.mlir
The file was modifiedmlir/test/IR/pretty-region-args.mlir
The file was modifiedmlir/test/Dialect/Affine/unroll-jam.mlir
The file was modifiedmlir/test/IR/region.mlir
The file was modifiedmlir/test/Dialect/Affine/ops.mlir
The file was modifiedmlir/test/Dialect/Loops/invalid.mlir
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was modifiedmlir/test/Transforms/test-legalizer.mlir
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
The file was modifiedmlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir
The file was modifiedmlir/test/Transforms/test-legalizer-analysis.mlir
The file was modifiedmlir/test/Dialect/Quant/parse-any.mlir
The file was modifiedmlir/test/IR/dense-elements-hex.mlir
The file was modifiedmlir/test/IR/pretty-locations.mlir
The file was modifiedmlir/test/Transforms/canonicalize-dce.mlir
The file was modifiedmlir/test/IR/print-op-local-scope.mlir
The file was modifiedmlir/test/Transforms/loop-fusion.mlir
The file was modifiedmlir/test/Dialect/GPU/ops.mlir
The file was modifiedmlir/test/Conversion/GPUToCUDA/lower-launch-func-to-cuda.mlir
The file was modifiedmlir/test/EDSC/builder-api-test.cpp
The file was modifiedmlir/test/IR/invalid.mlir
The file was modifiedmlir/test/IR/locations.mlir
The file was modifiedmlir/test/Dialect/Affine/dma-generate.mlir
The file was modifiedmlir/test/IR/core-ops.mlir
The file was modifiedmlir/test/IR/opaque_locations.mlir
The file was modifiedmlir/test/Dialect/Affine/parallelism-detection.mlir
The file was modifiedmlir/test/Transforms/inlining-dce.mlir
The file was modifiedmlir/test/Transforms/pipeline-data-transfer.mlir
The file was modifiedmlir/include/mlir/Support/MlirOptMain.h
The file was modifiedmlir/test/IR/invalid-ops.mlir
The file was modifiedmlir/test/Transforms/test-canonicalize.mlir
The file was modifiedmlir/test/IR/wrapping_op.mlir
The file was modifiedmlir/test/Transforms/loop-fusion-dependence-check.mlir
The file was modifiedmlir/test/Transforms/canonicalize.mlir
The file was modifiedmlir/test/Dialect/Affine/loop-tiling.mlir
The file was modifiedmlir/test/Dialect/SPIRV/ops.mlir
The file was modifiedmlir/test/IR/test-symbol-rauw.mlir
The file was modifiedmlir/test/mlir-tblgen/op-format.mlir
The file was modifiedmlir/tools/mlir-translate/mlir-translate.cpp
The file was modifiedmlir/test/Dialect/Affine/simplify-affine-structures.mlir
The file was modifiedmlir/test/Dialect/SPIRV/control-flow-ops.mlir
The file was modifiedmlir/test/Transforms/test-inlining.mlir
The file was modifiedmlir/test/Transforms/cse.mlir
Commit d16ba9b0bd724bfae73ef5c531e724eb46d4ba49 by julian.lettner
[lit] Use Python's support for None in array slice indexing
The file was modifiedllvm/utils/lit/lit/main.py
Commit 9eb1b41811c76eec35c5feafb2fdc781f356bf48 by efriedma
[llvm-cov] Improve error message for missing profdata

I got a report recently that a user was having trouble interpreting the
meaning of the error message.  Hopefully this is more readable; produces
something like the following:

error: No such file or directory: Could not read profile data!

Differential Revision: https://reviews.llvm.org/D76796
The file was modifiedllvm/tools/llvm-cov/CodeCoverage.cpp
The file was addedllvm/test/tools/llvm-cov/misssing-profdata.test
Commit de77d2312751514ce9fbf9b0bf11cbe93cd486f9 by sbc
[ADT] Allow empty string in StringSet

Also add a test case to wasm-ld that asserts without this change.
Internally wasm-ld builds a StringMap of exported functions and it seems
like allowing empty string in the set is preferable to adding checks.

This assert looks like it was most likely just a historical accident.
It started life here purely to support InputLanguagesSet:

  eeac27e38c5c567d63bbfa5410620d955696491b

Then got extracted here:

  e57a4033385c5976cbb17af1e962b1224a61183b

Then got moved to AST here

  5c48bae209bcbd261886f63abac695b1e30544e6

With the `InLang` paramater name still intact which suggested is
InputLanguagesSet origins.

Differential Revision: https://reviews.llvm.org/D74589
The file was modifiedllvm/include/llvm/ADT/StringSet.h
The file was modifiedllvm/unittests/ADT/StringSetTest.cpp
Commit f2fbdf76d8d07f6a0fbd97825cbc533660d64a37 by spatel
[InstCombine] do not exclude min/max from icmp with casted operand fold

InstCombine has a mess of logic that tries to preserve min/max patterns,
but AFAICT, this one is not necessary because we can always narrow the
corresponding select in this sequence to match the narrow compare.

The biggest danger for this patch is inducing infinite looping or
assert from exceeding max iterations. If any bots hit that in the
vicinity of this commit, this is the likely patch to blame.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select_meta.ll
The file was modifiedllvm/test/Transforms/InstCombine/adjust-for-minmax.ll
Commit 111c932855449b1810766f468b968622739903b5 by joker.eph
Fix test: add `-allow-unregistered-dialect` to Affine/loop-permute.mlir test (missed during rebase)
The file was modifiedmlir/test/Dialect/Affine/loop-permute.mlir
Commit 4243bd494d67b0a8048ee9719e27778a3743838a by daan
[InstCombine] Update assertions in InstCombine test; NFC
The file was modifiedllvm/test/Transforms/InstCombine/ExtractCast.ll
Commit 4151f2d04ad8d829e16b83be734908fc38f977e9 by Jonas Devlieghere
Re-land "[FileCollector] Add a method to add a whole directory and it contents."

Extend the FileCollector's API with addDirectory which adds a directory
and its contents to the VFS mapping.

Differential revision: https://reviews.llvm.org/D76671
The file was modifiedllvm/unittests/Support/FileCollectorTest.cpp
The file was modifiedllvm/include/llvm/Support/FileCollector.h
The file was modifiedllvm/lib/Support/FileCollector.cpp
Commit fe5cb1c25fd6c07bbe3c0c698f36b74e6d04946f by ditaliano
Revert "[lldb] Make Fix-Its also apply to top-level expressions"

This reverts commit 83c81c0a469482888482983c302c09c02680ae7c as
it broke the macOS lldb bots.
The file was modifiedlldb/test/API/commands/expression/fixits/TestFixIts.py
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
Commit 273b0d776605b1ece53844487b6f2bde1953b1b5 by daan
Revert "[InstCombine] Update assertions in InstCombine test; NFC"

This reverts commit 4243bd494d67b0a8048ee9719e27778a3743838a.
The file was modifiedllvm/test/Transforms/InstCombine/ExtractCast.ll
Commit 10f633db86b523da17a820098e33f0caf70dbada by ditaliano
[TypeSystemClang] Add missing case in a switch. NFC'ish.
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Commit 55ed09d32e2602eba1dbb8aba1985246739c3909 by ditaliano
Revert "[lldb] Make TestExprDiagnostics.py pass again after enabling Fix-Its in test"

This reverts commit 502a06fcdafa637a9890da16c2734bc1a36010f6 as it
breaks the macOS bots. Raph will take a look and re-commit.
The file was modifiedlldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
Commit 42d5609809836aceff41f78ab652a882d4982260 by arsenm2
AMDGPU/GlobalISel: Start handling _L to _LZ optimization

We currently don't have a way to map to the equivalent intrinsic
opcode, so track immediate 0s in place of the address for the
selection to know to change the final opcode.
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/image_ls_mipmap_zero.a16.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.ltolz.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/image_ls_mipmap_zero.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.ltolz.a16.ll
Commit 2641ba52a9c66d1d83e25646228a2574f3c22773 by arsenm2
AMDGPU/GlobalISel: Round up image operations with 5, 6 or 7 addresses

The instruction definitions are missing for these register types, so
round up to 8 like the DAG.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
Commit a4f74f377b7c42d38a230a19996e3a7fa5a328c7 by a.bataev
[OPENMP50]Do not imply lvalue as base expression in array shaping
expression.

We should not assume that the base expression in the array shaping
operation is an lvalue of some form, it may be an rvalue.
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/OpenMP/task_codegen.c
Commit 50f7153ddb6e6dabcac6d16c8c908f1708f60d01 by ditaliano
Revert "[lldb][NFC] Refactor Fix-It filter for warnings"

This reverts commit 11a5caee2aeae2546213366e7fc54095bb8163b9 as
it broke the bots.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
Commit 751d5332bd63d93de64f4ada0fc6a8f5ab01de66 by francesco.petrogalli
[llvm][IR][CastInst] Update `castIsValid` for scalable vectors.

Reviewers: sdesmalen

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76738
The file was modifiedllvm/unittests/IR/InstructionsTest.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
Commit cee65d51fe05f10d4286ed3288f6ccfe2a27dc83 by jay.foad
AMDGPU: Implement getMemcpyLoopLoweringType

Summary: Based on a patch by Matt Arsenault.

Reviewers: rampitec, kerbowa, nhaehnle, arsenm

Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77057
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-mem-intrinsics.ll
Commit 075b610403a7d151ee9056aa490233bcd4248718 by ditaliano
Recommit "[lldb] Make TestExprDiagnostics.py pass again after enabling Fix-Its in test"

This reverts commit 55ed09d32e2602eba1dbb8aba1985246739c3909 as
it was not responsible for breaking the bots. Sorry.
The file was modifiedlldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
Commit 06bb7df81c0ba01f7efab76779e2eb7d76615e3d by ditaliano
Recommit "[lldb] Make Fix-Its also apply to top-level expressions""

This reverts commit fe5cb1c25fd6c07bbe3c0c698f36b74e6d04946f as it
was not responsible for breaking the bots. Sorry.
The file was modifiedlldb/test/API/commands/expression/fixits/TestFixIts.py
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
Commit 570a578e46c8290a7f28b1602dadea750e147928 by arsenm2
AMDGPU: Account for dmask when computing image mem size

Only the number of elements in the dmask will really be accessed.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.load.2d.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.load.2d.d16.ll
Commit 48eda37282dbe81be5507cdacf7ff0ab7e059e72 by arsenm2
AMDGPU/GlobalISel: Start selecting image intrinsics

Does not handled atomics yet.
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.ltolz.a16.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGlobalISelUtils.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/image_ls_mipmap_zero.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.a16.ll
Commit bcb643c8af0584f1eef864ba7cbfd4341270e136 by arsenm2
AMDGPU/GlobalISel: Handle image atomics
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.atomic.dim.a16.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.ll
Commit b27d255e1e40bc065e68e39c6e1eaf3a5a16f005 by arsenm2
AMDGPU/GlobalISel: Form CVT_F32_UBYTE0
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGISel.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-itofp.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCombine.td
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
Commit 19aec8c90492435b1ff59dacd4307f1bbcf6ab1d by Louis Dionne
Enforce that libc++ and libc++abi are built in a monorepo layout

We will soon start removing technical debt and sharing code between the
two directories, so this first step is meant to discover potential places
where the libraries are built outside of a monorepo layout. I imagine
this could happen as a remnant of the pre-monorepo setup.

This was discussed on the libcxx-dev mailing list and we got overall
consensus on the direction. All consumers of libc++ and libc++abi
should already be doing so through the monorepo, however it is
possible that we catch some stragglers with this patch, in which
case it may need to be reverted temporarily.

Differential Revision: https://reviews.llvm.org/D76102
The file was modifiedlibcxxabi/CMakeLists.txt
The file was modifiedlibcxx/CMakeLists.txt
Commit db9f0d1ce5819b350293ff272277329e327215be by arsenm2
AMDGPU: Form v_cvt_ubyte* with f16 results

We get 2 conversion instructions anyway. Previously we would get a
conversion with SDWA reading from a byte source, which has a larger
encoding.
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
Commit 5227fa0c72ce55927cf4849160acb00442489937 by daan
Recommit "[InstCombine] Update assertions in InstCombine test; NFC"
The file was modifiedllvm/test/Transforms/InstCombine/ExtractCast.ll
Commit 05b04c685c9c5a5abc2ab9bd160a40c58c684b23 by Louis Dionne
Recommit "[libc++] NFC: Simplify substitutions by using lit recursive substitutions"

This re-commits cd7f9751c300, which was reverted in 12f6b024f9f5 because
it broke the LLVM `check-all` target. This commit addresses the underlying
issue by not setting the lit_config.recursiveExpansionLimit parameter of
the libc++ test suite, which is otherwise picked up by other test suites
in LLVM.

Once we've settled on a fix for the underlying issue with
lit_config.recursiveExpansionLimit, we can start using it
again in libc++, but for now we can just work around it.
The file was modifiedlibcxx/utils/libcxx/test/config.py
The file was modifiedlibcxx/utils/libcxx/test/format.py
Commit d0dd24a381a7ee54cb42201889a0d4533b0f9ffa by arsenm2
AMDGPU/GlobalISel: Fix crashing on weird G_INSERT sources

No test since these cases shouldn't really be getting through the
legalizer.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
Commit 38ddb49e5242920e44a982cff7bbe2e86bd23a69 by Jonas Devlieghere
[lldb/Reproducers] Always collect the whole dSYM in the reproducer

The FileCollector in LLDB collects every files that's used during a
debug session when capture is enabled. This ensures that the reproducer
only contains the files necessary to reproduce. This approach is not a
good fit for the dSYM bundle, which is a directory on disk, but should
be treated as a single unit.

On macOS LLDB have automatically find the matching dSYM for a binary by
its UUID. Having a incomplete dSYM in a reproducer can break debugging
even when reproducers are disabled.

This patch adds a was to specify a directory of interest to the
reproducers. It is called from SymbolVendorMacOSX with the path of the
dSYMs used by LLDB.

Differential revision: https://reviews.llvm.org/D76672
The file was modifiedlldb/source/Utility/Reproducer.cpp
The file was modifiedlldb/include/lldb/Utility/Reproducer.h
The file was modifiedlldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
The file was addedlldb/test/Shell/Reproducer/TestDSYM.test
Commit 51475e4023650c007b77a84cc8606923baa944dc by maskray
[ELF][test] Add linkerscript/linkorder-linked-to.s

Delete relocatable-linkorder.s which is covered.
The file was removedlld/test/ELF/relocatable-linkorder.s
The file was addedlld/test/ELF/linkerscript/linkorder-linked-to.s
Commit f0869417652f494a58a882ebd4d86bfcf6cf73ea by ndesaulniers
[SelectionDAGISel] small cleanup to INLINEASM_BR selection. NFC

Summary:
This code was throwing away the opcode for a boolean, which was then
reconstructing the opcode from that boolean.  Just pass the opcode, and
forget the boolean.

Reviewers: srhines

Reviewed By: srhines

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77100
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGISel.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
Commit b8fc192d42af56b17b7d940e6c226f4969e0d851 by arsenm2
Revert "[GISel]: Fix incorrect IRTranslation while translating null pointer types"

This reverts commit b3297ef05179e1fee616b97b1c65b58e4c7fef17.

This change is incorrect. The current semantic of null in the IR is a
pointer with the bitvalue 0. It is not a cast from an integer 0, so
this should preserve the pointer type.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/irtranslator-tbaa.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/call-translator.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/translate-gep.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-switch.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/call-translator-tail-call.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/irtranslator-exceptions.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-constant.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
Commit cf36f9855a7b8a7e69416b8d20c999a28c73b1b2 by efriedma
[SVE][SelectionDAG] Fix dumping of EVTs to use correct API for element count.

This makes "-debug" output for SVE SelectionDAG readable.
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp
Commit 63d70ea6a07131587e09914176551f4437187f78 by Jessica Paquette
[GlobalISel] Combine (x op 0) -> x for operations with a right identity of 0

Implement identity combines for operations like the following:

```
%a = G_SUB %b, 0
```

This can just be replaced with %b.

Over CTMark, this gives some minor size improvements at -O3.

Differential Revision: https://reviews.llvm.org/D76640
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-trivial-arith.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
Commit 5074776de478a114ece3f82668aa1363b2f17c92 by tlively
[WebAssembly] Import wasm_simd128.h from Emscripten

Summary:
As the WebAssembly SIMD proposal nears stabilization, there is desire
to use it with toolchains other than Emscripten. Moving the intrinsics
header to clang will make it available to WASI toolchains as well.

Reviewers: aheejin, sunfish

Subscribers: dschuff, mgorny, sbc100, jgravelle-google, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D76959
The file was addedclang/lib/Headers/wasm_simd128.h
The file was modifiedclang/lib/Headers/CMakeLists.txt
Commit 330873230071ffc2aebc0fe74db55e7a530c2f1b by richard
Fix crash if base specifier parsing hits an invalid type annotation.

Also change type annotation representation from ParsedType to TypeResult
to make it clearer to consumers that they can represent invalid types.
The file was modifiedclang/lib/Parse/ParseExpr.cpp
The file was modifiedclang/lib/Parse/Parser.cpp
The file was modifiedclang/test/Parser/cxx-class.cpp
The file was modifiedclang/lib/Parse/ParseTemplate.cpp
The file was modifiedclang/lib/Parse/ParseExprCXX.cpp
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/include/clang/Sema/DeclSpec.h
The file was modifiedclang/lib/Parse/ParseDeclCXX.cpp
The file was modifiedclang/lib/Parse/ParseDecl.cpp
The file was modifiedclang/lib/Parse/ParseObjc.cpp
Commit 764f54bb857b0fbc6742f306b09f640e0043791d by Yaxun.Liu
Rename options --cuda-gpu-arch and --no-cuda-gpu-arch

Per discussion

http://lists.llvm.org/pipermail/llvm-dev/2017-February/109930.html

Rename -cuda-gpu-arch and --no-cuda-gpu-arch to
--offload-arch and --no-offload-arch.

The original options will be alias to the new options.

Differential Revision: https://reviews.llvm.org/D76987
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 519f5c37962a8b747bf5e6990256a77281fa1d77 by aqjune
[LegalizeTypes] Add SoftenFloatRes_FREEZE

Summary: This adds SoftenFloatRes_FREEZE.

Reviewers: bkramer, JamesNagurne, craig.topper, efriedma

Reviewed By: craig.topper

Subscribers: AbigailLinden, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76980
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
The file was addedllvm/test/CodeGen/ARM/freeze-soften.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
Commit d5ee72065b9e5d28f89b1200133e80ce60cb99a0 by Jessica Paquette
[GlobalISel] Implement identity transforms for x op x -> x

When we have

```
a = G_OR x, x
```

or

```
b = G_AND y, y
```

We can drop the G_OR/G_AND and just use x/y respectively.

Also update arm64-fallback.ll because there was an or in there which hits this
transformation.

Differential Revision: https://reviews.llvm.org/D77105
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-binop-same-val.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
Commit c26a352f239ee71a77f3ae09a4c738eee164d738 by thakis
[gn build] (manually) ort 5074776de47
The file was modifiedllvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Commit 4ce375a8f2eed73832b6384cd1ea0b33606db6fe by thakis
[gn build] minor tweaks to sync script

- only complain about duplicate 'sources' lines if they contain
  more than 1 elements each (before, 0 and 1 element lists were
  counted too). In practice, this only has an effect for
  clang/lib/Headers/BUILD.gn

- make the '# NOSORT' diag actually work. This too only affects
  clang/lib/Headers/BUILD.gn.

In aggregate, changes to clang/lib/Headers/BUILD.gn still can't
be auto-merged, but for a slighly better reason.
The file was modifiedllvm/utils/gn/build/sync_source_lists_from_cmake.py
Commit 3f5a5dd295f5655c34feff829b0fd61ab1143710 by thakis
[gn build] re-run "gn format" on all .gn and .gni files
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/targets.gni
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/MC/AMDGPU/BUILD.gn
Commit 4eeb56d08874e1abe46d7f6d1dd492e717b93a35 by qshanz
[PowerPC] Don't do the folding if the operand is R0/X0

We have this transformation in PowerPC peephole:

Replace instruction:
  renamable $x28 = ADDI8 renamable $x7, -8
  renamable $x28 = ADD8 killed renamable $x28, renamable $x0
  STFD killed renamable $f0, -8, killed renamable $x28 :: (store 8 into %ir._ind_cast99.epil)
with:
  renamable $x28 = ADDI8 renamable $x7, -16
  STFDX killed renamable $f0, $x0, killed $x28 :: (store 8 into %ir._ind_cast99.epil)

It is invalid as the '$x0' in STFDX is constant 0, not register r0.

Reviewed By: Nemanjai

Differential Revision: https://reviews.llvm.org/D77034
The file was modifiedllvm/test/CodeGen/PowerPC/fold-frame-offset-using-rr.mir
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
Commit 221fa96cd43cdcb3af5b03d814f38643874bd794 by ataei
Fix linalg.generic access of hoisted constants

Summary: Otherwise the added @generic_const_int will fail

Reviewers: nicolasvasilache, rriddle, mravishankar

Subscribers: mehdi_amini, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77109
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
The file was modifiedmlir/test/Dialect/Linalg/loops.mlir
Commit 357a17e298ccd076a9274c9746afd3a9c0a8218e by julian.lettner
[lit] Send back whole lit.Test object from worker process

In previous commits [1,2] I changed worker.py to only send back the test
result from the worker process instead of the whole test object.  This
was a mistake.  lit.Test contains fields (e.g., xfials, requires,
unsupported) that are only populated when we actually execute the test,
but are queried when we report the results in the parent process.  This
commit essentially reverts the following changes:

[1] a3d2f9b53ac006cb972b61b0dbfcb5babe4356bf
[2] 17bb660fb83e869652ac87b145b0e26b708aab60
The file was modifiedllvm/utils/lit/lit/worker.py
The file was modifiedllvm/utils/lit/lit/run.py
The file was modifiedllvm/utils/lit/lit/Test.py
Commit f3c329986cf4349eb45a3e551f936d2b01a03ed5 by julian.lettner
[lit] Remove single process mode

Remove the "serial run" abstraction which bypasses Python's
`multiprocessing.Pool` and instead directly runs tests without spawning
worker processes.  This abstraction has not offered the benefits I hoped
it would and therefore does not carry its weight.
The file was modifiedllvm/utils/lit/lit/run.py
The file was modifiedllvm/utils/lit/lit/main.py
Commit 1e8900cc828bd62fdcc314283c991080bae4520c by julian.lettner
[lit] Fix test that relied on "single process" mode

The shtest-inject test relied on being executed in "single process" mode
and started to fail with a `PicklingError` after it was removed:
```
  Can't pickle <class 'lit.TestingConfig.CustomFormat'>: attribute
  lookup lit.TestingConfig.CustomFormat failed
```

This happened because the test config has to be serialized to the worker
process, but apparently the `CustomFormat` class defined inline is not
serializable.

This change allows passing the tested functionality (preamble_commands)
directly to `lit.formats.ShTest` so we can use it directly in the test.
The file was modifiedllvm/utils/lit/tests/shtest-inject.py
The file was modifiedllvm/utils/lit/lit/formats/shtest.py
The file was modifiedllvm/utils/lit/tests/Inputs/shtest-inject/lit.cfg
Commit ebad678857a94c32ce7b6931e9c642b32d278b67 by wmi
[SampleFDO] Port MD5 name table support to extbinary format.

Compbinary format uses MD5 to represent strings in name table. That gives smaller profile without the need of compression/decompression when writing/reading the profile. The patch adds the support in extbinary format. It is off by default but user can choose to enable it.

Note the feature of using MD5 in name table can bring very small chance of name conflict leading to profile mismatch. Besides, profile using the feature won't have the profile remapping support.

Differential Revision: https://reviews.llvm.org/D76255
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
The file was modifiedllvm/lib/ProfileData/SampleProfWriter.cpp
The file was modifiedllvm/include/llvm/ProfileData/SampleProfReader.h
The file was modifiedllvm/include/llvm/ProfileData/SampleProfWriter.h
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
The file was modifiedllvm/unittests/ProfileData/SampleProfTest.cpp
The file was modifiedllvm/lib/ProfileData/SampleProf.cpp
The file was addedllvm/test/Transforms/SampleProfile/Inputs/inline.md5extbinary.afdo
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/profile-format.ll
The file was modifiedllvm/test/tools/llvm-profdata/roundtrip.test
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
Commit 339b34266c1b54a9b5ff2f83cfb1da9cd8c9d90a by me
[AVR] Respect the 'interrupt' function attribute

In the past, AVR functions were only lowered with interrupt-specific
machine code if the function was defined with the "avr-interrupt" or
"avr-signal" calling conventions.

This patch modifies the backend so that if the function does not have a
special calling convention, but does have an "interrupt" attribute,
that function is interpreted as a function with interrupts.

This also extracts the "is this function an interrupt" logic from
several disparate places in the backend into one AVRMachineFunctionInfo
attribute.

Bug found by Wilhelm Meier.
The file was modifiedllvm/lib/Target/AVR/AVRFrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AVR/interrupts.ll
The file was modifiedllvm/lib/Target/AVR/AVRMachineFunctionInfo.h
The file was modifiedllvm/lib/Target/AVR/AVRRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AVR/AVRISelLowering.cpp
Commit 2a07221cf3029f2b55503e1c3847699eb6090ad6 by craig.topper
[SelectionDAG] Add an assert that the input VT and output VT for ISD::FREEZE are the same.

Differential Revision: https://reviews.llvm.org/D77092
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 7b808b105f6aedc4066502b68b71cf205bafa582 by me
[AVR] Generalize the previous interrupt bugfix to signal handlers too
The file was modifiedllvm/lib/Target/AVR/AVRRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AVR/AVRFrameLowering.cpp
The file was modifiedllvm/lib/Target/AVR/AVRISelLowering.cpp
The file was modifiedllvm/lib/Target/AVR/AVRMachineFunctionInfo.h
The file was modifiedllvm/test/CodeGen/AVR/interrupts.ll
Commit af3c52d5580fbb47cc88adeec7a928516e4b6cea by gchatelet
[Alignment][NFC] Simplify IRTranslator::getMemOpAlignment

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77078
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
Commit d2d6c9f59197bd82ec5bc9c003840f244a70a347 by gchatelet
[Alignment][NFC] GlobalIsel Utils inferAlignFromPtrInfo

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: rovka, hiraditya, volkan, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77079
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/Utils.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
Commit bcbd60aeb5fe20136fe79270ac1b8f3936883d78 by djordje.todorovic
[Mips] Make MipsBranchExpansion aware of BBIT family of branch

Octeon branches (bbit0/bbit032/bbit1/bbit132) have an immediate operand,
so it is legal to have such replacement within
MipsBranchExpansion::replaceBranch().

According to the specification, a branch (e.g. bbit0 ) looks like:

bbit0  rs p offset  // p is an immediate operand
  if !rs<p> then branch

Without this patch, an assertion triggers in the method,
and the problem has been found in the real example.

Differential Revision: https://reviews.llvm.org/D76842
The file was modifiedllvm/lib/Target/Mips/MipsSEInstrInfo.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSEInstrInfo.h
The file was modifiedllvm/lib/Target/Mips/MipsBranchExpansion.cpp
The file was modifiedllvm/lib/Target/Mips/MipsInstrInfo.h
The file was addedllvm/test/CodeGen/Mips/longbranch/long-branch-octeon.ll
Commit 80ef5c56406bf11685c7dcb0038f7ad7a624a742 by gchatelet
Remove unused variable
The file was modifiedllvm/lib/Target/AVR/AVRFrameLowering.cpp
Commit 159343cd1965c69233597b36ab27adce8bd34a14 by gchatelet
Fix missing override
The file was modifiedllvm/include/llvm/ProfileData/SampleProfReader.h
Commit cdce2fe561eb6e63d77d1d589e521a8e2afb1eef by gribozavr
[Syntax] Remove delayed folding from tree building.

Summary:
This patch removes delayed folding and replaces it with forward peeking.

Delayed folding was previously used as a solution to the problem that
declaration doesn't have a representation in the AST. For example following
code:

```
int a,b;
```

is expressed in the AST as:

```
TranslationUnitDecl
|-...
|-VarDecl `int a`
`-VarDecl `int b`
```

And in the syntax tree we need:

```
*: TranslationUnit
`-SimpleDeclaration
  |-int
  |-SimpleDeclarator
  | `-a
  |-,
  |-SimpleDeclarator
  | `-b
  |-;
```

So in words, we need to create SimpleDeclaration to be a parent of
SimpleDeclarator nodes. Previously we used delayed folding to make sure SimpleDeclarations will be
eventually created. And in case multiple declarators requested declaration
creation, declaration range was extended to cover all declarators.

This design started to be hard to reason about, so we decided to replace it with
forward peeking. The last declarator node in the chain is responsible for creating
SimpleDeclaration for the whole chain. Range of the declaration corresponds to
the source range of the declarator node. Declarator decides whether its the last
one by peeking to the next AST node (see `isResponsibleForCreatingDeclaration`).

This patch does following:
* Removed delayed folding logic
* Tweaks Token.dumpForTests
* Moves getQualifiedNameStart inside BuildTreeVisitor
* Extracts BuildTreeVisitor.ProcessDeclaratorAndDeclaration
* Renames Builder.getDeclRange to Builder.getDeclarationRange and uses the
  method in all places.
* Adds a bunch of tests

Reviewers: gribozavr2

Reviewed By: gribozavr2

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D76922
The file was modifiedclang/unittests/Tooling/Syntax/TreeTest.cpp
The file was modifiedclang/lib/Tooling/Syntax/BuildTree.cpp
The file was modifiedclang/lib/Tooling/Syntax/Tokens.cpp
Commit 0de874adfbb25f3782543d8e1a2d7e2b0643b6a5 by gchatelet
[Alignment][NFC] Transition to inferAlignFromPtrInfo

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: arsenm, jvesely, nhaehnle, hiraditya, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77120
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.h
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/Utils.h
The file was modifiedllvm/lib/Target/ARM/ARMCallLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64CallLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86CallLowering.cpp
Commit 86b40760278e73710564135be8cd9c2c9e7ff080 by shengchen.kan
[NFC] Remove unuseful infrastructure
The file was modifiedllvm/include/llvm/MC/MCObjectStreamer.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
Commit 581ba35291a658cd01e2cb39f6d415cac89a7656 by kai.wang
[RISCV] ELF attribute section for RISC-V.

Leverage ARM ELF build attribute section to create ELF attribute section
for RISC-V. Extract the common part of parsing logic for this section
into ELFAttributeParser.[cpp|h] and ELFAttributes.[cpp|h].

Differential Revision: https://reviews.llvm.org/D74023
The file was modifiedllvm/lib/Object/ELF.cpp
The file was modifiedllvm/lib/Support/ARMBuildAttrs.cpp
The file was addedllvm/lib/Support/ELFAttributeParser.cpp
The file was modifiedllvm/unittests/Support/ARMAttributeParser.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
The file was modifiedllvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
The file was addedllvm/unittests/Support/ELFAttributeParserTest.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h
The file was addedllvm/unittests/Support/RISCVAttributeParserTest.cpp
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was addedllvm/test/tools/llvm-objdump/RISCV/lit.local.cfg
The file was modifiedllvm/include/llvm/Support/ARMAttributeParser.h
The file was addedllvm/lib/Support/RISCVAttributeParser.cpp
The file was addedllvm/include/llvm/Support/ELFAttributeParser.h
The file was modifiedlld/ELF/InputFiles.cpp
The file was addedllvm/include/llvm/Support/ELFAttributes.h
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was addedllvm/lib/Support/ELFAttributes.cpp
The file was addedllvm/test/MC/RISCV/attribute-arch.s
The file was modifiedlldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
The file was addedllvm/test/MC/RISCV/attribute-with-insts.s
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was addedllvm/include/llvm/Support/RISCVAttributes.h
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was addedllvm/test/CodeGen/RISCV/attributes.ll
The file was modifiedllvm/unittests/Support/CMakeLists.txt
The file was addedllvm/test/MC/RISCV/invalid-attribute.s
The file was modifiedllvm/lib/Object/ELFObjectFile.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
The file was addedllvm/test/tools/llvm-objdump/RISCV/unknown-arch-attr.test
The file was modifiedllvm/lib/Support/ARMAttributeParser.cpp
The file was addedllvm/lib/Support/RISCVAttributes.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
The file was modifiedllvm/include/llvm/Support/ARMBuildAttributes.h
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was addedllvm/include/llvm/Support/RISCVAttributeParser.h
The file was addedllvm/test/MC/RISCV/attribute.s
Commit 0c9c58ada0afa3e536834a71ac43fa80ae1f0af7 by flo
[SCCP] Use constant ranges for casts.

For casts with constant range operands, we can use
ConstantRange::castOp.

Reviewers: davide, efriedma, mssimpso

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D71938
The file was addedllvm/test/Transforms/SCCP/ip-ranges-casts.ll
The file was modifiedllvm/lib/Transforms/Scalar/SCCP.cpp
Commit 0b6f40da4582c74bf6b000f676d3376177761e4d by llvmgnsyncbot
[gn build] Port 581ba35291a
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
Commit 5d3a69feca127618d99c262d3805bd5a9a6ca09b by sebastian.neubauer
[AMDGPU] New llvm.amdgcn.ballot intrinsic

Add a new llvm.amdgcn.ballot intrinsic modeled on the ballot function
in GLSL and other shader languages. It returns a bitfield containing the
result of its boolean argument in all active lanes, and zero in all
inactive lanes.

This is intended to replace the existing llvm.amdgcn.icmp and
llvm.amdgcn.fcmp intrinsics after a suitable transition period.

Use the new intrinsic in the atomic optimizer pass.

Differential Revision: https://reviews.llvm.org/D65088
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsAMDGPU.td
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
The file was addedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
The file was addedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
The file was modifiedllvm/test/Analysis/DivergenceAnalysis/AMDGPU/always_uniform.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
Commit c9d5c1959767d17809157a59c99d5132128bab2a by gchatelet
[Alignment][NFC] Transitionning more getMachineMemOperand call sites

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: arsenm, dylanmckay, sdardis, nemanjai, jvesely, nhaehnle, hiraditya, kbarton, jrtc27, atanasyan, Jim, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77121
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430InstrInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MipsFastISel.cpp
The file was modifiedllvm/lib/Target/Mips/MipsCallLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AVR/AVRInstrInfo.cpp
The file was modifiedllvm/lib/Target/Mips/MipsInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
The file was modifiedllvm/lib/Target/Mips/MipsLegalizerInfo.cpp
The file was modifiedllvm/test/TableGen/address-space-patfrags.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCFastISel.cpp
The file was modifiedllvm/lib/Target/Mips/MipsInstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
Commit 47107dc3bda1f8c27c70c84f30aa0cdd41786e0d by dantrushin
[Statepoint] Fix StatepointLoweringInfo::GCTransitionArgs initialization

Summary:
In method SelectionDAGBuilder::LowerStatepoint, array SI.GCTransitionArgs
is initialized from wrong part of ImmutableStatepoint class.
We copy gc args instead of transitions args.

Reviewers: reames, skatkov

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77075
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
Commit 2c5f43f9ddbb731c56fd84185bb20be7d8db3a50 by david.green
[ARM] Fix qdadd operand order

qdadd is defined as sat(Rm + sat(2*Rn)). We had the Rm and Rn switched
the wrong way around.

Differential Revision: https://reviews.llvm.org/D77049
The file was modifiedllvm/test/CodeGen/ARM/acle-intrinsics-v5.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/test/CodeGen/ARM/qdadd.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
Commit d30e9ad34519cb0ec17d411bc103af7bb76da77e by Raphael Isemann
Correct the duplicate pragma marks in CommandObjectTarget.cpp

Summary: Resolve the two duplicated pragma marks in lldb/source/Commands/CommandObjectTarget.cpp

Reviewers: teemperor

Reviewed By: teemperor

Subscribers: teemperor, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D77096
The file was modifiedlldb/source/Commands/CommandObjectTarget.cpp
Commit b6d2212f5276bcf0e5ef6b5dc0c985b72664ae34 by Tom.Weaver
[Dexter] Add support for Windows to regression test suite.

This patch addresses the issue of the regression suite not running on windows
hardware. It changes the following things:

* add new dexter regression suite command to lit.cfg.py that makes use of the
  clang-cl_vs2015 and dbgend builder and debuggers.

* sprinkle the new regressionsuite command through the feature and tool tests
  that require them.

* mark certain problem tests on windows

* [revert fix] fixed darwin regression test failures by adding unsupported line
  for system-darwin to command tests.

There's a couple of tests that fail (or pass) in unexpected ways on Windows.

Problem tests are both the penalty and perfect expect_watch_type.cpp tests.
Type information reporting parity is not possible a this time in dexter due to
the nature of how different debuggers report type information back to their users.

reviewers: Orlando

Differential Revision: https://reviews.llvm.org/D76609
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
The file was modifieddebuginfo-tests/lit.cfg.py
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/subtools/view.cpp
The file was modifieddebuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
Commit 464b9aeafe29104a1a8391f43f91835eeca473b3 by daan
[InstCombine] Transform extelt-trunc -> bitcast-extelt

Canonicalize the case when a scalar extracted from a vector is
truncated.  Transform such cases to bitcast-then-extractelement.
This will enable erasing the truncate operation.

This commit fixes PR45314.

reviewers: spatel

Differential revision: https://reviews.llvm.org/D76983
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/trunc-extractelement.ll
The file was modifiedllvm/test/Transforms/InstCombine/ExtractCast.ll
Commit 7a4a98a9c4f39d9c395f5ce587dbbcb5450a9655 by llvm-dev
[X86] Move canLowerByDroppingEvenElements earlier to be with matchShuffleWithPACK. NFCI.

Make sure its defined earlier so more shuffle lowering methods can use it.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 98357dee1c6b9eb4233ade012299f50f8657924d by llvm-dev
[X86] Combine concat(palignr,palignr) -> palignr(concat,concat)

combineX86ShufflesRecursively should handle this someday
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/x86-interleaved-access.ll
Commit b9810988b23c96d1628371868336cb27e2daacca by gchatelet
[Alignment][NFC] Transitionning more getMachineMemOperand call sites

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77127
The file was modifiedllvm/lib/Target/ARM/Thumb2InstrInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMCallLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FastISel.cpp
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFastISel.cpp
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb1InstrInfo.cpp
The file was modifiedllvm/lib/Target/ARC/ARCInstrInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/MIRParser/MIParser.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.cpp
Commit 06c58f11a99a35da5799de8771cafdc47db69a8a by dantrushin
[SCEV] Use backedge SCEV of PHI only if its input is loop invariant

For the PHI node

      %1 = phi [%A, %entry], [%X, %latch]

it is incorrect to use SCEV of backedge val %X as an exit value
of PHI unless %X is loop invariant.
This is because exit value of %1 is value of %X at one-before-last
iteration of the loop.

Reviewed By: Meinersbur
Differential Revision: https://reviews.llvm.org/D73181
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was addedllvm/test/Analysis/ScalarEvolution/pr44605.ll
Commit 6aacdd6083d841cd4afb47ba184236844021ac46 by james.henderson
[docs] Document coding standard for error and warning messages

In particular, these messages should start with a lower-case letter and
should have no trailing period at the end of the last sentence.

See http://lists.llvm.org/pipermail/llvm-dev/2020-March/140178.html for
context.

Reviewed by: aaron.ballman, hubert.reinterpretcast, rnk, dblaikie

Differential Revision: https://reviews.llvm.org/D76833
The file was modifiedllvm/docs/CodingStandards.rst
Commit 0aa9c5429b83df1a5881f066475e2246a02491a5 by james.henderson
[lld][ELF][test] Improve deplib.s

The test had a few style issues, and I noticed a hole in the coverage
(namely that the search order wasn't tested). Adding cases for the hole
in turn meant other cases weren't important.

The .so test case isn't important, since the code is shared code, so
I've removed it. Additionally, I've modified the usage of the "bar"
directive to show that an unneeded library must still be present, or the
link will fail, even though it isn't linked in.

Reviewed by: MaskRay, grimar

Differential Revision: https://reviews.llvm.org/D76851
The file was removedlld/test/ELF/Inputs/deplibs-lib_bar.s
The file was modifiedlld/test/ELF/deplibs.s
The file was removedlld/test/ELF/Inputs/deplibs-lib_foo.s
The file was modifiedlld/test/ELF/deplibs-colon-prefix.s
Commit b4d0384a6cd7c0715f39527b8db2bc0e54add893 by james.henderson
[ELF][test] Add test for --gc-sections + many sections

This test covers the case where --gc-sections is used when there are
many sections. In particular, it ensures that there is no adverse
interaction with common and absolute symbols.

Reviewed by: MaskRay, grimar

Differential Revision: https://reviews.llvm.org/D76003
The file was modifiedlld/test/ELF/many-alloc-sections.s
Commit b37543750c766e8edc7e719ecae22b14a1ceed7f by flo
[ValueLattice] Distinguish between constant ranges with/without undef.

This patch updates ValueLattice to distinguish between ranges that are
guaranteed to not include undef and ranges that may include undef.

A constant range guaranteed to not contain undef can be used to simplify
instructions to arbitrary values. A constant range that may contain
undef can only be used to simplify to a constant. If the value can be
undef, it might take a value outside the range. For example, consider
the snipped below

define i32 @f(i32 %a, i1 %c) {
  br i1 %c, label %true, label %false
true:
  %a.255 = and i32 %a, 255
  br label %exit
false:
  br label %exit
exit:
  %p = phi i32 [ %a.255, %true ], [ undef, %false ]
  %f.1 = icmp eq i32 %p, 300
  call void @use(i1 %f.1)
  %res = and i32 %p, 255
  ret i32 %res
}

In the exit block, %p would be a constant range [0, 256) including undef as
%p could be undef. We can use the range information to replace %f.1 with
false because we remove the compare, effectively forcing the use of the
constant to be != 300. We cannot replace %res with %p however, because
if %a would be undef %cond may be true but the  second use might not be
< 256.

Currently LazyValueInfo uses the new behavior just when simplifying AND
instructions and does not distinguish between constant ranges with and
without undef otherwise. I think we should address the remaining issues
in LVI incrementally.

Reviewers: efriedma, reames, aqjune, jdoerfert, sstefan1

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D76931
The file was modifiedllvm/include/llvm/Analysis/LazyValueInfo.h
The file was modifiedllvm/lib/Analysis/ValueLattice.cpp
The file was addedllvm/test/Transforms/SCCP/phi-cycle.ll
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/merge-range-and-undef.ll
The file was modifiedllvm/test/Transforms/SCCP/range-and.ll
The file was modifiedllvm/test/Transforms/SCCP/range-and-ip.ll
The file was modifiedllvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
The file was modifiedllvm/lib/Analysis/LazyValueInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/ValueLattice.h
Commit 2539b4ae4765b14cd7774e801ba12f0a200ef734 by peter.smith
[LLD][ELF] Allow empty (.init|.preinit|.fini)_array to be RELRO

The default GNU linker script uses the following idiom for the array
sections. I'll use .init_array here, but this also applies to
.preinit_array and .fini_array sections.

  .init_array    :
  {
    PROVIDE_HIDDEN (__init_array_start = .);
    KEEP (*(.init_array))
    PROVIDE_HIDDEN (__init_array_end = .);
  }

The C-library will take references to the _start and _end symbols to
process the array. This will make LLD keep the OutputSection even if there
are no .init_array sections. As the current check for RELRO uses the
section type for .init_array the above example with no .init_array
InputSections fails the checks as there are no .init_array sections to give
the OutputSection a type of SHT_INIT_ARRAY. This often leads to a
non-contiguous RELRO error message.

The simple fix is to a textual section match as well as a section type
match.

Differential Revision: https://reviews.llvm.org/D76915
The file was modifiedlld/ELF/Writer.cpp
The file was addedlld/test/ELF/relro-init-fini-script.s
Commit 6120cb42f7977290fac7a8ae1a7c06fc79beb5dc by flo
[VPlan] Move test strs to variables, silence spurious C4129 (NFC).

This is a speculative fix to silence the spurious C4129 warning that
some version of MSVC generate for the raw string literals in the changed
files.

Before disabling the warning (D76428), try a potential fix suggested in
the review.
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanTest.cpp
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
Commit 3807079d705fe04c5c3bde8f848ec922b5771f15 by n.james93
[clang-tidy] Fix crash in readability-redundant-string-cstr

Summary: Addresses [[ https://bugs.llvm.org/show_bug.cgi?id=45286 | clang-tidy-11: Crash in DynTypedMatcher::matches during readability-redundant-string-cstr check ]]

Reviewers: aaron.ballman, alexfh, gribozavr2

Reviewed By: gribozavr2

Subscribers: xazax.hun, cfe-commits

Tags: #clang, #clang-tools-extra

Differential Revision: https://reviews.llvm.org/D76761
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-redundant-string-cstr.cpp
Commit 229cda968cb22e2c56fbed8e9ddd4c2495f09757 by sdi1600105
[LoopTerminology] LCSSA form

Reviewed by: Michael Kruse (Meinersbur)

Differential Revision: https://reviews.llvm.org/D75233
The file was modifiedllvm/docs/Passes.rst
The file was modifiedllvm/docs/LoopTerminology.rst
Commit 05bc588abbc38ad1f8f67994ec3bb606f0aaa983 by Louis Dionne
[libc++] Do not rely on the environment to run filesystem tests

Previously, filesystem tests would require LIBCXX_FILESYSTEM_DYNAMIC_TEST_ROOT
to be present in the environment and to match the value provided when
compiling, as a macro. This has the problem that it only allows for the
filesystem tests to be run on the same machine they are created.

Instead, we create a temporary directory for each test. Technically,
this is tricky to do because we're relying on some of the code that
we're testing to do this. However, there's no other portable way of
creating temporary direcories in C++, so this is difficult to avoid.

Differential Revision: https://reviews.llvm.org/D76731
The file was modifiedlibcxx/utils/libcxx/test/config.py
The file was modifiedlibcxx/test/support/filesystem_test_helper.h
The file was modifiedlibcxx/test/CMakeLists.txt
The file was modifiedlibcxx/test/support/filesystem_dynamic_test_helper.py
Commit 71177ac16801ceced4b7dcdd21b05345416f31df by sam.mccall
[clangd] Support new semanticTokens request from LSP 3.16.

Summary:
This is a simpler request/response protocol.

Reference: https://github.com/microsoft/vscode-languageserver-node/blob/master/protocol/src/protocol.semanticTokens.proposed.ts

No attempt to support incremental formatting (yet).

Reviewers: hokein

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D76663
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.h
The file was modifiedclang-tools-extra/clangd/test/initialize-params.test
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.h
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was addedclang-tools-extra/clangd/test/semantic-tokens.test
The file was modifiedclang-tools-extra/clangd/Protocol.cpp
The file was modifiedclang-tools-extra/clangd/Protocol.h
Commit fa61b5059a361e52012b2945f408b93674d6318d by spatel
[InstCombine] remove stray auto-generated test comment; NFC

The script now includes extra info about command-line options used
when generating its advertisement heading, but we don't want that
here. This is a special-case because we have enhanced the check
lines (as noted in the 2nd comment line).
The file was modifiedllvm/test/Transforms/InstCombine/select_meta.ll
Commit d3a729ab247af45d4929df2a6090db7571b7116f by Louis Dionne
[libc++] Set filesystem test flags in a lit.local.cfg

This reduces the complexity of our already complex global lit configuration,
and also avoids cluttering the compilation commands for all tests with
things that are only relevant to the filesystem tests.

Differential Revision: https://reviews.llvm.org/D76785
The file was modifiedlibcxx/utils/libcxx/test/config.py
The file was modifiedlibcxx/test/std/input.output/filesystems/lit.local.cfg
Commit fb47ffc618eaf0e716eafa7e719fc67bf41cef3b by Louis Dionne
[libc++] Provide a method for adding compiler flags in lit.local.cfg files

That way, local lit configuration files don't have to worry about
deep-copying the compiler instance of the test format, which is
arguably an implementation detail.

We pass the config to this method even though it is not used by the
current test format because this allows replacing the current test
format by other test formats that would require the config to add
new compile flags.
The file was modifiedlibcxx/test/std/input.output/filesystems/lit.local.cfg
The file was modifiedlibcxx/utils/libcxx/test/format.py
The file was modifiedlibcxx/test/std/experimental/filesystem/lit.local.cfg
The file was modifiedlibcxx/test/std/experimental/language.support/support.coroutines/lit.local.cfg
Commit b632fe5a363488a377b22e1708c8b57d986d3fd8 by Louis Dionne
[libc++] Quote the filesystem static env root in the source files instead of the command line

Otherwise, trying to reproduce a failing filesystem test by copy-pasting
the command-line used and running that in the shell won't work, because
the shell will eat quoting around the define and we'll end up with a
non-stringized path in the .cpp file.
The file was modifiedlibcxx/test/support/test_macros.h
The file was modifiedlibcxx/test/std/input.output/filesystems/lit.local.cfg
The file was modifiedlibcxx/test/support/filesystem_test_helper.h
Commit efe59d6717dcdf7777acb9b7a734e1a520bdf22a by llvm-dev
[X86][SSE] lowerShuffleWithPACK - extend to use chained PACKs for larger truncations

If canLowerByDroppingEvenElements indicates that the shuffle is a N:1 compaction pattern and the inputs are suitably sign/zero extended then we can use a chain of PACKSS/PACKUS to compact.

This helps avoid PSHUFB (and its mask load) for short shuffle chains, shuffle combining will still replace with a PSHUFB if we have enough shuffles as getFauxShuffleMask can recognise PACKSS/PACKUS chains.
The file was modifiedllvm/test/CodeGen/X86/bitcast-and-setcc-512.ll
The file was modifiedllvm/test/CodeGen/X86/psubus.ll
The file was modifiedllvm/test/CodeGen/X86/avx-fp2int.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-ssat.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-usat.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_usat.ll
The file was modifiedllvm/test/CodeGen/X86/vec_cast2.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-packus.ll
Commit a9c22739e675ad26093a8e584ab6bbc24f6a7bb3 by Louis Dionne
[libc++] Remove incorrect assertion in the filesystem tests

Based on the current discussion in https://llvm.org/PR45307, it seems
that it's legitimate for `temp_directory_path()` to return a path with
a trailing slash. Since `p.parent_path()` will never contain a trailing
slash, comparing it to the result of `temp_directory_path()` will fail
depending on whether `temp_directory_path()` returns a trailing slash
or not.
The file was modifiedlibcxx/test/support/filesystem_test_helper.h
Commit 154d517bc7d600dbf9a0d6e2554467249370316b by ehudkatz
[ADT] Implement the Waymarking as an independent utility

This is the Waymarking algorithm implemented as an independent utility.
The utility is operating on a range of sequential elements.
First we "tag" the elements, by calling `fillWaymarks`.
Then we can "follow" the tags from every element inside the tagged
range, and reach the "head" (the first element), by calling
`followWaymarks`.

Differential Revision: https://reviews.llvm.org/D74415
The file was addedllvm/include/llvm/ADT/Waymarking.h
The file was addedllvm/unittests/ADT/WaymarkingTest.cpp
The file was modifiedllvm/unittests/ADT/CMakeLists.txt
Commit e267dfceebdc2f20060f23b1cb2a5297417f555d by llvmgnsyncbot
[gn build] Port 154d517bc7d
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn
Commit 38619fa7da381b1390f9dc416fe2ed02612483ee by llvm-dev
Fix enumeral mismatch warning. NFCI.

Don't mix llvm::ISD and llvm::X86ISD.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 7e0e5fa499c79f34f694de3db69bbe4980ebe2b8 by llvm-dev
Revert rGefe59d6717dcdf7777acb9b7a734e1a520bdf22a "[X86][SSE] lowerShuffleWithPACK - extend to use chained PACKs for larger truncations"

This might be causing an issue on the fuchsia-x86_64-linux buildbot - reverting to see what happens.
The file was modifiedllvm/test/CodeGen/X86/vec_cast2.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_usat.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-packus.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-usat.ll
The file was modifiedllvm/test/CodeGen/X86/avx-fp2int.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
The file was modifiedllvm/test/CodeGen/X86/bitcast-and-setcc-512.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-ssat.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
The file was modifiedllvm/test/CodeGen/X86/psubus.ll
Commit b3f13bc165754ba26b93524367521d39deb21073 by grimar
[obj2yaml] - Teach tool to dump program headers.

Currently obj2yaml does not dump program headers,
this patch teaches it to do that.

Differential revision: https://reviews.llvm.org/D75342
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/test/Object/obj2yaml.test
The file was addedllvm/test/tools/obj2yaml/program-headers.yaml
Commit f481d4889378b97eafc338bfa422891d09ca1b38 by paulsson
[SystemZ] Improve foldMemoryOperandImpl().

Fold MS(G)RKC -> MS(G)C.

Review: Ulrich Weigand

Differential Revision: https://reviews.llvm.org/D76771
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrFormats.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.td
The file was addedllvm/test/CodeGen/SystemZ/foldmemop-msc.mir
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
Commit 665bebb46f54c3fb08247d10bbd8d21609c0fcde by paulsson
[SystemZ] Add isCommutable flag on VFA and VFM.

NFC

Review: Ulrich Weigand
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrVector.td
Commit e26eece1e2e7d7e6fbadb1207afef9b6353b5330 by medismail.bennani
[lldb/DWARF] Fix evaluator crash when accessing empty stack.

This patch fixes a crash that happens on the DWARF expression evaluator
when trying to access the top of the stack while it's empty.

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedlldb/source/Expression/DWARFExpression.cpp
The file was modifiedlldb/unittests/Expression/DWARFExpressionTest.cpp
Commit 34756a1c709d1ef0292413cddaeeef8a21ed2124 by Louis Dionne
[libc++] Execute tests using an external shell

This makes it closer to how one would run the tests by hand, and it is
also closer to how the SSHExecutor runs the tests remotely. It also
allows using shell builtins in .sh.cpp tests when using %{exec}.
The file was modifiedlibcxx/utils/run.py
Commit 31a346cc35c829e207fbf24d8f8f1ee22ca9f140 by andydavis
[MLIR][Vector] Add support for TupleGetOp folding through InsertSlicesOp and ExtractSlicesOp.

Summary:
Add support for TupleGetOp folding through InsertSlicesOp and ExtractSlicesOp.
Vector-to-vector transformations for unrolling and lowering to hardware vectors
can generate chains of structured vector operations (InsertSlicesOp,
ExtractSlicesOp and ShapeCastOp) between the producer of a hardware vector
value and its consumer. Because InsertSlicesOp, ExtractSlicesOp and ShapeCastOp
are structured, we can track the location (tuple index and vector offsets) of
the consumer vector value through the chain of structured operations to the
producer, enabling a much more powerful producer-consumer fowarding of values
through structured ops and tuple, which in turn enables a more powerful
TupleGetOp folding transformation.

Reviewers: nicolasvasilache, aartbik

Reviewed By: aartbik

Subscribers: grosul1, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76889
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorUtils.h
The file was modifiedmlir/lib/Dialect/Vector/VectorUtils.cpp
The file was modifiedmlir/test/Dialect/Vector/vector-transforms.mlir
Commit e4a778052e98c6d67f601342a7ca3b3c52ce7fbd by medismail.bennani
Revert "[lldb/DWARF] Fix evaluator crash when accessing empty stack."

This reverts commit e26eece1e2e7d7e6fbadb1207afef9b6353b5330.
The file was modifiedlldb/unittests/Expression/DWARFExpressionTest.cpp
The file was modifiedlldb/source/Expression/DWARFExpression.cpp
Commit f3a7d790df3357d52c10ec5ef48606944bcf5c6c by medismail.bennani
[lldb/DWARF] Fix evaluator crash when accessing empty stack.

This patch fixes a crash that happens on the DWARF expression evaluator
when trying to access the top of the stack while it's empty.

rdar://60512489

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

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedlldb/unittests/Expression/DWARFExpressionTest.cpp
The file was modifiedlldb/source/Expression/DWARFExpression.cpp
Commit eb4663d8c6add351d758748383f1a9fc231e5e64 by maskray
[lld][COFF][ELF][WebAssembly] Replace --[no-]threads /threads[:no] with --threads={1,2,...} /threads:{1,2,...}

--no-threads is a name copied from gold.
gold has --no-thread, --thread-count and several other --thread-count-*.

There are needs to customize the number of threads (running several lld
processes concurrently or customizing the number of LTO threads).
Having a single --threads=N is a straightforward replacement of gold's
--no-threads + --thread-count.

--no-threads is used rarely. So just delete --no-threads instead of
keeping it for compatibility for a while.

If --threads= is specified (ELF,wasm; COFF /threads: is similar),
--thinlto-jobs= defaults to --threads=,
otherwise all available hardware threads are used.

There is currently no way to override a --threads={1,2,...}. It is still
a debate whether we should use --threads=all.

Reviewed By: rnk, aganea

Differential Revision: https://reviews.llvm.org/D76885
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/test/ELF/build-id.s
The file was modifiedlld/Common/Filesystem.cpp
The file was modifiedlld/ELF/ICF.cpp
The file was modifiedllvm/include/llvm/Support/Parallel.h
The file was modifiedlld/docs/ld.lld.1
The file was modifiedlld/COFF/Options.td
The file was modifiedlld/Common/CMakeLists.txt
The file was modifiedlld/test/COFF/pdb-globals.test
The file was addedlld/test/wasm/threads.s
The file was addedlld/test/ELF/threads.s
The file was modifiedlld/test/ELF/lto/thinlto.ll
The file was modifiedlld/test/wasm/lto/thinlto.ll
The file was modifiedlld/wasm/Options.td
The file was modifiedlld/ELF/Options.td
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/include/lld/Common/Threads.h
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedllvm/lib/Support/Parallel.cpp
The file was modifiedllvm/utils/gn/secondary/lld/Common/BUILD.gn
The file was removedlld/Common/Threads.cpp
Commit 7093b92a136b0696cf9cfc3f9822973ed886be5b by tyker
[AssumeBundles] Preserve Information from Load/Store

Summary: This patch preserve dereferenceable, nonnull and alignment from loads and stores.

Reviewers: jdoerfert

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76759
The file was modifiedllvm/lib/IR/KnowledgeRetention.cpp
The file was modifiedllvm/test/IR/assume-builder.ll
Commit 4aeb7e1ef4cc3df2f93cb18d315af0e9ebd8f2c7 by tyker
[AssumeBundles] Preserve information in EarlyCSE

Summary: this patch preserve information from various places in EarlyCSE into assume bundles.

Reviewers: jdoerfert

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76769
The file was modifiedllvm/test/Transforms/EarlyCSE/guards.ll
The file was modifiedllvm/lib/IR/KnowledgeRetention.cpp
The file was modifiedllvm/test/Transforms/EarlyCSE/invariant-loads.ll
The file was modifiedllvm/test/Transforms/EarlyCSE/invariant.start.ll
The file was modifiedllvm/include/llvm/IR/KnowledgeRetention.h
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
Commit c3ca11771e184f11bf4f48804f056ac699ad7c40 by Louis Dionne
[libc++abi] Remove the old testit script

It's not used anymore, we use Lit as a test runner now (and have been
for a long time).
The file was removedlibcxxabi/test/testit
Commit 998118c3d3bd6a394c1da35f7570cce1a3145ea3 by gchatelet
[Alignment][NFC] Deprecate MachineMemOperand::getMachineMemOperand version that takes an untyped alignement.

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, jfb, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77138
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/lib/Target/ARM/ARMInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
Commit b0cd7b2799ebcac0e456abf60cea2ca421a83945 by flo
[SCCP] Limit use of range info for binops to integers for now.

This fixes a crash when building the test suite.
The file was modifiedllvm/test/Transforms/SCCP/ip-ranges-casts.ll
The file was modifiedllvm/lib/Transforms/Scalar/SCCP.cpp
Commit da7b6fe942fc9bbf535321477d614051d05aee4b by ravishankarm
[mlir][Linalg] Allow tiling of batch dimension for convolution ops with padding.

Existing tiling implementation of Linalg would still work for tiling
the batch dimensions of the convolution op.

Differential Revision: https://reviews.llvm.org/D76637
The file was addedmlir/test/Dialect/Linalg/tile_conv_padding.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
Commit 21d9d0855be17220e869ef5bbec2d839fe841840 by saugustine
New symbolizer option to print files relative to the compilation directory.

Summary: New "--relative" option to allow printing files relative to the compilation directory.

Reviewers: jhenderson

Subscribers: MaskRay, rupprecht, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76733
The file was modifiedllvm/docs/CommandGuide/llvm-symbolizer.rst
The file was addedllvm/test/tools/llvm-symbolizer/relativenames.s
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
Commit 41c135d6d2882ee6592a1c51a0221ef6def79ee4 by douglas.yung
Fix buildgo.sh script to fix linux build failure due to changes in ad1466f8cbc5.

The above change used a binary literal that is not supported in c++11 mode when
using gcc. It was formalized into the c++14 standard and works when using that
mode to compile, so change the script to use c++14 instead.

Reviewed by: dvyukov

Differential Revision: https://reviews.llvm.org/D77111
The file was modifiedcompiler-rt/lib/tsan/go/buildgo.sh
Commit a76e68c9704fb5b3faf25bb8d51e405b5310ff08 by sam.mccall
[CodeComplete] Member completion for concept-constrained types.

Summary:
The basic idea is to walk through the concept definition, looking for
t.foo() where t has the constrained type.

In this patch:
- nested types are recognized and offered after ::
- variable/function members are recognized and offered after the correct
   dot/arrow/colon trigger
- member functions are recognized (anything directly called). parameter
   types are presumed to be the argument types. parameters are unnamed.
- result types are available when a requirement has a type constraint.
   These are printed as constraints, except same_as<T> which prints as T.

Not in this patch:
- support for merging/overloading when two locations describe the same member.
   The last one wins, for any given name. This is probably important...
- support for nested template members (T::x<int>)
- support for completing members of (instantiations of) template template parameters

Reviewers: nridge, saar.raz

Subscribers: mgrang, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D73649
The file was modifiedclang/include/clang/Sema/Scope.h
The file was addedclang/test/CodeCompletion/concepts.cpp
The file was modifiedclang/lib/Sema/SemaCodeComplete.cpp
The file was modifiedclang/lib/Sema/CodeCompleteConsumer.cpp
Commit cba15d1b5c5416402ca47ceec2acbbc62f760228 by v.churavy
Add manually overriding of the darwin SDK version

Summary:
When doing cross-compilation from Linux to MacOS we don't have
access to have access to `xcodebuild` and therefore need a way
to set the SDK version from the outside.

Fixes https://reviews.llvm.org/D68292#1853594 for me.

Reviewers: delcypher, yln

Reviewed By: delcypher

Subscribers: #julialang, mgorny, #sanitizers

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D77026
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
Commit 8b925440d11b64108935f4fceb30d372caa68211 by llvm-dev
[X86][SSE] Simplify PTEST/TESTP tests for D76984

We don't need to use an allones for the second operand - test the general case.
The file was modifiedllvm/test/CodeGen/X86/combine-testps.ll
The file was modifiedllvm/test/CodeGen/X86/combine-ptest.ll
The file was modifiedllvm/test/CodeGen/X86/combine-testpd.ll
Commit 30436a1ce7f3d2de8aaaa5f559060682a54fd16e by llvm-dev
[X86][SSE] Add additional PTEST/TESTP inversion tests
The file was modifiedllvm/test/CodeGen/X86/combine-testps.ll
The file was modifiedllvm/test/CodeGen/X86/combine-testpd.ll
The file was modifiedllvm/test/CodeGen/X86/combine-ptest.ll
Commit 753a3245f7231ffd86b8af02e57da6ceb2ec5669 by rnk
Make FunctionDecl::isDefined non-virtual, NFC

This convenience wrapper was made virtual when it was introduced. I see
no overrides and no reason for it to be virtual, so make it non-virtual.
The file was modifiedclang/include/clang/AST/Decl.h
Commit 4799a1745b300710c800e4bfa55c6bb630edd58c by maskray
[llvm-symbolizer] Delete unneeded option name comments. NFC

Follow-up of D76733. The code documents itself.
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
Commit 94d912296de21e965198ba1ddd1ca6714b3e4722 by zhizhouy
[NFC] Do not run CGProfilePass when not using integrated assembler

Summary:
CGProfilePass is run by default in certain new pass manager optimization pipeline. Assemblers other than llvm as (such as gnu as) cannot recognize the .cgprofile entries generated and emitted from this pass, causing build time error.

This patch adds new options in clang CodeGenOpts and PassBuilder options so that we can turn cgprofile off when not using integrated assembler.

Reviewers: Bigcheese, xur, george.burgess.iv, chandlerc, manojgupta

Reviewed By: manojgupta

Subscribers: manojgupta, void, hiraditya, dexonsmith, llvm-commits, tcwang, llozano

Tags: #llvm, #clang

Differential Revision: https://reviews.llvm.org/D62627
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was addedllvm/test/Other/new-pm-cgprofile.ll
The file was modifiedllvm/include/llvm/Passes/PassBuilder.h
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
Commit 7fca0e9797dccf44a1ae43328b94182d2f6188d9 by uday
[MLIR] Add simple runner utilities for timing

Add utilities print_flops, rtclock for timing / benchmarking. Add
mlir_runner_utils_dir test conf variable.

Signed-off-by: Uday Bondhugula <uday@polymagelabs.com>

Differential Revision: https://reviews.llvm.org/D76912
The file was modifiedmlir/test/lit.site.cfg.py.in
The file was modifiedmlir/test/CMakeLists.txt
The file was addedmlir/test/mlir-cpu-runner/sgemm_naive_codegen.mlir
The file was modifiedmlir/test/lit.cfg.py
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp
Commit 5c2bf577dcd34b0f4a20360d411e410d739b752f by Jonas Devlieghere
[lldb/API] Add missing reproducer instrumentation to GetHostPlatform.

SBPlatform::GetHostPlatform was missing the reproducer instrumentation
macros. Fixed by running lldb-instr on SBPlatform.cpp:

$ ./bin/lldb-instr ../llvm-project/lldb/source/API/SBPlatform.cpp
The file was modifiedlldb/source/API/SBPlatform.cpp
Commit cb0fa3234daf973c146b25ba8f9a95a40ee189e9 by tyker
Fix 7093b92a136b0696cf9cfc3f9822973ed886be5b
accidently pushed the wrong version of the patch.
The file was modifiedllvm/include/llvm/IR/KnowledgeRetention.h
The file was modifiedllvm/lib/IR/KnowledgeRetention.cpp
Commit dc817b2dea9f28e22470d1d74956f404fcec4e01 by uday
[InstCombine] Deduce attributes for aligned_alloc in InstCombine

Make InstCombine aware of the aligned_alloc library function.

Signed-off-by: Uday Bondhugula <uday@polymagelabs.com>

Depends on D76970.

Differential Revision: https://reviews.llvm.org/D76971
The file was modifiedllvm/test/Transforms/InstCombine/deref-alloc-fns.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/malloc-free-delete.ll
Commit c726c920e04046da29e403d55aa9c0e466b13959 by ulrich.weigand
[SystemZ] Allow %r0 in address context for AsmParser

Registers used in any address (as well as in a few other contexts)
have special semantics when a "zero" register is used, which is
why the back-end defines extra register classes ADDR32, ADDR64 etc
to be used to prevent the register allocator from using %r0 there.

However, when writing assembler code "by hand", you sometimes need
to trigger that special semantics.  However, currently the AsmParser
will reject %r0 in those places.  In some cases it may be possible
to write that instruction differently - but in others it is currently
not possible at all.

This check in AsmParser simply seems overly strict, so this patch
just removes the check completely.  This brings the behaviour of
AsmParser in line with the GNU assembler as well.

Bugzilla: https://bugs.llvm.org/show_bug.cgi?id=45092
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
The file was modifiedllvm/test/MC/SystemZ/insn-bad-z13.s
The file was modifiedllvm/test/MC/SystemZ/insn-good.s
The file was modifiedllvm/test/MC/SystemZ/tokens.s
The file was modifiedllvm/test/MC/SystemZ/insn-bad-z14.s
The file was modifiedllvm/test/MC/SystemZ/insn-bad-zEC12.s
The file was modifiedllvm/test/MC/SystemZ/regs-bad.s
The file was modifiedllvm/test/MC/SystemZ/insn-bad.s
The file was modifiedllvm/test/MC/SystemZ/insn-bad-z196.s
Commit 75cfd382201978615cca1c91c2d9f14f8b7af56d by ditaliano
Revert "[lldb/Reproducers] Always collect the whole dSYM in the reproducer"

This reverts commit 38ddb49e5242920e44a982cff7bbe2e86bd23a69 as it
breaks the macOS bots.
The file was modifiedlldb/source/Utility/Reproducer.cpp
The file was modifiedlldb/include/lldb/Utility/Reproducer.h
The file was modifiedlldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
The file was removedlldb/test/Shell/Reproducer/TestDSYM.test
Commit 89fe36d08a9ad01f7f5a4a704a6f7382e26b32f9 by Louis Dionne
[libc++] Make sure substitutions are expanded inside FILE_DEPENDENCIES
The file was modifiedlibcxx/test/libcxx/selftest/test.file_dependencies.sh.cpp
The file was modifiedlibcxx/utils/libcxx/test/format.py
Commit 5f9bf3f656146d1987b471f3c1aaf2f13e8c385a by uday
[MLIR][NFC] Move test/Transforms/lower-affine.mlir -> test/Conversion

Move lower-affine.mlir from test/Transforms to
test/Conversion/AffineToStandard/. Other related NFC.

Signed-off-by: Uday Bondhugula <uday@polymagelabs.com>

Differential Revision: https://reviews.llvm.org/D77008
The file was modifiedmlir/docs/Passes.md
The file was addedmlir/test/Conversion/AffineToStandard/lower-affine.mlir
The file was modifiedmlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp
The file was removedmlir/test/Transforms/lower-affine.mlir
Commit 7b06cb4523083206ad79776c80a564cd26bd8326 by Adrian Prantl
Add an opque payload field to lldb::Type (NFC).

Differential Revision: https://reviews.llvm.org/D75562
The file was modifiedlldb/source/Symbol/Type.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
The file was modifiedlldb/include/lldb/Symbol/Type.h
Commit 38aebe5c04ab4cb3695dc1bcc60b9a7b55215aff by Louis Dionne
[libc++] Move a bunch of tests from .sh.cpp to .pass.cpp

Using the ADDITIONAL_COMPILE_FLAGS annotation, it is possible to move
these tests from .sh.cpp to .pass.cpp, making them suitable for running
on remote hosts more easily.
The file was removedlibcxx/test/libcxx/experimental/language.support/support.coroutines/version.sh.cpp
The file was addedlibcxx/test/libcxx/experimental/language.support/support.coroutines/version.pass.cpp
The file was addedlibcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.pass.cpp
The file was removedlibcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.sh.cpp
The file was addedlibcxx/test/libcxx/numerics/c.math/fdelayed-template-parsing.pass.cpp
The file was removedlibcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array_fsizeddeallocation.sh.cpp
The file was removedlibcxx/test/libcxx/numerics/c.math/fdelayed-template-parsing.sh.cpp
The file was removedlibcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete_fsizeddeallocation.sh.cpp
The file was addedlibcxx/test/libcxx/containers/sequences/vector/exception_safety_exceptions_disabled.pass.cpp
The file was removedlibcxx/test/libcxx/input.output/filesystems/convert_file_time.sh.cpp
The file was addedlibcxx/test/libcxx/input.output/filesystems/convert_file_time.pass.cpp
The file was removedlibcxx/test/libcxx/containers/sequences/vector/exception_safety_exceptions_disabled.sh.cpp
The file was addedlibcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array_fsizeddeallocation.pass.cpp
The file was addedlibcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete_fsizeddeallocation.pass.cpp
The file was addedlibcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp
The file was removedlibcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.sh.cpp
Commit d1b412ae389e4e30706c326ddec192ffb2e272cf by jbcoe
[clang-format] Correct line breaks in C# generic type constraints

Reviewers: krasimir

Reviewed By: krasimir

Subscribers: cfe-commits

Tags: #clang-format, #clang

Differential Revision: https://reviews.llvm.org/D77064
The file was modifiedclang/lib/Format/ContinuationIndenter.cpp
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
Commit 128c0d037d32c929c58d63fd7f324038430f73ba by walter erquinigo
[intel-pt] Fix existing support in LLDB

Summary:
//reviews.llvm.org/D33035 added in 2017 basic support for intel-pt. I
plan to improve it and use it to support reverse debugging.

I fixed a couple of issues and now this plugin works again:
1. pythonlib needed to be linked against it for the SB framework.
Linking was failing because of this
2. the decoding functionality was broken because it lacked handling for
instruction events. It seems old versions of libipt, the actual decoding
library, didn't require these, but modern version require it (you can
read more here
https://github.com/intel/libipt/blob/master/doc/howto_libipt.md). These
events signal overflows of the internal PT buffer in the CPU,
enable/disable events of tracing, async cpu events, interrupts, etc.

I ended up refactoring a little bit the code to reduce code duplication.

In another diff I'll implement some basic tests.

This is a simple execution of the library:

(lldb) target create "/data/users/wallace/rr-project/a.out"
Current executable set to '/data/users/wallace/rr-project/a.out' (x86_64).
(lldb) plugin load liblldbIntelFeatures.so
(lldb) b main
Breakpoint 1: where = a.out`main + 8 at test.cpp:10, address = 0x00000000004007fa
(lldb) b test.cpp:14
Breakpoint 2: where = a.out`main + 50 at test.cpp:14, address = 0x0000000000400824
(lldb) r
Process 902754 stopped
* thread #1, name = 'a.out', stop reason = breakpoint 1.1
    frame #0: 0x00000000004007fa a.out`main at test.cpp:10
   7    }
   8
   9    int main() {
-> 10     int z = 0;
   11     for(int i = 0; i < 10000; i++)
   12       z += fun(z);
   13

Process 902754 launched: '/data/users/wallace/rr-project/a.out' (x86_64)
(lldb) processor-trace start all
(lldb) c
Process 902754 resuming
Process 902754 stopped
* thread #1, name = 'a.out', stop reason = breakpoint 2.1
    frame #0: 0x0000000000400824 a.out`main at test.cpp:14
   11     for(int i = 0; i < 10000; i++)
   12       z += fun(z);
   13
-> 14     cout << z<< endl;
   15     return 0;
   16   }

(lldb) processor-trace show-instr-log
thread #1: tid=902754
    0x7ffff72299b9 <+9>: addq   $0x8, %rsp
    0x7ffff72299bd <+13>: retq
    0x4007ed <+16>: addl   $0x1, %eax
    0x4007f0 <+19>: leave
    0x4007f1 <+20>: retq
    0x400814 <+34>: addl   %eax, -0x4(%rbp)
    0x400817 <+37>: addl   $0x1, -0x8(%rbp)
    0x40081b <+41>: cmpl   $0x270f, -0x8(%rbp)       ; imm = 0x270F
    0x400822 <+48>: jle    0x40080a                  ; <+24> at test.cpp:12
    0x400822 <+48>: jle    0x40080a                  ; <+24> at test.cpp:12
```

Subscribers: mgorny, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D76872
The file was modifiedlldb/tools/intel-features/intel-pt/Decoder.h
The file was modifiedlldb/tools/intel-features/intel-pt/Decoder.cpp
The file was modifiedlldb/tools/intel-features/CMakeLists.txt
Commit 28518d9ae39ff5c6044e230d58b6ae28b0252cae by anna
[InlineFunction] Handle return attributes on call within inlined body

Consider a callee function that has a call (C) within it which feeds
into the return.  When we inline that callee into a callsite that has
return attributes, we can backward propagate those attributes to the
call (C) within that inlined callee body.

This is safe to do so only if we can guarantee transfer of execution to
successor in the window of instructions between return value (i.e. the
call C) and the return instruction.

See added test cases.

Reviewed-By: reames, jdoerfert

Differential Revision: https://reviews.llvm.org/D76140
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
The file was modifiedclang/test/CodeGen/movbe-builtins.c
The file was modifiedclang/test/CodeGen/rot-intrinsics.c
The file was modifiedclang/test/CodeGen/builtins-systemz-zvector2.c
The file was modifiedclang/test/CodeGen/builtins-systemz-zvector.c
The file was addedllvm/test/Transforms/Inline/ret_attr_update.ll
Commit 08682dcc8631bcbfd68834a7dc352499a0a06af0 by Stanislav.Mekhanoshin
[AMDGPU] Define 16 bit VGPR subregs

We have loads preserving low and high 16 bits of their
destinations. However, we always use a whole 32 bit register
for these. The same happens with 16 bit stores, we have to
use full 32 bit register so if high bits are clobbered the
register needs to be copied. One example of such code is
added to the load-hi16.ll.

The proper solution to the problem is to define 16 bit subregs
and use them in the operations which do not read another half
of a VGPR or preserve it if the VGPR is written.

This patch simply defines subregisters and register classes.
At the moment there should be no difference in code generation.
A lot more work is needed to actually use these new register
classes. Therefore, there are no new tests at this time.

Register weight calculation has changed with new subregs so
appropriate changes were made to keep all calculations just
as they are now, especially calculations of register pressure.

Differential Revision: https://reviews.llvm.org/D74873
The file was modifiedllvm/test/CodeGen/AMDGPU/ipra-regmask.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/postra-machine-sink.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/load-hi16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/postra-bundle-memops.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.td
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-insert-vector-elt.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBanks.td
The file was modifiedllvm/test/CodeGen/AMDGPU/at-least-one-def-value-assert.mir
Commit 6d20937c29a1a1d67fc5e8caf8538b4aa5614505 by carrot
[CodeGenPrepare] Delete intrinsic call to llvm.assume to enable more tailcall

The attached test case is simplified from tcmalloc. Both function calls should be optimized as tailcall. But llvm can only optimize the first call. The second call can't be optimized because function dupRetToEnableTailCallOpts failed to duplicate ret into block case2.

There 2 problems blocked the duplication:

  1 Intrinsic call llvm.assume is not handled by dupRetToEnableTailCallOpts.
  2 The control flow is more complex than expected, dupRetToEnableTailCallOpts can only duplicate ret into its predecessor, but here we have an intermediate block between call and ret.

The solutions:

  1 Since CodeGenPrepare is already at the end of LLVM IR phase, we can simply delete the intrinsic call to llvm.assume.
  2 A general solution to the complex control flow is hard, but for this case, after exit2 is duplicated into case1, exit2 is the only successor of exit1 and exit1 is the only predecessor of exit2, so they can be combined through eliminateFallThrough. But this function is called too late, there is no more dupRetToEnableTailCallOpts after it. We can add an earlier call to eliminateFallThrough to solve it.

Differential Revision: https://reviews.llvm.org/D76539
The file was modifiedllvm/test/Transforms/CodeGenPrepare/X86/optimizeSelect-DT.ll
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/test/Transforms/CodeGenPrepare/X86/extend-sink-hoist.ll
The file was addedllvm/test/Transforms/CodeGenPrepare/X86/tailcall-assume-xbb.ll
Commit 03f43b3aca363e16c45d8733400fd0083b1af4d8 by smeenai
[lld] Initial commit for new Mach-O backend

Summary:
This is the first commit for the new Mach-O backend, designed to roughly
follow the architecture of the existing ELF and COFF backends, and
building off work that @ruiu and @pcc did in a branch a while back. Note
that this is a very stripped-down commit with the bare minimum of
functionality for ease of review. We'll be following up with more diffs
soon.

Currently, we're able to generate a simple "Hello World!" executable
that runs on OS X Catalina (and possibly on earlier OS X versions; I
haven't tested them). (This executable can be obtained by compiling
`test/MachO/relocations.s`.) We're mocking out a few load commands to
achieve this -- for example, we can't load dynamic libraries, but
Catalina requires binaries to be linked against `dyld`, so we hardcode
the emission of a `LC_LOAD_DYLIB` command. Other mocked out load
commands include LC_SYMTAB and LC_DYSYMTAB.

Differential Revision: https://reviews.llvm.org/D75382
The file was addedlld/MachO/Symbols.cpp
The file was addedlld/test/MachO/section-headers.s
The file was addedlld/test/MachO/arch.s
The file was addedlld/MachO/Writer.h
The file was addedlld/MachO/Driver.h
The file was addedlld/test/MachO/no-such-file.s
The file was addedlld/MachO/Arch/X86_64.cpp
The file was addedlld/test/MachO/silent-ignore.test
The file was addedlld/test/MachO/relocations.s
The file was addedlld/MachO/InputSection.h
The file was addedlld/MachO/InputSection.cpp
The file was addedlld/MachO/OutputSegment.h
The file was modifiedlld/CMakeLists.txt
The file was addedlld/MachO/Symbols.h
The file was addedlld/MachO/OutputSegment.cpp
The file was addedlld/MachO/Driver.cpp
The file was addedlld/test/MachO/entry-symbol.s
The file was addedlld/MachO/CMakeLists.txt
The file was addedlld/MachO/Target.h
The file was addedlld/MachO/Target.cpp
The file was modifiedlld/tools/lld/lld.cpp
The file was addedlld/MachO/SymbolTable.cpp
The file was addedlld/test/MachO/alignment-too-large.yaml
The file was addedlld/MachO/InputFiles.cpp
The file was addedlld/MachO/InputFiles.h
The file was modifiedlld/tools/lld/CMakeLists.txt
The file was addedlld/test/MachO/duplicate-symbol.s
The file was modifiedlld/include/lld/Common/Driver.h
The file was addedlld/test/MachO/load-commands.s
The file was addedlld/MachO/Config.h
The file was addedlld/MachO/Options.td
The file was addedlld/test/MachO/segments.s
The file was addedlld/test/MachO/invalid-executable.s
The file was addedlld/MachO/SymbolTable.h
The file was addedlld/MachO/Writer.cpp
The file was addedlld/test/MachO/text-segment.s
Commit e8f13f4f62f52067cadb55f3c746ccf9d26ee2ce by benny.kra
Replace std::string::find == 0 with StringRef::startswith

This is both more readable and faster. Found by clang-tidy's
abseil-string-find-startswith.
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Symbol/Variable.cpp
The file was modifiedlldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.cpp
The file was modifiedclang/unittests/Analysis/CloneDetectionTest.cpp
The file was modifiedlldb/source/Core/Module.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Commit dacf8d3562b6c3a46f61b325f8ed20b6dac69cde by efriedma
[AArch64][SVE] Add support for fcmp.

This also requires support for boolean "not", so I added boolean logic
while I was there.

Differential Revision: https://reviews.llvm.org/D76901
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was modifiedllvm/test/CodeGen/AArch64/sve-int-log.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
The file was addedllvm/test/CodeGen/AArch64/sve-fcmp.ll
Commit 7f1ea924c695f3293ff48f662cd1ec5f44bc1ab6 by Amara Emerson
Add a new -fglobal-isel option and make -fexperimental-isel an alias for it.

Since GlobalISel is maturing and is already on at -O0 for AArch64, it's not
completely "experimental". Create a more appropriate driver flag and make
the older option an alias for it.

Differential Revision: https://reviews.llvm.org/D77103
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/global-isel.c
Commit 45b6364e8d74f6038e94b760f017e03740acf725 by maskray
[gn build] Port 03f43b3aca36
The file was modifiedllvm/utils/gn/secondary/lld/tools/lld/BUILD.gn
The file was addedllvm/utils/gn/secondary/lld/MachO/BUILD.gn
Commit d26435c1703f1d7f13e8bf78ee390cb7e2490586 by antiagainst
[mlir][spirv] Change op doc description autogen separator

This commit changes the separator line for dividing auto-generated
docs from spec and manually added appendix from "### Custom assembly
form" to "<!-- End of AutoGen section -->". This is in preparation
to use the declarative assembly form in MLIR core. We will replace
more and more manually written assembly forms to be autogenerated.

Differential Revision: https://reviews.llvm.org/D77158
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVCompositeOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVGroupOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVArithmeticOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVAtomicOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVGLSLOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVBitOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVLogicalOps.td
The file was modifiedmlir/utils/spirv/gen_spirv_dialect.py
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVControlFlowOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVNonUniformOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVCastOps.td
Commit 11ccad6e879573f75dc8b231351ee23a17e0900f by richard
[docs] Make llvm-addr2line documentation more explicit about which
behavior is llvm-addr2line's and which is llvm-symbolizer's.
The file was modifiedllvm/docs/CommandGuide/llvm-addr2line.rst
Commit 015c6cd47557272bb8b92fbf9f5bd2bcb8fa8989 by Jonas Devlieghere
Re-land "[lldb/Reproducers] Always collect the whole dSYM in the reproducer"

The FileCollector in LLDB collects every files that's used during a
debug session when capture is enabled. This ensures that the reproducer
only contains the files necessary to reproduce. This approach is not a
good fit for the dSYM bundle, which is a directory on disk, but should
be treated as a single unit.

On macOS LLDB have automatically find the matching dSYM for a binary by
its UUID. Having a incomplete dSYM in a reproducer can break debugging
even when reproducers are disabled.

This patch adds a was to specify a directory of interest to the
reproducers. It is called from SymbolVendorMacOSX with the path of the
dSYMs used by LLDB.

Differential revision: https://reviews.llvm.org/D76672
The file was addedlldb/test/Shell/Reproducer/TestDSYM.test
The file was modifiedlldb/source/Utility/Reproducer.cpp
The file was modifiedlldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
The file was modifiedlldb/include/lldb/Utility/Reproducer.h
Commit 07e462526d0cbae40b320e1a4307ce11e197fb0a by Louis Dionne
[libc++] Allow running .sh.cpp tests with SSHExecutors

This commit adds a script that can be used as an %{exec} substitution
such that .sh.cpp tests can now run on remote hosts when using the
SSHExecutor.
The file was modifiedlibcxx/test/libcxx/selftest/exec.sh.cpp
The file was addedlibcxx/utils/ssh.py
The file was modifiedlibcxx/test/std/containers/associative/map/PR28469_undefined_behavior_segfault.sh.cpp
The file was modifiedlibcxx/test/libcxx/double_include.sh.cpp
The file was modifiedlibcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
The file was modifiedlibcxx/test/libcxx/selftest/test.sh.cpp
The file was modifiedlibcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp
The file was modifiedlibcxx/utils/libcxx/test/format.py
The file was modifiedlibcxx/test/libcxx/strings/basic.string/PR42676.sh.cpp
The file was modifiedlibcxx/utils/libcxx/test/config.py
Commit f3d4166368b0449baea1e7d8e043d0fe76930179 by nikita.ppv
[InstCombine] Report change in non zero phi transform

We need to inform InstCombine (and transitively the pass manager)
that we changed an instruction.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
Commit 87357808b807a9270153702975872cab1a569db6 by nikita.ppv
[InstCombine] Use replaceOperand() in non zero phi transform

To make sure the old operand gets DCEd.

NFC apart from worklist order changes.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
Commit 19df7fa892d42f6abd503a9dd6705e130dadf1a7 by nikita.ppv
[InstCombine] Erase old alloca in cast of alloca transform

As we don't return the replaceInstUsesWith() result, we are
responsible for erasing the instruction.

NFC apart from worklist order.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Commit c538c57d6dae548e644449352d9350d58be9a4af by nikita.ppv
[InstCombine] Use replaceOperand() in descaling

To make sure the old operand gets DCEd.

NFC apart from worklist order.
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit 1ee6ec2bf370fbd1d93f34c8b56741a9d3f22ed2 by efriedma
Remove "mask" operand from shufflevector.

Instead, represent the mask as out-of-line data in the instruction. This
should be more efficient in the places that currently use
getShuffleVector(), and paves the way for further changes to add new
shuffles for scalable vectors.

This doesn't change the syntax in textual IR. And I don't currently plan
to change the bitcode encoding in this patch, although we'll probably
need to do something once we extend shufflevector for scalable types.

I expect that once this is finished, we can then replace the raw "mask"
with something more appropriate for scalable vectors.  Not sure exactly
what this looks like at the moment, but there are a few different ways
we could handle it.  Maybe we could try to describe specific shuffles.
Or maybe we could define it in terms of a function to convert a fixed-length
array into an appropriate scalable vector, using a "step", or something
like that.

Differential Revision: https://reviews.llvm.org/D72467
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/lib/Target/X86/X86PartialReduction.cpp
The file was modifiedllvm/lib/Bitcode/Writer/ValueEnumerator.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/lib/Bitcode/Writer/BitcodeWriter.cpp
The file was modifiedllvm/lib/IR/ConstantFold.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/include/llvm/ADT/ArrayRef.h
The file was modifiedllvm/include/llvm/Analysis/TargetFolder.h
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/IR/Constants.cpp
The file was modifiedllvm/lib/IR/ConstantsContext.h
The file was modifiedllvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
The file was modifiedllvm/include/llvm/Analysis/ConstantFolding.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was modifiedllvm/include/llvm/IR/ConstantFolder.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/IR/Instruction.cpp
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
The file was modifiedllvm/lib/ExecutionEngine/Interpreter/Execution.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/lib/IR/AsmWriter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/lib/Analysis/VectorUtils.cpp
The file was modifiedllvm/include/llvm/IR/NoFolder.h
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedllvm/lib/Target/ARM/MVETailPredication.cpp
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
The file was modifiedllvm/include/llvm/Analysis/InstructionSimplify.h
The file was modifiedllvm/unittests/IR/PatternMatch.cpp
The file was modifiedllvm/include/llvm/IR/Constants.h
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVNSink.cpp
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
The file was modifiedllvm/include/llvm/IR/PatternMatch.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/lib/IR/Core.cpp
The file was modifiedllvm/include/llvm/IR/IRBuilderFolder.h
Commit b7fe795e5b3789b50f41377195a5965f41929b53 by nikita.ppv
[InstCombine] Use replaceOperand() in some select transforms

To make sure the old operand is DCEd.

NFC apart from worklist order.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit 58a05675daf46b2e9c336dd13ae6ac6dbfdc2c72 by anna
Revert "[InlineFunction] Handle return attributes on call within inlined body"

This reverts commit 28518d9ae39ff5c6044e230d58b6ae28b0252cae.
There is a failure in MsgPackReader.cpp when built with clang. It
complains about "signext and zeroext" are incompatible. Investigating
offline if it is infact a UB in the MsgPackReader code.
The file was modifiedclang/test/CodeGen/rot-intrinsics.c
The file was removedllvm/test/Transforms/Inline/ret_attr_update.ll
The file was modifiedclang/test/CodeGen/builtins-systemz-zvector.c
The file was modifiedclang/test/CodeGen/movbe-builtins.c
The file was modifiedclang/test/CodeGen/builtins-systemz-zvector2.c
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
Commit 9a6a696817bd6322d62db21aa17fe395af41f8ae by jaskiewiczs
[cmake] Link libc++ tests against static libc++/libc++abi in CrossWinToARMLinux.cmake

Summary: Now that D72687 has landed, we can enable this setting in our cache file.

Reviewers: vvereschaka

Reviewed By: vvereschaka

Subscribers: mgorny, kristof.beyls, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D76774
The file was modifiedclang/cmake/caches/CrossWinToARMLinux.cmake
Commit 9dcb16bc9aff676f45b530398dc75bd52526b0b5 by richard
Switch this function to the LLVM variable naming convention, to match the rest of the file.
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
Commit cc3fddb411d55d4d0902a772a9f3db11fc4f002e by blangmuir
[pch] Honour -fallow-pch-with-compiler-errors for overall compilation status

Previously we would emit a PCH with errors, but fail the overall
compilation. If run using the driver, that would result in removing the
just-produced PCH. Instead, we should have the compilation result match
whether we were able to emit the PCH.

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

rdar://61110294
The file was modifiedclang/test/Index/pch-with-errors.c
The file was modifiedclang/lib/Serialization/GeneratePCH.cpp
Commit e1fb9d53727f379be7930e8d8bb24c3c7da2f12a by uday
[MLIR][NFC] modernize affine.for unroll test pass

The walk code here was written before any of the support was
available in IR/. Replace/cleanup.

Differential Revision: https://reviews.llvm.org/D77166
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
Commit 7e4e9f4a2fcb096778fb81fc96da6bb8aa966661 by Stanislav.Mekhanoshin
Fixed windows failure after D74873

Print format LaneBitmask was set as "%016lX" but should be
"%016llX" for 64 bit support on Windows.
The file was modifiedllvm/include/llvm/MC/LaneBitmask.h
Commit 2dee4d44297220655786d3fddd471cdf99fa8e5a by sam.mccall
[clangd] Don't build clangdserver for (most) completion tests. NFC
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FindTargetTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TweakTesting.h
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.h
Commit 1c0dd57cd3e253b2ac7036366ef91e286422c830 by Louis Dionne
[libc++] Use 'export' instead of 'env' to run remote commands

This allows running commands that use shell builtins remotely too, when
'env' would complain that it can't find the program.
The file was modifiedlibcxx/utils/ssh.py
Commit 9b3bf72a0d7918601e8005554592fcb4949a822e by a.bataev
[OPENMP50]Allow use of array shaping expression in a list.

Need to allow arrayshaping expression in a list of expressions, so use
ParseAssignmentExpression() when try to parse the base of the shaping
operation.
The file was modifiedclang/lib/Parse/ParseExpr.cpp
The file was modifiedclang/test/OpenMP/task_ast_print.cpp
Commit 522b4c4b88a5606b0074926e8658e7fede97c230 by efriedma
[AArch64] Fix mismatch in prologue and epilogue for funclets on Windows

The generated code for a funclet can have an add to sp in the epilogue
for which there is no corresponding sub in the prologue.

This patch removes the early return from emitPrologue that was
preventing the sub to sp, and instead conditionalizes the appropriate
parts of the rest of the function.

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

Differential Revision: https://reviews.llvm.org/D77015
The file was addedllvm/test/CodeGen/AArch64/funclet-match-add-sub-stack.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
Commit 494abe139a9aab991582f1b3f3370b99b252944c by efriedma
[AArch64] Change AArch64 Windows EH UnwindHelp object to be a fixed object

The UnwindHelp object is used during exception handling by runtime
code. It must be findable from a fixed offset from FP.

This change allocates the UnwindHelp object as a fixed object (as is
done for x86_64) to ensure that both the generated code and runtime
agree on the location of the object.

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

Differential Revision: https://reviews.llvm.org/D77016
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/wineh-unwindhelp-via-fp.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch-realign.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch-cbz.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch.ll
The file was modifiedllvm/test/CodeGen/AArch64/seh-finally.ll
Commit 478af4479ab65b90a4c7bd6460ff685d8e95d625 by hubert.reinterpretcast
[Object] Update ObjectFile::makeTriple for XCOFF

Summary:
When we encounter an XCOFF file, reflect that in the triple information.
In addition to knowing the object file format, we know that the
associated OS is AIX.

This means that we can expect that there is no output difference in the
processing of an XCOFF32 input file between cases where the triple is
left unspecified by the user and cases where the user specifies
`--triple powerpc-ibm-aix` explicitly.

Reviewers: jhenderson, sfertile, jasonliu, daltenty

Reviewed By: jasonliu

Subscribers: wuzish, nemanjai, hiraditya, MaskRay, rupprecht, steven.zhang, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77025
The file was modifiedllvm/lib/Object/ObjectFile.cpp
The file was modifiedllvm/test/tools/llvm-objdump/XCOFF/disassemble-all.test
The file was modifiedllvm/test/CodeGen/PowerPC/aix-return55.ll
Commit 8f8c4950fead500bf1086f36f21b0b52e93b2b05 by jdenny.ornl
[FileCheck] Add missing %ProtectFileCheckOutput to FileCheck tests

I'm committing this fixup without review because it's an obvious
continuation of D65121 (committed at f471eb8e99b5).
The file was modifiedllvm/test/FileCheck/numeric-expression.txt
The file was modifiedllvm/test/FileCheck/numeric-defines-diagnostics.txt
Commit 00efcd6fffa533e5a4aa5646e678d57df0f9aca8 by Adrian Prantl
Add a Type::Payload typedef. (NFC)

This addresses review feedback from Raphael that I missed before
landing the change that introduced the payload field.
The file was modifiedlldb/include/lldb/Symbol/Type.h
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Commit ec11c5615a7c153a68d098903edebbb92719f5f9 by Adrian Prantl
Replace uint32_t with typedef (NFC)
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Commit c9d65a48af1d7bbfed7e785613cc9d9acf71821b by arsenm2
HIP: Ensure new denormal mode attributes are set

Apparently HIPToolChain does not subclass from AMDGPUToolChain, so
this was not applying the new denormal attributes. I'm not sure why
this doesn't subclass. Just copy the implementation for now.
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.h
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
The file was modifiedclang/lib/Driver/ToolChains/HIP.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/test/Driver/cuda-flush-denormals-to-zero.cu
Commit 4af7560b3751259c4acf63411f42ab5c9989ef26 by maskray
[PPCInstPrinter] Print conditional branches as `bt 2, $target` instead of `bt 2, .+$imm`

Follow-up of D76591.

Reviewed By: #powerpc, sfertile

Differential Revision: https://reviews.llvm.org/D76907
The file was modifiedlld/test/ELF/ppc32-long-thunk.s
The file was modifiedlld/test/ELF/ppc64-reloc-rel.s
The file was modifiedlld/test/ELF/ppc32-call-stub-pic.s
The file was modifiedllvm/test/MC/PowerPC/ppc64-prefix-align.s
The file was modifiedllvm/test/CodeGen/PowerPC/aix-return55.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedlld/test/ELF/ppc64-split-stack-adjust-size-success.s
The file was modifiedlld/test/ELF/ppc64-split-stack-prologue-adjust-success.s
The file was modifiedllvm/test/tools/llvm-objdump/ELF/PowerPC/branch-offset.s
The file was modifiedlld/test/ELF/ppc64-split-stack-adjust-overflow.s
The file was modifiedllvm/test/CodeGen/PowerPC/alignlongjumptest.mir
The file was modifiedlld/test/ELF/ppc32-reloc-rel.s
The file was modifiedllvm/test/tools/llvm-objdump/XCOFF/disassemble-all.test
The file was modifiedllvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
Commit 175e42303bb2a4253c65126666b1ae05b32b0004 by arsenm2
AMDGPU: Make HIPToolChain a subclass of AMDGPUToolChain

This fixes some code duplication. This is also a step towards
consolidating builtin library handling.
The file was modifiedclang/lib/Driver/ToolChains/HIP.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
Commit 0f44a09757f4f45e527e2bb79f15eb16967457a1 by maskray
[ELF][test] Add 'REQUIRES: x86' to threads.s
The file was modifiedlld/test/ELF/threads.s
Commit f9471b001089c744050c7a9cff39ebda2ff69011 by eugenis
Fix MSan false positive due to select folding.

Summary:
Select folding in JumpThreading can create a conditional branch on a
code patch that did not have one in the original program. This is not a
valid transformation in sanitize_memory functions.

Note that JumpThreading does select folding in 3 different places. Two
of them seem safe - they apply to a select instruction in a BB that ends
with an unconditional branch to another BB, which (in turn) ends with a
conditional branch or a switch with the same condition.

Fixes PR45220.

Reviewers: glider, dvyukov, efriedma

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76332
The file was addedllvm/test/Transforms/JumpThreading/select-unfold-msan.ll
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
Commit ee77607ca6ceaf13801bdb98307fd26c78fbc92a by antiagainst
[mlir][spirv] Include SPIR-V op definitions in main SPIR-V doc

Differential Revision: https://reviews.llvm.org/D77174
The file was modifiedmlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
The file was modifiedmlir/docs/Dialects/SPIR-V.md
Commit 09834f976125545c74b8c1161be5204352165368 by jonchesterfield
[libomptarget][nfc] Move non-freestanding headers out of common

Summary:
[libomptarget][nfc] Move non-freestanding headers out of common

Lowers the bar for building deviceRTL.
Drops math.h entirely as it wasn't used and libm is a big dependency.

Reviewers: jdoerfert, ABataev, grokos

Reviewed By: jdoerfert

Subscribers: jvesely, openmp-commits

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D77071
The file was modifiedopenmp/libomptarget/deviceRTLs/common/omptarget.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/debug.h
The file was modifiedopenmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/data_sharing.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h
Commit e094dd5adcbdd7f49226d93c3964f99bf5a25ba6 by a.bataev
[OPENMP50]Fix size calculation for array shaping expression in the
codegen.

Need to include the size of the pointee type when trying to calculate
the total size of the array shaping expression.
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/OpenMP/task_codegen.c
The file was modifiedclang/test/OpenMP/depobj_codegen.cpp
The file was modifiedclang/test/OpenMP/task_depend_messages.cpp
Commit 64799fbebddc9877f78c7501b0b986b7afe84d6b by ditaliano
[debugserver/ARM64] Make sure watchpoints hit are attributed correctly.

This didn't happen for arm64 if you have watches for variables
that are contigous in memory.

<rdar://problem/55135006>
The file was addedlldb/test/API/commands/watchpoints/watchpoint_count/main.c
The file was addedlldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp
The file was addedlldb/test/API/commands/watchpoints/watchpoint_count/Makefile
Commit a3fab31acd6b99dd70334df7fbfae22b914e3214 by julian.lettner
[lit] Refine adoption of argparse --version action

The real work for this was already done by serge-sans-paille [1].
Thanks for this!

[1] 1d4849379f71a0f5d73202a291c0b709f7cafbc5
The file was modifiedllvm/utils/lit/tests/usage.py
The file was modifiedllvm/utils/lit/lit/cl_arguments.py
The file was modifiedllvm/utils/lit/lit/main.py
The file was removedllvm/utils/lit/tests/version.py
Commit c2aa543237843fa7b7c0191b6685062b3512f245 by a.bataev
[OPENMP50]Codegen for array shaping expression in map clauses.

Added codegen support for array shaping operations in map/to/from
clauses.
The file was modifiedclang/test/OpenMP/target_data_ast_print.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/target_update_ast_print.cpp
The file was modifiedclang/test/OpenMP/target_map_codegen.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/target_map_messages.cpp
The file was modifiedclang/test/OpenMP/target_update_codegen.cpp
Commit 39ada4688936d165adf1a3c22b250034bab8f8a3 by a.bataev
[OPENMP][DOCS]Mark array shaping as done, NFC.
The file was modifiedclang/docs/OpenMPSupport.rst
Commit c322d328aa331639f647711aee44c5dddfadd337 by blangmuir
Forward WrapperFrontendAction::shouldEraseOutputFiles()

Per the documentation, this class is supposed to forward every virtual
method, but we had missed on (shouldEraseOutputFiles). This fixes using
a wrapped frontend action over the PCH generator when using
-fallow-pch-with-compiler-errors. I do not think any upstream wrapper
actions can test this.

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

rdar://61110294
The file was modifiedclang/include/clang/Frontend/FrontendAction.h
The file was modifiedclang/lib/Frontend/FrontendAction.cpp
Commit ba4764c2cc14b0b495af539a913de10cf8268420 by efriedma
Fix leak in GVNSink introduced in D72467.
The file was modifiedllvm/lib/Transforms/Scalar/GVNSink.cpp
Commit 7ea64ae3afe4ad98e6753b9f74b30019113f719c by thakis
[analyzer] Use IgnoreImpCasts() instead of reimplementing it.

No intended behavior change.

Differential Revision: https://reviews.llvm.org/D77022
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
Commit a3eb3d3d92d037fe3c9deaad87f6fc42fe9ea766 by maskray
[Support] Delete ioctl TIOCGWINSZ

D61326 essentially disabled `ioctl(FileID, TIOCGWINSZ, &ws)`.  Nobody
has complained for one year. So let's just delete the code.
The file was modifiedllvm/lib/Support/Unix/Process.inc
Commit 43e576593e78b1a9b7d22abdc2f6d339a116fa6b by arsenm2
AMDGPU/GlobalISel: Fix insert point when lowering G_FMAD
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-udiv.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-urem.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s16.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s32.mir
Commit 855e738be250fe9dea211082a4acf668ddb4aca1 by grosul
[VectorOps] Implement a simple folder for identity vector.transpose operations.

Differential Revision: https://reviews.llvm.org/D77088
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
The file was modifiedmlir/test/Dialect/Vector/canonicalize.mlir
Commit 4805901930f27f80d3b97ccd88e4f5240b784abd by maskray
[Driver] Don't pass -fmessage-length=0 to CC1

-fmessage-length=0 is common (unless the environment variable COLUMNS
is set and exported. This simplifies a common CC1 command line.
The file was modifiedclang/test/Frontend/source-col-map.c
The file was modifiedclang/test/Misc/unprintable.c
The file was modifiedclang/include/clang/Driver/CC1Options.td
The file was modifiedclang/test/Misc/wrong-encoding2.c
The file was modifiedclang/test/Driver/rewrite-legacy-objc.m
The file was modifiedclang/test/Driver/rewrite-objc.m
The file was modifiedclang/test/Misc/message-length.c
The file was modifiedclang/test/Misc/unnecessary-elipses.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was addedclang/test/Driver/fmessage-length.c
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/Misc/diag-line-wrapping.cpp
Commit f93aed66f22f230213a99205f8bcec975c45d8ba by rtrieu
Fix diagnostics where _Atomic can't be applied

adb290d97482aa9311ee4b4b5917a0f2ece55b30 added a new case to
err_atomic_specifier_bad_type.  The diagnostic has two %select's
controlled by the same argument, but only the first was updated to have
the new case.  Add the extra case for the second %select and add a
test case that exercises the last case.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/SemaCXX/atomic-type.cpp
Commit 3341dc7339969d3cb1bff30b49d866db041d689b by maskray
[Driver] Don't pass -fobjc-rumtime= for non-ObjC input
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/darwin-objc-options.m
The file was modifiedclang/lib/Driver/ToolChains/Clang.h
Commit 9180c14fe4d7f9d6f65da8bc593cd61796fdc50a by t-kawashima
Fix simultaneous .gcda creation

The intent of the `llvm_gcda_start_file` function is that only
one process create the .gcda file and initialize it to be updated
by other processes later.

Before this change, if multiple processes are started simultaneously,
some of them may initialize the file because both the first and
second `open` calls may succeed in a race condition and `new_file`
becomes 1 in those processes. This leads incorrect coverage counter
values. This often happens in MPI (Message Passing Interface) programs.
The test program added in this change is a simple reproducer.

This change ensures only one process creates/initializes the file by
using the `O_EXCL` flag.

Differential Revision: https://reviews.llvm.org/D76206
The file was addedcompiler-rt/test/profile/Inputs/instrprof-gcov-parallel.target.c
The file was addedcompiler-rt/test/profile/Posix/instrprof-gcov-parallel.test
The file was modifiedcompiler-rt/lib/profile/GCDAProfiling.c
The file was addedcompiler-rt/test/profile/Inputs/instrprof-gcov-parallel.driver.c
Commit d0efd7bfcf689c2a72664265e59dd7a3e1a52762 by shengchen.kan
[X86][MC] Disable Prefix padding after hardcode/prefix

Reviewers: reames, MaskRay, craig.topper, LuoYuanke, jyknight, eli.friedman

Reviewed By: craig.topper

Subscribers: hiraditya, llvm-commits, annita.zhang

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76475
The file was modifiedllvm/include/llvm/MC/MCFragment.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
The file was addedllvm/test/MC/X86/align-via-padding-corner.s
Commit 8eb40e41f6ec99985a292e342ec303a0bd6f5f41 by lkail
[PowerPC] Don't generate ST_VSR_SCAL_INT if power8-vector is disabled

Summary:
In https://bugs.llvm.org/show_bug.cgi?id=45297, it fails selecting
instructions for `PPCISD::ST_VSR_SCAL_INT`. The reason it generate the
`PPCISD::ST_VSR_SCAL_INT` with `-power8-vector` in IR is PPC's
combiner checks `hasP8Altivec` rather than `hasP8Vector`. This patch
should resolve PR45297.

Differential Revision: https://reviews.llvm.org/D76773
The file was modifiedllvm/test/CodeGen/PowerPC/pr45297.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit af0cd9073c3de5655fe3078b195d34c3e6440852 by shiva0217
[RISCV] Split RISCVISelDAGToDAG.cpp to RISCVISelDAGToDAG.h and RISCVISelDAGToDAG.cpp

For the downstream RISCV maintenance, it would be easier to inherent
RISCVISelDAGToDAG by including header and only override the method that needs
to be customized for the provider non-standard ISA extension without touching
RISCVISelDAGToDAG.cpp which may cause conflict when upgrading the downstream
LLVM version.

Differential Revision: https://reviews.llvm.org/D77117
The file was addedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Commit bb3111cbaf7b181bcda94415456a69b2a6b767ad by ianlevesque
[clang][xray] Add xray attributes to functions without decls too

Summary: This allows instrumenting things like global initializers

Reviewers: dberris, MaskRay, smeenai

Subscribers: cfe-commits, johnislarry

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77191
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was addedclang/test/CodeGen/xray-global-init.cpp
Commit 69ddee1d2aadaa0b9ac4549f366d1bf5701a65f0 by hanchung
[mlir][Linalg] Introduce linalg.pooling_min/max/sum op.

Summary:
Performs an N-D pooling operation similarly to the description in the TF
documentation:
https://www.tensorflow.org/api_docs/python/tf/nn/pool

Different from the description, this operation doesn't perform on batch and
channel. It only takes tensors of rank `N`.

```
  output[x[0], ..., x[N-1]] =
    REDUCE_{z[0], ..., z[N-1]}
      input[
            x[0] * strides[0] - pad_before[0] + dilation_rate[0]*z[0],
            ...
            x[N-1]*strides[N-1] - pad_before[N-1] + dilation_rate[N-1]*z[N-1]
            ],
```

The required optional arguments are:
  - strides: an i64 array specifying the stride (i.e. step) for window
    loops.
  - dilations: an i64 array specifying the filter upsampling/input
    downsampling rate
  - padding: an i64 array of pairs (low, high) specifying the number of
    elements to pad along a dimension.

If strides or dilations attributes are missing then the default value is
one for each of the input dimensions. Similarly, padding values are zero
for both low and high in each of the dimensions, if not specified.

Differential Revision: https://reviews.llvm.org/D76414
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
The file was modifiedmlir/test/Dialect/Linalg/loops.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
The file was modifiedmlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h
The file was modifiedmlir/test/Dialect/Linalg/invalid.mlir
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit 6dd696ae4fa1b1564e76e5531c268724d2c8b98f by hanchung
[mlir][Linalg] Extend fusion to support WAW atm on buffers.

Summary:
The RAW fusion happens only if the produecer block dominates the consumer block.
The WAW pattern also works with the precondition. I.e., if a producer can
dominate the consumer, they can fairly fuse together.

Since they are all tilable, we can think the pattern like this way:

Input:
```
linalg_op1 view

tile_loop
  subview_2
  linalg_op2 subview_2
```

Tile the first Linalg op as same as the second Linalg.
```
tile_loop
  subview_1
  linalg_op1 subview_1

tile_loop
  subview_2
  liangl_op2 subview_2
```

Since the first Linalg op is tilable in the same way and the computation are
independently, it's fair to fuse it with the second Linalg op.
```
tile_loop
  subview_1
  linalg_op1 subview_1
  linalg_op2 subview_2
```

In short, this patch includes:
- Handling both RAW and WAW pattern.
- Adding a interface method to get input and output buffers.
- Exposing a method to get a StringRef of a dependency type.
- Fixing existing WAW tests and add one more use case: initialize the buffer
  before conv op.

Differential Revision: https://reviews.llvm.org/D76897
The file was modifiedmlir/include/mlir/Dialect/Linalg/Analysis/DependenceAnalysis.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
The file was modifiedmlir/test/Dialect/Linalg/fusion.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgTraits.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Analysis/DependenceAnalysis.cpp
Commit b5767010a8ea2f5e2148da5f3e37041185211370 by sbc
[lld][WebAssembly] Early error if output file cannot be created.

This matches the behaviour of the ELF driver.

Also move the `createFiles` to be `checkConfig` and report `no input
files` there.   Again this is mostly to match the structure of the ELF
linker better.

Differential Revision: https://reviews.llvm.org/D76960
The file was modifiedlld/test/wasm/lto/opt-level.ll
The file was modifiedlld/test/wasm/responsefile.test
The file was modifiedlld/wasm/Driver.cpp
The file was addedlld/test/wasm/early-exit-for-bad-paths.s
Commit d0d076fed9681ebf2c2aed22e18cc5b89c5ac940 by maskray
[Driver] Flip the CC1 default of -fdiagnostics-show-option

The driver enables -fdiagnostics-show-option by default, so flip the CC1
default to reduce the lengths of common CC1 command lines.

This change also makes ParseDiagnosticArgs() consistently enable
-fdiagnostics-show-option by default.
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
The file was modifiedclang/test/Sema/parentheses.c
The file was addedclang/test/Driver/fdiagnostics-show-option.c
The file was modifiedclang/test/Driver/rewrite-objc.m
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/CXX/basic/basic.lookup/basic.lookup.classref/p1-cxx11.cpp
The file was modifiedclang/test/CXX/basic/basic.lookup/basic.lookup.classref/p1.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was removedclang/test/Driver/show-option-names.c
The file was modifiedclang/test/Misc/show-diag-options.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/rewrite-legacy-objc.m
The file was modifiedclang/test/Frontend/diagnostics-option-names.c
The file was modifiedclang/test/CXX/dcl.decl/dcl.init/dcl.init.ref/p5-cxx03-extra-copy.cpp
Commit 531b3aff3094dcd2e7ffed7f72ebd932ea386baf by maskray
[Frontend] Replace CC1 option -masm-verbose with -fno-verbose-asm

Most OS✕target enable -fverbose-asm, so it makes sense to flip the CC1
option to reduce common command lines.
The file was modifiedclang/test/CodeGenObjC/debug-info-class-extension.m
The file was modifiedclang/test/Driver/integrated-as.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/CodeGenObjC/debug-info-property4.m
The file was modifiedclang/test/Driver/clang-translation.c
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/CodeGenObjC/property-dbg.m
The file was modifiedclang/test/CodeGenObjC/debug-info-class-extension2.m
The file was modifiedclang/test/CodeGenObjC/debug-info-property5.m
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/test/CodeGenObjC/debug-info-property2.m
The file was modifiedclang/include/clang/Driver/CC1Options.td
The file was modifiedclang/test/CodeGenObjC/debug-info-property.m
The file was modifiedclang/test/CodeGenObjC/debug-info-class-extension3.m
Commit 72439b6b9557d5c58ec7f95a14722ef581906a17 by hokein.wu
[clangd] Add a flag to turn on recovery-expr.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77142
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/Compiler.h
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/ParsedAST.cpp
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/Preamble.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FindTargetTests.cpp
Commit 3c9064ed963ebfc59e4164cbea0b932734785813 by llvm-dev
[X86] Run XOP vector rotation tests with/without AVX2

I noticed this while reviewing D77152 - by only testing bdver4 we weren't checking an XOP target that only had AVX1
The file was modifiedllvm/test/CodeGen/X86/rotate_vec.ll
Commit f9f401dba179038591ad066bfa063cd5f3d5b4d8 by llvm-dev
[X86][AVX] Add additional 256/512-bit test cases for PACKSS/PACKUS shuffle patterns

Also add lowerShuffleWithPACK call to lowerV32I16Shuffle - shuffle combining was catching it but we avoid a lot of temporary shuffle creations if we catch it at lowering first.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-avx512bw.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
Commit 15f34ff2d8976f9211c6112531355ed5e2a92ea0 by Raphael Isemann
[lldb] Allow expect_expr without a running target

Summary:
If we don't have a current frame then we can still run many expressions
as long as we have an active target. With this patch `expect_expr` directly
calls the target's EvaluateExpression function when there is no current frame.

Reviewers: labath

Reviewed By: labath

Subscribers: JDevlieghere

Differential Revision: https://reviews.llvm.org/D77197
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallBuiltinFunction.py
Commit f92563f9077d07f8cc97320e517eb1cdd6b34496 by craig.topper
[VectorUtils][X86] De-templatize scaleShuffleMask and 2 X86 shuffle mask helpers and move their implementation to cpp files

Summary: These were templated due to SelectionDAG using int masks for shuffles and IR using unsigned masks for shuffles. But now that D72467 has landed we have an int mask version of IRBuilder::CreateShuffleVector. So just use int instead of a template

Reviewers: spatel, efriedma, RKSimon

Reviewed By: efriedma

Subscribers: hiraditya, llvm-commits

Differential Revision: https://reviews.llvm.org/D77183
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/Target/X86/X86InterleavedAccess.cpp
The file was modifiedllvm/include/llvm/Analysis/VectorUtils.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/lib/Analysis/VectorUtils.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/unittests/Analysis/VectorUtilsTest.cpp
Commit 2641a19981e71c887bece92074e00d1af3e716c9 by sam.parker
[TTI] Remove getCallCost

getCallCost is only used within the different layers of TTI, with no
backend implementing it so fold the base implementation into
getUserCost. I think this is an NFC.

Differential Revision: https://reviews.llvm.org/D77050
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
Commit 61bab7c31a1b42d4e8be5060877843eb20d94644 by tpopp
[MLIR] Replace OpBuilder(Block) with atBlockBegin and atBlockEnd

Summary:
OpBuilder(Block) is specifically replaced with
OpBuilder::atBlockEnd(Block);

This is to make insertion behavior clear due to there being no one
correct answer for which location in a block the default insertion
point should be.

Differential Revision: https://reviews.llvm.org/D77060
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
The file was modifiedmlir/include/mlir/IR/Builders.h
Commit fa1b602ee6c3bd3dc245cbafe7534be5381e71e7 by Raphael Isemann
[lldb][NFC] Modernize TestCallUserAnonTypedef
The file was modifiedlldb/test/API/commands/expression/anonymous-struct/TestCallUserAnonTypedef.py
The file was modifiedlldb/test/API/commands/expression/anonymous-struct/main.cpp
Commit 57fd86de879cf2b4c7001b6d0a09df60877ce24d by me
[AVR] Fix function pointer address space

Summary:
Function pointers should be created with program address space.
This fixes function pointers on AVR.

Reviewers: dylanmckay

Reviewed By: dylanmckay

Subscribers: Jim, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77119
The file was modifiedclang/lib/CodeGen/CodeGenTypes.cpp
Commit 90b7bbffddc6f754bca8fba0596f2c8052cb52ec by tpopp
[MLIR] Rename collapsePLoops -> collapseParallelLoops

Summary:
Additionally, NFC code cleanups were done.

This is to address additional comments on
https://reviews.llvm.org/D76363

Differential Revision: https://reviews.llvm.org/D77052
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/lib/Transforms/ParallelLoopCollapsing.cpp
The file was modifiedmlir/test/Transforms/single-parallel-loop-collapsing.mlir
The file was modifiedmlir/include/mlir/Transforms/LoopUtils.h
The file was modifiedmlir/test/Transforms/parallel-loop-collapsing.mlir
Commit edb0efca1e73ec5f791d9fe8c28f7c4c85a61c43 by Raphael Isemann
[lldb][NFC] Modernize call-function tests
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallUserDefinedFunction.py
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallStdStringFunction.py
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallStopAndContinue.py
The file was modifiedlldb/test/API/commands/expression/call-function/main.cpp
Commit 48a5bdafba5e51244de627a50574d48c87a5249d by Raphael Isemann
[lldb][NFC] Modernize TestXValuePrinting
The file was modifiedlldb/test/API/commands/expression/xvalue/TestXValuePrinting.py
Commit 862766e01e9000ef1ad760ce602563cb0b4b9de4 by flo
[Verifier] Verify matrix dimensions operands match vector size.

This patch adds checks to the verifier to ensure the dimension arguments
passed to the matrix intrinsics match the vector types for their
arugments/return values.

Reviewers: anemet, Gerolf, andrew.w.kaylor, LuoYuanke

Reviewed By: anemet

Differential Revision: https://reviews.llvm.org/D77129
The file was addedllvm/test/Verifier/matrix-intrinsics.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit 95bcab8272ced7444bc25353784de96ad9375c02 by qiucofan
[DAGCombiner] Require ninf for sqrt recip estimation

Currently, DAG combiner uses (fmul (rsqrt x) x) to estimate square
root of x. However, this method would return NaN if x is +Inf, which
is incorrect.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D76853
The file was modifiedllvm/test/CodeGen/PowerPC/fmf-propagation.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath-mir.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/NVPTX/sqrt-approx.ll
The file was modifiedllvm/test/CodeGen/NVPTX/fast-math.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath.ll
Commit e20cac365025d5af9e39b695bec0dd34f15f9871 by flo
[Matrix] Add new test case with getelementptr constant exprs.

The new test mostly ensures we keep doing the right thing for constant
expressions while lowering matrix instructions.
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/const-gep.ll
Commit e2d6023250b1645214967f58a310b73b22adb31e by dvyukov
tsan: fix Go build on Windows

Fix similar to https://reviews.llvm.org/D77111 but fow Windows.

gotsan.cpp:14071:16: error: missing terminating ' character [-Werror]
case 0b10'010:  // c.lwsp (rd != x0)
         ^

Reported-by: Keith Randall
The file was modifiedcompiler-rt/lib/tsan/go/build.bat
Commit 49af3809423bfe03a21cad22dda0a776c04cc5af by zinenko
Add a method to build affine maps with zero or more results.

Summary:
The commit provides a single method to build affine maps with zero or more
results. Users of mlir::AffineMap previously had to dispatch between two methods
depending on the number of results.

At the same time, this commit fixes the method for building affine map with zero
results that was previously ignoring its `symbolCount` argument.

Differential Revision: https://reviews.llvm.org/D77126
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/include/mlir/IR/AffineMap.h
Commit 08a53dba93389a9859c12e948d8281a839cffbdb by Raphael Isemann
[clang] Minor cleanup in CloneDetectionTest

Follow up to e8f13f4f62f.
The file was modifiedclang/unittests/Analysis/CloneDetectionTest.cpp
Commit d307174e1d9e66a9e5a1e936ac3736343c3fe381 by flo
[ConstantRange] Use APInt::or/APInt::and for single elements.

Currently ConstantRange::binaryAnd/binaryOr results are too pessimistic
for single element constant ranges.

If both operands are single element ranges, we can use APInt's AND and
OR implementations directly.

Note that some other binary operations on constant ranges can cover the
single element cases naturally, but for OR and AND this unfortunately is
not the case.

Reviewers: nikic, spatel, lebedev.ri

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D76446
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/range.ll
The file was modifiedllvm/lib/IR/ConstantRange.cpp
The file was modifiedllvm/test/Transforms/Attributor/range.ll
Commit 038f03cb5ef5d44676cbde06560ed2668f4a7acc by sam.mccall
[clangd] Force delayed-template-parsing off in code completion.

Summary:
It prevents code completion entirely in affected method bodies.
The main reason it's turned on is for compatibility with headers, so we turn it
off for the main file only. This is allowed because it's a compatible langopt.

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

Reviewers: kadircet

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77176
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
Commit 8155e41ac6196f035875229ee4fc5f2e3bfb4855 by riddleriver
[mlir][Pass] Add a tablegen backend for defining Pass information

This will greatly simplify a number of things related to passes:
* Enables generation of pass registration
* Enables generation of boiler plate pass utilities
* Enables generation of pass documentation

This revision focuses on adding the basic structure and adds support for generating the registration for passes in the Transforms/ directory. Future revisions will add more support and move more passes over.

Differential Revision: https://reviews.llvm.org/D76656
The file was modifiedmlir/include/mlir/InitAllPasses.h
The file was modifiedmlir/lib/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Transforms/StripDebugInfo.cpp
The file was modifiedmlir/lib/Transforms/LoopCoalescing.cpp
The file was modifiedmlir/lib/Transforms/PipelineDataTransfer.cpp
The file was addedmlir/include/mlir/Pass/PassBase.td
The file was modifiedmlir/lib/Transforms/LoopInvariantCodeMotion.cpp
The file was addedmlir/tools/mlir-tblgen/PassGen.cpp
The file was modifiedmlir/lib/Pass/PassRegistry.cpp
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/lib/Transforms/ViewOpGraph.cpp
The file was modifiedmlir/lib/Transforms/CSE.cpp
The file was modifiedmlir/include/mlir/Transforms/LocationSnapshot.h
The file was modifiedmlir/tools/mlir-tblgen/CMakeLists.txt
The file was modifiedmlir/lib/Transforms/LoopFusion.cpp
The file was modifiedmlir/lib/Transforms/SymbolDCE.cpp
The file was modifiedmlir/include/mlir/CMakeLists.txt
The file was modifiedmlir/lib/Transforms/LocationSnapshot.cpp
The file was modifiedmlir/lib/Transforms/ViewRegionGraph.cpp
The file was modifiedmlir/lib/Transforms/MemRefDataFlowOpt.cpp
The file was addedmlir/include/mlir/Transforms/CMakeLists.txt
The file was addedmlir/include/mlir/Transforms/Passes.td
The file was modifiedmlir/lib/TableGen/CMakeLists.txt
The file was modifiedmlir/lib/Transforms/ParallelLoopCollapsing.cpp
The file was addedmlir/lib/TableGen/Pass.cpp
The file was addedmlir/include/mlir/TableGen/Pass.h
The file was modifiedmlir/lib/Transforms/OpStats.cpp
The file was modifiedmlir/include/mlir/Pass/PassRegistry.h
The file was modifiedmlir/lib/Transforms/Canonicalizer.cpp
Commit e3d834a54afa65c615b8eb839f4fe5dbaf53e3e8 by riddleriver
[mlir][Pass] Move the registration of dialect passes to tablegen

This generates a Passes.td for all of the dialects that have transformation passes. This removes the need for global registration for all of the dialect passes.

Differential Revision: https://reviews.llvm.org/D76657
The file was modifiedmlir/include/mlir/Dialect/Linalg/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Linalg/Passes.h
The file was modifiedmlir/lib/Dialect/Quant/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
The file was addedmlir/include/mlir/Dialect/FxpMathOps/Passes.td
The file was modifiedmlir/lib/Quantizer/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/Transforms/LegalizeForExport.cpp
The file was modifiedmlir/lib/Dialect/GPU/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
The file was addedmlir/include/mlir/Dialect/GPU/Passes.td
The file was addedmlir/include/mlir/Quantizer/Transforms/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/LoopOps/Passes.td
The file was addedmlir/include/mlir/Dialect/SPIRV/Passes.td
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp
The file was modifiedmlir/include/mlir/Dialect/GPU/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/FxpMathOps/Transforms/LowerUniformRealMath.cpp
The file was modifiedmlir/include/mlir/Dialect/LoopOps/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineLoopInvariantCodeMotion.cpp
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/FxpMathOps/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/CMakeLists.txt
The file was modifiedmlir/include/mlir/Quantizer/Transforms/Passes.h
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/Quant/Passes.td
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/DecorateSPIRVCompositeTypeLayoutPass.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/FxpMathOps/Passes.h
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertConst.cpp
The file was modifiedmlir/include/mlir/InitAllPasses.h
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
The file was addedmlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/UpdateVCEPass.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
The file was addedmlir/include/mlir/Quantizer/Transforms/Passes.td
The file was modifiedmlir/include/mlir/Dialect/Affine/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Quant/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopSpecialization.cpp
The file was modifiedmlir/include/mlir/CMakeLists.txt
The file was modifiedmlir/lib/Quantizer/Transforms/AddDefaultStatsTestPass.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertSimQuant.cpp
The file was addedmlir/include/mlir/Quantizer/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/Affine/Passes.td
The file was modifiedmlir/lib/Quantizer/Transforms/RemoveInstrumentationPass.cpp
The file was modifiedmlir/include/mlir/Dialect/Affine/Passes.h
The file was modifiedmlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/FxpMathOps/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/Linalg/Passes.td
The file was modifiedmlir/lib/Quantizer/Transforms/InferQuantizedTypesPass.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
Commit 3dddd8969f4d5bb05d65c6014934e24795843182 by riddleriver
[mlir][Pass] Move the registration of conversion passes to tablegen

This removes the need to statically register conversion passes, and also puts all of the conversions within one centralized file.

Differential Revision: https://reviews.llvm.org/D76658
The file was modifiedmlir/include/mlir/InitAllPasses.h
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRVPass.cpp
The file was modifiedmlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
The file was modifiedmlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp
The file was modifiedmlir/lib/Conversion/AffineToStandard/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
The file was modifiedmlir/include/mlir/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/LoopToStandard/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/LoopsToGPU/LoopsToGPUPass.cpp
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRVPass.cpp
The file was modifiedmlir/lib/Conversion/LoopToStandard/LoopToStandard.cpp
The file was modifiedmlir/lib/Conversion/GPUToCUDA/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/lib/Conversion/GPUToVulkan/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp
The file was modifiedmlir/include/mlir/Conversion/LoopsToGPU/LoopsToGPUPass.h
The file was modifiedmlir/include/mlir/Conversion/VectorToLoops/ConvertVectorToLoops.h
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/LegalizeStandardForSPIRV.cpp
The file was modifiedmlir/lib/Conversion/GPUToROCDL/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/lib/Conversion/AVX512ToLLVM/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/GPUToNVVM/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/StandardToLLVM/CMakeLists.txt
The file was addedmlir/include/mlir/Conversion/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/LinalgToSPIRV/LinalgToSPIRVPass.cpp
The file was addedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
The file was modifiedmlir/lib/Conversion/GPUToCUDA/ConvertLaunchFuncToCudaCalls.cpp
The file was modifiedmlir/lib/Conversion/LoopsToGPU/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.cpp
The file was modifiedmlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp
The file was modifiedmlir/lib/Conversion/LinalgToSPIRV/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/CMakeLists.txt
Commit 9a277af2d429e1d53f65417400583d5ea66d3ed1 by riddleriver
[mlir][Pass] Add support for generating pass utilities via tablegen

This revision adds support for generating utilities for passes such as options/statistics/etc. that can be inferred from the tablegen definition. This removes additional boilerplate from the pass, and also makes it easier to remove the reliance on the pass registry to provide certain things(e.g. the pass argument).

Differential Revision: https://reviews.llvm.org/D76659
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/LegalizeStandardForSPIRV.cpp
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/lib/Transforms/LoopCoalescing.cpp
The file was modifiedmlir/lib/Transforms/StripDebugInfo.cpp
The file was modifiedmlir/lib/Conversion/LoopToStandard/LoopToStandard.cpp
The file was modifiedmlir/lib/Transforms/Canonicalizer.cpp
The file was modifiedmlir/lib/Transforms/CSE.cpp
The file was modifiedmlir/lib/Conversion/GPUToCUDA/ConvertLaunchFuncToCudaCalls.cpp
The file was modifiedmlir/lib/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.cpp
The file was modifiedmlir/lib/Transforms/ViewRegionGraph.cpp
The file was modifiedmlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
The file was modifiedmlir/lib/Conversion/LoopsToGPU/LoopsToGPUPass.cpp
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRVPass.cpp
The file was modifiedmlir/lib/Transforms/OpStats.cpp
The file was modifiedmlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp
The file was modifiedmlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp
The file was modifiedmlir/lib/Transforms/PipelineDataTransfer.cpp
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/lib/Transforms/LoopInvariantCodeMotion.cpp
The file was modifiedmlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/lib/Quantizer/Transforms/RemoveInstrumentationPass.cpp
The file was modifiedmlir/lib/TableGen/Pass.cpp
The file was modifiedmlir/include/mlir/Dialect/LoopOps/Passes.td
The file was modifiedmlir/lib/Transforms/SymbolDCE.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/Transforms/LegalizeForExport.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertSimQuant.cpp
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRVPass.cpp
The file was modifiedmlir/include/mlir/Dialect/Affine/Passes.td
The file was modifiedmlir/include/mlir/TableGen/Pass.h
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp
The file was modifiedmlir/lib/Transforms/MemRefDataFlowOpt.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
The file was modifiedmlir/lib/Quantizer/Transforms/InferQuantizedTypesPass.cpp
The file was modifiedmlir/lib/Transforms/ParallelLoopCollapsing.cpp
The file was modifiedmlir/lib/Conversion/LinalgToSPIRV/LinalgToSPIRVPass.cpp
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertConst.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/lib/Transforms/LocationSnapshot.cpp
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineLoopInvariantCodeMotion.cpp
The file was modifiedmlir/lib/Dialect/FxpMathOps/Transforms/LowerUniformRealMath.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
The file was modifiedmlir/tools/mlir-tblgen/PassGen.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
The file was modifiedmlir/lib/Quantizer/Transforms/AddDefaultStatsTestPass.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Passes.td
The file was modifiedmlir/include/mlir/Transforms/Passes.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
The file was modifiedmlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp
The file was modifiedmlir/lib/Transforms/ViewOpGraph.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
The file was modifiedmlir/lib/Transforms/LoopFusion.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
The file was modifiedmlir/include/mlir/Pass/PassBase.td
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopSpecialization.cpp
Commit 9be4be3e53270fc12b184773203b9aa6eb4ad92b by riddleriver
[mlir][Pass] Add support for generating pass documention from the tablegen definition

Summary:
This revision adds support for auto-generating pass documentation, replacing the need to manually keep Passes.md up-to-date. This matches the behavior already in place for dialect and interface documentation.

Differential Revision: https://reviews.llvm.org/D76660
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/include/mlir/Transforms/Passes.td
The file was modifiedmlir/include/mlir/Dialect/FxpMathOps/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/GPU/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Quant/CMakeLists.txt
The file was modifiedmlir/docs/Passes.md
The file was addedmlir/tools/mlir-tblgen/PassDocGen.cpp
The file was modifiedmlir/include/mlir/Transforms/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Linalg/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
The file was modifiedmlir/include/mlir/Conversion/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Affine/CMakeLists.txt
The file was modifiedmlir/tools/mlir-tblgen/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/LoopOps/CMakeLists.txt
The file was modifiedmlir/include/mlir/Quantizer/Transforms/CMakeLists.txt
Commit 0ec88d031ad5abcd78068a8377494ec84ea6a1e1 by pavel
[lldb] Inherit host environment when running shell commands

Summary:
On most hosts we were running shell commands with an empty environment.
The only exception was windows, which was inheriting the host enviroment
mostly by accident.

Running the commands in an empty environment does not sound like a
sensible default, so this patch changes Host::RunShellCommand to inherit
the host environment.  This impacts both commands run via
SBPlatform::Run (in case of host platforms), as well as the "platform
shell" CLI command.

Reviewers: jingham, friss

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D77123
The file was addedlldb/test/API/python_api/sbplatform/TestSBPlatform.py
The file was addedlldb/test/API/python_api/sbplatform/main.cpp
The file was modifiedlldb/source/Host/common/Host.cpp
The file was addedlldb/test/API/python_api/sbplatform/Makefile
Commit 93fc0ba145c2f9619d3174c95cacda5d4a0a2815 by grimar
[yaml2obj] - Add NBucket and NChain fields for the SHT_HASH section.

These fields allows to override nchain and nbucket fields of a SHT_HASH section.

Differential revision: https://reviews.llvm.org/D76834
The file was modifiedllvm/test/tools/yaml2obj/ELF/hash-section.yaml
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
Commit c7468c1696ff3273167d14d764b36e990d7642a5 by gchatelet
[Alignment][NFC] Use Align in SelectionDAG::getMemIntrinsicNode

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: jholewinski, nemanjai, hiraditya, kbarton, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77149
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit aa786b881fc89a2a9883bff77912f2053126f95b by martin
[lldb] [PECOFF] Only use PECallFrameInfo on the one supported architecture

The RuntimeFunction struct, which PECallFrameInfo interprets, has a
different layout and differnet semantics on all architectures.

Differential Revision: https://reviews.llvm.org/D77000
The file was modifiedlldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
Commit ef49895da894c56397879e3cb9a03f35d079617a by bjorn.a.pettersson
[X86] Do not assume types are legal in getFauxShuffleMask

Summary:
Make sure we do not assert on value types not being
simple in getFauxShuffleMask when analysing operations
such as "v8i16 = truncate v8i24".

Reviewers: RKSimon

Reviewed By: RKSimon

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77136
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was addedllvm/test/CodeGen/X86/shuffle-combine-crash-3.ll
Commit d8b51789fd63491ae806f53f43df8d2024dbaf19 by qiucofan
[NFC] [PowerPC] Add test for frsp elimination
The file was addedllvm/test/CodeGen/PowerPC/mi-simplify-code.mir
Commit dbf5e4f6c7f76d8086b01efed5c37dced3eed4b6 by shchenz
[LSR] add testcase for wrongly phi node elimination - NFC
The file was modifiedllvm/lib/Analysis/ScalarEvolutionExpander.cpp
The file was addedllvm/test/Transforms/LoopStrengthReduce/phi-unknownscev.ll
Commit 8b8cd150a4a176cd971c604f92de76acdae4a301 by shchenz
Revert "[LSR] add testcase for wrongly phi node elimination - NFC"

This reverts commit dbf5e4f6c7f76d8086b01efed5c37dced3eed4b6.
The testcase has different behaviour on PowerPC and X86.
The file was modifiedllvm/lib/Analysis/ScalarEvolutionExpander.cpp
The file was removedllvm/test/Transforms/LoopStrengthReduce/phi-unknownscev.ll
Commit 918ccb64b02281355a6226fe8af07dc40e8ff9e3 by llvm-dev
[X86][SSE] Handle basic inversion of PTEST/TESTP operands (PR38522)

PTEST/TESTP sets EFLAGS as:
TESTZ: ZF = (Op0 & Op1) == 0
TESTC: CF = (~Op0 & Op1) == 0
TESTNZC: ZF == 0 && CF == 0

If we are inverting the 0'th operand of a PTEST/TESTP instruction we can adjust the comparisons to correct handle the inversion implicitly.

Additionally, for "TESTZ" (ZF) cases, the allones case, PTEST(X,-1) can be simplified to PTEST(X,X).

We can expand this for the TESTZ(X,~Y) pattern and also handle KTEST/KORTEST in the future.

Differential Revision: https://reviews.llvm.org/D76984
The file was modifiedllvm/test/CodeGen/X86/combine-ptest.ll
The file was modifiedllvm/test/CodeGen/X86/combine-testpd.ll
The file was modifiedllvm/test/CodeGen/X86/combine-testps.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 84aa6cf1a9fe7c2d1c35b27ba6fbf1ee36a09a71 by cullen.rhodes
[Transforms][SROA] Promote allocas with mem2reg for scalable types

Summary:
Aggregate types containing scalable vectors aren't supported and as far
as I can tell this pass is mostly concerned with optimisations on
aggregate types, so the majority of this pass isn't very useful for
scalable vectors.

This patch modifies SROA such that mem2reg is run on allocas with
scalable types that are promotable, but nothing else such as slicing is
done.

The use of TypeSize in this pass has also been updated to be explicitly
fixed size. When invoking the following methods in DataLayout:

    * getTypeSizeInBits
    * getTypeStoreSize
    * getTypeStoreSizeInBits
    * getTypeAllocSize

we now called getFixedSize on the resultant TypeSize. This is quite an
extensive change with around 50 calls to these functions, and also the
first change of this kind (being explicit about fixed vs scalable
size) as far as I'm aware, so feedback welcome.

A test is included containing IR with scalable vectors that this pass is
able to optimise.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D76720
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
The file was addedllvm/test/Transforms/SROA/scalable-vectors.ll
Commit 43aa04eb7a617ee75dfcbbe2d395b8208e66c0e0 by kadircet
[clangd] Run semaCodeComplete only with a preamble

Summary:
It is used by code completion and signature help. Code completion
already uses a special no-compile mode for missing preambles, so this change is
a no-op for that.

As for signature help, it already blocks for a preamble and missing it implies
clang has failed to parse the preamble and retrying it in signature help likely
will fail again. And even if it doesn't, request latency will be too high to be
useful as parsing preambles is expensive.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77204
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.h
The file was modifiedclang-tools-extra/clangd/unittests/ClangdTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Commit f25a1b4f58d66805257a05f13e8581551574ce22 by shchenz
[LSR] re-add testcase for wrongly phi node elimination - NFC

Retest the case on X86/SystemZ/AArch64/PowerPC
The file was modifiedllvm/lib/Analysis/ScalarEvolutionExpander.cpp
The file was addedllvm/test/Transforms/LoopStrengthReduce/phi-unknownscev.ll
Commit 66b9f5f7f0d26d789f74ddc8a99d0e446d17a22c by benny.kra
[GVNSink] Simplify code. NFC.
The file was modifiedllvm/lib/Transforms/Scalar/GVNSink.cpp
Commit 9beba4245a77ae75db874146036b77fb76398e4c by Raphael Isemann
[lldb][NFC] Modernize TestExprChar
The file was modifiedlldb/test/API/commands/expression/char/TestExprsChar.py
Commit c9d15880542ef483470ee33dbd055b68396d4537 by omair.javaid
Silent failing TestWatchpointCount.py aarch64/linux

Skip TestWatchpointCount.py for aarch64-linux to fix lldb aarch64 linux buildbot.

http://lab.llvm.org:8011/builders/lldb-aarch64-ubuntu/
The file was modifiedlldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
Commit dad848280d3b740524803595d463510e1090ab59 by pierre.vanhoutryve
[Target][ARM] Change VPTMaskValues to the correct encoding

VPTMaskValue was using the "instruction" encoding to represent the masks
(= the same encoding as the one used by the instructions in an object file),
but it is only used to build MCOperands, so it should use the MCOperand
encoding of the masks, which is slightly different.

Differential Revision: https://reviews.llvm.org/D76139
The file was modifiedllvm/lib/Target/ARM/Utils/ARMBaseInfo.h
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
Commit 2effe8f5e72ac94286445c0fdfd2cad6999f4cb4 by pierre.vanhoutryve
[Target][ARM] Improvements to the VPT Block Insertion Pass

This allows the MVE VPT Block insertion pass to remove VPNOTs in
order to create more complex VPT blocks such as TE, TEET, TETE, etc.

Differential Revision: https://reviews.llvm.org/D75993
The file was modifiedllvm/test/CodeGen/Thumb2/mve-pred-not.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-3-blocks-kill-vpr.mir
The file was addedllvm/test/CodeGen/Thumb2/mve-vpt-block-elses.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-nots.mir
The file was modifiedllvm/lib/Target/ARM/Thumb2InstrInfo.h
The file was modifiedllvm/test/CodeGen/Thumb2/mve-pred-threshold.ll
The file was modifiedllvm/lib/Target/ARM/MVEVPTBlockPass.cpp
Commit db3d64eebbe0aad87631c6fada01b06753377a44 by kbobyrev
[clangd-vscode] NFC; Improve wording in documentation and update VSCode tasks

Summary:
VSCode tasks are updated to the latest supported versions: deprecated
values are removed and replaced by their new counterparts.

Reviewers: hokein

Reviewed By: hokein

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D76595
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/.vscode/tasks.json
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/.vscode/launch.json
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/DEVELOPING.md
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/src/extension.ts
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/tsconfig.json
Commit bf573bea19eabb41ed35c31b0d187c7068172bfa by gchatelet
[Alignment][NFC] Convert MIR Yaml to MaybeAlign

Summary:
Although it may look like non NFC it is. especially the MIRParser may set `0` to the MachineFrameInfo and MachineFunction, but they all deal with `Align` internally and assume that `0` means `1`.
https://github.com/llvm/llvm-project/blob/93fc0ba145c2f9619d3174c95cacda5d4a0a2815/llvm/include/llvm/CodeGen/MachineFrameInfo.h#L483

This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77203
The file was modifiedllvm/include/llvm/CodeGen/MIRYamlMapping.h
The file was modifiedllvm/lib/CodeGen/MIRPrinter.cpp
The file was modifiedllvm/lib/CodeGen/MIRParser/MIRParser.cpp
Commit e344f8b9db4c173a5a268c52820e7ccf078ebe3b by shchenz
Revert "[LSR] re-add testcase for wrongly phi node elimination - NFC"

This reverts commit f25a1b4f58d66805257a05f13e8581551574ce22.
ARM and hexagon fail at the new added case.
The file was modifiedllvm/lib/Analysis/ScalarEvolutionExpander.cpp
The file was removedllvm/test/Transforms/LoopStrengthReduce/phi-unknownscev.ll
Commit a0c537834ae86a586aa0a17bc2e48d13c4515a3d by david.green
[ARM] Extra vmull loop tests. NFC
The file was addedllvm/test/CodeGen/Thumb2/mve-vmull-loop.ll
Commit 43eca880c6eda10fd191c4e9e04bf04830c9c6f2 by llvm-dev
Fix "control reaches end of non-void function" warning. NFCI.
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
Commit 481413d3940402fdbef9f19963430e75409dc148 by llvm-dev
[X86][SSE] matchShuffleWithPACK - generalize zero/signbits matching for any packed src type

First step toward making use of canLowerByDroppingEvenElements to match chains of PACKSS/PACKUS for compaction shuffles.

At the moment we still only match a single stage but the MatchPACK is now more general.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 65e0079f21aeb5126bfaee18d3feedbb911c1da8 by diggerlin
[NFC] run clang format on the file llvm/include/llvm/MC/MCDirectives.h

SUMMARY:

run clang format on the file llvm/include/llvm/MC/MCDirectives.h

Reviewers: Jason liu
Subscribers: rupprecht, seiyai,hiraditya

Differential Revision: https://reviews.llvm.org/D77170
The file was modifiedllvm/include/llvm/MC/MCDirectives.h
Commit 3a78f44daf37bd16ae69eea06a1b45428e33f16f by gchatelet
[Alignment][NFC] Convert SelectionDAG::InferPtrAlignment to MaybeAlign

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77212
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit b605c56b0fac74584156f058da19496b6d7cae8f by benny.kra
[ARM] Silence warning in Release builds

llvm/lib/Target/ARM/MVEVPTBlockPass.cpp:175:37: error: unused variable 'BlockBeg' [-Werror,-Wunused-variable]
  MachineBasicBlock::instr_iterator BlockBeg = Iter;
                                    ^
The file was modifiedllvm/lib/Target/ARM/MVEVPTBlockPass.cpp
Commit 552e46ea1efd94669b16d2b31439525bf7d7cc80 by llvm-dev
Fix unused variable warnings. NFCI.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit be7a233e93767a12cc8aa6be94488c3ec8324529 by llvm-dev
Fix operator precedence warning. NFCI.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
Commit 501522b5b2a1b2620370c2885da7caa7ed3b5c73 by kai.wang
[RISCV] Support RISC-V ELF attributes sections in llvm-readobj.

Enable llvm-readobj to handle RISC-V ELF attribute sections.

Differential Revision: https://reviews.llvm.org/D75833
The file was addedllvm/test/tools/llvm-readobj/ELF/RISCV/invalid-attr-version.test
The file was addedllvm/test/tools/llvm-readobj/ELF/RISCV/attribute.s
The file was addedllvm/test/tools/llvm-readobj/ELF/RISCV/invalid-attr-section-size.test
The file was addedllvm/test/MC/RISCV/attribute-with-option.s
The file was addedllvm/test/tools/llvm-readobj/ELF/RISCV/lit.local.cfg
The file was modifiedllvm/unittests/Support/ELFAttributeParserTest.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was addedllvm/test/tools/llvm-readobj/ELF/RISCV/validate-attr-section.test
The file was modifiedllvm/lib/Support/ELFAttributeParser.cpp
The file was addedllvm/test/tools/llvm-readobj/ELF/RISCV/section-types.test
Commit 1dffa2550b535c17998b0f9362a0997b3950b970 by gchatelet
[Alignment][NFC] Transition to MachineFrameInfo::getObjectAlign()

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: arsenm, sdardis, nemanjai, jvesely, nhaehnle, hiraditya, kbarton, jrtc27, atanasyan, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77215
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonBitTracker.cpp
The file was modifiedllvm/lib/CodeGen/StackColoring.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/lib/CodeGen/StackSlotColoring.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600FrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/LocalStackSlotAllocation.cpp
The file was modifiedllvm/lib/Target/Mips/MipsRegisterInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineFrameInfo.h
The file was modifiedllvm/lib/CodeGen/RegisterScavenging.cpp
Commit fee0026fc7eb077d7808915fd30693883db2fd1d by Louis Dionne
[libc++abi] Fix remote execution of .sh.cpp tests

This aims to fix test failures on the following buildbots:

- http://lab.llvm.org:8011/builders/llvm-clang-win-x-armv7l
- http://lab.llvm.org:8011/builders/llvm-clang-win-x-aarch64

Differential Revision: https://reviews.llvm.org/D77190
The file was modifiedlibcxx/utils/libcxx/test/format.py
The file was modifiedlibcxx/utils/ssh.py
The file was modifiedlibcxx/utils/libcxx/test/config.py
The file was modifiedlibcxxabi/test/incomplete_type.sh.cpp
The file was modifiedlibcxx/utils/libcxx/compiler.py
Commit eb8880562e693dd1e5a0bd332687ff6e20b272d4 by llvm-dev
[X86][SSE] combinePTESTCC - fold TESTZ(X,~Y) -> TESTC(Y,X)
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/combine-testps.ll
The file was modifiedllvm/test/CodeGen/X86/combine-ptest.ll
The file was modifiedllvm/test/CodeGen/X86/combine-testpd.ll
Commit fc63c4d8ce68deca5036fda0df4a7695c16dab03 by gchatelet
[Alignment][NFC] Remove remaining uses of MachineFrameInfo::setObjectAlignment

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77217
The file was modifiedllvm/include/llvm/CodeGen/MachineFrameInfo.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
Commit c6c045cb7ae34e1da338479e4e25a679216ab585 by gchatelet
[Alignment][NFC] Mark IRTranslator::getMemOpAlignment deprecated

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77218
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
Commit 51d594d33c25dcea52d1b21c6695a2dc561ef74e by rosica
Replace output file name in test with %t
The file was modifiedlld/test/wasm/lto/incompatible.ll
Commit a67cd71acdb0cd636097a74ec80e2f23ef301ada by tpopp
[MLIR] Implement LoopLikeInterface for loop.parallel

Summary:
This is to allow optimizations like loop invariant code motion to work
on the ParallelOp.

Additional small cleanup on the ForOp implementation of
LoopLikeInterface and the test file of loop-invariant-code-motion.

Differential Revision: https://reviews.llvm.org/D77128
The file was modifiedmlir/lib/Dialect/LoopOps/LoopOps.cpp
The file was modifiedmlir/include/mlir/Dialect/LoopOps/LoopOps.td
The file was modifiedmlir/test/Transforms/loop-invariant-code-motion.mlir
Commit e3033c0ce5517efddbf92a079ad1e0ca4868591f by puyan
[llvm][clang][IFS] Enhancing the llvm-ifs yaml format for symbol lists.

Prior to this change the clang interface stubs format resembled
something ending with a symbol list like this:

Symbols:
   a: { Type: Func }

This was problematic because we didn't actually want a map format and
also because we didn't like that an empty symbol list required
"Symbols: {}". That is to say without the empty {} llvm-ifs would crash
on an empty list.

With this new format it is much more clear which field is the symbol
name, and instead the [] that is used to express an empty symbol vector
is optional, ie:

Symbols:
- { Name: a, Type: Func }

or

Symbols: []

or

Symbols:

This further diverges the format from existing llvm-elftapi. This is a
good thing because although the format originally came from the same
place, they are not the same in any way.

Differential Revision: https://reviews.llvm.org/D76979
The file was modifiedclang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
The file was addedllvm/test/tools/llvm-ifs/empty1.ifs
The file was modifiedclang/test/InterfaceStubs/hidden-class-inheritance.cpp
The file was modifiedllvm/test/tools/llvm-ifs/weak.ifs
The file was modifiedllvm/test/tools/llvm-ifs/object.ifs
The file was modifiedllvm/test/tools/llvm-ifs/conflict-header-triple.ifs
The file was modifiedclang/test/InterfaceStubs/trycatch.cpp
The file was modifiedclang/test/InterfaceStubs/template-template-parm-decl.cpp
The file was modifiedclang/test/InterfaceStubs/func.ifs
The file was modifiedllvm/test/tools/llvm-ifs/Inputs/strong-mismatch-size.ifs
The file was modifiedclang/test/InterfaceStubs/usings.cpp
The file was modifiedclang/test/InterfaceStubs/ppc.cpp
The file was addedllvm/test/tools/llvm-ifs/empty2.ifs
The file was modifiedllvm/test/tools/llvm-ifs/conflict-type.ifs
The file was modifiedclang/test/InterfaceStubs/class-template-partial-specialization.cpp
The file was modifiedclang/test/InterfaceStubs/object.c
The file was modifiedclang/test/InterfaceStubs/windows.cpp
The file was modifiedllvm/test/tools/llvm-ifs/conflict-header-version.ifs
The file was modifiedllvm/test/tools/llvm-ifs/strong.ifs
The file was modifiedclang/test/InterfaceStubs/bad-format.cpp
The file was modifiedllvm/test/tools/llvm-ifs/func.ifs
The file was modifiedclang/test/InterfaceStubs/blocks.c
The file was modifiedclang/test/InterfaceStubs/weak.cpp
The file was modifiedclang/test/InterfaceStubs/conflict-type.ifs
The file was modifiedclang/include/clang/Frontend/FrontendActions.h
The file was modifiedclang/test/InterfaceStubs/namespace.cpp
The file was modifiedllvm/test/tools/llvm-ifs/conflict-size.ifs
The file was modifiedclang/test/InterfaceStubs/unresolved-using-typename.cpp
The file was modifiedclang/test/InterfaceStubs/driver-test3.c
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/InterfaceStubs/constructor-using-shadow.cpp
The file was modifiedclang/test/InterfaceStubs/inline.c
The file was modifiedllvm/test/tools/llvm-ifs/watchos-tbd.ifs
The file was modifiedclang/test/InterfaceStubs/template-constexpr.cpp
The file was modifiedllvm/test/tools/llvm-ifs/conflict-header-format.ifs
The file was modifiedclang/test/InterfaceStubs/cxx-conversion.cpp
The file was modifiedclang/test/InterfaceStubs/object.ifs
The file was modifiedclang/test/InterfaceStubs/indirect-field-decl.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/InterfaceStubs/template-namespace-function.cpp
The file was modifiedllvm/test/tools/llvm-ifs/object-function-size-weak-combo.ifs
The file was modifiedllvm/test/tools/llvm-ifs/Inputs/strong-mismatch-type.ifs
The file was modifiedllvm/test/tools/llvm-ifs/version-ok.ifs
The file was modifiedclang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
The file was modifiedllvm/test/tools/llvm-ifs/ios-tbd.ifs
The file was modifiedclang/test/InterfaceStubs/non-type-template-parm-decl.cpp
The file was modifiedllvm/test/tools/llvm-ifs/macos-tbd.ifs
The file was addedclang/test/InterfaceStubs/empty.c
The file was modifiedllvm/tools/llvm-ifs/llvm-ifs.cpp
The file was modifiedllvm/test/tools/llvm-ifs/conflict-weak.ifs
The file was modifiedclang/test/InterfaceStubs/cxxdeduction-guide.cpp
The file was modifiedllvm/test/tools/llvm-ifs/tvos-tbd.ifs
The file was modifiedllvm/test/tools/llvm-ifs/weak-mismatch.ifs
The file was modifiedclang/test/InterfaceStubs/namespace-alias.cpp
The file was modifiedclang/test/InterfaceStubs/var-template-specialization-decl.cpp
The file was modifiedclang/test/InterfaceStubs/lambda.cpp
The file was modifiedllvm/test/tools/llvm-ifs/default-empty.ifs
The file was modifiedclang/include/clang/Frontend/FrontendOptions.h
Commit 616289ed29225c0ddfe5699c7fdf42a0fcbe0ab4 by jrtc27
[LegalizeTypes][RISCV] Correctly sign-extend comparison for ATOMIC_CMP_XCHG

Summary:
Currently, the comparison argument used for ATOMIC_CMP_XCHG is legalised
with GetPromotedInteger, which leaves the upper bits of the value
undefind. Since this is used for comparing in an LR/SC loop with a
full-width comparison, we must sign extend it. We introduce a new
getExtendForAtomicCmpSwapArg to complement getExtendForAtomicOps, since
many targets have compare-and-swap instructions (or pseudos) that
correctly handle an any-extend input, and the existing function
determines the extension of the result, whereas we are concerned with
the input.

This is related to https://reviews.llvm.org/D58829, which solved the
issue for ATOMIC_CMP_SWAP_WITH_SUCCESS, but not the simpler
ATOMIC_CMP_SWAP.

Reviewers: asb, lenary, efriedma

Reviewed By: asb

Subscribers: arichardson, hiraditya, rbar, johnrusso, simoncook, sabuasal, niosHD, kito-cheng, shiva0217, MaskRay, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, jfb, PkmX, jocewei, psnobl, benna, Jim, s.egerton, pzheng, sameer.abuasal, apazos, luismarques, evandro, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D74453
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
Commit 64acef386ec662c5faea8d7c86b6d53ad7bfd9ae by Louis Dionne
[libc++] Handle SSH errors more gracefully and make sure we clean up the tmp directory
The file was modifiedlibcxx/utils/ssh.py
Commit c6a65bb93f218dbdec98f51952a309afda5608ea by sylvestre
clagn-tidy/doc: Add a link to readability-static-accessed-through-instance from readability-convert-member-functions-to-static
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/readability-convert-member-functions-to-static.rst
Commit f527e6f2e11dcda8e71c21138fa15e3a3b9e9917 by grimar
[llvm-readobj] - Do not crash when SHT_HASH table is broken.

We have scenarios when the logic of --elf-hash-histogram/--hash-symbols/--hash-table
options might crash when given a broken hash table.

This patch adds pre-checks for tables for these 3 options
and provides test cases.

Differential revision: https://reviews.llvm.org/D77147
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hash-symbols.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hash-table.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hash-histogram.test
Commit f2036a15d3714fc9cfc8935634814d1c4e4263fa by maskray
[ELF] Print symbols with non-default versions for better "undefined symbol" diagnostics

When reporting an "undefined symbol" diagnostic:

* We don't print @ for the reference.
* We don't print @ or @@ for the definition. https://bugs.llvm.org/show_bug.cgi?id=45318

This can lead to confusing diagnostics:

```
// foo may be foo@v2
ld.lld: error: undefined symbol: foo
>>> referenced by t1.o:(.text+0x1)
// foo may be foo@v1 or foo@@v1
>>> did you mean: foo
>>> defined in: t.so
```

There are 2 ways a symbol in symtab may get truncated:

* A @@ definition may be truncated *early* by SymbolTable::insert().
  The name ends with a '\0'.
* A @ definition/reference may be truncated *later* by Symbol::parseSymbolVersion().
  The name ends with a '@'.

This patch detects the second case and improves the diagnostics. The first case is
not improved but the second case is sufficient to make diagnostics not confusing.

Reviewed By: ruiu

Differential Revision: https://reviews.llvm.org/D76999
The file was modifiedlld/ELF/Symbols.cpp
The file was addedlld/test/ELF/undef-suggest-version.s
The file was modifiedlld/ELF/Symbols.h
Commit c87b5e7e22b2df92021ac5fcc69160901a5841a9 by aheejin
[WebAssembly] Fix subregion relationship in CFGSort

Summary:
The previous code for determining the innermost region in CFGSort was
not correct. We determine subregion relationship by domination of their
headers, i.e., if region A's header dominates region B's header, B is a
subregion of A. Previously we assumed that if a BB belongs to both a
loop and an exception, the region with fewer number of BBs is the
innermost one. This may not be true, because while WebAssemblyException
contains BBs in all its subregions (loops or exceptions), MachineLoop
may not, because MachineLoop does not contain BBs that don't have a path
to its header even if they are dominated by its header.

                Loop header  <---|
                    |            |
              Exception header   |
                    | \          |
                    A  B         |
                    |   \        |
                    |    C       |
                    |            |
                Loop latch       |
                    |            |
                    -------------|

For example, in this CFG, the loop does not contain B and C, because
they don't have a path back to the loops header. But for CFGSort we
consider the exception here belongs to the loop and the exception should
be a subregion of the loop and scheduled together.

So here we should use `WE->contains(ML->getHeader())` (but not
`ML->contains(WE->getHeader())`, for the stated region above).

This also fixes some comments and deletes `Regions` vector in
`RegionInfo` class, which was not used anywere.

Reviewers: dschuff

Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77181
The file was modifiedllvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
Commit 3500cc8d891bb3825bb3275affe6db8b12f2f695 by Artem Dergachev
[analyzer] RetainCountChecker: Add a suppression for OSSymbols.

OSSymbol objects are particular XNU OSObjects that aren't really
reference-counted. Therefore you cannot do any harm by over- or
under-releasing them.
The file was modifiedclang/lib/Analysis/RetainSummaryManager.cpp
The file was modifiedclang/test/Analysis/osobject-retain-release.cpp
Commit bb4a36ea280283cb980cff07a81601d1ff3b81ba by maskray
[ELF] Propagate LMA offset to sections with neither AT() nor AT>

Fixes https://bugs.llvm.org/show_bug.cgi?id=45313
Also fixes linkerscript/{at4.s,overlay.test} LMA address issues exposed by
011b785505b1f6d315a93fd0a0409576ad8d1805.
Related: D74297

This patch improves emulation of GNU ld's heuristics on the difference
between the LMA and the VMA:
https://sourceware.org/binutils/docs/ld/Output-Section-LMA.html#Output-Section-LMA

New test linkerscript/lma-offset.s (based on at4.s) demonstrates some behaviors.

Reviewed By: psmith

Differential Revision: https://reviews.llvm.org/D76995
The file was modifiedlld/ELF/LinkerScript.cpp
The file was removedlld/test/ELF/linkerscript/at4.s
The file was modifiedlld/test/ELF/linkerscript/overlay.test
The file was modifiedlld/test/ELF/linkerscript/loadaddr.s
The file was modifiedlld/test/ELF/linkerscript/map-file2.test
The file was modifiedlld/docs/ELF/linker_script.rst
The file was addedlld/test/ELF/linkerscript/lma-offset.s
Commit 0489d39ead2b8ced20ba73ba4fda066d54deeb73 by Louis Dionne
[libc++] SSH: Properly handle test-executables that are not the first argument

If a ShTest has for example another command in front of the test
executable it wants to execute, ssh.py needs to properly translate
the path of that test executable to the executable on the remote host.
For example, running '%{exec} ! %t.exe', we can't assume that the
test-executable is the first argument after '%{exec}'.
The file was modifiedlibcxx/utils/ssh.py
Commit 153dadf3a3ca3c47f8c0fb718ec96616a05e42fd by aschwaighofer
[clang] CodeGen: Make getOrEmitProtocol public for Swift

Summary:
Swift would like to use clang's apis to emit protocol declarations.

This commits adds the public API:

```
emitObjCProtocolObject(CodeGenModule &CGM, const ObjCProtocolDecl *p);
```

rdar://60888524

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77077
The file was modifiedclang/lib/CodeGen/CGObjCMac.cpp
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.h
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.cpp
The file was modifiedclang/include/clang/CodeGen/CodeGenABITypes.h
The file was modifiedclang/lib/CodeGen/CGObjCGNU.cpp
Commit 7c5fcb3591b57b77c079700d7b12c2ecfd995818 by ishizaki
[lld] NFC: fix trivial typos in comments

Differential Revision: https://reviews.llvm.org/D72339
The file was modifiedlld/wasm/SymbolTable.h
The file was modifiedlld/test/ELF/warn-backrefs.s
The file was modifiedlld/test/ELF/Inputs/undef-bad-debug.s
The file was modifiedlld/test/ELF/linkerscript/align1.test
The file was modifiedlld/test/mach-o/parse-literals-error.yaml
The file was modifiedlld/ELF/CallGraphSort.cpp
The file was modifiedlld/ELF/SyntheticSections.h
The file was modifiedlld/test/wasm/entry-signature.ll
The file was modifiedlld/test/wasm/export-optional-lazy.ll
The file was modifiedlld/lib/ReaderWriter/MachO/TLVPass.cpp
The file was modifiedlld/test/wasm/visibility-hidden.ll
The file was modifiedlld/lib/ReaderWriter/MachO/GOTPass.cpp
The file was modifiedlld/test/wasm/undefined-entry.test
The file was modifiedlld/test/ELF/lto/common4.ll
The file was modifiedlld/wasm/Symbols.h
The file was modifiedlld/test/mach-o/error-simulator-vs-macosx.yaml
The file was modifiedlld/test/wasm/signature-mismatch-unknown.ll
The file was modifiedlld/ELF/ScriptLexer.cpp
The file was modifiedlld/test/ELF/allow-multiple-definition.s
The file was modifiedlld/test/ELF/mips-sto-pic-flag.s
The file was modifiedlld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp
The file was modifiedlld/ELF/InputSection.cpp
The file was modifiedlld/ELF/Arch/PPC64.cpp
The file was modifiedlld/test/ELF/icf-absolute2.s
The file was modifiedlld/test/ELF/pack-dyn-relocs.s
The file was modifiedlld/wasm/SymbolTable.cpp
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/test/ELF/linkerscript/subalign.s
The file was modifiedlld/wasm/Symbols.cpp
The file was modifiedlld/test/ELF/arm-exidx-add-missing.s
The file was modifiedlld/test/ELF/ppc64-local-dynamic.s
The file was modifiedlld/test/ELF/executable-undefined-ignoreall.s
The file was modifiedlld/lib/ReaderWriter/MachO/ArchHandler_arm64.cpp
The file was modifiedlld/test/ELF/invalid/broken-relaxation-x64.test
The file was modifiedlld/test/wasm/lto/signature-mismatch.ll
The file was modifiedlld/test/wasm/lto/undef.ll
The file was modifiedlld/include/lld/Core/Reference.h
The file was modifiedlld/test/COFF/secidx-absolute.s
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/test/ELF/ppc64-split-stack-prologue-adjust-success.s
Commit 160b01c9ef6768d4a135bdf27c46ceadb0bc5070 by Louis Dionne
[libc++] SSH: Use -p when scp'ing to preserve modes and modification times
The file was modifiedlibcxx/utils/ssh.py
Commit 9b31e595d717f70f1a5d95542bb71e6f053439f0 by ravishankarm
[mlir] Modify GPU to SPIR-V conversion to respect
spv.interface_var_abi attributes if it exists already.

Differential Revision: https://reviews.llvm.org/D77195
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRV.cpp
Commit 6593360ee760c0c98cf7fb05be70aa4ea455a42a by arsenm2
AMDGPU: Fix consistently backwards logic for default denormal mode

I forgot to squash this into c9d65a48af1d7bbfed7e785613cc9d9acf71821b
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
Commit 4ea3650c212ae471657d3a253cd424ce9d1316ac by arsenm2
HIP: Link correct denormal mode library

This wasn't respecting the flush mode based on the default, and also
wasn't correctly handling the explicit
-fno-cuda-flush-denormals-to-zero overriding the mode.
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/test/Driver/hip-device-libs.hip
Commit 95fac2e46b73c67495dbdb43ef178d33281c05ec by tlively
[WebAssembly] Rename SIMD min/max/avgr intrinsics for consistency

Summary:
The convention for the wasm_simd128.h intrinsics is to have the
integer sign in the lane interpretation rather than as a suffix. This
PR changes the names of the integer min, max, and avgr intrinsics to
match this convention.

Reviewers: aheejin

Subscribers: dschuff, sbc100, jgravelle-google, sunfish, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77185
The file was modifiedclang/lib/Headers/wasm_simd128.h
Commit f08df464ae89972a777c0a7e299a2c153a9829d8 by a.bataev
[OPENMP50]Add initial support for OpenMP 5.0 iterator.

Added basic parsing/semantic analysis/(de)serialization support for
iterator expression introduced in OpenMP 5.0.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/AST/ComputeDependence.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/include/clang/AST/BuiltinTypes.def
The file was modifiedclang/lib/AST/ExprClassification.cpp
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/lib/AST/Type.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/lib/AST/NSAPI.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/include/clang/AST/ExprOpenMP.h
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/Serialization/ASTCommon.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp
The file was modifiedclang/include/clang/AST/TextNodeDumper.h
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/lib/AST/TypeLoc.cpp
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/test/OpenMP/task_ast_print.cpp
The file was modifiedclang/test/OpenMP/task_depend_messages.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/test/OpenMP/depobj_messages.cpp
The file was modifiedclang/include/clang/AST/ComputeDependence.h
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
Commit 5e4e8d038820ab28050c8f242830cb00d5dc2f1a by arsenm2
AMDGPU/GlobalISel: Change intrinsic ID for _L to _LZ opt

Still should handle the other case changes the opcode this way.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.ltolz.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.ltolz.a16.ll
The file was modifiedllvm/lib/Target/AMDGPU/MIMGInstructions.td
Commit 68e283940a31378e0e61f6f7bbbdfbb3af74794a by arsenm2
AMDGPU/GlobalISel: Switch test to checking final ISA

The naming convention is for unprefixed .ll tests to check the final
ISA instructions.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.ltolz.ll
Commit 3a7865df626c061fa72cb731f0af763254ed3beb by Vedant Kumar
[llvm-locstats] Fix labels on x-axis of comparison chart

Summary:
This change makes the labels on the x-axis of a comparison chart look
like: "0%", "(0%, 10%)", "[10%, 20%)", and so on.

Previously, each label was the same (a concatenation of all the possible
coverage buckets).

Reviewers: djtodoro

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77155
The file was modifiedllvm/utils/llvm-locstats/llvm-locstats.py
Commit 68316afb29ca5bda0538bc69f96eebdff3954b48 by uday
[MLIR][NFC] loop transforms/analyis utils cleanup / modernize

Modernize/cleanup code in loop transforms utils - a lot of this code was
written prior to the currently available IR support / code style. This
patch also does some variable renames including inst -> op, comment
updates, turns getCleanupLoopLowerBound into a local function.

Differential Revision: https://reviews.llvm.org/D77175
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/lib/Analysis/LoopAnalysis.cpp
The file was modifiedmlir/include/mlir/Transforms/LoopUtils.h
The file was modifiedmlir/lib/Transforms/PipelineDataTransfer.cpp
The file was modifiedmlir/include/mlir/Analysis/LoopAnalysis.h
Commit 572890f1d3933bb8756a3cabd5574201f8ce807c by uday
[MLIR][NFC] clean up affine data copy test case

Capture maps to test better; drop unnecessary matches

Differential Revision: https://reviews.llvm.org/D77196
The file was modifiedmlir/test/Dialect/Affine/affine-data-copy.mlir
Commit 0dd21130efcd33e063155bba9af67517d59305c6 by joker.eph
Add LLVM_ATTRIBUTE_UNUSED to function used only in assert (NFC)
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
Commit b8c260c38d0ae93f8ae037fc1e9b94695b06d7ec by joker.eph
Remove linking all targets from `mlir-opt` (NFC)

There is no need to directly depends on this from mlir-opt, some library
may transitively depend on a subset of the targets when enabled (like
NVPTX for Cuda codegen tests) but this is handled by CMake already.
The file was modifiedmlir/tools/mlir-opt/CMakeLists.txt
Commit c4c20376f7ee78a8ed06415a61b65a7e32d94556 by ntv
[mlir][Linalg][Doc] Minor doc fixes
The file was modifiedmlir/docs/Dialects/Linalg.md
Commit 3f465d0d362849b64951bca6bbe1403403b408d8 by Matthew.Arsenault
AMDGPU: Fix broken check lines
The file was modifiedllvm/test/Transforms/LoadStoreVectorizer/AMDGPU/vect-ptr-ptr-size-mismatch.ll
The file was modifiedllvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores.ll
Commit 4b35c816ef7afd9e39da621174c1b03b2f325830 by nikita.ppv
[InstCombine] Use replaceOperand() in div transforms

To make sure the old operand is DCEd.

NFC apart from worklist order.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
Commit d40368fdb5e1b90e68b1078f32c283aa800238be by nikita.ppv
[InstCombine] Erase old instruction when replacing extractelements

As we are not returning the result of replaceInstUsesWith(),
so we need to clean up ourselves.

NFC apart from worklist order.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Commit c4499e333337ef67f30d81eefd044816a8cf6f29 by uday
[Attributor] Make attributor aware of aligned_alloc for heap to stack conversion

Make the attributor pass aware of aligned_alloc for converting heap
allocations to stack ones.

Depends on D76971.

Differential Revision: https://reviews.llvm.org/D76974
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/Attributor/heap_to_stack.ll
Commit 4cf70af94fbe910e64fa1d36cdd5bf7e46785795 by uday
[GVN] Make GVN aware of aligned_alloc

Make the GVN pass aware of aligned_alloc.

Depends on D76974.

Differential Revision: https://reviews.llvm.org/D76975
The file was modifiedllvm/test/Transforms/GVN/malloc-load-removal.ll
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
Commit 6ee11c3b0f3605fa45dd7457b650b2d9d1c6ea74 by uday
[NewGVN] Make NewGVN aware of aligned_alloc

Make the New GVN pass aware of aligned_alloc.

Depends on D76975.

Differential Revision: https://reviews.llvm.org/D76976
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
The file was modifiedllvm/test/Transforms/NewGVN/malloc-load-removal.ll
Commit 2a77544ad5911a38f81c0300385033fced1cc66d by nikita.ppv
[SimplifyLibCalls] Erase replaced instructions

After RAUWing an instruction, also erase it. This makes sure we
don't perform extra InstCombine iterations to clean up the garbage.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Commit 50a3e8738a90cfd4915b24c33782cf6a87216b78 by nikita.ppv
Revert "[InstCombine] Erase old instruction when replacing extractelements"

This reverts commit d40368fdb5e1b90e68b1078f32c283aa800238be.

llvm-clang-x86_64-expensive-checks-debian failure looks related.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Commit 1148f004fa35f1b74942bb1f578763d9dd79aa4a by Jonathan Roelofs
Fix PR45371: SeparateConstOffsetFromGEP clean up bookkeeping

find() was altering the UserChain, even in cases where it subsequently
discovered that the resulting constant was a 0. This confuses
rebuildWithoutConstOffset() when it attempts to walk the chain later, since it
is expected that the chain itself be a path down the use-def edges of an
expression.
The file was addedllvm/test/Transforms/SeparateConstOffsetFromGEP/pr45371-find-either-reset.ll
The file was modifiedllvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
Commit c028472fa1f0e20cc87cfa47d87fe0dd65fea830 by a.bataev
Revert "[OPENMP50]Add initial support for OpenMP 5.0 iterator."

This reverts commit f08df464ae89972a777c0a7e299a2c153a9829d8 to fix the
bug with serialization support for iterator expression.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/test/OpenMP/task_depend_messages.cpp
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/include/clang/AST/ExprOpenMP.h
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was modifiedclang/lib/AST/Type.cpp
The file was modifiedclang/lib/AST/ExprClassification.cpp
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/include/clang/AST/TextNodeDumper.h
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/AST/TypeLoc.cpp
The file was modifiedclang/include/clang/AST/ComputeDependence.h
The file was modifiedclang/test/OpenMP/task_ast_print.cpp
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/include/clang/AST/BuiltinTypes.def
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/Serialization/ASTCommon.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/test/OpenMP/depobj_messages.cpp
The file was modifiedclang/lib/AST/ComputeDependence.cpp
The file was modifiedclang/lib/AST/NSAPI.cpp
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
Commit 8431dbacd495e51f5bbb46d1af9042520098cd75 by spatel
[InstCombine] add tests for negate with xor operand; NFC
The file was modifiedllvm/test/Transforms/InstCombine/sub-of-negatible.ll
Commit 3d9004879118c734fd9a5e112fb2bf22cf647668 by spatel
[InstCombine] enhance freelyNegateValue() by handling xor

Negation is equivalent to bitwise-not + 1, so try to convert more
subtracts into adds using this relationship:
0 - (A ^ C) => ((A ^ C) ^ -1) + 1 => A ^ ~C + 1

I doubt this will recover the regression noted in rGf2fbdf76d8d0,
but seems like we're going to need to improve here and/or revive D68408?

Alive2 proofs:
http://volta.cs.utah.edu:8080/z/Re5tMU
http://volta.cs.utah.edu:8080/z/An-uns

Differential Revision: https://reviews.llvm.org/D77230
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/test/Transforms/InstCombine/sub-of-negatible.ll
Commit 123a5328f919bab8ea1344c05e9edc2c506c9d51 by alexbrachetmialot
[libc] Add sigfillset and sigdelset

Summary: Add's `sigfillset` and `sigdelset` which will be used in D76676.

Reviewers: sivachandra, PaulkaToast

Reviewed By: sivachandra

Subscribers: mgorny, MaskRay, tschuett, libc-commits

Differential Revision: https://reviews.llvm.org/D76936
The file was addedlibc/src/signal/linux/sigdelset.cpp
The file was modifiedlibc/src/signal/linux/CMakeLists.txt
The file was modifiedlibc/test/src/signal/CMakeLists.txt
The file was addedlibc/src/signal/linux/sigfillset.cpp
The file was addedlibc/src/signal/sigfillset.h
The file was addedlibc/test/src/signal/sigfillset_test.cpp
The file was modifiedlibc/src/signal/linux/signal.h
The file was addedlibc/src/signal/sigdelset.h
The file was addedlibc/test/src/signal/sigdelset_test.cpp
Commit 53e2380881076492b9124d726b6f38a7669c61cd by Lang Hames
[ORC] Add JITDylib name to debugging output when defining symbols.
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Core.h
Commit 8e5a8f620cc2ac2805fce77eddea3405329f90df by Lang Hames
[ORC] Don't require a null-terminator on MemoryBuffers for objects in archives.

The MemoryBuffer::getMemBuffer method's RequiresNullTerminator parameter
defaults to true, but object files are not null terminated so we need to
explicitly pass false here.
The file was addedllvm/test/ExecutionEngine/OrcLazy/Inputs/bar-return-i32-call-foo.ll
The file was addedllvm/test/ExecutionEngine/OrcLazy/Inputs/foo-return-i32-0.ll
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/basic-object-file-loading.ll
The file was modifiedllvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
The file was removedllvm/test/ExecutionEngine/OrcLazy/Inputs/basic-object-source.ll
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/static-library-support.ll
Commit e65e677ee4eed83a31503b1a7db3fca56f617eae by daniel_l_sanders
[globalisel][legalizer] Fix DebugLoc bugs caught by a prototype lost-location verifier

The legalizer has a tendency to lose DebugLoc's when expanding or
combining instructions. The verifier that detected these isn't ready
for upstreaming yet but this patch fixes the cases that came up when
applying it to our out-of-tree backend's CodeGen tests.

This pattern comes up a few more times in this file and probably in
the backends too but I'd prefer to fix the others separately (and
preferably when the lost-location verifier detects them).
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 30350c254106ce25b16b13f05e713ceb2b15ce09 by waltermelon
[source maps] Ensure all valid source maps are added instead of failing with the first invalid one

Summary:
Several lldb-vscode users have noticed that when a source map rule is invalid (because a folder doesn't exist anymore), the rest of the source maps from their configurations are not applied.
This happens because lldb-vscode executes a single "settings set target.source-map" command with all the source maps and LLDB processes them one by one until one fails.

Instead of doing this, we can process in LLDB all the source map rules and apply the valid ones instead of failing fast.

Reviewers: clayborg, labath, kusmour, aadsm

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D77186
The file was modifiedlldb/source/Interpreter/OptionValuePathMappings.cpp
The file was modifiedlldb/test/API/functionalities/source-map/TestTargetSourceMap.py
Commit f1242ec54306c5fbdc9a907e936be899a0ad21ee by walter erquinigo
[intel-pt] Implement a basic test case

Summary:
Depends on D76872.

There was no test for the Intel PT support on LLDB, so I'm creating one, which
will help making progress on solid grounds.

The test is skipped if the Intel PT plugin library is not built.

Reviewers: clayborg, labath, kusmour, aadsm

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D77107
The file was modifiedlldb/tools/intel-features/intel-pt/cli-wrapper-pt.cpp
The file was addedlldb/test/API/tools/intel-features/intel-pt/test/TestIntelPTSimpleBinary.py
The file was addedlldb/test/API/tools/intel-features/intel-pt/test/Makefile
The file was addedlldb/test/API/tools/intel-features/intel-pt/test/main.cpp
Commit db92719c1d17f5052e7cd1309b0e1e92240f47be by dblaikie
DebugInfo: Defaulted non-type template parameters of bool type

Caused an assertion due to mismatched bit widths - this seems like the
right API to use for a possibly width-varying equality test. Though
certainly open to some post-commit review feedback if there's a more
suitable way to do this comparison/test.
The file was modifiedclang/test/CodeGenCXX/debug-info-template-parameter.cpp
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit 6e916b5860950fee2661ded847abe551f5259ec4 by aaron
Updating the documentation for the noescape attribute.

A question came up from a glibc maintainer as to whether it was permissible to
free a pointer marked [[clang::noescape]], and after investigation, I
determined that this is allowed. This updates the documentation in case others
have the same question.
The file was modifiedclang/include/clang/Basic/AttrDocs.td
Commit 8ba8a4a14d417abd4a104c0f8b5ec289ed0a1b16 by walter erquinigo
Revert "[intel-pt] Implement a basic test case"

This reverts commit f1242ec54306c5fbdc9a907e936be899a0ad21ee.
The file was removedlldb/test/API/tools/intel-features/intel-pt/test/TestIntelPTSimpleBinary.py
The file was removedlldb/test/API/tools/intel-features/intel-pt/test/Makefile
The file was removedlldb/test/API/tools/intel-features/intel-pt/test/main.cpp
The file was modifiedlldb/tools/intel-features/intel-pt/cli-wrapper-pt.cpp
Commit 92e563bc05d425c4667c44ce363f5db39cc3a25b by Louis Dionne
[libc++] SSH: Create a tarball of dependencies and scp that instead

The benefit of doing this is that we can now handle directories that
contain symlinks and other arbitrary things, such as the static_test_env
required by filesystem tests.

As a fly-by fix, we also accumulate several commands to perform over SSH
and execute them at once instead of SSHing several times. This should be
faster on average.
The file was modifiedlibcxx/utils/ssh.py
Commit c911cc6c49394909a335c8d7baffcfd8bdcc424b by walter erquinigo
[intel-pt] Implement a basic test case

Summary:
Depends on D76872.

There was no test for the Intel PT support on LLDB, so I'm creating one, which
will help making progress on solid grounds.

The test is skipped if the Intel PT plugin library is not built.

Reviewers: clayborg, labath, kusmour, aadsm

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D77107
The file was addedlldb/test/API/tools/intel-features/intel-pt/test/main.cpp
The file was addedlldb/test/API/tools/intel-features/intel-pt/test/Makefile
The file was modifiedlldb/tools/intel-features/intel-pt/cli-wrapper-pt.cpp
The file was addedlldb/test/API/tools/intel-features/intel-pt/test/TestIntelPTSimpleBinary.py
Commit 064c634ef3d44e7b50db86ec0d1f64e718b6dfe4 by walter erquinigo
Revert "[intel-pt] Implement a basic test case"

This reverts commit c911cc6c49394909a335c8d7baffcfd8bdcc424b.
The file was removedlldb/test/API/tools/intel-features/intel-pt/test/Makefile
The file was removedlldb/test/API/tools/intel-features/intel-pt/test/main.cpp
The file was modifiedlldb/tools/intel-features/intel-pt/cli-wrapper-pt.cpp
The file was removedlldb/test/API/tools/intel-features/intel-pt/test/TestIntelPTSimpleBinary.py
Commit 8bf1583b71d7ecd857ddb8286e3ae59a2418747d by riddleriver
[mlir] Move LLVMPassIncGen to LLVMIR/Transforms/CMakeLists.txt

This fixes a build error with the make generator for a missing
sub-directory.
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/LLVMIR/Transforms/CMakeLists.txt
Commit 5e8093134af282765989be7ad213a105fe0ca3b4 by uday
[MLIR] Add method to drop duplicate result exprs from AffineMap

Add a method that given an affine map returns another with just its unique
results. Use this to drop redundant bounds in max/min for affine.for. Update
affine.for's canonicalization pattern and createCanonicalizedForOp to use
this.

Differential Revision: https://reviews.llvm.org/D77237
The file was modifiedmlir/include/mlir/IR/AffineMap.h
The file was modifiedmlir/test/Dialect/Affine/canonicalize.mlir
The file was modifiedmlir/lib/Dialect/Affine/IR/AffineOps.cpp
The file was modifiedmlir/include/mlir/Transforms/LoopUtils.h
The file was modifiedmlir/test/Conversion/AffineToStandard/lower-affine.mlir
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/lib/IR/AffineMap.cpp
Commit 7c771631c6f7e1e09a9ba1421adb83a98596cf35 by uday
[MLIR][NFC] drop unnecessary matches in affine dma generate test case

Drop unnecessary matches in affine DMA generate test case.

Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77243
The file was modifiedmlir/test/Dialect/Affine/dma-generate.mlir
Commit f203100ebe22bf97a4268a562cdbef22d14db915 by Vedant Kumar
Reapply: [Host.mm] Check for the right macro instead of inlining it

Previously, this was reverted in bf65f19b becuase it checked whether
TARGET_OS_EMBEDDED is defined, but that macro is always defined.

Update the condition to check that TARGET_OS_OSX is true.
The file was modifiedlldb/source/Host/macosx/objcxx/Host.mm
Commit 296ccef70363df9195bc678ad5501dd44de7f8fb by sbc
[WebAssembly] EmscriptenEHSjLj: Mark __invoke_ functions as imported

This means the linker will be expect them be undefined at link time an
will generate imports from the `env` module rather than reporting
undefined externals.

Differential Revision: https://reviews.llvm.org/D77192
The file was modifiedllvm/test/CodeGen/WebAssembly/lower-em-sjlj.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
Commit e6a39f00e8d0cd3684df54fb03d288efe2969202 by zoecarver
[libcxx] Stop using builtin type traits for is_floating_point and is_arithmetic.

Based on an issue brought up in https://reviews.llvm.org/D67900, this commit reverts the changes to is_floating_point and  is_arithmetic made in D67900.

After D67900 landed, __float128 behaved differently in those two type traits, causing compiler errors in numeric limits (and possibly others).
The file was modifiedlibcxx/include/type_traits
Commit f4754ea0ed7ddc35042bacbc47d661bfe660f132 by Adrian Prantl
Remove const qualifier from Modules returned by ExternalASTSource. (NFC)

This API is used by LLDB to attach owning module information to
Declarations deserialized from DWARF.

Differential Revision: https://reviews.llvm.org/D75561
The file was modifiedclang/include/clang/Basic/Module.h
The file was modifiedclang/lib/Basic/Module.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
Commit 4354dfbdf5c8510a7ddff10ae67a28e16cf7cc79 by Adrian Prantl
Preserve the owning module information from DWARF in the synthesized AST

Types that came from a Clang module are nested in DW_TAG_module tags
in DWARF. This patch recreates the Clang module hierarchy in LLDB and
sets the owning module information accordingly. My primary motivation
is to facilitate looking up per-module APINotes for individual
declarations, but this likely also has other applications.

rdar://problem/59634380

Differential Revision: https://reviews.llvm.org/D75488
The file was modifiedlldb/include/lldb/Symbol/TypeSystem.h
The file was modifiedlldb/source/Symbol/CompilerType.cpp
The file was modifiedlldb/unittests/Symbol/TestTypeSystemClang.cpp
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was modifiedlldb/source/Symbol/TypeSystem.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was addedlldb/test/Shell/SymbolFile/DWARF/Inputs/ModuleOwnership/B.h
The file was modifiedlldb/source/Plugins/SystemRuntime/MacOSX/SystemRuntimeMacOSX.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExternalASTSourceCallbacks.h
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
The file was modifiedlldb/source/Plugins/Language/ObjC/NSDictionary.cpp
The file was modifiedlldb/source/Symbol/Type.cpp
The file was addedlldb/test/Shell/SymbolFile/DWARF/Inputs/ModuleOwnership/A.h
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
The file was addedlldb/test/Shell/SymbolFile/DWARF/module-ownership.mm
The file was addedlldb/test/Shell/SymbolFile/DWARF/Inputs/ModuleOwnership/module.modulemap
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/unittests/TestingSupport/Symbol/ClangTestUtils.h
The file was modifiedlldb/test/Shell/SymbolFile/DWARF/lit.local.cfg
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExternalASTSourceCallbacks.cpp
The file was modifiedlldb/include/lldb/Symbol/CompilerType.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
Commit 6cd673345cfa7b1dc25568ac9fd45e23402bbd02 by johannes
[LangRef][AliasAnalysis] Clarify `noalias` affects only modified objects

We already mention that `noalias` is modeled after the C99 `restrict`
qualifier but we did omit one important requirement in the description.
For the restrict guarantees the object affected has to be modified
during the execution of the function, in any way (see 6.7.3.1.4 in [0]).

There are two reasons we want this restriction as well:
  1) To match the `restrict` semantics when we lower it to `noalias`.
  2) To allow the reasoning that the object pointed to by a `noalias`
     pointer is not modified through means not derived from this
     pointer. Hence, following the uses of that pointer is sufficient
     to determine potential modifications.

The discussion on this came up as part of D73428. In that patch the
Attributor is taught to derive `noalias` for call site arguments based
on alias queries against objects that are accessed in the callee. This
is possible even if the pointer passed at the call site was "not-`noalias`".
To simplify the logic there *and* to allow the use of `noalias` as
described in 2) above, it is beneficial to follow the C `restrict`
semantics in cases where there might be "read-read-aliases". Note that
AliasAnalysis* queries for read only objects already result in
`NoAlias` even if the pointers might "alias".

* From this point of view our Alias Analysis is basically a Dependence
   Analysis.

[0] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D74935
The file was modifiedllvm/docs/LangRef.rst
Commit 41f2a57d0bc1c54cefc3145102632fc5e767d953 by johannes
[Attributor][NFC] Use a BumpPtrAllocator to allocate `AbstractAttribute`s

We create a lot of AbstractAttributes and they live as long as
the Attributor does. It seems reasonable to allocate them via a
BumpPtrAllocator owned by the Attributor.

Reviewed By: baziotis

Differential Revision: https://reviews.llvm.org/D76589
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 32672b877dc1e05bc4489f2f4598f5472bc60576 by Adrian Prantl
Revert "Preserve the owning module information from DWARF in the synthesized AST"

This reverts commit 4354dfbdf5c8510a7ddff10ae67a28e16cf7cc79 while investigating bot fallout.
The file was modifiedlldb/source/Symbol/TypeSystem.cpp
The file was modifiedlldb/test/Shell/SymbolFile/DWARF/lit.local.cfg
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
The file was modifiedlldb/include/lldb/Symbol/CompilerType.h
The file was modifiedlldb/source/Symbol/CompilerType.cpp
The file was modifiedlldb/unittests/TestingSupport/Symbol/ClangTestUtils.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
The file was modifiedlldb/unittests/Symbol/TestTypeSystemClang.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Plugins/SystemRuntime/MacOSX/SystemRuntimeMacOSX.cpp
The file was removedlldb/test/Shell/SymbolFile/DWARF/Inputs/ModuleOwnership/module.modulemap
The file was modifiedlldb/include/lldb/Symbol/TypeSystem.h
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was removedlldb/test/Shell/SymbolFile/DWARF/Inputs/ModuleOwnership/B.h
The file was removedlldb/test/Shell/SymbolFile/DWARF/Inputs/ModuleOwnership/A.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExternalASTSourceCallbacks.cpp
The file was modifiedlldb/source/Symbol/Type.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/Language/ObjC/NSDictionary.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExternalASTSourceCallbacks.h
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
The file was removedlldb/test/Shell/SymbolFile/DWARF/module-ownership.mm
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
Commit 0071eaaf0892d7ef733578312abefdcf84311071 by Lang Hames
[ORC] Export __cxa_atexit from the main JITDylib in LLJIT.

Failure to export __cxa_atexit can lead to an attempt to import a definition
from the process itself (if __cxa_atexit is referenced from another JITDylib),
but the process definition will clash with the existing non-exported definition
to produce an unexpected DuplicateDefinitionError.

This patch fixes the immediate issue by exporting __cxa_atexit. It also fixes a
bug where atexit functions in other JITDylibs were not being run by adding a
copy of run_atexits_helper to every JITDylib.

A follow up patch will deal with the bug where definition generators are called
despite a non-exported definition being present.
The file was modifiedllvm/lib/ExecutionEngine/Orc/LLJIT.cpp
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll
Commit df88d80337d5e0ee0e50ca599d6436854951d8fa by Louis Dionne
[libc++] Add missing FILE_DEPENDENCIES markup
The file was modifiedlibcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/pbackfail.pass.cpp
Commit ff09135fc2b7a9696f87a8a8e89be2ef777895d3 by Louis Dionne
[libc++] Execute tests from the Lit execution root instead of the test tree

Instead of executing tests from within the libc++ test suite, we execute
them from the Lit execution directory. However, since some tests have
file dependencies, we must copy those dependencies to the execution
directory where they are executed.

This has the major benefit that if a test modifies a file (whether it
is wanted or not), other tests will not see those modifications. This
is good because current tests assume that input data is never modified,
however this could be an incorrect assumption if some test does not
behave properly.
The file was modifiedlibcxx/utils/libcxx/test/config.py
The file was modifiedlibcxx/utils/run.py
The file was modifiedlibcxx/utils/libcxx/test/executor.py
The file was modifiedlibcxx/utils/libcxx/test/format.py
Commit 5767085c8de97d15d7fb5433f22bb5b858cc4f3a by Yaxun.Liu
Fix infinite recursion in deferred diag emitter

Currently deferred diagnostic emitter checks variable decl in DeclRefExpr, which
causes infinite recursion for cases like long a = (long)&a;.

Deferred diagnostic emitter does not need check variable decls in DeclRefExpr
since reference of a variable does not cause emission of functions directly or
indirectly. Therefore there is no need to check variable decls in DeclRefExpr.

Differential Revision: https://reviews.llvm.org/D76937
The file was modifiedclang/test/OpenMP/nvptx_target_exceptions_messages.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
Commit f7f932284352a6a57701f64575dc13263d234bf4 by johannes
[Attributor][NFC] Cleanup leftover check lines
The file was modifiedllvm/test/Transforms/Attributor/range.ll
Commit b1c788d051872020450cb9d6ebd6336bc72b3812 by johannes
[Attributor][FIX] Prevent alignment breakage wrt. must-tail calls

If we have a must-tail call the callee and caller need to have matching
ABIs. Part of that is alignment which we might modify when we deduce
alignment of arguments of either. Since we would need to keep them in
sync, which is not as simple, we simply avoid deducing alignment for
arguments of the must-tail caller or callee.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D76673
The file was modifiedllvm/test/Transforms/Attributor/align.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit 5bac8d427d59bd2f25e51980ddbe18017bc45493 by thakis
Revert "[ORC] Export __cxa_atexit from the main JITDylib in LLJIT."

This reverts commit 0071eaaf0892d7ef733578312abefdcf84311071.
Inputs/noop-main.ll wasn't checked in, so this breaks check-llvm
everywhere.
The file was modifiedllvm/lib/ExecutionEngine/Orc/LLJIT.cpp
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll
Commit 9e19693994dce2f3f897ee90aa25296bc0e786c0 by johannes
[Attributor] Derive better alignment for accessed pointers

Use DL & ABI information for better alignment deduction, e.g., if a type
is accessed and the ABI specifies an alignment requirement for such an
access we can use it. This is based on a patch by @lebedev.ri and
inspired by getBaseAlign in Loads.cpp.

Depends on D76673.

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D76674
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/chained.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/sret.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/attrs.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/2008-07-02-array-indexing.ll
The file was modifiedllvm/test/Transforms/Attributor/dereferenceable-2.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/byval-2.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/musttail.ll
The file was modifiedllvm/test/Transforms/Attributor/readattrs.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/Attributor/range.ll
The file was modifiedllvm/test/Transforms/Attributor/dereferenceable-1.ll
The file was modifiedllvm/test/Transforms/Attributor/heap_to_stack.ll
The file was modifiedllvm/test/Transforms/Attributor/callbacks.ll
The file was modifiedllvm/test/Transforms/Attributor/value-simplify.ll
The file was modifiedllvm/test/Transforms/Attributor/misc.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/X86/min-legal-vector-width.ll
Commit 54d6a608bf81952fa042b101c31f58e8bfa9b1fd by johannes
[Attributor][NFC] Predetermine the module

It could happen that we delete the first function in the SCC in the
future so we should be careful accessing `Functions` after the manifest
stage.
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit a8b2fed0aef99be3efd11f8eec26df5a7d42fde2 by johannes
[Utils][FIX] Properly deal with occasionally deleted functions

While D68850 allowed functions to be deleted I accidentally saved some
version of the function to be used once a suitable prefix was found.
This turned out to be problematic when the occasionally deleted function
is also occasionally modified. The test case is adjusted to resemble the
case in which the problem was found.

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D76586
The file was modifiedllvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/sometimes_deleted_function.ll.expected
The file was modifiedllvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/sometimes_deleted_function.ll
The file was modifiedllvm/utils/UpdateTestChecks/common.py
Commit ac96c8fd8535b50ab5ac158f521b0be8800df6fd by johannes
[Attributor][FIX] Do not compute ranges for arguments of declarations

This cannot be triggered right now, as far as I know, but it doesn't
make sense to deduce a constant range on arguments of declarations.
Exposed during testing of AAValueSimplify extensions.
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit bcd8009369f86be8649307692f5ba57aad5ca29b by johannes
[Attributor] Use the proper context instruction in genericValueTraversal

There was a TODO in genericValueTraversal to provide the context
instruction and due to the lack of it users that wanted one just used
something available. Unfortunately, using a fixed instruction is wrong
in the presence of PHIs so we need to update the context instruction
properly.

Reviewed By: uenoku

Differential Revision: https://reviews.llvm.org/D76870
The file was modifiedllvm/test/Transforms/Attributor/range.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 7f5fe30a150e7e87d3fbe4da4ab0e76ec38b40b9 by nathan
[cmake] Only set deps for an ExternalProject if the type is executable or library

Summary:
cmake fails with an error when attempting to evaluate $<TARGET_FILE:tgt>
where `tgt` is defined via an `add_custom_target` and thus the `TYPE`
is `UTILITY`. Requesting a TARGET_FILE only works on an `EXECUTABLE`
or one of a few differetnt types of `X_LIBRARY` (e.g. added via
`add_library` or `add_executable`). The logic as implemented in cmake
is below:

  enum TargetType
  {
    EXECUTABLE,
    STATIC_LIBRARY,
    SHARED_LIBRARY,
    MODULE_LIBRARY,
    OBJECT_LIBRARY,
    UTILITY,
    GLOBAL_TARGET,
    INTERFACE_LIBRARY,
    UNKNOWN_LIBRARY
  };

  if (target->GetType() >= cmStateEnums::OBJECT_LIBRARY &&
      target->GetType() != cmStateEnums::UNKNOWN_LIBRARY) {
    ::reportError(context, content->GetOriginalExpression(),
                  "Target \"" + name +
                    "\" is not an executable or library.");
    return nullptr;
  }

This has always been the case back to at least 3.12 (furthest I
checked) but this is causing a new failure in cmake 3.17 while
evaluating ExternalProjectAdd.

Subscribers: mgorny, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77284
The file was modifiedllvm/cmake/modules/LLVMExternalProjectUtils.cmake
Commit 2ede5dccffa5f62d3f13eca603bc3ad0e73b7514 by serguei.katkov
[DOC] Remove too strong restriction for ‘llvm.experimental.gc.statepoint’ Intrinsic

The requirement for deopt parameter to be in gc parameter if it can
be modified by GC is very strong and difficult to follow.

The key example of why this can't work:
%p1 = bitcast i8* %p to i8*
statepoint [gc = (%p1)], [deopt = (%p1)]

The optimizer is allowed to replace either use (or both) of %p1 with %p.
If it updates only one of the two (entirely legal), the two sets do not overlap.

So this change removes the strong wording.

Reviewers: reames, dantrushin
Reviewed By: reames
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D77122
The file was modifiedllvm/docs/Statepoints.rst
Commit af1b7d06d9e45c7e20540aa3bf81f1be5befaa0f by emaste
Correct copy-pasteo in lua script language description
The file was modifiedlldb/source/Commands/CommandObjectWatchpointCommand.cpp
Commit b0b1f451ae693703acf7fb73ba5a772aaa070d67 by ikudrin
[LLD][ELF] Follow the common pattern in a message about an undefined vtable symbol.

In most cases, LLD prints its multiline diagnostic messages starting
additional lines with ">>> ". That greatly helps external tools to parse
the output, simplifying combining several lines of the log back into one
message. The patch fixes the only message I found that does not follow
the common pattern.

Differential Revision: https://reviews.llvm.org/D77132
The file was modifiedlld/test/ELF/undef.s
The file was modifiedlld/ELF/Relocations.cpp
Commit d1705c1196fedfe927716923ac121f1134924a36 by johannes
[CUDA][NFC] Split math.h functions out of __clang_cuda_device_functions.h

This is not supported to change anything but allow us to reuse the math
functions separately from the device functions, e.g., source them at
different times. This will be used by the OpenMP overlay.

This also adds two `return` keywords that were missing.

Reviewed By: tra

Differential Revision: https://reviews.llvm.org/D77238
The file was modifiedclang/lib/Headers/__clang_cuda_device_functions.h
The file was modifiedclang/lib/Headers/CMakeLists.txt
The file was addedclang/lib/Headers/__clang_cuda_math.h
The file was modifiedclang/lib/Headers/__clang_cuda_runtime_wrapper.h
Commit c9ae3c5e10796252a7938ac9fa1503481ef2c197 by Vitaly Buka
[openmp] Disable tests flaky on Debian

https://bugs.llvm.org/show_bug.cgi?id=45397
The file was modifiedopenmp/runtime/test/tasking/omp_task_depend_resize_hashmap.c
The file was modifiedopenmp/runtime/test/tasking/bug_proxy_task_dep_waiting.c
The file was modifiedopenmp/runtime/test/tasking/bug_nested_proxy_task.c
Commit 410cfc478f3540d3f07bba920fa3bf99409f6bda by johannes
[OpenMP][FIX] Add second include after header was split in d1705c1196

The math wrapper handling is going to be replaced shortly and
d1705c1196fedfe927716923ac121f1134924a36 was actually a precursor for
that.
The file was modifiedclang/lib/Headers/openmp_wrappers/__clang_openmp_math_declares.h
Commit 85adce3d73589adc5f6ae486ebd035238fb20ac5 by maskray
[PPCInstPrinter] Change B to print the target address in hexadecimal form

Follow-up of D76591 and D76907
The file was modifiedlld/test/ELF/ppc32-call-stub-nopic.s
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedlld/test/ELF/ppc32-canonical-plt.s
The file was modifiedllvm/test/CodeGen/PowerPC/alignlongjumptest.mir
The file was modifiedlld/test/ELF/ppc32-call-stub-pic.s
The file was modifiedlld/test/ELF/ppc64-reloc-rel.s
The file was modifiedlld/test/ELF/ppc64-toc-restore.s
The file was modifiedllvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
The file was modifiedlld/test/ELF/ppc32-local-branch.s
The file was modifiedlld/test/ELF/ppc32-reloc-rel.s
The file was modifiedlld/test/ELF/ppc64-call-reach.s
The file was modifiedllvm/test/tools/llvm-objdump/ELF/PowerPC/branch-offset.s
Commit cbd3969e8cd13aba23e843ab72b8807d68804f71 by maskray
[PPCInstPrinter] Delete an unneeded overload of printBranchOperand. NFC

It was added by D76591 for migration purposes (not all
printBranchOperand users have migrated to the overload with `uint64_t Address`).
Now that all have been migrated, the parameter can go away.
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.h
Commit 61e89737c5daf7b65341936f88f68efb680cdcd4 by Louis Dionne
[libc++] Simplify the configuration of the C++ ABI library

This commit removes support for building against the system libc++abi,
which was supported on Apple platforms. This is basically never what we
want to do, since libc++ and libc++abi are coupled and building a trunk
libc++ against an older libc++abi can lead to incompatibilities (and
good luck debugging them!). It might have made some sense to support
that when the monorepo did not exist, however I don't think this is
anything but a footgun nowadays.

Furthermore, based on the newly-made assumption that we're building
against the monorepo libc++abi, we can simplify the search path logic
for finding libc++abi.

This area of our build system has a lot of technical debt accumulated,
and it's surprisingly difficult to change. We've tried different things
and failed several times in the past. I did test this change on our
Docker image for the build bots and on Apple platforms, however it is
possible that this breaks some unknown configuration, in which case it
should be fine to revert this (so we can try again!).
The file was modifiedlibcxx/cmake/Modules/HandleLibCXXABI.cmake
The file was modifiedlibcxx/CMakeLists.txt
Commit de22d7154b4a1400c3b19e3df107a7e178c3a604 by lebedev.ri
[llvm-exegesis] 'Min' repetition mode

Summary:
As noted in documentation, different repetition modes have different trade-offs:

> .. option:: -repetition-mode=[duplicate|loop]
>
>  Specify the repetition mode. `duplicate` will create a large, straight line
>  basic block with `num-repetitions` copies of the snippet. `loop` will wrap
>  the snippet in a loop which will be run `num-repetitions` times. The `loop`
>  mode tends to better hide the effects of the CPU frontend on architectures
>  that cache decoded instructions, but consumes a register for counting
>  iterations.

Indeed. Example:

>>! In D74156#1873657, @lebedev.ri wrote:
> At least for `CMOV`, i'm seeing wildly different results
> |           | Latency | RThroughput |
> | duplicate | 1       | 0.8         |
> | loop      | 2       | 0.6         |
> where latency=1 seems correct, and i'd expect the througput to be close to 1/2 (since there are two execution units).

This isn't great for analysis, at least for schedule model development.

As discussed in excruciating detail in

>>! In D74156#1924514, @gchatelet wrote:
>>>! In D74156#1920632, @lebedev.ri wrote:
>> ... did that explanation of the question i'm having made any sense?
>
> Thx for digging in the conversation !
> Ok it makes more sense now.
>
> I discussed it a bit with @courbet:
>  - We want the analysis tool to stay simple so we'd rather not make it knowledgeable of the repetition mode.
>  - We'd like to still be able to select either repetition mode to dig into special cases
>
> So we could add a third `min` repetition mode that would run both and take the minimum. It could be the default option.
> Would you have some time to look what it would take to add this third mode?

there appears to be an agreement that it is indeed sub-par,
and that we should provide an optional, measurement (not analysis!) -time
way to rectify the situation.

However, the solutions isn't entirely straight-forward.

We can just add an actual 'multiplexer' `MinSnippetRepetitor`, because
if we just concatenate snippets produced by `DuplicateSnippetRepetitor`
and `LoopSnippetRepetitor` and run+measure that, the measurement will
naturally be different from what we'd get by running+measuring
them separately and taking the min.
([[ https://www.wolframalpha.com/input/?i=%28x%2By%29%2F2+%21%3D+min%28x%2C+y%29 | `time(D+L)/2 != min(time(D), time(L))` ]])

Also, it seems best to me to have a single snippet instead of generating
a snippet per repetition mode, since the only difference here is that the
loop repetition mode reserves one register for loop counter.

As far as i can tell, we can either teach `BenchmarkRunner::runConfiguration()`
to produce a single report given multiple repetitors (as in the patch),
or do that one layer higher - don't modify `BenchmarkRunner::runConfiguration()`,
produce multiple reports, don't actually print each one, but aggregate them somehow
and only print the final one.

Initially i've gone ahead with the latter approach, but it didn't look like a natural fit;
the former (as in the diff) does seem like a better fit to me.

There's also a question of the test coverage. It sure currently does work here:
```
$ ./bin/llvm-exegesis --opcode-name=CMOV64rr --mode=inverse_throughput --repetition-mode=duplicate
Check generated assembly with: /usr/bin/objdump -d /tmp/snippet-8fb949.o
---
mode:            inverse_throughput
key:
  instructions:
    - 'CMOV64rr RAX RAX R11 i_0x0'
    - 'CMOV64rr RBP RBP R15 i_0x0'
    - 'CMOV64rr RBX RBX RBX i_0x0'
    - 'CMOV64rr RCX RCX RBX i_0x0'
    - 'CMOV64rr RDI RDI R10 i_0x0'
    - 'CMOV64rr RDX RDX RAX i_0x0'
    - 'CMOV64rr RSI RSI RAX i_0x0'
    - 'CMOV64rr R8 R8 R8 i_0x0'
    - 'CMOV64rr R9 R9 RDX i_0x0'
    - 'CMOV64rr R10 R10 RBX i_0x0'
    - 'CMOV64rr R11 R11 R14 i_0x0'
    - 'CMOV64rr R12 R12 R9 i_0x0'
    - 'CMOV64rr R13 R13 R12 i_0x0'
    - 'CMOV64rr R14 R14 R15 i_0x0'
    - 'CMOV64rr R15 R15 R13 i_0x0'
  config:          ''
  register_initial_values:
    - 'RAX=0x0'
    - 'R11=0x0'
    - 'EFLAGS=0x0'
    - 'RBP=0x0'
    - 'R15=0x0'
    - 'RBX=0x0'
    - 'RCX=0x0'
    - 'RDI=0x0'
    - 'R10=0x0'
    - 'RDX=0x0'
    - 'RSI=0x0'
    - 'R8=0x0'
    - 'R9=0x0'
    - 'R14=0x0'
    - 'R12=0x0'
    - 'R13=0x0'
cpu_name:        bdver2
llvm_triple:     x86_64-unknown-linux-gnu
num_repetitions: 10000
measurements:
  - { key: inverse_throughput, value: 0.819, per_snippet_value: 12.285 }
error:           ''
info:            instruction has tied variables, using static renaming.
assembled_snippet: 5541574156415541545348B8000000000000000049BB00000000000000004883EC08C7042400000000C7442404000000009D48BD000000000000000049BF000000000000000048BB000000000000000048B9000000000000000048BF000000000000000049BA000000000000000048BA000000000000000048BE000000000000000049B8000000000000000049B9000000000000000049BE000000000000000049BC000000000000000049BD0000000000000000490F40C3490F40EF480F40DB480F40CB490F40FA480F40D0480F40F04D0F40C04C0F40CA4C0F40D34D0F40DE4D0F40E14D0F40EC4D0F40F74D0F40FD490F40C35B415C415D415E415F5DC3
...
$ ./bin/llvm-exegesis --opcode-name=CMOV64rr --mode=inverse_throughput --repetition-mode=loop
Check generated assembly with: /usr/bin/objdump -d /tmp/snippet-051eb3.o
---
mode:            inverse_throughput
key:
  instructions:
    - 'CMOV64rr RAX RAX R11 i_0x0'
    - 'CMOV64rr RBP RBP RSI i_0x0'
    - 'CMOV64rr RBX RBX R9 i_0x0'
    - 'CMOV64rr RCX RCX RSI i_0x0'
    - 'CMOV64rr RDI RDI RBP i_0x0'
    - 'CMOV64rr RDX RDX R9 i_0x0'
    - 'CMOV64rr RSI RSI RDI i_0x0'
    - 'CMOV64rr R9 R9 R12 i_0x0'
    - 'CMOV64rr R10 R10 R11 i_0x0'
    - 'CMOV64rr R11 R11 R9 i_0x0'
    - 'CMOV64rr R12 R12 RBP i_0x0'
    - 'CMOV64rr R13 R13 RSI i_0x0'
    - 'CMOV64rr R14 R14 R14 i_0x0'
    - 'CMOV64rr R15 R15 R10 i_0x0'
  config:          ''
  register_initial_values:
    - 'RAX=0x0'
    - 'R11=0x0'
    - 'EFLAGS=0x0'
    - 'RBP=0x0'
    - 'RSI=0x0'
    - 'RBX=0x0'
    - 'R9=0x0'
    - 'RCX=0x0'
    - 'RDI=0x0'
    - 'RDX=0x0'
    - 'R12=0x0'
    - 'R10=0x0'
    - 'R13=0x0'
    - 'R14=0x0'
    - 'R15=0x0'
cpu_name:        bdver2
llvm_triple:     x86_64-unknown-linux-gnu
num_repetitions: 10000
measurements:
  - { key: inverse_throughput, value: 0.6083, per_snippet_value: 8.5162 }
error:           ''
info:            instruction has tied variables, using static renaming.
assembled_snippet: 5541574156415541545348B8000000000000000049BB00000000000000004883EC08C7042400000000C7442404000000009D48BD000000000000000048BE000000000000000048BB000000000000000049B9000000000000000048B9000000000000000048BF000000000000000048BA000000000000000049BC000000000000000049BA000000000000000049BD000000000000000049BE000000000000000049BF000000000000000049B80200000000000000490F40C3480F40EE490F40D9480F40CE480F40FD490F40D1480F40F74D0F40CC4D0F40D34D0F40D94C0F40E54C0F40EE4D0F40F64D0F40FA4983C0FF75C25B415C415D415E415F5DC3
...
$ ./bin/llvm-exegesis --opcode-name=CMOV64rr --mode=inverse_throughput --repetition-mode=min
Check generated assembly with: /usr/bin/objdump -d /tmp/snippet-c7a47d.o
Check generated assembly with: /usr/bin/objdump -d /tmp/snippet-2581f1.o
---
mode:            inverse_throughput
key:
  instructions:
    - 'CMOV64rr RAX RAX R11 i_0x0'
    - 'CMOV64rr RBP RBP R10 i_0x0'
    - 'CMOV64rr RBX RBX R10 i_0x0'
    - 'CMOV64rr RCX RCX RDX i_0x0'
    - 'CMOV64rr RDI RDI RAX i_0x0'
    - 'CMOV64rr RDX RDX R9 i_0x0'
    - 'CMOV64rr RSI RSI RAX i_0x0'
    - 'CMOV64rr R9 R9 RBX i_0x0'
    - 'CMOV64rr R10 R10 R12 i_0x0'
    - 'CMOV64rr R11 R11 RDI i_0x0'
    - 'CMOV64rr R12 R12 RDI i_0x0'
    - 'CMOV64rr R13 R13 RDI i_0x0'
    - 'CMOV64rr R14 R14 R9 i_0x0'
    - 'CMOV64rr R15 R15 RBP i_0x0'
  config:          ''
  register_initial_values:
    - 'RAX=0x0'
    - 'R11=0x0'
    - 'EFLAGS=0x0'
    - 'RBP=0x0'
    - 'R10=0x0'
    - 'RBX=0x0'
    - 'RCX=0x0'
    - 'RDX=0x0'
    - 'RDI=0x0'
    - 'R9=0x0'
    - 'RSI=0x0'
    - 'R12=0x0'
    - 'R13=0x0'
    - 'R14=0x0'
    - 'R15=0x0'
cpu_name:        bdver2
llvm_triple:     x86_64-unknown-linux-gnu
num_repetitions: 10000
measurements:
  - { key: inverse_throughput, value: 0.6073, per_snippet_value: 8.5022 }
error:           ''
info:            instruction has tied variables, using static renaming.
assembled_snippet: 5541574156415541545348B8000000000000000049BB00000000000000004883EC08C7042400000000C7442404000000009D48BD000000000000000049BA000000000000000048BB000000000000000048B9000000000000000048BA000000000000000048BF000000000000000049B9000000000000000048BE000000000000000049BC000000000000000049BD000000000000000049BE000000000000000049BF0000000000000000490F40C3490F40EA490F40DA480F40CA480F40F8490F40D1480F40F04C0F40CB4D0F40D44C0F40DF4C0F40E74C0F40EF4D0F40F14C0F40FD490F40C3490F40EA5B415C415D415E415F5DC35541574156415541545348B8000000000000000049BB00000000000000004883EC08C7042400000000C7442404000000009D48BD000000000000000049BA000000000000000048BB000000000000000048B9000000000000000048BA000000000000000048BF000000000000000049B9000000000000000048BE000000000000000049BC000000000000000049BD000000000000000049BE000000000000000049BF000000000000000049B80200000000000000490F40C3490F40EA490F40DA480F40CA480F40F8490F40D1480F40F04C0F40CB4D0F40D44C0F40DF4C0F40E74C0F40EF4D0F40F14C0F40FD4983C0FF75C25B415C415D415E415F5DC3
...
```
but i open to suggestions as to how test that.

I also have gone with the suggestion to default to this new mode.
This was irking me for some time, so i'm happy to finally see progress here.
Looking forward to feedback.

Reviewers: courbet, gchatelet

Reviewed By: courbet, gchatelet

Subscribers: mstojanovic, RKSimon, llvm-commits, courbet, gchatelet

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76921
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.h
The file was modifiedllvm/docs/CommandGuide/llvm-exegesis.rst
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/SnippetRepetitor.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkResult.h
The file was modifiedllvm/tools/llvm-exegesis/llvm-exegesis.cpp
Commit b0b5f0416be60152ddc8d606b1720daba0005518 by johannes
[OpenMP][FIX] Undo changes accidentally already introduced in NFC commit

In d1705c1196fe (D77238) we accidentally included subsequent changes and
did not only move the code into a new file (which was the intention).
We undo the changes now and re-introduce them with the appropriate test
changes later.
The file was modifiedclang/lib/Headers/__clang_cuda_math.h
Commit c18d55998b3352e6ec92ccb8a3240a16a57c61e6 by johannes
[OpenMP][NFCI] Move OpenMP clause information to `lib/Frontend/OpenMP`

This is a cleanup and normalization patch that also enables reuse with
Flang later on. A follow up will clean up and move the directive ->
clauses mapping.

Differential Revision: https://reviews.llvm.org/D77112
The file was modifiedclang/lib/ASTMatchers/Dynamic/Marshallers.h
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPConstants.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
The file was modifiedclang/lib/ASTMatchers/CMakeLists.txt
The file was modifiedclang/lib/AST/AttrImpl.cpp
The file was modifiedclang/include/clang/AST/ASTTypeTraits.h
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Analysis/CMakeLists.txt
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/StaticAnalyzer/Core/CMakeLists.txt
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedllvm/lib/Frontend/OpenMP/OMPConstants.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.h
The file was modifiedclang/lib/AST/ASTTypeTraits.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/include/clang/AST/ASTFwd.h
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
Commit 1858f4b50dd35c28b377ba5dbc572fed43a5d38a by johannes
Revert "[OpenMP][NFCI] Move OpenMP clause information to `lib/Frontend/OpenMP`"

This reverts commit c18d55998b3352e6ec92ccb8a3240a16a57c61e6.

Bots have reported uses that need changing, e.g.,
  clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cp
as reported by
  http://lab.llvm.org:8011/builders/clang-ppc64be-linux/builds/46591
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
The file was modifiedclang/include/clang/Basic/OpenMPKinds.h
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Marshallers.h
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
The file was modifiedclang/lib/AST/ASTTypeTraits.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/lib/ASTMatchers/CMakeLists.txt
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
The file was modifiedclang/include/clang/AST/ASTTypeTraits.h
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/AST/AttrImpl.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/StaticAnalyzer/Core/CMakeLists.txt
The file was modifiedclang/include/clang/AST/ASTFwd.h
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedllvm/lib/Frontend/OpenMP/OMPConstants.cpp
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was modifiedclang/lib/Analysis/CMakeLists.txt
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPConstants.h
Commit b42006596905bea7bef54759ba3a5d1a7dd418fa by hokein.wu
[clangd] Fix an assertion crash in ReferenceFinder.

Summary: The assertion is almost correct, but it fails on refs from non-preamble

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77222
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
Commit a157cde0ac0a804b49f50df0a6faae7416ac3fb4 by shengchen.kan
[NFC][X86] Refine code in X86AsmBackend

Replace pattern getContents().size with universe function call
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Commit 9f92d4612fa3fc41cd1ab60ec905db7b69ca2ccc by shengchen.kan
Revert "[NFC][X86] Refine code in X86AsmBackend"

This reverts commit a157cde0ac0a804b49f50df0a6faae7416ac3fb4.
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Commit d08fadd6628a061bca66d37d6e0de2c51249ad22 by xiang1.zhang
[X86] Add SERIALIZE instruction.

Summary: For more details about this instruction, please refer to the latest ISE document: https://software.intel.com/en-us/download/intel-architecture-instruction-set-extensions-programming-reference

Reviewers: craig.topper, RKSimon, LuoYuanke

Reviewed By: craig.topper

Subscribers: mgorny, hiraditya, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77193
The file was modifiedllvm/test/MC/X86/x86-16.s
The file was modifiedclang/lib/Basic/Targets/X86.h
The file was modifiedclang/lib/Headers/cpuid.h
The file was modifiedllvm/include/llvm/IR/IntrinsicsX86.td
The file was modifiedclang/lib/Headers/immintrin.h
The file was modifiedllvm/test/MC/X86/x86-64.s
The file was addedllvm/test/CodeGen/X86/serialize-intrinsic.ll
The file was addedclang/test/CodeGen/x86-serialize-intrin.c
The file was modifiedllvm/test/MC/Disassembler/X86/x86-16.txt
The file was modifiedllvm/test/MC/Disassembler/X86/x86-64.txt
The file was modifiedllvm/test/MC/X86/x86-32-coverage.s
The file was modifiedclang/include/clang/Basic/BuiltinsX86.def
The file was modifiedllvm/lib/Target/X86/X86.td
The file was modifiedllvm/lib/Target/X86/X86Subtarget.h
The file was modifiedclang/test/Preprocessor/x86_target_features.c
The file was modifiedllvm/lib/Support/Host.cpp
The file was addedclang/lib/Headers/serializeintrin.h
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Headers/CMakeLists.txt
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.td
The file was modifiedclang/docs/ClangCommandLineReference.rst
The file was modifiedclang/test/Driver/x86-target-features.c
The file was modifiedllvm/test/MC/Disassembler/X86/x86-32.txt
Commit c3ef971d36b7f7c37a0f5cedb5c64fef7420bfea by julian.lettner
[lit] Improve handling of timeouts and max failures

This work prepares us for the overall goal of clean shutdown on user
keyboard interrupt [Ctrl+C].
The file was modifiedllvm/utils/lit/lit/run.py
The file was modifiedllvm/utils/lit/lit/main.py
Commit 7314aea5a42d33f9f5af5d158d8892e88072764e by daniel.kiss
[clang] Move branch-protection from CodeGenOptions to  LangOptions

Summary:
Reason: the option has an effect on preprocessing.

Also see thread: http://lists.llvm.org/pipermail/cfe-dev/2020-March/065014.html

Reviewers: chill, efriedma

Reviewed By: efriedma

Subscribers: efriedma, danielkiss, cfe-commits, kristof.beyls

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77131
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
The file was modifiedclang/include/clang/Basic/TargetInfo.h
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
The file was modifiedclang/lib/Basic/Targets/AArch64.cpp
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
The file was modifiedclang/lib/AST/PrintfFormatString.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/CodeGen/CGDeclCXX.cpp
Commit deb902252ac8d07b3f4419de4ff23dae444aaa6e by kristof.beyls
Fix RUN line in AArch64/speculation-hardening.ll
The file was modifiedllvm/test/CodeGen/AArch64/speculation-hardening.ll
Commit 29d253c4c6879bfe57040c8c59b0d9d84f6e5e2f by djordje.todorovic
[Object] Add the method for checking if a section is a debug section

Different file formats have different naming style for the debug
sections. The method is implemented for ELF, COFF and Mach-O formats.

Differential Revision: https://reviews.llvm.org/D76276
The file was modifiedllvm/include/llvm/Object/COFF.h
The file was modifiedllvm/lib/Object/ObjectFile.cpp
The file was modifiedllvm/lib/Object/COFFObjectFile.cpp
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/include/llvm/Object/MachO.h
The file was modifiedllvm/include/llvm/Object/ObjectFile.h
Commit 550ab58bc106335f8dcbc1767548a55c7151f87a by orlando.hyams
[NFC] Fix performance issue in LiveDebugVariables

When compiling AMDGPUDisassembler.cpp in a stage 1 trunk build with
CMAKE_BUILD_TYPE=RelWithDebInfo LLVM_USE_SANITIZER=Address LiveDebugVariables
accounts for 21.5% wall clock time. This fix reduces that to 1.2% by switching
out a linked list lookup with a map lookup.

Note that the linked list is still used to group UserValues by vreg. The vreg
lookups don't cause any problems in this pathological case.

This is the same idea as D68816, which was reverted, except that it is a less
intrusive fix.

Reviewed By: vsk

Differential Revision: https://reviews.llvm.org/D77226
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
Commit 189d2e215f686e5ad1604a2ba437c4c9789b6a36 by gchatelet
[Alignment][NFC] Use more Align versions of various functions

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: MatzeB, qcolombet, arsenm, sdardis, jvesely, nhaehnle, hiraditya, jrtc27, atanasyan, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77291
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/VirtRegMap.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.h
Commit a63b5c9e53199b866b804164285a2c40531b31a1 by flo
[CallSiteSplitting] Simplify isPredicateOnPHI & continue checking PHIs.

As pointed out by @thakis, currently CallSiteSplitting bails out after
checking the first PHI node. We should check all PHI nodes, until we
find one where call site splitting is beneficial.

This patch also slightly simplifies the code using BasicBlock::phis().

Reviewers: davidxl, junbuml, thakis

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D77089
The file was modifiedllvm/lib/Transforms/Scalar/CallSiteSplitting.cpp
The file was modifiedllvm/test/Transforms/CallSiteSplitting/callsite-split-or-phi.ll
Commit fb4aa30f272be7d8af83251a8178851b6e63ecfe by courbet
[ExpandMemCmp] Allow overlaping loads in the zero-relational case.

Summary:
This allows doing `memcmp(p, q, 7)` with 2 loads instead of a call to
memcmp.
This fixes part of PR45147.

Reviewers: spatel

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76133
The file was modifiedllvm/test/CodeGen/X86/memcmp-more-load-pairs.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp.ll
The file was modifiedllvm/test/Transforms/ExpandMemCmp/X86/memcmp.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit 96cae168fa2d72d6693b60a13d0c8b2d82c64bed by gchatelet
[NFC] Preparatory work for D77292
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
Commit 8cc6f5beb816bac152cf170daaa611028124d1cd by shkzhang
[NFC][update_llc_test_checks] Remove the redundant SCRUB_LOOP_COMMENT_RE in asm.py

Summary:
In the patch: https://reviews.llvm.org/D42654
De-duplicate utils/update_{llc_,}test_checks.py, Some common part has
been move to common.py. The SCRUB_LOOP_COMMENT_RE has been moved to
common.py, but forgetting to remove from asm.py.
This patch is to remove the redundant SCRUB_LOOP_COMMENT_RE in asm.py
and use common.SCRUB_LOOP_COMMENT_RE.
The file was modifiedllvm/utils/UpdateTestChecks/asm.py
Commit 62be83463a3713612bd85cfa45140ef92c130d57 by pavel
Recommit "[lldb] Fix TestSettings.test_pass_host_env_vars on windows"

This patch was reverted because it introduced a failure in
TestHelloWorld.py. The reason for that was running "ls" shell command
failed as it was evaluated in an environment with an empty path. This
has now been fixed with D77123, which ensures that all shell commands
inherit the host environment, so this patch should be safe to recommit.

The original commit message was:

A defensive check in ProcessLauncherWindows meant that we would never
attempt to launch a process with a completely empty environment -- the
host environment would be used instead. Instead, I make the function add
an extra null wchar_t at the end of an empty environment. The
documentation on this is a bit fuzzy, but it seems to be what is needed
to make windows accept these kinds of environments.

Reviewers: amccarth, friss

Differential Revision: https://reviews.llvm.org/D76835
The file was modifiedlldb/source/Host/windows/ProcessLauncherWindows.cpp
The file was modifiedlldb/test/API/commands/settings/TestSettings.py
Commit c697dd9ffdb14f08766c738eb28c377ee964937f by david.green
[ARM] Make remaining MVE instruction predictable

The unpredictable/hasSideEffects flag is usually inferred by tablegen
from whether the instruction has a tablegen pattern (and that pattern
only has a single output instruction). Now that the MVE intrinsics are
all committed and producing code, the remaining instructions still
marked as unpredictable need to be specially handled. This adds the flag
directly to instructions that need it, notably the V*MLAL instructions
and some of the MOV's.

Differential Revision: https://reviews.llvm.org/D76910
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst3.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld4.ll
The file was modifiedllvm/unittests/Target/ARM/MachineInstrTest.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld3.ll
Commit fbd53ffc3ad97bf39cc1420ac160f402f6a0c935 by david.green
[ARM] MVE VMULL patterns

This adds MVE vmull patterns, which are conceptually the same as
mul(vmovl, vmovl), and so the tablegen patterns follow the same
structure.

For i8 and i16 this is simple enough, but in the i32 version the
multiply (in 64bits) is illegal, meaning we need to catch the pattern
earlier in a dag fold. Because bitcasts are involved in the zext
versions and the patterns are a little different in little and big
endian. I have only added little endian support in this patch.

Differential Revision: https://reviews.llvm.org/D76740
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vmull.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vmull-loop.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrNEON.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-mla.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
Commit ce8b85c0b8e7a4e946e234218dd45f5d0c4abfb4 by shkzhang
[NFC][PowerPC] Add a new test case loop-comment.ll
The file was addedllvm/test/CodeGen/PowerPC/loop-comment.ll
Commit 07b6c0be4ab7553ff7e8574a794ecc963df0e9c3 by thakis
[gn build] remove NOSORT from clang/Headers/BUILD.gn

Having the sync script work for this file seems better
than matching the order of headers in the cmake file.
Also, not having to manually sort the list is nice, even
if gn's automated sorting doesn't quite match the artisanal
order in the cmake file.
The file was modifiedllvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Commit 3d8950bf9988633a8865ac9f67c5fe2e56d21286 by llvmgnsyncbot
[gn build] Port d08fadd6628
The file was modifiedllvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Commit 2a645abe93880055d35be573cd30a0828e1c2a72 by llvmgnsyncbot
[gn build] Port d1705c1196f
The file was modifiedllvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Commit 0fb8a5356214c47bbb832e89fbb3da1c755eeb73 by dvyukov
tsan: don't check libc dependency on FreeBSD

This check fails on FreeBSD:
https://github.com/golang/go/issues/14481#issuecomment-607471193
It is meant to prevent regressions, so disable it on FreeBSD.
The file was modifiedcompiler-rt/lib/tsan/go/buildgo.sh
Commit 316e220cf432cdacba8d3123517e4ac44a120a8b by llvm-dev
[llvm-mca] Cleanup unnecessary includes from headers

This removes some includes/forward-declarations that don't seem to be necessary in the MCA core headers

Based off a cppclean report

Differential Revision: https://reviews.llvm.org/D77073
The file was modifiedllvm/include/llvm/MCA/CodeEmitter.h
The file was modifiedllvm/include/llvm/MCA/Pipeline.h
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/RegisterFile.h
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/LSUnit.h
The file was modifiedllvm/include/llvm/MCA/Stages/DispatchStage.h
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/ResourceManager.h
Commit 0a2131b7e2213fc8b45f7ff1e02f29fb4d544259 by zinenko
[mlir] LLVMFuncOp: provide a capability to pass attributes through to LLVM IR

Summary:
LLVM IR functions can have arbitrary attributes attached to them, some of which
affect may affect code transformations. Until we can model all attributes
consistently, provide a pass-through mechanism that forwards attributes from
the LLVMFuncOp in MLIR to LLVM IR functions during translation. This mechanism
relies on LLVM IR being able to recognize string representations of the
attributes and performs some additional checking to avoid hitting assertions
within LLVM code.

Differential Revision: https://reviews.llvm.org/D77072
The file was modifiedmlir/test/Target/llvmir-invalid.mlir
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/docs/Dialects/LLVM.md
The file was modifiedmlir/test/Target/llvmir.mlir
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
Commit 37ced5a571066c11548c672f354c6091f5903991 by daniel.kiss
[clang][AARCH64] Add __ARM_FEATURE_{PAC, BTI}_DEFAULT  defines

Summary:
As defined by Arm C Language Extensions (ACLE) these macro defines
should be set to specific values depending on -mbranch-protection.

Reviewers: chill

Reviewed By: chill

Subscribers: danielkiss, cfe-commits, kristof.beyls

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77134
The file was modifiedclang/lib/Basic/Targets/AArch64.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/test/Preprocessor/aarch64-target-features.c
Commit e6cb4b659af9f9c1a4c179093b187e7ad7cc5770 by lucas.prates
[Clang][CodeGen] Fixing mismatch between memory layout and const expressions for oversized bitfields

Summary:
The construction of constants for structs/unions was conflicting the
expected memory layout for over-sized bit-fields. When building the
necessary bits for those fields, clang was ignoring the size information
computed for the struct/union memory layout and using the original data
from the AST's FieldDecl information. This caused an issue in big-endian
targets, where the field's contant was incorrectly misplaced due to
endian calculations.

This patch aims to separate the constant value from the necessary
padding bits, using the proper size information for each one of them.
With this, the layout of constants for over-sized bit-fields matches the
ABI requirements.

Reviewers: rsmith, eli.friedman, efriedma

Reviewed By: efriedma

Subscribers: efriedma, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77048
The file was modifiedclang/lib/CodeGen/CGExprConstant.cpp
The file was modifiedclang/test/CodeGenCXX/bitfield-layout.cpp
Commit b02c7a81523f3a9d14f418e5453bd222127e780a by llvm-dev
Fix "result of 32-bit shift implicitly converted to 64 bits" MSVC warning. NFCI.

The shift of 1 by an amount that is never more than 31 means that the warning is a false positive but is safe and fixes Werror builds.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 5e508b9bac05cef8c1f77a154f943183f97cd131 by djordje.todorovic
[llvm-dwarfdump] Add the --show-sections-sizes option

Add an option to llvm-dwarfdump to calculate the bytes within
the debug sections. Dump this numbers when using --statistics
option as well.

This is an initial patch (e.g. we should support other units,
since we only support 'bytes' now).

Differential Revision: https://reviews.llvm.org/D74205
The file was addedllvm/test/tools/llvm-dwarfdump/X86/section_sizes_fat_binary.test
The file was addedllvm/test/tools/llvm-dwarfdump/X86/section_sizes_macho.test
The file was addedllvm/tools/llvm-dwarfdump/SectionSizes.cpp
The file was addedllvm/test/tools/llvm-dwarfdump/X86/section_sizes_no_debug_sections.test
The file was addedllvm/test/tools/llvm-dwarfdump/X86/section_sizes_elf.test
The file was modifiedllvm/tools/llvm-dwarfdump/Statistics.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/statistics.ll
The file was modifiedllvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
The file was modifiedllvm/docs/CommandGuide/llvm-dwarfdump.rst
The file was modifiedllvm/tools/llvm-dwarfdump/CMakeLists.txt
The file was addedllvm/test/tools/llvm-dwarfdump/X86/Inputs/x86_64_macho_with_debug.yaml
The file was addedllvm/test/tools/llvm-dwarfdump/X86/section_sizes_coff.test
The file was addedllvm/tools/llvm-dwarfdump/SectionSizes.h
The file was addedllvm/test/tools/llvm-dwarfdump/X86/Inputs/i386_macho_with_debug.yaml
The file was addedllvm/test/tools/llvm-dwarfdump/X86/section_sizes_archive.test
Commit ab25d37354eb49ee1c2bda03dc59d73bcc588d6d by llvmgnsyncbot
[gn build] Port 5e508b9bac0
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-dwarfdump/BUILD.gn
Commit 8348e9d71b0aa307b377da8044f43fbd1d54fb7f by sdi1600105
[LoopTerminology] Make term names bold

Differential Revision: https://reviews.llvm.org/D77151
The file was modifiedllvm/docs/LoopTerminology.rst
Commit ecb048c7acafaeda3ba19bc7886d73d955d608f4 by spatel
[InstCombine] add tests for disguised vector trunc; NFC
The file was addedllvm/test/Transforms/InstCombine/shuffle-cast.ll
Commit a19b27b90e5eff48f500b58f04f9969ea54a2fed by spatel
[PhaseOrdering] add test for vector trunc; NFC
See discussion in D76983.
The file was addedllvm/test/Transforms/PhaseOrdering/vector-trunc.ll
Commit 9da6a40e0999523f8bdabfdab875890770eb9b3a by sven.vanhaastregt
[OpenCL] Add sub-group builtin functions

Add the sub-group builtin functions from the OpenCL Extension
specification.  This patch excludes the sub_group_barrier builtins
that take argument types not yet handled by the
`-fdeclare-opencl-builtins` machinery.

Co-authored-by: Pierre Gondois <pierre.gondois@arm.com>
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
Commit af39151f3c54b90ff0ae1064f540a97b640298e9 by oliver.stannard
Revert "[lld] Initial commit for new Mach-O backend"

This is causing buildbot failures on 32-bit hosts, for example:
http://lab.llvm.org:8011/builders/clang-cmake-armv8-lld/builds/3636

This reverts commit 03f43b3aca363e16c45d8733400fd0083b1af4d8.
The file was removedlld/MachO/SymbolTable.cpp
The file was removedlld/test/MachO/text-segment.s
The file was modifiedlld/tools/lld/lld.cpp
The file was removedlld/test/MachO/load-commands.s
The file was removedlld/test/MachO/segments.s
The file was removedlld/test/MachO/arch.s
The file was removedlld/MachO/Writer.cpp
The file was removedlld/MachO/Writer.h
The file was removedlld/MachO/InputSection.h
The file was removedlld/test/MachO/invalid-executable.s
The file was removedlld/test/MachO/no-such-file.s
The file was removedlld/test/MachO/relocations.s
The file was removedlld/MachO/Target.h
The file was removedlld/test/MachO/silent-ignore.test
The file was removedlld/MachO/Config.h
The file was removedlld/MachO/OutputSegment.h
The file was removedlld/test/MachO/section-headers.s
The file was removedlld/MachO/InputFiles.h
The file was modifiedlld/include/lld/Common/Driver.h
The file was modifiedlld/CMakeLists.txt
The file was removedlld/MachO/Arch/X86_64.cpp
The file was removedlld/MachO/OutputSegment.cpp
The file was removedlld/MachO/Symbols.cpp
The file was removedlld/MachO/SymbolTable.h
The file was removedlld/test/MachO/alignment-too-large.yaml
The file was removedlld/test/MachO/entry-symbol.s
The file was removedlld/MachO/CMakeLists.txt